<?php
namespace App\Form;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
use Symfony\Component\Form\Extension\Core\Type\IntegerType;
use Symfony\Component\Form\Extension\Core\Type\SubmitType;
use Symfony\Component\Form\Extension\Core\Type\TextareaType;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\OptionsResolver\OptionsResolver;
use Symfony\Component\Validator\Constraints\Choice;
use Symfony\Component\Validator\Constraints\Length;
use Symfony\Component\Validator\Constraints\NotBlank;
class SvsFormContactType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options): void
{
$builder
->add('nomcomplet', TextType::class, [
'attr' => ['placeholder' => 'Nom d\'entreprise'],
'constraints' => [new NotBlank(['message' => 'Nom vide']), new Length(['min' => 1, 'max' => 255, 'exactMessage' => 'Numéro incorrect'])],
])
->add('phone', TextType::class, [
'attr' => ['placeholder' => 'Téléphone'],
'constraints' => [new NotBlank(['message' => 'Téléphone vide']), new Length(['min' => 1, 'max' => 10, 'exactMessage' => 'Numéro incorrect'])],
])
->add('prestation', TextType::class, [
'attr' => ['placeholder' => 'Préstation'],
'constraints' => [new NotBlank(['message' => 'prestation vide']), new Length(['min' => 1, 'max' => 255, 'exactMessage' => 'Numéro incorrect'])],
])
->add('personne', TextType::class, [
'attr' => ['placeholder' => 'Personne à contacter'],
'constraints' => [new NotBlank(['message' => 'Personne a contacter vide']), new Length(['min' => 1, 'max' => 255, 'exactMessage' => 'Numéro incorrect'])],
])
->add('activite', ChoiceType::class, [
'choices' => [
'Gardiennage' => 'gardiennage',
'Événementiel' => 'evenementiel',
'Transport de fonds' => 'transport_de_fonds',
'Produits sensibles' => 'produits_sensibles',
'Formation' => 'formation',
],
'attr' => ['placeholder' => 'Sélectionnez une activité'],
'constraints' => [new NotBlank(['message' => 'Activité vide']), new Choice(['choices' => ['gardiennage', 'evenementiel', 'transport_de_fonds', 'produits_sensibles', 'formation'], 'message' => 'Activité incorrecte'])],
])
->add('email', TextType::class, [
'attr' => ['placeholder' => 'E-mail'],
'constraints' => [new NotBlank(['message' => 'E-mail vide']), new Length(['min' => 1, 'max' => 255, 'exactMessage' => 'E-mail incorrect'])],
])
->add('message', TextareaType::class, [
'attr' => ['placeholder' => 'Votre message', 'rows' => 5],
'constraints' => [new NotBlank(['message' => 'Message vide']), new Length(['min' => 1, 'max' => 1000, 'exactMessage' => 'Message incorrect'])],
])
->add('save', SubmitType::class, [
'label' => 'Envoyer'
]);
}
public function configureOptions(OptionsResolver $resolver): void
{
$resolver->setDefaults([
// Configure your form options here
]);
}
}