DataObjects/Core_notify_recur.php
authorChris <chris@roojs.com>
Thu, 24 May 2012 06:40:19 +0000 (14:40 +0800)
committerChris <chris@roojs.com>
Thu, 24 May 2012 06:40:19 +0000 (14:40 +0800)
DataObjects/Core_notify_recur.php

index 7118fae..4f50baf 100644 (file)
@@ -64,57 +64,61 @@ class Pman_Core_DataObjects_Core_notify_recur extends DB_DataObject
             return array(); // no data..
         }
         
-        
-        
-        switch($this->freq) {
-            case 'HOURLY':
-                
-                
-                
-                // happens every day based on freq_hour.
-                $hours = explode(',', $this->freq_hour);
-                for ($day = date('Y-m-d', strtotime($start));
-                        strtotime($day) < strtotime($end);
-                        $day = date('Y-m-d', strtotime("$day + 1 DAY")))
-                {
-                    foreach($hours as $h) {
-                        $hh = strpos($h,":") > 0 ? $h : "$H:00";
-                        $ret[] = $day . ' ' . $hh;
-                    }
+        if($this->freq_day){
+            // happens every day based on freq_hour.
+            $hours = explode(',', $this->freq_hour);
+            for ($day = date('Y-m-d', strtotime($start));
+                    strtotime($day) < strtotime($end);
+                    $day = date('Y-m-d', strtotime("$day + 1 DAY")))
+            {
+                foreach($hours as $h) {
+                    $hh = strpos($h,":") > 0 ? $h : "$H:00";
+                    $ret[] = $day . ' ' . $hh;
                 }
-                return $this->applyTimezoneToList($ret);
-                
-            case 'DAILY':
-                $hours = explode(',', $this->freq_hour);
-                if (!$hours) {
-                    $hours = array(date('H:i', strtotime($this->dtstart)));
+            }
+            return $this->applyTimezoneToList($ret);
+        }
+        if($this->freq_hour){
+            $hours = explode(',', $this->freq_hour);
+            if (!$hours) {
+                $hours = array(date('H:i', strtotime($this->dtstart)));
+            }
+
+            $days = explode(','. $this->freq_day);
+
+            for ($day = date('Y-m-d', strtotime($start));
+                    strtotime($day) < strtotime($end);
+                    $day = date('Y-m-d', strtotime("$day + 1 DAY")))
+            {
+                // skip days not accounted for..
+                if (!in_array(date('N', strtotime($day)), $days)) {
+                    continue;
                 }
-                
-                $days = explode(','. $this->freq_day);
-                
-                for ($day = date('Y-m-d', strtotime($start));
-                        strtotime($day) < strtotime($end);
-                        $day = date('Y-m-d', strtotime("$day + 1 DAY")))
-                {
-                    // skip days not accounted for..
-                    if (!in_array(date('N', strtotime($day)), $days)) {
-                        continue;
-                    }
-                    
-                    foreach($hours as $h) {
-                        $hh = strpos($h,":") > 0 ? $h : "$H:00";
-                        $ret[] = $day . ' ' . $hh;
-                    }
+
+                foreach($hours as $h) {
+                    $hh = strpos($h,":") > 0 ? $h : "$H:00";
+                    $ret[] = $day . ' ' . $hh;
                 }
-                
-                return $this->applyTimezoneToList($ret);
-                
-                
-            case 'MONTHLY': // ignored..
-            case 'YEARLY': // ignored..
-                break;
-            
+            }
+
+            return $this->applyTimezoneToList($ret);
         }
+//        switch($this->freq) {
+//            case 'HOURLY':
+//                
+//                
+//                
+//                
+//                
+//            case 'DAILY':
+//                
+//                
+//                
+//            case 'MONTHLY': // ignored..
+//            case 'YEARLY': // ignored..
+//                break;
+//            
+//        }
          
     }
     function applyTimezoneToList($ar)