gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r14403 - gauger


From: gnunet
Subject: [GNUnet-SVN] r14403 - gauger
Date: Tue, 15 Feb 2011 03:08:00 +0100

Author: bartpolot
Date: 2011-02-15 03:08:00 +0100 (Tue, 15 Feb 2011)
New Revision: 14403

Modified:
   gauger/params.php
   gauger/plot.php
Log:
Added range plotting, input sanitation


Modified: gauger/params.php
===================================================================
--- gauger/params.php   2011-02-14 19:43:48 UTC (rev 14402)
+++ gauger/params.php   2011-02-15 02:08:00 UTC (rev 14403)
@@ -1,12 +1,17 @@
 <?php
 
-// TODO: refactor into get_param function
-function get_param($name) {
+function get_param($name, $default = '', $persist = FALSE) {
     if (array_key_exists($name, $_REQUEST)) {
-        return $_REQUEST[$name];
+        $ret = escapeshellcmd($_REQUEST[$name]);
+        if($persist) {
+            $_SESSION[$name] = $ret;
+        }
+    } else if (array_key_exists($name, $_SESSION)) {
+        $ret = $_SESSION[$name];
     } else {
-        return "";
+        $ret = $default;
     }
+    return $ret;
 }
 
 session_start();

Modified: gauger/plot.php
===================================================================
--- gauger/plot.php     2011-02-14 19:43:48 UTC (rev 14402)
+++ gauger/plot.php     2011-02-15 02:08:00 UTC (rev 14403)
@@ -5,11 +5,19 @@
  * @param g: graph name
  * @return: stream representing a png graph
  */
-function plot($g = array(), $h = array()) {
+function plot($g, $h) {
     global $hosts;
 
     $cmd =  'load "header.gp";';
     if(!empty($g)) $cmd .=  ' set ylabel "' . get_counter_unit($g[0]) . '";';
+
+    foreach (Array('x_max', 'x_min', 'y_max', 'y_min') as $param_name) {
+        $$param_name = get_param($param_name, '', TRUE);
+        if(!is_numeric($$param_name)) $$param_name = '*';
+    }
+    $cmd .= " set xrange [$x_min:$x_max];";
+    $cmd .= " set yrange [$y_min:$y_max];";
+
     $cmd .= ' plot';
 
     $ch = count($h);




reply via email to

[Prev in Thread] Current Thread [Next in Thread]