コード例 #1
0
 /**
  * Edita un esdeveniment donat
  * @param string [$slug] slug de l'esdeveniment
  */
 public function editarEsdeveniment($slug)
 {
     $emaillog = Auth::user()->email_estudiant;
     $estudiant = Estudiant::find($emaillog);
     $grups = $estudiant->grups;
     try {
         $esdeveniment = Esdeveniment::bySlug($slug);
     } catch (ModelNotFoundException $e) {
         return Redirect::route('esdeveniments.consulta');
     }
     date_default_timezone_set("Europe/Madrid");
     $ara = date("Y-m-d H:i:s");
     if ($esdeveniment->getData() < $ara) {
         return Redirect::route('grups.meus');
     }
     $autor_esd = $esdeveniment->autor;
     $grup = $esdeveniment->grup;
     if ($emaillog == $autor_esd->getEmail() && $grup->getActiu()) {
         if (Input::has('nom')) {
             $nom = Input::get('nom');
             $nom = strip_tags($nom);
             $nom = trim($nom);
             $descripcio = Input::get('descripcio');
             $descripcio = strip_tags($descripcio);
             $descripcio = trim($descripcio);
             $data = Input::get('data');
             $hora = Input::get('hora');
             $minut = Input::get('minut');
             $id_grup = Input::get('grup');
             $id_grup = strip_tags($id_grup);
             $validator = Validator::make(array('nombre' => $nom, 'fecha' => $data, 'hora' => $hora, 'minuto' => $minut, 'descripción' => $descripcio, 'grupo' => $id_grup), array('nombre' => array('required', 'max:60'), 'fecha' => array('required', 'date_format:"d/m/Y"'), 'hora' => array('required', 'numeric', 'between:0,23'), 'minuto' => array('required', 'numeric', 'between:0,55'), 'descripción' => array('max:255'), 'grupo' => array('required')));
             if ($validator->fails()) {
                 return Redirect::route('esdeveniment.editar', array('slug' => $slug))->withErrors($validator);
             }
             $dia = substr($data, 0, 2);
             $mes = substr($data, 3, 2);
             $any = substr($data, 6, 8);
             /*Afegim un zero davant per	complir amb 
               l'especificaió del tipus DATE*/
             if ($hora < 10) {
                 $hora2 = '0' . $hora;
             } else {
                 $hora2 = $hora;
             }
             $data_final = $any . '-' . $mes . '-' . $dia . ' ' . $hora2 . ':' . $minut . ':' . '00';
             $esdeveniment->nom_esdeveniment = $nom;
             $esdeveniment->descripcio_esdeveniment = $descripcio;
             $esdeveniment->estudiant_email = $emaillog;
             $esdeveniment->grup_id_grup = $id_grup;
             $esdeveniment->data_esdeveniment = $data_final;
             try {
                 $grup = Grup::findOrFail($id_grup);
             } catch (ModelNotFoundException $e) {
                 return Redirect::route('esdeveniments.consulta');
             }
             $grups = Auth::user()->grups()->lists('id_grup');
             /*Comprovació de que l'estudiant estigui matriculat
             	 al grup i estigui actiu*/
             if (in_array($grup->getID(), $grups) && $grup->getActiu()) {
                 $esdeveniment->save();
             } else {
                 return Redirect::route('esdeveniments.consulta');
             }
             return Redirect::route('esdeveniments.consulta');
         } else {
             $this->layout->title = 'Workshome - Editar ' . $esdeveniment->getNom();
             $this->layout->description = 'Editar la información de un evento';
             $this->layout->content = View::make('esdeveniments/editar', array('grups' => $grups, 'esdeveniment' => $esdeveniment));
         }
     } else {
         return Redirect::route('esdeveniments.consulta');
     }
 }
コード例 #2
0
 /**
  * Crea una nova solicitud per a entrar a un grup 
  * @param integer [$id] identificador del grup
  */
 public function novaSolicitud($id)
 {
     $emaillog = Auth::user()->email_estudiant;
     try {
         $estudiant = Estudiant::findOrFail($emaillog);
     } catch (ModelNotFoundException $e1) {
         return Redirect::route('grups.meus');
     }
     try {
         $grup = Grup::findOrFail($id);
     } catch (ModelNotFoundException $e2) {
         return Redirect::route('grups.meus');
     }
     $estudiant->solicitudGrup($grup);
     $slug = $grup->getSlug();
     return Redirect::route('grup.consulta', array('slug' => $slug));
 }
コード例 #3
0
 /**
  * Solicitud d'un estudiant per formar part d'un grup
  * @param string [$slug] slug de l'estudiant
  * @param integer [$grup] identificador del grup
  */
 public function solMatriculaEstudiant($slug, $grup)
 {
     try {
         $est = Estudiant::bySlug($slug);
     } catch (ModelNotFoundException $e1) {
         return Redirect::route('grups.meus');
     }
     try {
         $gr = Grup::findOrFail($grup);
     } catch (ModelNotFoundException $e2) {
         return Redirect::route('grups.meus');
     }
     $est->matricularGrup($gr);
     $est->cancelSolicitudGrup($gr);
     return Redirect::route('estudiant.solicituds', array('slug' => $gr->getSlug()));
 }