src/Cpm/JovenesBundle/Controller/PerfilController.php
/**
     * Registra la aceptacion o rechazo de la invitacion a un evento por parte de un usuario. 
     *
     * @Route("/invitaciones/{id}/{accion}/submit", name="abrir_invitacion_submit")
     * 
     */
Registra la aceptacion o rechazo de la invitacion a un evento por parte de un usuario.
Registra la aceptacion o rechazo de la invitacion a un evento por parte de un usuario .
public function abrirInvitacionSubmitAction($id, $accion)
    {
        if (!in_array($accion, array('rechazar', 'aceptar')))
    		throw $this->createNotFoundException('Accion inválida.');
        $invitacion = $this->getEntityForUpdate('CpmJovenesBundle:Invitacion', $id);
        $user = $this->getJYM()->getLoggedInUser();
        if ($invitacion->getInstanciaEvento()->fue() || ($invitacion->estaPendiente() && !$invitacion->estaVigente())){
    		$this->setWarnMessage("El plazo de inscripción para el evento '".$invitacion->getInstanciaEvento()->getTitulo()."'ya cerró.");    	
		    if (!$user->isAdmin())
		    	return $this->redirect($this->generateUrl('home'));
        }
		if ($accion == 'rechazar'){
			$invitacion->setAceptoInvitacion(false);
		}else{
			$invitacion->setAceptoInvitacion(true);
			$editForm = $this->createForm(new InvitacionUsuarioType(), $invitacion);
			$request = $this->getRequest();
	        $editForm->bindRequest($request);
	        if (!$editForm->isValid()) {
	            return $this->render('CpmJovenesBundle:Perfil:aceptarInvitacion.html.twig', 
	            	array('invitacion' => $invitacion, 'edit_usuario_form' => $editForm->createView())
	            );
			}
		}
		$this->setSuccessMessage("La invitación fue guardada satisfactoriamente.");
        $this->doPersist($invitacion);
        if ($invitacion->getAceptoInvitacion()){
    		$mailer = $this->getMailer();
    		$mailer->enviarAceptacionInvitacion($invitacion);
    	}
	    return $this->redirect($this->generateUrl('home'));
    }
public function abrirInvitacionSubmitAction ( $ id , $ accion ) { if ( ! in_array ( $ accion , array ( 'rechazar' , 'aceptar' ) ) ) throw $ this -> createNotFoundException ( 'Accion inválida.') ; $ invitacion = $ this -> getEntityForUpdate ( 'CpmJovenesBundle:Invitacion' , $ id ) ; $ user = $ this -> getJYM ( ) -> getLoggedInUser ( ) ; if ( $ invitacion -> getInstanciaEvento ( ) -> fue ( ) || ( $ invitacion -> estaPendiente ( ) && ! $ invitacion -> estaVigente ( ) ) ) { $ this -> setWarnMessage ( " El plazo de inscripción para el evento '" . $ i nvitacion- >g etInstanciaEvento( ) - >g etTitulo( ) . " ' ya cerró.") ; if ( ! $ user -> isAdmin ( ) ) return $ this -> redirect ( $ this -> generateUrl ( 'home' ) ) ; } if ( $ accion == 'rechazar' ) { $ invitacion -> setAceptoInvitacion ( false ) ; } else { $ invitacion -> setAceptoInvitacion ( true ) ; $ editForm = $ this -> createForm ( new InvitacionUsuarioType ( ) , $ invitacion ) ; $ request = $ this -> getRequest ( ) ; $ editForm -> bindRequest ( $ request ) ; if ( ! $ editForm -> isValid ( ) ) { return $ this -> render ( 'CpmJovenesBundle:Perfil:aceptarInvitacion.html.twig' , array ( 'invitacion' => $ invitacion , 'edit_usuario_form' => $ editForm -> createView ( ) ) ) ; } } $ this -> setSuccessMessage ( " La invitación fue guardada satisfactoriamente." ) ; $ this -> doPersist ( $ invitacion ) ; if ( $ invitacion -> getAceptoInvitacion ( ) ) { $ mailer = $ this -> getMailer ( ) ; $ mailer -> enviarAceptacionInvitacion ( $ invitacion ) ; } return $ this -> redirect ( $ this -> generateUrl ( 'home' ) ) ; }
Registra la aceptacion o rechazo de la invitacion a un evento por parte de un usuario.
Registra la aceptacion o rechazo de la invitacion a un evento por parte de un usuario .
//Si la invitacion es válida y fue aceptada, mando la notificacion al coordinador por mail