@recaptime-dev's working patches + fork for Phorge, a community fork of Phabricator. (Upstream dev and stable branches are at upstream/main and upstream/stable respectively.) hq.recaptime.dev/wiki/Phorge
phorge phabricator
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Modernize "owners" datasource

Summary: Ref T4420. Update owners.

Test Plan:
- Used typeahead from Herald.

Reviewers: btrahan

Reviewed By: btrahan

Subscribers: epriestley

Maniphest Tasks: T4420

Differential Revision: https://secure.phabricator.com/D9880

+38 -4
+2
src/__phutil_library_map__.php
··· 1866 1866 'PhabricatorOwnersOwner' => 'applications/owners/storage/PhabricatorOwnersOwner.php', 1867 1867 'PhabricatorOwnersPHIDTypePackage' => 'applications/owners/phid/PhabricatorOwnersPHIDTypePackage.php', 1868 1868 'PhabricatorOwnersPackage' => 'applications/owners/storage/PhabricatorOwnersPackage.php', 1869 + 'PhabricatorOwnersPackageDatasource' => 'applications/owners/typeahead/PhabricatorOwnersPackageDatasource.php', 1869 1870 'PhabricatorOwnersPackagePathValidator' => 'applications/repository/worker/commitchangeparser/PhabricatorOwnersPackagePathValidator.php', 1870 1871 'PhabricatorOwnersPackageQuery' => 'applications/owners/query/PhabricatorOwnersPackageQuery.php', 1871 1872 'PhabricatorOwnersPackageTestCase' => 'applications/owners/storage/__tests__/PhabricatorOwnersPackageTestCase.php', ··· 4718 4719 0 => 'PhabricatorOwnersDAO', 4719 4720 1 => 'PhabricatorPolicyInterface', 4720 4721 ), 4722 + 'PhabricatorOwnersPackageDatasource' => 'PhabricatorTypeaheadDatasource', 4721 4723 'PhabricatorOwnersPackageQuery' => 'PhabricatorCursorPagedPolicyAwareQuery', 4722 4724 'PhabricatorOwnersPackageTestCase' => 'PhabricatorTestCase', 4723 4725 'PhabricatorOwnersPath' => 'PhabricatorOwnersDAO',
+1 -1
src/applications/herald/controller/HeraldRuleController.php
··· 594 594 'taskpriority' => new ManiphestTaskPriorityDatasource(), 595 595 'buildplan' => new HarbormasterBuildPlanDatasource(), 596 596 'arcanistprojects' => new DiffusionArcanistProjectDatasource(), 597 + 'package' => new PhabricatorOwnersPackageDatasource(), 597 598 ); 598 599 599 600 $sources = mpull($sources, 'getDatasourceURI'); 600 601 $sources += array( 601 602 'email' => '/typeahead/common/mailable/', 602 603 'user' => '/typeahead/common/accounts/', 603 - 'package' => '/typeahead/common/packages/', 604 604 'project' => '/typeahead/common/projects/', 605 605 'userorproject' => '/typeahead/common/accountsorprojects/', 606 606 );
+35
src/applications/owners/typeahead/PhabricatorOwnersPackageDatasource.php
··· 1 + <?php 2 + 3 + final class PhabricatorOwnersPackageDatasource 4 + extends PhabricatorTypeaheadDatasource { 5 + 6 + public function getPlaceholderText() { 7 + return pht('Type a package name...'); 8 + } 9 + 10 + public function getDatasourceApplicationClass() { 11 + return 'PhabricatorApplicationOwners'; 12 + } 13 + 14 + public function loadResults() { 15 + $viewer = $this->getViewer(); 16 + $raw_query = $this->getRawQuery(); 17 + 18 + $results = array(); 19 + 20 + $packages = id(new PhabricatorOwnersPackageQuery()) 21 + ->setViewer($viewer) 22 + ->execute(); 23 + 24 + foreach ($packages as $package) { 25 + $results[] = id(new PhabricatorTypeaheadResult()) 26 + ->setIcon('fa-list-alt bluegrey') 27 + ->setName($package->getName()) 28 + ->setURI('/owners/package/'.$package->getID().'/') 29 + ->setPHID($package->getPHID()); 30 + } 31 + 32 + return $results; 33 + } 34 + 35 + }
-3
src/applications/typeahead/controller/PhabricatorTypeaheadCommonDatasourceController.php
··· 72 72 $need_projs = true; 73 73 $need_packages = true; 74 74 break; 75 - case 'packages': 76 - $need_packages = true; 77 - break; 78 75 } 79 76 80 77 $results = array();