Differential D20389 Diff 48666 src/applications/dashboard/typeahead/PhabricatorDashboardPortalDatasource.php
Changeset View
Changeset View
Standalone View
Standalone View
src/applications/dashboard/typeahead/PhabricatorDashboardPortalDatasource.php
Show All 21 Lines | final class PhabricatorDashboardPortalDatasource | ||||
protected function renderSpecialTokens(array $values) { | protected function renderSpecialTokens(array $values) { | ||||
return $this->renderTokensFromResults($this->buildResults(), $values); | return $this->renderTokensFromResults($this->buildResults(), $values); | ||||
} | } | ||||
public function buildResults() { | public function buildResults() { | ||||
$query = new PhabricatorDashboardPortalQuery(); | $query = new PhabricatorDashboardPortalQuery(); | ||||
// TODO: Actually query by name so this scales past 100 portals. | $this->applyFerretConstraints( | ||||
$query, | |||||
id(new PhabricatorDashboardPortal())->newFerretEngine(), | |||||
'title', | |||||
$this->getRawQuery()); | |||||
$portals = $this->executeQuery($query); | $portals = $this->executeQuery($query); | ||||
$results = array(); | $results = array(); | ||||
foreach ($portals as $portal) { | foreach ($portals as $portal) { | ||||
$result = id(new PhabricatorTypeaheadResult()) | $result = id(new PhabricatorTypeaheadResult()) | ||||
->setName($portal->getObjectName().' '.$portal->getName()) | ->setName($portal->getObjectName().' '.$portal->getName()) | ||||
->setPHID($portal->getPHID()) | ->setPHID($portal->getPHID()) | ||||
Show All 9 Lines |