40 lines
1.2 KiB
PHP
40 lines
1.2 KiB
PHP
<?php
|
|
|
|
namespace Icinga\Module\Director\Controllers;
|
|
|
|
use Icinga\Module\Director\Web\ActionBar\ChoicesActionBar;
|
|
use Icinga\Module\Director\Web\Controller\ActionController;
|
|
use Icinga\Module\Director\Web\Table\ChoicesTable;
|
|
use Icinga\Module\Director\Web\Tabs\ObjectsTabs;
|
|
|
|
class TemplatechoicesController extends ActionController
|
|
{
|
|
protected function checkDirectorPermissions()
|
|
{
|
|
$this->assertPermission('director/admin');
|
|
}
|
|
|
|
public function hostAction()
|
|
{
|
|
$this->prepare('host', $this->translate('Host template choices'));
|
|
}
|
|
|
|
public function serviceAction()
|
|
{
|
|
$this->prepare('service', $this->translate('Service template choices'));
|
|
}
|
|
|
|
public function notificationAction()
|
|
{
|
|
$this->prepare('notification', $this->translate('Notification template choices'));
|
|
}
|
|
|
|
protected function prepare($type, $title)
|
|
{
|
|
$this->tabs(new ObjectsTabs($type, $this->Auth(), $type))->activate('choices');
|
|
$this->setAutorefreshInterval(10)->addTitle($title);
|
|
$this->actions(new ChoicesActionBar($type, $this->url()));
|
|
ChoicesTable::create($type, $this->db())->renderTo($this);
|
|
}
|
|
}
|