src/Form/Type/VisioStep1Type.php line 16

Open in your IDE?
  1. <?php
  2. namespace App\Form\Type;
  3. use Symfony\Component\Form\AbstractType;
  4. use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
  5. use Symfony\Component\Form\Extension\Core\Type\EmailType;
  6. use Symfony\Component\Form\Extension\Core\Type\IntegerType;
  7. use Symfony\Component\Form\Extension\Core\Type\TextType;
  8. use Symfony\Component\Form\FormBuilderInterface;
  9. use Symfony\Component\OptionsResolver\OptionsResolver;
  10. /**
  11.  * CommandeType
  12.  */
  13. class VisioStep1Type extends AbstractType
  14. {
  15.     protected $type;
  16.     public function buildForm(FormBuilderInterface $builder, array $options)
  17.     {
  18.         $builder
  19.             ->add('nom'TextType::class, array(
  20.                 'attr' => array(
  21.                     'class' => 'form--input-lastname',
  22.                     'placeholder' => 'Nom',
  23.                     'pattern' => '.{3,100}',
  24.                 ),
  25.                 'label' => false,
  26.                 'required' => true
  27.             ))
  28.             ->add('prenom'TextType::class, array(
  29.                 'attr' => array(
  30.                     'class' => 'form--input-firstname',
  31.                     'placeholder' => 'Prénom',
  32.                     'pattern' => '.{3,100}',
  33.                 ),
  34.                 'label' => false,
  35.                 'required' => true
  36.             ))
  37.             ->add('email'EmailType::class, array(
  38.                 'attr' => array(
  39.                     'class' => 'form--input-email',
  40.                     'placeholder' => 'votreadressemail@mail.com',
  41.                     'pattern' => '.{3,255}',
  42.                 ),
  43.                 'label' => false,
  44.                 'required' => true
  45.             ))
  46.             ->add('tel'TextType::class, array(
  47.                 'attr' => array(
  48.                     'class' => 'form--input-phone',
  49.                     'placeholder' => 'Téléphone',
  50.                     'pattern' => '.{3,20}',
  51.                 ),
  52.                 'required' => true,
  53.                 'label' => false,
  54.             ))
  55.             ->add('sexe'ChoiceType::class, array(
  56.                 'choices' => [
  57.                     'Homme' => 'homme',
  58.                     'Femme' => 'femme',
  59.                     'Enfant' => 'enfant',
  60.                     'Bébé' => 'bebe'
  61.                 ],
  62.                 'choice_translation_domain' => 'messages',
  63.                 'translation_domain' => 'messages',
  64.                 'placeholder' => 'Votre sexe de naissance',
  65.                 'attr' => array(
  66.                     'class' => 'form--input-sexe',
  67.                     'placeholder' => 'Votre sexe de naissance',
  68.                     'pattern' => '.{3,20}',
  69.                 ),
  70.                 'label' => false,
  71.                 'required' => true
  72.             ))
  73.             ->add('age'IntegerType::class, array(
  74.                 'attr' => array(
  75.                     'min' => 1,
  76.                     'max' => 99,
  77.                     'class' => 'form--input-age',
  78.                     'placeholder' => 'Choisir votre âge',
  79.                     'pattern' => '.{1,3}',
  80.                 ),
  81.                 'label' => 'form.age',
  82.                 'required' => true
  83.             ))
  84.         ;
  85.     }
  86.     public function setDefaultOptions(OptionsResolver $resolver)
  87.     {
  88.         $resolver->setDefaults(array(
  89.             'data_class' => 'App\Entity\Commande',
  90.             'cascade_validation' => 'true',
  91.             'validation_groups' => array('registration'),
  92.             'csrf_protection' => 'true',
  93.             'csrf_field_name' => 'true',
  94.             'intention' => 'commande_item'
  95.         ));
  96.     }
  97.     public function getName()
  98.     {
  99.         return 'app_commandetype';
  100.     }
  101. }