symfony2 - FOS UserBundle error on profile change -



symfony2 - FOS UserBundle error on profile change -

i'm using symfony 2.0 fos user bundle , when comes profile alter unusual behavior:

in user entity im using fosvalidator this:

@fosvalidator\unique(property="usernamecanonical", message="fos_user.username.already_used", groups={"facebook", "profile_username"})

an in profilecontroller

the form validated via

$form = $this->container->get('form.factory')->create(new profilesimpleformtype(array($field)), $user); $session = $this->container->get("session"); if ($this->container->get('request')->getmethod() == 'post') { $form->bindrequest($this->container->get('request')); if ($form->isvalid()) { $this->container->get('fos_user.user_manager')->updateuser($user); homecoming $this->container->get('templating')->renderresponse('fosuserbundle:profile:show_field.html.' . $this->container->getparameter('fos_user.template.engine'), array( 'field' => $field, 'user' => $user )); // } }else{ $user2 = $this->container->get('security.context')->gettoken()->getuser(); } }

but unusual behavior:

if form not valid because username exists $user2 set user existing username can hijack other business relationship changing username.

i tried debug view kind of listeners cant find point existing username set secury token.

i solved problem myself. solution tell usermanager reload user via:

$this->container->get('fos_user.user_manager')->reloaduser($user);

symfony2 fosuserbundle

Comments

Popular posts from this blog

web services - java.lang.NoClassDefFoundError: Could not initialize class net.sf.cglib.proxy.Enhancer -

Accessing MATLAB's unicode strings from C -

javascript - mongodb won't find my schema method in nested container -