Path: blob/master/src/applications/drydock/controller/DrydockLogListController.php
12262 views
<?php12final class DrydockLogListController extends DrydockLogController {34public function shouldAllowPublic() {5return true;6}78public function handleRequest(AphrontRequest $request) {9$viewer = $request->getViewer();10$engine = new DrydockLogSearchEngine();1112$id = $request->getURIData('id');13$type = $request->getURIData('type');14switch ($type) {15case 'blueprint':16$blueprint = id(new DrydockBlueprintQuery())17->setViewer($viewer)18->withIDs(array($id))19->executeOne();20if (!$blueprint) {21return new Aphront404Response();22}23$engine->setBlueprint($blueprint);24$this->setBlueprint($blueprint);25break;26case 'resource':27$resource = id(new DrydockResourceQuery())28->setViewer($viewer)29->withIDs(array($id))30->executeOne();31if (!$resource) {32return new Aphront404Response();33}34$engine->setResource($resource);35$this->setResource($resource);36break;37case 'lease':38$lease = id(new DrydockLeaseQuery())39->setViewer($viewer)40->withIDs(array($id))41->executeOne();42if (!$lease) {43return new Aphront404Response();44}45$engine->setLease($lease);46$this->setLease($lease);47break;48case 'operation':49$operation = id(new DrydockRepositoryOperationQuery())50->setViewer($viewer)51->withIDs(array($id))52->executeOne();53if (!$operation) {54return new Aphront404Response();55}56$engine->setOperation($operation);57$this->setOperation($operation);58break;59default:60return new Aphront404Response();61}6263$query_key = $request->getURIData('queryKey');6465$controller = id(new PhabricatorApplicationSearchController())66->setQueryKey($query_key)67->setSearchEngine($engine)68->setNavigation($this->buildSideNavView());6970return $this->delegateToController($controller);71}7273}747576