mirror of
https://github.com/librenms/librenms.git
synced 2024-10-07 16:52:45 +00:00
show toner on device overview (beta), minor fixes
git-svn-id: http://www.observium.org/svn/observer/trunk@3014 61d68cd4-352d-0410-923a-c4978735b2b8
This commit is contained in:
@ -1,5 +1,20 @@
|
||||
<?php
|
||||
|
||||
function toner2colour($descr)
|
||||
{
|
||||
$colour = NULL;
|
||||
|
||||
if (substr($descr,-1) == 'C' || stripos($descr,"cyan" ) !== false) { $colour = "55D6D3"; }
|
||||
if (substr($descr,-1) == 'M' || stripos($descr,"magenta") !== false) { $colour = "F24AC8"; }
|
||||
if (substr($descr,-1) == 'Y' || stripos($descr,"yellow" ) !== false
|
||||
|| stripos($descr,"giallo" ) !== false
|
||||
|| stripos($descr,"gul" ) !== false) { $colour = "FFF200"; }
|
||||
if (substr($descr,-1) == 'K' || stripos($descr,"black" ) !== false
|
||||
|| stripos($descr,"nero" ) !== false) { $colour = "000000"; }
|
||||
|
||||
return $colour;
|
||||
}
|
||||
|
||||
function generate_link($text, $vars, $new_vars = array())
|
||||
{
|
||||
return '<a href="'.generate_url($vars, $new_vars).'">'.$text.'</a>';
|
||||
|
@ -10,40 +10,39 @@ $iter = "1";
|
||||
$rrd_options .= " COMMENT:'Toner level Cur Min Max\\n'";
|
||||
foreach (dbFetchRows("SELECT * FROM toner where device_id = ?", array($id)) as $toner)
|
||||
{
|
||||
# FIXME generic colour function
|
||||
switch ($iter)
|
||||
$colour = toner2colour($toner['toner_descr']);
|
||||
|
||||
if ($colour == NULL)
|
||||
{
|
||||
case "1":
|
||||
$colour= "000000";
|
||||
break;
|
||||
case "2":
|
||||
$colour= "008C00";
|
||||
break;
|
||||
case "3":
|
||||
$colour= "4096EE";
|
||||
break;
|
||||
case "4":
|
||||
$colour= "73880A";
|
||||
break;
|
||||
case "5":
|
||||
$colour= "D01F3C";
|
||||
break;
|
||||
case "6":
|
||||
$colour= "36393D";
|
||||
break;
|
||||
case "7":
|
||||
default:
|
||||
$colour= "FF0000";
|
||||
unset($iter);
|
||||
break;
|
||||
# FIXME generic colour function
|
||||
switch ($iter)
|
||||
{
|
||||
case "1":
|
||||
$colour= "000000";
|
||||
break;
|
||||
case "2":
|
||||
$colour= "008C00";
|
||||
break;
|
||||
case "3":
|
||||
$colour= "4096EE";
|
||||
break;
|
||||
case "4":
|
||||
$colour= "73880A";
|
||||
break;
|
||||
case "5":
|
||||
$colour= "D01F3C";
|
||||
break;
|
||||
case "6":
|
||||
$colour= "36393D";
|
||||
break;
|
||||
case "7":
|
||||
default:
|
||||
$colour= "FF0000";
|
||||
unset($iter);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (stripos($toner['toner_descr'],"cyan" ) !== false || substr($toner['toner_descr'],-1) == 'C') { $colour = "55D6D3"; }
|
||||
if (stripos($toner['toner_descr'],"magenta") !== false || substr($toner['toner_descr'],-1) == 'M') { $colour = "F24AC8"; }
|
||||
if (stripos($toner['toner_descr'],"yellow" ) !== false || substr($toner['toner_descr'],-1) == 'Y' || stripos($toner['toner_descr'],"giallo" ) !== false) { $colour = "FFF200"; }
|
||||
if (stripos($toner['toner_descr'],"black" ) !== false || substr($toner['toner_descr'],-1) == 'K' || stripos($toner['toner_descr'],"nero" ) !== false) { $colour = "000000"; }
|
||||
|
||||
|
||||
$hostname = gethostbyid($toner['device_id']);
|
||||
|
||||
$descr = substr(str_pad($toner['toner_descr'], 16),0,16);
|
||||
|
@ -4,20 +4,12 @@ $scale_max = "100";
|
||||
|
||||
include("includes/graphs/common.inc.php");
|
||||
|
||||
$iter = "1";
|
||||
$rrd_options .= " COMMENT:' Cur Max\\n'";
|
||||
|
||||
$rrd_options .= " COMMENT:' Cur Max\\n'";
|
||||
$colour = toner2colour($toner['toner_descr']);
|
||||
if ($colour == NULL) { $colour="CC0000"; }
|
||||
|
||||
if ($iter=="1") { $colour="CC0000"; } elseif ($iter=="2") { $colour="008C00"; } elseif ($iter=="3") { $colour="4096EE"; }
|
||||
elseif ($iter=="4") { $colour="73880A"; } elseif ($iter=="5") { $colour="D01F3C"; } elseif ($iter=="6") { $colour="36393D"; }
|
||||
elseif ($iter=="7") { $colour="FF0084"; unset($iter); }
|
||||
|
||||
$descr = substr(str_pad($toner['toner_descr']),0,28);
|
||||
|
||||
if (stripos($toner['toner_descr'],"cyan" ) !== false || substr($toner['toner_descr'],-1) == 'C') { $colour = "55D6D3"; }
|
||||
if (stripos($toner['toner_descr'],"magenta") !== false || substr($toner['toner_descr'],-1) == 'M') { $colour = "F24AC8"; }
|
||||
if (stripos($toner['toner_descr'],"yellow" ) !== false || substr($toner['toner_descr'],-1) == 'Y') { $colour = "FFF200"; }
|
||||
if (stripos($toner['toner_descr'],"black" ) !== false || substr($toner['toner_descr'],-1) == 'K') { $colour = "000000"; }
|
||||
$descr = substr(str_pad($toner['toner_descr'],26),0,26);
|
||||
|
||||
$background = get_percentage_colours(100-$toner['toner_current']);
|
||||
|
||||
@ -26,8 +18,7 @@ $rrd_options .= " DEF:toner" . $toner['toner_id'] . "=".$rrd_filename.":toner:AV
|
||||
$rrd_options .= " LINE1:toner" . $toner['toner_id'] . "#" . $colour . ":'" . $descr . "' ";
|
||||
|
||||
$rrd_options .= " AREA:toner" . $toner['toner_id' ] . "#" . $background['right'] . ":";
|
||||
$rrd_options .= " GPRINT:toner" . $toner['toner_id'] . ":AVERAGE:'%5.0lf%%'";
|
||||
$rrd_options .= " GPRINT:toner" . $toner['toner_id'] . ":MIN:'%5.0lf%%'";
|
||||
$rrd_options .= " GPRINT:toner" . $toner['toner_id'] . ":LAST:'%5.0lf%%'";
|
||||
$rrd_options .= " GPRINT:toner" . $toner['toner_id'] . ":MAX:%5.0lf%%\\\\l";
|
||||
|
||||
?>
|
||||
|
@ -48,10 +48,10 @@ if ($services['total'])
|
||||
|
||||
foreach (dbFetchRows("SELECT * FROM services WHERE device_id = ? ORDER BY service_type", array($device['device_id'])) as $data)
|
||||
{
|
||||
if ($data[service_status] == "0" && $data[service_ignore] == "1") { $status = "grey"; }
|
||||
if ($data[service_status] == "1" && $data[service_ignore] == "1") { $status = "green"; }
|
||||
if ($data[service_status] == "0" && $data[service_ignore] == "0") { $status = "red"; }
|
||||
if ($data[service_status] == "1" && $data[service_ignore] == "0") { $status = "blue"; }
|
||||
if ($data['service_status'] == "0" && $data['service_ignore'] == "1") { $status = "grey"; }
|
||||
if ($data['service_status'] == "1" && $data['service_ignore'] == "1") { $status = "green"; }
|
||||
if ($data['service_status'] == "0" && $data['service_ignore'] == "0") { $status = "red"; }
|
||||
if ($data['service_status'] == "1" && $data['service_ignore'] == "0") { $status = "blue"; }
|
||||
echo("$break<a class=$status>" . strtolower($data[service_type]) . "</a>");
|
||||
$break = ", ";
|
||||
}
|
||||
@ -86,6 +86,7 @@ include("overview/storage.inc.php");
|
||||
|
||||
if(is_array($entity_state['group']['c6kxbar'])) { include("overview/c6kxbar.inc.php"); }
|
||||
|
||||
include("overview/toner.inc.php");
|
||||
include("overview/sensors/temperatures.inc.php");
|
||||
include("overview/sensors/humidity.inc.php");
|
||||
include("overview/sensors/fanspeeds.inc.php");
|
||||
|
69
html/pages/device/overview/toner.inc.php
Normal file
69
html/pages/device/overview/toner.inc.php
Normal file
@ -0,0 +1,69 @@
|
||||
<?php
|
||||
|
||||
$graph_type = "toner_usage";
|
||||
|
||||
$toners = dbFetchRows("SELECT * FROM `toner` WHERE device_id = ?", array($device['device_id']));
|
||||
|
||||
if (count($toners))
|
||||
{
|
||||
echo("<div style='background-color: #eeeeee; margin: 5px; padding: 5px;'>");
|
||||
echo("<p style='padding: 0px 5px 5px;' class=sectionhead>");
|
||||
echo('<a class="sectionhead" href="device/device='.$device['device_id'].'/tab=toner/">');
|
||||
echo("<img align='absmiddle' src='images/icons/toner.png'> Toner</a></p>");
|
||||
echo("<table width=100% cellspacing=0 cellpadding=5>");
|
||||
$toner_rows = '0';
|
||||
|
||||
foreach ($toners as $toner)
|
||||
{
|
||||
if (is_integer($toner_rows/2)) { $row_colour = $list_colour_a; } else { $row_colour = $list_colour_b; }
|
||||
$percent = round($toner['toner_current'], 0);
|
||||
$total = formatStorage($toner['toner_size']);
|
||||
$free = formatStorage($toner['toner_free']);
|
||||
$used = formatStorage($toner['toner_used']);
|
||||
|
||||
$background['left'] = toner2colour($toner['toner_descr']);
|
||||
unset($background['right']);
|
||||
for ($i = 0;$i < strlen($background['left']); $i++)
|
||||
{
|
||||
$new = dechex(hexdec("0x" . $background['left'][$i])+1);
|
||||
if (strlen($new) != 1) { $new = 'F'; }
|
||||
$background['right'] .= $new;
|
||||
}
|
||||
|
||||
$graph_array = array();
|
||||
$graph_array['height'] = "100";
|
||||
$graph_array['width'] = "210";
|
||||
$graph_array['to'] = $now;
|
||||
$graph_array['id'] = $toner['toner_id'];
|
||||
$graph_array['type'] = $graph_type;
|
||||
$graph_array['from'] = $day;
|
||||
$graph_array['legend'] = "no";
|
||||
|
||||
$link_array = $graph_array;
|
||||
$link_array['page'] = "graphs";
|
||||
unset($link_array['height'], $link_array['width'], $link_array['legend']);
|
||||
$link = generate_url($link_array);
|
||||
|
||||
$overlib_content = generate_overlib_content($graph_array, $device['hostname'] . " - " . $toner['toner_descr']);
|
||||
|
||||
$graph_array['width'] = 80; $graph_array['height'] = 20; $graph_array['bg'] = $graph_colour;
|
||||
|
||||
$minigraph = generate_graph_tag($graph_array);
|
||||
|
||||
echo("<tr bgcolor=$row_colour>
|
||||
<td class=tablehead>".overlib_link($link, $toner['toner_descr'], $overlib_content)."</td>
|
||||
<td width=90>".overlib_link($link, $minigraph, $overlib_content)."</td>
|
||||
<td width=200>".overlib_link($link, print_percentage_bar (200, 20, $percent, NULL, "ffffff", $background['left'], $percent . "%", "ffffff", $background['right']), $overlib_content)."
|
||||
</a></td>
|
||||
</tr>");
|
||||
|
||||
$toner_rows++;
|
||||
}
|
||||
|
||||
echo("</table>");
|
||||
echo("</div>");
|
||||
}
|
||||
|
||||
unset ($toner_rows);
|
||||
|
||||
?>
|
@ -5,7 +5,7 @@ if ($device['os_group'] == "cisco")
|
||||
echo(" CISCO-ENTITY-SENSOR: ");
|
||||
|
||||
$oids = array();
|
||||
echo(" Caching OIDs: ");
|
||||
echo("Caching OIDs:");
|
||||
|
||||
if (!is_array($entity_array))
|
||||
{
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
echo(" ENTITY-SENSOR: ");
|
||||
|
||||
echo("\nCaching OIDs:");
|
||||
echo("Caching OIDs:");
|
||||
|
||||
if (!is_array($entity_array))
|
||||
{
|
||||
|
@ -159,13 +159,14 @@ function delete_device($id)
|
||||
$device_tables = array('entPhysical', 'devices_attribs', 'devices_perms', 'bgpPeers', 'vlans', 'vrfs', 'storage', 'alerts', 'eventlog',
|
||||
'syslog', 'ports', 'services', 'alerts', 'toner', 'frequency', 'current', 'sensors');
|
||||
|
||||
foreach ($device_tables as $table) {
|
||||
foreach ($device_tables as $table)
|
||||
{
|
||||
dbDelete($table, "`device_id` = ?", array($id));
|
||||
}
|
||||
|
||||
shell_exec("rm -rf ".trim($config['rrd_dir'])."/$host");
|
||||
|
||||
$ret = "Removed Device $host\n";
|
||||
$ret = "Removed device $host\n";
|
||||
return $ret;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user