diff --git a/include/fields/DateTimeField.php b/include/fields/DateTimeField.php index b0a949c1a712efc0cd48fa401568a0d5bb734e9e..56cdfb0e7f80a0782a8e807ca54c9854788314cc 100644 --- a/include/fields/DateTimeField.php +++ b/include/fields/DateTimeField.php @@ -370,18 +370,29 @@ class DateTimeField { $user = $current_user; } - if($user->date_format == 'mm-dd-yyyy') { + $y = false; + $m = false; + $d = false; + $time = false; + + if($user->date_format) { list($date, $time) = explode(' ', $value); if(!empty($date)) { - list($m, $d, $y) = explode('-', $date); - if(strlen($m) < 3) { - $time = ' '.$time; - $value = "$y-$m-$d".rtrim($time); + switch ($user->date_format) { + case 'mm.dd.yyyy': list($m, $d, $y) = explode('.', $date); break; + case 'dd.mm.yyyy': list($d, $m, $y) = explode('.', $date); break; + case 'dd/mm/yyyy': list($d, $m, $y) = explode('/', $date); break; + case 'mm/dd/yyyy': list($d, $m, $y) = explode('/', $date); break; + case 'mm-dd-yyyy': list($m, $d, $y) = explode('-', $date); break; + case 'dd-mm-yyyy': list($d, $m, $y) = explode('-', $date); break; } } + if ($y) { + $value = "$y-$m-$d ".rtrim($time); + } } return $value; } -} +} \ No newline at end of file