Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/phabricator
Path: blob/master/src/applications/favorites/engine/PhabricatorFavoritesProfileMenuEngine.php
12256 views
1
<?php
2
3
final class PhabricatorFavoritesProfileMenuEngine
4
extends PhabricatorProfileMenuEngine {
5
6
protected function isMenuEngineConfigurable() {
7
return true;
8
}
9
10
public function getItemURI($path) {
11
return "/favorites/menu/{$path}";
12
}
13
14
protected function getBuiltinProfileItems($object) {
15
$items = array();
16
$viewer = $this->getViewer();
17
18
$engines = PhabricatorEditEngine::getAllEditEngines();
19
$engines = msortv($engines, 'getQuickCreateOrderVector');
20
21
foreach ($engines as $engine) {
22
foreach ($engine->getDefaultQuickCreateFormKeys() as $form_key) {
23
$form_hash = PhabricatorHash::digestForIndex($form_key);
24
$builtin_key = "editengine.form({$form_hash})";
25
26
$properties = array(
27
'name' => null,
28
'formKey' => $form_key,
29
);
30
31
$items[] = $this->newItem()
32
->setBuiltinKey($builtin_key)
33
->setMenuItemKey(PhabricatorEditEngineProfileMenuItem::MENUITEMKEY)
34
->setMenuItemProperties($properties);
35
}
36
}
37
38
$items[] = $this->newDividerItem('tail');
39
$items[] = $this->newManageItem()
40
->setMenuItemProperty('name', pht('Edit Favorites'));
41
42
return $items;
43
}
44
45
}
46
47