src/Form/ContactForm.php line 13
<?php
namespace App\Form;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\Extension\Core\Type\EmailType;
use Symfony\Component\Form\Extension\Core\Type\TelType;
use Symfony\Component\Form\Extension\Core\Type\TextareaType;
use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
class ContactForm extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options): void
{
$builder
->add('firstName', TextType::class, [
'label' => 'allform.contact.firstName',
'attr' => [
'class' => 'block w-full my-2 px-3 py-2 border border-gray-300 placeholder-gray-500 text-gray-900 rounded-t-md focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 focus:z-10 sm:text-sm'
]
])
->add('lastName', TextType::class, [
'label' => 'allform.contact.lastName',
'attr' => [
'class' => 'block w-full my-2 px-3 py-2 border border-gray-300 placeholder-gray-500 text-gray-900 rounded-t-md focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 focus:z-10 sm:text-sm'
]
])
->add('email', EmailType::class, [
'label' => 'allform.contact.email',
'attr' => [
'class' => 'block w-full my-2 px-3 py-2 border border-gray-300 placeholder-gray-500 text-gray-900 rounded-t-md focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 focus:z-10 sm:text-sm'
]
])
->add('phone', TelType::class, [
'label' => 'allform.contact.phone',
'attr' => [
'class' => 'block w-full my-2 px-3 py-2 border border-gray-300 placeholder-gray-500 text-gray-900 rounded-t-md focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 focus:z-10 sm:text-sm'
]
])
->add('requestType', ChoiceType::class, [
'label' => 'contact.type',
'choices' => [
'contact.demande' => 'info',
'contact.probleme' => 'problem'
],
'attr' => [
'class' => 'block w-full my-2 px-3 py-2 border border-gray-300 placeholder-gray-500 text-gray-900 rounded-t-md focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 focus:z-10 sm:text-sm'
]
])
->add('problemType', ChoiceType::class, [
'label' => 'contact.typepro',
'choices' => [
'contact.probleme1' => 'create_account',
'contact.probleme2' => 'login',
'contact.probleme3' => 'payment',
'contact.probleme4' => 'no_attestation',
'contact.probleme5' => 'publish_property',
'contact.probleme6' => 'send_application',
'contact.probleme7' => 'no_owner_news',
'contact.probleme8' => 'delete_account',
'contact.autre' => 'other'
],
'required' => false,
'attr' => [
'class' => 'block w-full my-2 px-3 py-2 border border-gray-300 placeholder-gray-500 text-gray-900 rounded-t-md focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 focus:z-10 sm:text-sm'
]
])
->add('message', TextareaType::class, [
'label' => 'allform.contact.message',
'attr' => [
'class' => 'block w-full my-2 px-3 py-2 border border-gray-300 placeholder-gray-500 text-gray-900 rounded-md focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 focus:z-10 sm:text-sm',
'rows' => '6',
'placeholder' => 'contact.desc'
]
]);
}
public function configureOptions(OptionsResolver $resolver): void
{
$resolver->setDefaults([
// Configurez vos options par défaut ici si nécessaire
]);
}
}