From 50c6af0216d81b1bbc591e8af768799f1dee48d2 Mon Sep 17 00:00:00 2001 From: Chris Smith Date: Mon, 23 Aug 2010 06:24:13 +0100 Subject: [PATCH] [ticket/7369] CPF date should always render the users selection. CPF render code was incorrectly adding the users timezone offset instead of removing it to compensate for the addition made in user::format_date(). PHPBB3-7369 --- phpBB/includes/functions_profile_fields.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/phpBB/includes/functions_profile_fields.php b/phpBB/includes/functions_profile_fields.php index fa1cc98e10..3937cf9c21 100644 --- a/phpBB/includes/functions_profile_fields.php +++ b/phpBB/includes/functions_profile_fields.php @@ -543,8 +543,9 @@ class custom_profile else if ($day && $month && $year) { global $user; - // d/m/y 00:00 GMT isn't necessarily on the same d/m/y in the user's timezone, so add the timezone seconds - return $user->format_date(gmmktime(0, 0, 0, $month, $day, $year) + $user->timezone + $user->dst, $user->lang['DATE_FORMAT'], true); + // Date should display as the same date for every user regardless of timezone, so remove offset + // to compensate for the offset added by user::format_date() + return $user->format_date(gmmktime(0, 0, 0, $month, $day, $year) - ($user->timezone + $user->dst), $user->lang['DATE_FORMAT'], true); } return $value;