src/DcSiteBundle/Form/RentType.php line 14

Open in your IDE?
  1. <?php
  2. namespace DcSiteBundle\Form;
  3. use CoreBundle\Form\CoreFormsType;
  4. use DcSiteBundle\Form\Transformer\RentCarTransformer;
  5. use Symfony\Component\Form\Extension\Core\Type\CheckboxType;
  6. use Symfony\Component\Form\Extension\Core\Type\HiddenType;
  7. use Symfony\Component\Form\Extension\Core\Type\TextType;
  8. use Symfony\Component\Form\FormBuilderInterface;
  9. use Symfony\Component\Form\FormEvents;
  10. use Symfony\Component\OptionsResolver\OptionsResolver;
  11. class RentType extends CoreFormsType
  12. {
  13.     public function buildForm(FormBuilderInterface $builder, array $options)
  14.     {
  15.         parent::buildForm($builder$options);
  16.         $translator $options['translator'];
  17.         $equipmentRentType $options['equipment_rent_type'];
  18.         $builder
  19.             ->add('vehicle'HiddenType::class, ['mapped' => false])
  20.             ->add('equipment_rent'CheckboxType::class, ['label' => $translator->trans('rental_equipment.rent_ekip', [], 'dc_yamaha'), 'mapped' => false'required' => false'attr' => ['checked' => true]])
  21.             ->add('equipment_rent_type'HiddenType::class, ['mapped' => false'required' => false'attr' => ['value' => $equipmentRentType]])
  22.         ;
  23.         if(!isset($options['ga_events']['withOutTime']) || !$options['ga_events']['withOutTime']) {
  24.             $builder
  25.             ->add('begin_date'TextType::class, ['label' => false'mapped' => false'attr' => ['placeholder' => 'Дата начала']])
  26.             ->add('end_date'TextType::class, ['label' => false'mapped' => false'attr' => ['placeholder' => 'Дата окончания']]);
  27.         }
  28.         $builder->addEventListener(FormEvents::SUBMIT, function ($event): void {
  29.             (new RentCarTransformer($event))->transform();
  30.         });
  31.     }
  32.     /**
  33.      * @param OptionsResolver $resolver
  34.      */
  35.     public function configureOptions(OptionsResolver $resolver)
  36.     {
  37.         parent::configureOptions($resolver);
  38.         $resolver->setDefined('vehicle');
  39.         $resolver->setDefault('equipment_rent_type'false);
  40.         $resolver->setDefault('captcha_type''buy_car_form');
  41.     }
  42. }