Changeset 87 for openweather
- Timestamp:
- 06/01/07 16:59:30 (5 years ago)
- File:
-
- 1 edited
-
openweather/openweather.module (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
openweather/openweather.module
r86 r87 37 37 if ($op == 'create') { 38 38 return user_access('create weather station'); 39 } else {40 print "<p>$op $node</p>";41 39 } 42 40 } … … 177 175 178 176 //$output .= openweather_graph($res); 179 $output .= "<img src='?q=node/".$node->nid."/graph' />"; 177 $output .= "<img src='?q=node/".$node->nid."/graph/temp_out' />"; 178 $output .= "<img src='?q=node/".$node->nid."/graph/rel_hum_out' />"; 179 $output .= "<img src='?q=node/".$node->nid."/graph/rel_pressure' />"; 180 $output .= "<img src='?q=node/".$node->nid."/graph/windspeed' />"; 180 181 181 182 $node->links = $links; … … 321 322 if ($user->uid) { 322 323 $node = node_load($nid); 323 watchdog('INFO', $node->type, WATCHDOG_WARNING);324 324 if ($node->type != 'openweather') 325 325 return false; … … 340 340 $type = arg(3); 341 341 $node = node_load($nid); 342 343 if ($type == null) $type = 'temp_in'; 344 345 $r = db_query("SELECT `time`, $type FROM {openweather_readings} WHERE nid = $nid AND `time` >= ".(time() - (60*60*24)) . " ORDER BY `time`" ); 342 $title = ''; 343 $units = ''; 344 $autoScale = false; 345 346 switch ($type){ 347 case null: 348 case 'temp_out': 349 $type = 'temp_out'; 350 $title = t("Outdoor temperature"); 351 $autoScale = true; 352 $units = 'deg C'; 353 break; 354 355 case 'rel_pressure': 356 $title = t("Relative pressure"); 357 $autoScale = true; 358 break; 359 360 case 'rel_hum_out': 361 $title = t("Outdoor relative humidity"); 362 $autoScale = true; 363 $units = '%'; 364 break; 365 366 case 'windspeed': 367 $title = t("Windspeed"); 368 $autoScale = false; 369 $units = 'kMh'; 370 break; 371 372 default: 373 return; 374 } 375 376 $r = db_query("SELECT time(`time`) AS `timevalue`, unix_timestamp(`time`) as `timestamp`, $type FROM {openweather_readings} WHERE nid = $nid AND `time` >= ".(time() - (60*60*24)) . " ORDER BY `time`" ); 346 377 347 378 #$results = openweather_get_values($node); 348 drupal_set_header('Content-Type: image/png');379 // drupal_set_header('Content-Type: image/png'); 349 380 include 'graph.php'; 350 381 $g = new graph(400, 240); 351 382 $g->parameter['path_to_fonts'] = 'modules/openweather/fonts/'; 352 $g->parameter['title'] = $t ype;383 $g->parameter['title'] = $title; 353 384 $g->parameter['x_label'] = 'Date'; 354 $g->parameter['y_label'] = ''; 385 $g->parameter['y_label'] = $units; 386 387 $g->parameter['x_axis_text'] = 12; 355 388 356 389 $g->x_data = array(); 357 390 $g->y_data = array( $type=>array() ); 358 while ($e = db_fetch_array($r)) { 359 $g->x_data = array_merge($g->x_data, array($e[0]=>$e[0])); 360 $g->y_data[$type][] = $e[1]; 361 } 391 $minY = null; 392 while ($e = db_fetch_object($r)) { 393 $g->x_data = array_merge($g->x_data, array($e->timevalue=>$e->timestamp)); 394 $g->y_data[$type][] = $e->$type; 395 if ($minY == null || $e->$type < $minY) $minY = $e->$type; 396 } 397 398 $g->y_format[$type] = array('colour'=>'red', 'line'=>'brush', 'brush_size'=>2); 399 $g->y_order = array($type); 400 401 if ($autoScale) $g->parameter['y_min_left'] = $minY; 402 362 403 $g->draw(); 363 404 }
Note: See TracChangeset
for help on using the changeset viewer.
