<?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\PasswordType;
use Symfony\Component\Form\Extension\Core\Type\RepeatedType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
class RegistrationType extends AbstractType
{
/**
* {@inheritdoc}
*/
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder->add('email', EmailType::class)
->add('username');
if ($options['edit']) {
$builder->add('plainPassword', RepeatedType::class, [
'type' => PasswordType::class,
'required' => false,
'invalid_message' => 'Passwords do not match',
'first_options' => [
'label' => 'Password',
'attr' => ['class' => 'form-control'],
],
'second_options' => [
'label' => 'Password (validation)',
'attr' => ['class' => 'form-control'],
]
]);
} else {
$builder->add('plainPassword', RepeatedType::class, [
'type' => PasswordType::class,
'invalid_message' => 'Passwords do not match',
'first_options' => [
'label' => 'Password',
'attr' => ['class' => 'form-control'],
],
'second_options' => [
'label' => 'Password (validation)',
'attr' => ['class' => 'form-control'],
]
]);
}
}
/**
* {@inheritdoc}
*/
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(array(
'translation_domain' => 'admin',
'data_class' => 'App\Entity\User',
'edit' => false
));
}
/**
* {@inheritdoc}
*/
public function getBlockPrefix()
{
return 'userbundle_registration';
}
}