Page Menu
Home
Phabricator
Search
Configure Global Search
Log In
Files
F76030
D7406.diff
All Users
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
8 KB
Referenced Files
None
Subscribers
None
D7406.diff
View Options
diff --git a/src/applications/diffusion/controller/DiffusionRepositoryCreateController.php b/src/applications/diffusion/controller/DiffusionRepositoryCreateController.php
--- a/src/applications/diffusion/controller/DiffusionRepositoryCreateController.php
+++ b/src/applications/diffusion/controller/DiffusionRepositoryCreateController.php
@@ -22,15 +22,10 @@
$repository = $this->getDiffusionRequest()->getRepository();
// Make sure we have CAN_EDIT.
- id(new PhabricatorRepositoryQuery())
- ->setViewer($viewer)
- ->withIDs(array($repository->getID()))
- ->requireCapabilities(
- array(
- PhabricatorPolicyCapability::CAN_VIEW,
- PhabricatorPolicyCapability::CAN_EDIT,
- ))
- ->executeOne();
+ PhabricatorPolicyFilter::requireCapability(
+ $viewer,
+ $repository,
+ PhabricatorPolicyCapability::CAN_EDIT);
$this->setRepository($repository);
diff --git a/src/applications/diffusion/controller/DiffusionRepositoryEditController.php b/src/applications/diffusion/controller/DiffusionRepositoryEditController.php
--- a/src/applications/diffusion/controller/DiffusionRepositoryEditController.php
+++ b/src/applications/diffusion/controller/DiffusionRepositoryEditController.php
@@ -4,10 +4,15 @@
public function processRequest() {
$request = $this->getRequest();
- $user = $request->getUser();
+ $viewer = $request->getUser();
$drequest = $this->diffusionRequest;
$repository = $drequest->getRepository();
+ PhabricatorPolicyFilter::requireCapability(
+ $viewer,
+ $repository,
+ PhabricatorPolicyCapability::CAN_EDIT);
+
$is_svn = false;
$is_git = false;
$is_hg = false;
@@ -77,12 +82,12 @@
$this->buildActionsActions($repository));
$xactions = id(new PhabricatorRepositoryTransactionQuery())
- ->setViewer($user)
+ ->setViewer($viewer)
->withObjectPHIDs(array($repository->getPHID()))
->execute();
$engine = id(new PhabricatorMarkupEngine())
- ->setViewer($user);
+ ->setViewer($viewer);
foreach ($xactions as $xaction) {
if ($xaction->getComment()) {
$engine->addObject(
@@ -93,7 +98,7 @@
$engine->process();
$xaction_view = id(new PhabricatorApplicationTransactionView())
- ->setUser($user)
+ ->setUser($viewer)
->setObjectPHID($repository->getPHID())
->setTransactions($xactions)
->setMarkupEngine($engine);
@@ -128,29 +133,21 @@
}
private function buildBasicActions(PhabricatorRepository $repository) {
- $user = $this->getRequest()->getUser();
+ $viewer = $this->getRequest()->getUser();
$view = id(new PhabricatorActionListView())
->setObjectURI($this->getRequest()->getRequestURI())
- ->setUser($user);
-
- $can_edit = PhabricatorPolicyFilter::hasCapability(
- $user,
- $repository,
- PhabricatorPolicyCapability::CAN_EDIT);
+ ->setUser($viewer);
$edit = id(new PhabricatorActionView())
->setIcon('edit')
->setName(pht('Edit Basic Information'))
- ->setHref($this->getRepositoryControllerURI($repository, 'edit/basic/'))
- ->setDisabled(!$can_edit)
- ->setWorkflow(!$can_edit);
+ ->setHref($this->getRepositoryControllerURI($repository, 'edit/basic/'));
$view->addAction($edit);
$activate = id(new PhabricatorActionView())
->setHref(
$this->getRepositoryControllerURI($repository, 'edit/activate/'))
- ->setDisabled(!$can_edit)
->setWorkflow(true);
if ($repository->isTracked()) {
@@ -172,10 +169,10 @@
PhabricatorRepository $repository,
PhabricatorActionListView $actions) {
- $user = $this->getRequest()->getUser();
+ $viewer = $this->getRequest()->getUser();
$view = id(new PHUIPropertyListView())
- ->setUser($user)
+ ->setUser($viewer)
->setActionList($actions);
$view->addProperty(pht('Name'), $repository->getName());
@@ -196,32 +193,25 @@
$description = PhabricatorMarkupEngine::renderOneObject(
$repository,
'description',
- $user);
+ $viewer);
}
$view->addTextContent($description);
return $view;
}
private function buildEncodingActions(PhabricatorRepository $repository) {
- $user = $this->getRequest()->getUser();
+ $viewer = $this->getRequest()->getUser();
$view = id(new PhabricatorActionListView())
->setObjectURI($this->getRequest()->getRequestURI())
- ->setUser($user);
-
- $can_edit = PhabricatorPolicyFilter::hasCapability(
- $user,
- $repository,
- PhabricatorPolicyCapability::CAN_EDIT);
+ ->setUser($viewer);
$edit = id(new PhabricatorActionView())
->setIcon('edit')
->setName(pht('Edit Text Encoding'))
->setHref(
- $this->getRepositoryControllerURI($repository, 'edit/encoding/'))
- ->setWorkflow(!$can_edit)
- ->setDisabled(!$can_edit);
+ $this->getRepositoryControllerURI($repository, 'edit/encoding/'));
$view->addAction($edit);
return $view;
@@ -231,10 +221,10 @@
PhabricatorRepository $repository,
PhabricatorActionListView $actions) {
- $user = $this->getRequest()->getUser();
+ $viewer = $this->getRequest()->getUser();
$view = id(new PHUIPropertyListView())
- ->setUser($user)
+ ->setUser($viewer)
->setActionList($actions)
->addSectionHeader(pht('Text Encoding'));
@@ -255,18 +245,11 @@
->setObjectURI($this->getRequest()->getRequestURI())
->setUser($viewer);
- $can_edit = PhabricatorPolicyFilter::hasCapability(
- $viewer,
- $repository,
- PhabricatorPolicyCapability::CAN_EDIT);
-
$edit = id(new PhabricatorActionView())
->setIcon('edit')
->setName(pht('Edit Policies'))
->setHref(
- $this->getRepositoryControllerURI($repository, 'edit/policy/'))
- ->setWorkflow(!$can_edit)
- ->setDisabled(!$can_edit);
+ $this->getRepositoryControllerURI($repository, 'edit/policy/'));
$view->addAction($edit);
return $view;
@@ -306,18 +289,11 @@
->setObjectURI($this->getRequest()->getRequestURI())
->setUser($viewer);
- $can_edit = PhabricatorPolicyFilter::hasCapability(
- $viewer,
- $repository,
- PhabricatorPolicyCapability::CAN_EDIT);
-
$edit = id(new PhabricatorActionView())
->setIcon('edit')
->setName(pht('Edit Branches'))
->setHref(
- $this->getRepositoryControllerURI($repository, 'edit/branches/'))
- ->setWorkflow(!$can_edit)
- ->setDisabled(!$can_edit);
+ $this->getRepositoryControllerURI($repository, 'edit/branches/'));
$view->addAction($edit);
return $view;
@@ -359,18 +335,11 @@
->setObjectURI($this->getRequest()->getRequestURI())
->setUser($viewer);
- $can_edit = PhabricatorPolicyFilter::hasCapability(
- $viewer,
- $repository,
- PhabricatorPolicyCapability::CAN_EDIT);
-
$edit = id(new PhabricatorActionView())
->setIcon('edit')
->setName(pht('Edit Subversion Info'))
->setHref(
- $this->getRepositoryControllerURI($repository, 'edit/subversion/'))
- ->setWorkflow(!$can_edit)
- ->setDisabled(!$can_edit);
+ $this->getRepositoryControllerURI($repository, 'edit/subversion/'));
$view->addAction($edit);
return $view;
@@ -407,18 +376,11 @@
->setObjectURI($this->getRequest()->getRequestURI())
->setUser($viewer);
- $can_edit = PhabricatorPolicyFilter::hasCapability(
- $viewer,
- $repository,
- PhabricatorPolicyCapability::CAN_EDIT);
-
$edit = id(new PhabricatorActionView())
->setIcon('edit')
->setName(pht('Edit Actions'))
->setHref(
- $this->getRepositoryControllerURI($repository, 'edit/actions/'))
- ->setWorkflow(!$can_edit)
- ->setDisabled(!$can_edit);
+ $this->getRepositoryControllerURI($repository, 'edit/actions/'));
$view->addAction($edit);
return $view;
@@ -457,18 +419,11 @@
->setObjectURI($this->getRequest()->getRequestURI())
->setUser($viewer);
- $can_edit = PhabricatorPolicyFilter::hasCapability(
- $viewer,
- $repository,
- PhabricatorPolicyCapability::CAN_EDIT);
-
$edit = id(new PhabricatorActionView())
->setIcon('edit')
->setName(pht('Edit Remote'))
->setHref(
- $this->getRepositoryControllerURI($repository, 'edit/remote/'))
- ->setWorkflow(!$can_edit)
- ->setDisabled(!$can_edit);
+ $this->getRepositoryControllerURI($repository, 'edit/remote/'));
$view->addAction($edit);
return $view;
File Metadata
Details
Attached
Mime Type
text/x-diff
Storage Engine
amazon-s3
Storage Format
Raw Data
Storage Handle
phabricator/tt/ic/wiwxdh5sbxn2gcy4
Default Alt Text
D7406.diff (8 KB)
Attached To
Mode
D7406: Improve consistency of policy enforcement on new repository edit UI
Attached
Detach File
Event Timeline
Log In to Comment