/**
  * Elimina una aportació feta a una assignatura
  * @param int [$id] identificador de l'aportació
  */
 public function eliminarAportacio($id)
 {
     try {
         $aportacio = Aportacio::findOrFail($id);
     } catch (ModelNotFoundException $e) {
         return Response::json(array('error' => 'La aportación ha sido eliminada.'));
     }
     $autor = $aportacio->autor;
     $assignatura = $aportacio->assignatura;
     $grup = $assignatura->grup;
     $grups = Auth::user()->grups()->lists('id_grup');
     if (in_array($grup->getID(), $grups)) {
         if ($autor->getEmail() == Auth::user()->getEmail()) {
             if ($grup->getActiu()) {
                 if ($aportacio->num_comentaris() > 0) {
                     $comentaris = $aportacio->comentaris;
                     foreach ($comentaris as $comentari) {
                         $comentari->delete();
                     }
                 }
                 $aportacio->delete();
             } else {
                 return Response::json(array('error' => 'El grupo ha sido eliminado por el moderador.'));
             }
         } else {
             return Response::json(array('error' => 'No eres el autor de la aportación.'));
         }
     } else {
         return Response::json(array('error' => 'No estás matriculado en este grupo.'));
     }
     return Response::json(array('status' => 'ok'));
 }
 /**
  * Cerca comentaris anteriors a un donat
  * @param integer [$id] identificador de l'aportació
  * @param integer [$last] identificador del darrer comentari mostrat
  */
 public function mesComentaris($id, $last)
 {
     try {
         $aportacio = Aportacio::findOrFail($id);
     } catch (ModelNotFoundException $e) {
         return Response::json(array('error' => 'Esta aportación ha sido eliminada.'));
     }
     $comentaris = $aportacio->getComentarisSince($last);
     return View::make('assignatura/comentaris', array('comentaris' => $comentaris));
 }
 /**
  * Elimina l'aportació d'un esdeveniment.
  * @param int [$id] identificador de l'aportació
  */
 public function eliminarAportacioEsdeveniment($id)
 {
     try {
         $aportacio = Aportacio::findOrFail($id);
     } catch (ModelNotFoundException $e) {
         return Response::json(array('error' => 'La aportación ya no existe o ha sido eliminada.'));
     }
     $autor = $aportacio->autor;
     $esdeveniment = $aportacio->esdeveniment;
     $grup = $esdeveniment->grup;
     $grups = Auth::user()->grups()->lists('id_grup');
     date_default_timezone_set("Europe/Madrid");
     $ara = date("Y-m-d H:i:s");
     $esdeveniment_actiu = $esdeveniment->data_esdeveniment > $ara;
     if ($autor->getEmail() == Auth::user()->getEmail()) {
         if (in_array($grup->getID(), $grups)) {
             if ($grup->getActiu()) {
                 if ($esdeveniment_actiu) {
                     if ($aportacio->num_comentaris() > 0) {
                         $comentaris = $aportacio->comentaris;
                         foreach ($comentaris as $comentari) {
                             $comentari->delete();
                         }
                     }
                     $aportacio->delete();
                 } else {
                     return Response::json(array('error' => 'El evento no está activo.'));
                 }
             } else {
                 return Response::json(array('error' => 'El grupo ha sido eliminado por el moderador.'));
             }
         } else {
             return Response::json(array('error' => 'No estás matriculado en este grupo.'));
         }
     } else {
         return Response::json(array('error' => 'No eres el autor de esta aportación.'));
     }
     return Response::json(array('status' => 'ok'));
 }