sync
[web.mtrack] / MTrackWeb / Timeline.php
index b67b83b..80b5ebc 100644 (file)
@@ -42,7 +42,9 @@ class MTrackWeb_Timeline extends MTrackWeb
         $start = empty($_REQUEST['from_date']) ? date('Y-m-01') : 
             date('Y-m-01', strtotime($_REQUEST['from_date']));
 
-
+        $start_day = empty($_REQUEST['from_date']) ? date('Y-m-d') : 
+            date('Y-m-d', strtotime($_REQUEST['from_date']));
+            
         $e->whereAdd("
             ( ontable='mtrack_ticket' AND
                 onid IN (SELECT id FROM mtrack_ticket where project_id = $pid)
@@ -58,7 +60,7 @@ class MTrackWeb_Timeline extends MTrackWeb
             $isSummary = true;
             $e->whereAdd("changedate >= '$start 00:00:00' AND changedate < '$start 00:00:00' + INTERVAL 1 MONTH");
             $e->selectAdd();
-            $e->joinAdd(DB_DataObject::factory('Person'), 'LEFT');
+            $e->joinAdd(DB_DataObject::factory('core_person'), 'LEFT');
             $e->selectAdd("
                      DATE_FORMAT(changedate, '%Y-%m-%d')  as changeday,
                      CONCAT(DATE_FORMAT(changedate, '%Y-%m-%d-') ,Person.id)  as id,
@@ -75,10 +77,11 @@ class MTrackWeb_Timeline extends MTrackWeb
             $this->jdata($ret);
             
             
-        } else {
-            $e->whereAdd("changedate >= '$start 00:00:00' AND changedate < '$start 00:00:00' + INTERVAL 3 DAY");
-        }
-        
+        }  
+        $e->whereAdd("changedate >= '$start_day 00:00:00' AND
+                      changedate < '$start_day 00:00:00' + INTERVAL 1 DAY");
+         
+        //DB_DataObject::debugLevel(1);
         
        
         
@@ -121,14 +124,22 @@ class MTrackWeb_Timeline extends MTrackWeb
             $this->events[] = $add;
              
         }
-       
-        $this->jdata($this->events);
+        $total = count($this->events);
+        $extra = !$total ? array() :  array(
+                 'metaData'  => $this->meta($e, $this->events)
+        );
+             
+         
+
+        $this->jdata($this->events, $total, $extra);
     
          
          
     
     }
-     
+     /**
+      * this is a very simple version of the main one in roo.php
+      */
     function meta($x, $data)
     {
         // this is not going to work on queries where the data does not match the database def..
@@ -139,8 +150,9 @@ class MTrackWeb_Timeline extends MTrackWeb
         
         
         
-        //echo '<PRE>';print_r($this->cols); exit;
+        
         $options = HTML_FlexyFramework::get()->DB_DataObject;
+        //echo '<PRE>';print_r($options); exit;
         $reader = $options["ini_{$x->_database}"] .'.reader';
         if (!file_exists( $reader )) {
             return;
@@ -148,18 +160,25 @@ class MTrackWeb_Timeline extends MTrackWeb
         
         $rdata = unserialize(file_get_contents($reader));
         
-       // echo '<PRE>';print_r($rdata);exit;
+        //echo '<PRE>';print_r($rdata);exit;
         
         $meta = array();
         foreach($cols as $c ) {
-            if (!isset($this->cols[$c]) || !isset($rdata[$this->cols[$c]]) || !is_array($rdata[$this->cols[$c]])) {
+            $cc = $x->tableName().'.'.$c;
+            if (      !isset($rdata[$cc]) 
+                ||    !is_array($rdata[$cc])
+            ) {
+                
                 $meta[] = $c;
                 continue;    
             }
-            $add = $rdata[$this->cols[$c]];
+            $add = $rdata[$cc];
             $add['name'] = $c;
             $meta[] = $add;
         }
+        
+        
+        
         return array(
             'totalProperty' =>  'total',
             'successProperty' => 'success',