Path: blob/master/src/applications/calendar/query/PhabricatorCalendarImportLogSearchEngine.php
12256 views
<?php12final class PhabricatorCalendarImportLogSearchEngine3extends PhabricatorApplicationSearchEngine {45public function getResultTypeDescription() {6return pht('Calendar Import Logs');7}89public function getApplicationClassName() {10return 'PhabricatorCalendarApplication';11}1213public function canUseInPanelContext() {14return false;15}1617public function newQuery() {18return new PhabricatorCalendarImportLogQuery();19}2021protected function buildCustomSearchFields() {22return array(23id(new PhabricatorPHIDsSearchField())24->setLabel(pht('Import Sources'))25->setKey('importSourcePHIDs')26->setAliases(array('importSourcePHID')),27);28}2930protected function buildQueryFromParameters(array $map) {31$query = $this->newQuery();3233if ($map['importSourcePHIDs']) {34$query->withImportPHIDs($map['importSourcePHIDs']);35}3637return $query;38}3940protected function getURI($path) {41return '/calendar/import/log/'.$path;42}4344protected function getBuiltinQueryNames() {45$names = array(46'all' => pht('All Logs'),47);4849return $names;50}5152public function buildSavedQueryFromBuiltin($query_key) {53$query = $this->newSavedQuery();54$query->setQueryKey($query_key);5556switch ($query_key) {57case 'all':58return $query;59}6061return parent::buildSavedQueryFromBuiltin($query_key);62}6364protected function renderResultList(65array $logs,66PhabricatorSavedQuery $query,67array $handles) {6869assert_instances_of($logs, 'PhabricatorCalendarImportLog');70$viewer = $this->requireViewer();7172$view = id(new PhabricatorCalendarImportLogView())73->setShowImportSources(true)74->setViewer($viewer)75->setLogs($logs);7677return id(new PhabricatorApplicationSearchResultView())78->setTable($view->newTable());79}80}818283