2010-12-02 16:45:32 +00:00
< ? php
2012-05-20 18:23:40 +00:00
$sensors = dbFetchRows ( " SELECT * FROM `sensors` WHERE `sensor_class` = ? AND device_id = ? ORDER BY `poller_type`, `sensor_index` " , array ( $sensor_class , $device [ 'device_id' ]));
2010-12-02 16:45:32 +00:00
2011-05-16 12:48:50 +00:00
if ( count ( $sensors ))
2010-12-02 16:45:32 +00:00
{
2014-02-26 22:33:45 +00:00
echo ( ' < div class = " row " >
< div class = " col-md-12 " >
< div class = " panel panel-default panel-condensed " >
< div class = " panel-heading " > ' );
echo ( '<a class="sectionhead" href="device/device=' . $device [ 'device_id' ] . '/tab=health/metric=' . strtolower ( $sensor_type ) . '/"><img src="images/icons/' . strtolower ( $sensor_type ) . '.png"> ' . $sensor_type . '</a><' );
echo ( ' </ div >
< table class = " table table-hover table-condensed table-striped " > ' );
2011-05-16 12:48:50 +00:00
foreach ( $sensors as $sensor )
2010-12-02 16:45:32 +00:00
{
2012-05-02 15:06:12 +00:00
if ( $config [ 'memcached' ][ 'enable' ])
{
$sensor [ 'sensor_current' ] = $memcache -> get ( 'sensor-' . $sensor [ 'sensor_id' ] . '-value' );
}
2012-05-02 22:02:30 +00:00
if ( empty ( $sensor [ 'sensor_current' ]))
2012-05-02 15:06:12 +00:00
{
$sensor [ 'sensor_current' ] = " NaN " ;
}
2011-05-17 19:21:20 +00:00
2012-05-25 12:24:34 +00:00
// FIXME - make this "four graphs in popup" a function/include and "small graph" a function.
// FIXME - So now we need to clean this up and move it into a function. Isn't it just "print-graphrow"?
// FIXME - DUPLICATED IN health/sensors
2010-12-02 16:45:32 +00:00
2011-09-17 19:14:44 +00:00
$graph_colour = str_replace ( " # " , " " , $row_colour );
2010-12-02 16:45:32 +00:00
2011-09-20 14:37:54 +00:00
$graph_array = array ();
2011-09-17 19:14:44 +00:00
$graph_array [ 'height' ] = " 100 " ;
$graph_array [ 'width' ] = " 210 " ;
2012-05-06 18:38:11 +00:00
$graph_array [ 'to' ] = $config [ 'time' ][ 'now' ];
2011-09-17 19:14:44 +00:00
$graph_array [ 'id' ] = $sensor [ 'sensor_id' ];
$graph_array [ 'type' ] = $graph_type ;
2011-09-23 15:04:04 +00:00
$graph_array [ 'from' ] = $config [ 'time' ][ 'day' ];
2011-09-17 19:14:44 +00:00
$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 = '<div style="width: 580px;"><h2>' . $device [ 'hostname' ] . " - " . $sensor [ 'sensor_descr' ] . " </h1> " ;
foreach ( array ( 'day' , 'week' , 'month' , 'year' ) as $period )
{
$graph_array [ 'from' ] = $config [ 'time' ][ $period ];
$overlib_content .= str_replace ( '"' , " \ ' " , generate_graph_tag ( $graph_array ));
}
$overlib_content .= " </div> " ;
2012-04-10 17:21:49 +00:00
$graph_array [ 'width' ] = 80 ; $graph_array [ 'height' ] = 20 ; $graph_array [ 'bg' ] = 'ffffff00' ; # the 00 at the end makes the area transparent.
2011-09-23 15:04:04 +00:00
$graph_array [ 'from' ] = $config [ 'time' ][ 'day' ];
2011-09-17 19:14:44 +00:00
$sensor_minigraph = generate_graph_tag ( $graph_array );
2010-12-02 16:45:32 +00:00
2011-11-24 15:45:49 +00:00
$sensor [ 'sensor_descr' ] = truncate ( $sensor [ 'sensor_descr' ], 48 , '' );
2012-04-10 17:21:49 +00:00
2014-02-26 22:33:45 +00:00
echo ( " <tr>
< td >< strong > " .overlib_link( $link , $sensor['sensor_descr'] , $overlib_content ). " </ strong ></ td >
< td > " .overlib_link( $link , $sensor_minigraph , $overlib_content ). " </ td >
< td > " .overlib_link( $link , " < span " . ( $sensor['sensor_current'] < $sensor['sensor_limit_low'] || $sensor['sensor_current'] > $sensor['sensor_limit'] ? " style = 'color: red' " : '') . '>' . $sensor['sensor_current'] . $sensor_unit . " </ span > " , $overlib_content ). " </ td >
2011-09-17 19:14:44 +00:00
</ tr > " );
2010-12-02 16:45:32 +00:00
}
2011-03-16 23:10:10 +00:00
2010-12-02 16:45:32 +00:00
echo ( " </table> " );
echo ( " </div> " );
2014-02-26 22:33:45 +00:00
echo ( " </div> " );
echo ( " </div> " );
echo ( " </div> " );
2010-12-02 16:45:32 +00:00
}
2011-05-16 12:48:50 +00:00
?>