@recaptime-dev's working patches + fork for Phorge, a community fork of Phabricator. (Upstream dev and stable branches are at upstream/main and upstream/stable respectively.)
hq.recaptime.dev/wiki/Phorge
phorge
phabricator
1<?php
2
3final class PhabricatorPackagesConsoleController
4 extends PhabricatorPackagesController {
5
6 public function shouldAllowPublic() {
7 return true;
8 }
9
10 public function handleRequest(AphrontRequest $request) {
11 $viewer = $request->getViewer();
12
13 $menu = id(new PHUIObjectItemListView())
14 ->setViewer($viewer)
15 ->setBig(true);
16
17 $menu->addItem(
18 id(new PHUIObjectItemView())
19 ->setHeader(pht('Publishers'))
20 ->setHref($this->getApplicationURI('publisher/'))
21 ->setImageIcon('fa-university')
22 ->setClickable(true)
23 ->addAttribute(
24 pht(
25 'Manage software publishers.')));
26
27 $menu->addItem(
28 id(new PHUIObjectItemView())
29 ->setHeader(pht('Packages'))
30 ->setHref($this->getApplicationURI('package/'))
31 ->setImageIcon('fa-gift')
32 ->setClickable(true)
33 ->addAttribute(
34 pht(
35 'Create and update software packages.')));
36
37 $menu->addItem(
38 id(new PHUIObjectItemView())
39 ->setHeader(pht('Versions'))
40 ->setHref($this->getApplicationURI('version/'))
41 ->setImageIcon('fa-birthday-cake')
42 ->setClickable(true)
43 ->addAttribute(
44 pht(
45 'Release and update package versions.')));
46
47 $crumbs = $this->buildApplicationCrumbs();
48 $crumbs->addTextCrumb(pht('Console'));
49 $crumbs->setBorder(true);
50
51 $box = id(new PHUIObjectBoxView())
52 ->setHeaderText(pht('Packages Console'))
53 ->setBackground(PHUIObjectBoxView::WHITE_CONFIG)
54 ->setObjectList($menu);
55
56 $launcher_view = id(new PHUILauncherView())
57 ->appendChild($box);
58
59 $view = id(new PHUITwoColumnView())
60 ->setFooter($launcher_view);
61
62 return $this->newPage()
63 ->setTitle(pht('Packages Console'))
64 ->setCrumbs($crumbs)
65 ->appendChild($view);
66 }
67
68}