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

Update Files for handleRequest

Summary: Update Files application

Test Plan: Upload a file, edit a file, view details, transforms, delete file

Reviewers: epriestley

Reviewed By: epriestley

Subscribers: epriestley, Korvin

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

+50 -83
+7 -13
src/applications/files/controller/PhabricatorFileCommentController.php
··· 2 2 3 3 final class PhabricatorFileCommentController extends PhabricatorFileController { 4 4 5 - private $id; 6 - 7 - public function willProcessRequest(array $data) { 8 - $this->id = idx($data, 'id'); 9 - } 10 - 11 - public function processRequest() { 12 - $request = $this->getRequest(); 13 - $user = $request->getUser(); 5 + public function handleRequest(AphrontRequest $request) { 6 + $viewer = $request->getViewer(); 7 + $id = $request->getURIData('id'); 14 8 15 9 if (!$request->isFormPost()) { 16 10 return new Aphront400Response(); 17 11 } 18 12 19 13 $file = id(new PhabricatorFileQuery()) 20 - ->setViewer($user) 21 - ->withIDs(array($this->id)) 14 + ->setViewer($viewer) 15 + ->withIDs(array($id)) 22 16 ->executeOne(); 23 17 if (!$file) { 24 18 return new Aphront404Response(); ··· 37 31 ->setContent($request->getStr('comment'))); 38 32 39 33 $editor = id(new PhabricatorFileEditor()) 40 - ->setActor($user) 34 + ->setActor($viewer) 41 35 ->setContinueOnNoEffect($request->isContinueRequest()) 42 36 ->setContentSourceFromRequest($request) 43 37 ->setIsPreview($is_preview); ··· 56 50 57 51 if ($request->isAjax() && $is_preview) { 58 52 return id(new PhabricatorApplicationTransactionResponse()) 59 - ->setViewer($user) 53 + ->setViewer($viewer) 60 54 ->setTransactions($xactions) 61 55 ->setIsPreview($is_preview); 62 56 } else {
+2 -3
src/applications/files/controller/PhabricatorFileComposeController.php
··· 3 3 final class PhabricatorFileComposeController 4 4 extends PhabricatorFileController { 5 5 6 - public function processRequest() { 7 - $request = $this->getRequest(); 8 - $viewer = $request->getUser(); 6 + public function handleRequest(AphrontRequest $request) { 7 + $viewer = $request->getViewer(); 9 8 10 9 $colors = array( 11 10 'red' => pht('Verbillion'),
+5 -9
src/applications/files/controller/PhabricatorFileDataController.php
··· 7 7 private $token; 8 8 private $file; 9 9 10 - public function willProcessRequest(array $data) { 11 - $this->phid = $data['phid']; 12 - $this->key = $data['key']; 13 - $this->token = idx($data, 'token'); 14 - } 15 - 16 10 public function shouldRequireLogin() { 17 11 return false; 18 12 } 19 13 20 - public function processRequest() { 21 - $request = $this->getRequest(); 22 - $viewer = $this->getViewer(); 14 + public function handleRequest(AphrontRequest $request) { 15 + $viewer = $request->getViewer(); 16 + $this->phid = $request->getURIData('phid'); 17 + $this->key = $request->getURIData('key'); 18 + $this->token = $request->getURIData('token'); 23 19 24 20 $alt = PhabricatorEnv::getEnvConfig('security.alternate-file-domain'); 25 21 $base_uri = PhabricatorEnv::getEnvConfig('phabricator.base-uri');
+8 -14
src/applications/files/controller/PhabricatorFileDeleteController.php
··· 2 2 3 3 final class PhabricatorFileDeleteController extends PhabricatorFileController { 4 4 5 - private $id; 6 - 7 - public function willProcessRequest(array $data) { 8 - $this->id = $data['id']; 9 - } 10 - 11 - public function processRequest() { 12 - $request = $this->getRequest(); 13 - $user = $request->getUser(); 5 + public function handleRequest(AphrontRequest $request) { 6 + $viewer = $request->getViewer(); 7 + $id = $request->getURIData('id'); 14 8 15 9 $file = id(new PhabricatorFileQuery()) 16 - ->setViewer($user) 17 - ->withIDs(array($this->id)) 10 + ->setViewer($viewer) 11 + ->withIDs(array($id)) 18 12 ->requireCapabilities( 19 13 array( 20 14 PhabricatorPolicyCapability::CAN_VIEW, ··· 25 19 return new Aphront404Response(); 26 20 } 27 21 28 - if (($user->getPHID() != $file->getAuthorPHID()) && 29 - (!$user->getIsAdmin())) { 22 + if (($viewer->getPHID() != $file->getAuthorPHID()) && 23 + (!$viewer->getIsAdmin())) { 30 24 return new Aphront403Response(); 31 25 } 32 26 ··· 36 30 } 37 31 38 32 $dialog = new AphrontDialogView(); 39 - $dialog->setUser($user); 33 + $dialog->setUser($viewer); 40 34 $dialog->setTitle(pht('Really delete file?')); 41 35 $dialog->appendChild(hsprintf( 42 36 '<p>%s</p>',
+2 -3
src/applications/files/controller/PhabricatorFileDropUploadController.php
··· 6 6 /** 7 7 * @phutil-external-symbol class PhabricatorStartup 8 8 */ 9 - public function processRequest() { 10 - $request = $this->getRequest(); 11 - $viewer = $request->getUser(); 9 + public function handleRequest(AphrontRequest $request) { 10 + $viewer = $request->getViewer(); 12 11 13 12 // NOTE: Throws if valid CSRF token is not present in the request. 14 13 $request->validateCSRF();
+4 -10
src/applications/files/controller/PhabricatorFileEditController.php
··· 2 2 3 3 final class PhabricatorFileEditController extends PhabricatorFileController { 4 4 5 - private $id; 6 - 7 - public function willProcessRequest(array $data) { 8 - $this->id = $data['id']; 9 - } 10 - 11 - public function processRequest() { 12 - $request = $this->getRequest(); 13 - $viewer = $request->getUser(); 5 + public function handleRequest(AphrontRequest $request) { 6 + $viewer = $request->getViewer(); 7 + $id = $request->getURIData('id'); 14 8 15 9 $file = id(new PhabricatorFileQuery()) 16 10 ->setViewer($viewer) 17 - ->withIDs(array($this->id)) 11 + ->withIDs(array($id)) 18 12 ->requireCapabilities( 19 13 array( 20 14 PhabricatorPolicyCapability::CAN_VIEW,
+19 -27
src/applications/files/controller/PhabricatorFileInfoController.php
··· 2 2 3 3 final class PhabricatorFileInfoController extends PhabricatorFileController { 4 4 5 - private $phid; 6 - private $id; 7 - 8 5 public function shouldAllowPublic() { 9 6 return true; 10 7 } 11 8 12 - public function willProcessRequest(array $data) { 13 - $this->phid = idx($data, 'phid'); 14 - $this->id = idx($data, 'id'); 15 - } 9 + public function handleRequest(AphrontRequest $request) { 10 + $viewer = $request->getViewer(); 11 + $id = $request->getURIData('id'); 12 + $phid = $request->getURIData('phid'); 16 13 17 - public function processRequest() { 18 - $request = $this->getRequest(); 19 - $user = $request->getUser(); 20 - 21 - if ($this->phid) { 14 + if ($phid) { 22 15 $file = id(new PhabricatorFileQuery()) 23 - ->setViewer($user) 24 - ->withPHIDs(array($this->phid)) 16 + ->setViewer($viewer) 17 + ->withPHIDs(array($phid)) 25 18 ->executeOne(); 26 19 27 20 if (!$file) { ··· 30 23 return id(new AphrontRedirectResponse())->setURI($file->getInfoURI()); 31 24 } 32 25 $file = id(new PhabricatorFileQuery()) 33 - ->setViewer($user) 34 - ->withIDs(array($this->id)) 26 + ->setViewer($viewer) 27 + ->withIDs(array($id)) 35 28 ->executeOne(); 36 29 if (!$file) { 37 30 return new Aphront404Response(); ··· 40 33 $phid = $file->getPHID(); 41 34 42 35 $header = id(new PHUIHeaderView()) 43 - ->setUser($user) 36 + ->setUser($viewer) 44 37 ->setPolicyObject($file) 45 38 ->setHeader($file->getName()); 46 39 ··· 87 80 } 88 81 89 82 private function buildTransactionView(PhabricatorFile $file) { 90 - $user = $this->getRequest()->getUser(); 83 + $viewer = $this->getViewer(); 91 84 92 85 $timeline = $this->buildTransactionTimeline( 93 86 $file, ··· 99 92 ? pht('Add Comment') 100 93 : pht('Question File Integrity'); 101 94 102 - $draft = PhabricatorDraft::newFromUserAndKey($user, $file->getPHID()); 95 + $draft = PhabricatorDraft::newFromUserAndKey($viewer, $file->getPHID()); 103 96 104 97 $add_comment_form = id(new PhabricatorApplicationTransactionCommentView()) 105 - ->setUser($user) 98 + ->setUser($viewer) 106 99 ->setObjectPHID($file->getPHID()) 107 100 ->setDraft($draft) 108 101 ->setHeaderText($add_comment_header) ··· 116 109 } 117 110 118 111 private function buildActionView(PhabricatorFile $file) { 119 - $request = $this->getRequest(); 120 - $viewer = $request->getUser(); 112 + $viewer = $this->getViewer(); 121 113 122 114 $id = $file->getID(); 123 115 ··· 184 176 PhabricatorFile $file, 185 177 PhabricatorActionListView $actions) { 186 178 $request = $this->getRequest(); 187 - $user = $request->getUser(); 179 + $viewer = $request->getUser(); 188 180 189 181 $properties = id(new PHUIPropertyListView()); 190 182 $properties->setActionList($actions); ··· 193 185 if ($file->getAuthorPHID()) { 194 186 $properties->addProperty( 195 187 pht('Author'), 196 - $user->renderHandle($file->getAuthorPHID())); 188 + $viewer->renderHandle($file->getAuthorPHID())); 197 189 } 198 190 199 191 $properties->addProperty( 200 192 pht('Created'), 201 - phabricator_datetime($file->getDateCreated(), $user)); 193 + phabricator_datetime($file->getDateCreated(), $viewer)); 202 194 203 195 204 196 $finfo = id(new PHUIPropertyListView()); ··· 276 268 277 269 $attached->addProperty( 278 270 pht('Attached To'), 279 - $user->renderHandleList($phids)); 271 + $viewer->renderHandleList($phids)); 280 272 } 281 273 282 274 if ($file->isViewableImage()) { ··· 330 322 $box->addPropertyList($chunkinfo, pht('Chunks')); 331 323 332 324 $chunks = id(new PhabricatorFileChunkQuery()) 333 - ->setViewer($user) 325 + ->setViewer($viewer) 334 326 ->withChunkHandles(array($file->getStorageHandle())) 335 327 ->execute(); 336 328 $chunks = msort($chunks, 'getByteStart');
+3 -4
src/applications/files/controller/PhabricatorFileUploadDialogController.php
··· 3 3 final class PhabricatorFileUploadDialogController 4 4 extends PhabricatorFileController { 5 5 6 - public function processRequest() { 7 - $request = $this->getRequest(); 8 - $user = $request->getUser(); 6 + public function handleRequest(AphrontRequest $request) { 7 + $viewer = $request->getViewer(); 9 8 10 9 $dialog = id(new AphrontDialogView()) 11 - ->setUser($user) 10 + ->setUser($viewer) 12 11 ->setTitle(pht('Upload File')) 13 12 ->appendChild(pht( 14 13 'To add files, drag and drop them into the comment text area.'))