From 0427b126c15a0a27cd7033375e30371ae6a4e516 Mon Sep 17 00:00:00 2001 From: Fabien Potencier Date: Fri, 11 Nov 2011 22:01:46 +0100 Subject: [PATCH] [Form] fixed previous merge --- .../DataTransformer/DateTimeToArrayTransformer.php | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/Symfony/Component/Form/Extension/Core/DataTransformer/DateTimeToArrayTransformer.php b/src/Symfony/Component/Form/Extension/Core/DataTransformer/DateTimeToArrayTransformer.php index d38fb98c44..baf913c314 100644 --- a/src/Symfony/Component/Form/Extension/Core/DataTransformer/DateTimeToArrayTransformer.php +++ b/src/Symfony/Component/Form/Extension/Core/DataTransformer/DateTimeToArrayTransformer.php @@ -142,8 +142,16 @@ public function reverseTransform($value) )); } - if (!ctype_digit($value['month'].$value['day'].$value['year'])) { - throw new TransformationFailedException('This is an invalid date'); + if (isset($value['month']) && !ctype_digit($value['month'])) { + throw new TransformationFailedException('This month an invalid'); + } + + if (isset($value['day']) && !ctype_digit($value['day'])) { + throw new TransformationFailedException('This day an invalid'); + } + + if (isset($value['year']) && !ctype_digit($value['year'])) { + throw new TransformationFailedException('This year an invalid'); } if (!empty($value['month']) && !empty($value['day']) && !empty($value['year']) && false === checkdate($value['month'], $value['day'], $value['year'])) {