src/Form/RegistrationFormType.php line 42

Open in your IDE?
  1. <?php
  2. /**
  3.  * Pimcore
  4.  *
  5.  * This source file is available under two different licenses:
  6.  * - GNU General Public License version 3 (GPLv3)
  7.  * - Pimcore Enterprise License (PEL)
  8.  * Full copyright and license information is available in
  9.  * LICENSE.md which is distributed with this source code.
  10.  *
  11.  * @copyright  Copyright (c) Pimcore GmbH (http://www.pimcore.org)
  12.  * @license    http://www.pimcore.org/license     GPLv3 and PEL
  13.  */
  14. declare(strict_types=1);
  15. /**
  16.  * Pimcore
  17.  *
  18.  * This source file is available under two different licenses:
  19.  * - GNU General Public License version 3 (GPLv3)
  20.  * - Pimcore Enterprise License (PEL)
  21.  * Full copyright and license information is available in
  22.  * LICENSE.md which is distributed with this source code.
  23.  *
  24.  *  @copyright  Copyright (c) Pimcore GmbH (http://www.pimcore.org)
  25.  *  @license    http://www.pimcore.org/license     GPLv3 and PEL
  26.  */
  27. namespace App\Form;
  28. use Symfony\Component\Form\AbstractType;
  29. use Symfony\Component\Form\Extension\Core\Type\CheckboxType;
  30. use Symfony\Component\Form\Extension\Core\Type\EmailType;
  31. use Symfony\Component\Form\Extension\Core\Type\HiddenType;
  32. use Symfony\Component\Form\Extension\Core\Type\PasswordType;
  33. use Symfony\Component\Form\Extension\Core\Type\SubmitType;
  34. use Symfony\Component\Form\Extension\Core\Type\TextType;
  35. use Symfony\Component\Form\FormBuilderInterface;
  36. use Symfony\Component\OptionsResolver\OptionsResolver;
  37. class RegistrationFormType extends AbstractType
  38. {
  39.     /**
  40.      * @inheritDoc
  41.      */
  42.     public function buildForm(FormBuilderInterface $builder, array $options)
  43.     {
  44.         $builder
  45.             ->add('email'EmailType::class, [
  46.                 'label' => 'general.email',
  47.                 'required' => true
  48.             ])
  49.             ->add('firstname'TextType::class, [
  50.                 'label' => 'general.firstname',
  51.                 'required' => true
  52.             ])
  53.             ->add('lastname'TextType::class, [
  54.                 'label' => 'general.lastname',
  55.                 'required' => true
  56.             ]);
  57.         if (!$options['hidePassword']) {
  58.             $builder->add('password'PasswordType::class, [
  59.                 'label' => 'general.password'
  60.             ]);
  61.         }
  62.         $builder
  63.             ->add('newsletter'CheckboxType::class, [
  64.                 'label' => 'general.newsletter',
  65.                 'required' => false,
  66.                 'label_attr' => [
  67.                     'class' => 'checkbox-custom'
  68.                 ]
  69.             ])
  70.             ->add('profiling'CheckboxType::class, [
  71.                 'label' => 'general.profiling',
  72.                 'required' => false,
  73.                 'label_attr' => [
  74.                     'class' => 'checkbox-custom'
  75.                 ]
  76.             ]);
  77.         $builder
  78.             ->add('oAuthKey'HiddenType::class)
  79.             ->add('_submit'SubmitType::class, [
  80.                 'label' => 'Register',
  81.                 'attr' => [
  82.                     'class' => 'btn btn-lg btn-block btn-success'
  83.                 ]
  84.             ]);
  85.     }
  86.     /**
  87.      * @inheritDoc
  88.      */
  89.     public function configureOptions(OptionsResolver $resolver)
  90.     {
  91.         $resolver->setDefined('hidePassword');
  92.     }
  93. }