diff options
author | Frederic Guillot <fred@kanboard.net> | 2017-01-24 20:04:58 -0500 |
---|---|---|
committer | Frederic Guillot <fred@kanboard.net> | 2017-01-24 20:04:58 -0500 |
commit | d81fb20df66fd77e41f0f7d573e60b856b1e9f8a (patch) | |
tree | ea65bb3339714e5cfac6e5d781901375d1c1851a | |
parent | b23613bbe369011256de8a558707ab9096074e9e (diff) |
Fix wrong datetime formatting when task form shows validation errors
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | app/Core/DateParser.php | 6 | ||||
-rw-r--r-- | app/Validator/TaskValidator.php | 2 | ||||
-rw-r--r-- | tests/units/Core/DateParserTest.php | 3 |
4 files changed, 7 insertions, 8 deletions
@@ -12,6 +12,10 @@ Regressions: * Stay on the same page when a task is closed * Wrong URL in modal to move task to another project +Bug fixes: + +* Fix wrong datetime formatting when task form shows validation errors + Version 1.0.37 (Jan 14, 2017) ----------------------------- diff --git a/app/Core/DateParser.php b/app/Core/DateParser.php index b9aa9230..5d3be644 100644 --- a/app/Core/DateParser.php +++ b/app/Core/DateParser.php @@ -292,11 +292,9 @@ class DateParser extends Base { foreach ($fields as $field) { if (! empty($values[$field])) { - if (! ctype_digit($values[$field])) { - $values[$field] = strtotime($values[$field]); + if (ctype_digit($values[$field])) { + $values[$field] = date($format, $values[$field]); } - - $values[$field] = date($format, $values[$field]); } else { $values[$field] = ''; } diff --git a/app/Validator/TaskValidator.php b/app/Validator/TaskValidator.php index e3b0eded..e824dc05 100644 --- a/app/Validator/TaskValidator.php +++ b/app/Validator/TaskValidator.php @@ -42,7 +42,7 @@ class TaskValidator extends BaseValidator new Validators\MaxLength('title', t('The maximum length is %d characters', 200), 200), new Validators\MaxLength('reference', t('The maximum length is %d characters', 50), 50), new Validators\Date('date_due', t('Invalid date'), $this->dateParser->getParserFormats()), - new Validators\Date('date_started', t('Invalid date'), $this->dateParser->getParserFormats()), + new Validators\Date('date_started', t('Invalid date'), array($this->dateParser->getUserDateTimeFormat())), new Validators\Numeric('time_spent', t('This value must be numeric')), new Validators\Numeric('time_estimated', t('This value must be numeric')), ); diff --git a/tests/units/Core/DateParserTest.php b/tests/units/Core/DateParserTest.php index 1cf98bd3..43ba4bcd 100644 --- a/tests/units/Core/DateParserTest.php +++ b/tests/units/Core/DateParserTest.php @@ -204,9 +204,6 @@ class DateParserTest extends Base $this->assertEquals(array('date' => '06/02/2016'), $dateParser->format($values, array('date'), 'd/m/Y')); $this->assertEquals(array('date' => '02/06/2016 7:30 pm'), $dateParser->format($values, array('date'), 'm/d/Y g:i a')); - - $values['date'] = '2016-02-06'; - $this->assertEquals(array('date' => '06/02/2016'), $dateParser->format($values, array('date'), 'd/m/Y')); } public function testConvert() |