Allow users to select QueryPanel search engines from a list
Summary: Ref T4986. Instead of requiring users to know the name of an application search engine class, let them select from a list. Test Plan: Created a new panel. {F165468} Reviewers: chad Reviewed By: chad Subscribers: epriestley Maniphest Tasks: T4986 Differential Revision: https://secure.phabricator.com/D9500
This commit is contained in:
@@ -1495,6 +1495,7 @@ phutil_register_library_map(array(
|
|||||||
'PhabricatorDashboardPanelQuery' => 'applications/dashboard/query/PhabricatorDashboardPanelQuery.php',
|
'PhabricatorDashboardPanelQuery' => 'applications/dashboard/query/PhabricatorDashboardPanelQuery.php',
|
||||||
'PhabricatorDashboardPanelRenderController' => 'applications/dashboard/controller/PhabricatorDashboardPanelRenderController.php',
|
'PhabricatorDashboardPanelRenderController' => 'applications/dashboard/controller/PhabricatorDashboardPanelRenderController.php',
|
||||||
'PhabricatorDashboardPanelRenderingEngine' => 'applications/dashboard/engine/PhabricatorDashboardPanelRenderingEngine.php',
|
'PhabricatorDashboardPanelRenderingEngine' => 'applications/dashboard/engine/PhabricatorDashboardPanelRenderingEngine.php',
|
||||||
|
'PhabricatorDashboardPanelSearchApplicationCustomField' => 'applications/dashboard/customfield/PhabricatorDashboardPanelSearchApplicationCustomField.php',
|
||||||
'PhabricatorDashboardPanelSearchEngine' => 'applications/dashboard/query/PhabricatorDashboardPanelSearchEngine.php',
|
'PhabricatorDashboardPanelSearchEngine' => 'applications/dashboard/query/PhabricatorDashboardPanelSearchEngine.php',
|
||||||
'PhabricatorDashboardPanelTransaction' => 'applications/dashboard/storage/PhabricatorDashboardPanelTransaction.php',
|
'PhabricatorDashboardPanelTransaction' => 'applications/dashboard/storage/PhabricatorDashboardPanelTransaction.php',
|
||||||
'PhabricatorDashboardPanelTransactionEditor' => 'applications/dashboard/editor/PhabricatorDashboardPanelTransactionEditor.php',
|
'PhabricatorDashboardPanelTransactionEditor' => 'applications/dashboard/editor/PhabricatorDashboardPanelTransactionEditor.php',
|
||||||
@@ -4319,6 +4320,7 @@ phutil_register_library_map(array(
|
|||||||
'PhabricatorDashboardPanelQuery' => 'PhabricatorCursorPagedPolicyAwareQuery',
|
'PhabricatorDashboardPanelQuery' => 'PhabricatorCursorPagedPolicyAwareQuery',
|
||||||
'PhabricatorDashboardPanelRenderController' => 'PhabricatorDashboardController',
|
'PhabricatorDashboardPanelRenderController' => 'PhabricatorDashboardController',
|
||||||
'PhabricatorDashboardPanelRenderingEngine' => 'Phobject',
|
'PhabricatorDashboardPanelRenderingEngine' => 'Phobject',
|
||||||
|
'PhabricatorDashboardPanelSearchApplicationCustomField' => 'PhabricatorStandardCustomField',
|
||||||
'PhabricatorDashboardPanelSearchEngine' => 'PhabricatorApplicationSearchEngine',
|
'PhabricatorDashboardPanelSearchEngine' => 'PhabricatorApplicationSearchEngine',
|
||||||
'PhabricatorDashboardPanelTransaction' => 'PhabricatorApplicationTransaction',
|
'PhabricatorDashboardPanelTransaction' => 'PhabricatorApplicationTransaction',
|
||||||
'PhabricatorDashboardPanelTransactionEditor' => 'PhabricatorApplicationTransactionEditor',
|
'PhabricatorDashboardPanelTransactionEditor' => 'PhabricatorApplicationTransactionEditor',
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PhabricatorCommitSearchEngine
|
final class PhabricatorCommitSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Commits');
|
||||||
|
}
|
||||||
|
|
||||||
public function buildSavedQueryFromRequest(AphrontRequest $request) {
|
public function buildSavedQueryFromRequest(AphrontRequest $request) {
|
||||||
$saved = new PhabricatorSavedQuery();
|
$saved = new PhabricatorSavedQuery();
|
||||||
|
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PhabricatorCalendarEventSearchEngine
|
final class PhabricatorCalendarEventSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Calendar Events');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationCalendar';
|
return 'PhabricatorApplicationCalendar';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PhabricatorConduitSearchEngine
|
final class PhabricatorConduitSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Conduit Methods');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationConduit';
|
return 'PhabricatorApplicationConduit';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PhabricatorCountdownSearchEngine
|
final class PhabricatorCountdownSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Countdowns');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationCountdown';
|
return 'PhabricatorApplicationCountdown';
|
||||||
}
|
}
|
||||||
|
@@ -0,0 +1,40 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
final class PhabricatorDashboardPanelSearchApplicationCustomField
|
||||||
|
extends PhabricatorStandardCustomField {
|
||||||
|
|
||||||
|
public function getFieldType() {
|
||||||
|
return 'search.application';
|
||||||
|
}
|
||||||
|
|
||||||
|
public function shouldAppearInApplicationSearch() {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function renderEditControl(array $handles) {
|
||||||
|
|
||||||
|
$engines = id(new PhutilSymbolLoader())
|
||||||
|
->setAncestorClass('PhabricatorApplicationSearchEngine')
|
||||||
|
->loadObjects();
|
||||||
|
|
||||||
|
$options = array();
|
||||||
|
|
||||||
|
$value = $this->getFieldValue();
|
||||||
|
if (strlen($value) && empty($engines[$value])) {
|
||||||
|
$options[$value] = $value;
|
||||||
|
}
|
||||||
|
|
||||||
|
$engines = msort($engines, 'getResultTypeDescription');
|
||||||
|
foreach ($engines as $class_name => $engine) {
|
||||||
|
$options[$class_name] = $engine->getResultTypeDescription();
|
||||||
|
}
|
||||||
|
|
||||||
|
return id(new AphrontFormSelectControl())
|
||||||
|
->setLabel($this->getFieldName())
|
||||||
|
->setCaption($this->getCaption())
|
||||||
|
->setName($this->getFieldKey())
|
||||||
|
->setValue($this->getFieldValue())
|
||||||
|
->setOptions($options);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@@ -20,11 +20,11 @@ final class PhabricatorDashboardPanelTypeQuery
|
|||||||
public function getFieldSpecifications() {
|
public function getFieldSpecifications() {
|
||||||
return array(
|
return array(
|
||||||
'class' => array(
|
'class' => array(
|
||||||
'name' => pht('ApplicationSearch Class'),
|
'name' => pht('Search For'),
|
||||||
'type' => 'text',
|
'type' => 'search.application',
|
||||||
),
|
),
|
||||||
'key' => array(
|
'key' => array(
|
||||||
'name' => pht('ApplicationSearch Key'),
|
'name' => pht('Query'),
|
||||||
'type' => 'text',
|
'type' => 'text',
|
||||||
),
|
),
|
||||||
'limit' => array(
|
'limit' => array(
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PhabricatorDashboardPanelSearchEngine
|
final class PhabricatorDashboardPanelSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Dashboard Panels');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationDashboard';
|
return 'PhabricatorApplicationDashboard';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PhabricatorDashboardSearchEngine
|
final class PhabricatorDashboardSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Dashboards');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationDashboard';
|
return 'PhabricatorApplicationDashboard';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class DifferentialRevisionSearchEngine
|
final class DifferentialRevisionSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Differential Revisions');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationDifferential';
|
return 'PhabricatorApplicationDifferential';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class DivinerAtomSearchEngine
|
final class DivinerAtomSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Documentation Atoms');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationDiviner';
|
return 'PhabricatorApplicationDiviner';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class DrydockBlueprintSearchEngine
|
final class DrydockBlueprintSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Drydock Blueprints');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationDrydock';
|
return 'PhabricatorApplicationDrydock';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class DrydockLeaseSearchEngine
|
final class DrydockLeaseSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Drydock Leases');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationDrydock';
|
return 'PhabricatorApplicationDrydock';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class DrydockLogSearchEngine
|
final class DrydockLogSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Drydock Logs');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationDrydock';
|
return 'PhabricatorApplicationDrydock';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class DrydockResourceSearchEngine
|
final class DrydockResourceSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Drydock Resources');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationDrydock';
|
return 'PhabricatorApplicationDrydock';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PhabricatorFeedSearchEngine
|
final class PhabricatorFeedSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Feed Stories');
|
||||||
|
}
|
||||||
|
|
||||||
public function buildSavedQueryFromRequest(AphrontRequest $request) {
|
public function buildSavedQueryFromRequest(AphrontRequest $request) {
|
||||||
$saved = new PhabricatorSavedQuery();
|
$saved = new PhabricatorSavedQuery();
|
||||||
|
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PhabricatorFileSearchEngine
|
final class PhabricatorFileSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Files');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationFiles';
|
return 'PhabricatorApplicationFiles';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PhabricatorFlagSearchEngine
|
final class PhabricatorFlagSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Flags');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationFlags';
|
return 'PhabricatorApplicationFlags';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class HarbormasterBuildPlanSearchEngine
|
final class HarbormasterBuildPlanSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Harbormaster Build Plans');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationHarbormaster';
|
return 'PhabricatorApplicationHarbormaster';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class HarbormasterBuildableSearchEngine
|
final class HarbormasterBuildableSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Harbormaster Buildables');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationHarbormaster';
|
return 'PhabricatorApplicationHarbormaster';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class HeraldRuleSearchEngine
|
final class HeraldRuleSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Herald Rules');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationHerald';
|
return 'PhabricatorApplicationHerald';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class HeraldTranscriptSearchEngine
|
final class HeraldTranscriptSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Herald Transcripts');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationHerald';
|
return 'PhabricatorApplicationHerald';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class LegalpadDocumentSearchEngine
|
final class LegalpadDocumentSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Legalpad Documents');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationLegalpad';
|
return 'PhabricatorApplicationLegalpad';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PhabricatorMacroSearchEngine
|
final class PhabricatorMacroSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Macros');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationMacro';
|
return 'PhabricatorApplicationMacro';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PhabricatorMailingListSearchEngine
|
final class PhabricatorMailingListSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Mailing Lists');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationMailingLists';
|
return 'PhabricatorApplicationMailingLists';
|
||||||
}
|
}
|
||||||
|
@@ -30,6 +30,10 @@ final class ManiphestTaskSearchEngine
|
|||||||
return $this;
|
return $this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Tasks');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationManiphest';
|
return 'PhabricatorApplicationManiphest';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PhabricatorAppSearchEngine
|
final class PhabricatorAppSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Applications');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationApplications';
|
return 'PhabricatorApplicationApplications';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PhabricatorOAuthServerClientSearchEngine
|
final class PhabricatorOAuthServerClientSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('OAuth Clients');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationOAuthServer';
|
return 'PhabricatorApplicationOAuthServer';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PassphraseCredentialSearchEngine
|
final class PassphraseCredentialSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Passphrase Credentials');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationPassphrase';
|
return 'PhabricatorApplicationPassphrase';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PhabricatorPasteSearchEngine
|
final class PhabricatorPasteSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Pastes');
|
||||||
|
}
|
||||||
|
|
||||||
public function buildSavedQueryFromRequest(AphrontRequest $request) {
|
public function buildSavedQueryFromRequest(AphrontRequest $request) {
|
||||||
$saved = new PhabricatorSavedQuery();
|
$saved = new PhabricatorSavedQuery();
|
||||||
$saved->setParameter(
|
$saved->setParameter(
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PhabricatorPeopleLogSearchEngine
|
final class PhabricatorPeopleLogSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Account Activity');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationPeople';
|
return 'PhabricatorApplicationPeople';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PhabricatorPeopleSearchEngine
|
final class PhabricatorPeopleSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Users');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationPeople';
|
return 'PhabricatorApplicationPeople';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PholioMockSearchEngine
|
final class PholioMockSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Pholio Mocks');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationPholio';
|
return 'PhabricatorApplicationPholio';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PhrequentSearchEngine
|
final class PhrequentSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Phrequent Time');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationPhrequent';
|
return 'PhabricatorApplicationPhrequent';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PhrictionSearchEngine
|
final class PhrictionSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Wiki Documents');
|
||||||
|
}
|
||||||
|
|
||||||
public function buildSavedQueryFromRequest(AphrontRequest $request) {
|
public function buildSavedQueryFromRequest(AphrontRequest $request) {
|
||||||
$saved = new PhabricatorSavedQuery();
|
$saved = new PhabricatorSavedQuery();
|
||||||
|
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PonderQuestionSearchEngine
|
final class PonderQuestionSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Ponder Questions');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationPonder';
|
return 'PhabricatorApplicationPonder';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PhabricatorProjectSearchEngine
|
final class PhabricatorProjectSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Projects');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationProject';
|
return 'PhabricatorApplicationProject';
|
||||||
}
|
}
|
||||||
|
@@ -5,6 +5,10 @@ final class ReleephBranchSearchEngine
|
|||||||
|
|
||||||
private $product;
|
private $product;
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Releeph Branches');
|
||||||
|
}
|
||||||
|
|
||||||
public function setProduct(ReleephProject $product) {
|
public function setProduct(ReleephProject $product) {
|
||||||
$this->product = $product;
|
$this->product = $product;
|
||||||
return $this;
|
return $this;
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class ReleephProductSearchEngine
|
final class ReleephProductSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Releeph Products');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationReleeph';
|
return 'PhabricatorApplicationReleeph';
|
||||||
}
|
}
|
||||||
|
@@ -6,6 +6,10 @@ final class ReleephRequestSearchEngine
|
|||||||
private $branch;
|
private $branch;
|
||||||
private $baseURI;
|
private $baseURI;
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Releeph Pull Requests');
|
||||||
|
}
|
||||||
|
|
||||||
public function setBranch(ReleephBranch $branch) {
|
public function setBranch(ReleephBranch $branch) {
|
||||||
$this->branch = $branch;
|
$this->branch = $branch;
|
||||||
return $this;
|
return $this;
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PhabricatorRepositoryPushLogSearchEngine
|
final class PhabricatorRepositoryPushLogSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Push Logs');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationDiffusion';
|
return 'PhabricatorApplicationDiffusion';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PhabricatorRepositorySearchEngine
|
final class PhabricatorRepositorySearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Repositories');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationDiffusion';
|
return 'PhabricatorApplicationDiffusion';
|
||||||
}
|
}
|
||||||
|
@@ -120,6 +120,18 @@ abstract class PhabricatorApplicationSearchEngine {
|
|||||||
abstract protected function getURI($path);
|
abstract protected function getURI($path);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Return a human readable description of the type of objects this query
|
||||||
|
* searches for.
|
||||||
|
*
|
||||||
|
* For example, "Tasks" or "Commits".
|
||||||
|
*
|
||||||
|
* @return string Human-readable description of what this engine is used to
|
||||||
|
* find.
|
||||||
|
*/
|
||||||
|
abstract public function getResultTypeDescription();
|
||||||
|
|
||||||
|
|
||||||
public function newSavedQuery() {
|
public function newSavedQuery() {
|
||||||
return id(new PhabricatorSavedQuery())
|
return id(new PhabricatorSavedQuery())
|
||||||
->setEngineClassName(get_class($this));
|
->setEngineClassName(get_class($this));
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PhabricatorSearchApplicationSearchEngine
|
final class PhabricatorSearchApplicationSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Fulltext Results');
|
||||||
|
}
|
||||||
|
|
||||||
public function getApplicationClassName() {
|
public function getApplicationClassName() {
|
||||||
return 'PhabricatorApplicationSearch';
|
return 'PhabricatorApplicationSearch';
|
||||||
}
|
}
|
||||||
|
@@ -3,6 +3,10 @@
|
|||||||
final class PhabricatorSlowvoteSearchEngine
|
final class PhabricatorSlowvoteSearchEngine
|
||||||
extends PhabricatorApplicationSearchEngine {
|
extends PhabricatorApplicationSearchEngine {
|
||||||
|
|
||||||
|
public function getResultTypeDescription() {
|
||||||
|
return pht('Slowvotes');
|
||||||
|
}
|
||||||
|
|
||||||
public function buildSavedQueryFromRequest(AphrontRequest $request) {
|
public function buildSavedQueryFromRequest(AphrontRequest $request) {
|
||||||
$saved = new PhabricatorSavedQuery();
|
$saved = new PhabricatorSavedQuery();
|
||||||
$saved->setParameter(
|
$saved->setParameter(
|
||||||
|
Reference in New Issue
Block a user