src/Form/ContactType.php line 13

  1. <?php
  2. namespace App\Form;
  3. use Symfony\Component\Form\AbstractType;
  4. use Gregwar\CaptchaBundle\Type\CaptchaType;
  5. use Symfony\Component\Form\FormBuilderInterface;
  6. use Symfony\Component\OptionsResolver\OptionsResolver;
  7. use Symfony\Component\Form\Extension\Core\Type\TextType;
  8. use Symfony\Component\Form\Extension\Core\Type\EmailType;
  9. use Symfony\Component\Form\Extension\Core\Type\TextareaType;
  10. class ContactType extends AbstractType
  11. {
  12.     public function buildForm(FormBuilderInterface $builder, array $options): void
  13.     {
  14.         $builder
  15.             ->add('nom'TextType::class, [
  16.                 'label' => false,
  17.                 'required' => true,
  18.                 'attr' => [
  19.                     'class' => 'form-control',
  20.                     'placeholder' => 'Nom *'
  21.                 ]
  22.             ])
  23.             ->add('prenom'TextType::class, [
  24.                 'required' => true,
  25.                 'label' => false,
  26.                 'attr' => [
  27.                     'class' => 'form-control',
  28.                     'placeholder' => 'Prénom *'
  29.                 ]
  30.             ])
  31.             ->add('email'EmailType::class, [
  32.                 'required' => true,
  33.                 'label' => false,
  34.                 'attr' => [
  35.                     'class' => 'form-control',
  36.                     'placeholder' => 'E-mail *'
  37.                 ]
  38.             ])
  39.             ->add('telephone'TextType::class, [
  40.                 'required' => false,
  41.                 'label' => false,
  42.                 'attr' => [
  43.                     'class' => 'form-control',
  44.                     'placeholder' => 'Téléphone *'
  45.                 ]
  46.             ])
  47.             ->add('objet'TextType::class, [
  48.                 'required' => true,
  49.                 'label' => false,
  50.                 'attr' => [
  51.                     'class' => 'form-control',
  52.                     'placeholder' => 'Objet *'
  53.                 ]
  54.             ])
  55.             ->add('message'TextareaType::class, [
  56.                 'required' => true,
  57.                 'label' => false,
  58.                 'attr' => [
  59.                     'class' => 'form-control',
  60.                     'placeholder' => 'Message *',
  61.                     'rows' => 8
  62.                 ]
  63.             ])
  64.             ->add('captcha'CaptchaType::class, [
  65.                 'label' => false,
  66.                 'length' => 6,
  67.                 'width' => 200,
  68.                 'height' => 60,
  69.                 'as_url' => true,
  70.                 'reload' => true,
  71.                 'attr' => [
  72.                     'style' => 'width: 200px',
  73.                     'class' => 'form-control',
  74.                 ]
  75.             ])
  76.         ;
  77.     }
  78.     public function configureOptions(OptionsResolver $resolver): void
  79.     {
  80.         $resolver->setDefaults([
  81.             // Configure your form options here
  82.         ]);
  83.     }
  84. }