3 final class PhabricatorReleephApplication
extends PhabricatorApplication
{
5 public function getName() {
9 public function getShortDescription() {
10 return pht('Pull Requests');
13 public function getBaseURI() {
17 public function getIcon() {
18 return 'fa-flag-checkered';
21 public function getApplicationGroup() {
22 return self
::GROUP_UTILITIES
;
25 public function isPrototype() {
29 public function getRoutes() {
31 '/Y(?P<requestID>[1-9]\d*)' => 'ReleephRequestViewController',
33 // TODO: Remove these older routes eventually.
34 '/RQ(?P<requestID>[1-9]\d*)' => 'ReleephRequestViewController',
35 '/releeph/request/(?P<requestID>[1-9]\d*)/'
36 => 'ReleephRequestViewController',
39 '' => 'ReleephProductListController',
40 '(?:product|project)/' => array(
41 '(?:query/(?P<queryKey>[^/]+)/)?' => 'ReleephProductListController',
42 'create/' => 'ReleephProductCreateController',
43 '(?P<projectID>[1-9]\d*)/' => array(
44 '(?:query/(?P<queryKey>[^/]+)/)?' => 'ReleephProductViewController',
45 'edit/' => 'ReleephProductEditController',
46 'cutbranch/' => 'ReleephBranchCreateController',
47 'action/(?P<action>.+)/' => 'ReleephProductActionController',
48 'history/' => 'ReleephProductHistoryController',
53 'edit/(?P<branchID>[1-9]\d*)/'
54 => 'ReleephBranchEditController',
55 '(?P<action>close|re-open)/(?P<branchID>[1-9]\d*)/'
56 => 'ReleephBranchAccessController',
57 'preview/' => 'ReleephBranchNamePreviewController',
58 '(?P<branchID>[1-9]\d*)/' => array(
59 'history/' => 'ReleephBranchHistoryController',
60 '(?:query/(?P<queryKey>[^/]+)/)?' => 'ReleephBranchViewController',
62 'pull/(?P<branchID>[1-9]\d*)/'
63 => 'ReleephRequestEditController',
67 'create/' => 'ReleephRequestEditController',
68 'differentialcreate/' => array(
69 'D(?P<diffRevID>[1-9]\d*)' =>
70 'ReleephRequestDifferentialCreateController',
72 'edit/(?P<requestID>[1-9]\d*)/'
73 => 'ReleephRequestEditController',
74 'action/(?P<action>.+)/(?P<requestID>[1-9]\d*)/'
75 => 'ReleephRequestActionController',
77 'ReleephRequestTypeaheadController',
78 'comment/(?P<requestID>[1-9]\d*)/'
79 => 'ReleephRequestCommentController',
85 public function getMailCommandObjects() {
86 // TODO: Pull requests don't implement any interfaces which give them
87 // meaningful commands, so don't expose ReleephRequest here for now.
88 // Once we add relevant commands, return it here.