public function hourOffset()
{
static $GuestHourOffset;
if ($this->UserID > 0) {
return $this->User->HourOffset;
} else {
if (!isset($GuestHourOffset)) {
$GuestTimeZone = c('Garden.GuestTimeZone');
if ($GuestTimeZone) {
try {
$TimeZone = new DateTimeZone($GuestTimeZone);
$Offset = $TimeZone->getOffset(new DateTime('now', new DateTimeZone('UTC')));
$GuestHourOffset = floor($Offset / 3600);
} catch (Exception $Ex) {
$GuestHourOffset = 0;
LogException($Ex);
}
}
}
return $GuestHourOffset;
}
}