Changeset View
Changeset View
Standalone View
Standalone View
src/applications/almanac/controller/AlmanacServiceViewController.php
Show First 20 Lines • Show All 114 Lines • ▼ Show 20 Lines | $can_edit = PhabricatorPolicyFilter::hasCapability( | ||||
$service, | $service, | ||||
PhabricatorPolicyCapability::CAN_EDIT); | PhabricatorPolicyCapability::CAN_EDIT); | ||||
$bindings = id(new AlmanacBindingQuery()) | $bindings = id(new AlmanacBindingQuery()) | ||||
->setViewer($viewer) | ->setViewer($viewer) | ||||
->withServicePHIDs(array($service->getPHID())) | ->withServicePHIDs(array($service->getPHID())) | ||||
->execute(); | ->execute(); | ||||
$phids = array(); | |||||
foreach ($bindings as $binding) { | |||||
$phids[] = $binding->getServicePHID(); | |||||
$phids[] = $binding->getDevicePHID(); | |||||
$phids[] = $binding->getInterface()->getNetworkPHID(); | |||||
} | |||||
$handles = $this->loadViewerHandles($phids); | |||||
$table = id(new AlmanacBindingTableView()) | $table = id(new AlmanacBindingTableView()) | ||||
->setNoDataString( | ->setNoDataString( | ||||
pht('This service has not been bound to any device interfaces yet.')) | pht('This service has not been bound to any device interfaces yet.')) | ||||
->setUser($viewer) | ->setUser($viewer) | ||||
->setBindings($bindings) | ->setBindings($bindings); | ||||
->setHandles($handles); | |||||
$header = id(new PHUIHeaderView()) | $header = id(new PHUIHeaderView()) | ||||
->setHeader(pht('Service Bindings')) | ->setHeader(pht('Service Bindings')) | ||||
->addActionLink( | ->addActionLink( | ||||
id(new PHUIButtonView()) | id(new PHUIButtonView()) | ||||
->setTag('a') | ->setTag('a') | ||||
->setHref($this->getApplicationURI("binding/edit/?serviceID={$id}")) | ->setHref($this->getApplicationURI("binding/edit/?serviceID={$id}")) | ||||
->setWorkflow(!$can_edit) | ->setWorkflow(!$can_edit) | ||||
Show All 12 Lines |