From 5ddef5ba238ad8bdfc23344b3bb3297067eb1747 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Fri, 26 Apr 2013 08:50:22 +0400 Subject: [PATCH] do not store tz offset in global, store timezone object instead --- include/functions.php | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/include/functions.php b/include/functions.php index 8ecdb71e..b54187e1 100644 --- a/include/functions.php +++ b/include/functions.php @@ -125,8 +125,6 @@ require_once 'lib/pubsubhubbub/publisher.php'; - $tz_offset = -1; - $utc_tz = new DateTimeZone('UTC'); $schema_version = false; /** @@ -853,26 +851,25 @@ if (!$timestamp) $timestamp = '1970-01-01 0:00'; global $utc_tz; - global $tz_offset; + global $user_tz; + + if (!$utc_tz) $utc_tz = new DateTimeZone('UTC'); $timestamp = substr($timestamp, 0, 19); # We store date in UTC internally $dt = new DateTime($timestamp, $utc_tz); - if ($tz_offset == -1) { - - $user_tz_string = get_pref('USER_TIMEZONE', $owner_uid); - - try { - $user_tz = new DateTimeZone($user_tz_string); - } catch (Exception $e) { - $user_tz = $utc_tz; - } + $user_tz_string = get_pref('USER_TIMEZONE', $owner_uid); - $tz_offset = $user_tz->getOffset($dt); + try { + if (!$user_tz) $user_tz = new DateTimeZone($user_tz_string); + } catch (Exception $e) { + $user_tz = $utc_tz; } + $tz_offset = $user_tz->getOffset($dt); + $user_timestamp = $dt->format('U') + $tz_offset; if (!$no_smart_dt) { -- 2.39.5