src/Modules/Newsletter/Form/NewsletterContactsType.php line 17

Open in your IDE?
  1. <?php
  2. namespace App\Modules\Newsletter\Form;
  3. use App\Modules\Newsletter\Entity\Newsletter;
  4. use App\Modules\Newsletter\Entity\NewsletterContacts;
  5. use Doctrine\ORM\EntityRepository;
  6. use Symfony\Bridge\Doctrine\Form\Type\EntityType;
  7. use Symfony\Component\Form\AbstractType;
  8. use Symfony\Component\Form\Extension\Core\Type\EmailType;
  9. use Symfony\Component\Form\Extension\Core\Type\SubmitType;
  10. use Symfony\Component\Form\FormBuilderInterface;
  11. use Symfony\Component\OptionsResolver\OptionsResolver;
  12. class NewsletterContactsType extends AbstractType
  13. {
  14.     public function buildForm(FormBuilderInterface $builder, array $options): void
  15.     {
  16.         $builder
  17.             ->add('email'EmailType::class, [
  18.                 "label_attr"=>[
  19.                     "class"=>"input-group-addon"
  20.                 ],
  21.                 "attr"=>[
  22.                     "placeholder"=>"Votre adresse mail"
  23.                 ],
  24.                 "label"=>"Adresse mail *"
  25.             ])
  26.             ->add("submit"SubmitType::class, [
  27.                 "label"=>'Envoyer',
  28.                 'attr'=>[
  29.                     'class'=>'btn btn-white',
  30.                     'data-modules--forms-target'=>'submit'
  31.                 ]
  32.             ])
  33.             ->add('refNewsletter'EntityType::class, array(
  34.                 'class' => Newsletter::class,
  35.                 'query_builder' => function (EntityRepository $er) {
  36.                     return $er->createQueryBuilder('n')
  37.                         ->orderBy('n.name''ASC');
  38.                 },
  39.                 'placeholder'=>'- - -',
  40.                 'attr'=>['class'=>'selectpicker'],
  41.                 'label_attr'=>['class'=>'input-group-text'],
  42.                 'choice_label' => 'name',
  43.                 'label' => 'Newsletter'
  44.             ))
  45.         ;
  46.     }
  47.     public function configureOptions(OptionsResolver $resolver): void
  48.     {
  49.         $resolver->setDefaults([
  50.             'data_class' => NewsletterContacts::class,
  51.         ]);
  52.     }
  53. }