forked from ddurieux/glpi_monitoring
-
Notifications
You must be signed in to change notification settings - Fork 0
/
dropdownAllHosts.php
97 lines (74 loc) · 3.28 KB
/
dropdownAllHosts.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
<?php
/*
------------------------------------------------------------------------
Plugin Monitoring for GLPI
Copyright (C) 2011-2016 by the Plugin Monitoring for GLPI Development Team.
https://forge.indepnet.net/projects/monitoring/
------------------------------------------------------------------------
LICENSE
This file is part of Plugin Monitoring project.
Plugin Monitoring for GLPI is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
Plugin Monitoring for GLPI is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with Monitoring. If not, see <http://www.gnu.org/licenses/>.
------------------------------------------------------------------------
@package Plugin Monitoring for GLPI
@author David Durieux
@co-author
@comment
@copyright Copyright (c) 2011-2016 Plugin Monitoring for GLPI team
@license AGPL License 3.0 or (at your option) any later version
http://www.gnu.org/licenses/agpl-3.0-standalone.html
@link https://forge.indepnet.net/projects/monitoring/
@since 2011
------------------------------------------------------------------------
*/
include ("../../../inc/includes.php");
header("Content-Type: text/html; charset=UTF-8");
Html::header_nocache();
Session::checkCentralAccess();
// Make a select box
if ($_POST["idtable"] && class_exists($_POST["idtable"])) {
$table = getTableForItemType($_POST["idtable"]);
// Link to user for search only > normal users
$link = "dropdownValue.php";
$rand = mt_rand();
$use_ajax = false;
if ($CFG_GLPI["use_ajax"] && countElementsInTable($table)>$CFG_GLPI["ajax_limit_count"]) {
$use_ajax = true;
}
$paramsallitems = array('searchText' => '__VALUE__',
'table' => $table,
'itemtype' => $_POST["idtable"],
'rand' => $rand,
'myname' => $_POST["myname"],
'displaywith' => array('otherserial', 'serial'),
'display_emptychoice' => true);
if (isset($_POST['value'])) {
$paramsallitems['value'] = $_POST['value'];
}
if (isset($_POST['entity_restrict'])) {
$paramsallitems['entity_restrict'] = $_POST['entity_restrict'];
}
if (isset($_POST['condition'])) {
$paramsallitems['condition'] = stripslashes($_POST['condition']);
}
$pmHost = new PluginMonitoringHost();
$classname = $_POST['idtable'];
$class = new $classname;
$a_list = $pmHost->find("`itemtype`='".$classname."'");
$a_elements = array();
foreach ($a_list as $data) {
$class->getFromDB($data['items_id']);
$a_elements[$data['id']] = $class->getName();
}
asort($a_elements);
Dropdown::showFromArray($_POST['myname'], $a_elements);
}
?>