<?php
namespace App\Form;
use App\Entity\Adresse;
use App\Entity\Delegation;
use App\Entity\Gouvernorat;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Bridge\Doctrine\Form\Type\EntityType;
use Symfony\Component\OptionsResolver\OptionsResolver;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\Extension\Core\Type\IntegerType;
class AdresseType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options): void
{
$builder
->add('gouvernorat', EntityType::class, array(
'class' => Gouvernorat::class,
'label' => 'adresses.adresse_type.gov',
'choice_label' => 'libelle',
'multiple' => false,
'mapped' => true,
'attr'=> ['class' => 'col-sm-6 col-md-6 col-lg-5 col-xxl-3']
))
->add('delegation', EntityType::class, array(
'class' => Delegation::class,
'label' => 'adresses.adresse_type.delegation',
'choice_label' => 'libelle',
'multiple' => false,
'mapped' => false,
))
->add('Adresse', TextType::class, ['label' => 'adresses.adresse_type.adresse','required' => false], )
->add('code_postale', TextType::class, [
'label' => 'adresses.adresse_type.postal_code',
'mapped' => true,
'attr'=> ['min' => 0 ,'pattern' => '\d{4}', 'title' => 'Entrez exactement 4 chiffres', 'maxlength' => 4, 'oninput'=>"this.value = this.value.replace(/[^0-9.]/g, '').replace(/(\..*)\./g, '$1');"],
]);
}
public function configureOptions(OptionsResolver $resolver): void
{
$resolver->setDefaults([
'data_class' => Adresse::class,
]);
}
}