src/Form/ContactType.php line 15

Open in your IDE?
  1. <?php
  2. namespace App\Form;
  3. use App\Model\ContactDTO;
  4. use Symfony\Component\Form\AbstractType;
  5. use Symfony\Component\Form\Extension\Core\Type\CheckboxType;
  6. use Symfony\Component\Form\Extension\Core\Type\EmailType;
  7. use Symfony\Component\Form\Extension\Core\Type\TelType;
  8. use Symfony\Component\Form\Extension\Core\Type\TextareaType;
  9. use Symfony\Component\Form\Extension\Core\Type\TextType;
  10. use Symfony\Component\Form\FormBuilderInterface;
  11. use Symfony\Component\OptionsResolver\OptionsResolver;
  12. class ContactType extends AbstractType
  13. {
  14.     public function buildForm(FormBuilderInterface $builder, array $options)
  15.     {
  16.         $builder
  17.             ->add('firstname'TextType::class, [
  18.                 'attr' => [
  19.                     'placeholder' => 'Prénom*',
  20.                     'class' => 'mb-2',
  21.                     'autocomplete' => 'noo'
  22.                 ],
  23.                 'required' => false
  24.             ])
  25.             ->add('lastname'TextType::class, [
  26.                 'attr' => [
  27.                     'placeholder' => 'Nom*',
  28.                     'class' => 'mb-2',
  29.                     'autocomplete' => 'noo'
  30.                 ],
  31.                 'required' => false
  32.             ])
  33.             ->add('phone'TelType::class, [
  34.                 'attr' => [
  35.                     'placeholder' => 'Téléphone ou GSM*',
  36.                     'class' => 'mb-2',
  37.                     'autocomplete' => 'noo'
  38.                 ],
  39.                 'required' => false
  40.             ])
  41.             ->add('email'EmailType::class, [
  42.                 'attr' => [
  43.                     'placeholder' => 'Adresse mail*',
  44.                     'class' => 'mb-2',
  45.                     'autocomplete' => 'noo'
  46.                 ],
  47.                 'required' => false
  48.             ])
  49.             ->add('message'TextareaType::class, [
  50.                 'attr' => [
  51.                     'placeholder' => 'Message*',
  52.                     'class' => 'mb-2'
  53.                 ],
  54.                 'required' => false
  55.             ])
  56.              ->add('sign'CheckboxType::class, [
  57.                 'label' => 'J’accepte que mes données personnelles soient utilisées dans le cadre d’une communication avec Floor.',
  58.                 'attr' => [
  59.                     'class' => 'mb-2'
  60.                 ],
  61.                  'required' => true,
  62.                  'mapped' => false
  63.             ])
  64.         ;
  65.     }
  66.     public function configureOptions(OptionsResolver $resolver)
  67.     {
  68.         $resolver->setDefaults([
  69.             'data_class' => ContactDTO::class,
  70.         ]);
  71.     }
  72. }