DataObjects/Core_notify_recur.php
[Pman.Core] / DataObjects / Core_notify_recur.php
index 71b79a7..428b30c 100644 (file)
@@ -29,8 +29,8 @@ class Pman_Core_DataObjects_Core_notify_recur extends DB_DataObject
     public $onid;                            // int(11)  not_null
     public $ontable;                         // string(128)  not_null
     public $last_event_id;                   // int(11)  
-    public $method;                         // string(128)  not_null
-    
+    public $method;                         // depricated.
+    public $method_id;                         // string(128)  not_null   
     ###END_AUTOCODE
     
     
@@ -81,13 +81,13 @@ class Pman_Core_DataObjects_Core_notify_recur extends DB_DataObject
         $usedays = array();
         for (  $i =0; $i < $advance +1; $i++) {
             $ut = strtotime("NOW + $i DAYS");
-            $day = date("???", $ut);
+            $day = strtoupper(date("D", $ut));
             if (in_array($day, $days)) {
                 $usedays[] = date("Y-m-d", $ut);
             }
         }
                 
-        
+        //print_r($this);
         
         
         foreach($usedays as $d){
@@ -118,23 +118,29 @@ class Pman_Core_DataObjects_Core_notify_recur extends DB_DataObject
         
 
         $notifytimes = $this->notifyTimes(2);
+        ////print_R($notifytimes);
+        
         $newSearch = DB_DataObject::factory('core_notify');
         $newSearch->whereAdd( 'act_start > NOW()');
         $newSearch->recur_id = $this->id;
         $old = $newSearch->fetchAll('act_start', 'id');
         // returns array('2012-12-xx'=>12, 'date' => id....)
 
-
+        
+        
         foreach($notifytimes as $time){
-            if (strtotime($time) < time()) {
-                continue;
-            }
+           
             if (isset($old[$time])) {
                 // we already have it...
                 unset($old[$time]);
                 continue;
             }
-
+            if (strtotime($time) < time()) {
+                // will not get deleted..
+                //echo "SKIP BEFORE NOW";
+                unset($old[$time]);
+               continue;
+            }
             // do not have a notify event... creat it..
             $add = DB_DataObject::factory('core_notify');
             $add->setFrom(array(
@@ -143,7 +149,8 @@ class Pman_Core_DataObjects_Core_notify_recur extends DB_DataObject
                 "act_when" => $time,
                 "person_id" => $this->person_id,
                 "onid" => $this->onid,
-                "ontable" => $this->ontable
+                "ontable" => $this->ontable,
+                'evtype' => $this->method,
             ));
             $add->insert();
         }
@@ -152,6 +159,7 @@ class Pman_Core_DataObjects_Core_notify_recur extends DB_DataObject
                 $del->get($id);
                 $del->delete();
         }
+        //echo("UPDATED");
 
     }