<?php
namespace App\Form;
use EWZ\Bundle\RecaptchaBundle\Form\Type\EWZRecaptchaType;
use EWZ\Bundle\RecaptchaBundle\Validator\Constraints\IsTrue as RecaptchaTrue;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\Extension\Core\Type\CheckboxType;
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\OptionsResolverInterface;
class ContactType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('name', TextType::class, ['attr' => ['placeholder' => 'Nombre', 'class' => 'form-control form-control-lg entrada-form']])
->add('email', TextType::class, ['attr' => ['placeholder' => 'Email', 'class' => 'form-control form-control-lg entrada-form']])
->add('subject', TextType::class, ['attr' => ['placeholder' => 'Asunto', 'class' => 'form-control form-control-lg entrada-form']])
->add('companyName', TextType::class, ['required' => false, 'attr' => ['placeholder' => 'Nombre Empresa', 'class' => 'form-control form-control-lg entrada-form']])
->add('message', TextareaType::class, ['attr' => ['cols' => 80, 'rows' => 4, 'class' => 'form-control form-control-lg entrada-form', 'placeholder' => 'Mensaje']])
->add('terms', CheckboxType::class, ['mapped' => false, 'required' => true, 'label' => false])
->add('lopd', CheckboxType::class, ['mapped' => false, 'required' => false, 'label' => 'Estoy de acuerdo'])
->add('recaptcha', EWZRecaptchaType::class, ['attr' => [
'options' => [
'theme' => 'light',
'type' => 'image',
'size' => 'normal',
'defer' => true,
'async' => true,
], ],
'mapped' => false,
'constraints' => [
new RecaptchaTrue(),
],
])
;
}
public function setDefaultOptions(OptionsResolverInterface $resolver)
{
$resolver->setDefaults([
'allow_extra_fields' => true,
]);
}
/**
* @return string
*/
public function getName()
{
return 'contact';
}
}