Changeset View
Changeset View
Standalone View
Standalone View
src/applications/packages/controller/PackagesListController.php
- This file was added.
| <?php | |||||
| final class PackagesListController | |||||
| extends PackagesController { | |||||
| public function handleRequest(AphrontRequest $request) { | |||||
| $querykey = $request->getURIData('queryKey'); | |||||
| $controller = id(new PhabricatorApplicationSearchController()) | |||||
| ->setQueryKey($querykey) | |||||
| ->setSearchEngine(new PackagesPackageSearchEngine()) | |||||
| ->setNavigation($this->buildSideNavView()); | |||||
| return $this->delegateToController($controller); | |||||
| } | |||||
| public function buildSideNavView() { | |||||
| $viewer = $this->getViewer(); | |||||
| $nav = new AphrontSideNavFilterView(); | |||||
| $nav->setBaseURI(new PhutilURI($this->getApplicationURI())); | |||||
| id(new PackagesPackageSearchEngine()) | |||||
| ->setViewer($viewer) | |||||
| ->addNavigationItems($nav->getMenu()); | |||||
| $nav->addLabel(pht('Versions')); | |||||
| $nav->addFilter('version/', pht('Manage Versions')); | |||||
| $nav->selectFilter(null); | |||||
| return $nav; | |||||
| } | |||||
| protected function buildApplicationCrumbs() { | |||||
| $crumbs = parent::buildApplicationCrumbs(); | |||||
| $can_create = $this->hasApplicationCapability( | |||||
| PackagesCreatePackageCapability::CAPABILITY); | |||||
| $crumbs->addAction( | |||||
| id(new PHUIListItemView()) | |||||
| ->setName(pht('Create Package')) | |||||
| ->setHref($this->getApplicationURI('package/create/')) | |||||
| ->setIcon('fa-plus-square') | |||||
| ->setDisabled(!$can_create) | |||||
| ->setWorkflow(!$can_create)); | |||||
| return $crumbs; | |||||
| } | |||||
| } | |||||