<?php
namespace App\Form;
use Symfony\Component\Form\AbstractType;
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\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
use Symfony\Component\Validator\Constraints\NotNull;
use Symfony\Contracts\Translation\TranslatorInterface;
class ContactType extends AbstractType
{ private TranslatorInterface $translator;
public function __construct(TranslatorInterface $translator)
{
$this->translator = $translator;
}
public function buildForm(FormBuilderInterface $builder, array $options): void
{
$builder
->add('firstName', null, [
'attr' => [
'class' => 'bg_input',
'placeholder' => $this->translator->trans('Pages.Contact.Messages.FirstNamePlaceholder',[], 'messages_front'),
],
'constraints' => [
new NotNull()
],
'label_attr' => [
'hidden' => true
]
])
->add('lastName', null, [
'constraints' => [
new NotNull()
],
'attr' => [
'class' => 'bg_input',
'placeholder' => $this->translator->trans('Pages.Contact.Messages.LastNamePlaceholder',[], 'messages_front'),
],
'label_attr' => [
'hidden' => true
]
])
->add('email', EmailType::class, [
'constraints' => [
new NotNull(),
],
'attr' => [
'class' => 'bg_input',
'placeholder' => $this->translator->trans('Pages.Contact.Messages.EmailPlaceholder',[], 'messages_front'),
],
'label_attr' => [
'hidden' => true
]
])
->add('phone', TelType::class , [
'attr' => [
'class' => 'bg_input',
'placeholder' => $this->translator->trans('Pages.Contact.Messages.TelephonePlaceholder',[], 'messages_front'),
],
'label_attr' => [
'hidden' => true
]
])
->add('message', TextareaType::class, [
'constraints' => [
new NotNull(),
],
'attr' => [
'class' => 'bg_input',
'placeholder' => $this->translator->trans('Pages.Contact.Messages.MessagePlaceholder',[], 'messages_front'),
'rows' => 5
],
'label_attr' => [
'hidden' => true
]
]);
}
public function configureOptions(OptionsResolver $resolver): void
{
$resolver->setDefaults([
'data_class' => null,
'required' => false
]);
}
public function getBlockPrefix(): string
{
return "";
}
}