<?php class ActionScheduler_DateTime extends DateTime { protected $utcOffset = 0; public function getTimestamp() { return method_exists('DateTime', 'getTimestamp') ? parent::getTimestamp() : $this->format('U'); } public function setUtcOffset($offset) { $this->utcOffset = intval($offset); } public function getOffset() { return $this->utcOffset ? $this->utcOffset : parent::getOffset(); } public function setTimezone($timezone) { $this->utcOffset = 0; parent::setTimezone($timezone); return $this; } public function getOffsetTimestamp() { return $this->getTimestamp() + $this->getOffset(); } }