getDbRepeatType() != -1; } public function getUTCStartDateAndTime() { $dt = new DateTime( "{$this->getDbFirstShow()} {$this->getDbStartTime()}", new DateTimeZone($this->getDbTimezone()) ); $dt->setTimezone(new DateTimeZone("UTC")); return $dt; } // Returns the start of a show in the timezone it was created in public function getLocalStartDateAndTime() { $dt = new DateTime( "{$this->getDbFirstShow()} {$this->getDbStartTime()}", new DateTimeZone($this->getDbTimezone()) ); //set timezone to that of the show $dt->setTimezone(new DateTimeZone($this->getDbTimezone())); return $dt; } /** * * Returns the end of a show in the timezone it was created in * @param DateTime $startDateTime first show in show's local time */ public function getLocalEndDateAndTime($showStart) { $startDateTime = clone $showStart; $duration = explode(":", $this->getDbDuration()); return $startDateTime->add(new DateInterval('PT'.$duration[0].'H'.$duration[1].'M')); } public function isShowStartInPast() { return $this->getUTCStartDateAndTime()->format("Y-m-d H:i:s") < gmdate("Y-m-d H:i:s"); } public function formatDuration() { $info = explode(':',$this->getDbDuration()); return str_pad(intval($info[0]),2,'0',STR_PAD_LEFT).'h '.str_pad(intval($info[1]),2,'0',STR_PAD_LEFT).'m'; } } // CcShowDays