2012-08-14 00:28:41 +02:00
|
|
|
<?php
|
|
|
|
|
2014-07-23 02:03:09 +02:00
|
|
|
final class PhabricatorDivinerApplication extends PhabricatorApplication {
|
2012-08-14 00:28:41 +02:00
|
|
|
|
2012-10-01 21:56:51 +02:00
|
|
|
public function getBaseURI() {
|
|
|
|
return '/diviner/';
|
|
|
|
}
|
|
|
|
|
2015-01-25 08:41:43 +01:00
|
|
|
public function getFontIcon() {
|
2015-01-26 17:19:22 +01:00
|
|
|
return 'fa-sun-o';
|
2015-01-25 08:41:43 +01:00
|
|
|
}
|
|
|
|
|
2014-07-23 15:52:50 +02:00
|
|
|
public function getName() {
|
|
|
|
return pht('Diviner');
|
|
|
|
}
|
|
|
|
|
2012-10-01 21:56:51 +02:00
|
|
|
public function getShortDescription() {
|
2013-09-10 16:26:00 +02:00
|
|
|
return pht('Documentation');
|
2012-10-01 21:56:51 +02:00
|
|
|
}
|
|
|
|
|
2015-04-06 23:23:50 +02:00
|
|
|
public function getHelpDocumentationArticles(PhabricatorUser $viewer) {
|
|
|
|
return array(
|
|
|
|
array(
|
|
|
|
'name' => pht('Diviner User Guide'),
|
|
|
|
'href' => PhabricatorEnv::getDoclink('Diviner User Guide'),
|
|
|
|
),
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
2012-10-01 21:56:51 +02:00
|
|
|
public function getTitleGlyph() {
|
|
|
|
return "\xE2\x97\x89";
|
|
|
|
}
|
|
|
|
|
|
|
|
public function getRoutes() {
|
|
|
|
return array(
|
2013-05-31 19:52:25 +02:00
|
|
|
'/diviner/' => array(
|
2014-03-05 22:07:50 +01:00
|
|
|
'' => 'DivinerMainController',
|
2013-05-31 19:52:25 +02:00
|
|
|
'query/((?<key>[^/]+)/)?' => 'DivinerAtomListController',
|
2013-07-28 22:07:30 +02:00
|
|
|
'find/' => 'DivinerFindController',
|
2013-05-31 19:52:25 +02:00
|
|
|
),
|
2013-06-04 20:15:34 +02:00
|
|
|
'/book/(?P<book>[^/]+)/' => 'DivinerBookController',
|
2015-06-16 23:09:53 +02:00
|
|
|
'/book/(?P<book>[^/]+)/edit/' => 'DivinerBookEditController',
|
2013-06-01 00:14:39 +02:00
|
|
|
'/book/'.
|
|
|
|
'(?P<book>[^/]+)/'.
|
|
|
|
'(?P<type>[^/]+)/'.
|
|
|
|
'(?:(?P<context>[^/]+)/)?'.
|
|
|
|
'(?P<name>[^/]+)/'.
|
|
|
|
'(?:(?P<index>\d+)/)?' => 'DivinerAtomController',
|
2012-10-01 21:56:51 +02:00
|
|
|
);
|
2012-08-14 00:28:41 +02:00
|
|
|
}
|
|
|
|
|
2012-10-04 00:46:19 +02:00
|
|
|
public function getApplicationGroup() {
|
2014-05-29 21:17:54 +02:00
|
|
|
return self::GROUP_UTILITIES;
|
2012-10-04 00:46:19 +02:00
|
|
|
}
|
|
|
|
|
2015-06-16 23:09:53 +02:00
|
|
|
protected function getCustomCapabilities() {
|
|
|
|
return array(
|
|
|
|
DivinerDefaultViewCapability::CAPABILITY => array(
|
|
|
|
'template' => DivinerBookPHIDType::TYPECONST,
|
2015-06-22 20:46:59 +02:00
|
|
|
'capability' => PhabricatorPolicyCapability::CAN_VIEW,
|
2015-06-16 23:09:53 +02:00
|
|
|
),
|
|
|
|
DivinerDefaultEditCapability::CAPABILITY => array(
|
|
|
|
'default' => PhabricatorPolicies::POLICY_ADMIN,
|
|
|
|
'template' => DivinerBookPHIDType::TYPECONST,
|
2015-06-22 20:46:59 +02:00
|
|
|
'capability' => PhabricatorPolicyCapability::CAN_EDIT,
|
2015-06-16 23:09:53 +02:00
|
|
|
),
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
2013-07-10 01:23:33 +02:00
|
|
|
public function getRemarkupRules() {
|
|
|
|
return array(
|
2014-08-04 16:55:43 +02:00
|
|
|
new DivinerSymbolRemarkupRule(),
|
2013-07-10 01:23:33 +02:00
|
|
|
);
|
|
|
|
}
|
|
|
|
|
2015-06-04 23:27:48 +02:00
|
|
|
public function getApplicationSearchDocumentTypes() {
|
|
|
|
return array(
|
|
|
|
DivinerAtomPHIDType::TYPECONST,
|
|
|
|
DivinerBookPHIDType::TYPECONST,
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
2012-08-14 00:28:41 +02:00
|
|
|
}
|