src/Cpm/JovenesBundle/Controller/ProyectoController.php
/**
     * Edits an existing Proyecto entity.
     *
     * @Route("/{id}/update", name="proyecto_update")
     * @Method("post")
     * @Template("CpmJovenesBundle:Proyecto:edit.html.twig")
     */
Edits an existing Proyecto entity.
Edits an existing Proyecto entity .
public function updateAction($id)
    {
        $em = $this->getDoctrine()->getEntityManager();
        $entity = $this->getEntityForUpdate('CpmJovenesBundle:Proyecto', $id,$em);
        $colabs = array(); 
        foreach ($entity->getColaboradores() as $c) {
        	$colabs[] = $c->getEmail();
        }
        $editForm   = $this->createForm(new ProyectoType(), $entity);
        $deleteForm = $this->createDeleteForm($id);
        $request = $this->getRequest();
        $editForm->bindRequest($request);
        $this->procesar_colaboradores($entity->getColaboradores());
        if ($editForm->isValid()) {
            $em->persist($entity);
            $this->eliminar_usuarios_sueltos($entity,$colabs);
            $em->flush();
            $this->setSuccessMessage("Proyecto fue modificado satisfactoriamente");
            return $this->redirect($this->generateUrl('proyecto_show', array('id' => $id)));
        }
        return array(
            'entity'      => $entity,
            'edit_form'   => $editForm->createView(),
            'delete_form' => $deleteForm->createView(),
        );
    }
public function updateAction ( $ id ) { $ em = $ this -> getDoctrine ( ) -> getEntityManager ( ) ; $ entity = $ this -> getEntityForUpdate ( 'CpmJovenesBundle:Proyecto' , $ id , $ em ) ; $ colabs = array ( ) ; foreach ( $ entity -> getColaboradores ( ) as $ c ) { $ colabs [ ] = $ c -> getEmail ( ) ; } $ editForm = $ this -> createForm ( new ProyectoType ( ) , $ entity ) ; $ deleteForm = $ this -> createDeleteForm ( $ id ) ; $ request = $ this -> getRequest ( ) ; $ editForm -> bindRequest ( $ request ) ; $ this -> procesar_colaboradores ( $ entity -> getColaboradores ( ) ) ; if ( $ editForm -> isValid ( ) ) { $ em -> persist ( $ entity ) ; $ this -> eliminar_usuarios_sueltos ( $ entity , $ colabs ) ; $ em -> flush ( ) ; $ this -> setSuccessMessage ( " Proyecto fue modificado satisfactoriamente " ) ; return $ this -> redirect ( $ this -> generateUrl ( 'proyecto_show' , array ( 'id' => $ id ) ) ) ; } return array ( 'entity' => $ entity , 'edit_form' => $ editForm -> createView ( ) , 'delete_form' => $ deleteForm -> createView ( ) , ) ; }
Edits an existing Proyecto entity.
Edits an existing Proyecto entity .
//colaboradores que tenia la entidad //los colaboradores eliminados que no estan en otro proyecto seran eliminados