[ Index ]

PHP Cross Reference of Phabricator

title

Body

[close]

/src/applications/drydock/query/ -> DrydockBlueprintSearchEngine.php (source)

   1  <?php
   2  
   3  final class DrydockBlueprintSearchEngine
   4    extends PhabricatorApplicationSearchEngine {
   5  
   6    public function getResultTypeDescription() {
   7      return pht('Drydock Blueprints');
   8    }
   9  
  10    public function getApplicationClassName() {
  11      return 'PhabricatorDrydockApplication';
  12    }
  13  
  14    public function buildSavedQueryFromRequest(AphrontRequest $request) {
  15      return new PhabricatorSavedQuery();
  16    }
  17  
  18    public function buildQueryFromSavedQuery(PhabricatorSavedQuery $saved) {
  19      return new DrydockBlueprintQuery();
  20    }
  21  
  22    public function buildSearchForm(
  23      AphrontFormView $form,
  24      PhabricatorSavedQuery $saved) {}
  25  
  26    protected function getURI($path) {
  27      return '/drydock/blueprint/'.$path;
  28    }
  29  
  30    public function getBuiltinQueryNames() {
  31      return array(
  32        'all' => pht('All Blueprints'),
  33      );
  34    }
  35  
  36    public function buildSavedQueryFromBuiltin($query_key) {
  37      $query = $this->newSavedQuery();
  38      $query->setQueryKey($query_key);
  39  
  40      switch ($query_key) {
  41        case 'all':
  42          return $query;
  43      }
  44  
  45      return parent::buildSavedQueryFromBuiltin($query_key);
  46    }
  47  
  48    public function renderResultList(
  49      array $blueprints,
  50      PhabricatorSavedQuery $query,
  51      array $handles) {
  52      assert_instances_of($blueprints, 'DrydockBlueprint');
  53  
  54      $viewer = $this->requireViewer();
  55      $view = new PHUIObjectItemListView();
  56  
  57      foreach ($blueprints as $blueprint) {
  58        $item = id(new PHUIObjectItemView())
  59          ->setHeader($blueprint->getBlueprintName())
  60          ->setHref($this->getApplicationURI('/blueprint/'.$blueprint->getID()))
  61          ->setObjectName(pht('Blueprint %d', $blueprint->getID()));
  62  
  63        if (!$blueprint->getImplementation()->isEnabled()) {
  64          $item->setDisabled(true);
  65        }
  66  
  67        $item->addAttribute($blueprint->getImplementation()->getBlueprintName());
  68  
  69        $view->addItem($item);
  70      }
  71  
  72      return $view;
  73    }
  74  
  75  }


Generated: Sun Nov 30 09:20:46 2014 Cross-referenced by PHPXref 0.7.1