src/Form/ContactType.php line 15

  1. <?php
  2. namespace App\Form;
  3. use App\Entity\Contact;
  4. use Symfony\Component\Form\AbstractType;
  5. use Symfony\Component\Form\Extension\Core\Type\CheckboxType;
  6. use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
  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): void
  15.     {
  16.         $builder
  17.             ->add('firstname')
  18.             ->add('lastname')
  19.             ->add('phone')
  20.             ->add('email')
  21.             ->add('subject'ChoiceType::class, [
  22.                 'label' => 'Objet de votre demande',
  23.                 'choices'  => [
  24.                     'Choisissez' => null,
  25.                     'Je souhaite avoir mes cartes de visite sur un présentoir' => 'Je souhaite avoir mes cartes de visite sur un présentoir',
  26.                     'Je souhaite recevoir un présentoir' => 'Je souhaite recevoir un présentoir',
  27.                     'Je souhaite refaire le stock de mon présentoir' => 'Je souhaite refaire le stock de mon présentoir',
  28.                     'Je souhaite me désabonner' => 'Je souhaite me désabonner',
  29.                     'Autre demande' => 'Autre demande',
  30.                 ],
  31.             ])
  32.             ->add('message'TextareaType::class, [
  33.                 'label'    => 'Votre message',
  34.                 'required' => true,
  35.             ])
  36.             ->add('rgpd'CheckboxType::class, [
  37.                 'label'    => 'J\'accepte que CreaCard stocke les informations soumises afin de pouvoir répondre à ma demande.',
  38.                 'required' => true,
  39.             ])
  40.         ;
  41.     }
  42.     public function configureOptions(OptionsResolver $resolver): void
  43.     {
  44.         $resolver->setDefaults([
  45.             'data_class' => Contact::class,
  46.         ]);
  47.     }
  48. }