diff --git a/application/controllers/ShowController.php b/application/controllers/ShowController.php index 786cd901..376bfb99 100644 --- a/application/controllers/ShowController.php +++ b/application/controllers/ShowController.php @@ -2,6 +2,8 @@ use Icinga\Module\Director\ActionController; +use Icinga\Module\Director\IcingaConfig\IcingaConfig; + class Director_ShowController extends ActionController { public function activitylogAction() @@ -11,4 +13,14 @@ class Director_ShowController extends ActionController $this->view->title = $this->translate('Activity'); } } + + public function configAction() + { + $config = IcingaConfig::fromDb($this->db()); + $this->view->files = array(); + + foreach ($config->getFiles() as $filename => $config) { + $this->view->files[$filename] = $config->getContent(); + } + } } diff --git a/application/views/scripts/show/config.phtml b/application/views/scripts/show/config.phtml new file mode 100644 index 00000000..36614343 --- /dev/null +++ b/application/views/scripts/show/config.phtml @@ -0,0 +1,12 @@ +
+tabs ?> +
+ +
+files as $file => $content): ?> +

escape($file) ?>

+
+escape($content) ?>
+
+ +
diff --git a/configuration.php b/configuration.php index f32e1b3c..03a32386 100644 --- a/configuration.php +++ b/configuration.php @@ -50,3 +50,7 @@ $section->add($this->translate('Endpoints')) $section->add($this->translate('Activity Log')) ->setUrl('director/list/activitylog') ->setPriority(900); +$section->add($this->translate('Show config')) + ->setUrl('director/show/config') + ->setPriority(902); +