diff options
author | AlexKlimenkov <shurick.klimenkov@gmail.com> | 2016-03-24 16:06:52 +0300 |
---|---|---|
committer | AlexKlimenkov <shurick.klimenkov@gmail.com> | 2016-03-24 16:06:52 +0300 |
commit | 3302a00e737f2039f4fb4075d21e5d597bdeff24 (patch) | |
tree | fb351f77aebbfc2b2036ffd6b8d2022665c4c14d | |
parent | 2aebc0fb22e7502bbf610e7ffcf655ddd77fefae (diff) | |
parent | 551d156dd610c2ab5b79a99f08d9a73856004ffb (diff) | |
download | scheduler-helper-php-3302a00e737f2039f4fb4075d21e5d597bdeff24.zip scheduler-helper-php-3302a00e737f2039f4fb4075d21e5d597bdeff24.tar.gz scheduler-helper-php-3302a00e737f2039f4fb4075d21e5d597bdeff24.tar.bz2 |
Merge pull request #21 from mperednya/master
Fix recurrings detection.
-rw-r--r-- | RecurringType.php | 16 | ||||
-rwxr-xr-x | SchedulerHelper.php | 19 | ||||
-rwxr-xr-x | SchedulerHelperDate.php | 38 | ||||
-rw-r--r-- | tests/Data_getData/ExceptionsInRecurrings/source.json | 20 | ||||
-rw-r--r-- | tests/Data_getData/ExceptionsInRecurrings/target.json | 247 | ||||
-rw-r--r-- | tests/Data_getData/WeekRecurrings/source.json | 38 | ||||
-rw-r--r-- | tests/Data_getData/WeekRecurrings/target.json | 349 | ||||
-rw-r--r-- | tests/SchedulerHelperTest.php | 2 |
8 files changed, 668 insertions, 61 deletions
diff --git a/RecurringType.php b/RecurringType.php index 55b79e2..4a09d59 100644 --- a/RecurringType.php +++ b/RecurringType.php @@ -34,9 +34,9 @@ class RecurringType { private $_recurring_start_date_stamp; private $_recurring_end_date_stamp; - public static $start_on_monday = true; + private $_config = array(); - public function __construct($recurringType, $recurringStartDateStamp, $recurringEndDateStamp) + public function __construct($recurringType, $recurringStartDateStamp, $recurringEndDateStamp, $config = array()) { if(is_array($recurringType)) $recurringType = self::parseRecurringDataArrayToString($recurringType); @@ -44,6 +44,7 @@ class RecurringType { $this->_fields_values = self::_parseRecurringDataString($recurringType); $this->_recurring_start_date_stamp = $recurringStartDateStamp; $this->_recurring_end_date_stamp = $recurringEndDateStamp; + $this->_config = $config; } public static function getInstance($recurringTypeString, $recurringStartDateStamp, $recurringEndDateStamp) { @@ -271,7 +272,7 @@ class RecurringType { if($recurringStartDateStamp < $intervalStartDateStamp) { $step = $this->_transpose_size[$type] * $this->getRecurringTypeStepValue(); $day = 24 * 60 * 60; - $delta = floor(($intervalStartDateStamp - $recurringStartDateStamp) / ($day * $step)) || 1; + $delta = floor(($intervalStartDateStamp - $recurringStartDateStamp) / ($day * $step)); $recurringInterval["start_date_stamp"] = $recurringStartDateStamp + $delta * $step * $day; } } @@ -334,7 +335,7 @@ class RecurringType { private function _getRecurringDayStep($dateStamp, $recurringWeekDay) { $weekDay = SchedulerHelperDate::getDayOfWeek($dateStamp); - if(self::$start_on_monday) { + if($this->_config["start_on_monday"]) { $recurringWeekDay = $recurringWeekDay == 0 ? 7 : $recurringWeekDay; } $dayStep = $recurringWeekDay - $weekDay; @@ -401,6 +402,7 @@ class RecurringType { $intervalStartDateStamp = $correctedInterval["start_date_stamp"]; $intervalEndDateStamp = $correctedInterval["end_date_stamp"]; $currentRecurringStartDateStamp = $intervalStartDateStamp; + $correcterRecurringStartDateStamp = $currentRecurringStartDateStamp; $recurringDates = array(); $recurringStartDateStamp = $this->_recurring_start_date_stamp; $recurringEndDateStamp = $this->_recurring_end_date_stamp; @@ -411,7 +413,7 @@ class RecurringType { (!is_null($countDates) && ($countRecurringCycles <= $countDates)) || ( ($intervalStartDateStamp <= $currentRecurringStartDateStamp) - && ($currentRecurringStartDateStamp < $intervalEndDateStamp) + && ($correcterRecurringStartDateStamp < $intervalEndDateStamp) ) ) { $countRecurringCycles++; @@ -421,18 +423,22 @@ class RecurringType { switch($recType) { case self::REC_TYPE_DAY: $currentRecurringStartDateStamp = SchedulerHelperDate::addDays($currentRecurringStartDateStamp, $recurringTypeStep); + $correcterRecurringStartDateStamp = $currentRecurringStartDateStamp; break; case self::REC_TYPE_WEEK: $currentRecurringStartDateStamp = SchedulerHelperDate::addWeeks($currentRecurringStartDateStamp, $recurringTypeStep); + $correcterRecurringStartDateStamp = SchedulerHelperDate::weekStart($currentRecurringStartDateStamp); break; case self::REC_TYPE_MONTH: $currentRecurringStartDateStamp = SchedulerHelperDate::addMonths($currentRecurringStartDateStamp, $recurringTypeStep); + $correcterRecurringStartDateStamp = SchedulerHelperDate::monthStart($currentRecurringStartDateStamp); break; case self::REC_TYPE_YEAR: $currentRecurringStartDateStamp = SchedulerHelperDate::addYears($currentRecurringStartDateStamp, $recurringTypeStep); + $correcterRecurringStartDateStamp = SchedulerHelperDate::yearStart($currentRecurringStartDateStamp); break; } } diff --git a/SchedulerHelper.php b/SchedulerHelper.php index 4fe93e0..81ef4f6 100755 --- a/SchedulerHelper.php +++ b/SchedulerHelper.php @@ -33,7 +33,8 @@ abstract class DHelper extends SchedulerHelperConnector public $config = array( "debug" => true, "server_date" => false, - "start_on_monay" => true + "start_on_monday" => true, + "occurrence_timestamp_in_utc" => true ); protected $_mapped_fields = array(); @@ -166,6 +167,11 @@ class Helper extends DHelper implements IHelper return SchedulerHelperDate::getDateTimestamp($date, $this->config["server_date"]); } + private function getTimestampFromUTCTimestamp($timestamp) + { + return SchedulerHelperDate::getTimestampFromUTCTimestamp($timestamp, $this->config["server_date"]); + } + /** * Get recurring events data exceptions. And prepare data to format: [] * @return array @@ -197,6 +203,9 @@ class Helper extends DHelper implements IHelper $events[$eventParentId] = array(); $eventLength = $eventData[$this->getLengthFieldName()]; + if($this->config["occurrence_timestamp_in_utc"]) { + $eventLength = $this->getTimestampFromUTCTimestamp($eventLength); + } $events[$eventParentId][$eventLength] = $eventData; } @@ -365,8 +374,10 @@ class Helper extends DHelper implements IHelper $recField = $this->getRecurringTypeFieldName(); $startField = $this->getStartDateFieldName(); $endField = $this->getEndDateFieldName(); - - RecurringType::$start_on_monday = $this->config["start_on_monay"]; + $recConfig = array( + "start_on_monday" => $this->config["start_on_monday"] + ); + $recCount = count($recurringEvents); for($i = 0; $i < $recCount; $i++) { $eventData = $recurringEvents[$i]; @@ -375,7 +386,7 @@ class Helper extends DHelper implements IHelper $recurringTypeData = $eventData[$recField]; $recurringStartDateStamp = $this->getDateTimestamp($eventData[$startField]); $recurringEndDateStamp = $this->getDateTimestamp($eventData[$endField]); - $recurringTypeObj = new RecurringType($recurringTypeData, $recurringStartDateStamp, $recurringEndDateStamp); + $recurringTypeObj = new RecurringType($recurringTypeData, $recurringStartDateStamp, $recurringEndDateStamp, $recConfig); //Get recurring dates by parsed format. $recurringDatesStamps = $recurringTypeObj->getRecurringDates($intervalStartDateStamp, $intervalEndDateStamp); diff --git a/SchedulerHelperDate.php b/SchedulerHelperDate.php index b664492..33635a9 100755 --- a/SchedulerHelperDate.php +++ b/SchedulerHelperDate.php @@ -77,6 +77,14 @@ class SchedulerHelperDate return $timestamp; } + static public function getTimestampFromUTCTimestamp($stamp, $serverDate){ + $date = new DateTime(); + $date->setTimezone(new \DateTimeZone("UTC")); + $date->setTimestamp($stamp); + $date = self::getDateTimestamp($date->format(self::FORMAT_DEFAULT), $serverDate); + return $date; + } + static public function getDayOfWeek($timestamp) { $weekDay = getdate($timestamp)["wday"]; return $weekDay; @@ -110,4 +118,34 @@ class SchedulerHelperDate return self::addDate($timestamp, self::$INTERVAL_UNITS["year"], $count); } + static public function weekStart($timestamp, $startOnMonday = true){ + $shift = self::getDayOfWeek($timestamp); + if($startOnMonday){ + if($shift === 0){ + $shift = 6; + } + else{ + $shift--; + } + } + return self::addDays($timestamp, -1*$shift); + } + + static public function monthStart($timestamp){ + $date = new DateTime(); + $date->setTimestamp($timestamp); + $m = $date->format('m'); + $y = $date->format('Y'); + $date->setDate($y, $m, 1); + return $date->getTimestamp(); + } + + static public function yearStart($timestamp){ + $date = new DateTime(); + $date->setTimestamp($timestamp); + $y = $date->format('Y'); + $date->setDate($y, 1, 1); + return $date->getTimestamp(); + } + }
\ No newline at end of file diff --git a/tests/Data_getData/ExceptionsInRecurrings/source.json b/tests/Data_getData/ExceptionsInRecurrings/source.json new file mode 100644 index 0000000..2168fd8 --- /dev/null +++ b/tests/Data_getData/ExceptionsInRecurrings/source.json @@ -0,0 +1,20 @@ +{ + "settings": { + "start_date": "2016-03-01 00:00:00", + "end_date": "2016-03-31 24:00:00" + }, + "data": [{ "id": "10", "start_date": "2016-03-02 00:00:00", "end_date": "2016-03-22 00:00:00", "text": "Day Event 1", "rec_type": "day_1___#20", "event_pid": "0", "event_length": "86400", "rec_pattern": "day_1___"}, + { "id": "11", "start_date": "2016-03-01 00:00:00", "end_date": "2016-03-02 00:00:00", "text": "Day Event 1", "rec_type": "", "event_pid": "10", "event_length": "1457568000", "rec_pattern": ""}, + { "id": "12", "start_date": "2016-03-31 00:00:00", "end_date": "2016-04-01 00:00:00", "text": "Day Event 1", "rec_type": "", "event_pid": "10", "event_length": "1457654400", "rec_pattern": ""}, + { "id": "13", "start_date": "2016-03-16 00:00:00", "end_date": "2016-03-17 00:00:00", "text": "Day Event 1", "rec_type": "none", "event_pid": "10", "event_length": "1458086400", "rec_pattern": "none"}, + { "id": "14", "start_date": "2016-03-21 00:00:00", "end_date": "2016-03-22 00:00:00", "text": "Day Event 1", "rec_type": "none", "event_pid": "10", "event_length": "1458518400", "rec_pattern": "none"}, + { "id": "15", "start_date": "2016-03-24 00:00:00", "end_date": "2016-03-25 00:00:00", "text": "Day Event Changed Text", "rec_type": "", "event_pid": "10", "event_length": "1458345600", "rec_pattern": ""}, + { "id": "16", "start_date": "2016-02-29 00:00:00", "end_date": "2016-03-01 00:00:00", "text": "Day Event 1", "rec_type": "", "event_pid": "10", "event_length": "1458000000", "rec_pattern": ""}, + { "id": "17", "start_date": "2016-02-20 00:00:00", "end_date": "9999-02-01 00:00:00", "text": "Week Event 1", "rec_type": "week_2___0,1,2,6#no", "event_pid": "0", "event_length": "300", "rec_pattern": "week_2___0,1,2,6"}, + { "id": "18", "start_date": "2016-03-19 00:00:00", "end_date": "2016-03-19 00:05:00", "text": "Week Event 1", "rec_type": "none", "event_pid": "17", "event_length": "1458345600", "rec_pattern": "none"}, + { "id": "19", "start_date": "2016-03-16 00:00:00", "end_date": "2016-03-16 00:05:00", "text": "Week Event 1", "rec_type": "", "event_pid": "17", "event_length": "1458000000", "rec_pattern": ""}, + { "id": "20", "start_date": "2016-02-01 00:00:00", "end_date": "9999-02-01 00:00:00", "text": "Month Event 1", "rec_type": "month_1_1_1_#no", "event_pid": "0", "event_length": "300", "rec_pattern": "month_1_1_1_"}, + { "id": "21", "start_date": "2016-03-10 04:20:00", "end_date": "2016-03-10 13:20:00", "text": "Month Event 1 edited occurence", "rec_type": "", "event_pid": "20", "event_length": "1457308800", "rec_pattern": ""}, + { "id": "22", "start_date": "2015-03-09 00:00:00", "end_date": "9999-02-01 00:00:00", "text": "Year Event 1", "rec_type": "year_1___#no", "event_pid": "0", "event_length": "300", "rec_pattern": "year_1___"}, + { "id": "23", "start_date": "2016-03-17 00:00:00", "end_date": "2016-03-18 00:00:00", "text": "Year Event 1 Edited occurence", "rec_type": "", "event_pid": "22", "event_length": "1457481600", "rec_pattern": ""}] +}
\ No newline at end of file diff --git a/tests/Data_getData/ExceptionsInRecurrings/target.json b/tests/Data_getData/ExceptionsInRecurrings/target.json new file mode 100644 index 0000000..225f3d8 --- /dev/null +++ b/tests/Data_getData/ExceptionsInRecurrings/target.json @@ -0,0 +1,247 @@ +{ + "data": [ + { + "start_date": "2016-03-02 00:00:00", + "end_date": "2016-03-03 00:00:00", + "event_pid": "0", + "text": "Day Event 1", + "id": "10", + "rec_type": "day_1___#20", + "event_length": "86400" + }, + { + "start_date": "2016-03-03 00:00:00", + "end_date": "2016-03-04 00:00:00", + "event_pid": "0", + "text": "Day Event 1", + "id": "10", + "rec_type": "day_1___#20", + "event_length": "86400" + }, + { + "start_date": "2016-03-04 00:00:00", + "end_date": "2016-03-05 00:00:00", + "event_pid": "0", + "text": "Day Event 1", + "id": "10", + "rec_type": "day_1___#20", + "event_length": "86400" + }, + { + "start_date": "2016-03-05 00:00:00", + "end_date": "2016-03-06 00:00:00", + "event_pid": "0", + "text": "Day Event 1", + "id": "10", + "rec_type": "day_1___#20", + "event_length": "86400" + }, + { + "start_date": "2016-03-06 00:00:00", + "end_date": "2016-03-07 00:00:00", + "event_pid": "0", + "text": "Day Event 1", + "id": "10", + "rec_type": "day_1___#20", + "event_length": "86400" + }, + { + "start_date": "2016-03-07 00:00:00", + "end_date": "2016-03-08 00:00:00", + "event_pid": "0", + "text": "Day Event 1", + "id": "10", + "rec_type": "day_1___#20", + "event_length": "86400" + }, + { + "start_date": "2016-03-08 00:00:00", + "end_date": "2016-03-09 00:00:00", + "event_pid": "0", + "text": "Day Event 1", + "id": "10", + "rec_type": "day_1___#20", + "event_length": "86400" + }, + { + "start_date": "2016-03-09 00:00:00", + "end_date": "2016-03-10 00:00:00", + "event_pid": "0", + "text": "Day Event 1", + "id": "10", + "rec_type": "day_1___#20", + "event_length": "86400" + }, + { + "start_date": "2016-03-12 00:00:00", + "end_date": "2016-03-13 00:00:00", + "event_pid": "0", + "text": "Day Event 1", + "id": "10", + "rec_type": "day_1___#20", + "event_length": "86400" + }, + { + "start_date": "2016-03-13 00:00:00", + "end_date": "2016-03-14 00:00:00", + "event_pid": "0", + "text": "Day Event 1", + "id": "10", + "rec_type": "day_1___#20", + "event_length": "86400" + }, + { + "start_date": "2016-03-14 00:00:00", + "end_date": "2016-03-15 00:00:00", + "event_pid": "0", + "text": "Day Event 1", + "id": "10", + "rec_type": "day_1___#20", + "event_length": "86400" + }, + { + "start_date": "2016-03-17 00:00:00", + "end_date": "2016-03-18 00:00:00", + "event_pid": "0", + "text": "Day Event 1", + "id": "10", + "rec_type": "day_1___#20", + "event_length": "86400" + }, + { + "start_date": "2016-03-18 00:00:00", + "end_date": "2016-03-19 00:00:00", + "event_pid": "0", + "text": "Day Event 1", + "id": "10", + "rec_type": "day_1___#20", + "event_length": "86400" + }, + { + "start_date": "2016-03-20 00:00:00", + "end_date": "2016-03-21 00:00:00", + "event_pid": "0", + "text": "Day Event 1", + "id": "10", + "rec_type": "day_1___#20", + "event_length": "86400" + }, + { + "id": "11", + "start_date": "2016-03-01 00:00:00", + "end_date": "2016-03-02 00:00:00", + "text": "Day Event 1", + "rec_type": "", + "event_pid": "10", + "event_length": "1457568000" + }, + { + "id": "12", + "start_date": "2016-03-31 00:00:00", + "end_date": "2016-04-01 00:00:00", + "text": "Day Event 1", + "rec_type": "", + "event_pid": "10", + "event_length": "1457654400" + }, + { + "id": "15", + "start_date": "2016-03-24 00:00:00", + "end_date": "2016-03-25 00:00:00", + "text": "Day Event Changed Text", + "rec_type": "", + "event_pid": "10", + "event_length": "1458345600" + }, + { + "start_date": "2016-03-01 00:00:00", + "end_date": "2016-03-01 00:05:00", + "event_pid": "0", + "text": "Week Event 1", + "id": "17", + "rec_type": "week_2___0,1,2,6#no", + "event_length": "300" + }, + { + "start_date": "2016-03-05 00:00:00", + "end_date": "2016-03-05 00:05:00", + "event_pid": "0", + "text": "Week Event 1", + "id": "17", + "rec_type": "week_2___0,1,2,6#no", + "event_length": "300" + }, + { + "start_date": "2016-03-06 00:00:00", + "end_date": "2016-03-06 00:05:00", + "event_pid": "0", + "text": "Week Event 1", + "id": "17", + "rec_type": "week_2___0,1,2,6#no", + "event_length": "300" + }, + { + "start_date": "2016-03-14 00:00:00", + "end_date": "2016-03-14 00:05:00", + "event_pid": "0", + "text": "Week Event 1", + "id": "17", + "rec_type": "week_2___0,1,2,6#no", + "event_length": "300" + }, + { + "start_date": "2016-03-20 00:00:00", + "end_date": "2016-03-20 00:05:00", + "event_pid": "0", + "text": "Week Event 1", + "id": "17", + "rec_type": "week_2___0,1,2,6#no", + "event_length": "300" + }, + { + "start_date": "2016-03-28 00:00:00", + "end_date": "2016-03-28 00:05:00", + "event_pid": "0", + "text": "Week Event 1", + "id": "17", + "rec_type": "week_2___0,1,2,6#no", + "event_length": "300" + }, + { + "start_date": "2016-03-29 00:00:00", + "end_date": "2016-03-29 00:05:00", + "event_pid": "0", + "text": "Week Event 1", + "id": "17", + "rec_type": "week_2___0,1,2,6#no", + "event_length": "300" + }, + { + "id": "19", + "start_date": "2016-03-16 00:00:00", + "end_date": "2016-03-16 00:05:00", + "text": "Week Event 1", + "rec_type": "", + "event_pid": "17", + "event_length": "1458000000" + }, + { + "id": "21", + "start_date": "2016-03-10 04:20:00", + "end_date": "2016-03-10 13:20:00", + "text": "Month Event 1 edited occurence", + "rec_type": "", + "event_pid": "20", + "event_length": "1457308800" + }, + { + "id": "23", + "start_date": "2016-03-17 00:00:00", + "end_date": "2016-03-18 00:00:00", + "text": "Year Event 1 Edited occurence", + "rec_type": "", + "event_pid": "22", + "event_length": "1457481600" + } + ] +}
\ No newline at end of file diff --git a/tests/Data_getData/WeekRecurrings/source.json b/tests/Data_getData/WeekRecurrings/source.json index 3ad4afe..7a2a9d5 100644 --- a/tests/Data_getData/WeekRecurrings/source.json +++ b/tests/Data_getData/WeekRecurrings/source.json @@ -12,8 +12,7 @@ "rec_type": "week_2___0,1,2,3,4,5,6#40", "event_pid": "0", "event_length": "21900", - "rec_pattern": "week_2___0,1,2,3,4,5,6", - "!nativeeditor_status": "" + "rec_pattern": "week_2___0,1,2,3,4,5,6" }, { "id": "2", @@ -21,10 +20,9 @@ "end_date": "2016-03-27 00:00:00", "text": "Week event 2", "rec_type": "week_2___2,5#", - "event_pid": "", + "event_pid": "0", "event_length": "14400", - "rec_pattern": "week_2___2,5", - "!nativeeditor_status": "" + "rec_pattern": "week_2___2,5" }, { "id": "3", @@ -32,10 +30,9 @@ "end_date": "9999-02-01 00:00:00", "text": "Week Event 3", "rec_type": "week_2___0,6#no", - "event_pid": "", + "event_pid": "0", "event_length": "300", - "rec_pattern": "week_2___0,6", - "!nativeeditor_status": "" + "rec_pattern": "week_2___0,6" }, { "id": "4", @@ -43,10 +40,9 @@ "end_date": "2016-03-27 10:00:00", "text": "Week Event 4", "rec_type": "week_2___0,1,5#8", - "event_pid": "", + "event_pid": "0", "event_length": "18000", - "rec_pattern": "week_2___0,1,5", - "!nativeeditor_status": "" + "rec_pattern": "week_2___0,1,5" }, { "id": "5", @@ -54,10 +50,9 @@ "end_date": "2016-04-27 00:00:00", "text": "Week Event 5", "rec_type": "week_1___3#", - "event_pid": "", + "event_pid": "0", "event_length": "300", - "rec_pattern": "week_1___3", - "!nativeeditor_status": "" + "rec_pattern": "week_1___3" }, { "id": "6", @@ -65,10 +60,19 @@ "end_date": "9999-02-01 00:00:00", "text": "Week Event 6", "rec_type": "week_1___1,2,4,5#no", - "event_pid": "", + "event_pid": "0", "event_length": "300", - "rec_pattern": "week_1___1,2,4,5", - "!nativeeditor_status": "" + "rec_pattern": "week_1___1,2,4,5" + }, + { + "id": "7", + "start_date": "2016-02-29 00:00:00", + "end_date": "9999-02-01 00:00:00", + "text": "Week Event 7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_pid": "0", + "event_length": "86400", + "rec_pattern": "week_1___0,1,2,3,4,5,6" } ] }
\ No newline at end of file diff --git a/tests/Data_getData/WeekRecurrings/target.json b/tests/Data_getData/WeekRecurrings/target.json index 3740f93..5e530fa 100644 --- a/tests/Data_getData/WeekRecurrings/target.json +++ b/tests/Data_getData/WeekRecurrings/target.json @@ -7,7 +7,7 @@ "text": "Week event 1", "id": "1", "rec_type": "week_2___0,1,2,3,4,5,6#40", - "event_length": 21900 + "event_length": "21900" }, { "start_date": "2016-03-02 10:00:00", @@ -16,7 +16,7 @@ "text": "Week event 1", "id": "1", "rec_type": "week_2___0,1,2,3,4,5,6#40", - "event_length": 21900 + "event_length": "21900" }, { "start_date": "2016-03-03 10:00:00", @@ -25,7 +25,7 @@ "text": "Week event 1", "id": "1", "rec_type": "week_2___0,1,2,3,4,5,6#40", - "event_length": 21900 + "event_length": "21900" }, { "start_date": "2016-03-04 10:00:00", @@ -34,7 +34,7 @@ "text": "Week event 1", "id": "1", "rec_type": "week_2___0,1,2,3,4,5,6#40", - "event_length": 21900 + "event_length": "21900" }, { "start_date": "2016-03-05 10:00:00", @@ -43,7 +43,7 @@ "text": "Week event 1", "id": "1", "rec_type": "week_2___0,1,2,3,4,5,6#40", - "event_length": 21900 + "event_length": "21900" }, { "start_date": "2016-03-06 10:00:00", @@ -52,7 +52,7 @@ "text": "Week event 1", "id": "1", "rec_type": "week_2___0,1,2,3,4,5,6#40", - "event_length": 21900 + "event_length": "21900" }, { "start_date": "2016-03-14 10:00:00", @@ -61,7 +61,7 @@ "text": "Week event 1", "id": "1", "rec_type": "week_2___0,1,2,3,4,5,6#40", - "event_length": 21900 + "event_length": "21900" }, { "start_date": "2016-03-15 10:00:00", @@ -70,7 +70,7 @@ "text": "Week event 1", "id": "1", "rec_type": "week_2___0,1,2,3,4,5,6#40", - "event_length": 21900 + "event_length": "21900" }, { "start_date": "2016-03-16 10:00:00", @@ -79,7 +79,7 @@ "text": "Week event 1", "id": "1", "rec_type": "week_2___0,1,2,3,4,5,6#40", - "event_length": 21900 + "event_length": "21900" }, { "start_date": "2016-03-17 10:00:00", @@ -88,7 +88,7 @@ "text": "Week event 1", "id": "1", "rec_type": "week_2___0,1,2,3,4,5,6#40", - "event_length": 21900 + "event_length": "21900" }, { "start_date": "2016-03-18 10:00:00", @@ -97,7 +97,7 @@ "text": "Week event 1", "id": "1", "rec_type": "week_2___0,1,2,3,4,5,6#40", - "event_length": 21900 + "event_length": "21900" }, { "start_date": "2016-03-19 10:00:00", @@ -106,7 +106,7 @@ "text": "Week event 1", "id": "1", "rec_type": "week_2___0,1,2,3,4,5,6#40", - "event_length": 21900 + "event_length": "21900" }, { "start_date": "2016-03-20 10:00:00", @@ -115,7 +115,7 @@ "text": "Week event 1", "id": "1", "rec_type": "week_2___0,1,2,3,4,5,6#40", - "event_length": 21900 + "event_length": "21900" }, { "start_date": "2016-03-28 10:00:00", @@ -124,7 +124,7 @@ "text": "Week event 1", "id": "1", "rec_type": "week_2___0,1,2,3,4,5,6#40", - "event_length": 21900 + "event_length": "21900" }, { "start_date": "2016-03-29 10:00:00", @@ -133,7 +133,7 @@ "text": "Week event 1", "id": "1", "rec_type": "week_2___0,1,2,3,4,5,6#40", - "event_length": 21900 + "event_length": "21900" }, { "start_date": "2016-03-30 10:00:00", @@ -142,7 +142,7 @@ "text": "Week event 1", "id": "1", "rec_type": "week_2___0,1,2,3,4,5,6#40", - "event_length": 21900 + "event_length": "21900" }, { "start_date": "2016-03-31 10:00:00", @@ -151,7 +151,7 @@ "text": "Week event 1", "id": "1", "rec_type": "week_2___0,1,2,3,4,5,6#40", - "event_length": 21900 + "event_length": "21900" }, { "start_date": "2016-03-08 12:45:00", @@ -160,7 +160,7 @@ "text": "Week event 2", "id": "2", "rec_type": "week_2___2,5#", - "event_length": 14400 + "event_length": "14400" }, { "start_date": "2016-03-11 12:45:00", @@ -169,7 +169,7 @@ "text": "Week event 2", "id": "2", "rec_type": "week_2___2,5#", - "event_length": 14400 + "event_length": "14400" }, { "start_date": "2016-03-22 12:45:00", @@ -178,7 +178,7 @@ "text": "Week event 2", "id": "2", "rec_type": "week_2___2,5#", - "event_length": 14400 + "event_length": "14400" }, { "start_date": "2016-03-25 12:45:00", @@ -187,7 +187,7 @@ "text": "Week event 2", "id": "2", "rec_type": "week_2___2,5#", - "event_length": 14400 + "event_length": "14400" }, { "start_date": "2016-03-12 00:00:00", @@ -196,7 +196,7 @@ "text": "Week Event 3", "id": "3", "rec_type": "week_2___0,6#no", - "event_length": 300 + "event_length": "300" }, { "start_date": "2016-03-13 00:00:00", @@ -205,7 +205,7 @@ "text": "Week Event 3", "id": "3", "rec_type": "week_2___0,6#no", - "event_length": 300 + "event_length": "300" }, { "start_date": "2016-03-26 00:00:00", @@ -214,7 +214,7 @@ "text": "Week Event 3", "id": "3", "rec_type": "week_2___0,6#no", - "event_length": 300 + "event_length": "300" }, { "start_date": "2016-03-27 00:00:00", @@ -223,7 +223,7 @@ "text": "Week Event 3", "id": "3", "rec_type": "week_2___0,6#no", - "event_length": 300 + "event_length": "300" }, { "start_date": "2016-03-07 10:00:00", @@ -232,7 +232,7 @@ "text": "Week Event 4", "id": "4", "rec_type": "week_2___0,1,5#8", - "event_length": 18000 + "event_length": "18000" }, { "start_date": "2016-03-11 10:00:00", @@ -241,7 +241,7 @@ "text": "Week Event 4", "id": "4", "rec_type": "week_2___0,1,5#8", - "event_length": 18000 + "event_length": "18000" }, { "start_date": "2016-03-13 10:00:00", @@ -250,7 +250,7 @@ "text": "Week Event 4", "id": "4", "rec_type": "week_2___0,1,5#8", - "event_length": 18000 + "event_length": "18000" }, { "start_date": "2016-03-21 10:00:00", @@ -259,7 +259,7 @@ "text": "Week Event 4", "id": "4", "rec_type": "week_2___0,1,5#8", - "event_length": 18000 + "event_length": "18000" }, { "start_date": "2016-03-25 10:00:00", @@ -268,7 +268,7 @@ "text": "Week Event 4", "id": "4", "rec_type": "week_2___0,1,5#8", - "event_length": 18000 + "event_length": "18000" }, { "start_date": "2016-03-23 00:00:00", @@ -277,7 +277,7 @@ "text": "Week Event 5", "id": "5", "rec_type": "week_1___3#", - "event_length": 300 + "event_length": "300" }, { "start_date": "2016-03-30 00:00:00", @@ -286,7 +286,7 @@ "text": "Week Event 5", "id": "5", "rec_type": "week_1___3#", - "event_length": 300 + "event_length": "300" }, { "start_date": "2016-03-28 00:00:00", @@ -295,7 +295,7 @@ "text": "Week Event 6", "id": "6", "rec_type": "week_1___1,2,4,5#no", - "event_length": 300 + "event_length": "300" }, { "start_date": "2016-03-29 00:00:00", @@ -304,7 +304,7 @@ "text": "Week Event 6", "id": "6", "rec_type": "week_1___1,2,4,5#no", - "event_length": 300 + "event_length": "300" }, { "start_date": "2016-03-31 00:00:00", @@ -313,7 +313,286 @@ "text": "Week Event 6", "id": "6", "rec_type": "week_1___1,2,4,5#no", - "event_length": 300 + "event_length": "300" + }, + { + "start_date": "2016-03-01 00:00:00", + "end_date": "2016-03-02 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-02 00:00:00", + "end_date": "2016-03-03 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-03 00:00:00", + "end_date": "2016-03-04 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-04 00:00:00", + "end_date": "2016-03-05 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-05 00:00:00", + "end_date": "2016-03-06 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-06 00:00:00", + "end_date": "2016-03-07 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-07 00:00:00", + "end_date": "2016-03-08 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-08 00:00:00", + "end_date": "2016-03-09 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-09 00:00:00", + "end_date": "2016-03-10 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-10 00:00:00", + "end_date": "2016-03-11 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-11 00:00:00", + "end_date": "2016-03-12 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-12 00:00:00", + "end_date": "2016-03-13 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-13 00:00:00", + "end_date": "2016-03-14 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-14 00:00:00", + "end_date": "2016-03-15 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-15 00:00:00", + "end_date": "2016-03-16 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-16 00:00:00", + "end_date": "2016-03-17 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-17 00:00:00", + "end_date": "2016-03-18 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-18 00:00:00", + "end_date": "2016-03-19 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-19 00:00:00", + "end_date": "2016-03-20 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-20 00:00:00", + "end_date": "2016-03-21 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-21 00:00:00", + "end_date": "2016-03-22 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-22 00:00:00", + "end_date": "2016-03-23 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-23 00:00:00", + "end_date": "2016-03-24 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-24 00:00:00", + "end_date": "2016-03-25 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-25 00:00:00", + "end_date": "2016-03-26 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-26 00:00:00", + "end_date": "2016-03-27 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-27 00:00:00", + "end_date": "2016-03-28 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-28 00:00:00", + "end_date": "2016-03-29 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-29 00:00:00", + "end_date": "2016-03-30 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-30 00:00:00", + "end_date": "2016-03-31 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 + }, + { + "start_date": "2016-03-31 00:00:00", + "end_date": "2016-04-01 00:00:00", + "event_pid": "0", + "text": "Week Event 7", + "id": "7", + "rec_type": "week_1___0,1,2,3,4,5,6#no", + "event_length": 86400 } ] }
\ No newline at end of file diff --git a/tests/SchedulerHelperTest.php b/tests/SchedulerHelperTest.php index 9b13998..679a852 100644 --- a/tests/SchedulerHelperTest.php +++ b/tests/SchedulerHelperTest.php @@ -26,6 +26,8 @@ class SchedulerHelperTest extends \PHPUnit_Framework_TestCase $schedHelper::FLD_ID => "id", )); + $schedHelper->config["debug"] = false; + return $schedHelper; } |