if ($max <= 2) { $formaty = ".2f"; } else { if ($max <= 4) { $formaty = ".1f"; } } if ($max > 2000) { $formaty = "0.3s"; } $color = array(); $color = PluginMonitoringServicegraph::colors(); $colorwarn = array(); $colorwarn = PluginMonitoringServicegraph::colors("warn"); $colorcrit = array(); $colorcrit = PluginMonitoringServicegraph::colors("crit"); if (isset($_SESSION['glpi_plugin_monitoring']['perfnamecolor'][$_GET['components_id']])) { foreach ($_SESSION['glpi_plugin_monitoring']['perfnamecolor'][$_GET['components_id']] as $perfname => $colorperfname) { if (isset($color[$colorperfname])) { unset($color[$colorperfname]); } if (isset($colorwarn[$colorperfname])) { unset($colorwarn[$colorperfname]); } if (isset($colorcrit[$colorperfname])) { unset($colorcrit[$colorperfname]); } } } $nSerie = 0; foreach ($mydatat as $name => $data) {
static function preferences($components_id, $loadpreferences = 1, $displayonly = 0) { if ($loadpreferences == 1) { PluginMonitoringServicegraph::loadPreferences($components_id); } $pmComponent = new PluginMonitoringComponent(); $pmComponent->getFromDB($components_id); echo "<form method='post'>"; $a_perfnames = array(); $a_perfnames = PluginMonitoringServicegraph::getperfdataNames($pmComponent->fields['graph_template']); echo "<table class='tab_cadre_fixe'>"; echo "<tr class='tab_bg_1'>"; echo "<td rowspan='" . ceil(count($a_perfnames) / 7) . "' width='90'>"; echo "Display :"; echo "</td>"; $i = 0; $j = 0; if (!isset($_SESSION['glpi_plugin_monitoring']['perfname'][$components_id])) { foreach ($a_perfnames as $name) { $_SESSION['glpi_plugin_monitoring']['perfname'][$components_id][$name] = 'checked'; } } foreach ($a_perfnames as $name) { if ($i == 'O' and $j == '1') { echo "<tr>"; } echo "<td>"; $checked = "checked"; if (isset($_SESSION['glpi_plugin_monitoring']['perfname'][$components_id])) { $checked = ""; } if (isset($_SESSION['glpi_plugin_monitoring']['perfname'][$components_id][$name])) { $checked = $_SESSION['glpi_plugin_monitoring']['perfname'][$components_id][$name]; } echo "<input type='checkbox' name='perfname[]' value='" . $name . "' " . $checked . "/> " . $name; echo "</td>"; $i++; if ($i == 6) { $i = 0; echo "</tr>"; } $j = 1; } if ($i != 6) { echo "<td colspan='" . (6 - $i) . "'></td>"; echo "</tr>"; } echo "</table>"; if ($displayonly == 1) { return; } // * Invert perfname $a_perfnames = array(); $a_perfnames = PluginMonitoringServicegraph::getperfdataNames($pmComponent->fields['graph_template']); echo "<table class='tab_cadre_fixe'>"; echo "<tr class='tab_bg_1'>"; echo "<td rowspan='" . ceil(count($a_perfnames) / 7) . "' width='90'>"; echo "Invert values :"; echo "</td>"; $i = 0; $j = 0; foreach ($a_perfnames as $name) { if ($i == 'O' and $j == '1') { echo "<tr>"; } echo "<td>"; $checked = ""; if (isset($_SESSION['glpi_plugin_monitoring']['perfnameinvert'][$components_id][$name])) { $checked = $_SESSION['glpi_plugin_monitoring']['perfnameinvert'][$components_id][$name]; } echo "<input type='checkbox' name='perfnameinvert[]' value='" . $name . "' " . $checked . "/> " . $name; echo "</td>"; $i++; if ($i == 6) { $i = 0; echo "</tr>"; } $j = 1; } if ($i != 6) { echo "<td colspan='" . (6 - $i) . "'></td>"; echo "</tr>"; } echo "</table>"; // * Define color of perfname $a_perfnames = array(); $a_perfnames = PluginMonitoringServicegraph::getperfdataNames($pmComponent->fields['graph_template']); foreach ($a_perfnames as $key => $name) { if (!isset($_SESSION['glpi_plugin_monitoring']['perfname'][$components_id][$name])) { unset($a_perfnames[$key]); } } echo "<table class='tab_cadre_fixe'>"; echo "<tr class='tab_bg_1'>"; echo "<td rowspan='" . ceil(count($a_perfnames) / 4) . "' width='90'>"; echo "Colors :"; echo "</td>"; $i = 0; $j = 0; foreach ($a_perfnames as $name) { if ($i == 'O' and $j == '1') { echo "<tr>"; } echo "<td>"; echo $name . " :"; echo "</td>"; echo "<td>"; $a_colors = array(); if (strstr($name, "warn")) { $a_colors = PluginMonitoringServicegraph::colors("warn"); } else { if (strstr($name, "crit")) { $a_colors = PluginMonitoringServicegraph::colors("crit"); } else { $a_colors = PluginMonitoringServicegraph::colors(); } } echo " <select name='perfnamecolor[" . $name . "]' id='color" . $name . "'>"; echo "<option value=''>" . Dropdown::EMPTY_VALUE . "</option>"; foreach ($a_colors as $color) { $checked = ''; if (isset($_SESSION['glpi_plugin_monitoring']['perfnamecolor'][$components_id][$name]) and $_SESSION['glpi_plugin_monitoring']['perfnamecolor'][$components_id][$name] == $color) { $checked = 'selected'; } echo "<option value='" . $color . "' style='background-color: #" . $color . ";' " . $checked . ">" . $color . "</option>"; } echo "</select>"; echo "</td>"; $i++; if ($i == 4) { $i = 0; echo "</tr>"; } $j = 1; } if ($i != 4) { echo "<td colspan='" . (4 - $i) * 2 . "'></td>"; echo "</tr>"; } echo "<tr>"; echo "<td colspan='9' align='center'>"; echo "<input type='hidden' name='id' value='" . $components_id . "'/>"; echo "<input type='submit' name='updateperfdata' value=\"" . __('Save') . "\" class='submit'>"; echo "</td>"; echo "</tr>"; echo "</table>"; Html::closeForm(); }
static function preferences($components_id, $loadpreferences = 1, $displayonly = 0) { global $CFG_GLPI; if ($loadpreferences == 1) { if (!PluginMonitoringToolbox::loadPreferences($components_id)) { return false; } } $pmComponent = new PluginMonitoringComponent(); $pmComponent->getFromDB($components_id); $a_perfnames = array(); $a_perfnames = PluginMonitoringServicegraph::getperfdataNames($pmComponent->fields['graph_template']); echo "<table class='tab_cadre_fixe'>"; echo "<tr class='tab_bg_3'>"; echo "<td rowspan='" . ceil(count($a_perfnames) / 7) . "' width='90'>"; echo __('Display', 'monitoring') . " :"; echo "</td>"; $i = 0; $j = 0; if (!isset($_SESSION['glpi_plugin_monitoring']['perfname'][$components_id])) { foreach ($a_perfnames as $name) { $_SESSION['glpi_plugin_monitoring']['perfname'][$components_id][$name] = 'checked'; } } echo "<td>"; $a_incremental = array(); $a_perfdatadetails = getAllDatasFromTable('glpi_plugin_monitoring_perfdatadetails', "plugin_monitoring_perfdatas_id='" . $pmComponent->fields['graph_template'] . "'"); foreach ($a_perfdatadetails as $data) { for ($nb = 1; $nb <= 15; $nb++) { if ($data['dsnameincr' . $nb] == '1') { $a_incremental[$data['dsname' . $nb]] = 1; } } } $a_list = array(); $a_list_val = array(); foreach ($a_perfnames as $name) { $a_list[] = $name; if (isset($_SESSION['glpi_plugin_monitoring']['perfname'][$components_id][$name])) { $a_list_val[] = $name; } if (isset($a_incremental[$name])) { $name .= ' | diff'; if (isset($_SESSION['glpi_plugin_monitoring']['perfname'][$components_id][$name])) { $a_list_val[] = $name; } $a_list[] = $name; } } // <input name="perfname" id="jquery-tagbox-select" type="text" value="'.implode('####', $a_list_val).'" />'; echo ' <div id="tagbox-container"></div>'; echo " <script>\n \$('#tagbox-container').tagbox({\n taglist: ['" . implode("', '", $a_list) . "'],\n selectedlist: ['" . implode("', '", $a_list_val) . "'],\n cols: 3,\n maxtags: 4,\n expand: true\n });\n\n \$('#tagbox-container').on('tagAdded', function() {\n \$.get('" . $CFG_GLPI["root_doc"] . "/plugins/monitoring/ajax/updatePerfname.php" . "?components_id=" . $components_id . "&db=" . $loadpreferences . "&perfname=' + \$('.tagbox').data('selected'));\n });\n \$('#tagbox-container').on('tagRemoved', function() {\n \$.get('" . $CFG_GLPI["root_doc"] . "/plugins/monitoring/ajax/updatePerfname.php" . "?components_id=" . $components_id . "&db=" . $loadpreferences . "&perfname=' + \$('.tagbox').data('selected'));\n });\n </script>"; echo "</td>"; echo "</tr>"; echo "</table>"; if ($displayonly == 1) { return; } // * Invert perfname $a_perfnames = array(); $a_perfnames = PluginMonitoringServicegraph::getperfdataNames($pmComponent->fields['graph_template']); echo "<table class='tab_cadre_fixe'>"; echo "<tr class='tab_bg_3'>"; echo "<td rowspan='" . ceil(count($a_perfnames) / 7) . "' width='90'>"; echo __('Invert values', 'monitoring') . " :"; echo "</td>"; $i = 0; $j = 0; echo "<td>"; echo '<select id="jquery-tagbox-select2-options">'; $a_incremental = array(); $a_perfdatadetails = getAllDatasFromTable('glpi_plugin_monitoring_perfdatadetails', "plugin_monitoring_perfdatas_id='" . $pmComponent->fields['graph_template'] . "'"); foreach ($a_perfdatadetails as $data) { for ($nb = 1; $nb <= 15; $nb++) { if ($data['dsnameincr' . $nb] == '1') { $a_incremental[$data['dsname' . $nb]] = 1; } } } $a_list_val2 = array(); foreach ($a_list_val as $name) { $disabled = ''; if (isset($_SESSION['glpi_plugin_monitoring']['perfnameinvert'][$components_id][$name])) { $a_list_val2[] = $name; $disabled = 'disabled="disabled"'; } echo '<option value="' . $name . '" ' . $disabled . '>' . $name . '</option>'; if (isset($a_incremental[$name])) { $name .= ' | diff'; $disabled = ''; if (isset($_SESSION['glpi_plugin_monitoring']['perfnameinvert'][$components_id][$name])) { $a_list_val[] = $name; $disabled = 'disabled="disabled"'; } echo '<option value="' . $name . '" ' . $disabled . '>' . $name . '</option>'; } } echo '</select> <input name="perfnameinvert" id="jquery-tagbox-select2" type="text" value="' . implode('####', $a_list_val2) . '" />'; echo "</td>"; // foreach ($a_perfnames as $name) { // if ($i == 'O' // AND $j == '1') { // echo "<tr>"; // } // echo "<td>"; // $checked = ""; // if (isset($_SESSION['glpi_plugin_monitoring']['perfnameinvert'][$components_id][$name])) { // $checked = $_SESSION['glpi_plugin_monitoring']['perfnameinvert'][$components_id][$name]; // } // echo "<input type='checkbox' name='perfnameinvert[]' value='".$name."' ".$checked."/> ".$name; // echo "</td>"; // $i++; // if ($i == 6) { // $i = 0; // echo "</tr>"; // } // $j = 1; // } // if ($i != 6) { // echo "<td colspan='".(6-$i)."'></td>"; // echo "</tr>"; // } echo "<tr class='tab_bg_3'>"; echo "<td colspan='9' align='center'>"; echo "<input type='hidden' name='id' value='" . $components_id . "'/>"; echo "<input type='submit' name='updateperfdata' value=\"" . __('Save') . "\" class='submit'>"; echo "</td>"; echo "</tr>"; echo "</table>"; // * Define color of perfname $a_perfnames = array(); $a_perfnames = PluginMonitoringServicegraph::getperfdataNames($pmComponent->fields['graph_template']); foreach ($a_perfnames as $key => $name) { if (!isset($_SESSION['glpi_plugin_monitoring']['perfname'][$components_id][$name])) { unset($a_perfnames[$key]); } } echo "<table class='tab_cadre_fixe'>"; echo "<tr class='tab_bg_1'>"; echo "<td rowspan='" . ceil(count($a_perfnames) / 4) . "' width='90'>"; echo __('Colors', 'monitoring') . " :"; echo "</td>"; $i = 0; $j = 0; $a_colors_warn = PluginMonitoringServicegraph::colors("warn"); $a_colors_crit = PluginMonitoringServicegraph::colors("crit"); $a_colors = PluginMonitoringServicegraph::colors(); foreach ($a_list_val as $name) { if ($i == 'O' and $j == '1') { echo "<tr>"; } echo "<td>"; echo $name . " :"; echo "</td>"; echo "<td>"; $color = 'ffffff'; if (isset($_SESSION['glpi_plugin_monitoring']['perfnamecolor'][$components_id][$name])) { $color = $_SESSION['glpi_plugin_monitoring']['perfnamecolor'][$components_id][$name]; } else { if (strstr($name, "warn")) { $color = array_shift($a_colors_warn); } else { if (strstr($name, "crit")) { $color = array_shift($a_colors_crit); } else { $color = array_shift($a_colors); } } } echo ' <input class="color" id="color' . $name . '" name="perfnamecolor[' . $name . ']" value="' . $color . '" size="6" />'; echo '<script type="text/javascript"> var myPicker = new jscolor.color(document.getElementById(\'color' . $name . '\'), {}) myPicker.fromString(\'' . $color . '\') </script> '; // echo " <select name='perfnamecolor[".$name."]' id='color".$name."'>"; // echo "<option value=''>".Dropdown::EMPTY_VALUE."</option>"; // foreach ($a_colors as $color) { // $checked = ''; // if (isset($_SESSION['glpi_plugin_monitoring']['perfnamecolor'][$components_id][$name]) // AND $_SESSION['glpi_plugin_monitoring']['perfnamecolor'][$components_id][$name] == $color) { // $checked = 'selected'; // } // echo "<option value='".$color."' style='background-color: #".$color.";' ".$checked.">".$color."</option>"; // } // echo "</select>"; echo "</td>"; $i++; if ($i == 4) { $i = 0; echo "</tr>"; } $j = 1; } if ($i != 4) { echo "<td colspan='" . (4 - $i) * 2 . "'></td>"; echo "</tr>"; } echo "<tr>"; echo "<td colspan='9' align='center'>"; echo "<input type='hidden' name='id' value='" . $components_id . "'/>"; echo "<input type='submit' name='updateperfdata' value=\"" . __('Save') . "\" class='submit'>"; echo "</td>"; echo "</tr>"; echo "</table>"; Html::closeForm(); return true; }