diff options
-rwxr-xr-x | SchedulerHelper.php | 11 | ||||
-rwxr-xr-x | SchedulerHelperDate.php | 8 |
2 files changed, 18 insertions, 1 deletions
diff --git a/SchedulerHelper.php b/SchedulerHelper.php index 4fe93e0..de5fd59 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_monay" => 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; } diff --git a/SchedulerHelperDate.php b/SchedulerHelperDate.php index b664492..0836997 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; |