"); $date=mysqli_fetch_object($reponse); include("fonction_sms.php"); /* Envoi d'un SMS ou email au joueur pour confirmer de la validation */ if($envoi == 1) { $joueur_resa=$date->id_joueur; list($annee, $mois, $jour)=explode("-", $date->date_resa); $date_resa="$jour/$mois/$annee"; $heure_resa=substr($date->heure_resa_deb, 0, 5); /* Controle si le joueur dispose d'un telephone portable */ $requete="SELECT numero FROM telephone WHERE id_joueur='$joueur_resa' AND type='portable'"; $reponse_port=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
"); $existe_port=mysqli_num_rows($reponse_port); $requete="SELECT nom, prenom, e_mail FROM joueur WHERE id_joueur='$joueur_resa'"; $reponse_mail=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
"); $joueur_email=mysqli_fetch_object($reponse_mail); if($existe_port > 0) { $tel=mysqli_fetch_object($reponse_port); $numero=str_replace(" ","",$tel->numero); $texte="$joueur_email->prenom $joueur_email->nom, Votre reservation du $date_resa a $heure_resa a ete annulee par l'admininistrateur."; $res=envoi_sms($numero, $texte); if($res==80) { $message.=" - Message SMS transmis pour prevenir le joueur de l'annulation !"; } else { $message.=" - Le joueur n'a pu être prévenu par SMS !"; } } /* Si pas de portable, on essaie l'email */ else if($joueur_email->e_mail != "") { $sujet="Validation de votre reservation de terrain de tennis du $date_resa"; $texte="Bonjour $joueur_email->prenom $joueur_email->nom,\n\nVotre reservation du $date_resa a $heure_resa a ete annulee par l'admininistrateur."; $texte.="Le webmaster tyroltenn ."; $email_joueur=$joueur_email->e_mail; $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; // Additional headers $headers .= "To: $email_joueur\r\n"; $headers .= "From: tennis@airtria.fr\r\n"; mail($email_joueur, $sujet, $texte, $headers); } } $requete="SELECT nom, id_club FROM reservable WHERE id_reservable='$date->id_reservable'"; $reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
"); $terrain=mysqli_fetch_object($reponse); list($annee, $mois, $jour)=explode("-",$date->date_resa); list($heure, $min,$sec)=explode(":", $date->heure_resa_deb); $ts_resa=mktime($heure, $min, $sec, $mois, $jour, $annee); list($heure, $min,$sec)=explode(":", $date->heure_resa_fin); $ts_fin=mktime($heure, $min, $sec, $mois, $jour, $annee); $adm=0; $requete="SELECT id_joueur FROM joueur WHERE numero_fft='RESATOUR'"; $reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
"); $joueur_resa_tour=mysqli_fetch_object($reponse); /* Pour les joueurs administrateurs */ $requete="SELECT id_admin FROM admin_resa WHERE id_joueur='$id_joueur' AND id_club='$club'"; $reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
"); $existe=mysqli_num_rows($reponse); if($existe > 0) { $adm=1; } /* COntrole si la durée maximale d'annulation est autorisé */ $annul=0; if($adm==1) { $annul=1; } else if($date->id_joueur == $id_joueur and $id_joueur==$joueur_resa_tour->id_joueur) { $annul=1; } else { /* Si c'est le joueur qui a fait la résa */ if($date->id_joueur == $id_joueur) { $requete="SELECT annul_resa FROM quota_resa WHERE id_club='$club'"; $reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
"); $existe=mysqli_num_rows($reponse); if($existe==0) { $requete="INSERT INTO quota_resa(id_club) VALUES('$club')"; $reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
"); $requete="SELECT annul_resa FROM quota_resa WHERE id_club='$club'"; $reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
"); } $quota=mysqli_fetch_object($reponse); if($quota->annul_resa > -1) { $now=time(); /* On a le droit d'effacer une résa qui débute dans + de XX (valeur BDD si actif) jours */ echo 3600 * 24 * $quota->annul_resa; $depass=$now - (3600 * 24 * $quota->annul_resa); if($depass > $ts_resa) { $annul=1; } } else { $annul=1; } } } if($annul==1) { $requete="DELETE FROM reservation WHERE id_reservation='$id_resa'"; $reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
"); /* Controle si le joueur est un invité dans le club */ $requete="SELECT id_compte, statut, solde, solde_invite FROM compte WHERE id_joueur='$date->id_joueur' AND id_club='$club'"; $reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
"); $existe=mysqli_num_rows($reponse); if($existe > 0) { $compte=mysqli_fetch_object($reponse); /* Remet les jetons non crédités dans la réserve du joueur */ $duree=$ts_fin-$ts_resa; /* 1 jeton pour chaque demi-heure de résa */ $nb_jetons=$duree/1800; $nb_jetons+=$compte->solde; /* Mise à jour du nombre de jetons */ $requete="UPDATE compte SET solde='$nb_jetons' WHERE id_compte='$compte->id_compte'"; $reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
"); /* Si la resa est du type Invite */ if($date->type=='Invite') { $solde_invite=$compte->solde_invite; $nb_jetons=$duree/1800; $solde_invite+=$nb_jetons; $requete="UPDATE compte SET solde_invite='$solde_invite' WHERE id_compte='$compte->id_compte'"; $reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
"); } } /* Suppression de l'enregistrement des convocs matchs pour les tournois */ if($id_tournoi > 0) { $requete="DELETE FROM participant WHERE id_reservation='$date->id_reservation'"; $reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
"); } $message="

Votre annulation de réservation a été prise en compte.

"; /* Message de Log */ $date_log=date("Y-m-d",time()); $heure_log=date("H:i:00",time()); $nom_resa=$date->type_reservation; /* Durée résa */ list($heure_debut, $min_debut, $sec_debut)=explode(":", $date->heure_resa_deb); list($heure_fin, $min_fin, $sec_fin)=explode(":", $date->heure_resa_fin); $debut_resa=mktime($heure_debut, $min_debut, 0, $mois, $jour, $annee); $fin_resa=mktime($heure_fin, $min_fin, 0, $mois, $jour, $annee); $duree=$fin_resa-$debut_resa; $heure=$duree/3600; $min=($duree-($heure*3600))/60; if($min<10) { $min="0".$min; } $duree_resa="$heure:$min"; /* Message de log de la forme Type message - joueur - durée - type_résa - message */ $requete="SELECT id_joueur, nom, prenom FROM joueur WHERE id_joueur='$id_joueur'"; $reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".nb_jetonsmysqli_error($db_connection)()."
"); $joueur=mysqli_fetch_object($reponse); /* Controle de la date de creation de la resa */ $requete="SELECT date FROM log_reservation WHERE message LIKE 'Creation - %' AND id_reservation='$id_resa'"; $reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".nb_jetonsmysqli_error($db_connection)()."
"); $log=mysqli_fetch_object($reponse); list($a, $m, $j)=explode("-", $log->date); $date_creation="$j/$m/$a"; if($date->type=='Autre' and $date->id_rubrique != 0) { $req="SELECT nom FROM rubriques_resa WHERE id_rubrique='$date->id_rubrique'"; $reponse=mysqli_query($db_connection, $req) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
"); $rubrique=mysqli_fetch_object($reponse); $type=$rubrique->nom; } else { $type=$date->type; } if($id_joueur != $joueur_resa_tour->id_joueur) { $message_log="Annulation - $joueur->nom $joueur->prenom - $jour/$mois/$annee - Cree le $date_creation - $terrain->nom - $heure_debut:$min_debut - $duree_resa - $nom_resa - $type - Reservation annulee"; $requete="INSERT INTO log_reservation(date,heure,id_reservation,id_joueur,message,id_club) VALUES('$date_log','$heure_log','$id_resa','$joueur->id_joueur','$message_log','$club')"; $reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
"); } else { $message_log="Annulation - $joueur->nom $joueur->prenom - $jour/$mois/$annee - Cree le $date_creation - $terrain->nom - $heure_debut:$min_debut - $duree_resa - $nom_resa - $type - Reservation annulee"; $requete="INSERT INTO log_reservation(date,heure,id_reservation,id_joueur,message,id_club) VALUES('$date_log','$heure_log','$id_resa','$joueur->id_joueur','$message_log','$club')"; $reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
"); $message_log="Annulation - $joueur->nom $joueur->prenom - $jour/$mois/$annee - Cree le $date_creation - $terrain->nom - $heure_debut:$min_debut - $duree_resa - $nom_resa - $type - Reservation annulee"; $requete="INSERT INTO log_reservation(date,heure,id_reservation,id_joueur,message,id_club) VALUES('$date_log','$heure_log','$id_resa','$joueur->id_joueur','$message_log','$club_terrains')"; $reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
"); } } else { echo "

Vous ne pouvez pas annuler une réservation qui a lieu dans moins de $quota->annul_resa jours.

"; /* Message de Log */ $date_log=date("Y-m-d",time()); $heure_log=date("H:i:00",time()); $nom_resa=$date->type_reservation; /* Durée résa */ list($heure_debut, $min_debut, $sec_debut)=explode(":", $date->heure_resa_deb); list($heure_fin, $min_fin, $sec_fin)=explode(":", $date->heure_resa_fin); $debut_resa=mktime($heure_debut, $min_debut, 0, $mois, $jour, $annee); $fin_resa=mktime($heure_fin, $min_fin, 0, $mois, $jour, $annee); $duree=$fin_resa-$debut_resa; $heure=$duree/3600; $min=($duree-($heure*3600))/60; if($min<10) { $min="0".$min; } $duree_resa="$heure:$min"; /* Message de log de la forme Type message - joueur - durée - type_résa - message */ $requete="SELECT id_joueur, nom, prenom FROM joueur WHERE id_joueur='$id_joueur'"; $reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
"); $joueur=mysqli_fetch_object($reponse); /* Controle de la date de creation de la resa */ $requete="SELECT date FROM log_reservation WHERE message LIKE 'Creation - %' AND id_reservation='$id_resa'"; $reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".nb_jetonsmysqli_error($db_connection)()."
"); $log=mysqli_fetch_object($reponse); list($a, $m, $j)=explode("-", $log->date); $date_creation="$j/$m/$a"; if($date->type=='Autre' and $date->id_rubrique != 0) { $req="SELECT nom FROM rubriques_resa WHERE id_rubrique='$date->id_rubrique'"; $reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
"); $rubrique=mysqli_fetch_object($reponse); $type=$rubrique->nom; } else { $type=$date->type; } $message_log="Annulation - $joueur->nom $joueur->prenom - $jour/$mois/$annee - Cree le $date_creation - $terrain->nom - $heure_debut:$min_debut - $duree_resa - $nom_resa - $date->type - Erreur lors de l\'annulatuon"; $requete="INSERT INTO log_reservation(date,heure,id_reservation,id_joueur,message,id_club) VALUES('$date_log','$heure_log','$id_resa','$joueur->id_joueur','$message_log','$club')"; $reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."
"); } /* Redirection */ /* Page de réservation classique */ if($menu==0) { /* Numero FFT du joueur connecté */ echo ""; echo ""; echo ""; echo ""; echo "Redirection"; echo ""; echo ""; echo $message."\n"; echo "

Redirection automatique vers la page de réservartion

"; echo ""; } /* Page de réservation - matchs tournoi */ else if($menu==3) { /* Numero FFT du joueur connecté */ echo ""; echo ""; echo ""; echo ""; echo "Redirection"; echo ""; echo ""; echo $message."\n"; echo "

Redirection automatique vers la page de réservartion

"; echo ""; } /* Page de réservation - Visualisation Log Admin Résa */ else if($menu==2) { list($annee, $mois, $jour)=explode("-",$date_log); echo ""; echo ""; echo ""; echo "Redirection"; echo ""; echo ""; echo $message."\n"; echo "

Redirection automatique vers la page de visualisation des logs

"; echo ""; } /* Page de réservation - Visualisation Log Admin Club */ else if($menu==1) { list($annee, $mois, $jour)=explode("-",$date_log); echo ""; echo ""; echo ""; echo "Redirection"; echo ""; echo ""; echo $message."\n"; echo "

Redirection automatique vers la page de visualisation des logs

"; echo ""; } /* Page de réservation - Borne interactive */ else if($menu==4) { list($annee, $mois, $jour)=explode("-",$date_log); echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo "

Redirection automatique vers la page de réservation

"; echo ""; } /* Page de réservation créneau tournoi - Clubs extérieurs */ else if($menu==5) { list($annee, $mois, $jour)=explode("-",$date_log); /* Numero FFT du joueur connecté */ echo ""; echo ""; echo ""; echo ""; echo "Redirection"; echo ""; echo ""; echo $message."\n"; echo "

Redirection automatique vers la page de réservartion

"; echo ""; } /* Page de réservation créneau tournoi - Clubs extérieurs */ else if($menu==6) { list($annee, $mois, $jour)=explode("-",$date_log); /* Numero FFT du joueur connecté */ echo ""; echo ""; echo ""; echo ""; echo "Redirection"; echo ""; echo ""; echo $message."\n"; echo "

Redirection automatique vers la page de réservartion

"; echo ""; } /* Sinon aucune redirection */ else { echo ""; echo ""; echo "Annulation Réservation"; echo ""; echo ""; echo $message."\n"; echo ""; } mysql_close($db_connection); ?>