Summary: Ref T988. Make this more useful, and link it to the methods it describes. Test Plan: Before: {F57553} After: {F57554} Reviewers: chad Reviewed By: chad CC: aran Maniphest Tasks: T988 Differential Revision: https://secure.phabricator.com/D6909
50 lines
1.1 KiB
PHP
50 lines
1.1 KiB
PHP
<?php
|
|
|
|
abstract class DivinerController extends PhabricatorController {
|
|
|
|
protected function buildSideNavView() {
|
|
$menu = $this->buildMenu();
|
|
return AphrontSideNavFilterView::newFromMenu($menu);
|
|
}
|
|
|
|
protected function buildApplicationMenu() {
|
|
return $this->buildMenu();
|
|
}
|
|
|
|
private function buildMenu() {
|
|
$menu = new PHUIListView();
|
|
|
|
id(new DivinerAtomSearchEngine())
|
|
->setViewer($this->getRequest()->getUser())
|
|
->addNavigationItems($menu);
|
|
|
|
return $menu;
|
|
}
|
|
|
|
protected function renderAtomList(array $symbols) {
|
|
assert_instances_of($symbols, 'DivinerLiveSymbol');
|
|
|
|
$request = $this->getRequest();
|
|
$user = $request->getUser();
|
|
|
|
$list = id(new PhabricatorObjectItemListView())
|
|
->setUser($user);
|
|
|
|
foreach ($symbols as $symbol) {
|
|
$item = id(new PhabricatorObjectItemView())
|
|
->setHeader($symbol->getTitle())
|
|
->setHref($symbol->getURI())
|
|
->addIcon('none',
|
|
DivinerAtom::getAtomTypeNameString(
|
|
$symbol->getType()));
|
|
|
|
$item->addAttribute($symbol->getSummary());
|
|
|
|
$list->addItem($item);
|
|
}
|
|
|
|
return $list;
|
|
}
|
|
|
|
}
|