<?php
namespace App\Form;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
use Symfony\Component\Form\Extension\Core\Type\CheckboxType;
use Symfony\Component\Form\Extension\Core\Type\EmailType;
use Symfony\Component\Form\Extension\Core\Type\SubmitType;
use Symfony\Component\Form\Extension\Core\Type\TextareaType;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\Intl\Countries;
use Symfony\Component\OptionsResolver\OptionsResolver;
class ContactFormType extends AbstractType
{
/**
* @inheritDoc
*/
public function buildForm(FormBuilderInterface $builder, array $options)
{
$countryChoices = Countries::getNames();
$belgium = $countryChoices['BE'];
unset($countryChoices['Belgiƫ']);
$countryChoices = ['Belgiƫ' => $belgium] + $countryChoices;
$builder
->add('firstname', TextType::class, [
'label' => 'Firstname',
'required' => true
])
->add('lastname', TextType::class, [
'label' => 'Lastname',
'required' => true
])
->add('about', ChoiceType::class, [
'choices' => [
'Make a choice' => '',
'Zeilen' => 'Z',
'Suppen' => 'S',
'Windsurfen' => 'W',
],
'required' => true,
])
->add('email', EmailType::class, [
'label' => 'E-Mail',
'required' => true,
'attr' => [
'placeholder' => 'example@example.com'
]
])
->add('country', ChoiceType::class, [
'label' => 'Land',
'choices' => array_flip($countryChoices),
'required' => true,
])
->add('message', TextareaType::class, [
'label' => 'Message',
'required' => true
])
->add('conditions', CheckboxType::class, [
'label' => 'Conditions',
'required' => true
])
->add('submit', SubmitType::class, [
'label' => 'Submit'
]);
}
/**
* @inheritDoc
*/
public function configureOptions(OptionsResolver $resolver)
{
}
}