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) {
Пример #2
0
 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&nbsp;:";
     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&nbsp;:";
     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&nbsp;:";
     echo "</td>";
     $i = 0;
     $j = 0;
     foreach ($a_perfnames as $name) {
         if ($i == 'O' and $j == '1') {
             echo "<tr>";
         }
         echo "<td>";
         echo $name . "&nbsp;:";
         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') . "&nbsp;:";
        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') . "&nbsp;:";
        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') . "&nbsp;:";
        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 . "&nbsp;:";
            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;
    }