src/Form/EstimateType.php line 15

Open in your IDE?
  1. <?php
  2. namespace App\Form;
  3. use App\Entity\Estimate;
  4. use Symfony\Component\Form\AbstractType;
  5. use Symfony\Component\Form\Extension\Core\Type\EmailType;
  6. use Symfony\Component\Form\Extension\Core\Type\IntegerType;
  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\CheckboxType;
  10. use Symfony\Component\Form\FormBuilderInterface;
  11. use Symfony\Component\OptionsResolver\OptionsResolver;
  12. class EstimateType extends AbstractType
  13. {
  14.     public function buildForm(FormBuilderInterface $builder, array $options)
  15.     {
  16.         $builder
  17.             ->setMethod('POST')
  18.             ->add('name',
  19.                 null,
  20.                 [
  21.                     'label' => false,
  22.                     'attr' => ['placeholder' => 'Nom']
  23.                 ]
  24.             )
  25.             ->add('firstname',
  26.                 null,
  27.                 [
  28.                     'label' => false,
  29.                     'attr' => ['placeholder' => 'Prénom']
  30.                 ]
  31.             )
  32.             ->add('postcode',
  33.                 IntegerType::class,
  34.                 [
  35.                     'label' => false,
  36.                     'attr' => ['maxlength' => 5'placeholder' => 'Code postal',]
  37.                 ]
  38.             )
  39.             ->add('town',
  40.                 null,
  41.                 [
  42.                     'label' => false,
  43.                     'attr' => ['placeholder' => 'Ville']
  44.                 ]
  45.             )
  46.             ->add('phone',
  47.                 null,
  48.                 [
  49.                     'label' => false,
  50.                     'attr' => ['placeholder' => 'Téléphone']
  51.                 ]
  52.             )
  53.             ->add('email',
  54.                 EmailType::class, [
  55.                 'label' => false,
  56.                  'attr' => ['placeholder' => 'Email'],
  57.             ])
  58.             ->add('description',
  59.                 TextareaType::class, [
  60.                 'label' => false,
  61.                 'attr' => ['placeholder' => 'Dites-nous en plus']
  62.             ])
  63.             ->add('consentement',
  64.                 CheckboxType::class, [
  65.                 'label' => 'En soumettant ce formulaire, j\'accepte que les informations saisies soient exploitées dans le strict cadre de ma demande',
  66.                 'required' => true
  67.             ])
  68.             ->add('save'SubmitType::class, [
  69.                 'label' => "Envoyer votre devis",
  70.                 'attr' => ['class' => 'save'],
  71.             ]);
  72.         ;
  73.     }
  74.     public function configureOptions(OptionsResolver $resolver)
  75.     {
  76.         $resolver->setDefaults([
  77.             'data_class' => Estimate::class,
  78.         ]);
  79.     }
  80. }