diff --git a/html/forms/parse-poller-groups.inc.php b/html/forms/parse-poller-groups.inc.php new file mode 100644 index 000000000000..72fd86eb72f3 --- /dev/null +++ b/html/forms/parse-poller-groups.inc.php @@ -0,0 +1,25 @@ + + * + * This program is free software: you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the + * Free Software Foundation, either version 3 of the License, or (at your + * option) any later version. Please see LICENSE.txt at the top level of + * the source code distribution for details. + */ + +if(is_admin() === false) { + die('ERROR: You need to be admin'); +} + +$group_id = ($_POST['group_id']); + +if(is_numeric($group_id) && $group_id > 0) { + $group = dbFetchRow("SELECT * FROM `poller_groups` WHERE `id` = ? LIMIT 1",array($group_id)); + $output = array('group_name'=>$group['group_name'],'descr'=>$group['descr']); + echo _json_encode($output); +} diff --git a/html/forms/poller-group-remove.inc.php b/html/forms/poller-group-remove.inc.php new file mode 100644 index 000000000000..b07f2c442246 --- /dev/null +++ b/html/forms/poller-group-remove.inc.php @@ -0,0 +1,30 @@ + + * + * This program is free software: you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the + * Free Software Foundation, either version 3 of the License, or (at your + * option) any later version. Please see LICENSE.txt at the top level of + * the source code distribution for details. + */ + +if (!is_numeric($_POST['group_id'])) { + echo('error with data'); + exit; +} else { + if($_POST['confirm'] == 'yes') + { + $delete = dbDelete('poller_groups', '`id` = ?', array($_POST['group_id'])); + if ($delete > '0') { + echo('Poller group has been removed'); + exit; + } else { + echo('An error occurred removing the Poller group'); + exit; + } + } +} diff --git a/html/forms/poller-groups.inc.php b/html/forms/poller-groups.inc.php new file mode 100644 index 000000000000..a9856729b983 --- /dev/null +++ b/html/forms/poller-groups.inc.php @@ -0,0 +1,47 @@ + + * + * This program is free software: you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the + * Free Software Foundation, either version 3 of the License, or (at your + * option) any later version. Please see LICENSE.txt at the top level of + * the source code distribution for details. + */ + +if(is_admin() === false) { + die('ERROR: You need to be admin'); +} + +$ok = ''; +$error = ''; +$group_id = $_POST['group_id']; +$group_name = mres($_POST['group_name']); +$descr = mres($_POST['descr']); +if(!empty($group_name)) { + if( is_numeric($group_id)) { + if (dbUpdate(array('group_name' => $group_name, 'descr' => $descr), "poller_groups", "id = ?", array($group_id))) { + $ok = "Updated poller group"; + } else { + $error = "Failed to update the poller group"; + } + } else { + if (dbInsert(array('group_name' => $group_name, 'descr' => $descr), 'poller_groups') >= 0) { + $ok = "Added new poller group"; + } else { + $error = "Failed to create new poller group"; + } + } +} else { + $error = "You haven't given your poller group a name, it feels sad :( - $group_name"; +} + +if(!empty( $ok )) { + die("$ok"); +} else { + die("ERROR: $error"); +} +?> diff --git a/html/includes/modal/poller_groups.inc.php b/html/includes/modal/poller_groups.inc.php new file mode 100644 index 000000000000..81e014f4ab4c --- /dev/null +++ b/html/includes/modal/poller_groups.inc.php @@ -0,0 +1,159 @@ + + * + * This program is free software: you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the + * Free Software Foundation, either version 3 of the License, or (at your + * option) any later version. Please see LICENSE.txt at the top level of + * the source code distribution for details. + */ + +if(is_admin() === false) { + echo ('ERROR: You need to be admin'); +} else { +?> + + + + + + + diff --git a/html/includes/print-menubar.php b/html/includes/print-menubar.php index 23bc674867a9..7a5615482379 100644 --- a/html/includes/print-menubar.php +++ b/html/includes/print-menubar.php @@ -447,9 +447,10 @@
  • Authlog
  • diff --git a/html/pages/addhost.inc.php b/html/pages/addhost.inc.php index cb16172a496d..04a27088b6a1 100644 --- a/html/pages/addhost.inc.php +++ b/html/pages/addhost.inc.php @@ -175,6 +175,29 @@ + + +
    + +
    + + '); +} + +?> diff --git a/html/pages/performance.inc.php b/html/pages/pollers.inc.php similarity index 71% rename from html/pages/performance.inc.php rename to html/pages/pollers.inc.php index a05f69769af7..95cda0788f9c 100644 --- a/html/pages/performance.inc.php +++ b/html/pages/pollers.inc.php @@ -14,12 +14,13 @@ echo(''); if (isset($vars['tab'])) { - require_once "pages/performance/".mres($vars['tab']).".inc.php"; + require_once "pages/pollers/".mres($vars['tab']).".inc.php"; } diff --git a/html/pages/pollers/groups.inc.php b/html/pages/pollers/groups.inc.php new file mode 100644 index 000000000000..50019dfc26c7 --- /dev/null +++ b/html/pages/pollers/groups.inc.php @@ -0,0 +1,48 @@ + + * + * This program is free software: you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the + * Free Software Foundation, either version 3 of the License, or (at your + * option) any later version. Please see LICENSE.txt at the top level of + * the source code distribution for details. + */ + +require_once "includes/modal/poller_groups.inc.php"; + +?> +
    + +

    +
    + + + + + + + + + + + + + + +'); +} + +?> + +
    IDGroup NameDescriptionAction
    '.$group['id'].''.$group['group_name'].''.$group['descr'].'
    +
    diff --git a/html/pages/performance/pollers.inc.php b/html/pages/pollers/pollers.inc.php similarity index 100% rename from html/pages/performance/pollers.inc.php rename to html/pages/pollers/pollers.inc.php diff --git a/sql-schema/043.sql b/sql-schema/043.sql new file mode 100644 index 000000000000..0a4025ff5dbb --- /dev/null +++ b/sql-schema/043.sql @@ -0,0 +1 @@ +CREATE TABLE `poller_groups` (`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,`group_name` VARCHAR( 255 ) NOT NULL ,`descr` VARCHAR( 255 ) NOT NULL) ENGINE = INNODB;