diff --git a/forms/DateField.php b/forms/DateField.php index 50077d9d6..848ca3d94 100755 --- a/forms/DateField.php +++ b/forms/DateField.php @@ -48,6 +48,7 @@ class DateField extends TextField { protected $config = array( 'showcalendar' => false, 'dmyfields' => false, + 'dmyseparator' => ' / ', 'dateformat' => null, 'datavalueformat' => 'yyyy-MM-dd', 'min' => null, @@ -101,13 +102,15 @@ class DateField extends TextField { $fieldYear->addExtraClass('year'); $fieldYear->setMaxLength(4); - // TODO Locale specific ordering of fields - $sep = ' / '; - $html = $fieldDay->Field() . - $sep . - $fieldMonth->Field() . - $sep . - $fieldYear->Field(); + // order fields depending on format + $sep = $this->getConfig('dmyseparator'); + $format = $this->getConfig('dateformat'); + $fields = array(); + $fields[stripos($format, 'd')] = $fieldDay->Field(); + $fields[stripos($format, 'm')] = $fieldMonth->Field(); + $fields[stripos($format, 'y')] = $fieldYear->Field(); + ksort($fields); + $html = implode($sep, $fields); } // Default text input field else {