src/Form/Adherent/Registration/UserPersonType.php line 16

Open in your IDE?
  1. <?php
  2. namespace App\Form\Adherent\Registration;
  3. use App\Entity\Person;
  4. use App\Form\Adherent\BirthDateType;
  5. use App\Form\Adherent\FirstNameType;
  6. use Symfony\Component\Form\AbstractType;
  7. use Symfony\Component\Form\Extension\Core\Type\TextType;
  8. use Symfony\Component\Form\FormBuilderInterface;
  9. use Symfony\Component\OptionsResolver\OptionsResolver;
  10. use Symfony\Component\Validator\Constraints\GreaterThanOrEqual;
  11. use Symfony\Component\Validator\Constraints\LessThan;
  12. use Symfony\Component\Validator\Constraints\NotBlank;
  13. class UserPersonType extends AbstractType
  14. {
  15.     public function buildForm(FormBuilderInterface $builder, array $options): void
  16.     {
  17.         $builder
  18.             ->add('birthName'TextType::class, [
  19.                 'constraints' => [new NotBlank()],
  20.                 'label'       => 'Nom de naissance',
  21.             ])
  22.             ->add('firstName'FirstNameType::class)
  23.             ->add('birthDate'BirthDateType::class, [
  24.                 'constraints' => [
  25.                     new NotBlank(),
  26.                     new GreaterThanOrEqual(
  27.                         value'1930-01-01',
  28.                         message'Votre date de naissance doit être supérieure au 01/01/1930'
  29.                     ),
  30.                     new LessThan('-18 years'message'Vous devez être majeur pour procéder à une inscription'),
  31.                 ],
  32.             ]);
  33.     }
  34.     public function configureOptions(OptionsResolver $resolver): void
  35.     {
  36.         $resolver->setDefaults([
  37.             'data_class' => Person::class,
  38.         ]);
  39.     }
  40. }