3 final class PhabricatorPonderApplication
extends PhabricatorApplication
{
5 public function getBaseURI() {
9 public function getName() {
13 public function getShortDescription() {
14 return pht('Questions and Answers');
17 public function getIcon() {
18 return 'fa-university';
21 public function getTitleGlyph() {
22 return "\xE2\x97\xB3";
25 public function getRemarkupRules() {
27 new PonderRemarkupRule(),
31 public function getApplicationGroup() {
32 return self
::GROUP_UTILITIES
;
35 public function supportsEmailIntegration() {
39 public function getAppEmailBlurb() {
41 'Send email to these addresses to create questions. %s',
45 'href' => $this->getInboundEmailSupportLink(),
50 public function getRoutes() {
53 => 'PonderQuestionViewController',
55 '(?:query/(?P<queryKey>[^/]+)/)?'
56 => 'PonderQuestionListController',
59 => 'PonderAnswerSaveController',
61 => 'PonderAnswerEditController',
62 'comment/(?P<id>\d+)/'
63 => 'PonderAnswerCommentController',
64 'history/(?P<id>\d+)/'
65 => 'PonderAnswerHistoryController',
68 $this->getEditRoutePattern('edit/')
69 => 'PonderQuestionEditController',
71 => 'PonderQuestionEditController',
72 'comment/(?P<id>\d+)/'
73 => 'PonderQuestionCommentController',
74 'history/(?P<id>\d+)/'
75 => 'PonderQuestionHistoryController',
78 => 'PhabricatorMarkupPreviewController',
79 'question/status/(?P<id>[1-9]\d*)/'
80 => 'PonderQuestionStatusController',
85 public function getMailCommandObjects() {
88 'name' => pht('Email Commands: Questions'),
89 'header' => pht('Interacting with Ponder Questions'),
90 'object' => new PonderQuestion(),
92 'This page documents the commands you can use to interact with '.
93 'questions in Ponder.'),
98 protected function getCustomCapabilities() {
100 PonderDefaultViewCapability
::CAPABILITY
=> array(
101 'template' => PonderQuestionPHIDType
::TYPECONST
,
102 'capability' => PhabricatorPolicyCapability
::CAN_VIEW
,
104 PonderModerateCapability
::CAPABILITY
=> array(
105 'default' => PhabricatorPolicies
::POLICY_ADMIN
,
106 'template' => PonderQuestionPHIDType
::TYPECONST
,
107 'capability' => PhabricatorPolicyCapability
::CAN_EDIT
,
112 public function getApplicationSearchDocumentTypes() {
114 PonderQuestionPHIDType
::TYPECONST
,