diff --git a/src/conduit/SprintCreateConduitAPIMethod.php b/src/conduit/SprintCreateConduitAPIMethod.php index 920e40b267b196dcbf4cb3290db7913f454292a2..712c8fac319267ee05454803218559ce71b752af 100644 --- a/src/conduit/SprintCreateConduitAPIMethod.php +++ b/src/conduit/SprintCreateConduitAPIMethod.php @@ -80,9 +80,9 @@ final class SprintCreateConduitAPIMethod extends SprintConduitAPIMethod { ->setNewValue(strtotime($request->getValue('enddate'))); $editor = id(new PhabricatorProjectTransactionEditor()) - ->setActor($user) - ->setContinueOnNoEffect(true) - ->setContentSourceFromConduitRequest($request); + ->setActor($user) + ->setContinueOnNoEffect(true) + ->setContentSource($request->newContentSource()); $editor->applyTransactions($project, $xactions); diff --git a/src/controller/SprintProjectProfileController.php b/src/controller/SprintProjectProfileController.php index 71ce5e408406368de40fed076337d69b94e3389f..a1b2c19d7c8bce13f20f7dfecf920a2824895850 100644 --- a/src/controller/SprintProjectProfileController.php +++ b/src/controller/SprintProjectProfileController.php @@ -29,7 +29,7 @@ final class SprintProjectProfileController $header = id(new PHUIHeaderView()) ->setHeader(array($project->getDisplayName(), $tag)) - ->setUser($viewer) + ->setViewer($viewer) ->setPolicyObject($project) ->setImage($picture) ->setProfileHeader(true); @@ -58,14 +58,14 @@ final class SprintProjectProfileController $subproject_list = $this->buildSubprojectList($project); $member_list = id(new PhabricatorProjectMemberListView()) - ->setUser($viewer) + ->setViewer($viewer) ->setProject($project) ->setLimit(5) ->setBackground(PHUIBoxView::GREY) ->setUserPHIDs($project->getMemberPHIDs()); $watcher_list = id(new PhabricatorProjectWatcherListView()) - ->setUser($viewer) + ->setViewer($viewer) ->setProject($project) ->setLimit(5) ->setBackground(PHUIBoxView::GREY) @@ -131,7 +131,7 @@ final class SprintProjectProfileController $viewer = $request->getViewer(); $view = id(new PHUIPropertyListView()) - ->setUser($viewer) + ->setViewer($viewer) ->setObject($project); $field_list = PhabricatorCustomField::getObjectFields( @@ -214,7 +214,7 @@ final class SprintProjectProfileController } $milestone_list = id(new PhabricatorProjectListView()) - ->setUser($viewer) + ->setViewer($viewer) ->setProjects($milestones) ->renderList(); @@ -262,7 +262,7 @@ final class SprintProjectProfileController } $subproject_list = id(new PhabricatorProjectListView()) - ->setUser($viewer) + ->setViewer($viewer) ->setProjects($subprojects) ->renderList(); diff --git a/src/controller/SprintReportController.php b/src/controller/SprintReportController.php index a3cec51d30391b49617e3639f1c331fa5bfa1ebd..88a6cb451d6919665bd4059efb277a100aa577a1 100644 --- a/src/controller/SprintReportController.php +++ b/src/controller/SprintReportController.php @@ -33,18 +33,18 @@ final class SprintReportController extends SprintController { case 'user': case 'project': $core = id(new SprintReportOpenTasksView()) - ->setUser($viewer) + ->setViewer($viewer) ->setRequest($request) ->setView($this->view); break; case 'burn': $core = id(new SprintReportBurnUpView()) - ->setUser($viewer) + ->setViewer($viewer) ->setRequest($request); break; case 'history': $core = id(new SprintHistoryTableView()) - ->setUser($viewer) + ->setViewer($viewer) ->setRequest($request); break; default: diff --git a/src/customfield/SprintProjectCustomField.php b/src/customfield/SprintProjectCustomField.php index 94b201f775d59f02cda2905e6741c650cd8f903d..8761b9d7fe3ad555bbca64a53bf786ceba529299 100644 --- a/src/customfield/SprintProjectCustomField.php +++ b/src/customfield/SprintProjectCustomField.php @@ -109,7 +109,7 @@ abstract class SprintProjectCustomField extends PhabricatorProjectCustomField $control = id(new AphrontFormDateControl()) ->setLabel($proxy->getFieldName()) ->setName($proxy->getFieldKey()) - ->setUser($proxy->getViewer()) + ->setViewer($proxy->getViewer()) ->setCaption($proxy->getCaption()) ->setAllowNull(!$proxy->getRequired()) ->setInitialTime($time); diff --git a/src/tests/SprintControllerTest.php b/src/tests/SprintControllerTest.php index b9103c7170f8b6ca94bf27da55abf18c391e3065..7b30a6122f4b1b93a0b6a360eaa9895e3f1bd00f 100644 --- a/src/tests/SprintControllerTest.php +++ b/src/tests/SprintControllerTest.php @@ -34,7 +34,7 @@ final class SprintControllerTest extends SprintTestCase { $data['id'] = 18; $request->setURIMap($data); $viewer = $this->generateNewTestUser(); - $request->setUser($viewer); + $request->setViewer($viewer); $dvcontroller->willProcessRequest($data); $response = $dvcontroller->handleRequest($request); $this->assertInstanceOf('AphrontResponse', $response); @@ -50,7 +50,7 @@ final class SprintControllerTest extends SprintTestCase { $data['id'] = 3; $request->setURIMap($data); $viewer = $this->generateNewTestUser(); - $request->setUser($viewer); + $request->setViewer($viewer); $dvcontroller->willProcessRequest($data); $response = $dvcontroller->handleRequest($request); $this->assertInstanceOf('Aphront404Response', $response); @@ -66,7 +66,7 @@ final class SprintControllerTest extends SprintTestCase { $data['id'] = 18; $request->setURIMap($data); $viewer = $this->generateNewTestUser(); - $request->setUser($viewer); + $request->setViewer($viewer); $dvcontroller->willProcessRequest($data); $response = $dvcontroller->handleRequest($request); $this->assertInstanceOf('AphrontResponse', $response); @@ -82,7 +82,7 @@ final class SprintControllerTest extends SprintTestCase { $data['id'] = 3; $request->setURIMap($data); $viewer = $this->generateNewTestUser(); - $request->setUser($viewer); + $request->setViewer($viewer); $dvcontroller->willProcessRequest($data); $response = $dvcontroller->handleRequest($request); $this->assertInstanceOf('Aphront404Response', $response); @@ -98,7 +98,7 @@ final class SprintControllerTest extends SprintTestCase { $data['slug'] = 'null_project'; $request->setURIMap($data); $viewer = $this->generateNewTestUser(); - $request->setUser($viewer); + $request->setViewer($viewer); $dvcontroller->willProcessRequest($data); $response = $dvcontroller->handleRequest($request); $this->assertInstanceOf('AphrontResponse', $response); @@ -114,7 +114,7 @@ final class SprintControllerTest extends SprintTestCase { $data['slug'] = 'fail_project'; $request->setURIMap($data); $viewer = $this->generateNewTestUser(); - $request->setUser($viewer); + $request->setViewer($viewer); $dvcontroller->willProcessRequest($data); $response = $dvcontroller->handleRequest($request); $this->assertInstanceOf('Aphront404Response', $response); diff --git a/src/tests/SprintQueryTest.php b/src/tests/SprintQueryTest.php index 77a78106124b540e25b08bfb13fdbb3e34906d56..b8d371885603105a8d3d0b63243657bd5d43f7ce 100644 --- a/src/tests/SprintQueryTest.php +++ b/src/tests/SprintQueryTest.php @@ -10,7 +10,7 @@ final class SprintQueryTest extends SprintTestCase { public function testRequestSetUser() { $r = new AphrontRequest('example.com', '/'); $viewer = $this->generateNewTestUser(); - $r->setUser($viewer); + $r->setViewer($viewer); $this->assertEquals($viewer, $r->getUser()); return $r; } diff --git a/src/view/SprintView.php b/src/view/SprintView.php index 8f200e010182667c7ab6d87369ad85558cb806b3..3571597cb9f1e02be8a482a3450bbc9e3e5d30cd 100644 --- a/src/view/SprintView.php +++ b/src/view/SprintView.php @@ -2,11 +2,19 @@ abstract class SprintView extends AphrontView { + + private $viewer; + + public function setViewer(PhabricatorUser $viewer) { + $this->viewer = $viewer; + return $this; + } + public function renderReportFilters(array $tokens, $has_window, $request, - $viewer) { + PhabricatorUser $viewer) { $form = id(new AphrontFormView()) - ->setUser($viewer) + ->setViewer($viewer) ->appendControl( id(new AphrontFormTokenizerControl()) ->setDatasource(new PhabricatorProjectDatasource()) @@ -16,7 +24,7 @@ abstract class SprintView extends AphrontView { ->setValue(mpull($tokens, 'getPHID'))); if ($has_window) { - list($window_str, , $window_error) = $this->getWindow($request); + list($window_str, , $window_error) = $this->getWindow($request, $viewer); $form ->appendChild( id(new AphrontFormDividerControl())); @@ -34,7 +42,7 @@ abstract class SprintView extends AphrontView { } - public function getWindow($request) { + public function getWindow($request, PhabricatorUser $viewer) { $window_str = $request->getStr('window', '12 AM 7 days ago'); $error = null; @@ -42,7 +50,7 @@ abstract class SprintView extends AphrontView { // Do locale-aware parsing so that the user's timezone is assumed for // time windows like "3 PM", rather than assuming the server timezone. - $window_epoch = PhabricatorTime::parseLocalTime($window_str, $this->user); + $window_epoch = PhabricatorTime::parseLocalTime($window_str, $viewer); if ($window_epoch === null) { $error = 'Invalid'; $window_epoch = time() - (60 * 60 * 24 * 7); @@ -63,7 +71,7 @@ abstract class SprintView extends AphrontView { return array($window_str, $window_epoch, $error); } - public function buildFilter($request) { + public function buildFilter($request, $viewer) { $handle = null; $project_phid = $request->getStr('project'); if ($project_phid) { @@ -75,7 +83,7 @@ abstract class SprintView extends AphrontView { $tokens = $this->getTokens($handle); } $filter = $this->renderReportFilters($tokens, $has_window = true, - $request, $this->user); + $request, $viewer); return $filter; } diff --git a/src/view/reports/SprintHistoryTableView.php b/src/view/reports/SprintHistoryTableView.php index a8565dd5c3c635cf8410eca3fde6af2fa50366b7..444a6808fbfd281ce7fad8fe60d2305bd9e48e5e 100644 --- a/src/view/reports/SprintHistoryTableView.php +++ b/src/view/reports/SprintHistoryTableView.php @@ -7,7 +7,7 @@ final class SprintHistoryTableView extends SprintView { protected $viewer; public function setViewer(PhabricatorUser $viewer) { - $this->user = $viewer; + $this->viewer = $viewer; return $this; } diff --git a/src/view/reports/SprintReportBurnUpView.php b/src/view/reports/SprintReportBurnUpView.php index 56f464af8fc0e2974349cfebaa8ce82675d5b8ca..1e5450e5eb8aadf9d279a7b6525e07e0a0299f41 100644 --- a/src/view/reports/SprintReportBurnUpView.php +++ b/src/view/reports/SprintReportBurnUpView.php @@ -3,9 +3,10 @@ final class SprintReportBurnUpView extends SprintView { private $request; + private $viewer; - public function setUser(PhabricatorUser $viewer) { - $this->user = $viewer; + public function setViewer(PhabricatorUser $viewer) { + $this->viewer = $viewer; return $this; } @@ -16,7 +17,7 @@ final class SprintReportBurnUpView extends SprintView { public function render() { require_celerity_resource('sprint-report-css', 'sprint'); - $filter = $this->BuildFilter($this->request); + $filter = $this->BuildFilter($this->request, $this->viewer); if ($this->request->getStr('project')) { $chart = $this->buildBurnDownChart(); $table = $this->buildStatsTable(); @@ -73,7 +74,7 @@ final class SprintReportBurnUpView extends SprintView { $day_bucket = phabricator_format_local_time( $row['dateCreated'], - $this->user, + $this->viewer, 'Yz'); if (empty($stats[$day_bucket])) { @@ -94,7 +95,7 @@ final class SprintReportBurnUpView extends SprintView { $day_bucket = phabricator_format_local_time( $row['dateCreated'], - $this->user, + $this->viewer, 'Yz'); $day_buckets[$day_bucket] = $row['dateCreated']; } @@ -107,7 +108,7 @@ final class SprintReportBurnUpView extends SprintView { private function buildBucket($epoch, $format) { $bucket = phabricator_format_local_time( $epoch, - $this->user, + $this->viewer, $format); return $bucket; } @@ -138,7 +139,7 @@ final class SprintReportBurnUpView extends SprintView { if ($week_bucket != $last_week) { if ($week) { $rows[] = $this->formatBurnRow( - 'Week of '.phabricator_date($last_week_epoch, $this->user), + 'Week of '.phabricator_date($last_week_epoch, $this->viewer), $week); $rowc[] = 'week'; } @@ -153,7 +154,7 @@ final class SprintReportBurnUpView extends SprintView { if ($month) { $rows[] = $this->formatBurnRow( phabricator_format_local_time($last_month_epoch, - $this->user, 'F, Y'), + $this->viewer, 'F, Y'), $month); $rowc[] = 'month'; } @@ -162,7 +163,7 @@ final class SprintReportBurnUpView extends SprintView { $last_month_epoch = $epoch; } - $rows[] = $this->formatBurnRow(phabricator_date($epoch, $this->user), + $rows[] = $this->formatBurnRow(phabricator_date($epoch, $this->viewer), $info); $rowc[] = null; $week['open'] += $info['open']; diff --git a/src/view/reports/SprintReportOpenTasksView.php b/src/view/reports/SprintReportOpenTasksView.php index 421a35e50d684dded18ecd504872644c1e205424..2a4f32c018b67617e926f10f526d01e9745830a3 100644 --- a/src/view/reports/SprintReportOpenTasksView.php +++ b/src/view/reports/SprintReportOpenTasksView.php @@ -6,8 +6,8 @@ final class SprintReportOpenTasksView extends SprintView { private $request; private $view; - public function setUser(PhabricatorUser $viewer) { - $this->user = $viewer; + public function setViewer(PhabricatorUser $viewer) { + $this->viewer = $viewer; return $this; } @@ -44,13 +44,13 @@ final class SprintReportOpenTasksView extends SprintView { if ($project_phid) { $phids = array($project_phid); $project_handle = $this->getProjectHandle($phids, $project_phid, $this->request); - $tasks = $this->getOpenTasksforProject($this->user, $phids); + $tasks = $this->getOpenTasksforProject($this->viewer, $phids); } else { - $tasks = $this->getOpenTasks($this->user); + $tasks = $this->getOpenTasks($this->viewer); } $recently_closed = $this->loadRecentlyClosedTasks(); - $date = phabricator_date(time(), $this->user); + $date = phabricator_date(time(), $this->viewer); $viewer_task_view = new UserOpenTasksView(); $project_task_view = new ProjectOpenTasksView(); @@ -96,7 +96,7 @@ final class SprintReportOpenTasksView extends SprintView { $tokens = array($project_handle); } $filter = $this->renderReportFilters($tokens, $has_window = false, - $this->request, $this->user); + $this->request, $this->viewer); return array($filter, $panel); } @@ -286,8 +286,8 @@ final class SprintReportOpenTasksView extends SprintView { pht('Oldest (Pri)')); $cclass[] = 'center narrow'; - list($window_epoch) = $this->getWindow($this->request); - $edate = phabricator_datetime($window_epoch, $this->user); + list($window_epoch) = $this->getWindow($this->request, $this->viewer); + $edate = phabricator_datetime($window_epoch, $this->viewer); $cname[] = javelin_tag( 'span', array( @@ -337,7 +337,7 @@ final class SprintReportOpenTasksView extends SprintView { * Load all the tasks that have been recently closed. */ private function loadRecentlyClosedTasks() { - list(, , $window_epoch) = $this->getWindow($this->request); + list(, , $window_epoch) = $this->getWindow($this->request, $this->viewer); $table = new ManiphestTask(); $xtable = new ManiphestTransaction();