Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/phabricator
Path: blob/master/src/applications/packages/application/PhabricatorPackagesApplication.php
12242 views
1
<?php
2
3
final class PhabricatorPackagesApplication extends PhabricatorApplication {
4
5
public function getName() {
6
return pht('Packages');
7
}
8
9
public function getShortDescription() {
10
return pht('Publish Software');
11
}
12
13
public function getFlavorText() {
14
return pht('Applications and Extensions');
15
}
16
17
public function getBaseURI() {
18
return '/packages/package/';
19
}
20
21
public function getIcon() {
22
return 'fa-gift';
23
}
24
25
public function getApplicationGroup() {
26
return self::GROUP_UTILITIES;
27
}
28
29
public function isPrototype() {
30
return true;
31
}
32
33
protected function getCustomCapabilities() {
34
return array(
35
PhabricatorPackagesCreatePublisherCapability::CAPABILITY => array(
36
'default' => PhabricatorPolicies::POLICY_ADMIN,
37
),
38
PhabricatorPackagesPublisherDefaultEditCapability::CAPABILITY => array(
39
'caption' => pht('Default edit policy for newly created publishers.'),
40
'template' => PhabricatorPackagesPublisherPHIDType::TYPECONST,
41
'default' => PhabricatorPolicies::POLICY_NOONE,
42
),
43
PhabricatorPackagesPackageDefaultViewCapability::CAPABILITY => array(
44
'caption' => pht('Default edit policy for newly created packages.'),
45
'template' => PhabricatorPackagesPackagePHIDType::TYPECONST,
46
),
47
PhabricatorPackagesPackageDefaultEditCapability::CAPABILITY => array(
48
'caption' => pht('Default view policy for newly created packages.'),
49
'template' => PhabricatorPackagesPackagePHIDType::TYPECONST,
50
'default' => PhabricatorPolicies::POLICY_NOONE,
51
),
52
);
53
}
54
public function getRoutes() {
55
return array(
56
'/package/' => array(
57
'(?P<publisherKey>[^/]+)/' => array(
58
'' => 'PhabricatorPackagesPublisherViewController',
59
'(?P<packageKey>[^/]+)/' => array(
60
'' => 'PhabricatorPackagesPackageViewController',
61
'(?P<versionKey>[^/]+)/' =>
62
'PhabricatorPackagesVersionViewController',
63
),
64
),
65
),
66
'/packages/' => array(
67
'publisher/' => array(
68
$this->getQueryRoutePattern() =>
69
'PhabricatorPackagesPublisherListController',
70
$this->getEditRoutePattern('edit/') =>
71
'PhabricatorPackagesPublisherEditController',
72
),
73
'package/' => array(
74
$this->getQueryRoutePattern() =>
75
'PhabricatorPackagesPackageListController',
76
$this->getEditRoutePattern('edit/') =>
77
'PhabricatorPackagesPackageEditController',
78
),
79
'version/' => array(
80
$this->getQueryRoutePattern() =>
81
'PhabricatorPackagesVersionListController',
82
$this->getEditRoutePattern('edit/') =>
83
'PhabricatorPackagesVersionEditController',
84
),
85
),
86
);
87
}
88
89
}
90
91