Differential D20374 Diff 48640 src/applications/favorites/engineextension/PhabricatorFavoritesMainMenuBarExtension.php
Changeset View
Changeset View
Standalone View
Standalone View
src/applications/favorites/engineextension/PhabricatorFavoritesMainMenuBarExtension.php
Show All 20 Lines | public function buildMainMenus() { | ||||
$dropdown = $this->newDropdown($viewer); | $dropdown = $this->newDropdown($viewer); | ||||
if (!$dropdown) { | if (!$dropdown) { | ||||
return array(); | return array(); | ||||
} | } | ||||
$favorites_menu = id(new PHUIButtonView()) | $favorites_menu = id(new PHUIButtonView()) | ||||
->setTag('a') | ->setTag('a') | ||||
->setHref('#') | ->setHref('#') | ||||
->setIcon('fa-star') | ->setIcon('fa-bookmark') | ||||
->addClass('phabricator-core-user-menu') | ->addClass('phabricator-core-user-menu') | ||||
->setNoCSS(true) | ->setNoCSS(true) | ||||
->setDropdown(true) | ->setDropdown(true) | ||||
->setDropdownMenu($dropdown) | ->setDropdownMenu($dropdown) | ||||
->setAuralLabel(pht('Favorites Menu')); | ->setAuralLabel(pht('Favorites Menu')); | ||||
return array( | return array( | ||||
$favorites_menu, | $favorites_menu, | ||||
Show All 28 Lines | private function newDropdown(PhabricatorUser $viewer) { | ||||
$item_views = $menu_view->getItems(); | $item_views = $menu_view->getItems(); | ||||
$view = id(new PhabricatorActionListView()) | $view = id(new PhabricatorActionListView()) | ||||
->setViewer($viewer); | ->setViewer($viewer); | ||||
foreach ($item_views as $item) { | foreach ($item_views as $item) { | ||||
$action = id(new PhabricatorActionView()) | $action = id(new PhabricatorActionView()) | ||||
->setName($item->getName()) | ->setName($item->getName()) | ||||
->setHref($item->getHref()) | ->setHref($item->getHref()) | ||||
->setIcon($item->getIcon()) | |||||
->setType($item->getType()); | ->setType($item->getType()); | ||||
$view->addAction($action); | $view->addAction($action); | ||||
} | } | ||||
if ($viewer->isLoggedIn()) { | |||||
$view->addAction( | |||||
id(new PhabricatorActionView()) | |||||
->setType(PhabricatorActionView::TYPE_DIVIDER)); | |||||
$view->addAction( | |||||
id(new PhabricatorActionView()) | |||||
->setName(pht('Edit Favorites')) | |||||
->setHref('/favorites/menu/configure/')); | |||||
} | |||||
return $view; | return $view; | ||||
} | } | ||||
} | } |