From e625c91867ec33d66e4b2404fbda7973129d8a72 Mon Sep 17 00:00:00 2001 From: epriestley Date: Tue, 10 Sep 2013 07:44:22 -0700 Subject: [PATCH] Pass viewer to all ManiphestTaskQuery objects Summary: Ref T603. Prepare for conversion to a policy-aware query. Test Plan: Browsed various interfaces which use this stuff. Reviewers: btrahan Reviewed By: btrahan CC: aran Maniphest Tasks: T603 Differential Revision: https://secure.phabricator.com/D6928 --- ...DifferentialFreeformFieldSpecification.php | 1 + .../PhabricatorDirectoryMainController.php | 33 ++++++++++--------- .../PhabricatorApplicationManiphest.php | 2 ++ .../ConduitAPI_maniphest_query_Method.php | 2 ++ .../controller/ManiphestReportController.php | 1 + .../ManiphestTaskListController.php | 1 + .../PhabricatorProjectProfileController.php | 1 + 7 files changed, 25 insertions(+), 16 deletions(-) diff --git a/src/applications/differential/field/specification/DifferentialFreeformFieldSpecification.php b/src/applications/differential/field/specification/DifferentialFreeformFieldSpecification.php index 0d2f46d833..d1a45c51fb 100644 --- a/src/applications/differential/field/specification/DifferentialFreeformFieldSpecification.php +++ b/src/applications/differential/field/specification/DifferentialFreeformFieldSpecification.php @@ -227,6 +227,7 @@ abstract class DifferentialFreeformFieldSpecification } $tasks = id(new ManiphestTaskQuery()) + ->setViewer($user) ->withTaskIDs(array_keys($tasks_statuses)) ->execute(); diff --git a/src/applications/directory/controller/PhabricatorDirectoryMainController.php b/src/applications/directory/controller/PhabricatorDirectoryMainController.php index 9b9c469820..b2505ccbbb 100644 --- a/src/applications/directory/controller/PhabricatorDirectoryMainController.php +++ b/src/applications/directory/controller/PhabricatorDirectoryMainController.php @@ -98,12 +98,12 @@ final class PhabricatorDirectoryMainController private function buildUnbreakNowPanel() { $user = $this->getRequest()->getUser(); - $user_phid = $user->getPHID(); - $task_query = new ManiphestTaskQuery(); - $task_query->withStatus(ManiphestTaskQuery::STATUS_OPEN); - $task_query->withPriority(ManiphestTaskPriority::PRIORITY_UNBREAK_NOW); - $task_query->setLimit(10); + $task_query = id(new ManiphestTaskQuery()) + ->setViewer($user) + ->withStatus(ManiphestTaskQuery::STATUS_OPEN) + ->withPriority(ManiphestTaskPriority::PRIORITY_UNBREAK_NOW) + ->setLimit(10); $tasks = $task_query->execute(); @@ -135,14 +135,14 @@ final class PhabricatorDirectoryMainController assert_instances_of($projects, 'PhabricatorProject'); $user = $this->getRequest()->getUser(); - $user_phid = $user->getPHID(); if ($projects) { - $task_query = new ManiphestTaskQuery(); - $task_query->withStatus(ManiphestTaskQuery::STATUS_OPEN); - $task_query->withPriority(ManiphestTaskPriority::PRIORITY_TRIAGE); - $task_query->withAnyProjects(mpull($projects, 'getPHID')); - $task_query->setLimit(10); + $task_query = id(new ManiphestTaskQuery()) + ->setViewer($user) + ->withStatus(ManiphestTaskQuery::STATUS_OPEN) + ->withPriority(ManiphestTaskPriority::PRIORITY_TRIAGE) + ->withAnyProjects(mpull($projects, 'getPHID')) + ->setLimit(10); $tasks = $task_query->execute(); } else { $tasks = array(); @@ -249,11 +249,12 @@ final class PhabricatorDirectoryMainController $user = $this->getRequest()->getUser(); $user_phid = $user->getPHID(); - $task_query = new ManiphestTaskQuery(); - $task_query->withStatus(ManiphestTaskQuery::STATUS_OPEN); - $task_query->setGroupBy(ManiphestTaskQuery::GROUP_PRIORITY); - $task_query->withOwners(array($user_phid)); - $task_query->setLimit(10); + $task_query = id(new ManiphestTaskQuery()) + ->setViewer($user) + ->withStatus(ManiphestTaskQuery::STATUS_OPEN) + ->setGroupBy(ManiphestTaskQuery::GROUP_PRIORITY) + ->withOwners(array($user_phid)) + ->setLimit(10); $tasks = $task_query->execute(); diff --git a/src/applications/maniphest/application/PhabricatorApplicationManiphest.php b/src/applications/maniphest/application/PhabricatorApplicationManiphest.php index a7939808d7..9b7afa86a8 100644 --- a/src/applications/maniphest/application/PhabricatorApplicationManiphest.php +++ b/src/applications/maniphest/application/PhabricatorApplicationManiphest.php @@ -83,6 +83,7 @@ final class PhabricatorApplicationManiphest extends PhabricatorApplication { $status = array(); $query = id(new ManiphestTaskQuery()) + ->setViewer($user) ->withStatus(ManiphestTaskQuery::STATUS_OPEN) ->withPriority(ManiphestTaskPriority::PRIORITY_UNBREAK_NOW) ->setLimit(1) @@ -97,6 +98,7 @@ final class PhabricatorApplicationManiphest extends PhabricatorApplication { ->setCount($count); $query = id(new ManiphestTaskQuery()) + ->setViewer($user) ->withStatus(ManiphestTaskQuery::STATUS_OPEN) ->withOwners(array($user->getPHID())) ->setLimit(1) diff --git a/src/applications/maniphest/conduit/ConduitAPI_maniphest_query_Method.php b/src/applications/maniphest/conduit/ConduitAPI_maniphest_query_Method.php index 346944f2e3..fc3397f79e 100644 --- a/src/applications/maniphest/conduit/ConduitAPI_maniphest_query_Method.php +++ b/src/applications/maniphest/conduit/ConduitAPI_maniphest_query_Method.php @@ -65,6 +65,8 @@ class ConduitAPI_maniphest_query_Method protected function execute(ConduitAPIRequest $request) { $query = new ManiphestTaskQuery(); + $query->setViewer($request->getUser()); + $task_ids = $request->getValue('ids'); if ($task_ids) { $query->withTaskIDs($task_ids); diff --git a/src/applications/maniphest/controller/ManiphestReportController.php b/src/applications/maniphest/controller/ManiphestReportController.php index ea94b69008..8f0cc46e3f 100644 --- a/src/applications/maniphest/controller/ManiphestReportController.php +++ b/src/applications/maniphest/controller/ManiphestReportController.php @@ -386,6 +386,7 @@ final class ManiphestReportController extends ManiphestController { $query = id(new ManiphestTaskQuery()) + ->setViewer($user) ->withStatus(ManiphestTaskQuery::STATUS_OPEN); $project_phid = $request->getStr('project'); diff --git a/src/applications/maniphest/controller/ManiphestTaskListController.php b/src/applications/maniphest/controller/ManiphestTaskListController.php index f2f6893f0f..3bb615c7d4 100644 --- a/src/applications/maniphest/controller/ManiphestTaskListController.php +++ b/src/applications/maniphest/controller/ManiphestTaskListController.php @@ -459,6 +459,7 @@ final class ManiphestTaskListController extends ManiphestController { ManiphestTaskPriority::getHighestPriority()); $query = new ManiphestTaskQuery(); + $query->setViewer($viewer); $query->withTaskIDs($task_ids); if ($project_phids) { diff --git a/src/applications/project/controller/PhabricatorProjectProfileController.php b/src/applications/project/controller/PhabricatorProjectProfileController.php index 39b3144fcc..ff56d6bd7b 100644 --- a/src/applications/project/controller/PhabricatorProjectProfileController.php +++ b/src/applications/project/controller/PhabricatorProjectProfileController.php @@ -154,6 +154,7 @@ final class PhabricatorProjectProfileController $user = $this->getRequest()->getUser(); $query = id(new ManiphestTaskQuery()) + ->setViewer($user) ->withAnyProjects(array($project->getPHID())) ->withStatus(ManiphestTaskQuery::STATUS_OPEN) ->setOrderBy(ManiphestTaskQuery::ORDER_PRIORITY)