src/Form/DevisType.php line 11

  1. <?php
  2. namespace App\Form;
  3. use Symfony\Component\Form\AbstractType;
  4. use Symfony\Component\Form\FormBuilderInterface;
  5. use Symfony\Component\OptionsResolver\OptionsResolver;
  6. use Symfony\Contracts\Translation\TranslatorInterface;
  7. use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
  8. class DevisType extends AbstractType
  9. {
  10.     private $translator;
  11.     public function __construct(TranslatorInterface $translator)
  12.     {
  13.         $this->translator $translator;
  14.     }
  15.     public function buildForm(FormBuilderInterface $builder, array $options): void
  16.     {
  17.         $builder
  18.             ->add('societe'null, [
  19.                 'required' => true,
  20.                 'label' => 'form.label.societe',
  21.             ])
  22.             ->add('email'null, [
  23.                 'required' => true,
  24.                 'label' => 'E-mail',
  25.             ])
  26.             ->add('pays'null, [
  27.                 'required' => false,
  28.                 'label' => 'form.label.pays',
  29.             ])
  30.             ->add('nom'null, [
  31.                 'required' => true,
  32.                 'label' => 'form.label.nom',
  33.             ])
  34.             ->add('telephone'null, [
  35.                 'required' => false,
  36.                 'label' => 'form.label.telephone',
  37.             ])
  38.             ->add('langue'ChoiceType::class, [
  39.                 'required' => true,
  40.                 'label' => 'form.label.langue',
  41.                 'choices' => [
  42.                     'English' => 0,
  43.                     'Français' => 1,
  44.                     'Deutsch' => 2,
  45.                     'Nederlands' => 3,
  46.                     'Español' => 4,
  47.                     'Italiano' => 5,
  48.                     'Magyar' => 6,
  49.                     'Hrvatski' => 7,
  50.                     'Ceský' => 8,
  51.                     'Polski' => 9
  52.                 ],
  53.                 'placeholder' => null,
  54.                 'attr' => ['class' => 'custom-select']
  55.             ])
  56.             ->add('prenom'null, [
  57.                 'required' => false,
  58.                 'label' => 'form.label.prenom',
  59.             ])
  60.             ->add('siteInternet'null, [
  61.                 'required' => false,
  62.                 'label' => 'form.label.website',
  63.             ])
  64.             ->add('fonction'null, [
  65.                 'required' => false,
  66.                 'label' => 'form.label.fonction',
  67.             ]);
  68.     }
  69.     public function configureOptions(OptionsResolver $resolver): void
  70.     {
  71.         $resolver->setDefaults([
  72.             'translation_domain' => 'form-devis'
  73.             // Configure your form options here
  74.         ]);
  75.     }
  76. }