@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.

Bring very basic EditEngine support to commits

Summary:
Ref T10978. After T11114, we have some features (like the old code for the haunted comment panel) which are only used by Diffusion. I want to modernize it so I can nuke them. T10978 also describes many bugs which are only fixable after modernizing.

This adds very basic EditEngine support for commits/audit. You can't create new commits with this workflow, just tag/update existing ones.

Test Plan: {F2340347}

Reviewers: chad

Reviewed By: chad

Maniphest Tasks: T10978

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

+91
+4
src/__phutil_library_map__.php
··· 624 624 'DiffusionCommitDiffContentRemovedHeraldField' => 'applications/diffusion/herald/DiffusionCommitDiffContentRemovedHeraldField.php', 625 625 'DiffusionCommitDiffEnormousHeraldField' => 'applications/diffusion/herald/DiffusionCommitDiffEnormousHeraldField.php', 626 626 'DiffusionCommitEditController' => 'applications/diffusion/controller/DiffusionCommitEditController.php', 627 + 'DiffusionCommitEditEngine' => 'applications/diffusion/editor/DiffusionCommitEditEngine.php', 628 + 'DiffusionCommitEditProController' => 'applications/diffusion/controller/DiffusionCommitEditProController.php', 627 629 'DiffusionCommitFulltextEngine' => 'applications/repository/search/DiffusionCommitFulltextEngine.php', 628 630 'DiffusionCommitHasRevisionEdgeType' => 'applications/diffusion/edge/DiffusionCommitHasRevisionEdgeType.php', 629 631 'DiffusionCommitHasRevisionRelationship' => 'applications/diffusion/relationships/DiffusionCommitHasRevisionRelationship.php', ··· 5316 5318 'DiffusionCommitDiffContentRemovedHeraldField' => 'DiffusionCommitHeraldField', 5317 5319 'DiffusionCommitDiffEnormousHeraldField' => 'DiffusionCommitHeraldField', 5318 5320 'DiffusionCommitEditController' => 'DiffusionController', 5321 + 'DiffusionCommitEditEngine' => 'PhabricatorEditEngine', 5322 + 'DiffusionCommitEditProController' => 'DiffusionController', 5319 5323 'DiffusionCommitFulltextEngine' => 'PhabricatorFulltextEngine', 5320 5324 'DiffusionCommitHasRevisionEdgeType' => 'PhabricatorEdgeType', 5321 5325 'DiffusionCommitHasRevisionRelationship' => 'DiffusionCommitRelationship',
+5
src/applications/diffusion/application/PhabricatorDiffusionApplication.php
··· 131 131 'symbol/(?P<name>[^/]+)/' => 'DiffusionSymbolController', 132 132 'external/' => 'DiffusionExternalController', 133 133 'lint/' => 'DiffusionLintController', 134 + 135 + 'commit/' => array( 136 + $this->getEditRoutePattern('edit/') => 137 + 'DiffusionCommitEditProController', 138 + ), 134 139 ), 135 140 ); 136 141 }
+12
src/applications/diffusion/controller/DiffusionCommitEditProController.php
··· 1 + <?php 2 + 3 + final class DiffusionCommitEditProController 4 + extends DiffusionController { 5 + 6 + public function handleRequest(AphrontRequest $request) { 7 + return id(new DiffusionCommitEditEngine()) 8 + ->setController($this) 9 + ->buildResponse(); 10 + } 11 + 12 + }
+70
src/applications/diffusion/editor/DiffusionCommitEditEngine.php
··· 1 + <?php 2 + 3 + final class DiffusionCommitEditEngine 4 + extends PhabricatorEditEngine { 5 + 6 + const ENGINECONST = 'diffusion.commit'; 7 + 8 + public function isEngineConfigurable() { 9 + return false; 10 + } 11 + 12 + public function getEngineName() { 13 + return pht('Commits'); 14 + } 15 + 16 + public function getSummaryHeader() { 17 + return pht('Edit Commits'); 18 + } 19 + 20 + public function getSummaryText() { 21 + return pht('Edit commits.'); 22 + } 23 + 24 + public function getEngineApplicationClass() { 25 + return 'PhabricatorDiffusionApplication'; 26 + } 27 + 28 + protected function newEditableObject() { 29 + throw new PhutilMethodNotImplementedException(); 30 + } 31 + 32 + protected function newObjectQuery() { 33 + return new DiffusionCommitQuery(); 34 + } 35 + 36 + protected function getObjectCreateTitleText($object) { 37 + return pht('Create Commit'); 38 + } 39 + 40 + protected function getObjectCreateShortText() { 41 + return pht('Create Commit'); 42 + } 43 + 44 + protected function getObjectEditTitleText($object) { 45 + return pht('Edit Commit: %s', $object->getDisplayName()); 46 + } 47 + 48 + protected function getObjectEditShortText($object) { 49 + return $object->getDisplayName(); 50 + } 51 + 52 + protected function getObjectName() { 53 + return pht('Commit'); 54 + } 55 + 56 + protected function getObjectViewURI($object) { 57 + return $object->getURI(); 58 + } 59 + 60 + protected function getCreateNewObjectPolicy() { 61 + return PhabricatorPolicies::POLICY_NOONE; 62 + } 63 + 64 + protected function buildCustomEditFields($object) { 65 + $viewer = $this->getViewer(); 66 + 67 + return array(); 68 + } 69 + 70 + }