diff --git a/README.md b/README.md
index 4854c64..3c59d53 100644
--- a/README.md
+++ b/README.md
@@ -117,15 +117,6 @@ Par défaut il faut avoir une seule ligne vide, le script se chargera de la modi
| team | tinyint(1) | | |
| id_staff | text | | |
-### ville
-
-| Nom | Type | AUTO_INCREMENT | NULL |
-| :----------- |:------------:|:---------------:|:-----:|
-| session | int(11) | X | |
-| state | int(11) | | |
-| time_begin | int(11) | | |
-
-ici il y a les session car il y a la session du matin et la session de l'après midi, cette table permet de savoir quelle session à été lancé, et le temps(unix) à laquelle la session à été lancé si elle l'a été.
### ville_epreuve
@@ -135,8 +126,17 @@ ici il y a les session car il y a la session du matin et la session de l'après
| indice | text | | |
| reponse | varchar(50) | | |
| photo | varchar(20) | | X |
+| id_equipe | int(11) | | X |
+| est_finale | BOOLEAN | | |
+| ordre | int(11) | | |
+| est_trouvee | BOOLEAN | | |
ici il va falloir mettre chaque épreuve à la main, indice correspond à ce qui va etre affiché aux PPA à chaque étape, la réponse à ce que doivent deviner les PPA, et éventuellement une photos pour les aider qui se trouve dans "assets/img/ville/"
+Le champ "id_equipe" est une clé étrangère faisant reférence à la taple ville_equipe. Cette clé est utile si l'on veut mettre des indices différents pour chaque équipe (NULL si universel).
+Le bouléen "est_finale" va servir à mettre fin au chronomètre si l'équipe trouve la réponse de l'énigme.
+L'entier "ordre" est simplement là pour spécifier la position dans laquelle l'énigme va apparaître dans le parcours de l'équipe.
+
+Le bouléen "est_trouvee" va simplement indiquer si une épreuve est complétée ou non
### ville_equipe
diff --git a/admin/bdd.php b/admin/bdd.php
index 51ea325..21f091b 100644
--- a/admin/bdd.php
+++ b/admin/bdd.php
@@ -1,28 +1,26 @@
query("SELECT * FROM enigma WHERE id = 1");
-$r = $req -> fetchAll(PDO::FETCH_ASSOC);
-
if(isset($_GET["radio_bdd"])){
switch($_GET["radio_bdd"]){
case "drop":
- drop_bdd($LISTE_TABLES);
+ //drop_bdd($LISTE_TABLES,$db);
break;
case "create":
- create_bdd($LISTE_TABLES);
+ create_bdd($LISTE_TABLES_DROP,$db);
break;
}
}
diff --git a/admin/index.php b/admin/index.php
index fc4069a..5c6d5c2 100644
--- a/admin/index.php
+++ b/admin/index.php
@@ -6,7 +6,10 @@ require_once("../phpCAS-1.3.6/CAS.php");
$_SESSION['id']=1;
$pseudo = "mougnibas";
-
+$user = array(
+ "pseudo"=>$pseudo,
+ "perm"=>3
+);
/*
// Initialize phpCAS
diff --git a/admin/script.php b/admin/script.php
index 9c84848..aced7d2 100644
--- a/admin/script.php
+++ b/admin/script.php
@@ -1,6 +1,5 @@
Com'ville"
- .'Planning'
- .'Gestion des accès'
- .'Enigma'
- .'Matomo'
- .'/!\DANGER ZONE/!\';
+ ."Planning"
+ ."Gestion des accès"
+ ."Enigma"
+ ."Matomo"
+ ."/!\DANGER ZONE/!\";
break;
}
diff --git a/admin/ville.php b/admin/ville.php
index 1b4b8a2..34087ba 100644
--- a/admin/ville.php
+++ b/admin/ville.php
@@ -7,60 +7,38 @@ if($user['perm'] < 1) {
header('Location: deco.php');
}
-if(isset($_POST['start1'])) {
- $req = $db->prepare("UPDATE ville SET state = ?, time_begin = ? WHERE session = 1");
- $req->execute(array(1, time()));
- header('Refresh: 0');
-}
-if(isset($_POST['start2'])) {
- $req = $db->prepare("UPDATE ville SET state = ?, time_begin = ? WHERE session = 2");
- $req->execute(array(1, time()));
- header('Refresh: 0');
-}
-//ajout d'une session ville
-if(isset($_POST['add_session'])){
- $req = $db->query("INSERT INTO ville(state,time_begin) VALUES(0,0)");
-}
-
// ajout d'une epreuve
if(isset($_POST['add_epreuve'])){
- $req = $db->prepare("INSERT INTO ville_epreuve(indice,reponse,photo) VALUES(?,?,?)");
- $req->execute(array(htmlspecialchars($_POST['indice']),htmlspecialchars($_POST['reponse']),'assets/img/ville/'.htmlspecialchars($_POST['photo'])));
+ $_POST['est_finale'] = $_POST['est_finale'] == 'true' ? true : false;
+
+
+ $req = $db->prepare("INSERT INTO ville_epreuve(indice,reponse,photo,id_equipe,est_finale,ordre,est_trouvee) VALUES(?,?,?,?,?,?,?)");
+ $req->execute(array(htmlspecialchars($_POST['indice']),
+ htmlspecialchars($_POST['reponse']),
+ 'assets/img/ville/'.htmlspecialchars($_POST['photo']),
+ (int)htmlspecialchars($_POST['id_equipe']),
+ (bool)htmlspecialchars($_POST['est_finale']),
+ (int)htmlspecialchars($_POST['ordre']),
+ false
+
+));
}
//ajout d'une equipe
if(isset($_POST['add_equipe'])){
- $req = $db->prepare("INSERT INTO ville_equipe(nom,begin,temps) VALUES(?,?,?)");
- $req->execute(array(htmlspecialchars($_POST['nom']),(int) htmlspecialchars($_POST['begin']),NULL));
+ $req = $db->prepare("INSERT INTO ville_equipe(nom,temps) VALUES(?,?)");
+ $req->execute(array(htmlspecialchars($_POST['nom']),NULL));
}
-if(isset($_POST['stop1'])) {
- $req = $db->query("UPDATE ville SET state = 2 WHERE session = 1");
- header('Refresh: 0');
-}
-if(isset($_POST['stop2'])) {
- $req = $db->query("UPDATE ville SET state = 2 WHERE session = 2");
- header('Refresh: 0');
-}
-
-if(isset($_POST['reset1'])) {
- if(htmlspecialchars($_POST['code']) == "anti-missclick") {
- $req = $db->query("UPDATE ville SET state = 0, time_begin = 0 WHERE session = 1");
- $req = $db->query("UPDATE ville_equipe SET temps = NULL WHERE id < 17");
- header('Refresh: 0');
- }
-}
-if(isset($_POST['reset2'])) {
- if(htmlspecialchars($_POST['code']) == "anti-missclick") {
- $req = $db->query("UPDATE ville SET state = 0, time_begin = 0 WHERE session = 2");
- $req = $db->query("UPDATE ville_equipe SET temps = NULL WHERE id > 16");
- header('Refresh: 0');
- }
-}
+/* TODO :
+ - MODIFIER LES SCRIPTS D'AJOUTS pour intégrer les autres champs
+ - faire un tableau pour chaque équipe (à défiler)
+ - faire un tableau récapitulatif des équipes
+*/
?>
@@ -74,372 +52,63 @@ if(isset($_POST['reset2'])) {
-
+
-
+ Equipes déjà enregistrées :
+
-
-
-
- = 1) {
- if($r[0]['state'] == 1) {
- ?>
- Session en cours,
-
-
-
-
-
-
- Session terminée,
-
-
-
";
-
- $reqsession = $db->query("SELECT state, time_begin FROM ville WHERE session = 1");
- $rs = $reqsession -> fetchAll(PDO::FETCH_ASSOC);
-
- $reqe = $db->query('SELECT * FROM ville_equipe WHERE id < 17');
- while($e = $reqe->fetch()) {
- $temps_init = $e["temps"];
- $tab_time = NULL;
- $tab_time = explode(";", $temps_init);
- $temps_begin = date("H:i:s",$rs[0]['time_begin']);
-
- if($temps_init == NULL) {
- $avancement = (int) 0;
- $delta_time_0 = gmdate("H:i:s",time()-$rs[0]['time_begin']);
- } else {
- $avancement = count($tab_time);
- $def_time = $tab_time[$avancement-1] - $rs[0]['time_begin'];
- $delta_time_0 = gmdate("H:i:s",$tab_time['0']-$rs[0]['time_begin']);
- }
-
- //node 0
- ?>
-
-
Equipe = $e['nom'] ?>
-
-
-
-
-
- ';
- echo $node;
-
- if ($i <= $current) {
- // --:-- doit être remplacé par l'heure à laquelle le point $node a été atteint
- if($i == $current) {
- echo '
'.date("H:i:s",time()).'
';
- } else {
- echo '
'.date("H:i:s",$tab_time[$i-1]).'
';
- }
- }
- echo '
';
-
- if ($i < 17) {
- echo '
';
- if ($i < $current) {
- if($i < $current-1) {
- echo '
'.gmdate("H:i:s",$tab_time[$i]-$tab_time[$i-1]).'
'; // --mn doit être remplacé par le deltaT entre les points $node et $node+1
- } else {
- echo '
'.gmdate("H:i:s",time()-$tab_time[$i-1]).'
';
- }
-
- }
- echo '
';
- }
- }
-
- ?>
-
-
-
-
-
- Session matin
- Session aprem
-
- query("SELECT state FROM ville WHERE session = 2");
- $r = $req -> fetchAll(PDO::FETCH_ASSOC);
-
- if($r[0]['state'] == 0) {
- ?>
- Session non demarrée,
-
-
- = 1) {
- if($r[0]['state'] == 1) {
- ?>
- Session en cours,
-
-
-
-
-
-
- Session terminée,
-
-
-
";
-
- $reqsession = $db->query("SELECT state, time_begin FROM ville WHERE session = 2");
- $rs = $reqsession -> fetchAll(PDO::FETCH_ASSOC);
-
- $reqe = $db->query('SELECT * FROM ville_equipe WHERE id > 16');
- while($e = $reqe->fetch()) {
- $temps_init = $e["temps"];
- $tab_time = NULL;
- $tab_time = explode(";", $temps_init);
- $temps_begin = date("H:i:s",$rs[0]['time_begin']);
-
- if($temps_init == NULL) {
- $avancement = (int) 0;
- $delta_time_0 = gmdate("H:i:s",time()-$rs[0]['time_begin']);
- } else {
- $avancement = count($tab_time);
- $def_time = $tab_time[$avancement-1] - $rs[0]['time_begin'];
- $delta_time_0 = gmdate("H:i:s",$tab_time['0']-$rs[0]['time_begin']);
- }
-
- //node 0
- ?>
-
-
Equipe = $e['nom'] ?>
-
-
-
-
-
- ';
- echo $node;
-
- if ($i <= $current) {
- // --:-- doit être remplacé par l'heure à laquelle le point $node a été atteint
- if($i == $current) {
- echo '
'.date("H:i:s",time()).'
';
- } else {
- echo '
'.date("H:i:s",$tab_time[$i-1]).'
';
- }
- }
- echo '
';
-
- if ($i < 17) {
- echo '
';
- if ($i < $current) {
- if($i < $current-1) {
- echo '
'.gmdate("H:i:s",$tab_time[$i]-$tab_time[$i-1]).'
'; // --mn doit être remplacé par le deltaT entre les points $node et $node+1
- } else {
- echo '
'.gmdate("H:i:s",time()-$tab_time[$i-1]).'
';
- }
-
- }
- echo '
';
- }
- }
-
- ?>
-
-
-
-
- query('SELECT * FROM ville_equipe');
+ while($equipe = $req->fetch()) {
+
+ echo "".htmlspecialchars($equipe['nom'])."(".$equipe['id'].")"." | ";
}
- } else {
+
?>
- Session matin
-
- Session aprem
+
+
+ prepare('SELECT * FROM ville_epreuve WHERE id_equipe=?');
+ $req->execute(array($ekip));
+ ?>
+
- ID (db)
- | Indice
- | reponse
- | photos
+ | ID (db) |
+ Indice |
+ reponse |
+ photos |
+ id_equipe |
+ est finale |
+ ordre |
+ est trouvée |
query('SELECT id, indice, reponse, photo FROM ville_epreuve');
+
+
+
while($epreuve = $req->fetch()) {
?>
@@ -447,11 +116,15 @@ if(isset($_POST['reset2'])) {
= $epreuve['indice'] ?> |
= $epreuve['reponse'] ?> |
no photos"; }?> |
+ = $epreuve['id_equipe'] ?> |
+ = $epreuve['est_finale'] == 0 ? "non":"oui" ?> |
+ = $epreuve['ordre'] ?> |
+ = $epreuve['est_trouvee'] == 0 ? "non":"oui" ?> |
-
+