diff --git a/src/applications/legalpad/controller/LegalpadDocumentCommentController.php b/src/applications/legalpad/controller/LegalpadDocumentCommentController.php --- a/src/applications/legalpad/controller/LegalpadDocumentCommentController.php +++ b/src/applications/legalpad/controller/LegalpadDocumentCommentController.php @@ -2,23 +2,17 @@ final class LegalpadDocumentCommentController extends LegalpadController { - private $id; - - public function willProcessRequest(array $data) { - $this->id = $data['id']; - } - - public function processRequest() { - $request = $this->getRequest(); - $user = $request->getUser(); + public function handleRequest(AphrontRequest $request) { + $viewer = $request->getViewer(); + $id = $request->getURIData('id'); if (!$request->isFormPost()) { return new Aphront400Response(); } $document = id(new LegalpadDocumentQuery()) - ->setViewer($user) - ->withIDs(array($this->id)) + ->setViewer($viewer) + ->withIDs(array($id)) ->needDocumentBodies(true) ->executeOne(); @@ -48,7 +42,7 @@ } $editor = id(new LegalpadDocumentEditor()) - ->setActor($user) + ->setActor($viewer) ->setContentSourceFromRequest($request) ->setContinueOnNoEffect($request->isContinueRequest()) ->setIsPreview($is_preview); @@ -67,7 +61,7 @@ if ($request->isAjax() && $is_preview) { return id(new PhabricatorApplicationTransactionResponse()) - ->setViewer($user) + ->setViewer($viewer) ->setTransactions($xactions) ->setIsPreview($is_preview); } else { diff --git a/src/applications/legalpad/controller/LegalpadDocumentDoneController.php b/src/applications/legalpad/controller/LegalpadDocumentDoneController.php --- a/src/applications/legalpad/controller/LegalpadDocumentDoneController.php +++ b/src/applications/legalpad/controller/LegalpadDocumentDoneController.php @@ -6,9 +6,8 @@ return true; } - public function processRequest() { - $request = $this->getRequest(); - $viewer = $request->getUser(); + public function handleRequest(AphrontRequest $request) { + $viewer = $request->getViewer(); return $this->newDialog() ->setTitle(pht('Verify Signature')) diff --git a/src/applications/legalpad/controller/LegalpadDocumentEditController.php b/src/applications/legalpad/controller/LegalpadDocumentEditController.php --- a/src/applications/legalpad/controller/LegalpadDocumentEditController.php +++ b/src/applications/legalpad/controller/LegalpadDocumentEditController.php @@ -3,25 +3,25 @@ final class LegalpadDocumentEditController extends LegalpadController { public function handleRequest(AphrontRequest $request) { - $user = $request->getUser(); - + $viewer = $request->getViewer(); $id = $request->getURIData('id'); + if (!$id) { $is_create = true; $this->requireApplicationCapability( LegalpadCreateDocumentsCapability::CAPABILITY); - $document = LegalpadDocument::initializeNewDocument($user); + $document = LegalpadDocument::initializeNewDocument($viewer); $body = id(new LegalpadDocumentBody()) - ->setCreatorPHID($user->getPHID()); + ->setCreatorPHID($viewer->getPHID()); $document->attachDocumentBody($body); $document->setDocumentBodyPHID(PhabricatorPHIDConstants::PHID_VOID); } else { $is_create = false; $document = id(new LegalpadDocumentQuery()) - ->setViewer($user) + ->setViewer($viewer) ->needDocumentBodies(true) ->requireCapabilities( array( @@ -94,7 +94,7 @@ $v_require_signature = $request->getBool('requireSignature', 0); if ($v_require_signature) { - if (!$user->getIsAdmin()) { + if (!$viewer->getIsAdmin()) { $errors[] = pht('Only admins may require signature.'); } $individual = LegalpadDocument::SIGNATURE_TYPE_INDIVIDUAL; @@ -104,7 +104,7 @@ 'signing to use Phabricator.'); } } - if ($user->getIsAdmin()) { + if ($viewer->getIsAdmin()) { $xactions[] = id(new LegalpadTransaction()) ->setTransactionType(LegalpadTransaction::TYPE_REQUIRE_SIGNATURE) ->setNewValue($v_require_signature); @@ -114,7 +114,7 @@ $editor = id(new LegalpadDocumentEditor()) ->setContentSourceFromRequest($request) ->setContinueOnNoEffect(true) - ->setActor($user); + ->setActor($viewer); $xactions = $editor->applyTransactions($document, $xactions); @@ -130,7 +130,7 @@ } $form = id(new AphrontFormView()) - ->setUser($user) + ->setUser($viewer) ->appendChild( id(new AphrontFormTextControl()) ->setID('document-title') @@ -162,7 +162,7 @@ $form ->appendChild( id(new AphrontFormCheckboxControl()) - ->setDisabled(!$user->getIsAdmin()) + ->setDisabled(!$viewer->getIsAdmin()) ->setLabel(pht('Require Signature')) ->addCheckbox( 'requireSignature', @@ -175,7 +175,7 @@ $form ->appendChild( id(new PhabricatorRemarkupControl()) - ->setUser($user) + ->setUser($viewer) ->setID('preamble') ->setLabel(pht('Preamble')) ->setValue($v_preamble) @@ -184,7 +184,7 @@ pht('Optional help text for users signing this document.'))) ->appendChild( id(new PhabricatorRemarkupControl()) - ->setUser($user) + ->setUser($viewer) ->setID('document-text') ->setLabel(pht('Document Body')) ->setError($e_text) @@ -193,21 +193,21 @@ ->setName('text')); $policies = id(new PhabricatorPolicyQuery()) - ->setViewer($user) + ->setViewer($viewer) ->setObject($document) ->execute(); $form ->appendChild( id(new AphrontFormPolicyControl()) - ->setUser($user) + ->setUser($viewer) ->setCapability(PhabricatorPolicyCapability::CAN_VIEW) ->setPolicyObject($document) ->setPolicies($policies) ->setName('can_view')) ->appendChild( id(new AphrontFormPolicyControl()) - ->setUser($user) + ->setUser($viewer) ->setCapability(PhabricatorPolicyCapability::CAN_EDIT) ->setPolicyObject($document) ->setPolicies($policies) diff --git a/src/applications/legalpad/controller/LegalpadDocumentListController.php b/src/applications/legalpad/controller/LegalpadDocumentListController.php --- a/src/applications/legalpad/controller/LegalpadDocumentListController.php +++ b/src/applications/legalpad/controller/LegalpadDocumentListController.php @@ -2,19 +2,15 @@ final class LegalpadDocumentListController extends LegalpadController { - private $queryKey; - public function shouldAllowPublic() { return true; } - public function willProcessRequest(array $data) { - $this->queryKey = idx($data, 'queryKey'); - } + public function handleRequest(AphrontRequest $request) { + $querykey = $request->getURIData('queryKey'); - public function processRequest() { $controller = id(new PhabricatorApplicationSearchController()) - ->setQueryKey($this->queryKey) + ->setQueryKey($querykey) ->setSearchEngine(new LegalpadDocumentSearchEngine()) ->setNavigation($this->buildSideNav()); diff --git a/src/applications/legalpad/controller/LegalpadDocumentManageController.php b/src/applications/legalpad/controller/LegalpadDocumentManageController.php --- a/src/applications/legalpad/controller/LegalpadDocumentManageController.php +++ b/src/applications/legalpad/controller/LegalpadDocumentManageController.php @@ -2,21 +2,15 @@ final class LegalpadDocumentManageController extends LegalpadController { - private $id; - - public function willProcessRequest(array $data) { - $this->id = $data['id']; - } - - public function processRequest() { - $request = $this->getRequest(); - $user = $request->getUser(); + public function handleRequest(AphrontRequest $request) { + $viewer = $request->getViewer(); + $id = $request->getURIData('id'); // NOTE: We require CAN_EDIT to view this page. $document = id(new LegalpadDocumentQuery()) - ->setViewer($user) - ->withIDs(array($this->id)) + ->setViewer($viewer) + ->withIDs(array($id)) ->needDocumentBodies(true) ->needContributors(true) ->requireCapabilities( @@ -35,7 +29,7 @@ $document_body = $document->getDocumentBody(); $engine = id(new PhabricatorMarkupEngine()) - ->setViewer($user); + ->setViewer($viewer); $engine->addObject( $document_body, LegalpadDocumentBody::MARKUP_FIELD_TEXT); @@ -48,7 +42,7 @@ $header = id(new PHUIHeaderView()) ->setHeader($title) - ->setUser($user) + ->setUser($viewer) ->setPolicyObject($document); $actions = $this->buildActionView($document); @@ -99,15 +93,15 @@ } private function buildActionView(LegalpadDocument $document) { - $user = $this->getRequest()->getUser(); + $viewer = $this->getViewer(); $actions = id(new PhabricatorActionListView()) - ->setUser($user) + ->setUser($viewer) ->setObjectURI($this->getRequest()->getRequestURI()) ->setObject($document); $can_edit = PhabricatorPolicyFilter::hasCapability( - $user, + $viewer, $document, PhabricatorPolicyCapability::CAN_EDIT); @@ -141,10 +135,10 @@ PhabricatorMarkupEngine $engine, PhabricatorActionListView $actions) { - $user = $this->getRequest()->getUser(); + $viewer = $this->getViewer(); $properties = id(new PHUIPropertyListView()) - ->setUser($user) + ->setUser($viewer) ->setObject($document) ->setActionList($actions); @@ -154,11 +148,11 @@ $properties->addProperty( pht('Last Updated'), - phabricator_datetime($document->getDateModified(), $user)); + phabricator_datetime($document->getDateModified(), $viewer)); $properties->addProperty( pht('Updated By'), - $user->renderHandle($document->getDocumentBody()->getCreatorPHID())); + $viewer->renderHandle($document->getDocumentBody()->getCreatorPHID())); $properties->addProperty( pht('Versions'), @@ -167,7 +161,7 @@ if ($document->getContributors()) { $properties->addProperty( pht('Contributors'), - $user + $viewer ->renderHandleList($document->getContributors()) ->setAsInline(true)); } @@ -180,9 +174,9 @@ private function buildAddCommentView( LegalpadDocument $document, $comment_form_id) { - $user = $this->getRequest()->getUser(); + $viewer = $this->getViewer(); - $draft = PhabricatorDraft::newFromUserAndKey($user, $document->getPHID()); + $draft = PhabricatorDraft::newFromUserAndKey($viewer, $document->getPHID()); $is_serious = PhabricatorEnv::getEnvConfig('phabricator.serious-business'); @@ -191,7 +185,7 @@ : pht('Debate Legislation'); $form = id(new PhabricatorApplicationTransactionCommentView()) - ->setUser($user) + ->setUser($viewer) ->setObjectPHID($document->getPHID()) ->setFormID($comment_form_id) ->setHeaderText($title) diff --git a/src/applications/legalpad/controller/LegalpadDocumentSignatureListController.php b/src/applications/legalpad/controller/LegalpadDocumentSignatureListController.php --- a/src/applications/legalpad/controller/LegalpadDocumentSignatureListController.php +++ b/src/applications/legalpad/controller/LegalpadDocumentSignatureListController.php @@ -2,23 +2,17 @@ final class LegalpadDocumentSignatureListController extends LegalpadController { - private $documentID; - private $queryKey; private $document; - public function willProcessRequest(array $data) { - $this->documentID = idx($data, 'id'); - $this->queryKey = idx($data, 'queryKey'); - } - - public function processRequest() { - $request = $this->getRequest(); - $user = $request->getUser(); + public function handleRequest(AphrontRequest $request) { + $viewer = $request->getViewer(); + $id = $request->getURIData('id'); + $querykey = $request->getURIData('queryKey'); - if ($this->documentID) { + if ($id) { $document = id(new LegalpadDocumentQuery()) - ->setViewer($user) - ->withIDs(array($this->documentID)) + ->setViewer($viewer) + ->withIDs(array($id)) ->requireCapabilities( array( PhabricatorPolicyCapability::CAN_VIEW, @@ -39,7 +33,7 @@ } $controller = id(new PhabricatorApplicationSearchController()) - ->setQueryKey($this->queryKey) + ->setQueryKey($querykey) ->setSearchEngine($engine) ->setNavigation($this->buildSideNav()); @@ -47,13 +41,13 @@ } public function buildSideNav($for_app = false) { - $user = $this->getRequest()->getUser(); + $viewer = $this->getViewer(); $nav = new AphrontSideNavFilterView(); $nav->setBaseURI(new PhutilURI($this->getApplicationURI())); $engine = id(new LegalpadDocumentSignatureSearchEngine()) - ->setViewer($user); + ->setViewer($viewer); if ($this->document) { $engine->setDocument($this->document); diff --git a/src/applications/legalpad/controller/LegalpadDocumentSignatureVerificationController.php b/src/applications/legalpad/controller/LegalpadDocumentSignatureVerificationController.php --- a/src/applications/legalpad/controller/LegalpadDocumentSignatureVerificationController.php +++ b/src/applications/legalpad/controller/LegalpadDocumentSignatureVerificationController.php @@ -3,25 +3,19 @@ final class LegalpadDocumentSignatureVerificationController extends LegalpadController { - private $code; - public function shouldAllowPublic() { return true; } - public function willProcessRequest(array $data) { - $this->code = $data['code']; - } - - public function processRequest() { - $request = $this->getRequest(); - $viewer = $request->getUser(); + public function handleRequest(AphrontRequest $request) { + $viewer = $request->getViewer(); + $code = $request->getURIData('code'); // NOTE: We're using the omnipotent user to handle logged-out signatures // and corporate signatures. $signature = id(new LegalpadDocumentSignatureQuery()) ->setViewer(PhabricatorUser::getOmnipotentUser()) - ->withSecretKeys(array($this->code)) + ->withSecretKeys(array($code)) ->executeOne(); if (!$signature) { diff --git a/src/applications/legalpad/controller/LegalpadDocumentSignatureViewController.php b/src/applications/legalpad/controller/LegalpadDocumentSignatureViewController.php --- a/src/applications/legalpad/controller/LegalpadDocumentSignatureViewController.php +++ b/src/applications/legalpad/controller/LegalpadDocumentSignatureViewController.php @@ -2,19 +2,13 @@ final class LegalpadDocumentSignatureViewController extends LegalpadController { - private $id; - - public function willProcessRequest(array $data) { - $this->id = $data['id']; - } - - public function processRequest() { - $request = $this->getRequest(); - $viewer = $request->getUser(); + public function handleRequest(AphrontRequest $request) { + $viewer = $request->getViewer(); + $id = $request->getURIData('id'); $signature = id(new LegalpadDocumentSignatureQuery()) ->setViewer($viewer) - ->withIDs(array($this->id)) + ->withIDs(array($id)) ->executeOne(); if (!$signature) { return new Aphront404Response();