src/Form/Gestiform/Formations/Dossier/PersonalInformationsType.php line 17

Open in your IDE?
  1. <?php
  2. namespace App\Form\Gestiform\Formations\Dossier;
  3. use App\Entity\Gestiform\Admin\MasterListe\Masterlistelg;
  4. use App\Entity\Gestiform\Formations\Dossier\PersonalInformations;
  5. use App\Repository\Gestiform\Admin\MasterlistelgRepository;
  6. use Symfony\Bridge\Doctrine\Form\Type\EntityType;
  7. use Symfony\Component\Form\AbstractType;
  8. use Symfony\Component\Form\Extension\Core\Type\CheckboxType;
  9. use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
  10. use Symfony\Component\Form\Extension\Core\Type\DateType;
  11. use Symfony\Component\Form\Extension\Core\Type\TextType;
  12. use Symfony\Component\Form\FormBuilderInterface;
  13. use Symfony\Component\OptionsResolver\OptionsResolver;
  14. class PersonalInformationsType extends AbstractType
  15. {
  16.     public function buildForm(FormBuilderInterface $builder, array $options): void
  17.     {
  18.         $builder
  19.             ->add('civilite'EntityType::class, [
  20.                     'required' => true,
  21.                     'label' => 'Civilité',
  22.                     'class' => Masterlistelg::class,
  23.                     'choice_label' => 'designation',
  24.                     'placeholder' => 'Choisir dans cette liste ...',
  25.                     'multiple' => false,
  26.                     'query_builder' => function (MasterlistelgRepository $er) {
  27.                         return $er->getByListeCode('NOYAU''CIVILITE');
  28.                     },
  29.                     'attr' => [
  30.                         'class' => "form-control"
  31.                     ],
  32.                     'label_attr' => [
  33.                         'class' => "col-lg-3 col-form-label"
  34.                     ]
  35.                 ]
  36.             )
  37.             ->add('regimeSocial'EntityType::class, [
  38.                     'required' => true,
  39.                     'label' => 'Régime social',
  40.                     'class' => Masterlistelg::class,
  41.                     'choice_label' => 'designation',
  42.                     'placeholder' => 'Choisir dans cette liste ...',
  43.                     'multiple' => false,
  44.                     'query_builder' => function (MasterlistelgRepository $er) {
  45.                         return $er->getByListeCode('NOYAU''REGIMESOCIAL');
  46.                     },
  47.                     'attr' => [
  48.                         'class' => "form-control"
  49.                     ],
  50.                     'label_attr' => [
  51.                         'class' => "col-lg-3 col-form-label"
  52.                     ]
  53.                 ]
  54.             )
  55.             ->add('nationality'ChoiceType::class, [
  56.                 'required' => true,
  57.                 'label' => 'Zone de nationalité',
  58.                 'choices' => [
  59.                     'Etranger hors Union Européenne' => '3',
  60.                     'Française' => '1',
  61.                     'Union Européenne' => '2',
  62.                 ],
  63.                 'placeholder' => 'Choisir dans cette liste ...',
  64.                 'multiple' => false,
  65.                 'attr' => [
  66.                     'class' => "form-control"
  67.                 ],
  68.                 'label_attr' => [
  69.                     'class' => "col-lg-3 col-form-label"
  70.                 ]
  71.             ])
  72.             ->add('nom'TextType::class, [
  73.                 'required' => true,
  74.                 'label' => 'Nom:',
  75.                 'attr' => [
  76.                     'class' => "form-control",
  77.                 ],
  78.                 'label_attr' => [
  79.                     'class' => "col-lg-3 col-form-label"
  80.                 ]
  81.             ])
  82.             ->add('nationalite'TextType::class, [
  83.                 'required' => false,
  84.                 'label' => 'Nationalité',
  85.                 'attr' => [
  86.                     'class' => "form-control"
  87.                 ],
  88.                 'label_attr' => [
  89.                     'class' => "col-lg-3 col-form-label"
  90.                 ]
  91.             ])
  92.             ->add('prenom'TextType::class, [
  93.                 'required' => true,
  94.                 'label' => 'Prénom:',
  95.                 'attr' => [
  96.                     'class' => "form-control"
  97.                 ],
  98.                 'label_attr' => [
  99.                     'class' => "col-lg-3 col-form-label"
  100.                 ]
  101.             ])
  102.             ->add('autresPrenoms'TextType::class, [
  103.                 'required' => true,
  104.                 'label' => 'Autres prénoms',
  105.                 'attr' => [
  106.                     'class' => "form-control"
  107.                 ],
  108.                 'label_attr' => [
  109.                     'class' => "col-lg-3 col-form-label"
  110.                 ]
  111.             ])
  112.             ->add('extensionBOE'CheckboxType::class, [
  113.                 'label' => 'Extension BOE',
  114.                 'attr' => [
  115.                     'class' => "form-check-input"
  116.                 ],
  117.                 'label_attr' => [
  118.                     'class' => "col-lg-3 col-form-label"
  119.                 ]
  120.             ])
  121.             ->add('mobile'TextType::class, [
  122.                 'required' => false,
  123.                 'label' => 'Tel Mobile',
  124.                 'attr' => [
  125.                     'class' => "form-control"
  126.                 ],
  127.                 'label_attr' => [
  128.                     'class' => "col-lg-3 col-form-label"
  129.                 ]
  130.             ])
  131.             ->add('telFixe'TextType::class, [
  132.                 'required' => false,
  133.                 'label' => 'Tél fixe',
  134.                 'attr' => [
  135.                     'class' => "form-control"
  136.                 ],
  137.                 'label_attr' => [
  138.                     'class' => "col-lg-3 col-form-label"
  139.                 ]
  140.             ])
  141.             ->add('villeNaissance'TextType::class, [
  142.                 'required' => false,
  143.                 'label' => 'Lieu de Naissance',
  144.                 'attr' => [
  145.                     'class' => "form-control"
  146.                 ],
  147.                 'label_attr' => [
  148.                     'class' => "col-lg-3 col-form-label"
  149.                 ]
  150.             ])
  151.             ->add('departementNaissance'TextType::class, [
  152.                 'required' => false,
  153.                 'label' => 'Département de naissance',
  154.                 'attr' => [
  155.                     'class' => "form-control"
  156.                 ],
  157.                 'label_attr' => [
  158.                     'class' => "col-lg-3 col-form-label"
  159.                 ]
  160.             ])
  161.             ->add('paysNaissance'TextType::class, [
  162.                 'required' => false,
  163.                 'label' => 'Pays de Naissance',
  164.                 'attr' => [
  165.                     'class' => "form-control"
  166.                 ],
  167.                 'label_attr' => [
  168.                     'class' => "col-lg-3 col-form-label"
  169.                 ]
  170.             ])
  171.             ->add('connuDoranco'TextType::class,
  172.                 [
  173.                     'required' => false,
  174.                     'label' => 'Comment nous avez-vous connu ?',
  175.                     'attr' => [
  176.                         'class' => "form-control"
  177.                     ],
  178.                     'label_attr' => [
  179.                         'class' => "col-lg-3 col-form-label"
  180.                     ]
  181.                 ])
  182.             ->add("dateNaissance"DateType::class, [
  183.                 "widget" => "single_text",
  184.                 "label" => "Date de Naissance",
  185.                 "required" => true,
  186.                 "attr" => [
  187.                     "class" => "form-control"
  188.                 ],
  189.                 "label_attr" => [
  190.                     "class" => "col-lg-3 col-form-label"
  191.                 ],
  192.             ])
  193.             ->add("dateCarteSejour"DateType::class, [
  194.                 "widget" => "single_text",
  195.                 "label" => "Date carte séjour",
  196.                 "required" => true,
  197.                 "attr" => [
  198.                     "class" => "form-control"
  199.                 ],
  200.                 "label_attr" => [
  201.                     "class" => "col-lg-3 col-form-label"
  202.                 ],
  203.             ])
  204.             ->add("dateNaissance"DateType::class, [
  205.                 "widget" => "single_text",
  206.                 "label" => "Date de Naissance",
  207.                 "required" => true,
  208.                 "attr" => [
  209.                     "class" => "form-control"
  210.                 ],
  211.                 "label_attr" => [
  212.                     "class" => "col-lg-3 col-form-label"
  213.                 ],
  214.             ])
  215.             ->add('numSecuSociale'TextType::class,
  216.                 [
  217.                     'required' => false,
  218.                     'label' => 'N° sécu',
  219.                     'attr' => [
  220.                         'class' => "form-control"
  221.                     ],
  222.                     'label_attr' => [
  223.                         'class' => "col-lg-3 col-form-label"
  224.                     ]
  225.                 ])
  226.         ;
  227.     }
  228.     public function configureOptions(OptionsResolver $resolver): void
  229.     {
  230.         $resolver->setDefaults([
  231.             'data_class' => PersonalInformations::class,
  232.         ]);
  233.     }
  234. }