Changeset View
Changeset View
Standalone View
Standalone View
src/applications/almanac/controller/AlmanacConsoleController.php
<?php | <?php | ||||
final class AlmanacConsoleController extends AlmanacController { | final class AlmanacConsoleController extends AlmanacController { | ||||
public function shouldAllowPublic() { | public function shouldAllowPublic() { | ||||
return true; | return true; | ||||
} | } | ||||
public function handleRequest(AphrontRequest $request) { | public function handleRequest(AphrontRequest $request) { | ||||
$viewer = $request->getViewer(); | $viewer = $request->getViewer(); | ||||
$menu = id(new PHUIObjectItemListView()) | $menu = id(new PHUIObjectItemListView()) | ||||
->setUser($viewer); | ->setUser($viewer) | ||||
->setBig(true); | |||||
$menu->addItem( | $menu->addItem( | ||||
id(new PHUIObjectItemView()) | id(new PHUIObjectItemView()) | ||||
->setHeader(pht('Devices')) | ->setHeader(pht('Devices')) | ||||
->setHref($this->getApplicationURI('device/')) | ->setHref($this->getApplicationURI('device/')) | ||||
->setImageIcon('fa-server') | ->setImageIcon('fa-server') | ||||
->setClickable(true) | |||||
->addAttribute( | ->addAttribute( | ||||
pht( | pht( | ||||
'Create an inventory of physical and virtual hosts and '. | 'Create an inventory of physical and virtual hosts and '. | ||||
'devices.'))); | 'devices.'))); | ||||
$menu->addItem( | $menu->addItem( | ||||
id(new PHUIObjectItemView()) | id(new PHUIObjectItemView()) | ||||
->setHeader(pht('Services')) | ->setHeader(pht('Services')) | ||||
->setHref($this->getApplicationURI('service/')) | ->setHref($this->getApplicationURI('service/')) | ||||
->setImageIcon('fa-plug') | ->setImageIcon('fa-plug') | ||||
->setClickable(true) | |||||
->addAttribute( | ->addAttribute( | ||||
pht( | pht( | ||||
'Create and update services, and map them to interfaces on '. | 'Create and update services, and map them to interfaces on '. | ||||
'devices.'))); | 'devices.'))); | ||||
$menu->addItem( | $menu->addItem( | ||||
id(new PHUIObjectItemView()) | id(new PHUIObjectItemView()) | ||||
->setHeader(pht('Networks')) | ->setHeader(pht('Networks')) | ||||
->setHref($this->getApplicationURI('network/')) | ->setHref($this->getApplicationURI('network/')) | ||||
->setImageIcon('fa-globe') | ->setImageIcon('fa-globe') | ||||
->setClickable(true) | |||||
->addAttribute( | ->addAttribute( | ||||
pht( | pht( | ||||
'Manage public and private networks.'))); | 'Manage public and private networks.'))); | ||||
$menu->addItem( | $menu->addItem( | ||||
id(new PHUIObjectItemView()) | id(new PHUIObjectItemView()) | ||||
->setHeader(pht('Namespaces')) | ->setHeader(pht('Namespaces')) | ||||
->setHref($this->getApplicationURI('namespace/')) | ->setHref($this->getApplicationURI('namespace/')) | ||||
->setImageIcon('fa-asterisk') | ->setImageIcon('fa-asterisk') | ||||
->setClickable(true) | |||||
->addAttribute( | ->addAttribute( | ||||
pht('Control who can create new named services and devices.'))); | pht('Control who can create new named services and devices.'))); | ||||
$docs_uri = PhabricatorEnv::getDoclink( | $docs_uri = PhabricatorEnv::getDoclink( | ||||
'Almanac User Guide'); | 'Almanac User Guide'); | ||||
$menu->addItem( | $menu->addItem( | ||||
id(new PHUIObjectItemView()) | id(new PHUIObjectItemView()) | ||||
->setHeader(pht('Documentation')) | ->setHeader(pht('Documentation')) | ||||
->setHref($docs_uri) | ->setHref($docs_uri) | ||||
->setImageIcon('fa-book') | ->setImageIcon('fa-book') | ||||
->setClickable(true) | |||||
->addAttribute(pht('Browse documentation for Almanac.'))); | ->addAttribute(pht('Browse documentation for Almanac.'))); | ||||
$crumbs = $this->buildApplicationCrumbs(); | $crumbs = $this->buildApplicationCrumbs(); | ||||
$crumbs->addTextCrumb(pht('Console')); | $crumbs->addTextCrumb(pht('Console')); | ||||
$crumbs->setBorder(true); | $crumbs->setBorder(true); | ||||
$box = id(new PHUIObjectBoxView()) | $box = id(new PHUIObjectBoxView()) | ||||
->setHeaderText(pht('Almanac Console')) | |||||
->setBackground(PHUIObjectBoxView::WHITE_CONFIG) | |||||
->setObjectList($menu); | ->setObjectList($menu); | ||||
$header = id(new PHUIHeaderView()) | $launcher_view = id(new PHUILauncherView()) | ||||
->setHeader(pht('Almanac Console')) | ->appendChild($box); | ||||
->setHeaderIcon('fa-server'); | |||||
$view = id(new PHUITwoColumnView()) | $view = id(new PHUITwoColumnView()) | ||||
->setHeader($header) | ->setFooter($launcher_view); | ||||
->setFooter(array( | |||||
$box, | |||||
)); | |||||
return $this->newPage() | return $this->newPage() | ||||
->setTitle(pht('Almanac Console')) | ->setTitle(pht('Almanac Console')) | ||||
->setCrumbs($crumbs) | ->setCrumbs($crumbs) | ||||
->appendChild($view); | ->appendChild($view); | ||||
} | } | ||||
} | } |