forked from vergnet/site-accueil-insa
81 lines
No EOL
2.1 KiB
PHP
81 lines
No EOL
2.1 KiB
PHP
<style>
|
|
.hidden {
|
|
display: none;
|
|
}
|
|
</style>
|
|
|
|
<script type="text/javascript" src="assets/map/map.js"></script>
|
|
|
|
<?php
|
|
|
|
function get_map_info($selector)
|
|
{
|
|
$sql = 'SELECT title, description FROM map_insa WHERE selector = ?';
|
|
$cursor = $this->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);
|
|
}
|
|
|
|
?>
|
|
|
|
<div id="maps_button">
|
|
<button onclick="enable3DMap()" class="main-button">Map 3D</button>
|
|
<button onclick="enable2DMap()" class="main-button">Map 2D</button>
|
|
</div>
|
|
|
|
<section id="loading-screen">
|
|
<div class="loader"></div>
|
|
</section>
|
|
|
|
<div id="maps" class="">
|
|
<script src="assets/map/map3d.js" type="module"></script>
|
|
|
|
<div id="map" class="hidden">
|
|
<?php echo file_get_contents("assets/map/map.svg"); ?>
|
|
<canvas id="canvasID"></canvas>
|
|
</div>
|
|
</div>
|
|
|
|
<script>
|
|
function enable3DMap() {
|
|
var map3d = document.querySelector('#maps #map3d');
|
|
var map = document.querySelector('#maps #map');
|
|
|
|
map3d.classList.add("hidden");
|
|
map.classList.add("hidden");
|
|
map3d.classList.remove("hidden");
|
|
}
|
|
|
|
function enable2DMap() {
|
|
var map3d = document.querySelector('#maps #map3d');
|
|
var map = document.querySelector('#maps #map');
|
|
map.classList.add("hidden");
|
|
map3d.classList.add("hidden");
|
|
map.classList.remove("hidden");
|
|
}
|
|
</script>
|