@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.

Partially update Maniphest for handleProcess

Summary: Starts conversion of Maniphest to handleProcess, chopping up to reduce errors.

Test Plan: New Task, Edit Task, Change Priority, Move on workboard, view reports, batch edit tasks

Reviewers: epriestley

Reviewed By: epriestley

Subscribers: epriestley, Korvin

Maniphest Tasks: T8628

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

+115 -151
+14 -22
src/applications/maniphest/controller/ManiphestExportController.php
··· 2 2 3 3 final class ManiphestExportController extends ManiphestController { 4 4 5 - private $key; 6 - 7 - public function willProcessRequest(array $data) { 8 - $this->key = $data['key']; 9 - return $this; 10 - } 11 - 12 5 /** 13 6 * @phutil-external-symbol class PHPExcel 14 7 * @phutil-external-symbol class PHPExcel_IOFactory 15 8 * @phutil-external-symbol class PHPExcel_Style_NumberFormat 16 9 * @phutil-external-symbol class PHPExcel_Cell_DataType 17 10 */ 18 - public function processRequest() { 19 - $request = $this->getRequest(); 20 - $user = $request->getUser(); 11 + public function handleRequest(AphrontRequest $request) { 12 + $viewer = $this->getViewer(); 13 + $key = $request->getURIData('key'); 21 14 22 15 $ok = @include_once 'PHPExcel.php'; 23 16 if (!$ok) { 24 - $dialog = new AphrontDialogView(); 25 - $dialog->setUser($user); 17 + $dialog = $this->newDialog(); 26 18 27 19 $inst1 = pht( 28 20 'This system does not have PHPExcel installed. This software '. ··· 54 46 // for that here, since it fatals if we don't have the ZipArchive class. 55 47 56 48 $saved = id(new PhabricatorSavedQueryQuery()) 57 - ->setViewer($user) 58 - ->withQueryKeys(array($this->key)) 49 + ->setViewer($viewer) 50 + ->withQueryKeys(array($key)) 59 51 ->executeOne(); 60 52 if (!$saved) { 61 53 $engine = id(new ManiphestTaskSearchEngine()) 62 - ->setViewer($user); 63 - if ($engine->isBuiltinQuery($this->key)) { 64 - $saved = $engine->buildSavedQueryFromBuiltin($this->key); 54 + ->setViewer($viewer); 55 + if ($engine->isBuiltinQuery($key)) { 56 + $saved = $engine->buildSavedQueryFromBuiltin($key); 65 57 } 66 58 if (!$saved) { 67 59 return new Aphront404Response(); ··· 76 68 77 69 if (!$request->isDialogFormPost()) { 78 70 $dialog = new AphrontDialogView(); 79 - $dialog->setUser($user); 71 + $dialog->setUser($viewer); 80 72 81 73 $dialog->setTitle(pht('Export Tasks to Excel')); 82 74 $dialog->appendChild( ··· 108 100 $saved->setParameter('limit', PHP_INT_MAX); 109 101 110 102 $engine = id(new ManiphestTaskSearchEngine()) 111 - ->setViewer($user); 103 + ->setViewer($viewer); 112 104 113 105 $query = $engine->buildQueryFromSavedQuery($saved); 114 - $query->setViewer($user); 106 + $query->setViewer($viewer); 115 107 $tasks = $query->execute(); 116 108 117 109 $all_projects = array_mergev(mpull($tasks, 'getProjectPHIDs')); 118 110 $all_assigned = mpull($tasks, 'getOwnerPHID'); 119 111 120 112 $handles = id(new PhabricatorHandleQuery()) 121 - ->setViewer($user) 113 + ->setViewer($viewer) 122 114 ->withPHIDs(array_merge($all_projects, $all_assigned)) 123 115 ->execute(); 124 116 125 117 $workbook = new PHPExcel(); 126 - $format->buildWorkbook($workbook, $tasks, $handles, $user); 118 + $format->buildWorkbook($workbook, $tasks, $handles, $viewer); 127 119 $writer = PHPExcel_IOFactory::createWriter($workbook, 'Excel2007'); 128 120 129 121 ob_start();
+18 -22
src/applications/maniphest/controller/ManiphestReportController.php
··· 4 4 5 5 private $view; 6 6 7 - public function willProcessRequest(array $data) { 8 - $this->view = idx($data, 'view'); 9 - } 10 - 11 - public function processRequest() { 12 - $request = $this->getRequest(); 13 - $user = $request->getUser(); 7 + public function handleRequest(AphrontRequest $request) { 8 + $viewer = $this->getViewer(); 9 + $this->view = $request->getURIData('view'); 14 10 15 11 if ($request->isFormPost()) { 16 12 $uri = $request->getRequestURI(); ··· 64 60 65 61 public function renderBurn() { 66 62 $request = $this->getRequest(); 67 - $user = $request->getUser(); 63 + $viewer = $request->getUser(); 68 64 69 65 $handle = null; 70 66 ··· 132 128 133 129 $day_bucket = phabricator_format_local_time( 134 130 $row['dateCreated'], 135 - $user, 131 + $viewer, 136 132 'Yz'); 137 133 $day_buckets[$day_bucket] = $row['dateCreated']; 138 134 if (empty($stats[$day_bucket])) { ··· 166 162 167 163 $week_bucket = phabricator_format_local_time( 168 164 $epoch, 169 - $user, 165 + $viewer, 170 166 'YW'); 171 167 if ($week_bucket != $last_week) { 172 168 if ($week) { 173 169 $rows[] = $this->formatBurnRow( 174 - pht('Week of %s', phabricator_date($last_week_epoch, $user)), 170 + pht('Week of %s', phabricator_date($last_week_epoch, $viewer)), 175 171 $week); 176 172 $rowc[] = 'week'; 177 173 } ··· 182 178 183 179 $month_bucket = phabricator_format_local_time( 184 180 $epoch, 185 - $user, 181 + $viewer, 186 182 'Ym'); 187 183 if ($month_bucket != $last_month) { 188 184 if ($month) { 189 185 $rows[] = $this->formatBurnRow( 190 - phabricator_format_local_time($last_month_epoch, $user, 'F, Y'), 186 + phabricator_format_local_time($last_month_epoch, $viewer, 'F, Y'), 191 187 $month); 192 188 $rowc[] = 'month'; 193 189 } ··· 196 192 $last_month_epoch = $epoch; 197 193 } 198 194 199 - $rows[] = $this->formatBurnRow(phabricator_date($epoch, $user), $info); 195 + $rows[] = $this->formatBurnRow(phabricator_date($epoch, $viewer), $info); 200 196 $rowc[] = null; 201 197 $week['open'] += $info['open']; 202 198 $week['close'] += $info['close']; ··· 315 311 316 312 private function renderReportFilters(array $tokens, $has_window) { 317 313 $request = $this->getRequest(); 318 - $user = $request->getUser(); 314 + $viewer = $request->getUser(); 319 315 320 316 $form = id(new AphrontFormView()) 321 - ->setUser($user) 317 + ->setUser($viewer) 322 318 ->appendControl( 323 319 id(new AphrontFormTokenizerControl()) 324 320 ->setDatasource(new PhabricatorProjectDatasource()) ··· 390 386 391 387 public function renderOpenTasks() { 392 388 $request = $this->getRequest(); 393 - $user = $request->getUser(); 389 + $viewer = $request->getUser(); 394 390 395 391 396 392 $query = id(new ManiphestTaskQuery()) 397 - ->setViewer($user) 393 + ->setViewer($viewer) 398 394 ->withStatuses(ManiphestTaskStatus::getOpenStatusConstants()); 399 395 400 396 switch ($this->view) { ··· 420 416 421 417 $recently_closed = $this->loadRecentlyClosedTasks(); 422 418 423 - $date = phabricator_date(time(), $user); 419 + $date = phabricator_date(time(), $viewer); 424 420 425 421 switch ($this->view) { 426 422 case 'user': ··· 615 611 $cclass[] = 'n'; 616 612 617 613 list($ignored, $window_epoch) = $this->getWindow(); 618 - $edate = phabricator_datetime($window_epoch, $user); 614 + $edate = phabricator_datetime($window_epoch, $viewer); 619 615 $cname[] = javelin_tag( 620 616 'span', 621 617 array( ··· 726 722 */ 727 723 private function getWindow() { 728 724 $request = $this->getRequest(); 729 - $user = $request->getUser(); 725 + $viewer = $request->getUser(); 730 726 731 727 $window_str = $this->getRequest()->getStr('window', '12 AM 7 days ago'); 732 728 ··· 736 732 // Do locale-aware parsing so that the user's timezone is assumed for 737 733 // time windows like "3 PM", rather than assuming the server timezone. 738 734 739 - $window_epoch = PhabricatorTime::parseLocalTime($window_str, $user); 735 + $window_epoch = PhabricatorTime::parseLocalTime($window_str, $viewer); 740 736 if (!$window_epoch) { 741 737 $error = 'Invalid'; 742 738 $window_epoch = time() - (60 * 60 * 24 * 7);
+5 -6
src/applications/maniphest/controller/ManiphestSubpriorityController.php
··· 2 2 3 3 final class ManiphestSubpriorityController extends ManiphestController { 4 4 5 - public function processRequest() { 6 - $request = $this->getRequest(); 7 - $user = $request->getUser(); 5 + public function handleRequest(AphrontRequest $request) { 6 + $viewer = $this->getViewer(); 8 7 9 8 if (!$request->validateCSRF()) { 10 9 return new Aphront403Response(); 11 10 } 12 11 13 12 $task = id(new ManiphestTaskQuery()) 14 - ->setViewer($user) 13 + ->setViewer($viewer) 15 14 ->withIDs(array($request->getInt('task'))) 16 15 ->needProjectPHIDs(true) 17 16 ->requireCapabilities( ··· 26 25 27 26 if ($request->getInt('after')) { 28 27 $after_task = id(new ManiphestTaskQuery()) 29 - ->setViewer($user) 28 + ->setViewer($viewer) 30 29 ->withIDs(array($request->getInt('after'))) 31 30 ->executeOne(); 32 31 if (!$after_task) { ··· 52 51 ->setNewValue($sub); 53 52 54 53 $editor = id(new ManiphestTransactionEditor()) 55 - ->setActor($user) 54 + ->setActor($viewer) 56 55 ->setContinueOnMissingFields(true) 57 56 ->setContinueOnNoEffect(true) 58 57 ->setContentSourceFromRequest($request);
+18 -23
src/applications/maniphest/controller/ManiphestTaskDetailController.php
··· 2 2 3 3 final class ManiphestTaskDetailController extends ManiphestController { 4 4 5 - private $id; 6 - 7 5 public function shouldAllowPublic() { 8 6 return true; 9 7 } 10 8 11 - public function willProcessRequest(array $data) { 12 - $this->id = $data['id']; 13 - } 14 - 15 - public function processRequest() { 16 - $request = $this->getRequest(); 17 - $user = $request->getUser(); 9 + public function handleRequest(AphrontRequest $request) { 10 + $viewer = $this->getViewer(); 11 + $id = $request->getURIData('id'); 18 12 19 13 $e_title = null; 20 14 21 15 $priority_map = ManiphestTaskPriority::getTaskPriorityMap(); 22 16 23 17 $task = id(new ManiphestTaskQuery()) 24 - ->setViewer($user) 25 - ->withIDs(array($this->id)) 18 + ->setViewer($viewer) 19 + ->withIDs(array($id)) 26 20 ->needSubscriberPHIDs(true) 27 21 ->executeOne(); 28 22 if (!$task) { ··· 33 27 $parent_task = null; 34 28 if ($workflow && is_numeric($workflow)) { 35 29 $parent_task = id(new ManiphestTaskQuery()) 36 - ->setViewer($user) 30 + ->setViewer($viewer) 37 31 ->withIDs(array($workflow)) 38 32 ->executeOne(); 39 33 } ··· 42 36 $task, 43 37 PhabricatorCustomField::ROLE_VIEW); 44 38 $field_list 45 - ->setViewer($user) 39 + ->setViewer($viewer) 46 40 ->readFieldsFromStorage($task); 47 41 48 42 $e_commit = ManiphestTaskHasCommitEdgeType::EDGECONST; ··· 83 77 } 84 78 85 79 $phids = array_keys($phids); 86 - $handles = $user->loadHandles($phids); 80 + $handles = $viewer->loadHandles($phids); 87 81 88 82 $info_view = null; 89 83 if ($parent_task) { ··· 115 109 } 116 110 117 111 $engine = new PhabricatorMarkupEngine(); 118 - $engine->setViewer($user); 112 + $engine->setViewer($viewer); 119 113 $engine->setContextObject($task); 120 114 $engine->addObject($task, ManiphestTask::MARKUP_FIELD_DESCRIPTION); 121 115 ··· 169 163 } 170 164 171 165 $default_claim = array( 172 - $user->getPHID() => $user->getUsername().' ('.$user->getRealName().')', 166 + $viewer->getPHID() => $viewer->getUsername(). 167 + ' ('.$viewer->getRealName().')', 173 168 ); 174 169 175 170 $draft = id(new PhabricatorDraft())->loadOneWhere( 176 171 'authorPHID = %s AND draftKey = %s', 177 - $user->getPHID(), 172 + $viewer->getPHID(), 178 173 $task->getPHID()); 179 174 if ($draft) { 180 175 $draft_text = $draft->getDraft(); ··· 188 183 189 184 $comment_form = new AphrontFormView(); 190 185 $comment_form 191 - ->setUser($user) 186 + ->setUser($viewer) 192 187 ->setWorkflow(true) 193 188 ->setAction('/maniphest/transaction/save/') 194 189 ->setEncType('multipart/form-data') ··· 249 244 ->setControlStyle('display: none')) 250 245 ->appendChild( 251 246 id(new PhabricatorRemarkupControl()) 252 - ->setUser($user) 247 + ->setUser($viewer) 253 248 ->setLabel(pht('Comments')) 254 249 ->setName('comments') 255 250 ->setValue($draft_text) 256 251 ->setID('transaction-comments') 257 - ->setUser($user)) 252 + ->setUser($viewer)) 258 253 ->appendChild( 259 254 id(new AphrontFormSubmitControl()) 260 255 ->setValue(pht('Submit'))); ··· 288 283 ); 289 284 290 285 // TODO: Initializing these behaviors for logged out users fatals things. 291 - if ($user->isLoggedIn()) { 286 + if ($viewer->isLoggedIn()) { 292 287 Javelin::initBehavior('maniphest-transaction-controls', array( 293 288 'select' => 'transaction-action', 294 289 'controlMap' => $control_map, ··· 330 325 $task, $field_list, $edges, $actions, $handles); 331 326 $description = $this->buildDescriptionView($task, $engine); 332 327 333 - if (!$user->isLoggedIn()) { 328 + if (!$viewer->isLoggedIn()) { 334 329 // TODO: Eventually, everything should run through this. For now, we're 335 330 // only using it to get a consistent "Login to Comment" button. 336 331 $comment_box = id(new PhabricatorApplicationTransactionCommentView()) 337 - ->setUser($user) 332 + ->setUser($viewer) 338 333 ->setRequestURI($request->getRequestURI()); 339 334 $preview_panel = null; 340 335 } else {
+35 -41
src/applications/maniphest/controller/ManiphestTaskEditController.php
··· 2 2 3 3 final class ManiphestTaskEditController extends ManiphestController { 4 4 5 - private $id; 6 - 7 - public function willProcessRequest(array $data) { 8 - $this->id = idx($data, 'id'); 9 - } 10 - 11 - public function processRequest() { 12 - $request = $this->getRequest(); 13 - $user = $request->getUser(); 5 + public function handleRequest(AphrontRequest $request) { 6 + $viewer = $this->getViewer(); 7 + $id = $request->getURIData('id'); 14 8 15 9 $response_type = $request->getStr('responseType', 'task'); 16 10 $order = $request->getStr('order', PhabricatorProjectColumn::DEFAULT_ORDER); ··· 26 20 $can_edit_status = $this->hasApplicationCapability( 27 21 ManiphestEditStatusCapability::CAPABILITY); 28 22 $can_create_projects = PhabricatorPolicyFilter::hasCapability( 29 - $user, 23 + $viewer, 30 24 PhabricatorApplication::getByClass('PhabricatorProjectApplication'), 31 25 ProjectCreateProjectsCapability::CAPABILITY); 32 26 33 27 $parent_task = null; 34 28 $template_id = null; 35 29 36 - if ($this->id) { 30 + if ($id) { 37 31 $task = id(new ManiphestTaskQuery()) 38 - ->setViewer($user) 32 + ->setViewer($viewer) 39 33 ->requireCapabilities( 40 34 array( 41 35 PhabricatorPolicyCapability::CAN_VIEW, 42 36 PhabricatorPolicyCapability::CAN_EDIT, 43 37 )) 44 - ->withIDs(array($this->id)) 38 + ->withIDs(array($id)) 45 39 ->needSubscriberPHIDs(true) 46 40 ->needProjectPHIDs(true) 47 41 ->executeOne(); ··· 49 43 return new Aphront404Response(); 50 44 } 51 45 } else { 52 - $task = ManiphestTask::initializeNewTask($user); 46 + $task = ManiphestTask::initializeNewTask($viewer); 53 47 54 48 // We currently do not allow you to set the task status when creating 55 49 // a new task, although now that statuses are custom it might make ··· 82 76 } 83 77 84 78 $default_projects = id(new PhabricatorObjectQuery()) 85 - ->setViewer($user) 79 + ->setViewer($viewer) 86 80 ->withNames($tokens) 87 81 ->execute(); 88 82 $default_projects = mpull($default_projects, 'getPHID'); ··· 109 103 $assign = $request->getStr('assign'); 110 104 if (strlen($assign)) { 111 105 $assign_user = id(new PhabricatorPeopleQuery()) 112 - ->setViewer($user) 106 + ->setViewer($viewer) 113 107 ->withUsernames(array($assign)) 114 108 ->executeOne(); 115 109 if (!$assign_user) { 116 110 $assign_user = id(new PhabricatorPeopleQuery()) 117 - ->setViewer($user) 111 + ->setViewer($viewer) 118 112 ->withPHIDs(array($assign)) 119 113 ->executeOne(); 120 114 } ··· 132 126 $parent_id = $request->getInt('parent'); 133 127 if (strlen($parent_id)) { 134 128 $parent_task = id(new ManiphestTaskQuery()) 135 - ->setViewer($user) 129 + ->setViewer($viewer) 136 130 ->withIDs(array($parent_id)) 137 131 ->executeOne(); 138 132 if (!$parent_task) { ··· 150 144 $field_list = PhabricatorCustomField::getObjectFields( 151 145 $task, 152 146 PhabricatorCustomField::ROLE_EDIT); 153 - $field_list->setViewer($user); 147 + $field_list->setViewer($viewer); 154 148 $field_list->readFieldsFromStorage($task); 155 149 156 150 $aux_fields = $field_list->getFields(); ··· 250 244 // allow for putting a task in a project column at creation -only- 251 245 if (!$task->getID() && $column_phid && $projects) { 252 246 $column = id(new PhabricatorProjectColumnQuery()) 253 - ->setViewer($user) 247 + ->setViewer($viewer) 254 248 ->withProjectPHIDs($projects) 255 249 ->withPHIDs(array($column_phid)) 256 250 ->executeOne(); ··· 329 323 'new' => $is_new, 330 324 'transactions' => $transactions, 331 325 )); 332 - $event->setUser($user); 326 + $event->setUser($viewer); 333 327 $event->setAphrontRequest($request); 334 328 PhutilEventEngine::dispatchEvent($event); 335 329 ··· 337 331 $transactions = $event->getValue('transactions'); 338 332 339 333 $editor = id(new ManiphestTransactionEditor()) 340 - ->setActor($user) 334 + ->setActor($viewer) 341 335 ->setContentSourceFromRequest($request) 342 336 ->setContinueOnNoEffect(true) 343 337 ->applyTransactions($task, $transactions); ··· 349 343 'new' => $is_new, 350 344 'transactions' => $transactions, 351 345 )); 352 - $event->setUser($user); 346 + $event->setUser($viewer); 353 347 $event->setAphrontRequest($request); 354 348 PhutilEventEngine::dispatchEvent($event); 355 349 } ··· 372 366 $owner = null; 373 367 if ($task->getOwnerPHID()) { 374 368 $owner = id(new PhabricatorHandleQuery()) 375 - ->setViewer($user) 369 + ->setViewer($viewer) 376 370 ->withPHIDs(array($task->getOwnerPHID())) 377 371 ->executeOne(); 378 372 } 379 373 $tasks = id(new ProjectBoardTaskCard()) 380 - ->setViewer($user) 374 + ->setViewer($viewer) 381 375 ->setTask($task) 382 376 ->setOwner($owner) 383 377 ->setCanEdit(true) 384 378 ->getItem(); 385 379 386 380 $column = id(new PhabricatorProjectColumnQuery()) 387 - ->setViewer($user) 381 + ->setViewer($viewer) 388 382 ->withPHIDs(array($request->getStr('columnPHID'))) 389 383 ->executeOne(); 390 384 if (!$column) { ··· 403 397 } 404 398 405 399 $positions = id(new PhabricatorProjectColumnPositionQuery()) 406 - ->setViewer($user) 400 + ->setViewer($viewer) 407 401 ->withColumns(array($column)) 408 402 ->execute(); 409 403 $task_phids = mpull($positions, 'getObjectPHID'); 410 404 411 405 $column_tasks = id(new ManiphestTaskQuery()) 412 - ->setViewer($user) 406 + ->setViewer($viewer) 413 407 ->withPHIDs($task_phids) 414 408 ->execute(); 415 409 ··· 461 455 } else { 462 456 if (!$task->getID()) { 463 457 $task->attachSubscriberPHIDs(array( 464 - $user->getPHID(), 458 + $viewer->getPHID(), 465 459 )); 466 460 if ($template_id) { 467 461 $template_task = id(new ManiphestTaskQuery()) 468 - ->setViewer($user) 462 + ->setViewer($viewer) 469 463 ->withIDs(array($template_id)) 470 464 ->needSubscriberPHIDs(true) 471 465 ->needProjectPHIDs(true) ··· 473 467 if ($template_task) { 474 468 $cc_phids = array_unique(array_merge( 475 469 $template_task->getSubscriberPHIDs(), 476 - array($user->getPHID()))); 470 + array($viewer->getPHID()))); 477 471 $task->attachSubscriberPHIDs($cc_phids); 478 472 $task->attachProjectPHIDs($template_task->getProjectPHIDs()); 479 473 $task->setOwnerPHID($template_task->getOwnerPHID()); ··· 499 493 500 494 if ($fields) { 501 495 id(new PhabricatorCustomFieldList($fields)) 502 - ->setViewer($user) 496 + ->setViewer($viewer) 503 497 ->readFieldsFromStorage($template_task); 504 498 505 499 foreach ($fields as $key => $field) { ··· 563 557 564 558 $form = new AphrontFormView(); 565 559 $form 566 - ->setUser($user) 560 + ->setUser($viewer) 567 561 ->addHiddenInput('template', $template_id) 568 562 ->addHiddenInput('responseType', $response_type) 569 563 ->addHiddenInput('order', $order) ··· 575 569 ->appendChild( 576 570 id(new AphrontFormStaticControl()) 577 571 ->setLabel(pht('Parent Task')) 578 - ->setValue($user->renderHandle($parent_task->getPHID()))) 572 + ->setValue($viewer->renderHandle($parent_task->getPHID()))) 579 573 ->addHiddenInput('parent', $parent_task->getID()); 580 574 } 581 575 ··· 607 601 } 608 602 609 603 $policies = id(new PhabricatorPolicyQuery()) 610 - ->setViewer($user) 604 + ->setViewer($viewer) 611 605 ->setObject($task) 612 606 ->execute(); 613 607 ··· 617 611 ->setLabel(pht('Assigned To')) 618 612 ->setName('assigned_to') 619 613 ->setValue($assigned_value) 620 - ->setUser($user) 614 + ->setUser($viewer) 621 615 ->setDatasource(new PhabricatorPeopleDatasource()) 622 616 ->setLimit(1)); 623 617 } ··· 628 622 ->setLabel(pht('CC')) 629 623 ->setName('cc') 630 624 ->setValue($cc_value) 631 - ->setUser($user) 625 + ->setUser($viewer) 632 626 ->setDatasource(new PhabricatorMetaMTAMailableDatasource())); 633 627 634 628 if ($can_edit_priority) { ··· 645 639 $form 646 640 ->appendChild( 647 641 id(new AphrontFormPolicyControl()) 648 - ->setUser($user) 642 + ->setUser($viewer) 649 643 ->setCapability(PhabricatorPolicyCapability::CAN_VIEW) 650 644 ->setPolicyObject($task) 651 645 ->setPolicies($policies) ··· 653 647 ->setName('viewPolicy')) 654 648 ->appendChild( 655 649 id(new AphrontFormPolicyControl()) 656 - ->setUser($user) 650 + ->setUser($viewer) 657 651 ->setCapability(PhabricatorPolicyCapability::CAN_EDIT) 658 652 ->setPolicyObject($task) 659 653 ->setPolicies($policies) ··· 696 690 ->setName('description') 697 691 ->setID('description-textarea') 698 692 ->setValue($task->getDescription()) 699 - ->setUser($user); 693 + ->setUser($viewer); 700 694 701 695 $form 702 696 ->appendChild($description_control); 703 697 704 698 if ($request->isAjax()) { 705 699 $dialog = id(new AphrontDialogView()) 706 - ->setUser($user) 700 + ->setUser($viewer) 707 701 ->setWidth(AphrontDialogView::WIDTH_FULL) 708 702 ->setTitle($header_name) 709 703 ->appendChild(
+3 -7
src/applications/maniphest/controller/ManiphestTaskListController.php
··· 3 3 final class ManiphestTaskListController 4 4 extends ManiphestController { 5 5 6 - private $queryKey; 7 - 8 6 public function shouldAllowPublic() { 9 7 return true; 10 8 } 11 9 12 - public function willProcessRequest(array $data) { 13 - $this->queryKey = idx($data, 'queryKey'); 14 - } 10 + public function handleRequest(AphrontRequest $request) { 11 + $querykey = $request->getURIData('queryKey'); 15 12 16 - public function processRequest() { 17 13 $controller = id(new PhabricatorApplicationSearchController()) 18 - ->setQueryKey($this->queryKey) 14 + ->setQueryKey($querykey) 19 15 ->setSearchEngine( 20 16 id(new ManiphestTaskSearchEngine()) 21 17 ->setShowBatchControls(true))
+10 -17
src/applications/maniphest/controller/ManiphestTransactionPreviewController.php
··· 2 2 3 3 final class ManiphestTransactionPreviewController extends ManiphestController { 4 4 5 - private $id; 6 - 7 - public function willProcessRequest(array $data) { 8 - $this->id = $data['id']; 9 - } 10 - 11 - public function processRequest() { 12 - 13 - $request = $this->getRequest(); 14 - $user = $request->getUser(); 5 + public function handleRequest(AphrontRequest $request) { 6 + $viewer = $this->getViewer(); 7 + $id = $request->getURIData('id'); 15 8 16 9 $comments = $request->getStr('comments'); 17 10 18 11 $task = id(new ManiphestTaskQuery()) 19 - ->setViewer($user) 20 - ->withIDs(array($this->id)) 12 + ->setViewer($viewer) 13 + ->withIDs(array($id)) 21 14 ->executeOne(); 22 15 if (!$task) { 23 16 return new Aphront404Response(); 24 17 } 25 18 26 19 id(new PhabricatorDraft()) 27 - ->setAuthorPHID($user->getPHID()) 20 + ->setAuthorPHID($viewer->getPHID()) 28 21 ->setDraftKey($task->getPHID()) 29 22 ->setDraft($comments) 30 23 ->replaceOrDelete(); ··· 32 25 $action = $request->getStr('action'); 33 26 34 27 $transaction = new ManiphestTransaction(); 35 - $transaction->setAuthorPHID($user->getPHID()); 28 + $transaction->setAuthorPHID($viewer->getPHID()); 36 29 $transaction->setTransactionType($action); 37 30 38 31 // This should really be split into a separate transaction, but it should ··· 104 97 $transaction->setNewValue($value); 105 98 break; 106 99 } 107 - $phids[] = $user->getPHID(); 100 + $phids[] = $viewer->getPHID(); 108 101 109 102 $handles = $this->loadViewerHandles($phids); 110 103 ··· 112 105 $transactions[] = $transaction; 113 106 114 107 $engine = new PhabricatorMarkupEngine(); 115 - $engine->setViewer($user); 108 + $engine->setViewer($viewer); 116 109 $engine->setContextObject($task); 117 110 if ($transaction->hasComment()) { 118 111 $engine->addObject( ··· 124 117 $transaction->setHandles($handles); 125 118 126 119 $view = id(new PhabricatorApplicationTransactionView()) 127 - ->setUser($user) 120 + ->setUser($viewer) 128 121 ->setTransactions($transactions) 129 122 ->setIsPreview(true); 130 123
+12 -13
src/applications/maniphest/controller/ManiphestTransactionSaveController.php
··· 2 2 3 3 final class ManiphestTransactionSaveController extends ManiphestController { 4 4 5 - public function processRequest() { 6 - $request = $this->getRequest(); 7 - $user = $request->getUser(); 5 + public function handleRequest(AphrontRequest $request) { 6 + $viewer = $this->getViewer(); 8 7 9 8 $task = id(new ManiphestTaskQuery()) 10 - ->setViewer($user) 9 + ->setViewer($viewer) 11 10 ->withIDs(array($request->getStr('taskID'))) 12 11 ->needSubscriberPHIDs(true) 13 12 ->needProjectPHIDs(true) ··· 102 101 // this task. 103 102 $assign = new ManiphestTransaction(); 104 103 $assign->setTransactionType(ManiphestTransaction::TYPE_OWNER); 105 - $assign->setNewValue($user->getPHID()); 104 + $assign->setNewValue($viewer->getPHID()); 106 105 $transactions[] = $assign; 107 106 108 107 $implicitly_claimed = true; ··· 114 113 $user_owns_task = true; 115 114 } else { 116 115 if ($action == ManiphestTransaction::TYPE_OWNER) { 117 - if ($transaction->getNewValue() == $user->getPHID()) { 116 + if ($transaction->getNewValue() == $viewer->getPHID()) { 118 117 $user_owns_task = true; 119 118 } 120 - } else if ($task->getOwnerPHID() == $user->getPHID()) { 119 + } else if ($task->getOwnerPHID() == $viewer->getPHID()) { 121 120 $user_owns_task = true; 122 121 } 123 122 } ··· 125 124 if (!$user_owns_task) { 126 125 // If we aren't making the user the new task owner and they aren't the 127 126 // existing task owner, add them to CC unless they're aleady CC'd. 128 - if (!in_array($user->getPHID(), $task->getSubscriberPHIDs())) { 129 - $implicit_ccs[] = $user->getPHID(); 127 + if (!in_array($viewer->getPHID(), $task->getSubscriberPHIDs())) { 128 + $implicit_ccs[] = $viewer->getPHID(); 130 129 } 131 130 } 132 131 ··· 164 163 'new' => false, 165 164 'transactions' => $transactions, 166 165 )); 167 - $event->setUser($user); 166 + $event->setUser($viewer); 168 167 $event->setAphrontRequest($request); 169 168 PhutilEventEngine::dispatchEvent($event); 170 169 ··· 172 171 $transactions = $event->getValue('transactions'); 173 172 174 173 $editor = id(new ManiphestTransactionEditor()) 175 - ->setActor($user) 174 + ->setActor($viewer) 176 175 ->setContentSourceFromRequest($request) 177 176 ->setContinueOnMissingFields(true) 178 177 ->setContinueOnNoEffect($request->isContinueRequest()); ··· 187 186 188 187 $draft = id(new PhabricatorDraft())->loadOneWhere( 189 188 'authorPHID = %s AND draftKey = %s', 190 - $user->getPHID(), 189 + $viewer->getPHID(), 191 190 $task->getPHID()); 192 191 if ($draft) { 193 192 $draft->delete(); ··· 200 199 'new' => false, 201 200 'transactions' => $transactions, 202 201 )); 203 - $event->setUser($user); 202 + $event->setUser($viewer); 204 203 $event->setAphrontRequest($request); 205 204 PhutilEventEngine::dispatchEvent($event); 206 205