public function editProfileAction(Request $request)
{
$em = $this->get('doctrine')->getManager();
/** @var User $user */
$getUser = $this->getUser();
if (!$getUser) {
throw new AccessDeniedException();
}
$user = $em->getRepository('OjsUserBundle:User')->find($getUser->getId());
/** @var $dispatcher EventDispatcherInterface */
$dispatcher = $this->get('event_dispatcher');
$form = $this->createForm(new UpdateUserType(), $user)->add('update', 'submit', ['label' => 'update']);
$data = [];
$form->handleRequest($request);
if ($form->isValid()) {
$em->persist($user);
$em->flush();
$event = new GetResponseUserEvent($user, $request);
$dispatcher->dispatch(FOSUserEvents::PROFILE_EDIT_COMPLETED, $event);
return $this->redirectToRoute('ojs_user_edit_profile');
}
$data['edit_form'] = $form->createView();
$data['entity'] = $user;
return $this->render('OjsSiteBundle:User:update_profile.html.twig', $data);
}