364 lines
15 KiB
PHP
Executable File
364 lines
15 KiB
PHP
Executable File
<?php
|
|
session_start();
|
|
header('P3P: CP="NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM"');
|
|
if(isset($_SESSION['type']) and isset($_SESSION['id'])) {
|
|
$type=$_SESSION['type'];
|
|
$id=$_SESSION['id'];
|
|
?>
|
|
<html>
|
|
|
|
<head>
|
|
<meta http-equiv="Content-Language" content="fr">
|
|
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
|
|
|
<title>LE SERVEUR VOCAL DE RESERVATION DES SALLES DE TENNIS</title>
|
|
<link rel="stylesheet" href="style.css" type="text/css">
|
|
</head>
|
|
|
|
<body>
|
|
<div id="tout">
|
|
<?php
|
|
include("enTete.php");
|
|
include("menu.php");
|
|
include("conf.php");
|
|
|
|
echo "<h2><center>Visualisation du log des réservations de votre club</center></h2>";
|
|
|
|
/* Critere de recherche */
|
|
if(isset($_POST['critere'])) {
|
|
$critere=$_POST['critere'];
|
|
}
|
|
else {
|
|
$critere=$_GET['critere'];
|
|
}
|
|
/* Intervalle de recherche */
|
|
if(isset($_POST['interv'])) {
|
|
$nb_sem=$_POST['interv'];
|
|
}
|
|
else {
|
|
$nb_sem=$_GET['interv'];
|
|
}
|
|
/* Type de dates (dates log ou dates réservation) */
|
|
if(isset($_POST['date_resa'])) {
|
|
if($_POST['date_resa'] != 1) {
|
|
$date_resa=0;
|
|
}
|
|
else {
|
|
$date_resa=1;
|
|
}
|
|
}
|
|
else if(isset($_GET['date_resa'])) {
|
|
if($_GET['date_resa'] != 1) {
|
|
$date_resa=0;
|
|
}
|
|
else {
|
|
$date_resa=1;
|
|
}
|
|
}
|
|
|
|
|
|
$messages=array();
|
|
|
|
/* Recup du club de l'admin */
|
|
$adm=0;
|
|
if($type=='admin') {
|
|
$requete="SELECT id_joueur, id_club FROM admin_resa WHERE id_admin='$id'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$admin=mysqli_fetch_object($reponse);
|
|
$requete="SELECT id_joueur, nom, prenom FROM joueur WHERE id_joueur='$admin->id_joueur'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$joueur=mysqli_fetch_object($reponse);
|
|
$adm=1;
|
|
}
|
|
|
|
if($adm==1) {
|
|
$id_club=$admin->id_club;
|
|
/* Premier critère (par date) */
|
|
if($critere=='date') {
|
|
/* Recupere la date et la met en format SQL */
|
|
if(isset($_POST['valeur']) and strlen($_POST['valeur'])==10) {
|
|
$date=$_POST['valeur'];
|
|
list($jour, $mois, $annee)=explode("/",$date);
|
|
$ts_fin=mktime(10,0,0,$mois, $jour, $annee);
|
|
$ok=1;
|
|
}
|
|
else if(count($_GET) > 0) {
|
|
if((isset($_GET['jour'])) and (isset($_GET['mois'])) and (isset($_GET['annee']))) {
|
|
$annee=$_GET['annee']; $mois=$_GET['mois']; $jour=$_GET['jour'];
|
|
$ts_fin=mktime(10,0,0,$mois, $jour, $annee);
|
|
$ok=1;
|
|
}
|
|
}
|
|
else {
|
|
$ok=0;
|
|
}
|
|
|
|
if($ok==1) {
|
|
/* Calcul de l'intervalle entre les dates */
|
|
if($nb_sem >= 0) {
|
|
$ts_debut=$ts_fin - (3600*24*7*$nb_sem);
|
|
$date_fin=date("Y-m-d", $ts_fin);
|
|
$date_fin_fr=date("d/m/Y", $ts_fin);
|
|
$date_debut=date("Y-m-d", $ts_debut);
|
|
$date_debut_fr=date("d/m/Y", $ts_debut);
|
|
}
|
|
else {
|
|
$date_fin=date("Y-m-d", $ts_fin);
|
|
}
|
|
/* Titre */
|
|
if($nb_sem == 0) {
|
|
echo "<h2><center>Log du $date_fin_fr</center></h2>";
|
|
}
|
|
else if($nb_sem > 0) {
|
|
echo "<h2><center>Log du $date_debut_fr au $date_fin_fr</center></h2>";
|
|
}
|
|
else {
|
|
echo "<h2><center>Réservations à venir</center></h2>";
|
|
}
|
|
echo "<p><font size='4'><center><strong>";
|
|
if($date_resa==1) {
|
|
echo "Recherche dans les dates de réservations";
|
|
}
|
|
else {
|
|
echo "Recherche dans les dates de log";
|
|
}
|
|
echo "</strong></center></font></p>";
|
|
/* Lien pour actualiser la page */
|
|
echo "<center><a href='vis_log_resa_suite.php?jour=$jour&mois=$mois&annee=$annee&critere=$critere&interv=$nb_sem&date_resa=$date_resa'>Actualiser maintenant</a></center>";
|
|
|
|
/* Recupere les messages de log */
|
|
if($nb_sem >= 0) {
|
|
if($date_resa==1) {
|
|
$requete="SELECT id_message FROM log_reservation lr LEFT JOIN reservation r ON r.id_reservation=lr.id_reservation WHERE r.date_resa<='$date_fin' AND r.date_resa>='$date_debut' AND id_club='$id_club' ORDER BY r.date_resa ASC, heure DESC";
|
|
}
|
|
else {
|
|
$requete="SELECT id_message FROM log_reservation WHERE date<='$date_fin' AND date>='$date_debut' AND id_club='$id_club' ORDER BY date DESC, heure DESC";
|
|
}
|
|
}
|
|
else {
|
|
$requete="SELECT id_message FROM log_reservation lr LEFT JOIN reservation r ON r.id_reservation=lr.id_reservation WHERE r.date_resa>='$date_fin' AND lr.id_club='$id_club' ORDER BY lr.date DESC, lr.heure DESC";
|
|
}
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
while($log=mysqli_fetch_object($reponse)) {
|
|
array_push($messages, $log->id_message);
|
|
}
|
|
}
|
|
else {
|
|
echo "<center><strong>La date n'a pas le bon format !!</strong></center>";
|
|
}
|
|
}
|
|
else if($critere=='joueur') {
|
|
if(isset($_POST['valeur'])) {
|
|
$num_fft=$_POST['valeur'];
|
|
}
|
|
else {
|
|
$num_fft=$_GET['valeur'];
|
|
}
|
|
|
|
/* COntrole si le joueur esxiste bien sur le site */
|
|
if(strlen($num_fft)==8) {
|
|
$requete="SELECT id_joueur, nom, prenom FROM joueur WHERE numero_fft='$num_fft'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$existe=mysqli_num_rows($reponse);
|
|
if($existe>0) {
|
|
/* Date du jour */
|
|
$ts_fin=time();
|
|
|
|
/* Calcul de l'intervalle entre les dates */
|
|
if($nb_sem >= 0) {
|
|
$ts_debut=$ts_fin - (3600*24*7*$nb_sem);
|
|
$date_fin=date("Y-m-d", $ts_fin);
|
|
$date_fin_fr=date("d/m/Y", $ts_fin);
|
|
$date_debut=date("Y-m-d", $ts_debut);
|
|
$date_debut_fr=date("d/m/Y", $ts_debut);
|
|
}
|
|
else {
|
|
$date_fin=date("Y-m-d", $ts_fin);
|
|
}
|
|
|
|
$joueur=mysqli_fetch_object($reponse);
|
|
$id_joueur=$joueur->id_joueur;
|
|
echo "<h2><center>";
|
|
echo "Log du joueur $joueur->prenom $joueur->nom";
|
|
if($nb_sem == 0) {
|
|
echo " - $date_fin_fr";
|
|
}
|
|
else if($nb_sem > 0) {
|
|
echo " - Du $date_debut_fr au $date_fin_fr";
|
|
}
|
|
else {
|
|
echo " - Réservations à venir";
|
|
}
|
|
echo "</center></h2>";
|
|
echo "<p><font size='4'><center><strong>";
|
|
if($date_resa==1) {
|
|
echo "Recherche dans les dates de réservations";
|
|
}
|
|
else {
|
|
echo "Recherche dans les dates de log";
|
|
}
|
|
echo "</strong></center></font></p>";
|
|
/* Lien pour actualiser la page */
|
|
echo "<center><a href='vis_log_resa_suite.php?critere=$critere&valeur=$num_fft&interv=$nb_sem&date_resa=$date_resa'>Actualiser maintenant</a></center>";
|
|
|
|
if($nb_sem >= 0) {
|
|
if($date_resa==1) {
|
|
$requete="SELECT id_message FROM log_reservation lr LEFT JOIN reservation r ON r.id_reservation=lr.id_reservation WHERE r.date_resa >= '$date_debut' AND r.date_resa <= '$date_fin' AND r.id_joueur='$id_joueur' AND id_club='$id_club' ORDER BY r.date_resa ASC, heure DESC";
|
|
}
|
|
else {
|
|
$requete="SELECT id_message FROM log_reservation WHERE date >= '$date_debut' AND date <= '$date_fin' AND id_joueur='$id_joueur' AND id_club='$id_club' ORDER BY date DESC, heure DESC";
|
|
}
|
|
}
|
|
else {
|
|
$requete="SELECT id_message FROM log_reservation lr LEFT JOIN reservation r ON r.id_reservation=lr.id_reservation WHERE r.date_resa >= '$date_fin' AND r.id_joueur='$id_joueur' AND id_club='$id_club' ORDER BY lr.date DESC, lr.heure DESC";
|
|
}
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
while($log=mysqli_fetch_object($reponse)) {
|
|
array_push($messages, $log->id_message);
|
|
}
|
|
}
|
|
else {
|
|
echo "Le numéro de licence est inconnu de notre site.<br />";
|
|
echo "Veuillez recommencer en cliquant <a href='vis_log_resa.php'>ici</a>.";
|
|
}
|
|
}
|
|
else {
|
|
echo "Le numéro de licence du joueur n'est pas valide.<br />";
|
|
echo "Veuillez recommencer en cliquant <a href='vis_log_resa.php'>ici</a>.";
|
|
}
|
|
}
|
|
else if($critere == 'non_val') {
|
|
$date=date("Y-m-d", time());
|
|
$requete="SELECT id_message FROM log_reservation lr LEFT JOIN reservation r ON r.id_reservation=lr.id_reservation WHERE r.validation='0' AND id_club='$id_club' AND r.date_resa >= '$date' ORDER BY lr.date DESC, lr.heure DESC";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
while($log=mysqli_fetch_object($reponse)) {
|
|
array_push($messages, $log->id_message);
|
|
}
|
|
}
|
|
/* Reservation mairie */
|
|
$requete="SELECT id_joueur FROM joueur WHERE numero_fft='MAIRIE00'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$resa_mairie=mysqli_fetch_object($reponse);
|
|
/* Id joueur club */
|
|
$requete="SELECT j.id_joueur FROM joueur j, club c WHERE j.numero_fft=c.numero_fft AND c.id_club='$id_club'";
|
|
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$resa_club=mysqli_fetch_object($reponse);
|
|
|
|
/* Si le tableau contient des ids de log */
|
|
if(count($messages) > 0) {
|
|
echo "<br /><br /><center><table border='1' width='95%'>";
|
|
echo "<tr><td bgcolor='#FFFACD' colspan='7'><center><font size='+1'><b>Messages Log</b></font></center></td><td bgcolor='#FFFACD' colspan='7'><center><font size='+1'><b>Informations réservation</b></font></center></td></tr>";
|
|
echo "<th bgcolor='#FFFACD'>Date log</th><th bgcolor='#FFFACD'>Heure log</th><th bgcolor='#FFFACD'>Type</th><th bgcolor='#FFFACD'>Nom</th><th bgcolor='#FFFACD'>Prénom</th><th bgcolor='#FFFACD'>Téléphone</th><th bgcolor='#FFFACD'>Message</th><th bgcolor='#FFFACD'>Date réservation</th><th bgcolor='#FFFACD'>Heure Début</th><th bgcolor='#FFFACD'>Heure fin</th><th bgcolor='#FFFACD'>Durée</th><th bgcolor='#FFFACD'>Type<br />Réservation</th><th bgcolor='#FFFACD'>Validation</th><th bgcolor='#FFFACD'>Annulation</th>";
|
|
for($i=0;$i<count($messages);$i++) {
|
|
/* Controle des messages dans le tableau */
|
|
$requete="SELECT l.id_message, l.date, l.heure, l.message, l.id_reservation,l.id_joueur, j.nom, j.prenom FROM log_reservation l LEFT JOIN joueur j ON j.id_joueur=l.id_joueur WHERE l.id_message='$messages[$i]'";
|
|
$reponse1=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$log=mysqli_fetch_object($reponse1);
|
|
/* Controle si la resa existe toujours en BDD */
|
|
$requete="SELECT * FROM reservation WHERE id_reservation='$log->id_reservation'";
|
|
$reponse2=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$existe=mysqli_num_rows($reponse2);
|
|
list($type_log, $rien)=explode(" ",$log->message);
|
|
if(($type_log=="Creation" or $type_log=="Validation")) {
|
|
$requete="SELECT r.validation, r.date_resa, r.heure_resa_deb, r.heure_resa_fin, r.type FROM log_reservation l LEFT JOIN reservation r ON r.id_reservation=l.id_reservation LEFT JOIN joueur j ON j.id_joueur=l.id_joueur WHERE l.id_message='$log->id_message'";
|
|
$reponse3=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$resa=mysqli_fetch_object($reponse3);
|
|
echo "<tr>";
|
|
list($annee, $mois, $jour)=explode("-", $log->date);
|
|
$date="$jour/$mois/$annee";
|
|
echo "<td><center>$date</center></td>";
|
|
echo "<td><center>".substr($log->heure, 0, 5)."</center></td>";
|
|
echo "<td><center>$type_log</center></td>";
|
|
echo "<td><center>$log->nom</center></td>";
|
|
echo "<td><center>$log->prenom</center></td>";
|
|
$requete="SELECT numero FROM telephone WHERE id_joueur='$log->id_joueur'";
|
|
$reponse3=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$tel=mysqli_fetch_object($reponse3);
|
|
echo "<td><center>$tel->numero</center></td>";
|
|
echo "<td><center>$log->message</center></td>";
|
|
if($existe>0) {
|
|
list($annee, $mois, $jour)=explode("-", $resa->date_resa);
|
|
$date="$jour/$mois/$annee";
|
|
echo "<td><center>$date</center></td>";
|
|
echo "<td><center>".substr($resa->heure_resa_deb, 0, 5)."</center></td>";
|
|
echo "<td><center>".substr($resa->heure_resa_fin, 0, 5)."</center></td>";
|
|
$message=explode("-",$log->message);
|
|
if($log->id_joueur != 1796) {
|
|
/* Affichage durée */
|
|
echo "<td><center>$message[5]</center></td>";
|
|
/* Affichage Type */
|
|
echo "<td><center>$message[6]</center></td>";
|
|
}
|
|
else {
|
|
/* Affichage durée */
|
|
echo "<td><center>$message[7]</center></td>";
|
|
/* Affichage Type */
|
|
echo "<td><center>Tournoi</center></td>";
|
|
}
|
|
if($resa->validation==0) {
|
|
$envoi=1;
|
|
if($resa->type=='Tournoi' or $log->id_joueur==$resa_mairie->id_joueur or $resa_club->id_joueur==$log->id_joueur) {
|
|
$envoi=0;
|
|
}
|
|
echo "<td><center><a href='valide_resa.php?id_resa=$log->id_reservation&id_joueur=$log->id_joueur&club=$id_club&menu=2'>Valider</a></center></td>";
|
|
/* Recherche de l'admin de réservation */
|
|
$requete="SELECT id_joueur FROM admin_resa WHERE id_club='$id_club'";
|
|
$rep=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$admin=mysqli_fetch_object($rep);
|
|
echo "<td><center><a href='annul_resa.php?id_resa=$log->id_reservation&club=$id_club&id_joueur=$admin->id_joueur&menu=2&envoi=$envoi'>Annuler</a></center></td>";
|
|
}
|
|
}
|
|
else {
|
|
echo "<td colspan='7'><center>Réservation annulée le $date par $log->prenom $log->nom.</center></td>";
|
|
}
|
|
echo "</tr>";
|
|
}
|
|
else if($type_log=="Annulation") {
|
|
echo "<tr>";
|
|
list($annee, $mois, $jour)=explode("-", $log->date);
|
|
$date="$jour/$mois/$annee";
|
|
echo "<td>$date</td>";
|
|
echo "<td><center>".substr($log->heure, 0, 5)."</center></td>";
|
|
echo "<td>$type_log</td>";
|
|
echo "<td>$log->nom</td>";
|
|
echo "<td>$log->prenom</td>";
|
|
/* Recherche num tel */
|
|
$requete="SELECT numero FROM telephone WHERE id_joueur='$log->id_joueur'";
|
|
$reponse3=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
|
|
$tel=mysqli_fetch_object($reponse3);
|
|
echo "<td>$tel->numero</td>";
|
|
echo "<td>$log->message</td>";
|
|
echo "<td colspan='7'><center>Réservation annulée le $date par $log->prenom $log->nom.</center></td>";
|
|
echo "</tr>";
|
|
}
|
|
}
|
|
echo "</table></center>";
|
|
}
|
|
else if($date_saisie < $ts_now) {
|
|
echo "<br /><br />center><b>la date saisie doit être égale ou supérieure à la date du jour.</b></center>";
|
|
}
|
|
else if(count($messages) == 0) {
|
|
echo "<br /><br /><center><b>Pas de réservations à venir.</b></center>";
|
|
}
|
|
|
|
echo "<br /><br />";
|
|
echo "<center><a href='vis_log_resa.php'>Faire une nouvelle recherche</a></center>";
|
|
echo "<br /><br />";
|
|
}
|
|
else {
|
|
echo "Vous n'êtes pas administrateur !!";
|
|
}
|
|
|
|
echo "<br /><br />";
|
|
include("deco_resa.php");
|
|
include("piedDePage.php");
|
|
}
|
|
else {
|
|
echo("Non autorisé - Redirection vers la page d'identification dans 2 secondes");
|
|
sleep(2);
|
|
include("admin_login.php");
|
|
}
|
|
|
|
?>
|
|
|