Changeset View
Changeset View
Standalone View
Standalone View
src/applications/nuance/controller/NuanceQueueWorkController.php
| Show First 20 Lines • Show All 48 Lines • ▼ Show 20 Lines | if (!$items) { | ||||
| pht( | pht( | ||||
| 'This queue has no open items which you have permission to '. | 'This queue has no open items which you have permission to '. | ||||
| 'work on.')) | 'work on.')) | ||||
| ->addCancelButton($queue->getURI()); | ->addCancelButton($queue->getURI()); | ||||
| } | } | ||||
| $item = head($items); | $item = head($items); | ||||
| $curtain = $this->buildCurtain($queue); | $curtain = $this->buildCurtain($queue, $item); | ||||
| $timeline = $this->buildTransactionTimeline( | $timeline = $this->buildTransactionTimeline( | ||||
| $item, | $item, | ||||
| new NuanceItemTransactionQuery()); | new NuanceItemTransactionQuery()); | ||||
| $timeline->setShouldTerminate(true); | $timeline->setShouldTerminate(true); | ||||
| $impl = $item->getImplementation() | |||||
| ->setViewer($viewer); | |||||
| $work_content = $impl->buildItemWorkView($item); | |||||
| $view = id(new PHUITwoColumnView()) | $view = id(new PHUITwoColumnView()) | ||||
| ->setCurtain($curtain) | ->setCurtain($curtain) | ||||
| ->setMainColumn($timeline); | ->setMainColumn( | ||||
| array( | |||||
| $work_content, | |||||
| $timeline, | |||||
| )); | |||||
| return $this->newPage() | return $this->newPage() | ||||
| ->setTitle($title) | ->setTitle($title) | ||||
| ->setCrumbs($crumbs) | ->setCrumbs($crumbs) | ||||
| ->appendChild($view); | ->appendChild($view); | ||||
| } | } | ||||
| private function buildCurtain(NuanceQueue $queue) { | private function buildCurtain(NuanceQueue $queue, NuanceItem $item) { | ||||
| $viewer = $this->getViewer(); | $viewer = $this->getViewer(); | ||||
| $id = $queue->getID(); | $id = $queue->getID(); | ||||
| $curtain = $this->newCurtainView(); | $curtain = $this->newCurtainView(); | ||||
| $impl = $item->getImplementation(); | |||||
| $commands = $impl->buildWorkCommands($item); | |||||
| foreach ($commands as $command) { | |||||
| $command_key = $command->getCommandKey(); | |||||
| $item_id = $item->getID(); | |||||
| $curtain->addAction( | |||||
| id(new PhabricatorActionView()) | |||||
| ->setName($command->getName()) | |||||
| ->setIcon($command->getIcon()) | |||||
| ->setHref("queue/command/{$id}/{$command_key}/{$item_id}/")) | |||||
| ->setWorkflow(true); | |||||
| } | |||||
| $curtain->addAction( | $curtain->addAction( | ||||
| id(new PhabricatorActionView()) | id(new PhabricatorActionView()) | ||||
| ->setType(PhabricatorActionView::TYPE_DIVIDER)); | ->setType(PhabricatorActionView::TYPE_DIVIDER)); | ||||
| $curtain->addAction( | $curtain->addAction( | ||||
| id(new PhabricatorActionView()) | id(new PhabricatorActionView()) | ||||
| ->setType(PhabricatorActionView::TYPE_LABEL) | ->setType(PhabricatorActionView::TYPE_LABEL) | ||||
| ->setName(pht('Queue Actions'))); | ->setName(pht('Queue Actions'))); | ||||
| Show All 11 Lines | |||||