diff options
author | sten <stenmarsh938@gmail.com> | 2016-03-22 10:34:11 +0300 |
---|---|---|
committer | sten <stenmarsh938@gmail.com> | 2016-03-22 10:34:11 +0300 |
commit | f3e859670eaef14b7a703316fcb73f1ca83cec93 (patch) | |
tree | 979062b5542c78ea0ab64c037551fa2c52931f34 | |
parent | 13053f9a9f7a29ad554ba2587f708c6fa65dba53 (diff) | |
download | scheduler-helper-php-f3e859670eaef14b7a703316fcb73f1ca83cec93.zip scheduler-helper-php-f3e859670eaef14b7a703316fcb73f1ca83cec93.tar.gz scheduler-helper-php-f3e859670eaef14b7a703316fcb73f1ca83cec93.tar.bz2 |
Fix week recurrings sunday detection.
-rw-r--r-- | RecurringType.php | 6 | ||||
-rwxr-xr-x | SchedulerHelper.php | 4 |
2 files changed, 8 insertions, 2 deletions
diff --git a/RecurringType.php b/RecurringType.php index 138d2d6..e8193ed 100644 --- a/RecurringType.php +++ b/RecurringType.php @@ -32,6 +32,8 @@ class RecurringType { private $_fields_values = array(); private $_recurring_start_date_stamp; private $_recurring_end_date_stamp; + + public static $start_on_monday = true; public function __construct($recurringType, $recurringStartDateStamp, $recurringEndDateStamp) { @@ -303,8 +305,10 @@ class RecurringType { private function _getRecurringDayStep($dateStamp, $recurringWeekDay) { $weekDay = SchedulerHelperDate::getDayOfWeek($dateStamp); + if(self::$start_on_monday) { + $recurringWeekDay = $recurringWeekDay == 0 ? 7 : $recurringWeekDay; + } $dayStep = $recurringWeekDay - $weekDay; - $dayStep = ($dayStep < 0) ? (SchedulerHelperDate::DAYS_IN_WEEK - (-$dayStep)) : $dayStep; return $dayStep; } diff --git a/SchedulerHelper.php b/SchedulerHelper.php index 0d74cb2..4fe93e0 100755 --- a/SchedulerHelper.php +++ b/SchedulerHelper.php @@ -32,7 +32,8 @@ abstract class DHelper extends SchedulerHelperConnector public $config = array( "debug" => true, - "server_date" => false + "server_date" => false, + "start_on_monay" => true ); protected $_mapped_fields = array(); @@ -365,6 +366,7 @@ class Helper extends DHelper implements IHelper $startField = $this->getStartDateFieldName(); $endField = $this->getEndDateFieldName(); + RecurringType::$start_on_monday = $this->config["start_on_monay"]; $recCount = count($recurringEvents); for($i = 0; $i < $recCount; $i++) { $eventData = $recurringEvents[$i]; |