@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 PhabricatorGuideModuleController
4 extends PhabricatorGuideController {
5
6 public function handleRequest(AphrontRequest $request) {
7 $viewer = $this->getViewer();
8 $key = $request->getURIData('module');
9
10 $all_modules = PhabricatorGuideModule::getEnabledModules();
11
12 if (!$key) {
13 $key = key($all_modules);
14 }
15
16 $module = idx($all_modules, $key);
17
18 if (!$module) {
19 return new Aphront404Response();
20 }
21
22 $nav = $this->buildSideNavView();
23 $nav->selectFilter($key.'/');
24
25 $content = $module->renderModuleStatus($request);
26 $title = $module->getModuleName();
27
28 $crumbs = $this->buildApplicationCrumbs();
29 $crumbs->addTextCrumb($title);
30 $crumbs->setBorder(true);
31
32 $header = id(new PHUIHeaderView())
33 ->setHeader($title)
34 ->setProfileHeader(true);
35
36 $view = id(new PHUICMSView())
37 ->setCrumbs($crumbs)
38 ->setNavigation($nav)
39 ->setHeader($header)
40 ->setContent($content);
41
42 return $this->newPage()
43 ->setTitle($title)
44 ->addClass('phui-cms-body')
45 ->appendChild($view);
46 }
47
48}