<?php
namespace App\Form;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
use Beelab\Recaptcha2Bundle\Form\Type\RecaptchaType;
use Beelab\Recaptcha2Bundle\Validator\Constraints\Recaptcha2;
use Symfony\Component\Form\Extension\Core\Type\HiddenType;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\Extension\Core\Type\TextareaType;
class EStateAdContactFormType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
if($options['userInfo'] !== null)
{
$builder
->add('name', HiddenType::class, [
'data' => $options['userInfo']->getName() . " " . $options['userInfo']->getFirstName()
])
->add('email', HiddenType::class, [
'data' => $options['userInfo']->getEmail()
])
;
} else {
$builder
->add('name')
->add('email')
;
}
$builder
->add('phone')
->add('message', TextareaType::class, [
])
->add('reference', HiddenType::class)
->add('estatead_id', HiddenType::class)
->add('g-recaptcha-response', RecaptchaType::class, [
'constraints' => new Recaptcha2(),
'mapped' => false,
'error_bubbling' => false
])
;
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults([
// Configure your form options here
'userInfo' => null
]);
}
}