Page MenuHomePhorge

SemiStructuredObjectInstanceListController.php
No OneTemporary

SemiStructuredObjectInstanceListController.php

<?php
final class SemiStructuredObjectInstanceListController
extends SemiStructuredObjectTypeController {
private $objectType;
public function setObjectType(SemiStructuredObjectType $object_type) {
$this->objectType = $object_type;
return $this;
}
public function getObjectType() {
return $this->objectType;
}
public function handleRequest(AphrontRequest $request) {
$viewer = $request->getViewer();
$id = $request->getURIData('id');
$object_type = id(new SemiStructuredObjectTypeQuery())
->setViewer($viewer)
->withIDs(array($id))
->executeOne();
if (!$object_type) {
return new Aphront404Response();
}
$this->setObjectType($object_type);
$query_key = $request->getURIData('queryKey');
$controller = id(new PhabricatorApplicationSearchController())
->setQueryKey($query_key)
->setSearchEngine(
id(new SemiStructuredObjectInstanceSearchEngine())
->setObjectType($object_type))
->setNavigation($this->buildSideNavView());
return $this->delegateToController($controller);
}
public function buildSideNavView($filter = null) {
$user = $this->getRequest()->getUser();
$nav = new AphrontSideNavFilterView();
$nav->setBaseURI(new PhutilURI($this->getApplicationURI()));
id(new SemiStructuredObjectInstanceSearchEngine())
->setViewer($user)
->addNavigationItems($nav->getMenu());
$nav->selectFilter($filter);
return $nav;
}
protected function buildApplicationCrumbs() {
$crumbs = parent::buildApplicationCrumbs();
$object_type = $this->getObjectType();
id(new SemiStructuredObjectInstanceEditEngine())
->setObjectType($object_type)
->setViewer($this->getViewer())
->addActionToCrumbs($crumbs);
return $crumbs;
}
}

File Metadata

Mime Type
text/x-php
Expires
Jan 19 2025, 23:34 (6 w, 6 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
1129950
Default Alt Text
SemiStructuredObjectInstanceListController.php (1 KB)

Event Timeline