src/Form/CMS/ContactFormType.php line 16

Open in your IDE?
  1. <?php
  2. namespace App\Form\CMS;
  3. use App\Entity\CMS\ContactForm;
  4. use Symfony\Component\Form\AbstractType;
  5. use Symfony\Component\Form\Extension\Core\Type\EmailType;
  6. use Symfony\Component\Form\Extension\Core\Type\HiddenType;
  7. use Symfony\Component\Form\Extension\Core\Type\SubmitType;
  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. use Symfony\Component\Validator\Constraints\Length;
  13. class ContactFormType extends AbstractType
  14. {
  15.     public function buildForm(FormBuilderInterface $builder, array $options)
  16.     {
  17.         $builder
  18.             ->add('contactName'TextType::class, ['attr' => ['placeholder' => 'Nom / prénom *']])
  19.             ->add('contactEmail'EmailType::class, ['attr' => ['placeholder' => 'Votre email *']])
  20.             ->add('mailObject'TextType::class, [
  21.               'required' => false,
  22.               'attr' => ['placeholder' => 'L\'objet de votre message']
  23.             ])
  24.             ->add('message'TextareaType::class, [
  25.                 'constraints' => [new Length([
  26.                     'min' => 3'minMessage' => 'Vous devez saisir 3 caractères minimum.',
  27.                     'max'=> 5000'maxMessage' => 'Vous pouvez saisir 5000 caractères maximum.',
  28.                 ])],
  29.                 'attr' => ['placeholder' => 'Votre message''minlength'=>'3''maxlength'=>'5000'],
  30.             ])
  31.             ->add('captcha'TextType::class, ['attr' => ['placeholder' => 'Captcha *']])
  32.             ->add('envoyer'SubmitType::class, ['attr' => ['class' => 'button']])
  33.         ;
  34.     }
  35.     public function configureOptions(OptionsResolver $resolver): void
  36.     {
  37.         $resolver
  38.             ->setDefaults(['data_class' => ContactForm::class]);
  39.     }
  40. }