Path: blob/master/src/applications/fund/controller/FundBackerListController.php
12262 views
<?php12final class FundBackerListController3extends FundController {45private $initiative;67public function shouldAllowPublic() {8return true;9}1011public function handleRequest(AphrontRequest $request) {12$viewer = $request->getViewer();13$id = $request->getURIData('id');14$querykey = $request->getURIData('queryKey');1516if ($id) {17$this->initiative = id(new FundInitiativeQuery())18->setViewer($viewer)19->withIDs(array($id))20->executeOne();21if (!$this->initiative) {22return new Aphront404Response();23}24}2526$controller = id(new PhabricatorApplicationSearchController())27->setQueryKey($querykey)28->setSearchEngine($this->getEngine())29->setNavigation($this->buildSideNavView());3031return $this->delegateToController($controller);32}3334public function buildSideNavView() {35$user = $this->getRequest()->getUser();3637$nav = new AphrontSideNavFilterView();38$nav->setBaseURI(new PhutilURI($this->getApplicationURI()));3940$this->getEngine()->addNavigationItems($nav->getMenu());4142$nav->selectFilter(null);4344return $nav;45}4647protected function buildApplicationCrumbs() {48$crumbs = parent::buildApplicationCrumbs();49$crumbs->addTextCrumb(50pht('Backers'),51$this->getApplicationURI('backers/'));5253if ($this->initiative) {54$crumbs->addTextCrumb(55$this->initiative->getMonogram(),56'/'.$this->initiative->getMonogram());57}5859return $crumbs;60}6162private function getEngine() {63$viewer = $this->getViewer();6465$engine = id(new FundBackerSearchEngine())66->setViewer($viewer);6768if ($this->initiative) {69$engine->setInitiative($this->initiative);70}7172return $engine;73}7475}767778