/** * Enregistre dans la bd le participant qui vient d'être créé. * * @return Response */ public function store() { try { $input = Input::all(); $participant = new Participant(); $participant->equipe = false; $participant->nom = $input['nom']; $participant->prenom = $input['prenom']; $participant->telephone = $input['telephone']; $participant->nom_parent = $input['nom_parent']; $participant->numero = $input['numero']; $participant->sexe = $input['sexe']; $participant->adresse = $input['adresse']; $participant->region_id = $input['region_id']; // Création de la date de naissance à partir des valeurs des trois comboboxes $anneeNaissance = $input['annee_naissance'] - 1; $moisNaissance = $input['mois_naissance'] - 1; $jourNaissance = $input['jour_naissance'] - 1; if (checkdate($moisNaissance, $jourNaissance, $anneeNaissance)) { $dateTest = new DateTime(); $dateTest->setDate($anneeNaissance, $moisNaissance, $jourNaissance); $participant->naissance = $dateTest; } else { $participant->naissance = "invalide"; } if ($participant->save()) { if (is_array(Input::get('sport'))) { //FIXME: si le get plante, le save est déjà fait. $participant->sports()->sync(array_keys(Input::get('sport'))); } else { $participant->sports()->detach(); } // Message de confirmation si la sauvegarde a réussi return Redirect::action('ParticipantsController@create')->with('status', 'Le partipant a été créé!'); } else { return Redirect::back()->withInput()->withErrors($participant->validationMessages()); } } catch (Exception $e) { App: abort(404); } }