src/Form/ContactType.php line 13
<?php
namespace App\Form;
use App\Entity\Contact;
use Karser\Recaptcha3Bundle\Form\Recaptcha3Type;
use Karser\Recaptcha3Bundle\Validator\Constraints\Recaptcha3;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
class ContactType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options): void
{
$builder
->add('civility', ChoiceType::class, [
'choices' => ['Mme' => 'f', 'M' => 'm'],
'multiple' => false,
'expanded' => true
])
->add('lastname')
->add('firstname')
->add('email')
->add('reference')
->add('title', ChoiceType::class, [
'choices' => [
'Je n\'ai pas pu valider ma participation' => 'Je n\'ai pas pu valider ma participation',
'Ma participation est non conforme, je souhaite comprendre pourquoi' => 'Ma participation est non conforme, je souhaite comprendre pourquoi',
'Ma participation est conforme, je souhaite plus d\'informations sur la livraison' => 'Ma participation est conforme, je souhaite plus d\'informations sur la livraison',
'Ma participation est conforme, je souhaite modifier mes informations de livraison' => 'Ma participation est conforme, je souhaite modifier mes informations de livraison',
'Signaler un problème technique sur le site web' => 'Signaler un problème technique sur le site web',
'Je n\'ai pas reçu le mail de confirmation' => 'Je n\'ai pas reçu le mail de confirmation',
'Autre demande' => 'Autre demande',
],
'required'=>false
])
->add('message')
;
if ('test' !== $_ENV['APP_ENV']) {
$builder
->add('captcha', Recaptcha3Type::class, [
'constraints' => new Recaptcha3(['message' => 'Il y a eu des problèmes avec votre captcha. {{ errorCodes }}']),
'action_name' => 'participation',
'attr' => [
'class' => 'input-captcha-token'
]
]);
}
}
public function configureOptions(OptionsResolver $resolver): void
{
$resolver->setDefaults([
'data_class' => Contact::class,
]);
}
}