-
Notifications
You must be signed in to change notification settings - Fork 1
/
view.php
137 lines (101 loc) · 4.44 KB
/
view.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
<?php
// import des fonctions PHP
include_once './functions.php';
// Obtenir le nom de tous les fichiers contenus dans le repertoire 'data'
$content_repo = get_all_file_names('./data/');
if (!isset($_GET) || empty($_GET['view']) ||
!in_array($_GET['view'] . '.json', $content_repo)) {
// s'il n'y a pas de GET(view) ou qu'il n'est pas dans la liste des fichiers :
// renvoie du client à l'accueil et interruption du chargement de la page
header("Location: ./index.php");
exit;
}
// stockage des informations du JSON
// '$_GET['view']' est le nom du fichier auquel il suffit d'ajouter le chemin et l'extension
$JSON_file = JSON_file_to_array('./data/' . $_GET['view'] . '.json');
?>
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title><?= $JSON_file['ville'] ?> - <?= $JSON_file['categorie'] ?></title>
<!-- LIBRAIRIES -->
<link rel="stylesheet" href="./libs/bootstrap/css/bootstrap-reboot.min.css">
<link rel="stylesheet" href="./libs/bootstrap/css/bootstrap.min.css">
<link rel="stylesheet" href="./assets/style.css">
</head>
<body>
<?php include_once './include/navigation.php'; ?>
<main class="col-sm-7 mx-auto">
<?php
if (isset($JSON_file['ville']) && !empty($JSON_file['ville'])
&& isset($JSON_file['departement']) && !empty($JSON_file['departement'])
&& isset($JSON_file['categorie']) && !empty($JSON_file['categorie'])):
?>
<h1><?= $JSON_file['ville'] ?> <small>de <?= $JSON_file['departement'] ?></small><br/><?= $JSON_file['categorie'] ?></h1>
<?php
endif;
?>
<?php
if (isset($JSON_file['date_data_upload']) && !empty($JSON_file['date_data_upload'])):
?>
<h2>Données mises en ligne le <?= $JSON_file['date_data_upload'] ?></h2>
<?php
endif;
?>
<a href="./index.php#tab" class="btn btn-secondary my-2">Retour à l'accueil</a>
<h2>Description</h2>
<?php
if (isset($JSON_file['institution']) && !empty($JSON_file['institution'])):
?>
<p>Mis à disposition par <?= $JSON_file['institution'] ?>.</p>
<?php
endif;
?>
<ul class="list-group my-2">
<?php
// recherche...
$field_file = CSV_file_to_array('./fields.csv'); // récupération des lignes du CSV contenant toutes les infos
$all_fields = $field_file[0]; //... des champs d'information
$all_fields_name = $field_file[1]; //... de leur nom complet
$all_fields_description = $field_file[3]; //... et de leur description
$i = 0; // incrémentation qui va permettre de récupérer les éléments pour chaque élément
// pour chaque champ du JSON...
foreach ($JSON_file as $key => $value) {
if (!in_array($key, $all_fields)) {
//... s'il s'agit bien d'un champ référencé ...
continue;
}
$poppover = 'data-toggle="popover" data-trigger="hover" data-placement="left"
data-content="' . $all_fields_description[$i] . '"';
if ($value === "true" || $value === true) {
echo '<li class="list-group-item list-group-item-success" ' . $poppover . ' >' . $all_fields_name[$i] . ' Oui</li>';
} elseif ($value === "false" || $value === false) {
echo '<li class="list-group-item list-group-item-danger" ' . $poppover . ' >' . $all_fields_name[$i] . ' Non</li>';
} else {
echo '<li class="list-group-item list-group-item-dark" ' . $poppover . ' >' . $all_fields_name[$i] . ' Incertain</li>';
}
$i++;
}
?>
</ul>
<?php
if (isset($JSON_file['data_loc']) && !empty($JSON_file['data_loc'])):
?>
<a href="<?= $JSON_file['data_loc'] ?>" target="_target" class="btn btn-primary my-2">Accéder aux données</a>
<?php
endif;
?>
</main>
<?php include_once './include/footer.html' ?>
<script src="./libs/jquery.min.js"></script>
<script src="./libs/popper.min.js"></script>
<script src="./libs/bootstrap/js/bootstrap.bundle.min.js"></script>
<script src="./libs/bootstrap/js/bootstrap.min.js"></script>
<script>
// activation des Poppovers
$('[data-toggle="popover"]').popover({ trigger: "hover" });
</script>
</body>
</html>