= \"$start\"";
}
if(isset($HTTP_GET_VARS['normalize'])){
if(strcmp($HTTP_GET_VARS['normalize'],"true")==0){
$NORMALIZE=1;
}
else{
$NORMALIZE=0;
}
}
else{
$NORMALIZE=0;
}
if(isset($HTTP_GET_VARS['showdata'])){
if(strcmp($HTTP_GET_VARS['showdata'],"true")==0){
$SHOWDATA=1;
}
else{
$SHOWDATA=0;
}
}
else{
$SHOWDATA=0;
}
if(isset($HTTP_GET_VARS['showpoints'])){
if(strcmp($HTTP_GET_VARS['showpoints'],"true")==0){
$SHOWPOINTS=1;
}
else{
$SHOWPOINTS=0;
}
}
else{
$SHOWPOINTS=0;
}
/********************************
*
* printing error image if necessary
*
********************************/
if($URL_ERROR==1){
printErrorMsg("URL Error: $error_msg. Could not draw graph.", $DEBUG);
}
/********************************
*
* creating the graph
*
********************************/
// Callback formatting function for the X-scale to convert timestamps
// to hour and minutes.
function TimeCallback( $aVal) {
return Date ('m-d-y', $aVal);
}
$graph = new Graph($xsize,$ysize);
$graph->SetScale("datelin");
$graph->tabtitle->Set(" {$meaningfull_names["$name"]} ");
$graph->xaxis->SetLabelAngle(90);
$graph->SetMargin(70,30,30,110+sizeof($measure)*18);
$graph->xaxis->title->Set("");
$graph->xaxis->title->SetMargin(80);
$graph->yaxis->title->Set("");
$graph->yaxis->title->SetMargin(30);
$graph->SetFrame(false);
$graph->SetMarginColor("White");
$graph->legend->SetShadow('gray@0.4',5);
$graph->legend->SetAbsPos($xsize*.2,$ysize-(40+(sizeof($measure)*18)),'top','left');
$graph->legend->hide(false);
$graph->ygrid->SetFill(true,'#EFEFEF@0.5','#BBCCFF@0.5');
$graph->xgrid->Show();
$graph->xaxis->scale->SetTimeAlign(MONTHADJ_1);
$graph->xaxis-> SetLabelFormatCallback( 'TimeCallback');
/********************************
*
* executing the query by...
* magic!!!
*
********************************/
$RELEVANT_DATA=0;
$data_max=array();
$index=0;
$xdata=array();
$values=array();
foreach($measure as $m){
$values["$m"]=array();
$data_max["$m"]=-1;
}
$data_arr=array();
$line_arr=array();
$color_arr = array("red","blue","green","orange","black", "brown","gray");
$night_table_statement = "SELECT * FROM night WHERE machine=$machine_id $start_query $end_query ORDER BY added DESC";
if($DEBUG){
print "night_table_statement: $night_table_statement
\n";
}
$night_table_query = mysql_query($night_table_statement) or die(mysql_error());
while($row = mysql_fetch_array($night_table_query)){
preg_match("/(\d\d\d\d)\-(\d\d)\-(\d\d)\s(\d\d)\:(\d\d)\:(\d\d)/", $row['added'], $pjs);
$seconds = mktime($pjs[4], $pjs[5], $pjs[6], $pjs[2], $pjs[3],$pjs[1]);
array_push($xdata, $seconds);
foreach($measure as $m){
if(is_numeric($row["$m"])){
$RELEVANT_DATA++;
array_push($values["$m"], (float)$row["$m"]);
if($DEBUG){
print "{$row["$m"]}
\n";
}
if($row["$m"]>$data_max["$m"]){
$data_max["$m"]=$row["$m"];
}#end if
}
} #end foreach
}#end foreach
mysql_free_result($night_table_query);
if($NORMALIZE){
foreach ($measure as $m){
for($i=0; $iSetLegend("{$meaningfull_names["$m"]}");
if($SHOWDATA==1){
$line_arr[$index]->value->Show();
}
if($SHOWPOINTS==1){
$line_arr[$index]->mark->SetType(MARK_UTRIANGLE);
}
$color_index=$index % sizeof($color_arr);
$line_arr[$index]->SetColor($color_arr[$color_index]);
$graph->Add($line_arr[$index]);
$index++;
}
if($RELEVANT_DATA==0){
printErrorMsg("Error: Graph of $measure[0] contains no data", $DEBUG);
}
if($DEBUG){
print "Finished!
$RELEVANT_DATA
\n";
}
else{
$graph->Stroke();
}
?>