osx fixes
osx fixes

file:a/.gitignore -> file:b/.gitignore
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
 *.wav
 *.pyc
 /nbproject/private/
+/output.txt

--- /dev/null
+++ b/.idea/dictionaries/Madoka.xml
@@ -1,1 +1,10 @@
-
+<component name="ProjectDictionaryState">
+  <dictionary name="Madoka">
+    <words>
+      <w>tgid</w>
+      <w>timefrom</w>
+      <w>timeto</w>
+      <w>tzoffset</w>
+    </words>
+  </dictionary>
+</component>

--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -2,10 +2,7 @@
 <project version="4">
   <component name="ChangeListManager">
     <list default="true" id="f90ee5b5-97e4-47ec-9b14-d4f4e896f100" name="Default" comment="">
-      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
-      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/calls.json.php" afterPath="$PROJECT_DIR$/calls.json.php" />
-      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/common.inc.php" afterPath="$PROJECT_DIR$/common.inc.php" />
-      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/db.sql" afterPath="$PROJECT_DIR$/db.sql" />
+      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/output.txt" afterPath="$PROJECT_DIR$/output.txt" />
       <change type="MODIFICATION" beforePath="$PROJECT_DIR$/viewcalls.php" afterPath="$PROJECT_DIR$/viewcalls.php" />
     </list>
     <ignored path="scannr.iws" />
@@ -26,13 +23,12 @@
   <component name="ExecutionTargetManager" SELECTED_TARGET="default_target" />
   <component name="FileEditorManager">
     <leaf>
-      <file leaf-file-name="viewcalls.php" pinned="false" current="false" current-in-tab="false">
+      <file leaf-file-name="viewcalls.php" pinned="false" current="true" current-in-tab="true">
         <entry file="file://$PROJECT_DIR$/viewcalls.php">
           <provider selected="true" editor-type-id="text-editor">
-            <state line="2" column="13" selection-start="46" selection-end="46" vertical-scroll-proportion="36.153847">
+            <state line="41" column="69" selection-start="1388" selection-end="1388" vertical-scroll-proportion="1.2659575">
               <folding>
                 <element signature="e#255#287#0" expanded="true" />
-                <element signature="e#341#363#0" expanded="true" />
               </folding>
             </state>
           </provider>
@@ -41,16 +37,16 @@
       <file leaf-file-name="common.inc.php" pinned="false" current="false" current-in-tab="false">
         <entry file="file://$PROJECT_DIR$/common.inc.php">
           <provider selected="true" editor-type-id="text-editor">
-            <state line="34" column="0" selection-start="1179" selection-end="1179" vertical-scroll-proportion="-22.23077">
+            <state line="60" column="117" selection-start="2262" selection-end="2262" vertical-scroll-proportion="-39.23077">
               <folding />
             </state>
           </provider>
         </entry>
       </file>
-      <file leaf-file-name="calls.json.php" pinned="false" current="true" current-in-tab="true">
+      <file leaf-file-name="calls.json.php" pinned="false" current="false" current-in-tab="false">
         <entry file="file://$PROJECT_DIR$/calls.json.php">
           <provider selected="true" editor-type-id="text-editor">
-            <state line="2" column="9" selection-start="42" selection-end="42" vertical-scroll-proportion="-1.2507788">
+            <state line="72" column="41" selection-start="2843" selection-end="2843" vertical-scroll-proportion="-43.153847">
               <folding />
             </state>
           </provider>
@@ -78,10 +74,9 @@
   </component>
   <component name="PhpWorkspaceProjectConfiguration" backward_compatibility_performed="true" />
   <component name="ProjectFrameBounds">
-    <option name="x" value="57" />
-    <option name="y" value="-8" />
-    <option name="width" value="1391" />
-    <option name="height" value="916" />
+    <option name="x" value="619" />
+    <option name="width" value="825" />
+    <option name="height" value="600" />
   </component>
   <component name="ProjectLevelVcsManager" settingsEditedManually="true">
     <OptionsSetting value="true" id="Add" />
@@ -109,7 +104,6 @@
       <sortByType />
     </navigator>
     <panes>
-      <pane id="Scope" />
       <pane id="ProjectPane">
         <subPane>
           <PATH>
@@ -118,18 +112,9 @@
               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
             </PATH_ELEMENT>
           </PATH>
-          <PATH>
-            <PATH_ELEMENT>
-              <option name="myItemId" value="scannr" />
-              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
-            </PATH_ELEMENT>
-            <PATH_ELEMENT>
-              <option name="myItemId" value="scannr" />
-              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
-            </PATH_ELEMENT>
-          </PATH>
         </subPane>
       </pane>
+      <pane id="Scope" />
     </panes>
   </component>
   <component name="PropertiesComponent">
@@ -137,8 +122,8 @@
     <property name="WebServerToolWindowFactoryState" value="false" />
     <property name="options.lastSelected" value="project.propVCSSupport.Mappings" />
     <property name="last_opened_file_path" value="$PROJECT_DIR$/../busui/myway/myway_timeliness.php" />
+    <property name="options.splitter.details.proportions" value="0.2" />
     <property name="options.searchVisible" value="true" />
-    <property name="options.splitter.details.proportions" value="0.2" />
   </component>
   <component name="RunManager">
     <configuration default="true" type="PHPUnitRunConfigurationType" factoryName="PHPUnit">
@@ -150,7 +135,7 @@
     </configuration>
     <configuration default="true" type="JavascriptDebugSession" factoryName="Local">
       <JSDebuggerConfigurationSettings>
-        <option name="engineId" />
+        <option name="engineId" value="embedded" />
         <option name="fileUrl" />
       </JSDebuggerConfigurationSettings>
       <method />
@@ -178,32 +163,33 @@
   </component>
   <component name="TaskManager">
     <task active="true" id="Default" summary="Default task">
+      <changelist id="f90ee5b5-97e4-47ec-9b14-d4f4e896f100" name="Default" comment="" />
       <created>1350026709905</created>
       <updated>1350026709905</updated>
     </task>
     <servers />
   </component>
   <component name="ToolWindowManager">
-    <frame x="57" y="-8" width="1391" height="916" extended-state="6" />
-    <editor active="true" />
+    <frame x="619" y="0" width="825" height="600" extended-state="0" />
+    <editor active="false" />
     <layout>
-      <window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
+      <window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
       <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
-      <window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
+      <window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
       <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="true" content_ui="tabs" />
-      <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.24981189" sideWeight="0.6706349" order="0" side_tool="false" content_ui="combo" />
+      <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.44036698" sideWeight="0.6706349" order="0" side_tool="false" content_ui="combo" />
       <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
-      <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" />
-      <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32936507" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" />
+      <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
+      <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32936507" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
       <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
-      <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
+      <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
       <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
       <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
+      <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
       <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
-      <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
       <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
+      <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
       <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
-      <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
     </layout>
   </component>
   <component name="VcsContentAnnotationSettings">
@@ -259,76 +245,84 @@
     <breakpoint-manager />
   </component>
   <component name="editorHistoryManager">
-    <entry file="file://$PROJECT_DIR$/trunklog.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
-          <folding />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/../disclosr/include/template.inc.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="72" column="93" selection-start="2545" selection-end="2635" vertical-scroll-proportion="0.43404254">
-          <folding />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/../disclosr/include/common.inc.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
-          <folding />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://C:/tmp/h5bp-html5-boilerplate-2279296/index.html">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="38" column="11" selection-start="1245" selection-end="1982" vertical-scroll-proportion="0.93352604">
-          <folding />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/../busui/myway/myway_timeliness.php">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="27" column="5" selection-start="1003" selection-end="1018" vertical-scroll-proportion="26.346153">
-          <folding />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/scannr.py">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="66" column="23" selection-start="2084" selection-end="2084" vertical-scroll-proportion="0.0">
-          <folding />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/snd.py">
-      <provider selected="true" editor-type-id="text-editor">
-        <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
-          <folding />
-        </state>
-      </provider>
-    </entry>
     <entry file="file://$PROJECT_DIR$/viewcalls.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state line="2" column="13" selection-start="46" selection-end="46" vertical-scroll-proportion="36.153847">
+        <state line="2" column="13" selection-start="46" selection-end="46" vertical-scroll-proportion="0.0">
           <folding>
             <element signature="e#255#287#0" expanded="true" />
-            <element signature="e#341#363#0" expanded="true" />
           </folding>
         </state>
       </provider>
     </entry>
     <entry file="file://$PROJECT_DIR$/common.inc.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state line="34" column="0" selection-start="1179" selection-end="1179" vertical-scroll-proportion="-22.23077">
+        <state line="34" column="0" selection-start="1179" selection-end="1179" vertical-scroll-proportion="0.0">
           <folding />
         </state>
       </provider>
     </entry>
     <entry file="file://$PROJECT_DIR$/calls.json.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state line="2" column="9" selection-start="42" selection-end="42" vertical-scroll-proportion="-1.2507788">
+        <state line="2" column="9" selection-start="42" selection-end="42" vertical-scroll-proportion="0.0">
           <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/trunklog.php">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0" />
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/../disclosr/include/template.inc.php">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="72" column="93" selection-start="2545" selection-end="2635" vertical-scroll-proportion="0.43404254" />
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/../disclosr/include/common.inc.php">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0" />
+      </provider>
+    </entry>
+    <entry file="file://C:/tmp/h5bp-html5-boilerplate-2279296/index.html">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="38" column="11" selection-start="1245" selection-end="1982" vertical-scroll-proportion="0.93352604" />
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/../busui/myway/myway_timeliness.php">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="27" column="5" selection-start="1003" selection-end="1018" vertical-scroll-proportion="26.346153" />
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/scannr.py">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="66" column="23" selection-start="2084" selection-end="2084" vertical-scroll-proportion="0.0" />
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/snd.py">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0" />
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/common.inc.php">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="60" column="117" selection-start="2262" selection-end="2262" vertical-scroll-proportion="-39.23077">
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/calls.json.php">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="72" column="41" selection-start="2843" selection-end="2843" vertical-scroll-proportion="-43.153847">
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/viewcalls.php">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="41" column="69" selection-start="1388" selection-end="1388" vertical-scroll-proportion="1.2659575">
+          <folding>
+            <element signature="e#255#287#0" expanded="true" />
+          </folding>
         </state>
       </provider>
     </entry>

--- a/calls.json.php
+++ b/calls.json.php
@@ -1,70 +1,78 @@
 <?php
 include('common.inc.php');
-function getSensorValuesByHour($sensorID, $timeFrom, $timeTo) {
+function getTGIDValuesByHour($TGID, $timeFrom, $timeTo) {
     global $conn;
-    $sth = $conn->prepare( 'select min(call_timestamp) as time, count(*), min(length), max(length), avg(length), stddev(length) from recordings
+    $sth = $conn->prepare( 'select tgid, min(call_timestamp) as time, count(*), min(length), max(length), avg(length), stddev(length) from recordings
             group by tgid, date_trunc(\'hour\', call_timestamp) order by time');
 
-    $sth->execute( Array($sensorID, $timeFrom, $timeTo));
-    return  $sth->fetchAll();
+    $sth->execute( );
+    //Array($TGID, $timeFrom, $timeTo)
+        return  $sth->fetchAll();
+
+
 }
 
-function getSensorValuesByDay($sensorID, $dayFrom, $dayTo) {
+function getTGIDValuesByDay($TGID, $dayFrom, $dayTo) {
     global $conn;
     $sth = $conn->prepare('select min(time) as time, min(value), max(value), avg(value), stddev(value) from sensor_values where sensor_id = ?
             group by sensor_id, date_trunc(\'day\', time) order by time');
 
-    $sth->execute( Array($sensorID));
+    $sth->execute( Array($TGID));
     return  $sth->fetchAll();
 }
-function getSensorDataYears($sensorID, $timeFrom, $timeTo) {
+function getTGIDDataYears($TGID, $timeFrom, $timeTo) {
     global $conn;
     $sth = $conn->prepare("select distinct extract('year' from call_timestamp) as year from recordings where tgid = ? order by year");
 
-    $sth->execute(Array($sensorID));
+    $sth->execute(Array($TGID));
     return  $sth->fetchAll();
 }
 
-function getSensorDataMonths($sensorID, $timeFrom, $timeTo) {
+function getTGIDDataMonths($TGID, $timeFrom, $timeTo) {
     global $conn;
     $sth = $conn->prepare("select distinct extract('month' from call_timestamp) as month, extract('year' from call_timestamp) as year from recordings where tgid = ?  order by year, month");
 
-    $sth->execute(Array($sensorID));
+    $sth->execute(Array($TGID));
     return  $sth->fetchAll();
 }
 
-function getSensorDataDays($sensorID, $timeFrom, $timeTo) {
+function getTGIDDataDays($TGID, $timeFrom, $timeTo) {
     global $conn;
     $sth = $conn->prepare("select distinct extract('day' from call_timestamp) as day, extract('month' from call_timestamp) as month, extract('year' from call_timestamp) as year from recordings where tgid = ?  order by year,month,day");
 
 
-    $sth->execute(Array($sensorID));
+    $sth->execute(Array($TGID));
     return  $sth->fetchAll();
 }
-$action = $_REQUEST['action'];
-    $sensorID = $_REQUEST['tgid'];
-$timefrom = $_REQUEST['from'];
-$timeto = $_REQUEST['to'];
-if ($action = "data_description") {
+$action = (isset($_REQUEST['action']) ? $_REQUEST['action'] : '');
+$TGID = (isset($_REQUEST['tgid']) ? $_REQUEST['tgid'] : '');
+$timefrom = (isset($_REQUEST['from']) ? $_REQUEST['from'] : '');
+$timeto = (isset($_REQUEST['to']) ? $_REQUEST['to'] : '');
+
+if ($action == "data_description") {
     $timefrom = strtotime($timefrom);
     $timeto = strtotime($timeto);
-    $years = getSensorDataYears($sensorID, $timefrom, $timeto);
+    $years = getTGIDDataYears($TGID, $timefrom, $timeto);
 
-    $months = getSensorDataMonths($sensorID, $timefrom, $timeto);
-    $days = getSensorDataDays($sensorID, $timefrom, $timeto);
+    $months = getTGIDDataMonths($TGID, $timefrom, $timeto);
+    $days = getTGIDDataDays($TGID, $timefrom, $timeto);
 
     echo json_encode(Array("years" => $years, "months" => $months, "days" => $days
                     ));
 }
 
 
-if ($action = "graph") {
-    $values = getSensorValuesByHour($sensorID, $timefrom, $timeto);
-    $label = $sensorID;
+if (strpos($action,"graph") !== false) {
+    $values = getTGIDValuesByHour($TGID, $timefrom, $timeto);
+    $label = $TGID;
     $data = Array();
     $tzoffset = get_timezone_offset("UTC");
     foreach ($values as $value) {
-        $data[] = Array((strtotime($value['time']) + $tzoffset) * 1000, intval($value['avg']));
+        if ($action == "graphlength") {
+        $data[$value['tgid']][] = Array((strtotime($value['time']) + $tzoffset) * 1000, intval($value['avg']));
+        } else if ($action == "graphcount") {
+            $data[$value['tgid']][] = Array((strtotime($value['time']) + $tzoffset) * 1000, intval($value['count']));
+        }
     }
    echo json_encode(Array("label" => $label, "data" => $data,
             "previous" => Array(
@@ -78,5 +86,7 @@
     );
 }
 
+
+
 ?>
 

--- a/common.inc.php
+++ b/common.inc.php
@@ -10,6 +10,7 @@
 catch(Exception $e) {
     die('Unknown error in ' . __FILE__ . '.');
 }
+$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
 $basePath = "";
 $DATA_DIR = "./data";
 
@@ -57,7 +58,7 @@
     <link rel="stylesheet" href="css/main.css">
     <script src="js/vendor/modernizr-2.6.1.min.js"></script>
     <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
-    <script>window.jQuery || document.write('<script src="js/vendor/jquery-1.8.0.min.js"><\/script>')</script>
+    <!--<script>window.jQuery || document.write('<script src="js/vendor/jquery-1.8.0.min.js"><\/script>')</script>-->
     <script type="text/javascript" src="<?php echo $basePath ?>js/flotr2/flotr2.js"></script>
     <script src="js/plugins.js"></script>
     <script src="js/main.js"></script>

file:a/db.sql -> file:b/db.sql
--- a/db.sql
+++ b/db.sql
@@ -4,7 +4,7 @@
 
 -- Dumped from database version 9.1.2
 -- Dumped by pg_dump version 9.1.2
--- Started on 2012-10-14 19:22:29
+-- Started on 2012-10-21 18:20:20
 
 SET statement_timeout = 0;
 SET client_encoding = 'UTF8';
@@ -11231,6 +11231,1305 @@
 2012-10-12-1350026755.15-demo.wav	10106	SYD 7	CanberraMtAinsli	2012-10-12 18:25:58.62+11	293000
 2012-10-12-1350026786.08-demo.wav	10106	SYD 7	CanberraMtAinsli	2012-10-12 18:26:29.496+11	288010
 2012-10-12-1350026789.61-demo.wav	10106	SYD 7	CanberraMtAinsli	2012-10-12 18:26:32.545+11	247944
+2012-10-20-1350690847.07-demo.wav	44040		CanberraBlackMnt	2012-10-20 10:54:14.169+11	596104
+2012-10-20-1350690854.64-demo.wav	30001	FARSHCO	CanberraMtAinsli	2012-10-20 10:54:20.472+11	491656
+2012-10-20-1350690860.83-demo.wav	30001	FARSHCO	CanberraMtAinsli	2012-10-20 10:54:24.09+11	274568
+2012-10-20-1350690876.41-demo.wav	44040		CanberraBlackMnt	2012-10-20 10:54:49.849+11	1128584
+2012-10-20-1350690890.53-demo.wav	44040		CanberraBlackMnt	2012-10-20 10:54:53.884+11	280654
+2012-10-20-1350690895.51-demo.wav	40067		CanberraMtAinsli	2012-10-20 10:55:01.522+11	503820
+2012-10-20-1350690901.74-demo.wav	40067		CanberraMtAinsli	2012-10-20 10:55:06.197+11	374916
+2012-10-20-1350690932.25-demo.wav	44028		CanberraBlackMnt	2012-10-20 10:55:36.455+11	352392
+2012-10-20-1350690936.71-demo.wav	44028		CanberraBlackMnt	2012-10-20 10:55:40.012+11	274568
+2012-10-20-1350690940.29-demo.wav	44028		CanberraBlackMnt	2012-10-20 10:55:43.936+11	305288
+2012-10-20-1350690945.0-demo.wav	44028		CanberraBlackMnt	2012-10-20 10:55:51.114+11	509046
+2012-10-20-1350690991.21-demo.wav	30001	FARSHCO	CanberraMtAinsli	2012-10-20 10:56:36.008+11	398598
+2012-10-20-1350690996.47-demo.wav	30001	FARSHCO	CanberraMtAinsli	2012-10-20 10:56:38.943+11	209032
+2012-10-20-1350691001.5-demo.wav	30001	FARSHCO	CanberraMtAinsli	2012-10-20 10:56:49.048+11	622728
+2012-10-20-1350691011.2-demo.wav	30001	FARSHCO	CanberraMtAinsli	2012-10-20 10:56:55.078+11	325768
+2012-10-20-1350691016.53-demo.wav	30001	FARSHCO	CanberraMtAinsli	2012-10-20 10:57:10.868+11	1198208
+2012-10-20-1350691146.81-demo.wav	40067		CanberraMtAinsli	2012-10-20 10:59:10.023+11	268306
+2012-10-20-1350691201.52-demo.wav	44040		CanberraBlackMnt	2012-10-20 11:00:04.821+11	272762
+2012-10-20-1350691207.93-demo.wav	44040		CanberraBlackMnt	2012-10-20 11:00:17.521+11	801090
+2012-10-20-1350691218.5-demo.wav	44040		CanberraBlackMnt	2012-10-20 11:00:23.344+11	403564
+2012-10-20-1350691224.03-demo.wav	44040		CanberraBlackMnt	2012-10-20 11:00:33.316+11	780188
+2012-10-20-1350691233.81-demo.wav	44040		CanberraBlackMnt	2012-10-20 11:01:41.158+11	5644424
+2012-10-20-1350691320.37-demo.wav	44040		CanberraBlackMnt	2012-10-20 11:02:13.18+11	1077134
+2012-10-20-1350691333.36-demo.wav	44040		CanberraBlackMnt	2012-10-20 11:02:16.53+11	266088
+2012-10-20-1350691336.71-demo.wav	44040		CanberraBlackMnt	2012-10-20 11:02:22.003+11	446422
+2012-10-20-1350691403.13-demo.wav	40082	SES Ops 5	CanberraBlackMnt	2012-10-20 11:03:26.348+11	270472
+2012-10-20-1350691409.35-demo.wav	40082	SES Ops 5	CanberraBlackMnt	2012-10-20 11:03:36.4+11	594056
+2012-10-20-1350691416.61-demo.wav	40082	SES Ops 5	CanberraBlackMnt	2012-10-20 11:03:38.841+11	188552
+2012-10-20-1350691419.23-demo.wav	40082	SES Ops 5	CanberraBlackMnt	2012-10-20 11:03:43.34+11	346248
+2012-10-20-1350691423.81-demo.wav	40082	SES Ops 5	CanberraBlackMnt	2012-10-20 11:03:50.058+11	526472
+2012-10-20-1350691820.79-demo.wav	40067		CanberraBlackMnt	2012-10-20 11:10:24.047+11	273356
+2012-10-20-1350691825.71-demo.wav	40067		CanberraBlackMnt	2012-10-20 11:10:31.8+11	508040
+2012-10-20-1350691831.97-demo.wav	40067		CanberraBlackMnt	2012-10-20 11:10:40.43+11	712604
+2012-10-20-1350691840.57-demo.wav	40067		CanberraBlackMnt	2012-10-20 11:10:43.638+11	260232
+2012-10-20-1350691913.69-demo.wav	44014		CanberraBlackMnt	2012-10-20 11:12:00.323+11	558204
+2012-10-20-1350691920.55-demo.wav	44014		CanberraBlackMnt	2012-10-20 11:12:03.657+11	260232
+2012-10-20-1350691924.53-demo.wav	44014		CanberraBlackMnt	2012-10-20 11:12:22.891+11	1530026
+2012-10-20-1350692102.16-demo.wav	44014		CanberraBlackMnt	2012-10-20 11:15:08.182+11	505076
+2012-10-20-1350692108.31-demo.wav	44014		CanberraBlackMnt	2012-10-20 11:15:12.202+11	327816
+2012-10-20-1350692150.9-demo.wav	44028		CanberraMtAinsli	2012-10-20 11:15:53.667+11	230274
+2012-10-20-1350692155.22-demo.wav	44028		CanberraMtAinsli	2012-10-20 11:16:00.509+11	444552
+2012-10-20-1350692162.26-demo.wav	44028		CanberraMtAinsli	2012-10-20 11:16:09.409+11	600200
+2012-10-20-1350692270.79-demo.wav	40082	SES Ops 5	CanberraBlackMnt	2012-10-20 11:17:54.117+11	275180
+2012-10-20-1350692275.04-demo.wav	40082	SES Ops 5	CanberraBlackMnt	2012-10-20 11:17:57.797+11	229512
+2012-10-20-1350692279.36-demo.wav	40082	SES Ops 5	CanberraBlackMnt	2012-10-20 11:18:04.637+11	436728
+2012-10-20-1350692285.09-demo.wav	40082	SES Ops 5	CanberraBlackMnt	2012-10-20 11:18:10.32+11	440456
+2012-10-20-1350692291.96-demo.wav	40082	SES Ops 5	CanberraBlackMnt	2012-10-20 11:18:16.427+11	370824
+2012-10-20-1350692333.57-demo.wav	40068	RFS Ops 1	CanberraMtAinsli	2012-10-20 11:18:56.117+11	210784
+2012-10-20-1350692339.23-demo.wav	44028		CanberraMtAinsli	2012-10-20 11:19:11.84+11	1052514
+2012-10-20-1350692352.76-demo.wav	44028		CanberraMtAinsli	2012-10-20 11:19:15.78+11	250184
+2012-10-20-1350692355.95-demo.wav	44028		CanberraMtAinsli	2012-10-20 11:19:19.48+11	295048
+2012-10-20-1350692359.68-demo.wav	44028		CanberraMtAinsli	2012-10-20 11:19:23.915+11	354440
+2012-10-20-1350692557.4-demo.wav	44028		CanberraBlackMnt	2012-10-20 11:22:40.684+11	269278
+2012-10-20-1350692562.17-demo.wav	44028		CanberraBlackMnt	2012-10-20 11:22:45.213+11	254058
+2012-10-20-1350692565.35-demo.wav	44028		CanberraBlackMnt	2012-10-20 11:22:49.121+11	317546
+2012-10-20-1350692569.42-demo.wav	44028		CanberraBlackMnt	2012-10-20 11:22:54.416+11	419942
+2012-10-20-1350692574.56-demo.wav	44028		CanberraBlackMnt	2012-10-20 11:22:58.85+11	360354
+2012-10-20-1350692579.0-demo.wav	44028		CanberraBlackMnt	2012-10-20 11:23:30.434+11	2633840
+2012-10-20-1350692610.54-demo.wav	44028		CanberraBlackMnt	2012-10-20 11:23:36.545+11	503920
+2012-10-20-1350692616.69-demo.wav	44028		CanberraBlackMnt	2012-10-20 11:23:39.529+11	241750
+2012-10-20-1350693216.04-demo.wav	40093	PCL Rural	CanberraBlackMnt	2012-10-20 11:33:40.602+11	382674
+2012-10-20-1350693221.96-demo.wav	40093	PCL Rural	CanberraBlackMnt	2012-10-20 11:33:49.524+11	628332
+2012-10-20-1350693230.23-demo.wav	40093	PCL Rural	CanberraBlackMnt	2012-10-20 11:34:00.031+11	817248
+2012-10-20-1350693240.19-demo.wav	40093	PCL Rural	CanberraBlackMnt	2012-10-20 11:34:06.198+11	501650
+2012-10-20-1350693577.0-demo.wav	44028		CanberraBlackMnt	2012-10-20 11:39:39.901+11	244754
+2012-10-20-1350693581.68-demo.wav	44028		CanberraBlackMnt	2012-10-20 11:39:45.82+11	348296
+2012-10-20-1350693586.06-demo.wav	44028		CanberraBlackMnt	2012-10-20 11:39:53.124+11	594056
+2012-10-20-1350693593.31-demo.wav	44028		CanberraBlackMnt	2012-10-20 11:40:19.216+11	2167550
+2012-10-20-1350693675.75-demo.wav	44028		CanberraBlackMnt	2012-10-20 11:41:19.162+11	284756
+2012-10-20-1350693679.33-demo.wav	44028		CanberraBlackMnt	2012-10-20 11:41:21.586+11	188552
+2012-10-20-1350693681.75-demo.wav	44028		CanberraBlackMnt	2012-10-20 11:41:29.959+11	684168
+2012-10-20-1350693795.33-demo.wav	44040		CanberraMtAinsli	2012-10-20 11:43:20.124+11	401098
+2012-10-20-1350693801.9-demo.wav	44040		CanberraBlackMnt	2012-10-20 11:43:35.338+11	1126536
+2012-10-20-1350693817.08-demo.wav	44040		CanberraMtAinsli	2012-10-20 11:43:44.619+11	635016
+2012-10-20-1350693825.23-demo.wav	44040		CanberraMtAinsli	2012-10-20 11:43:48.638+11	284808
+2012-10-20-1350693829.48-demo.wav	44040		CanberraMtAinsli	2012-10-20 11:43:51.875+11	198792
+2012-10-20-1350693833.22-demo.wav	44040		CanberraMtAinsli	2012-10-20 11:43:58.908+11	469128
+2012-10-20-1350693841.72-demo.wav	44040		CanberraMtAinsli	2012-10-20 11:44:12.289+11	881716
+2012-10-20-1350693852.47-demo.wav	44040		CanberraMtAinsli	2012-10-20 11:44:14.968+11	206984
+2012-10-20-1350693855.12-demo.wav	44040		CanberraMtAinsli	2012-10-20 11:44:17.76+11	223368
+2012-10-20-1350693858.57-demo.wav	44040		CanberraMtAinsli	2012-10-20 11:44:22.099+11	297092
+2012-10-20-1350693862.26-demo.wav	44040		CanberraMtAinsli	2012-10-20 11:44:24.557+11	190540
+2012-10-20-1350693865.39-demo.wav	44028		CanberraMtAinsli	2012-10-20 11:44:32.355+11	583814
+2012-10-20-1350693874.14-demo.wav	44028		CanberraMtAinsli	2012-10-20 11:44:37.73+11	297096
+2012-10-20-1350693878.66-demo.wav	44028		CanberraMtAinsli	2012-10-20 11:44:43.154+11	374920
+2012-10-20-1350693883.32-demo.wav	44028		CanberraMtAinsli	2012-10-20 11:45:10.281+11	2259078
+2012-10-20-1350693945.19-demo.wav	44028		CanberraBlackMnt	2012-10-20 11:45:49.631+11	372872
+2012-10-20-1350693949.74-demo.wav	44028		CanberraBlackMnt	2012-10-20 11:45:54.02+11	358536
+2012-10-20-1350693954.44-demo.wav	44028		CanberraBlackMnt	2012-10-20 11:46:01.632+11	606242
+2012-10-20-1350693961.83-demo.wav	44028		CanberraBlackMnt	2012-10-20 11:46:04.805+11	251272
+2012-10-20-1350694090.63-demo.wav	40068	RFS Ops 1	CanberraMtAinsli	2012-10-20 11:48:18.274+11	642690
+2012-10-20-1350694098.4-demo.wav	40068	RFS Ops 1	CanberraMtAinsli	2012-10-20 11:48:22.277+11	323696
+2012-10-20-135