Files
resatennis_tyroltenn/www/tyroltenn/fonctions_mobile.php

469 lines
21 KiB
PHP
Executable File

<?php
/* Pour l'envoi de sms */
include_once("fonction_sms.php");
/****************************************************/
/* Recherche du nom du joueur */
/****************************************************/
function recherche_joueur($id_joueur)
{
/* Connexion BDD */
include("conf.php");
$requete="SELECT 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)()."<br>");
$joueur=mysqli_fetch_object($reponse);
$nom_joueur="$joueur->prenom $joueur->nom";
mysql_close($db_connection);
return $nom_joueur;
}
/****************************************************/
/* Recherche du nom du club */
/****************************************************/
function recherche_club($id_club)
{
/* Connexion BDD */
include("conf.php");
$requete="SELECT nom FROM club WHERE id_club='$id_club'";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
$club=mysqli_fetch_object($reponse);
$nom_club=$club->nom;
mysql_close($db_connection);
return $nom_club;
}
/****************************************************/
/* Selection des tournois */
/*Pour rappel id_joueur si déja inscrit à ce tournoi*/
/****************************************************/
function affichage_tournoi($id_joueur)
{
/* Connexion BDD */
include("conf.php");
$saison=date("Y");
if(date("m")>=10 and date("m")<=12) {
$saison+=1;
}
$requete="SELECT nom, debut, fin, id_tournoi FROM tournoi WHERE saison='$saison' AND date_cloture >= CURDATE() ORDER BY debut ASC";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
$existe_tournoi=mysqli_num_rows($reponse);
if($existe_tournoi > 0) {
/* Pour chaque tournoi */
while($tournoi=mysqli_fetch_object($reponse)) {
echo "<p style='text-align:center;font-size:12px;'>";
echo "<a href='inscription_port.php?tournoi=$tournoi->id_tournoi'>$tournoi->nom</a>";
/* Si le joueur est déja inscrit à ce tournoi */
$requete="SELECT id_inscription FROM inscription_tournoi WHERE id_tournoi='$tournoi->id_tournoi' AND id_joueur='$id_joueur'";
$rep=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
$existe_cat=mysqli_num_rows($rep);
if($existe_cat > 0) {
echo " - $existe_cat cat. ins.";
}
echo "<br />";
list($annee_d, $mois_d, $jour_d)=explode("-", $tournoi->debut);
list($annee_f, $mois_f, $jour_f)=explode("-", $tournoi->fin);
echo "$jour_d/$mois_d/$annee_d - $jour_f/$mois_f/$annee_f";
echo "</p>";
}
}
else {
echo "<p style='text-align:center;font-weight:bold;font-size:12px;'>";
echo "Il n'y a aucun tournoi disponible pour la saison $saison";
echo "</p>";
}
mysql_close($db_connection);
}
/****************************************************/
/* Selection d'une categorie */
/****************************************************/
function categorie($id_tournoi, $id_joueur)
{
/* Connexion BDD */
include("conf.php");
$categories=array();
/* Réduction dans ce tournoi ? */
$requete="SELECT nom, date_reduc, reduction FROM tournoi WHERE id_tournoi='$id_tournoi'";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
$tournoi=mysqli_fetch_object($reponse);
echo "<p style='text-align:center;font-weight:bold;font-size:12px;'>Tournoi selectionn&eacute;: $tournoi->nom";
/* Sexe et age du joueur */
$requete="SELECT annee, sexe 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)()."<br>");
$joueur=mysqli_fetch_object($reponse);
$age=date("Y") - $joueur->annee;
/* On selectionne les categories du tournoi */
$requete="SELECT c.id_categorie, c.sexe, c.age_min, c.age_max FROM categories_par_tournoi ct LEFT JOIN categorie c ON c.id_categorie=ct.id_categorie WHERE ct.id_tournoi='$id_tournoi' AND c.type='simple'";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
$existe_cat=mysqli_num_rows($reponse);
if($existe_cat > 0) {
while($cat=mysqli_fetch_object($reponse)) {
if($cat->sexe == $joueur->sexe) {
/* Jeunes */
if($age < 18) {
if($age <= $cat->age_max and $age->age_min > 0) {
array_push($categories, $cat->id_categorie);
}
}
/* Adultes */
if($age >= 15) {
if($cat->age_min <= $age and $cat->age_max==0) {
array_push($categories, $cat->id_categorie);
}
}
}
}
}
/* On supprime les categories où le joueur s'estr deja inscrit */
$requete="SELECT id_categorie FROM inscription_tournoi WHERE id_tournoi='$id_tournoi' AND id_joueur='$id_joueur'";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
$existe_cat=mysqli_num_rows($reponse);
if($existe_cat > 0) {
while($cat=mysqli_fetch_object($reponse)) {
if(in_array($cat->id_categorie, $categories)) {
$indice=array_search($cat->id_categorie, $categories);
unset($categories[$indice]);
}
}
}
if(count($categories) > 0) {
echo "<br />Selectionnez la cat&eacute;gorie souhait&eacute;e:";
echo "<form action='inscription_port.php' method='get'>";
echo "<center><select name='categorie'>";
$indices=array_keys($categories);
for($i=0;$i<count($indices);$i++) {
$indice=$indices[$i];
$id_categorie=$categories[$indice];
$requete="SELECT c.nom, ct.prix FROM categories_par_tournoi ct LEFT JOIN categorie c ON c.id_categorie=ct.id_categorie WHERE id_tournoi='$id_tournoi' AND c.id_categorie='$id_categorie'";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
$cat=mysqli_fetch_object($reponse);
if($tournoi->reduction > 0) {
$tarif_reduction=$cat->prix*($tournoi->reduction/100);
$tarif=$cat->prix - $tarif_reduction;
}
else{
$tarif=$cat->prix;
}
echo "<option value='$id_categorie'>$cat->nom - $tarif&euro;</option>";
}
echo "</select><br /><br />";
echo "<div style='text-align:center;font-weight:bold;font-size:12px;'>Travaillez-vous durant le tournoi ?</div>";
echo "<select name='travaille'>";
echo "<option value='oui'>Oui</option>";
echo "<option value='non'>Non</option>";
echo "</select><br /><br />";
echo "<input type='hidden' name='tournoi' value='$id_tournoi'>";
echo "<input type='submit' name='valider' value='Inscription'></center>";
echo "</form>";
}
else {
echo "<br /><br />Il n'y a aucune cat&eacute;gorie disponible pour ce tournoi.";
}
echo "</p>";
echo "<p style='text-align:center;font-size:12px'>";
echo "<a href='inscription_port.php'>Choisir un autre tournoi</a>";
echo "</p>";
mysql_close($db_connection);
}
/****************************************************/
/* inscription tournoi */
/****************************************************/
function inscription_tournoi($id_tournoi, $id_joueur, $id_categorie,$travaille)
{
/* Connexion BDD */
include("conf.php");
/* Controle si le joueur n'est pas déja inscrit dans cette categorie */
$requete="SELECT id_inscription FROM inscription_tournoi WHERE id_tournoi='$id_tournoi' AND id_joueur='$id_joueur' AND id_categorie='$id_categorie'";
$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 d'inscription */
$date_sql=date("Y-m-d", time());
/* Recherche du numéro de téléphone du joueur */
$requete="SELECT numero FROM telephone WHERE id_joueur='$id_joueur' AND type='portable'";
$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) {
$num_tel=mysqli_fetch_object($reponse);
$numtel=$num_tel->numero;
}
else {
$requete="SELECT numero FROM telephone WHERE id_joueur='$id_joueur' AND type='portable'";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
$num_tel=mysqli_fetch_object($reponse);
$numtel=$num_tel->numero;
}
/* Inscription du joueur */
$requete="INSERT INTO inscription_tournoi(id_tournoi, id_joueur, id_categorie, date_inscription, inscripteur,travaille, telephone) VALUES('$id_tournoi','$id_joueur','$id_categorie','$date_sql','mobile','$travaille','$numtel')";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
/* Envoi d'un sms de confirmation */
if(substr($numtel, 0, 2)=="06") {
$requete="SELECT nom FROM tournoi WHERE id_tournoi='$id_tournoi'";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
$tournoi=mysqli_fetch_object($reponse);
$requete="SELECT nom FROM categorie WHERE id_categorie='$id_categorie'";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
$cat=mysqli_fetch_object($reponse);
$texte="Ce SMS vous confirme votre inscription au tournoi $tournoi->nom dans la categorie $cat->nom.";
envoi_sms($numtel, $texte);
}
echo "<p style='text-align:center;font-size:12px;font-weight:bold;'>";
echo "Votre inscription a &eacute;t&eacute; effectu&eacute;e avec succ&egrave;s !";
echo "</p>";
}
else {
echo "<p style='text-align:center;font-size:12px;font-weight:bold;'>";
echo "Vous &ecirc;tes d&eacute;ja inscrit dans cette cat&eacute;gorie !";
echo "</p>";
}
echo "<p style='text-align:center;font-size:12px;font-weight:bold;'>";
echo "<a href='inscription_port.php?tournoi=$id_tournoi'>Choisir une autre cat&eacute;gorie</a>";
echo "<br /><br />";
echo "<a href='inscription_port.php'>Choisir un autre tournoi</a>";
echo "</p>";
mysql_close($db_connection);
}
/********************************************************************************/
/* AFFICHAGE RESERVATIONS SUR MOBILE */
/********************************************************************************/
function affichage_mobile($id_club, $date_jour)
{
$hauteur=2;
$taille_police="9px";
$taille_texte_colonne="10px";
/* Date du jour */
list($jour, $mois, $annee)=explode("/",$date_jour);
/* Connexion BDD */
include("conf.php");
/* Affichage de l'en tete du tableau horaires et noms des terrains */
$terrains=array();
$requete3="SELECT nom, id_reservable,protection FROM reservable WHERE id_club LIKE '$id_club'";
$result3=mysqli_query($db_connection, $requete3) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
$nb_terrains=mysqli_num_rows($result3);
/**************************************************/
/* Recherche des heures ouvertures fermetures des terrains */
$requete="SELECT MIN(HOUR(heure_ouverture)), MAX(HOUR(heure_fermeture)) FROM reservable WHERE id_club='$id_club'";
$result=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
$horaires=mysqli_fetch_array($result);
list($dbt_h, $dbt_m, $dbt_s)=explode(":",$horaires[0]);
$ouverture=mktime($dbt_h, $dbt_m, $dbt_s, $mois, $jour, $annee);
list($dbt_h, $dbt_m, $dbt_s)=explode(":",$horaires[1]);
$fermeture=mktime($dbt_h, $dbt_m, $dbt_s, $mois, $jour, $annee);
echo "<center><table border='1' width='90%'>";
echo"<tr style='background-color:#FFDEAD;height:5px;'><td><p style='font-size:$taille_texte_colonne;text-align:center;font-weight:bold;'>Hor.</td>";
/* Affichage du nom des terrains */
$num_ce=0;
$num_ci=0;
while($nom_terrain=mysqli_fetch_object($result3)) {
echo"<td><p style='font-size:$taille_texte_colonne;text-align:center;font-weight:bold;'>";
if($nom_terrain->protection=='Couvert') {
$num_ci++;
echo "CI.".$num_ci;
}
else {
$num_ce++;
echo "CE.".$num_ce;
}
echo "</p></td>";
array_push($terrains, $nom_terrain->id_reservable);
}
/**************************************************/
/* affichage du tableau */
echo "</tr>";
/* Selectionne toutes les réservations du jour pour le club */
$reservations=array();
if ($mois<10 and strlen($mois)<2) { $mois = "0".$mois; }
if ($jour<10 and strlen($jour)<2) { $jour = "0".$jour; }
$requete="SELECT id_reservation, r.heure_resa_deb, r.heure_resa_fin,r.validation, r.id_reservable FROM reservation r,reservable t WHERE id_club= '$id_club' AND r.id_reservable = t.id_reservable AND r.date_resa LIKE '$annee-$mois-$jour' ORDER BY id_reservable ASC, heure_resa_deb ASC";
$reponse=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
$indice=0;
while($resa=mysqli_fetch_object($reponse)) {
$reserv=array();
$['']=$resa->id_reservation;
$['']=$resa->id_reservable;
$['']=$resa->validation;
/* Calcul de la durée */
list($dbt_h, $dbt_m, $dbt_s)=explode(":",$resa->heure_resa_deb);
$ts_debut=mktime($dbt_h, $dbt_m, $dbt_s, $mois, $jour, $annee);
list($fin_h, $fin_m, $fin_s)=explode(":",$resa->heure_resa_fin);
$ts_fin=mktime($fin_h, $fin_m, $fin_s, $mois, $jour, $annee);
$duree=$ts_fin - $ts_debut;
$nb_demi=$duree/1800;
/* Si la durée -> 30 mn */
if(($nb_demi % 2) == 1) {
$['']=round($duree/3600);
}
else {
$['']=$duree/3600;
}
if($indice > 0 and $reservations[$indice-1][id_reservable]==$resa->id_reservable) {
/* Durée entre 2 résas */
if(($ts_debut - $reservations[$indice-1][heure_fin]) <= 3600) {
$['']=$reservations[$indice-1][heure_fin];
}
else {
$heure_debut=$dbt_h;
$['']=mktime($heure_debut, 0, 0, $mois, $jour, $annee);
}
}
else {
$heure_debut=$dbt_h;
$['']=mktime($heure_debut, 0, 0, $mois, $jour, $annee);
}
$['']=$['']+($[''] * 3600);
array_push($reservations, $reserv);
$indice++;
}
$indice_encours=-1;
/* Pour chaqe heure demi-heure */
for ($i=$ouverture;$i<$fermeture;$i+=3600){
$horaire_encours=getdate($i);
echo "<tr style='height:auto;'><td style='background-color:#FFDEAD;width:auto;'><p style='font-size:$taille_texte_colonne;text-align:center;font-weight:bold;'>$['']:00</p></td>";
/* Pour chaque terrain */
$indice_encours=-1;
for ($j=0;$j<count($terrains);$j++){
for($cpt=0;$cpt<count($reservations);$cpt++) {
if($reservations[$cpt][heure_debut] == $i and $terrains[$j]==$reservations[$cpt][id_reservable]) {
$indice_encours=$cpt;
/* Nombre d'heures de la reservation */
$nb_creneau=$reservations[$cpt][duree];
break;
}
else if($reservations[$cpt][heure_debut] <= $i and $reservations[$cpt][heure_fin] > $i and $terrains[$j]==$reservations[$cpt][id_reservable]) {
$indice_encours=-2;
break;
}
else {
$indice_encours=-1;
}
}
/* Si une réservation a été trouvée */
if($indice_encours > -1) {
$id_resa=$reservations[$indice_encours][id_reservation];
$requete="SELECT j.prenom,j.nom, j.numero_fft,j.visible,r.type_reservation,r.id_rubrique,r.validation, r.id_joueur,r.id_joueur_adverse, r.id_tournoi, r.id_joueur_adverse, r.id_categorie, r.type, r.id_tournoi, r.id_joueur,r.score,r.vainqueur FROM joueur j, reservation r WHERE j.id_joueur = r.id_joueur AND r.id_reservation='$id_resa' ";
$result=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
$joueur=mysqli_fetch_object($result);
if($joueur->type=='Tournoi') {
echo "<td style='background-color:#6699FF;' rowspan='$nb_creneau'>&nbsp;";
}
else if($joueur->type=='Cours') {
/* Couleur arrière plan */
$requete="SELECT c.couleur_hex FROM rubriques_resa rr, couleurs c WHERE rr.nom='Cours' AND rr.id_club='$id_club' AND rr.id_couleur=c.id_couleur";
$result=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
$arr_plan=mysqli_fetch_object($result);
$titre="$joueur->prenom $joueur->nom - $joueur->type_reservation";
/* Affichage Réservation */
echo "<td style='background-color:$arr_plan->couleur_hex;' rowspan='$nb_creneau'>&nbsp;";
}
else if($joueur->type=='Entretien') {
/* Couleur arrière plan */
$requete="SELECT c.couleur_hex FROM rubriques_resa rr, couleurs c WHERE rr.nom='Entretien' AND rr.id_club='$id_club' AND rr.id_couleur=c.id_couleur";
$result=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
$arr_plan=mysqli_fetch_object($result);
/* Affichage Réservation */
echo "<td style='background-color:$arr_plan->couleur_hex;' rowspan='$nb_creneau'>&nbsp;";
}
else if($joueur->type=='Autre' and $joueur->id_rubrique == 0) {
/* Couleur arrière plan */
$requete="SELECT c.couleur_hex FROM rubriques_resa rr, couleurs c WHERE rr.nom='Autre' AND rr.id_club='$id_club' AND rr.id_couleur=c.id_couleur";
$result=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
$arr_plan=mysqli_fetch_object($result);
echo "<td style='background-color:$arr_plan->couleur_hex;' rowspan='$nb_creneau'>&nbsp;";
}
else if($joueur->type=='Loisir') {
/* Couleur arrière plan */
$requete="SELECT c.couleur_hex FROM rubriques_resa rr, couleurs c WHERE rr.nom='Loisir' AND rr.id_club='$id_club' AND rr.id_couleur=c.id_couleur";
$result=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
$arr_plan=mysqli_fetch_object($result);
echo "<td style='background-color:$arr_plan->couleur_hex;' rowspan='$nb_creneau'>&nbsp;";
}
else if($joueur->type=='Invite') {
/* Couleur arrière plan */
$requete="SELECT c.couleur_hex FROM rubriques_resa rr, couleurs c WHERE rr.nom='Invite' AND rr.id_club='$id_club' AND rr.id_couleur=c.id_couleur";
$result=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
$arr_plan=mysqli_fetch_object($result);
/* Affichage Réservation */
echo "<td style='background-color:$arr_plan->couleur_hex;' rowspan='$nb_creneau'>&nbsp;";
}
else if($joueur->type=='Championnat') {
/* Couleur arrière plan */
$requete="SELECT c.couleur_hex FROM rubriques_resa rr, couleurs c WHERE rr.nom='Championnat' AND rr.id_club='$id_club' AND rr.id_couleur=c.id_couleur";
$result=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
$arr_plan=mysqli_fetch_object($result);
echo "<td style='background-color:$arr_plan->couleur_hex;' rowspan='$nb_creneau'>&nbsp;";
}
/* Rubrique perso */
else if($joueur->id_rubrique != 0 and $joueur->type=='Autre') {
$requete="SELECT * FROM rubriques_resa WHERE id_rubrique='$joueur->id_rubrique'";
$rep=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
$rubrique=mysqli_fetch_object($rep);
$requete="SELECT couleur_hex FROM couleurs WHERE id_couleur='$rubrique->id_couleur'";
$rep=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
$couleur=mysqli_fetch_object($rep);
echo "<td style='background-color:$couleur->couleur_hex;' rowspan='$nb_creneau'>&nbsp;";
}
echo "</td>";
}
else if($indice_encours == -1) {
/* Couleur arrière plan */
$requete="SELECT c.couleur_hex FROM rubriques_resa rr, couleurs c WHERE rr.nom='Libre' AND rr.id_club='$id_club' AND rr.id_couleur=c.id_couleur";
$result=mysqli_query($db_connection, $requete) or die ("Erreur no".mysqli_errno($db_connection)()." : ".mysqli_error($db_connection)()."<br>");
$arr_plan=mysqli_fetch_object($result);
echo "<td style='background-color:$arr_plan->couleur_hex;text-align:center;vertical-align:middle;'>";
$heure=date("h",$ts_horaire);
$ts_actuel=time();
$ts_horaires=mktime($[''],0,0,$mois, $jour,$annee);
if($ts_actuel < $ts_horaires) {
echo "<a style='a:hover{text-decoration:none;}' href='resa_port.php?heure=$['']&reservable=$terrains[$j]&mois=$mois&jour=$jour&annee=$annee'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a>";
}
else {
echo "&nbsp;";
}
echo "</td>";
}
}
echo "</tr>";
}
echo "</table></center>";
mysql_close($db_connection);
}
?>