mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-25 08:12:40 +01:00
d1983560a6
Summary: Fixes T6787. I'm kind of cheating a little bit here by not unifying default selection with `initializeNew(...)` methods, but I figure we can let this settle for a bit and then go do that later. It's pretty minor. Since we're not doing templates I kind of want to swap the `'template'` key to `'type'` so maybe I'll do that too at some point. @chad, freel free to change these, I was just trying to make them pretty obvious. I //do// think it's good for them to stand out, but my approach is probably a bit inconsistent/heavy-handed in the new design. Test Plan: {F525024} {F525025} {F525026} {F525027} Reviewers: btrahan, chad Reviewed By: btrahan Subscribers: johnny-bit, joshuaspence, chad, epriestley Maniphest Tasks: T6787 Differential Revision: https://secure.phabricator.com/D13387
83 lines
2 KiB
PHP
83 lines
2 KiB
PHP
<?php
|
|
|
|
final class PhabricatorDivinerApplication extends PhabricatorApplication {
|
|
|
|
public function getBaseURI() {
|
|
return '/diviner/';
|
|
}
|
|
|
|
public function getFontIcon() {
|
|
return 'fa-sun-o';
|
|
}
|
|
|
|
public function getName() {
|
|
return pht('Diviner');
|
|
}
|
|
|
|
public function getShortDescription() {
|
|
return pht('Documentation');
|
|
}
|
|
|
|
public function getHelpDocumentationArticles(PhabricatorUser $viewer) {
|
|
return array(
|
|
array(
|
|
'name' => pht('Diviner User Guide'),
|
|
'href' => PhabricatorEnv::getDoclink('Diviner User Guide'),
|
|
),
|
|
);
|
|
}
|
|
|
|
public function getTitleGlyph() {
|
|
return "\xE2\x97\x89";
|
|
}
|
|
|
|
public function getRoutes() {
|
|
return array(
|
|
'/diviner/' => array(
|
|
'' => 'DivinerMainController',
|
|
'query/((?<key>[^/]+)/)?' => 'DivinerAtomListController',
|
|
'find/' => 'DivinerFindController',
|
|
),
|
|
'/book/(?P<book>[^/]+)/' => 'DivinerBookController',
|
|
'/book/(?P<book>[^/]+)/edit/' => 'DivinerBookEditController',
|
|
'/book/'.
|
|
'(?P<book>[^/]+)/'.
|
|
'(?P<type>[^/]+)/'.
|
|
'(?:(?P<context>[^/]+)/)?'.
|
|
'(?P<name>[^/]+)/'.
|
|
'(?:(?P<index>\d+)/)?' => 'DivinerAtomController',
|
|
);
|
|
}
|
|
|
|
public function getApplicationGroup() {
|
|
return self::GROUP_UTILITIES;
|
|
}
|
|
|
|
protected function getCustomCapabilities() {
|
|
return array(
|
|
DivinerDefaultViewCapability::CAPABILITY => array(
|
|
'template' => DivinerBookPHIDType::TYPECONST,
|
|
'capability' => PhabricatorPolicyCapability::CAN_VIEW,
|
|
),
|
|
DivinerDefaultEditCapability::CAPABILITY => array(
|
|
'default' => PhabricatorPolicies::POLICY_ADMIN,
|
|
'template' => DivinerBookPHIDType::TYPECONST,
|
|
'capability' => PhabricatorPolicyCapability::CAN_EDIT,
|
|
),
|
|
);
|
|
}
|
|
|
|
public function getRemarkupRules() {
|
|
return array(
|
|
new DivinerSymbolRemarkupRule(),
|
|
);
|
|
}
|
|
|
|
public function getApplicationSearchDocumentTypes() {
|
|
return array(
|
|
DivinerAtomPHIDType::TYPECONST,
|
|
DivinerBookPHIDType::TYPECONST,
|
|
);
|
|
}
|
|
|
|
}
|