@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
at upstream/main 48 lines 1.3 kB view raw
1<?php 2 3final class PhabricatorProjectViewController 4 extends PhabricatorProjectController { 5 6 public function shouldAllowPublic() { 7 return true; 8 } 9 10 public function handleRequest(AphrontRequest $request) { 11 $request = $this->getRequest(); 12 $viewer = $request->getViewer(); 13 14 $response = $this->loadProject(); 15 if ($response) { 16 return $response; 17 } 18 $project = $this->getProject(); 19 20 $engine = $this->getProfileMenuEngine(); 21 $default = $engine->getDefaultMenuItemConfiguration(); 22 23 // If defaults are broken somehow, serve the manage page. See T13033 for 24 // discussion. 25 if ($default) { 26 $default_key = $default->getBuiltinKey(); 27 } else { 28 $default_key = PhabricatorProject::ITEM_MANAGE; 29 } 30 31 switch ($default_key) { 32 case PhabricatorProject::ITEM_WORKBOARD: 33 $controller_object = new PhabricatorProjectBoardViewController(); 34 break; 35 case PhabricatorProject::ITEM_PROFILE: 36 $controller_object = new PhabricatorProjectProfileController(); 37 break; 38 case PhabricatorProject::ITEM_MANAGE: 39 $controller_object = new PhabricatorProjectManageController(); 40 break; 41 default: 42 return $engine->buildResponse(); 43 } 44 45 return $this->delegateToController($controller_object); 46 } 47 48}