diff --git a/src/__phutil_library_map__.php b/src/__phutil_library_map__.php --- a/src/__phutil_library_map__.php +++ b/src/__phutil_library_map__.php @@ -459,6 +459,7 @@ 'DifferentialUnitStatus' => 'applications/differential/constants/DifferentialUnitStatus.php', 'DifferentialUnitTestResult' => 'applications/differential/constants/DifferentialUnitTestResult.php', 'DifferentialViewPolicyField' => 'applications/differential/customfield/DifferentialViewPolicyField.php', + 'DiffusionArcanistProjectDatasource' => 'applications/diffusion/typeahead/DiffusionArcanistProjectDatasource.php', 'DiffusionBranchTableController' => 'applications/diffusion/controller/DiffusionBranchTableController.php', 'DiffusionBranchTableView' => 'applications/diffusion/view/DiffusionBranchTableView.php', 'DiffusionBrowseController' => 'applications/diffusion/controller/DiffusionBrowseController.php', @@ -3175,6 +3176,7 @@ 'DifferentialTransactionView' => 'PhabricatorApplicationTransactionView', 'DifferentialUnitField' => 'DifferentialCustomField', 'DifferentialViewPolicyField' => 'DifferentialCoreCustomField', + 'DiffusionArcanistProjectDatasource' => 'PhabricatorTypeaheadDatasource', 'DiffusionBranchTableController' => 'DiffusionController', 'DiffusionBranchTableView' => 'DiffusionView', 'DiffusionBrowseController' => 'DiffusionController', diff --git a/src/applications/diffusion/typeahead/DiffusionArcanistProjectDatasource.php b/src/applications/diffusion/typeahead/DiffusionArcanistProjectDatasource.php new file mode 100644 --- /dev/null +++ b/src/applications/diffusion/typeahead/DiffusionArcanistProjectDatasource.php @@ -0,0 +1,30 @@ +getViewer(); + $raw_query = $this->getRawQuery(); + + $results = array(); + + $arcprojs = id(new PhabricatorRepositoryArcanistProject())->loadAll(); + foreach ($arcprojs as $proj) { + $results[] = id(new PhabricatorTypeaheadResult()) + ->setName($proj->getName()) + ->setPHID($proj->getPHID()); + } + + return $results; + } + +} diff --git a/src/applications/herald/controller/HeraldRuleController.php b/src/applications/herald/controller/HeraldRuleController.php --- a/src/applications/herald/controller/HeraldRuleController.php +++ b/src/applications/herald/controller/HeraldRuleController.php @@ -593,6 +593,7 @@ 'legaldocuments' => new LegalpadDocumentDatasource(), 'taskpriority' => new ManiphestTaskPriorityDatasource(), 'buildplan' => new HarbormasterBuildPlanDatasource(), + 'arcanistprojects' => new DiffusionArcanistProjectDatasource(), ); $sources = mpull($sources, 'getDatasourceURI'); @@ -602,7 +603,6 @@ 'package' => '/typeahead/common/packages/', 'project' => '/typeahead/common/projects/', 'userorproject' => '/typeahead/common/accountsorprojects/', - 'arcanistprojects' => '/typeahead/common/arcanistprojects/', ); return array( diff --git a/src/applications/repository/controller/PhabricatorRepositoryArcanistProjectEditController.php b/src/applications/repository/controller/PhabricatorRepositoryArcanistProjectEditController.php --- a/src/applications/repository/controller/PhabricatorRepositoryArcanistProjectEditController.php +++ b/src/applications/repository/controller/PhabricatorRepositoryArcanistProjectEditController.php @@ -95,7 +95,7 @@ id(new AphrontFormTokenizerControl()) ->setLabel('Uses Symbols From') ->setName('symbolIndexProjects') - ->setDatasource('/typeahead/common/arcanistprojects/') + ->setDatasource(new DiffusionArcanistProjectDatasource()) ->setValue($uses)) ->appendChild( id(new AphrontFormSubmitControl()) diff --git a/src/applications/typeahead/controller/PhabricatorTypeaheadCommonDatasourceController.php b/src/applications/typeahead/controller/PhabricatorTypeaheadCommonDatasourceController.php --- a/src/applications/typeahead/controller/PhabricatorTypeaheadCommonDatasourceController.php +++ b/src/applications/typeahead/controller/PhabricatorTypeaheadCommonDatasourceController.php @@ -28,7 +28,6 @@ $need_projs = false; $need_packages = false; $need_upforgrabs = false; - $need_arcanist_projects = false; $need_noproject = false; $need_symbols = false; $need_jump_objects = false; @@ -76,9 +75,6 @@ case 'packages': $need_packages = true; break; - case 'arcanistprojects': - $need_arcanist_projects = true; - break; } $results = array(); @@ -243,15 +239,6 @@ } } - if ($need_arcanist_projects) { - $arcprojs = id(new PhabricatorRepositoryArcanistProject())->loadAll(); - foreach ($arcprojs as $proj) { - $results[] = id(new PhabricatorTypeaheadResult()) - ->setName($proj->getName()) - ->setPHID($proj->getPHID()); - } - } - if ($need_applications) { $applications = PhabricatorApplication::getAllInstalledApplications(); foreach ($applications as $application) {