|
@@ -16,6 +16,7 @@ use Symfony\Component\Form\FormInterface;
|
|
|
use Symfony\Component\Form\FormBuilder;
|
|
|
use Symfony\Component\Form\FormView;
|
|
|
use Symfony\Component\Form\ReversedTransformer;
|
|
|
+use Symfony\Component\Form\Exception\FormException;
|
|
|
use Symfony\Component\Form\Extension\Core\DataTransformer\DataTransformerChain;
|
|
|
use Symfony\Component\Form\Extension\Core\DataTransformer\DateTimeToArrayTransformer;
|
|
|
use Symfony\Component\Form\Extension\Core\DataTransformer\DateTimeToStringTransformer;
|
|
@@ -37,6 +38,10 @@ class DateTimeType extends AbstractType
|
|
|
$timeParts[] = 'second';
|
|
|
}
|
|
|
|
|
|
+ if ($options['date_widget'] !== $options['time_widget']) {
|
|
|
+ throw new FormException(sprintf('Options "date_widget" and "time_widget" need to be identical. Used: "date_widget" = "%s" and "time_widget" = "%s".', $options['date_widget'] ?: 'choice', $options['time_widget'] ?: 'choice'));
|
|
|
+ }
|
|
|
+
|
|
|
if ($options['widget'] === 'single_text') {
|
|
|
$builder->appendClientTransformer(new DateTimeToStringTransformer($options['data_timezone'], $options['user_timezone'], 'Y-m-d H:i:s'));
|
|
|
} else {
|