summaryrefslogtreecommitdiff
path: root/roundcubemail/program
diff options
context:
space:
mode:
authorthomasb <thomasb@208e9e7b-5314-0410-a742-e7e81cd9613c>2012-01-06 09:40:32 +0000
committerthomasb <thomasb@208e9e7b-5314-0410-a742-e7e81cd9613c>2012-01-06 09:40:32 +0000
commit66ee29eb5f1941d0fc10dd5092c7abf0c6b15301 (patch)
tree1cf1fc3fe4fc7fb5e1100a388a3d4342f7ccfa6b /roundcubemail/program
parent308aa686e07db70c407e6c57578bbabad4dbd550 (diff)
Handle DateTime exceptions
git-svn-id: https://svn.roundcube.net/trunk@5731 208e9e7b-5314-0410-a742-e7e81cd9613c
Diffstat (limited to 'roundcubemail/program')
-rw-r--r--roundcubemail/program/include/main.inc24
1 files changed, 17 insertions, 7 deletions
diff --git a/roundcubemail/program/include/main.inc b/roundcubemail/program/include/main.inc
index 66de2e5d8..b0736625a 100644
--- a/roundcubemail/program/include/main.inc
+++ b/roundcubemail/program/include/main.inc
@@ -1062,15 +1062,25 @@ function format_date($date, $format=NULL, $convert=true)
if (empty($ts))
return '';
- $date = new DateTime("@".$ts);
+ try {
+ $date = new DateTime("@".$ts);
+ }
+ catch (Exception $e) {
+ return 'unknown';
+ }
- // convert to the right timezone
- $stz = date_default_timezone_get();
- $tz = new DateTimeZone($convert ? $RCMAIL->config->get('timezone') : 'GMT');
- date_default_timezone_set($tz->getName());
- $date->setTimezone($tz);
+ try {
+ // convert to the right timezone
+ $stz = date_default_timezone_get();
+ $tz = new DateTimeZone($convert ? $RCMAIL->config->get('timezones') : 'GMT');
+ $date->setTimezone($tz);
+ date_default_timezone_set($tz->getName());
- $timestamp = $date->format('U');
+ $timestamp = $date->format('U');
+ }
+ catch (Exception $e) {
+ $timestamp = $ts;
+ }
// define date format depending on current time
if (!$format) {