From 8821cc03138a1209ebf01be46dc6f5e037b1792d Mon Sep 17 00:00:00 2001 From: Baptiste Date: Thu, 17 Feb 2022 00:46:05 +0100 Subject: [PATCH] =?UTF-8?q?map=20import=C3=A9=20qui=20fonctionne=20dans=20?= =?UTF-8?q?le=20r=C3=A9pertoire=20map/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- assets/map/map.php | 81 --------------- index.php | 2 +- map.php | 61 ++++++++++- map/ajax.php | 111 +++++++++++++++++++++ assets/map/map.svg => map/map2d.svg | 2 +- {assets/map => map}/map3D.glb | Bin map/map_init.php | 56 +++++++++++ assets/map/map.js => map/script_map2d.js | 2 +- assets/map/map3d.js => map/script_map3d.js | 6 +- script/db.php | 4 +- structure/template.php | 2 - 11 files changed, 235 insertions(+), 92 deletions(-) delete mode 100644 assets/map/map.php create mode 100644 map/ajax.php rename assets/map/map.svg => map/map2d.svg (99%) rename {assets/map => map}/map3D.glb (100%) create mode 100644 map/map_init.php rename assets/map/map.js => map/script_map2d.js (96%) rename assets/map/map3d.js => map/script_map3d.js (98%) diff --git a/assets/map/map.php b/assets/map/map.php deleted file mode 100644 index bac8785..0000000 --- a/assets/map/map.php +++ /dev/null @@ -1,81 +0,0 @@ - - - - -conn->prepare($sql); - $cursor->execute([$selector]); - return $cursor->fetchAll(PDO::FETCH_ASSOC); -} - -function get_map_selectors() -{ - $sql = 'SELECT selector FROM map_insa'; - $cursor = $this->conn->prepare($sql); - $cursor->execute(); - return $cursor->fetchAll(PDO::FETCH_ASSOC); -} - -function save_map_info($selector, $info_json) -{ - $sql = 'DELETE FROM map_insa WHERE selector = ?'; - $cursor = $this->conn->prepare($sql); - $cursor->execute([$selector]); - $sql = 'INSERT INTO map_insa (title, description, selector) VALUES (?, ?, ?)'; - $cursor = $this->conn->prepare($sql); - $cursor->execute([$info_json['title'], $info_json['description'], $selector]); -} - -function is_in_map($selector) { - $sql = 'SELECT selector FROM map_insa WHERE selector = ?'; - $query = $this->conn->prepare($sql); - $query->execute([$selector]); - return $query->fetchAll(PDO::FETCH_ASSOC); -} - -?> - -
- - -
- -
-
-
- -
- - - -
- - \ No newline at end of file diff --git a/index.php b/index.php index 4416f61..3aa97e2 100755 --- a/index.php +++ b/index.php @@ -16,7 +16,7 @@ ob_start(); // Start reading html

Tu vas pouvoir trouver ici des informations générales sur ta semaine, comme Le Planning, - Le Plan Du Campus, des détails sur + Le Plan Du Campus, des détails sur Le Parrainage, ou encore des directives concernant ta magnifique Blouse.

diff --git a/map.php b/map.php index 25afc55..7c8f643 100755 --- a/map.php +++ b/map.php @@ -1,6 +1,6 @@

Le Plan

@@ -11,7 +11,64 @@ ob_start(); // Start reading html Clique sur un bâtiment pour voir les infos.

- + + + + + + + +
+ + +
+ +
+ +
+ +
+
+ + + +
+ + + + + + + + + +

Une petite note sur le numéro des salles : sur ton emploi du temps, le bâtiment est marqué en premier, et diff --git a/map/ajax.php b/map/ajax.php new file mode 100644 index 0000000..595db95 --- /dev/null +++ b/map/ajax.php @@ -0,0 +1,111 @@ +
\nEt juste dessous la cafét pour varier les plaisirs et pour te sauver le soir.', +'Sympa, convivial, grand avant 12h13.', +'LE bâtiment avec TOUTES tes matières préférées : en plus de l\'anglais et des autres langues enseignées à l\'INSA, on t\'y parle aussi d\'Expression, de Gestion, de Philo, de PPI...youpi !', +'Nom bizarre pour un bâtiment mais tu y iras seulement pour les TP d\'Electrocinétique et d\'Optique\n', +'Le bâtiment des salles de cours classiques, avec son bureau des stages, son administration des premières années, et...ses sous-sols.\n\nY\'a aussi l\'amphi Vinci (et ses 300 places, souvent occupées en même temps sauf étonnamment en gestion) et l\'amphi Riquet (pour Pierre-Paul, celui qui a initié la construction du canal, il est plus petit mais plus convivial).', +'Ceux du R5-R6 sont contents de le voir dans l\'emploi du temps.\n\n(C\'est le Génie Civil.)', +'Pour Génie des Procédés et Environnement, et pour de longues heures de chimie et de thermo avec ta belle blouse', +'Le Génie Physique, pour quelques cours mais sans plus.', +'C\'est le Génie Electronique et Informatique, où t\'iras peut-être quérir de l\'aide pour l\'Algo durant ton après-midi libre du jeudi.', +'Entre autres pour les TP de TI (c\'est le Génie Mécanique)', +'Seulement le lundi matin, pour t\'amuser devant ∫1/cos(x) dx\n

\n\nEt à côté y\'a le labo AIME.', +'L\'Accueil et la loge du gardien.', +'Et à côté la salle de danse et le lieu de réunion de la Junior INSA Services.', +'Le GMM (Génie Mathématique et Modélisation), que tu ne devrais pas voir souvent cette année.\r\n

\r\nEt le CSN (Centre des Services Numériques) à côté, où tu iras peut-être pour réviser l\'Algo...\r\n

\r\nEt enfin, l\'Amphi Fourier, c\'est pour les réceptions, les pièces du CATIN, les concerts des Enfoiros et les spectacles de danse de tes camarades au second semestre !', +'', //R3 +'', //R4 +'Ici on aime bien le calme', +'Ici on aime bien le calme', +'', //R7 +'', //R1 +'', //R2 +'L\'Amicale', 'C\'est l\'Association des élèves, à côté de quelques clubs. Si tu as besoin de quelque chose ce sera toujours là-bas.', +'Le Ptit Kawa, mais PK c\'est mieux (Peks pour les intimes). Le bar de l\'INSA, idéal pour se reposer entre les cours en jouant à la coinche ou au mus, ou pour se détendre les mercredi soir grâce aux soirée PK !', +'de ton...' +]; + + + +//c'est peu compréhensible mais l'ancien systeme (avant Baptiste Rébillard <- moi) utilisait inutilement une base de donnée + +if (isset($_GET['function'])) { + if ($_GET['function'] == "get_map_info") + get_map_info(); + elseif ($_GET['function'] == "get_map_selectors") + get_map_selectors(); +} + +function get_map_selectors() { + header('Content-Type: application/json'); + + global $selector; + + //début bidouille (l'idée est de faire un format json artificiellement) + echo "["; + for ($i=0; $i < count($selector)-1 ; $i++) { + echo json_encode(array("selector" => $selector[$i])).","; + } + echo json_encode(array("selector" => $selector[count($selector)-1]))."]"; + //fin bidouille +} + +function get_map_info() { + if (isset($_GET['selector'])) { + + $select = $_GET['selector']; + + header('Content-Type: application/json'); + + //on passe les tableau en variable globale pour les utiliser dans la fonction + global $selector, $title, $desc; + + //on va chercher le selector dans la table selector afin de récuperer la positon dans le tableau + $pos = array_search($select, $selector); + + $array_to_send = array("title" => $title[$pos], "description" => $desc[$pos]); + + echo "[".json_encode($array_to_send)."]"; //il fallait rajouter des [] pour que ça marche + } else { + show_error(); + } +} + +function show_error() { + echo "Échec : "; + var_dump($_GET); +} diff --git a/assets/map/map.svg b/map/map2d.svg similarity index 99% rename from assets/map/map.svg rename to map/map2d.svg index 86b6720..7642b89 100644 --- a/assets/map/map.svg +++ b/map/map2d.svg @@ -5537,7 +5537,7 @@ id="surface1"> + + + + + + + +

+ + +
+ +
+ +
+ +
+
+ + + +
+ + + + + diff --git a/assets/map/map.js b/map/script_map2d.js similarity index 96% rename from assets/map/map.js rename to map/script_map2d.js index 4d2c5a9..5836943 100644 --- a/assets/map/map.js +++ b/map/script_map2d.js @@ -16,7 +16,7 @@ function clicked(elem){ 'selector': get_name(elem.id), }; return $.ajax({ - url: 'ajax/read', + url: 'ajax.php', data: object, method: 'get' }).done(function (data) { diff --git a/assets/map/map3d.js b/map/script_map3d.js similarity index 98% rename from assets/map/map3d.js rename to map/script_map3d.js index 3d6eb3a..5408e70 100644 --- a/assets/map/map3d.js +++ b/map/script_map3d.js @@ -84,7 +84,7 @@ function init() { // var loader = new GLTFLoader(loadingManager); - loader.load('assets/map/map3D.glb', function(gltf) { + loader.load('map3D.glb', function(gltf) { var object = gltf.scene; gltf.scene.scale.set( 2, 2, 2 ); gltf.scene.position.x = 0; //Position (x = right+ left-) @@ -162,7 +162,7 @@ function getSelectors() { 'info': info, } return $.ajax({ - url: 'ajax/read', + url: 'ajax.php', data: object, method: 'get', success: function(data){ @@ -204,7 +204,7 @@ function handleClickOnBuilding(x,y) { 'selector': selector, }; return $.ajax({ - url: 'ajax/read', + url: 'ajax.php', data: object, method: 'get' }).done(function (data) { diff --git a/script/db.php b/script/db.php index cd3f823..cc41852 100644 --- a/script/db.php +++ b/script/db.php @@ -8,5 +8,7 @@ function read_password() return trim($password); } -$db = new PDO('mysql:host=127.0.0.1;dbname=accueil_insa','root', read_password()); +$host = "127.0.0.1"; + +$db = new PDO('mysql:host='.$host.';dbname=accueil_insa','root', read_password()); ?> \ No newline at end of file diff --git a/structure/template.php b/structure/template.php index 2a066b6..0d708f4 100644 --- a/structure/template.php +++ b/structure/template.php @@ -4,8 +4,6 @@ $pagetitle = $infopage[1]; // titre de la page affiché dans la balise $pagescript = $infopage[3]; // contenu de la page qui doit se retrouver en dehors du $pagename = $infopage[4]; // nom de la page exact servant à appeler le css (cf sur /structure/template.php). Ex : ceciestunepage.php => { $pagetitle = "Ceci est une page" et $pagename = "ceciestunepage" } - -require_once $relativepath.'script/db.php'; ?>