Index: trunk/MagicSoft/Mars/datacenter/db/plotinclude.php
===================================================================
--- trunk/MagicSoft/Mars/datacenter/db/plotinclude.php	(revision 8421)
+++ trunk/MagicSoft/Mars/datacenter/db/plotinclude.php	(revision 8464)
@@ -41,4 +41,12 @@
 }
 
+function CheckQuery($query)
+{
+    if (strpos($query, " WHERE ")==FALSE)
+        return " WHERE ";
+    else
+        return " AND ";
+}
+
 function GetQuery($tables, $joins, $set)
 {
@@ -58,10 +66,10 @@
         $_GET["primstop"]="";
     $primstop=$_GET["primstop"];
-    if (empty($_GET[$column."Start"]))
-        $_GET[$column."Start"]="";
-    $start1=$_GET[$column."Start"];
-    if (empty($_GET[$column."Stop"]))
-        $_GET[$column."Stop"]="";
-    $stop1=$_GET[$column."Stop"];
+    if (empty($_GET["Start"]))
+        $_GET["Start"]="";
+    $start1=$_GET["Start"];
+    if (empty($_GET["Stop"]))
+        $_GET["Stop"]="";
+    $stop1=$_GET["Stop"];
 
     $query="SELECT " . $table . "." . $primary . ", ";
@@ -76,10 +84,10 @@
             $_GET[$primary."Col2"]="";
         $column2=$_GET[$primary."Col2"];
-        if (empty($_GET[$column2."Start2"]))
-            $_GET[$column2."Start2"]="";
-        $start2=$_GET[$column2."Start2"];
-        if (empty($_GET[$column2."Stop2"]))
-            $_GET[$column2."Stop2"]="";
-        $stop2=$_GET[$column2."Stop2"];
+        if (empty($_GET["Start2"]))
+            $_GET["Start2"]="";
+        $start2=$_GET["Start2"];
+        if (empty($_GET["Stop2"]))
+            $_GET["Stop2"]="";
+        $stop2=$_GET["Stop2"];
 
         if ($column2==$primary)
@@ -90,31 +98,60 @@
     $query.=" FROM " . $table;
     $query.=$joins[$primary];
-    if (!empty($primstart) && !empty($primstop))
-        $query.=" WHERE " . $table . "." . $primary . " BETWEEN " . $primstart . " AND " . $primstop;
 
-    if (!empty($start1) && !empty($stop1))
+    if (!empty($primstart))
+        $query.= " WHERE " . $table . "." . $primary . " > " . $primstart;
+
+    if (!empty($primstop))
+        $query.= CheckQuery($query) . $table . "." . $primary . " < " . $primstop;
+
+    if (!empty($start1))
+        $query.= CheckQuery($query) . GetTable($table, $column) . " > " . $start1;
+
+    if (!empty($stop1))
+        $query.= CheckQuery($query) . GetTable($table, $column) . " < " . $stop1;
+
+    if ($_GET["plot"]=="val")
     {
-        if (strpos($query, " WHERE ")==FALSE)
-            $query.=" WHERE " . $column . " BETWEEN " . $start1 . " AND " . $stop1;
-        else
-            $query.=" AND " . $column . " BETWEEN " . $start1 . " AND " . $stop1;
-    }
+        if (!empty($start2))
+            $query.= CheckQuery($query) . GetTable($table, $column2) . " > " . $start2;
 
-    if ($_GET["plot"]=="val" && !empty($start2) && !empty($stop2))
-    {
-        if (strpos($query, " WHERE ")==FALSE)
-            $query.=" WHERE " . $column2 . " BETWEEN " . $start2 . " AND " . $stop2;
-        else
-            $query.=" AND " . $column2 . " BETWEEN " . $start2 . " AND " . $stop2;
+        if (!empty($stop2))
+            $query.= CheckQuery($query) . GetTable($table, $column2) . " < " . $stop2;
     }
 
     if (!empty($set) && !empty($_GET[$set]))
-    {
-        if (strpos($query, " WHERE ")==FALSE)
-            $query .= " WHERE ";
-        else
-            $query.=" AND ";
-        $query.= $table . "." . $primary . " IN (" . str_replace(" ", ",", $_GET[$set]) . ") ";
-    }
+        $query.= CheckQuery($query) . $table . "." . $primary . " IN (" . str_replace(" ", ",", $_GET[$set]) . ") ";
+
+    if (empty($_GET[$primary."Col3"]))
+        $_GET[$primary."Col3"]="";
+    $column3=$_GET[$primary."Col3"];
+    if (empty($_GET["Start3"]))
+        $_GET["Start3"]="";
+    $start3=$_GET["Start3"];
+    if (empty($_GET["Stop3"]))
+        $_GET["Stop3"]="";
+    $stop3=$_GET["Stop3"];
+
+    if (!empty($start3))
+        $query.= CheckQuery($query) . GetTable($table, $column3) . " > " . $start3;
+
+    if (!empty($stop3))
+        $query.= CheckQuery($query) . GetTable($table, $column3) . " < " . $stop3;
+
+    if (empty($_GET[$primary."Col4"]))
+        $_GET[$primary."Col4"]="";
+    $column4=$_GET[$primary."Col4"];
+    if (empty($_GET["Start4"]))
+        $_GET["Start4"]="";
+    $start4=$_GET["Start4"];
+    if (empty($_GET["Stop4"]))
+        $_GET["Stop4"]="";
+    $stop4=$_GET["Stop4"];
+
+    if (!empty($start4))
+        $query.= CheckQuery($query) . GetTable($table, $column4) . " > " . $start4;
+
+    if (!empty($stop4))
+        $query.= CheckQuery($query) . GetTable($table, $column4) . " < " . $stop4;
 
     return $query;
