diff --git a/src/applications/badges/controller/PhabricatorBadgesController.php b/src/applications/badges/controller/PhabricatorBadgesController.php --- a/src/applications/badges/controller/PhabricatorBadgesController.php +++ b/src/applications/badges/controller/PhabricatorBadgesController.php @@ -1,3 +1,10 @@ newApplicationMenu() + ->setSearchEngine(new PhabricatorBadgesSearchEngine()); + } + +} diff --git a/src/applications/slowvote/controller/PhabricatorSlowvoteController.php b/src/applications/slowvote/controller/PhabricatorSlowvoteController.php --- a/src/applications/slowvote/controller/PhabricatorSlowvoteController.php +++ b/src/applications/slowvote/controller/PhabricatorSlowvoteController.php @@ -2,40 +2,9 @@ abstract class PhabricatorSlowvoteController extends PhabricatorController { - public function buildSideNavView($for_app = false) { - $user = $this->getRequest()->getUser(); - - $nav = new AphrontSideNavFilterView(); - $nav->setBaseURI(new PhutilURI($this->getApplicationURI())); - - if ($for_app) { - $nav->addFilter('', pht('Create Poll'), - $this->getApplicationURI('create/')); - } - - id(new PhabricatorSlowvoteSearchEngine()) - ->setViewer($user) - ->addNavigationItems($nav->getMenu()); - - $nav->selectFilter(null); - - return $nav; - } - public function buildApplicationMenu() { - return $this->buildSideNavView(true)->getMenu(); - } - - protected function buildApplicationCrumbs() { - $crumbs = parent::buildApplicationCrumbs(); - - $crumbs->addAction( - id(new PHUIListItemView()) - ->setName(pht('Create Poll')) - ->setHref($this->getApplicationURI('create/')) - ->setIcon('fa-plus-square')); - - return $crumbs; + return $this->newApplicationMenu() + ->setSearchEngine(new PhabricatorSlowvoteSearchEngine()); } } diff --git a/src/applications/slowvote/controller/PhabricatorSlowvoteEditController.php b/src/applications/slowvote/controller/PhabricatorSlowvoteEditController.php --- a/src/applications/slowvote/controller/PhabricatorSlowvoteEditController.php +++ b/src/applications/slowvote/controller/PhabricatorSlowvoteEditController.php @@ -257,7 +257,7 @@ ->setValue($button) ->addCancelButton($cancel_uri)); - $crumbs = $this->buildApplicationCrumbs($this->buildSideNavView()); + $crumbs = $this->buildApplicationCrumbs(); $crumbs->addTextCrumb($title); $form_box = id(new PHUIObjectBoxView()) @@ -265,13 +265,12 @@ ->setFormErrors($errors) ->setForm($form); - return $this->buildApplicationPage( - array( - $crumbs, - $form_box, - ), - array( - 'title' => $title, + return $this->newPage() + ->setTitle($title) + ->setCrumbs($crumbs) + ->appendChild( + array( + $form_box, )); } diff --git a/src/applications/slowvote/controller/PhabricatorSlowvoteListController.php b/src/applications/slowvote/controller/PhabricatorSlowvoteListController.php --- a/src/applications/slowvote/controller/PhabricatorSlowvoteListController.php +++ b/src/applications/slowvote/controller/PhabricatorSlowvoteListController.php @@ -8,14 +8,21 @@ } public function handleRequest(AphrontRequest $request) { - $querykey = $request->getURIData('queryKey'); + return id(new PhabricatorSlowvoteSearchEngine()) + ->setController($this) + ->buildResponse(); + } + + protected function buildApplicationCrumbs() { + $crumbs = parent::buildApplicationCrumbs(); - $controller = id(new PhabricatorApplicationSearchController()) - ->setQueryKey($querykey) - ->setSearchEngine(new PhabricatorSlowvoteSearchEngine()) - ->setNavigation($this->buildSideNavView()); + $crumbs->addAction( + id(new PHUIListItemView()) + ->setName(pht('Create Poll')) + ->setHref($this->getApplicationURI('create/')) + ->setIcon('fa-plus-square')); - return $this->delegateToController($controller); + return $crumbs; } } diff --git a/src/applications/slowvote/controller/PhabricatorSlowvotePollController.php b/src/applications/slowvote/controller/PhabricatorSlowvotePollController.php --- a/src/applications/slowvote/controller/PhabricatorSlowvotePollController.php +++ b/src/applications/slowvote/controller/PhabricatorSlowvotePollController.php @@ -61,17 +61,16 @@ ->setHeader($header) ->addPropertyList($properties); - return $this->buildApplicationPage( - array( - $crumbs, - $object_box, - $poll_view, - $timeline, - $add_comment, - ), - array( - 'title' => 'V'.$poll->getID().' '.$poll->getQuestion(), - 'pageObjects' => array($poll->getPHID()), + return $this->newPage() + ->setTitle('V'.$poll->getID().' '.$poll->getQuestion()) + ->setCrumbs($crumbs) + ->setPageObjectPHIDs(array($poll->getPHID())) + ->appendChild( + array( + $object_box, + $poll_view, + $timeline, + $add_comment, )); }