src/Form/SecurityType.php line 15
<?php
namespace App\Form;
use App\Entity\ContactSecurity;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
use Symfony\Component\Form\Extension\Core\Type\TelType;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\Extension\Core\Type\EmailType;
use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
use Symfony\Component\Form\Extension\Core\Type\CheckboxType;
class SecurityType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options): void
{
$builder
->add('name', TextType::class, [
'label' => 'Nom',
'attr' => [
'class' => 'form-control'
]
])
->add('firstname', TextType::class, [
'label' => 'Prénom',
'attr' => [
'class' => 'form-control'
]
])
->add('email', EmailType::class, [
'label' => 'Votre email',
'attr' => [
'class' => 'form-control'
]
])
->add('phone', TextType::class, [
'label' => 'Numéro de téléphone',
'attr' => [
'class' => 'form-control',
'pattern' => '0\d{9}' // Le filtre pour spécifier le format du numéro de téléphone (zéro initial suivi de 9 chiffres)
]
])
->add('society', TextType::class, [
'label' => 'Entreprise',
'required' => false,
'attr' => [
'class' => 'form-control',
]
])
->add('adresse', TextType::class, [
'label' => 'Adresse d\'intervention',
'attr' => [
'class' => 'form-control'
]
])
->add('city', TextType::class, [
'label' => 'Ville',
'attr' => [
'class' => 'form-control'
]
])
->add('zip', TextType::class, [
'label' => 'Code Postal',
'attr' => [
'class' => 'form-control',
]
])
->add('services', ChoiceType::class, [
'label' => 'Votre demande concernent ?',
'required' => true,
'multiple' => false,
'expanded' => false,
'choices' => array(
'Surveillance de sites et de bâtiments' => 'Surveillance de sites et de bâtiments',
'Intervention en cas dincident' => 'Intervention en cas dincident',
'Accueil et contrôle daccès' => 'Accueil et contrôle daccès',
'Protection rapprochée ' => 'Protection rapprochée',
'Sécurité événementielle' => 'Sécurité événementielle',
'Assistance technique' => 'Assistance technique '
),
'attr' => [
'class' => 'form-control'
]
])
->add('subject', TextType::class, [
'label' => 'Votre message',
'attr' => [
'class' => 'form-control'
]
])
->add('consent', CheckboxType::class, [
'label' => 'J\'accepte que mes données soient collectées et utilisées conformément à votre politique de confidentialité.',
'mapped' => false,
'required' => true,
'attr' => [
'class' => 'form-check-input', // Retirer la classe "form-check-inline" ici
],
'label_attr' => [
'class' => 'form-check-label', // Ajout d'une classe CSS personnalisée pour l'étiquette
],
]);
}
public function configureOptions(OptionsResolver $resolver): void
{
$resolver->setDefaults([
'data_class' => ContactSecurity::class,
]);
}
}