/** * Crée les entrées de la table Participants correspondant aux équipes */ public function creerEquipes() { $entrees = [["Grizzlis effarouchés", 1, 1, 1, [1, 2, 3]], ["Opossums déchaînés", 2, 1, 2, [4, 5, 6]], ["Antilopes frustrées", 3, 1, 3, [7, 8, 9]], ["Nasiques offensés", 4, 2, 1, []], ["Renards désinhibés", 5, 2, 1, [13, 14, 15]], ["Escargots enragés", 6, 2, 3, [16, 18, 19]], ["Méduses surexcitées", 7, 3, 2, [20, 21, 22]], ["Gousses d'aïl en furie", 8, 3, 1, [24, 25, 26]], ["Levures passives-agressives", 9, 5, 3, [1, 2, 3]], ["Streptocoques désagréables", 10, 4, 3, [4, 5, 6]]]; $sports = Sport::all(); $regions = Region::all(); $participants = Participant::all(); Equipe::where('equipe', '=', 1)->delete(); foreach ($entrees as $entree) { $equipe = new Equipe(); $equipe->nom = $entree[0]; $equipe->numero = $entree[1]; $equipe->region_id = $regions[$entree[2]]->id; $equipe->prenom = ""; $equipe->equipe = true; $equipe->sexe = $entree[1] % 2; $equipe->naissance = new DateTime(); $equipe->save(); $equipe->sports()->attach([$sports[$entree[3]]->id]); $index_membres = array(); for ($x = 0; $x < count($entree[4]); $x++) { array_push($index_membres, $participants[$entree[4][$x] - 1]->id); } $equipe->membres()->sync($index_membres); } }
public function run() { // Suppression de la table 'terrains' de la base de données DB::table('terrains')->delete(); // Chargement de la liste des sports existants $sports = Sport::all(); // Création d'une liste de valeurs par défaut $items = [["Football 1 Cégep de Drummondville", "960 Rue Saint-Georges", "Drummondville", [0, 1, 2]], ["Football 2 Cégep de Drummondville", "960 Rue Saint-Georges", "Drummondville", [0, 1, 2]], ["Football 3 Cégep de Drummondville", "960 Rue Saint-Georges", "Drummondville", [0, 1, 2]], ["Soccer 1 Cégep de Drummondville", "960 Rue Saint-Georges", "Drummondville", [0, 1, 2]], ["Soccer 2 Cégep de Drummondville", "960 Rue Saint-Georges", "Drummondville", [0, 1, 2]], ["Football 1 Marie-Rivier", "265 Rue Saint Félix", "Drummondville", [0, 1, 2]], ["Football 2 Marie-Rivier", "265 Rue Saint Félix", "Drummondville", [0, 1, 2]], ["Football 3 Marie-Rivier", "265 Rue Saint Félix", "Drummondville", [0, 1, 2]], ["Soccer 1 Marie-Rivier", "265 Rue Saint Félix", "Drummondville", [0, 1, 2]], ["Soccer 2 Marie-Rivier", "265 Rue Saint Félix", "Drummondville", [0, 1, 2]], ["Football 1 Jean-Raimbault", "175 Rue Pelletier", "Drummondville", [0, 1, 2]], ["Football 2 Jean-Raimbault", "175 Rue Pelletier", "Drummondville", [0, 1, 2]], ["Football 3 Jean-Raimbault", "175 Rue Pelletier", "Drummondville", [0, 1, 2]], ["Soccer 1 Jean-Raimbault", "175 Rue Pelletier", "Drummondville", [0, 1, 2]], ["Soccer 2 Jean-Raimbault", "177 Rue Pelletier", "Drummondville", [0, 1, 2]]]; // Création d'objet 'terrain' et sauvegarde de ceux-ci dans la base de données foreach ($items as $item) { $terrain = new Terrain(); $terrain->nom = $item[0]; $terrain->adresse = $item[1]; $terrain->ville = $item[2]; $terrain->region_id = Region::where("nom_court", "=", "CDQ")->first()->id; //un peu de favoritisme pour le Centre du Québec. $terrain->save(); // Ajout de l'association entre les terrains et les sports $index_sports = array(); for ($x = 0; $x < count($item[3]); $x++) { array_push($index_sports, $sports[$x]->id); } $terrain->sports()->sync($index_sports); } }
public function run() { DB::table('sports')->delete(); $sports = [["Badminton", "1"], ["Basketball en fauteuil roulant", "1"], ["Boccia", "1"], ["Boxe olympique", "1"], ["Curling féminin", "1"], ["Curling masculin", "1"], ["Escrime", "1"], ["Gymnastique", "0"], ["Haltérophilie", "0"], ["Hockey féminin", "1"], ["Hockey masculin", "1"], ["Judo", "1"], ["Karaté", "1"], ["Nage Synchronisée", "0"], ["Patinage artistique", "0"], ["Patinage de vitesse", "1"], ["Plongeon", "0"], ["Ski alpin", "0"], ["Ski de fond", "0"], ["Taekwondo", "1"], ["Tennis de table", "1"], ["Trampoline", "0"]]; foreach ($sports as $sport) { Sport::create(array('nom' => $sport[0], 'tournoi' => $sport[1], 'saison' => "h")); } }
/** * Affiche les participants associés au sport sélectionné par région. * * @param[in] int $id l'id du sport qu'on sélectionne. */ public function index($id) { try { $sport = Sport::findOrFail($id); $regions = Region::all()->sortby('nom'); $participants = $sport->participants->sortby('nom'); return View::make('sportParticipant.index', compact('regions', 'participants', 'sport')); } catch (ModelNotFoundException $e) { App::abort(404); } }
/** * Run the database seeds. * * @return void */ public function run() { DB::table('pointages')->delete(); $sports = Sport::all(); foreach ($sports as $sport) { $pointage = new Pointage(); $pointage->sport_id = $sport->id; $pointage->position = 1; $pointage->valeur = 0; $pointage->save(); } }
/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params) { $query = Sport::find(); $dataProvider = new ActiveDataProvider(['query' => $query]); $this->load($params); if (!$this->validate()) { // uncomment the following line if you do not want to return any records when validation fails // $query->where('0=1'); return $dataProvider; } $query->andFilterWhere(['id' => $this->id]); $query->andFilterWhere(['like', 'name', $this->name])->andFilterWhere(['like', 'picture', $this->picture])->andFilterWhere(['like', 'status', $this->status]); return $dataProvider; }
/** * Crée les entrées de la table Participants correspondant aux équipes */ public function run() { //TODO: à refaire car ca plante si on seed 2 fois car les id de région et de sports sont hardcodés $entrees = [["Arthur", "Archambault", 1, 1, 1, 0], ["Beowulf", "Beaulieu", 2, 1, 2, 0], ["Circé", "Charron", 3, 1, 3, 1], ["Donatello", "DeGrandPré", 4, 2, 1, 0], ["Elsa", "Eiffel", 5, 2, 2, 1], ["Francesco", "Funiculaire", 6, 2, 3, 0], ["Ginette", "Gargantua", 7, 3, 1, 1], ["Henri", "Hippocampe", 8, 3, 2, 0], ["Ivan", "Impitoyable", 9, 3, 3, 0], ["Josephte", "Jamboni", 10, 4, 1, 1], ["Kitty", "KitKat", 11, 4, 2, 1], ["Lola", "Lilalou", 12, 4, 3, 1], ["Manon", "Moriarty", 13, 5, 1, 1], ["Norbert", "Nucléaire", 14, 5, 2, 0], ["Osiris", "Orangeraie", 15, 5, 3, 0], ["Patricia", "Pédoncule", 16, 6, 1, 1], ["Quetzal", "Quelconque", 17, 6, 2, 0], ["Rosa", "Rubéole", 18, 6, 3, 1], ["Stephen", "Satan", 19, 1, 1, 0], ["Tarantula", "Tantrique", 20, 2, 2, 1], ["Ursulin", "Ultime Ninja", 21, 3, 3, 0], ["Vanessa", "Velociraptor", 22, 4, 1, 1], ["Waldorf", "Wolfenstein", 23, 5, 2, 0], ["Xanetia", "Xylophage", 24, 6, 3, 1], ["Yannick", "Ytterbium", 25, 1, 4, 0], ["Zaza", "Zébulon", 26, 2, 4, 1]]; $sports = Sport::all(); $regions = Region::all(); Participant::where('equipe', '=', 0)->delete(); foreach ($entrees as $entree) { $participant = new Participant(); $participant->prenom = $entree[0]; $participant->nom = $entree[1]; $participant->numero = $entree[2]; $participant->region_id = $regions[$entree[3]]->id; $participant->sexe = $entree[5]; $participant->naissance = new DateTime(); $participant->equipe = false; $participant->save(); $participant->sports()->attach([$sports[$entree[4]]->id]); } }
/** * Finds the Sport model based on its primary key value. * If the model is not found, a 404 HTTP exception will be thrown. * @param integer $id * @return Sport the loaded model * @throws NotFoundHttpException if the model cannot be found */ protected function findModel($id) { if (($model = Sport::findOne($id)) !== null) { return $model; } else { throw new NotFoundHttpException('The requested page does not exist.'); } }
/** * Affiche le formulaire pour éditer la ressource. * * @param int $id l'id du terrain à éditer * @return Response */ public function edit($id) { try { $terrain = Terrain::findOrFail($id); $regions = Region::all(); $terrainSports = Terrain::find($id)->sports; $sports = Sport::all(); return View::make('terrains.edit', compact('terrain', 'regions', 'sports', 'terrainSports')); } catch (Exception $e) { App::abort(404); } }
/** * Updates an existing Race model. * If update is successful, the browser will be redirected to the 'view' page. * @param integer $id * @return mixed */ public function actionUpdate($id) { $model = $this->findModel($id); $sports = Sport::findAll(['status' => 'ACTIVE']); $categories = Category::find()->all(); $c = []; foreach ($categories as $category) { $c[$category->id] = $category->name; } $picture = UploadedFile::getInstance($model, 'picture'); $sponsor = UploadedFile::getInstance($model, 'sponsor'); $attachment1 = UploadedFile::getInstance($model, 'attachment1'); $attachment2 = UploadedFile::getInstance($model, 'attachment2'); $last_picture = $model->picture; $last_attachment1 = $model->attachment1; $last_attachment2 = $model->attachment2; if ($model->load(Yii::$app->request->post())) { if ($_POST['pictureChanged'] == 'true') { // unlink('images/'.$last_picture); if ($picture != NULL) { $name = date('Y_m_d_H_i_s_') . $picture->baseName . '.' . $picture->extension; $model->picture = $name; } } else { $model->picture = $last_picture; } if ($_POST['sponsorChanged'] == 'true') { if ($sponsor != NULL) { if ($picture != NULL) { $model->sponsor = $name; } else { $model->sponsor = $last_picture; } } } else { $model->sponsor = $last_picture; } if ($_POST['attachment1Changed'] == 'true') { if ($attachment1 != NULL) { $name1 = date('Y_m_d_H_i_s_') . $attachment1->baseName . '.' . $attachment1->extension; $model->attachment1 = $name1; } } else { $model->attachment1 = $last_attachment1; } if ($_POST['attachment2Changed'] == 'true') { if ($attachment2 != NULL) { $name2 = date('Y_m_d_H_i_s_') . $attachment2->baseName . '.' . $attachment2->extension; $model->attachment2 = $name2; } } else { $model->attachment2 = $last_attachment2; } if ($_POST['Race']['categories'] != '') { foreach ($model->categories as $i => $category) { if (!array_search($category->id, $_POST['Race']['categories'])) { $nt = Category::findOne($category->id); $model->unlink('categories', $nt, true); } } foreach ($_POST['Race']['categories'] as $i => $category) { if (!Categories::findOne(['race_id' => $model->id, 'category_id' => $category])) { $nt = Category::findOne($category); $model->link('categories', $nt); } } } else { $model->unlinkAll('categories', true); } if ($model->save()) { if ($picture != NULL) { $picture->saveAs('img/carrera/' . $name); } if ($sponsor != NULL) { if ($picture != NULL) { $sponsor->saveAs('img/carrera/auspiciante/' . $name); } else { $sponsor->saveAs('img/carrera/auspiciante/' . $last_picture); } } if ($attachment1 != NULL) { $attachment1->saveAs('img/carrera/adjunto/' . $name1); } if ($attachment2 != NULL) { $attachment2->saveAs('img/carrera/adjunto/' . $name2); } return $this->redirect(['view', 'id' => $model->id]); } } else { return $this->render('update', ['model' => $model, 'sports' => $sports, 'categories' => $c]); } }
/** * Affiche le formulaire pour éditer un arbitre. * * @param int $id l'id de l'arbitre à éditer * @return Response */ public function edit($id) { try { $arbitre = Arbitre::findOrFail($id); $regions = Region::all(); $sports = Sport::all(); // La date par défaut du formulaire est <cette année> - 20 ans // pour être plus prêt de l'âge moyen attendu $anneeDefaut = date('Y') - 20; $moisDefaut = 0; $jourDefaut = 0; // Remplissage des listes pour les choix de la date de naissance $listeAnnees = ArbitresController::generer_liste(date('Y') - 100, 101); $listeMois = ArbitresController::generer_liste(1, 12); $listeJours = ArbitresController::generer_liste(1, 31); return View::make('arbitres.edit', compact('arbitre', 'regions', 'sports', 'listeAnnees', 'anneeDefaut', 'listeMois', 'listeJours', 'anneeDefaut', 'moisDefaut', 'jourDefaut')); } catch (Exception $e) { App: abort(404); } }
/** * @return \yii\db\ActiveQuery */ public function getSport() { return $this->hasOne(Sport::className(), ['id' => 'sport_id']); }
/** * Mise à jour d'une épreuve associée à un sport * * @param[in] int $sportId l'id du sport auquel est associé l'épreuve * @param[in] int $epreuveId l'id de l'épreuve */ public function update($sportId, $epreuveId) { try { $sport = Sport::findOrFail($sportId); //juste pour s'assurer que l'id de classe passé en paramêtre est valide, sinon: 404. } catch (ModelNotFoundException $e) { App::abort(404); } $input = Input::all(); $epreuve = $sport->epreuves()->where('id', '=', $epreuveId)->first(); $epreuve->nom = $input['nom']; $epreuve->description = $input['description']; $epreuve->sport_id = $sportId; if ($epreuve->save()) { return Redirect::action('SportsEpreuvesController@index', $sportId); } else { return Redirect::back()->withInput()->withErrors($epreuve->validationMessages); } }
/** * Affiche une seule équipe en détail. * * @param int $id l'id du chef de l'équipe à afficher * @return Response */ public function show($id) { $equipe = Equipe::findOrFail($id); $sport = Sport::where('id', '=', $equipe->sport_id)->first(); return View::make('equipes.show', compact('equipe', 'sport')); }
/** * Efface la ressource de la bd. * * @param int $id l'id du sport à effacer * @return Response */ public function destroy($id) { try { $sport = Sport::findOrFail($id); $sport->delete(); return Redirect::action('SportsController@index'); } catch (Exception $e) { App::abort(404); } }
/** * Verifie si un id de sport existe. * Si oui:le retourne. Si non: retourne l'id du premier sport dans la liste * * @param array $sports * liste des sports. Utilisé si $sportId = 0 afin de choisir une valeur par défaut * @param int $sportId * un id de sport. Un sport avec cet id doit exister, sinon la le premier id de la liste sera utilisé * @return int */ protected function checkSportId($sports, $sportId) { if ($sportId != 0) { // verifie que le sportid passé en paramêtre existe. try { $sport = Sport::findOrFail($sportId); } catch (Exception $e) { // si il n'existe pas, on prend celui du premier sport dans la liste $sportId = $sports[0]->id; } } else { // par default on prend le premier sport $sportId = $sports[0]->id; } return $sportId; }
public function actionIndex() { $sports = Sport::findAll(['status' => 'ACTIVE']); return $this->render('index', ['sports' => $sports]); }
/** * Retourne la liste des sports. * * @return Array $listeSports. Contient les sports. */ private function getListeSports() { $sports = Sport::all('nom'); $listeSports = []; foreach ($sports as $sport) { array_push($listeSports, $sport->nom); } array_unshift($listeSports, 'Choisir un sport'); //FIXME: est-ce vraiment utile? return $listeSports; }
/** * Affiche le formulaire pour éditer un participant. * * @param int $id l'id du participant à éditer * @return Response */ public function edit($id) { try { $participant = Participant::findOrFail($id); $regions = Region::all(); $sports = Sport::all(); $participantSports = Participant::find($id)->sports; // Si de vieilles entrées n'ont pas de date de naissance, on utilise les valeurs par défaut $anneeDefaut = date('Y') - 20; $moisDefaut = 0; $jourDefaut = 0; if ($participant->naissance) { // Déterminer les valeurs des trois comboboxes $stringsDate = explode('-', $participant->naissance); $anneeDefaut = $stringsDate[0] + 1; $moisDefaut = $stringsDate[1] + 1; $jourDefaut = $stringsDate[2] + 1; } // Générer les listes des comboboxes $listeAnnees = ParticipantsController::generer_liste(date('Y') - 100, 101); $listeMois = ParticipantsController::generer_liste(1, 12); $listeJours = ParticipantsController::generer_liste(1, 31); return View::make('participants.edit', compact('participant', 'regions', 'sports', 'participantSports', 'listeAnnees', 'anneeDefaut', 'listeMois', 'listeJours', 'anneeDefaut', 'moisDefaut', 'jourDefaut')); } catch (Exception $e) { App: abort(404); } }