<?php
namespace AppBundle\Form;
use Symfony\Component\Form\Extension\Core\Type\UrlType;
use Symfony\Component\Form\Extension\Core\Type\HiddenType;
use Symfony\Component\Form\Extension\Core\Type\EmailType;
use Symfony\Component\Form\Extension\Core\Type\PasswordType;
use Symfony\Component\Form\Extension\Core\Type\CheckboxType;
use Symfony\Component\Form\Extension\Core\Type\SubmitType;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\OptionsResolver\OptionsResolver;
use AppBundle\Entity\Website;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\Validator\Constraints\Url;
class WebsiteCreationType extends AbstractType
{
/**
* @param FormBuilderInterface $builder
* @param array $options
*/
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('clubName', TextType::class, ['label' => 'Votre structure *', 'attr' => ['maxlength' => 35]])
->add('clubNumber', TextType::class, ['label' => 'Numéro d\'affiliation *'])
->add('subdomain', TextType::class, ['label' => 'Sous-domaine du site', 'required' => false, 'mapped' => false])
->add('domain', UrlType::class, ['label' => 'Domaine du site', 'required' => false, 'mapped' => false,
'constraints' => new Url(['groups' => ['creation']])])
->add('url', HiddenType::class, ['required' => false])
->add('email', EmailType::class, ['label' => 'Adresse email *'])
->add('password', PasswordType::class, ['label' => 'Mot de passe *'])
->add('cgu', CheckboxType::class, ['label' => false, 'mapped' => false])
->add('submit', SubmitType::class, ['label' => 'Je valide mon inscription'])
;
}
/**
* @param OptionsResolverInterface $resolver
*/
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(['data_class' => Website::class, 'validation_groups' => ['creation']]);
}
/**
* @return string
*/
public function getBlockPrefix()
{
return 'appbundle_website';
}
}