From e9b33ab6aef79e45c247d883dffb486c66fe2678 Mon Sep 17 00:00:00 2001
From: vbochet <vbochet@gmail.com>
Date: Wed, 4 May 2016 23:26:09 +0200
Subject: [PATCH] =?UTF-8?q?Ajout=20d'une=20nouvelle=20page=20permettant=20?=
 =?UTF-8?q?de=20r=C3=A9cup=C3=A9rer=20la=20liste=20des=20noms=20des=20jeux?=
 =?UTF-8?q?=20au=20format=20JSON,=20pour=20la=20barre=20de=20recherche=20a?=
 =?UTF-8?q?vec=20autocompl=C3=A9tion?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 app/controller/JeuController.php |  5 +++++
 app/kernel/Router.php            |  5 +++++
 app/view/Jeu/listeJson.html      | 12 ++++++++++++
 3 files changed, 22 insertions(+)
 create mode 100644 app/view/Jeu/listeJson.html

diff --git a/app/controller/JeuController.php b/app/controller/JeuController.php
index 4aa041b..26c6a0e 100644
--- a/app/controller/JeuController.php
+++ b/app/controller/JeuController.php
@@ -12,6 +12,11 @@ class JeuController extends Controller {
 		$this->view->display();
 	}
 
+	public function listeJson() {
+		$this->view->liste = Jeu::getList();
+		$this->view->display();
+	}
+
 	public function displayFormAdd() {
 		$this->view->display();
 	}
diff --git a/app/kernel/Router.php b/app/kernel/Router.php
index 7f8698b..bc3fe25 100644
--- a/app/kernel/Router.php
+++ b/app/kernel/Router.php
@@ -28,6 +28,11 @@ class Router { // classe PHP permettant l'analyse de l'URL des requêtes
 				$result["action"] = "displayListe"; // on veut afficher la liste des jeux, donc on donne l'action "displayListe"
 				// il n'y a pas de paramètres attendus, on n'affecte pas $result["params"]
 			}
+			else if($parts[0] == "jeux") { // on veut récupérer la liste des jeux au format JSON
+				$result["controller"] = "Jeu"; // le contrôleur à instancier sera "JeuController", on met donc "Jeu" dans la variable de résultat
+				$result["action"] = "listeJson"; // on veut générer une sortie au format json, on donne donc l'action "listeJson"
+				// il n'y a pas de paramètres attendus, on n'affecte pas $result["params"]
+			}
 			else if($parts[0] == "addjeu" && count($parts) == 1) { // on veut afficher le formulaire d'ajout(url/addjeu)
 				$result["controller"] = "Jeu";
 				$result["action"] = "displayFormAdd"; // on veut afficher le formulaire
diff --git a/app/view/Jeu/listeJson.html b/app/view/Jeu/listeJson.html
new file mode 100644
index 0000000..7977fda
--- /dev/null
+++ b/app/view/Jeu/listeJson.html
@@ -0,0 +1,12 @@
+[
+<?php 
+$cpt = 1;
+foreach($this->liste as $jeu) {
+	echo '{"value": "'.htmlspecialchars($jeu->nom).'"}';
+	if($cpt != count($this->liste)) {
+		echo ',';
+	}
+	$cpt++;
+}
+?>
+]
\ No newline at end of file
-- 
GitLab