Index: /trunk/FACT++/www/viewer/index.php
===================================================================
--- /trunk/FACT++/www/viewer/index.php	(revision 17817)
+++ /trunk/FACT++/www/viewer/index.php	(revision 17818)
@@ -6,5 +6,6 @@
 $path = array(
               "cal" => "/daq/caltest/",
-              "raw" => "/daq/raw/"
+              "raw" => "/daq/raw/",
+              "mc"  => "/daq/mctest/",
               );
 
@@ -95,10 +96,10 @@
     */
 
-    function getList($path, $sub, $check)
+    function getList(&$list, $path, $ext, $id, $sub = "")
     {
         $hasdir = false;
 
-        $list = array();
-        foreach (new DirectoryIterator($path."/".$sub) as $file)
+        $dir = new DirectoryIterator($path."/".$sub);
+        foreach ($dir as $file)
         {
            if ($file->isDot())
@@ -108,25 +109,29 @@
 
            if ($file->isDir())
-               $list = array_merge($list, getList($path, $sub."/".$name, $check));
-
-           if ($file->isFile() && $file->isReadable())
-           {
-               if (substr($name, 12)!=".fits.fz")
-                   continue;
-
-               $rc = substr($name, 0, 4)."/".substr($name, 4, 2)."/".substr($name, 6, 2)."-".substr($name, 9, 3);
-
-               $list[$rc] = array_key_exists($rc, $check);
-           }
+               getList($list, $path, $ext, $id, $sub."/".$name);
+
+           if (!$file->isFile() || !$file->isReadable())
+               continue;
+
+           if (substr($name, -strlen($ext))!=$ext)
+               continue;
+
+           $rc = substr($name, 0, 4)."/".substr($name, 4, 2)."/".substr($name, 6, 2)."-".substr($name, 9, 3);
+
+           if (!isset($list[$rc]))
+               $list[$rc] = 0;
+
+           $list[$rc] |= $id;
         }
-
-        return $list;
     }
 
     try
     {
-        $cal = getList($path['cal'], "", array());
-        $raw = getList($path['raw'], "", $cal);
-        ksort($raw);
+        $list = array();
+        getList($list, $path['raw'], ".fits.fz",  1);
+        getList($list, $path['raw'], ".drs.fits", 2);
+        getList($list, $path['cal'], ".fits.fz",  4);
+        getList($list, $path['mc'],  ".fits",     8);
+        ksort($list);
     }
     catch (Exception $e)
@@ -135,5 +140,5 @@
     }
 
-    print(json_encode($raw));
+    print(json_encode($list));
     return;
 }
@@ -178,7 +183,14 @@
 $r = substr($file, 11, 3);
 
-$rootpath = isset($_POST['calibrated']) ? $path['cal'] : $path['raw'];
-
-$filename = $rootpath.$y."/".$m."/".$d."/".$y.$m.$d."_".$r.".fits.fz";
+$rootpath  = isset($_POST['calibrated']) && !isset($_POST['drsfile']) ? $path['cal'] : $path['raw'];
+$extension = isset($_POST['drsfile'])    ? ".drs.fits" : ".fits.fz";
+$filename  = $rootpath.$y."/".$m."/".$d."/".$y.$m.$d."_".$r.$extension;
+
+if (isset($_POST['montecarlo']))
+{
+    $rootpath  = $path['mc'];
+    $extension = ".fits";
+    $filename  = $rootpath.$y.$m.$d."_".$r.$extension;
+}
 
 if (!file_exists($filename))
