type = $type; return $table; } public function renderTo(ControlsAndContent $controller) { $url = $controller->url(); $this->initializeOptionalQuickSearch($controller); $controller->content()->add([ $this->getPaginator($url), $this ]); if ($url->getParam('format') === 'sql') { $controller->content()->prepend($this->dumpSqlQuery($url)); } } public function getType() { return $this->type; } public function getColumnsToBeRendered() { return [$this->translate('Name')]; } public function renderRow($row) { $type = $this->getType(); $url = Url::fromPath("director/templatechoice/${type}", [ 'name' => $row->object_name ]); return $this::tr( $this::td(Link::create($row->object_name, $url)) ); } protected function prepareQuery() { $type = $this->getType(); $table = "icinga_${type}_template_choice"; return $this->db() ->select() ->from(['o' => $table], 'object_name') ->order('o.object_name'); } }