diff --git a/library/Director/Import/ImportSourceNagiosConfig.php b/library/Director/Import/ImportSourceNagiosConfig.php new file mode 100644 index 000000000..b5ea26d37 --- /dev/null +++ b/library/Director/Import/ImportSourceNagiosConfig.php @@ -0,0 +1,49 @@ +fetchData())); + } + + public static function addSettingsFormFields(QuickForm $form) + { + $form->addElement('text', 'nagios_config', array( + 'label' => 'Nagios config', + 'description' => 'Path to nagios.cfg, often /etc/nagios/nagios.cfg', + 'required' => true, + )); + $form->addElement('select', 'core_type', array( + 'label' => 'Core Type', + 'multiOptions' => array( + null => '- please choose -', + 'nagios3' => 'Nagios 3.x', + 'icinga1' => 'Icinga 1.x', + ), + 'required' => true, + )); + $form->addElement('select', 'core_type', array( + 'label' => 'Object Type', + 'multiOptions' => array( + null => '- please choose -', + 'host' => 'Hosts', + 'hostgroup' => 'Hostgroups', + 'service' => 'Services', + ), + 'required' => true, + )); + return $form; + } +} diff --git a/run.php b/run.php index 2c1722181..e45a58de6 100644 --- a/run.php +++ b/run.php @@ -2,6 +2,7 @@ $this->registerHook('Monitoring\\HostActions', '\\Icinga\\Module\\Director\\Web\\HostActions'); $this->registerHook('Director\\ImportSource', '\\Icinga\\Module\\Director\\Import\\ImportSourceSql', 'sql'); +$this->registerHook('Director\\ImportSource', '\\Icinga\\Module\\Director\\Import\\ImportSourceNagiosConfig', 'nagios'); $this->registerHook('Director\\DataType', '\\Icinga\\Module\\Director\\DataType\\DataTypeString', 'string'); $this->registerHook('Director\\DataType', '\\Icinga\\Module\\Director\\DataType\\DataTypeNumber', 'number');