src/Form/NewsletterType.php line 14

Open in your IDE?
  1. <?php
  2. namespace App\Form;
  3. use Symfony\Component\Form\AbstractType;
  4. use Symfony\Component\Form\Extension\Core\Type\EmailType;
  5. use Symfony\Component\Form\Extension\Core\Type\HiddenType;
  6. use Symfony\Component\Form\Extension\Core\Type\TextType;
  7. use Symfony\Component\Form\FormBuilderInterface;
  8. use Symfony\Component\OptionsResolver\OptionsResolver;
  9. use Symfony\Component\Security\Csrf\CsrfToken;
  10. class NewsletterType extends AbstractType
  11. {
  12.     public function buildForm(FormBuilderInterface $builder, array $options)
  13.     {
  14.         $cabinet=$options['cabinet'];
  15.         $builder
  16.             ->add('email'EmailType::class, [
  17.                 'required' => true,
  18.                 'label' => false,
  19.                 'attr' => array(
  20.                     'placeholder' => 'Votre e-mail*'
  21.                 )
  22.             ])
  23.             ->add('name'TextType::class, [
  24.                 'required' => true,
  25.                 'label' => false,
  26.                 'attr' => array(
  27.                     'placeholder' => 'Votre nom*'
  28.                 )
  29.             ])
  30.             ->add('hp'HiddenType::class, [
  31.                 'required' => false
  32.             ]);
  33.             if($cabinet!=null)
  34.           if($cabinet->getParameters()->getGOOGLERECAPTCHASECRET()!=null && $cabinet->getParameters()->getGOOGLERECAPTCHASITEKEY()!=null )
  35.             {
  36.             $builder
  37.              ->add('captcha'ReCaptchaType::class, [
  38.          'type' => 'invisible' // (invisible, checkbox)
  39.             ]);
  40.         }
  41.     }
  42.     public function configureOptions(OptionsResolver $resolver)
  43.     {
  44.         $resolver->setDefaults([
  45.             'csrf_protection' => false,
  46.             'cabinet'=>null
  47.         ]);
  48.     }
  49. }