Index: trunk/ippMonitor/raw/czartool_labels.php
===================================================================
--- trunk/ippMonitor/raw/czartool_labels.php	(revision 28447)
+++ trunk/ippMonitor/raw/czartool_labels.php	(revision 28610)
@@ -9,4 +9,10 @@
 
 $db = dbconnect($ID['proj']);
+$PATH = getenv("PATH");
+putenv("PATH=$BINDIR:$PATH");
+
+$LD_LIBRARY_PATH = getenv("LD_LIBRARY_PATH");
+putenv("LD_LIBRARY_PATH=$LIBDIR:$LD_LIBRARY_PATH");
+
 
 if ($ID['menu']) {$myMenu = $ID['menu'];}
@@ -20,15 +26,16 @@
 
 $userSelection = $_GET[selection];
-
 if ($userSelection == "") {$userSelection = $_POST['state'];}
 if ($userSelection == "") {$userSelection = "new";}
 
+// anything to revert?
+$revertServer = $_GET[server];
+$revertStage = $_GET[stage];
+$revertMode = $_GET[revert];
+
+if ($revertStage != "" && $revertMode != "" && $revertServer != "" )
+    exec("czartool_revert.pl -s $revertServer -t $revertStage -o $revertMode", $revertOnOff, $status);
+
 $debug = 0;
-
-$PATH = getenv("PATH");
-putenv("PATH=$BINDIR:$PATH");
-
-$LD_LIBRARY_PATH = getenv("LD_LIBRARY_PATH");
-putenv("LD_LIBRARY_PATH=$LIBDIR:$LD_LIBRARY_PATH");
 
 exec("czartool_getLabels.pl -s stdscience", $stdsLabels, $status);
@@ -43,5 +50,5 @@
 
 $states=array("full","new","drop","wait");
-$stages=array("chip","cam","fake","warp","stack","diff","magic","destreak","dist");
+$stages=array("chip","camera","fake","warp","stack","diff","magic","destreak","dist");
 
 // set up the form
@@ -110,5 +117,5 @@
         getStateAndFaults($db, $label,"warpRun", $state, "warp", $str, $anyFaults);
         write_table_cell($class, '%s',  $anyFaults ? $link : "",  $str);
-        
+
         $link = "stackFailedSkyfile.php?pass=" . $pass . "&proj=" . $proj . "&stackRun.label=" . $label . "&stackRun.state=new";
         getStateAndFaults($db, $label,"stackRun", $state, "stack", $str, $anyFaults);
@@ -126,5 +133,5 @@
         getStateAndFaults($db, $label,"magicDSRun", $state, "magicDS", $str, $anyFaults);
         write_table_cell($class, '%s',  $anyFaults ? $link : "", $str);
-       
+
         $link = $defaultlink;
         getStateAndFaults($db, $label,"distRun", $state, "dist", $str, $anyFaults);
@@ -151,20 +158,30 @@
     // set up table columns
     $class = "list";
-    //echo "<table class=$class BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"5\">\n";
     echo "<table class=$class >\n";
+    echo "<tr><td></td>\n";
+
+    write_header_cell($class, "");
+    write_header_cell($class, "");
+    foreach ($stages as &$stage) {
+
+        $revertOnOff=array();
+        if ($stage == "destreak" or $stage == "dist") $server = "distribution";
+        else $server = "stdscience";
+        exec("czartool_revert.pl -s $server -t $stage", $revertOnOff, $status);
+        $link = "czartool_labels.php?pass=" . $pass . "&proj=" . $proj . "&server=" . $server . "&stage=" . $stage . "&revert=";
+        if($revertOnOff[0] == "off") {$label =  "Start reverts";$link = $link . "on";}
+        if($revertOnOff[0] == "on") {$label = "Stop reverts";$link = $link . "off";}
+        unset($revertOnOff);
+        write_table_cell($class, '%s', $link, $label);
+    }
+
+    echo "</tr>\n";
     echo "<tr><td></td>\n";
     write_header_cell($class, "label");
     write_header_cell($class, "distributing?");
-    //    echo "<td class=\"$class\"><a href=\"$link\"> $myValue </a></td>\n";
-    //    echo "<th class=\"$class\"><a href=\"czartool.php\">label</th>\n";
-
-    foreach ($stages as &$stage) {write_header_cell($class, $stage);}
-    //foreach ($stages as &$stage) {
-
-    //  $link = "czartool.php?pass=" . $pass . "&proj=" . $proj . "&label=" . $stage;
-    // echo "<th class=\"$class\"><a href=\"$link\">$stage</th>\n";
-    // }
+    foreach ($stages as &$stage) write_header_cell($class, $stage);
 
     echo "</tr>\n";
+    echo "<tr><td></td>\n";
 
     // write rows
@@ -176,5 +193,4 @@
             if ($stdsLabel == $distLabel) { $distributing = true; break;}
         }
-
 
         // create link to label summary page for each label
@@ -204,5 +220,5 @@
         getStateAndFaults($db, $stdsLabel,"warpRun", $selectedState, "warp", $str, $anyFaults);
         write_table_cell($class, '%s',  $anyFaults ? $link : "",  $str);
-        
+
         $link = "stackFailedSkyfile.php?pass=" . $pass . "&proj=" . $proj . "&stackRun.label=" . $stdsLabel . "&stackRun.state=new";
         getStateAndFaults($db, $stdsLabel,"stackRun", $selectedState, "stack", $str, $anyFaults);
@@ -220,5 +236,5 @@
         getStateAndFaults($db, $stdsLabel,"magicDSRun", $selectedState, "magicDS", $str, $anyFaults);
         write_table_cell($class, '%s',  $anyFaults ? $link : "", $str);
-       
+
         $link = $defaultlink;
         getStateAndFaults($db, $stdsLabel,"distRun", $selectedState, "dist", $str, $anyFaults);
@@ -228,8 +244,10 @@
     }
 
+    echo "</tr>\n";
     echo "</table>\n";
 
     echo "<p> - Click on a label to see all states for that label (full, new, drop etc)<br>";
     echo "- Click on a fault to find logfile </p>";
+    echo "- Click on column header to turn reverts on or off </p>";
 }
 
