Path: blob/master/src/applications/daemon/controller/PhabricatorDaemonBulkJobViewController.php
12256 views
<?php12final class PhabricatorDaemonBulkJobViewController3extends PhabricatorDaemonBulkJobController {45public function handleRequest(AphrontRequest $request) {6$viewer = $this->getViewer();78$job = id(new PhabricatorWorkerBulkJobQuery())9->setViewer($viewer)10->withIDs(array($request->getURIData('id')))11->executeOne();12if (!$job) {13return new Aphront404Response();14}1516$title = pht('Bulk Job %d', $job->getID());1718$crumbs = $this->buildApplicationCrumbs();19$crumbs->addTextCrumb($title);20$crumbs->setBorder(true);2122$properties = $this->renderProperties($job);23$curtain = $this->buildCurtainView($job);2425$box = id(new PHUIObjectBoxView())26->setHeaderText(pht('Details'))27->setBackground(PHUIObjectBoxView::BLUE_PROPERTY)28->addPropertyList($properties);2930$timeline = $this->buildTransactionTimeline(31$job,32new PhabricatorWorkerBulkJobTransactionQuery());33$timeline->setShouldTerminate(true);3435$header = id(new PHUIHeaderView())36->setHeader($title)37->setHeaderIcon('fa-hourglass');3839$view = id(new PHUITwoColumnView())40->setHeader($header)41->setCurtain($curtain)42->setMainColumn(array(43$box,44$timeline,45));4647return $this->newPage()48->setTitle($title)49->setCrumbs($crumbs)50->appendChild($view);51}5253private function renderProperties(PhabricatorWorkerBulkJob $job) {54$viewer = $this->getViewer();5556$view = id(new PHUIPropertyListView())57->setUser($viewer)58->setObject($job);5960$view->addProperty(61pht('Author'),62$viewer->renderHandle($job->getAuthorPHID()));6364$view->addProperty(pht('Status'), $job->getStatusName());6566return $view;67}6869private function buildCurtainView(PhabricatorWorkerBulkJob $job) {70$viewer = $this->getViewer();71$curtain = $this->newCurtainView($job);7273foreach ($job->getCurtainActions($viewer) as $action) {74$curtain->addAction($action);75}7677return $curtain;78}7980}818283