private function buildActionView(NuanceSource $source) { $viewer = $this->getRequest()->getUser(); $id = $source->getID(); $actions = id(new PhabricatorActionListView())->setObjectURI($source->getURI())->setUser($viewer); $can_edit = PhabricatorPolicyFilter::hasCapability($viewer, $source, PhabricatorPolicyCapability::CAN_EDIT); $actions->addAction(id(new PhabricatorActionView())->setName(pht('Edit Source'))->setIcon('fa-pencil')->setHref($this->getApplicationURI("source/edit/{$id}/"))->setDisabled(!$can_edit)->setWorkflow(!$can_edit)); return $actions; }
private function buildActionView(NuanceSource $source) { $viewer = $this->getViewer(); $id = $source->getID(); $actions = id(new PhabricatorActionListView())->setUser($viewer); $can_edit = PhabricatorPolicyFilter::hasCapability($viewer, $source, PhabricatorPolicyCapability::CAN_EDIT); $actions->addAction(id(new PhabricatorActionView())->setName(pht('Edit Source'))->setIcon('fa-pencil')->setHref($this->getApplicationURI("source/edit/{$id}/"))->setDisabled(!$can_edit)->setWorkflow(!$can_edit)); $request = $this->getRequest(); $definition = $source->requireDefinition(); $source_actions = $definition->getSourceViewActions($request); foreach ($source_actions as $source_action) { $actions->addAction($source_action); } return $actions; }