]> git.mxchange.org Git - friendica.git/commitdiff
recover from datetime parse issues, inspired by https://github.com/friendica/friendic...
authorfriendica <info@friendica.com>
Mon, 16 Jul 2012 04:00:11 +0000 (21:00 -0700)
committerfriendica <info@friendica.com>
Mon, 16 Jul 2012 04:00:11 +0000 (21:00 -0700)
include/datetime.php

index 75ae685f3ae2b3d23dfba2cdfe2a9db9bb1e235b..efcfa0a177eb8319e8feb6cd64033962efea333d 100644 (file)
@@ -100,11 +100,33 @@ function datetime_convert($from = 'UTC', $to = 'UTC', $s = 'now', $fmt = "Y-m-d
                return str_replace('1','0',$d->format($fmt));
        }
 
-       $d = new DateTime($s, new DateTimeZone($from));
-       $d->setTimeZone(new DateTimeZone($to));
+       try {
+               $from_obj = new DateTimeZone($from);
+       }
+       catch(Exception $e) {
+               $from_obj = new DateTimeZone('UTC');
+       }
+
+       try {
+               $d = new DateTime($s, $from_obj);
+       }
+       catch(Exception $e) {
+               logger('datetime_convert: exception: ' . $e->getMessage());
+               $d = new DateTime('now', $from_obj);
+       }
+
+       try {
+               $to_obj = new DateTimeZone($to);
+       }
+       catch(Exception $e) {
+               $to_obj = new DateTimeZone('UTC');
+       }
+
+       $d->setTimeZone($to_obj);
        return($d->format($fmt));
 }}
 
+
 // wrapper for date selector, tailored for use in birthday fields
 
 function dob($dob) {