From 10cb7780623c52141815b50d63e4676c9435fe68 Mon Sep 17 00:00:00 2001
From: Table <romain.drouin@ensiie.fr>
Date: Thu, 5 May 2016 21:29:23 +0200
Subject: [PATCH] =?UTF-8?q?ajout=20des=20classement=20varible=20selon=20la?=
 =?UTF-8?q?=20base=20de=20don=C3=A9e=20sur=20le=20page=20de=20profil?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 app/controller/ProfilController.php |  4 +++
 app/model/Classement.php            | 36 ++++++++++++++++++++++++
 app/view/Profil/display.html        | 43 +++++++++++++++++++++--------
 3 files changed, 71 insertions(+), 12 deletions(-)

diff --git a/app/controller/ProfilController.php b/app/controller/ProfilController.php
index 9d507c5..e5b24b9 100644
--- a/app/controller/ProfilController.php
+++ b/app/controller/ProfilController.php
@@ -6,6 +6,10 @@ class ProfilController extends Controller { // classe de contrôleur pour l'affi
 		// je précise que dans ce cas précis, le $slug ne contient que le pseudo du joueur sosu forme normalisée. Donc je pourrais renommer la variable $slug_joueur...
 		$this->view->profil = Profil::getFromSlug($slug); // on utilise le modèle pour aller chercher en BDD le profil qui nous intéresse
 	 	$this->view->profil->avatar = $this->view->profil->avatar ? BASE_URL."/images/avatar/".$this->view->profil->slug.".jpg": BASE_URL."/images/profil_42.jpg";
+		list($i, $o, $p) = Classement::getClassementJoueur($slug);
+		$this->view->classement_top = $i;
+		$this->view->classement_down = $o;
+		$this->view->jeu_favori = $p;
 		$this->view->display(); // on affiche ce profil
 	}
 }
diff --git a/app/model/Classement.php b/app/model/Classement.php
index a5632c7..9960d98 100644
--- a/app/model/Classement.php
+++ b/app/model/Classement.php
@@ -31,4 +31,40 @@ class Classement extends Model { // classe de modèle pour l'affichage de classe
 		//return $req->fetch(); // on retourne le premier (et normalement unique) résultat en BDD
 		return array(array("pseudo"=>"debug","rank"=>"gen"), array("pseudo"=>"exemple","rank"=>1), array("pseudo"=>"gimli","rank"=>2), array("pseudo"=>"phoenix","rank"=>3), array("pseudo"=>"table","rank"=>4), array("pseudo"=>"nestor","rank"=>42));
 	}
+
+	public static function getClassementJoueur($slug) {
+		$db = Database::getInstance(); // on récupère la connexion à la BDD
+		$sql = "SELECT * FROM R_joueur_jeu WHERE joueur LIKE :slug ORDER BY classement LIMIT 5";
+		$req = $db->prepare($sql);
+		$req->execute(array(":slug" => $slug));
+		$res_top = array();
+		while($ligne = $req->fetch(PDO::FETCH_ASSOC)) { // parcours toute la liste
+			$jeu = Jeu::getFromSlug($ligne['jeu']);
+			$res_top[] = array(	'slug' => $ligne['jeu'],
+							'nom' => $jeu->nom,
+							'score' => $ligne['score'],
+							'classement' => $ligne['classement']);
+		}
+		$sql = "SELECT * FROM R_joueur_jeu WHERE joueur = :slug ORDER BY classement DESC LIMIT 5";
+		$req = $db->prepare($sql);
+		$req->execute(array(":slug" => $slug));
+		$res_down = array();
+		while($ligne = $req->fetch(PDO::FETCH_ASSOC)) { // parcours toute la liste
+			$jeu = Jeu::getFromSlug($ligne['jeu']);
+			$res_down[] = array(	'slug' => $ligne['jeu'],
+							'nom' => $jeu->nom,
+							'score' => $ligne['score'],
+							'classement' => $ligne['classement']);
+		}
+		$sql = "SELECT * FROM R_joueur_jeu WHERE joueur LIKE :slug AND est_jeu_favoris";
+		$req = $db->prepare($sql);
+		$req->execute(array(":slug" => $slug));
+		$res_fav = array();
+		while($ligne = $req->fetch(PDO::FETCH_ASSOC)) { // parcours toute la liste
+			$jeu = Jeu::getFromSlug($ligne['jeu']);
+			$res_fav[] = array(	'slug' => $ligne['jeu'],
+								'nom' => $jeu->nom);
+		}
+		return array($res_top, $res_down, $res_fav);
+	}
 }
diff --git a/app/view/Profil/display.html b/app/view/Profil/display.html
index 1566803..33d097c 100644
--- a/app/view/Profil/display.html
+++ b/app/view/Profil/display.html
@@ -27,19 +27,32 @@
         <div class="col-6">
             <h3 class="stat-title">Jeux préférés</h3>
             <table class="jeux-preferes">
-                <tr><td><img src="<?php echo BASE_URL; ?>/images/Cosmic_Encounter_(FFG).jpg" alt="logo jeu <>" /></td><td>Rencontres Cosmiques</td></tr>
-                <tr><td><img src="<?php echo BASE_URL; ?>/images/Cosmic_Encounter_(FFG).jpg" alt="logo jeu <>" /></td><td>Rencontres Cosmiques</td></tr>
+				<?php foreach($this->jeu_favori as $ligne) {
+					print "
+					<tr>
+						<td><a href=\"".BASE_URL."/jeu/".$ligne['slug']."\"> <img src=\"".BASE_URL."/images/jeu/".$ligne['slug'].".jpg\" alt=\"logo de ".$ligne['nom']."\" /></a></td>
+						<td><a href=\"".BASE_URL."/jeu/".$ligne['slug']."\">".$ligne['nom']."</a></td>
+					</tr>
+					";
+				}
+				?>
             </table>
         </div>
 
         <div class="col-6">
             <h3 class="stat-title">Meilleurs classements</h3>
             <table class="jeux-preferes">
-                <tr><td>1</td><td><img src="<?php echo BASE_URL; ?>/images/Cosmic_Encounter_(FFG).jpg" alt="logo jeu <>" /></td><td>Rencontres Cosmiques</td><td>1e</td></tr>
-                <tr><td>2</td><td><img src="<?php echo BASE_URL; ?>/images/Cosmic_Encounter_(FFG).jpg" alt="logo jeu <>" /></td><td>Rencontres Cosmiques</td><td>2e</td></tr>
-                <tr><td>3</td><td><img src="<?php echo BASE_URL; ?>/images/Cosmic_Encounter_(FFG).jpg" alt="logo jeu <>" /></td><td>Rencontres Cosmiques</td><td>8e</td></tr>
-                <tr><td>4</td><td><img src="<?php echo BASE_URL; ?>/images/Cosmic_Encounter_(FFG).jpg" alt="logo jeu <>" /></td><td>Rencontres Cosmiques</td><td>9e</td></tr>
-                <tr><td>5</td><td><img src="<?php echo BASE_URL; ?>/images/Cosmic_Encounter_(FFG).jpg" alt="logo jeu <>" /></td><td>Rencontres Cosmiques</td><td>15e</td></tr>
+				<?php foreach($this->classement_top as $ligne) {
+					print "
+					<tr>
+						<td><a href=\"".BASE_URL."/jeu/".$ligne['slug']."\"> <img src=\"".BASE_URL."/images/jeu/".$ligne['slug'].".jpg\" alt=\"logo de ".$ligne['nom']."\" /></a></td>
+						<td><a href=\"".BASE_URL."/jeu/".$ligne['slug']."\">".$ligne['nom']."</a></td>
+						<td>".$ligne['classement']."e </td>
+						<td>".$ligne['score']."</td>
+					</tr>
+					";
+				}
+				?>
             </table>
             <div class="more-link"><a href="" >Plus...</a></div>
 
@@ -58,11 +71,17 @@
 			<div class="col-6">
 				<h3 class="stat-title">Pire classements</h3>
 				<table class="jeux-preferes">
-					<tr><td>1</td><td><img src="<?php echo BASE_URL; ?>/images/Cosmic_Encounter_(FFG).jpg" alt="logo jeu <>" /></td><td>Rencontres Cosmiques</td><td>500e</td></tr>
-					<tr><td>2</td><td><img src="<?php echo BASE_URL; ?>/images/Cosmic_Encounter_(FFG).jpg" alt="logo jeu <>" /></td><td>Rencontres Cosmiques</td><td>300e</td></tr>
-					<tr><td>3</td><td><img src="<?php echo BASE_URL; ?>/images/Cosmic_Encounter_(FFG).jpg" alt="logo jeu <>" /></td><td>Rencontres Cosmiques</td><td>250e</td></tr>
-					<tr><td>4</td><td><img src="<?php echo BASE_URL; ?>/images/Cosmic_Encounter_(FFG).jpg" alt="logo jeu <>" /></td><td>Rencontres Cosmiques</td><td>200e</td></tr>
-					<tr><td>5</td><td><img src="<?php echo BASE_URL; ?>/images/Cosmic_Encounter_(FFG).jpg" alt="logo jeu <>" /></td><td>Rencontres Cosmiques</td><td>100e</td></tr>
+					<?php foreach($this->classement_down as $ligne) {
+						print "
+						<tr>
+							<td><a href=\"".BASE_URL."/jeu/".$ligne['slug']."\"> <img src=\"".BASE_URL."/images/jeu/".$ligne['slug'].".jpg\" alt=\"logo de ".$ligne['nom']."\" /></a></td>
+							<td><a href=\"".BASE_URL."/jeu/".$ligne['slug']."\">".$ligne['nom']."</a></td>
+							<td>".$ligne['classement']."e </td>
+							<td>".$ligne['score']."</td>
+						</tr>
+						";
+					}
+					?>
 				</table>
 				<div class="more-link"><a href="" >Plus...</a></div>
 			</div>
-- 
GitLab