/** * @param Request $request * @param Personage $personage * * @return \Symfony\Component\HttpFoundation\RedirectResponse|\Symfony\Component\HttpFoundation\Response */ public function editAction(Request $request, Personage $personage) { $user = $this->get('security.context')->getToken()->getUser(); if ($personage->getUser() != $user) { throw $this->createAccessDeniedException('Vous n\'avez pas le droit de modifier ce personnage!'); } $form = $this->createForm(new PersonageType(), $personage, array('action' => $this->generateUrl('edit_personage', array('personage' => $personage->getId())), 'method' => 'POST')); $form->add('submit', 'submit', array('label' => 'Modifier')); $form->handleRequest($request); if ($form->isValid()) { $em = $this->getDoctrine()->getManager(); $em->persist($personage); $em->flush(); return $this->redirect($this->generateUrl('fos_user_profile_show')); } return $this->render('OursUserBundle:Personage:edit.html.twig', array('personage' => $personage, 'form' => $form->createView())); }
/** * add Personage * * @param Personage $personage */ public function addPersonage(Personage $personage) { $this->personages[] = $personage; $personage->setUser($this); }