diff --git a/README.md b/README.md index 3c59d53..0ae04de 100644 --- a/README.md +++ b/README.md @@ -144,10 +144,9 @@ Le bouléen "est_trouvee" va simplement indiquer si une épreuve est complétée | :----------- |:------------:|:---------------:|:-----:| | id | int(11) | X | | | nom | varchar(50) | | | -| begin | int(11) | | | | temps | text | | X | -les identifiants des équipes ne doivent pas bouger, les noms c'est juste pour l'affichage utilisateur et le "begin" est l'étape à laquelle démarre l'équipe, car ils ne démarrent pas tous à la même épreuve ! +les identifiants des équipes ne doivent pas bouger, les noms c'est juste pour l'affichage utilisateur. la colonne temps permet d'enregistrer les temps à chaque étape (en temps unix évidemment). diff --git a/admin/ville.php b/admin/ville.php index 34087ba..b7d193c 100644 --- a/admin/ville.php +++ b/admin/ville.php @@ -12,13 +12,13 @@ if($user['perm'] < 1) { // ajout d'une epreuve if(isset($_POST['add_epreuve'])){ - $_POST['est_finale'] = $_POST['est_finale'] == 'true' ? true : false; - + + $_POST['est_finale'] = $_POST['est_finale'] == 'on' ? 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']), + htmlspecialchars($_POST['photo']), (int)htmlspecialchars($_POST['id_equipe']), (bool)htmlspecialchars($_POST['est_finale']), (int)htmlspecialchars($_POST['ordre']), @@ -33,12 +33,19 @@ if(isset($_POST['add_equipe'])){ $req->execute(array(htmlspecialchars($_POST['nom']),NULL)); } +// suppression d'une équipe +if(isset($_POST['del_equipe'])){ + $req = $db->prepare("DELETE FROM ville_equipe WHERE id=?"); + $req->execute(array(htmlspecialchars((int)$_POST['id_ekip']))); +} + +//suppression d'une épreuve + +if(isset($_POST['del_epreuve'])){ + $req = $db->prepare("DELETE FROM ville_epreuve WHERE id=?"); + $req->execute(array((int)$_POST['id_epreuve'])); +} -/* 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 -*/ ?> @@ -55,7 +62,7 @@ if(isset($_POST['add_equipe'])){
- + "> @@ -98,12 +105,14 @@ if(isset($_POST['add_equipe'])){ ID (db) Indice - reponse - photos - id_equipe - est finale - ordre - est trouvée + Reponse + Photos + Id_equipe + Est finale + Ordre + Est trouvée + Action + + + + + + +
+ + diff --git a/assets/css/page/com_ville.css b/assets/css/page/com_ville.css index 26c118b..4f4f366 100644 --- a/assets/css/page/com_ville.css +++ b/assets/css/page/com_ville.css @@ -10,6 +10,20 @@ section { margin-top: 40px; } + +.btn_equipe{ + + background-color: #ad7015; + color: #ffffff; + padding: 10px 20px 10px 20px; + border-top: 1px solid #CCCCCC; + border-right: 1px solid #333333; + border-bottom: 1px solid #333333; + border-left: 1px solid #CCCCCC; + margin-top: 30px; + border-radius: 10px; +} + a.team { display: block; color: black; diff --git a/assets/img/com_ville/buisson.svg b/assets/img/com_ville/buisson.svg new file mode 100644 index 0000000..001d3bd --- /dev/null +++ b/assets/img/com_ville/buisson.svg @@ -0,0 +1,8972 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/img/com_ville/obelix.svg b/assets/img/com_ville/obelix.svg new file mode 100644 index 0000000..e9af565 --- /dev/null +++ b/assets/img/com_ville/obelix.svg @@ -0,0 +1,1826 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/com_ville.php b/com_ville.php index 2f2b43d..c2bac35 100644 --- a/com_ville.php +++ b/com_ville.php @@ -4,7 +4,7 @@ include "assets/fonts/color.php"; include "script/db.php"; -include "script/globals.php" +include "assets/scripts/globals.php" ?> @@ -15,7 +15,7 @@ include "script/globals.php" /* principe de fonctionnement : -1. si ?team=int est dans la requête GET +1. si ?ekip=int est dans la requête GET - on vérifie que l'équipe existe - si l'équipe n'a pas démarrée, mettre un bouton play pour démarrer la session - sinon, on affiche l'énigme courante (ordre+1 de la dernière trouvée) @@ -34,8 +34,201 @@ include "script/globals.php" */ +if(isset($_POST["reponse"])){ + + $ekip = (int)$_POST["ekip"]; + + // on chope la première énigme non trouvée + $req = $db->prepare("SELECT * FROM ville_epreuve WHERE id_equipe=? AND est_trouvee=0"); + + $req->execute(array($ekip)); + + $result = $req->fetch(); + + // si c'est la bonne réponse + if($result['reponse']===$_POST['reponse']){ + $req = $db->prepare("UPDATE ville_epreuve SET est_trouvee=1 WHERE id_equipe=? AND est_trouvee=0 and id=?"); + $req->execute(array($ekip,$result['id'])); + + //si en plus c'est la dernièr, on sort la ptite photo <3 + // et on met fin au temps de l'équipe + if($result["est_finale"]){ + + $req = $db->prepare("SELECT temps FROM ville_equipe WHERE id=?"); + $req->execute(array($ekip)); + + $tps_depart = (int)$req->fetch()['temps']; + + + $req = $db->prepare("UPDATE ville_equipe SET temps=? WHERE id=?"); + $req->execute(array(time()-$tps_depart,$ekip)); + + + + header("Location: com_ville.php?ekip=".$ekip); + } + } + + + + +} + +if(isset($_POST["declencheur_depart"])){ + + + + $ekip = (int)$_POST["id_equipe"]; + + // on stoque le temps où l'équipe part + $req = $db->prepare("UPDATE ville_equipe SET temps=? WHERE id=?"); + $req->execute(array(time(),$ekip)); + + +} + + +if(isset($_GET["ekip"])){ + + $ekip = (int)$_GET["ekip"]; + + // check si l'équipe existe + + $req = $db->prepare("SELECT * FROM ville_equipe WHERE id=?"); + + $req->execute(array($ekip)); + + $result = $req->fetch(); + // reload sans param si elle existe pas + if(empty($result)){ + header("Location: com_ville.php"); + } + + // avant tout, si l'équipe a un temps nul, on affiche un message de départ + + if($result['temps'] === null){ + + ?> + +
+ +

Chauds pour un ptit tour de la ville les copinous(ettes) ?

+
+ + +
+ +
+ + prepare("SELECT * FROM ville_epreuve WHERE id_equipe=? AND est_trouvee=0"); + + + $req->execute(array($ekip)); + + $result = $req->fetch(); + // si yen a pas, on met le message d'arrivée + + + if(empty($result)){ + //message d'arrivée + + // calcul du temps + $req = $db->prepare("SELECT temps,nom FROM ville_equipe WHERE id=?"); + + + $req->execute(array($ekip)); + + $result = $req->fetch(); + + $heures = intdiv((int)$result['temps'],24); + $minutes = intdiv((((int)$result['temps'])%24),60); + $secondes = ((((int)$result['temps'])%24)%60); + + ?> + +
+

BRAVO VOUS AVEZ FINI !!!!

+


Temps : h min s

+
+ + + +
+

Epreuve :

+ +

+ + + + +

C'est la dernière épreuve !!!
+ + +
+ + + +
+ +
+ + + + +
+ +

Com'Ville :D
Choisis ton équipe !

+ + + query("SELECT * FROM ville_equipe"); + + while($equipe = $req->fetch()){ + + echo "".$equipe['nom']."
"; + } + + ?> + + + + +

+ + +