src/Form/VehicleHasDocsType.php line 11

  1. <?php
  2. namespace App\Form;
  3. use Symfony\Component\Form\Extension\Core\Type\DateType;
  4. use Symfony\Component\Form\AbstractType;
  5. use Symfony\Component\Form\Extension\Core\Type\CollectionType;
  6. use Symfony\Component\Form\FormBuilderInterface;
  7. use Symfony\Component\OptionsResolver\OptionsResolver;
  8. class VehicleHasDocsType extends AbstractType
  9. {
  10.     /**
  11.      * {@inheritdoc}
  12.      */
  13.     public function buildForm(FormBuilderInterface $builder, array $options)
  14.     {
  15.         $locale $options['locale'];
  16.         $builder->add('vehicleDocument'CollectionType::class, array(
  17.                 'entry_type'    => VehicleDocsCollectionType::class,
  18.                 'by_reference'  => false,
  19.                 'entry_options' => array(
  20.                     'label'  => false,
  21.                     'locale' => $locale
  22.                 )
  23.             ));
  24.         $builder->add('vehicleRegistrations'VehicleRegistrationHasDoc::class, array(
  25.                 'label'        => false,
  26.                 'locale'       => $locale,
  27.                 'by_reference' => false
  28.             ));
  29.         $builder->add(
  30.             $builder->create(
  31.                 'insuranceStartDate'DateType::class, array(
  32.                 'label'    => 'start date',
  33.                 'widget'   => 'single_text',
  34.                 'format'   => 'yyyy-MM-dd',
  35.                 'html5'    => false,
  36.                 'required' => false,
  37.                 'mapped'=>false,
  38.                 'data' => $options['insuranceStartDate']
  39.             ))
  40.         );
  41.         $builder->add(
  42.             $builder->create(
  43.                 'insuranceExpiryDate'DateType::class, array(
  44.                 'label'    => 'expire date',
  45.                 'widget'   => 'single_text',
  46.                 'format'   => 'yyyy-MM-dd',
  47.                 'html5'    => false,
  48.                 'required' => false,
  49.                 'mapped'=>false,
  50.                 'data' => $options['insuranceExpiryDate']
  51.             ))
  52.         );
  53.     }
  54.     
  55.     /**
  56.      * {@inheritdoc}
  57.      */
  58.     public function configureOptions(OptionsResolver $resolver)
  59.     {
  60.         $resolver->setDefaults(array(
  61.             'data_class'         => \App\Entity\Vehicles::class,
  62.             'translation_domain' => 'vehicles',
  63.             'locale'             => 'en',
  64.             'insuranceStartDate' => '',
  65.             'insuranceExpiryDate' => '',
  66.         ));
  67.     }
  68.     /**
  69.      * {@inheritdoc}
  70.      */
  71.     public function getBlockPrefix()
  72.     {
  73.         return 'appbundle_vehicles';
  74.     }
  75. }