<?php
namespace App\Form;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
use Symfony\Component\Form\Extension\Core\Type\EmailType;
use Symfony\Component\Form\Extension\Core\Type\TextareaType;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
use Symfony\Component\Validator\Constraints as Assert;
class ContactType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options): void
{
$builder
->add('fullName', TextType::class, [
'label' => 'Nom complet',
'attr' => ['placeholder' => 'Votre nom'],
'constraints' => [new Assert\NotBlank()],
])
->add('email', EmailType::class, [
'label' => 'Email',
'attr' => ['placeholder' => 'vous@exemple.com'],
'constraints' => [new Assert\NotBlank(), new Assert\Email()],
])
->add('service', ChoiceType::class, [
'label' => 'Service concerné',
'placeholder' => 'Sélectionner un service',
'choices' => [
'Podcasts' => 'podcast',
'Réels / Contenu' => 'reels',
'Mariage' => 'mariage',
'Portrait' => 'portrait',
'Corporate' => 'corporate',
'Autre' => 'autre',
],
'required' => false,
])
->add('message', TextareaType::class, [
'label' => 'Votre message',
'attr' => ['placeholder' => 'Parlez-nous de votre projet...'],
'constraints' => [new Assert\NotBlank()],
]);
}
public function configureOptions(OptionsResolver $resolver): void
{
$resolver->setDefaults([]);
}
}