@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 Legalpad for handleRequest

Summary: Updates Legalpad for handleRequest instead of processRequest

Test Plan: New Document, Sign Document, Add exemption, view signatures.

Reviewers: epriestley

Reviewed By: epriestley

Subscribers: epriestley, Korvin

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

+63 -98
+7 -13
src/applications/legalpad/controller/LegalpadDocumentCommentController.php
··· 2 2 3 3 final class LegalpadDocumentCommentController extends LegalpadController { 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 if (!$request->isFormPost()) { 16 10 return new Aphront400Response(); 17 11 } 18 12 19 13 $document = id(new LegalpadDocumentQuery()) 20 - ->setViewer($user) 21 - ->withIDs(array($this->id)) 14 + ->setViewer($viewer) 15 + ->withIDs(array($id)) 22 16 ->needDocumentBodies(true) 23 17 ->executeOne(); 24 18 ··· 48 42 } 49 43 50 44 $editor = id(new LegalpadDocumentEditor()) 51 - ->setActor($user) 45 + ->setActor($viewer) 52 46 ->setContentSourceFromRequest($request) 53 47 ->setContinueOnNoEffect($request->isContinueRequest()) 54 48 ->setIsPreview($is_preview); ··· 67 61 68 62 if ($request->isAjax() && $is_preview) { 69 63 return id(new PhabricatorApplicationTransactionResponse()) 70 - ->setViewer($user) 64 + ->setViewer($viewer) 71 65 ->setTransactions($xactions) 72 66 ->setIsPreview($is_preview); 73 67 } else {
+2 -3
src/applications/legalpad/controller/LegalpadDocumentDoneController.php
··· 6 6 return true; 7 7 } 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 return $this->newDialog() 14 13 ->setTitle(pht('Verify Signature'))
+15 -15
src/applications/legalpad/controller/LegalpadDocumentEditController.php
··· 3 3 final class LegalpadDocumentEditController extends LegalpadController { 4 4 5 5 public function handleRequest(AphrontRequest $request) { 6 - $user = $request->getUser(); 7 - 6 + $viewer = $request->getViewer(); 8 7 $id = $request->getURIData('id'); 8 + 9 9 if (!$id) { 10 10 $is_create = true; 11 11 12 12 $this->requireApplicationCapability( 13 13 LegalpadCreateDocumentsCapability::CAPABILITY); 14 14 15 - $document = LegalpadDocument::initializeNewDocument($user); 15 + $document = LegalpadDocument::initializeNewDocument($viewer); 16 16 $body = id(new LegalpadDocumentBody()) 17 - ->setCreatorPHID($user->getPHID()); 17 + ->setCreatorPHID($viewer->getPHID()); 18 18 $document->attachDocumentBody($body); 19 19 $document->setDocumentBodyPHID(PhabricatorPHIDConstants::PHID_VOID); 20 20 } else { 21 21 $is_create = false; 22 22 23 23 $document = id(new LegalpadDocumentQuery()) 24 - ->setViewer($user) 24 + ->setViewer($viewer) 25 25 ->needDocumentBodies(true) 26 26 ->requireCapabilities( 27 27 array( ··· 94 94 95 95 $v_require_signature = $request->getBool('requireSignature', 0); 96 96 if ($v_require_signature) { 97 - if (!$user->getIsAdmin()) { 97 + if (!$viewer->getIsAdmin()) { 98 98 $errors[] = pht('Only admins may require signature.'); 99 99 } 100 100 $individual = LegalpadDocument::SIGNATURE_TYPE_INDIVIDUAL; ··· 104 104 'signing to use Phabricator.'); 105 105 } 106 106 } 107 - if ($user->getIsAdmin()) { 107 + if ($viewer->getIsAdmin()) { 108 108 $xactions[] = id(new LegalpadTransaction()) 109 109 ->setTransactionType(LegalpadTransaction::TYPE_REQUIRE_SIGNATURE) 110 110 ->setNewValue($v_require_signature); ··· 114 114 $editor = id(new LegalpadDocumentEditor()) 115 115 ->setContentSourceFromRequest($request) 116 116 ->setContinueOnNoEffect(true) 117 - ->setActor($user); 117 + ->setActor($viewer); 118 118 119 119 $xactions = $editor->applyTransactions($document, $xactions); 120 120 ··· 130 130 } 131 131 132 132 $form = id(new AphrontFormView()) 133 - ->setUser($user) 133 + ->setUser($viewer) 134 134 ->appendChild( 135 135 id(new AphrontFormTextControl()) 136 136 ->setID('document-title') ··· 162 162 $form 163 163 ->appendChild( 164 164 id(new AphrontFormCheckboxControl()) 165 - ->setDisabled(!$user->getIsAdmin()) 165 + ->setDisabled(!$viewer->getIsAdmin()) 166 166 ->setLabel(pht('Require Signature')) 167 167 ->addCheckbox( 168 168 'requireSignature', ··· 175 175 $form 176 176 ->appendChild( 177 177 id(new PhabricatorRemarkupControl()) 178 - ->setUser($user) 178 + ->setUser($viewer) 179 179 ->setID('preamble') 180 180 ->setLabel(pht('Preamble')) 181 181 ->setValue($v_preamble) ··· 184 184 pht('Optional help text for users signing this document.'))) 185 185 ->appendChild( 186 186 id(new PhabricatorRemarkupControl()) 187 - ->setUser($user) 187 + ->setUser($viewer) 188 188 ->setID('document-text') 189 189 ->setLabel(pht('Document Body')) 190 190 ->setError($e_text) ··· 193 193 ->setName('text')); 194 194 195 195 $policies = id(new PhabricatorPolicyQuery()) 196 - ->setViewer($user) 196 + ->setViewer($viewer) 197 197 ->setObject($document) 198 198 ->execute(); 199 199 200 200 $form 201 201 ->appendChild( 202 202 id(new AphrontFormPolicyControl()) 203 - ->setUser($user) 203 + ->setUser($viewer) 204 204 ->setCapability(PhabricatorPolicyCapability::CAN_VIEW) 205 205 ->setPolicyObject($document) 206 206 ->setPolicies($policies) 207 207 ->setName('can_view')) 208 208 ->appendChild( 209 209 id(new AphrontFormPolicyControl()) 210 - ->setUser($user) 210 + ->setUser($viewer) 211 211 ->setCapability(PhabricatorPolicyCapability::CAN_EDIT) 212 212 ->setPolicyObject($document) 213 213 ->setPolicies($policies)
+3 -7
src/applications/legalpad/controller/LegalpadDocumentListController.php
··· 2 2 3 3 final class LegalpadDocumentListController extends LegalpadController { 4 4 5 - private $queryKey; 6 - 7 5 public function shouldAllowPublic() { 8 6 return true; 9 7 } 10 8 11 - public function willProcessRequest(array $data) { 12 - $this->queryKey = idx($data, 'queryKey'); 13 - } 9 + public function handleRequest(AphrontRequest $request) { 10 + $querykey = $request->getURIData('queryKey'); 14 11 15 - public function processRequest() { 16 12 $controller = id(new PhabricatorApplicationSearchController()) 17 - ->setQueryKey($this->queryKey) 13 + ->setQueryKey($querykey) 18 14 ->setSearchEngine(new LegalpadDocumentSearchEngine()) 19 15 ->setNavigation($this->buildSideNav()); 20 16
+18 -24
src/applications/legalpad/controller/LegalpadDocumentManageController.php
··· 2 2 3 3 final class LegalpadDocumentManageController extends LegalpadController { 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 // NOTE: We require CAN_EDIT to view this page. 16 10 17 11 $document = id(new LegalpadDocumentQuery()) 18 - ->setViewer($user) 19 - ->withIDs(array($this->id)) 12 + ->setViewer($viewer) 13 + ->withIDs(array($id)) 20 14 ->needDocumentBodies(true) 21 15 ->needContributors(true) 22 16 ->requireCapabilities( ··· 35 29 $document_body = $document->getDocumentBody(); 36 30 37 31 $engine = id(new PhabricatorMarkupEngine()) 38 - ->setViewer($user); 32 + ->setViewer($viewer); 39 33 $engine->addObject( 40 34 $document_body, 41 35 LegalpadDocumentBody::MARKUP_FIELD_TEXT); ··· 48 42 49 43 $header = id(new PHUIHeaderView()) 50 44 ->setHeader($title) 51 - ->setUser($user) 45 + ->setUser($viewer) 52 46 ->setPolicyObject($document); 53 47 54 48 $actions = $this->buildActionView($document); ··· 99 93 } 100 94 101 95 private function buildActionView(LegalpadDocument $document) { 102 - $user = $this->getRequest()->getUser(); 96 + $viewer = $this->getViewer(); 103 97 104 98 $actions = id(new PhabricatorActionListView()) 105 - ->setUser($user) 99 + ->setUser($viewer) 106 100 ->setObjectURI($this->getRequest()->getRequestURI()) 107 101 ->setObject($document); 108 102 109 103 $can_edit = PhabricatorPolicyFilter::hasCapability( 110 - $user, 104 + $viewer, 111 105 $document, 112 106 PhabricatorPolicyCapability::CAN_EDIT); 113 107 ··· 141 135 PhabricatorMarkupEngine $engine, 142 136 PhabricatorActionListView $actions) { 143 137 144 - $user = $this->getRequest()->getUser(); 138 + $viewer = $this->getViewer(); 145 139 146 140 $properties = id(new PHUIPropertyListView()) 147 - ->setUser($user) 141 + ->setUser($viewer) 148 142 ->setObject($document) 149 143 ->setActionList($actions); 150 144 ··· 154 148 155 149 $properties->addProperty( 156 150 pht('Last Updated'), 157 - phabricator_datetime($document->getDateModified(), $user)); 151 + phabricator_datetime($document->getDateModified(), $viewer)); 158 152 159 153 $properties->addProperty( 160 154 pht('Updated By'), 161 - $user->renderHandle($document->getDocumentBody()->getCreatorPHID())); 155 + $viewer->renderHandle($document->getDocumentBody()->getCreatorPHID())); 162 156 163 157 $properties->addProperty( 164 158 pht('Versions'), ··· 167 161 if ($document->getContributors()) { 168 162 $properties->addProperty( 169 163 pht('Contributors'), 170 - $user 164 + $viewer 171 165 ->renderHandleList($document->getContributors()) 172 166 ->setAsInline(true)); 173 167 } ··· 180 174 private function buildAddCommentView( 181 175 LegalpadDocument $document, 182 176 $comment_form_id) { 183 - $user = $this->getRequest()->getUser(); 177 + $viewer = $this->getViewer(); 184 178 185 - $draft = PhabricatorDraft::newFromUserAndKey($user, $document->getPHID()); 179 + $draft = PhabricatorDraft::newFromUserAndKey($viewer, $document->getPHID()); 186 180 187 181 $is_serious = PhabricatorEnv::getEnvConfig('phabricator.serious-business'); 188 182 ··· 191 185 : pht('Debate Legislation'); 192 186 193 187 $form = id(new PhabricatorApplicationTransactionCommentView()) 194 - ->setUser($user) 188 + ->setUser($viewer) 195 189 ->setObjectPHID($document->getPHID()) 196 190 ->setFormID($comment_form_id) 197 191 ->setHeaderText($title)
+10 -16
src/applications/legalpad/controller/LegalpadDocumentSignatureListController.php
··· 2 2 3 3 final class LegalpadDocumentSignatureListController extends LegalpadController { 4 4 5 - private $documentID; 6 - private $queryKey; 7 5 private $document; 8 6 9 - public function willProcessRequest(array $data) { 10 - $this->documentID = idx($data, 'id'); 11 - $this->queryKey = idx($data, 'queryKey'); 12 - } 13 - 14 - public function processRequest() { 15 - $request = $this->getRequest(); 16 - $user = $request->getUser(); 7 + public function handleRequest(AphrontRequest $request) { 8 + $viewer = $request->getViewer(); 9 + $id = $request->getURIData('id'); 10 + $querykey = $request->getURIData('queryKey'); 17 11 18 - if ($this->documentID) { 12 + if ($id) { 19 13 $document = id(new LegalpadDocumentQuery()) 20 - ->setViewer($user) 21 - ->withIDs(array($this->documentID)) 14 + ->setViewer($viewer) 15 + ->withIDs(array($id)) 22 16 ->requireCapabilities( 23 17 array( 24 18 PhabricatorPolicyCapability::CAN_VIEW, ··· 39 33 } 40 34 41 35 $controller = id(new PhabricatorApplicationSearchController()) 42 - ->setQueryKey($this->queryKey) 36 + ->setQueryKey($querykey) 43 37 ->setSearchEngine($engine) 44 38 ->setNavigation($this->buildSideNav()); 45 39 ··· 47 41 } 48 42 49 43 public function buildSideNav($for_app = false) { 50 - $user = $this->getRequest()->getUser(); 44 + $viewer = $this->getViewer(); 51 45 52 46 $nav = new AphrontSideNavFilterView(); 53 47 $nav->setBaseURI(new PhutilURI($this->getApplicationURI())); 54 48 55 49 $engine = id(new LegalpadDocumentSignatureSearchEngine()) 56 - ->setViewer($user); 50 + ->setViewer($viewer); 57 51 58 52 if ($this->document) { 59 53 $engine->setDocument($this->document);
+4 -10
src/applications/legalpad/controller/LegalpadDocumentSignatureVerificationController.php
··· 3 3 final class LegalpadDocumentSignatureVerificationController 4 4 extends LegalpadController { 5 5 6 - private $code; 7 - 8 6 public function shouldAllowPublic() { 9 7 return true; 10 8 } 11 9 12 - public function willProcessRequest(array $data) { 13 - $this->code = $data['code']; 14 - } 15 - 16 - public function processRequest() { 17 - $request = $this->getRequest(); 18 - $viewer = $request->getUser(); 10 + public function handleRequest(AphrontRequest $request) { 11 + $viewer = $request->getViewer(); 12 + $code = $request->getURIData('code'); 19 13 20 14 // NOTE: We're using the omnipotent user to handle logged-out signatures 21 15 // and corporate signatures. 22 16 $signature = id(new LegalpadDocumentSignatureQuery()) 23 17 ->setViewer(PhabricatorUser::getOmnipotentUser()) 24 - ->withSecretKeys(array($this->code)) 18 + ->withSecretKeys(array($code)) 25 19 ->executeOne(); 26 20 27 21 if (!$signature) {
+4 -10
src/applications/legalpad/controller/LegalpadDocumentSignatureViewController.php
··· 2 2 3 3 final class LegalpadDocumentSignatureViewController extends LegalpadController { 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 $signature = id(new LegalpadDocumentSignatureQuery()) 16 10 ->setViewer($viewer) 17 - ->withIDs(array($this->id)) 11 + ->withIDs(array($id)) 18 12 ->executeOne(); 19 13 if (!$signature) { 20 14 return new Aphront404Response();