Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ewz_recaptcha:
- public_key: 6LeKxgcUAAAAANAupGHbpGvRcJnUjepi9Z4NIkeH
- private_key: 6LeKxgcUAAAAAIewN_l4ZL2AGhRKRMtmT_VmoMkD
- locale_key: %kernel.default_locale%
- ajax: true
- enabled: true
- namespace AppBundleForm;
- use SymfonyComponentFormAbstractType;
- use SymfonyComponentFormFormBuilderInterface;
- use SymfonyComponentOptionsResolverOptionsResolver;
- use SymfonyComponentFormExtensionCoreTypeEmailType;
- use SymfonyComponentFormExtensionCoreTypeTextType;
- use SymfonyComponentFormExtensionCoreTypeRepeatedType;
- use SymfonyComponentFormExtensionCoreTypePasswordType;
- use EWZBundleRecaptchaBundleFormTypeEWZRecaptchaType;
- use EWZBundleRecaptchaBundleValidatorConstraints as Recaptcha;
- class UserType extends AbstractType
- {
- public function buildForm(FormBuilderInterface $builder, array $options)
- {
- $builder
- ->add('email', EmailType::class)
- ->add('username', TextType::class)
- ->add('plainPassword', RepeatedType::class, array('type' =>
- PasswordType::class,'first_options' => array('label'
- 'Password'),'second_options' => array('label' => 'Repeat Password'),))
- ->add('recaptcha', EWZRecaptchaType::class);
- }
- public function configureOptions(OptionsResolver $resolver)
- {
- $resolver->setDefaults(array(
- 'data_class' => 'AppBundleEntityUser',
- ));
- }
- }
- namespace AppBundleController;
- use AppBundleFormUserType;
- use AppBundleEntityUser;
- use SensioBundleFrameworkExtraBundleConfigurationRoute;
- use SymfonyBundleFrameworkBundleControllerController;
- use SymfonyComponentHttpFoundationRequest;
- class RegistrationController extends Controller
- {
- /**
- * @Route("/register", name="user_registration")
- */
- public function registerAction(Request $request)
- {
- // 1) build the form
- $user = new User();
- $form = $this->createForm(UserType::class, $user);
- // 2) handle the submit (will only happen on POST)
- $form->handleRequest($request);
- if ($form->isSubmitted() && $form->isValid()) {
- // 3) Encode the password (you could also do this via Doctrine listener)
- $password = $this->get('security.password_encoder')
- ->encodePassword($user, $user->getPlainPassword());
- $user->setPassword($password);
- // 4) save the User!
- $em = $this->getDoctrine()->getManager();
- $em->persist($user);
- $em->flush();
- // ... do any other work - like sending them an email, etc
- // maybe set a "flash" success message for the user
- return $this->redirectToRoute('replace_with_some_route');
- }
- return $this->render(
- 'default/register.html.twig',
- array('form' => $form->createView())
- );
- }
- /**
- @RecaptchaIsTrue */
- public $recaptcha;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement