icingaweb2-module-director/application/controllers/ListController.php

126 lines
4.0 KiB
PHP
Raw Normal View History

<?php
use Icinga\Module\Director\Web\Controller\ActionController;
class Director_ListController extends ActionController
{
2015-06-01 12:18:13 +02:00
public function activitylogAction()
{
2015-06-29 10:13:39 +02:00
$this->setConfigTabs()->activate('activitylog');
2015-06-01 12:18:13 +02:00
$this->view->title = $this->translate('Activity Log');
2015-08-28 23:40:40 +02:00
$this->prepareAndRenderTable('activityLog');
2015-06-01 12:18:13 +02:00
}
2015-07-02 14:13:42 +02:00
public function datalistAction()
{
$this->view->addLink = $this->view->qlink(
$this->translate('Add list'),
'director/datalist/add'
);
2015-07-02 14:13:42 +02:00
$this->setConfigTabs()->activate('datalist');
$this->view->title = $this->translate('Data lists');
2015-08-28 23:40:40 +02:00
$this->prepareAndRenderTable('datalist');
2015-07-02 14:13:42 +02:00
}
public function importsourceAction()
{
$this->view->addLink = $this->view->qlink(
$this->translate('Add import source'),
'director/importsource/add'
);
$this->setImportTabs()->activate('importsource');
$this->view->title = $this->translate('Import source');
2015-08-28 23:40:40 +02:00
$this->prepareAndRenderTable('importsource');
}
public function importrunAction()
{
$this->setImportTabs()->activate('importrun');
$this->view->title = $this->translate('Import runs');
2015-07-27 22:45:51 +02:00
$this->view->stats = $this->db()->fetchImportStatistics();
2015-08-28 23:40:40 +02:00
$this->prepareAndRenderTable('importrun');
}
2015-07-23 16:36:58 +02:00
public function syncruleAction()
{
$this->view->addLink = $this->view->qlink(
$this->translate('Add sync rule'),
'director/syncrule/add'
);
$this->setImportTabs()->activate('syncrule');
$this->view->title = $this->translate('Sync rule');
$this->view->table = $this->loadTable('syncrule')->setConnection($this->db());
$this->render('table');
}
public function syncpropertyAction()
{
$this->view->addLink = $this->view->qlink(
$this->translate('Add sync property rule'),
'director/syncproperty/add'
);
$this->setImportTabs()->activate('syncproperty');
$this->view->title = $this->translate('Sync property');
$this->view->table = $this->loadTable('syncproperty')->setConnection($this->db());
$this->render('table');
}
public function datalistentryAction()
{
$listId = $this->params->get('list_id');
$this->view->lastId = $listId;
$this->view->addLink = $this->view->qlink(
$this->translate('Add entry'),
'director/datalistentry/add' . '?list_id=' . $listId
);
$this->view->title = $this->translate('List entries');
$this->getTabs()->add('editlist', array(
'url' => 'director/datalist/edit' . '?id=' . $listId,
'label' => $this->translate('Edit list'),
))->add('datalistentry', array(
'url' => 'director/datalistentry' . '?list_id=' . $listId,
'label' => $this->view->title,
))->activate('datalistentry');
2015-08-28 23:40:40 +02:00
$this->prepareAndRenderTable('datalistEntry');
}
public function datafieldAction()
{
2015-07-03 10:53:39 +02:00
$this->view->addLink = $this->view->qlink(
$this->translate('Add field'),
'director/datafield/add'
2015-07-03 10:53:39 +02:00
);
$this->setConfigTabs()->activate('datafield');
$this->view->title = $this->translate('Data fields');
2015-08-28 23:40:40 +02:00
$this->prepareAndRenderTable('datafield');
}
public function generatedconfigAction()
{
2015-06-29 10:13:39 +02:00
$this->view->addLink = $this->view->qlink(
$this->translate('Generate'),
'director/config/store'
);
$this->setConfigTabs()->activate('generatedconfig');
$this->view->title = $this->translate('Generated Configs');
2015-08-28 23:40:40 +02:00
$this->prepareAndRenderTable('generatedConfig');
}
2015-08-28 23:40:40 +02:00
protected function prepareAndRenderTable($name)
{
$table = $this->loadTable($name)->setConnection($this->db());
$this->view->filterEditor = $table->getFilterEditor($this->getRequest());
$this->view->table = $this->applyPaginationLimits($table);
$this->render('table');
}
}