<?php
#####################################################
# Ajout automatique des matches						#
#  													#
# @author ethoreau									#
#													#
#####################################################

include("../config.php3");
include($BIB."bib_generic.php3");
include($BIB."bib_drapeaux.php3");

//echo $SERVER_URL;
# pas de timeout possible qql soit l'action effectuée
set_time_limit($TIME_LIMIT);

# le script continue une fois qu'il est lancé quel que soit l'état de la connection après
ignore_user_abort(true); 

# si aucune date n'a été entrée,on affiche la date actuelle dans les champs texte
$current_european_date = date("Y-m-d H:i:s", my_local_time());

# on récupere le jour, le mois, l'année, les heures, minutes et secondes de la date courante
$DateCourante = explode(' ', $current_european_date);
$tabDateCourante = explode('-', $DateCourante[0]);
$tabHeureCourante = explode(':', $DateCourante[1]);
# on stocke le mktime de la date courante
$mktimeCourante = mktime((int)$tabHeureCourante[0],(int)$tabHeureCourante[1],(int)$tabHeureCourante[2],(int)$tabDateCourante[1],(int)$tabDateCourante[2],(int)$tabDateCourante[0]);
	
# Constante : nombre de lignes par défaut affiché pour la saisie des
# matchs
$NB_LIGNES = 10;

# Constantes des taux
# rate1 => 10
#rate2 => 2
$RATE_1 = 10;
$RATE_2 = 2;
$Etat = 0;
?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script type="text/javascript" src="<?php echo $SERVER_URL;?>Js/lib/jquery.js"></script>
<script type='text/javascript' src='<?php echo $SERVER_URL;?>Js/jquery.autocomplete.js'></script>
<link rel="stylesheet" type="text/css" href="<?php echo $SERVER_URL;?>Js/jquery.autocomplete.css"/>
<script type='text/javascript' src='<?php echo $SERVER_URL;?>Js/lib/jquery.bgiframe.min.js'></script>
<script type='text/javascript' src='<?php echo $SERVER_URL;?>Js/lib/jquery.ajaxQueue.js'></script>
</head>
<link rel="stylesheet" href="admin.css">
<body rightmargin=0>

<script type="text/javascript">
<!--
function verifSaisie() 
{
	var query = "";
	for(var i=0; i<'<?php echo $NB_LIGNES;?>'; i++) {		
		var valueTeamName1 = $("#TeamName_1"+(i)).val();
		var valueTeamName2 = $("#TeamName_2"+(i)).val();
		if(valueTeamName1 != "") {
			query += valueTeamName1+"$";
			//alert("valeur onChange 1 : "+valueTeamName1);
		}
		
		if(valueTeamName2 != "") {
			query += valueTeamName2+"$";
			//alert("valeur onChange 2 : "+valueTeamName2);
		}
	}
	$("#queryTeams").val(query);
	//alert("query:"+$("#queryTeams").val(query).val() );
}

function lookup(saisieTeam, id) {
	$("#"+id).autocomplete("api-js-search-teams.php?TeamName="+saisieTeam+"&queryTeams="+$("#queryTeams").val());
}

// -->
</script>
<div align=center class=trTitle>Ajout automatique des matchs</div>
<br/><br/>
<form method="post" name="main">
<table>
	<tr>
		<td>Catégorie:<br/><br/></td>
		<td>
			<select name="CategoryId" id=CategoryId size=1 >
			<?php
			$categories = main_db_query("SELECT Categories.*,Containers.Name AS ContainerName FROM Categories LEFT JOIN Containers ON Containers.Id=Categories.Container  WHERE Categories.EndTime>'$current_european_date' ORDER BY Container,Name");
			//asort($categories);
			while($categorie = db_fetch_array($categories))
			{
				//echo $categorie[CategoryId];
				if ($categorie[CategoryId]==$CategoryId)
					echo "<option value=$categorie[CategoryId] selected>".$categorie[ContainerName]." - ".$categorie[Name]."</option>";
				else
					echo "<option value=$categorie[CategoryId]>".$categorie[ContainerName]." - ".$categorie[Name]."</option>";
			}
				echo "</select>";
		?>
		<br/><br/>
		</td>
		<td>
		<input type=submit name=submit value="Afficher matchs"><br/><br/>
		</td>
	</tr>
</table>
<br/><br/>
<?php
switch($submit) {	
	case "Afficher matchs":	
		//echo "Categorie selectionnee : ".$CategoryId;
		$query = "SELECT Team1, Team2, Date FROM Matchs WHERE Category='".$CategoryId."'";
		$matchs = main_db_query($query);
		//debug("requete tableau match : ".$query);
		// tant que la requete retourne une ligne, on l'affiche dans le tableau
		$data = "";
		while ($match = db_fetch_array($matchs)) {
			$data .= "<tr><td>".$match[Team1]."</td><td>".$match[Team2]."</td><td>".$match[Date]."</td></tr>";
		}
	break;
	
	case "Valider":
		// on récupere le ShowTime de la catégorie choisie dans la liste
		$query = "SELECT ShowTime FROM Categories WHERE CategoryId='".$CategoryId."'";
		$ShowTimes = db_fetch_array(main_db_query($query));		
		$ShowTime = $ShowTimes[ShowTime];
		//echo "ShowTime : ".$ShowTime;
		
		for ($i=0; $i<$NB_LIGNES; $i++) {
			// on vérifie que tous les champs d'une ligne sont remplis
			if ($_POST['Equipe_1'.($i)] != "" && $_POST['Equipe_2'.($i)] == "" && $_POST['DateMatch_'.($i)] == ""
						|| $_POST['Equipe_1'.($i)] != "" && $_POST['Equipe_2'.($i)] != "" && $_POST['DateMatch_'.($i)] == ""
						|| $_POST['Equipe_1'.($i)] != "" && $_POST['Equipe_2'.($i)] == "" && $_POST['DateMatch_'.($i)] != ""
						|| $_POST['Equipe_1'.($i)] == "" && $_POST['Equipe_2'.($i)] != "" && $_POST['DateMatch_'.($i)] != ""
						|| $_POST['Equipe_1'.($i)] == "" && $_POST['Equipe_2'.($i)] == "" && $_POST['DateMatch_'.($i)] != ""						) {

				echo "<font face=\"Arial\" color=\"#EA0101\" size=\"2\"><b>Tous les champs doivent être renseigné pour un match (Equipe 1, Equipe 2 et Date du match).</b></font><br/><br/>";			
				// mise à jour du tableau d'affichage des matchs
				$query = "SELECT Team1, Team2, Date FROM Matchs WHERE Category='".$CategoryId."'";
				$matchs = main_db_query($query);
				//debug("requete tableau match : ".$query);
				// tant que la requete retourne une ligne, on l'affiche dans le tableau
				$data = "";
				while ($match = db_fetch_array($matchs)) {
					$data .= "<tr><td>".$match[Team1]."</td><td>".$match[Team2]."</td><td>".$match[Date]."</td></tr>";
				}
				//exit();
			} else {
				// on vérifie si les champs ont été rempli
				// si oui => on vérifie le format de la date et heure
				if ($_POST['Equipe_1'.($i)] != "" && $_POST['Equipe_2'.($i)] != "" && $_POST['DateMatch_'.($i)] != "") {
					if (@ereg("[0-9](-)(0[1-9]|1[012])(-)(0[1-9]|[12][0-9]|3[01]) (0[0-9]|1[0-9]|2[0123])(:)([0-5][0-9])(:)([0-5][0-9])",$_POST['DateMatch_'.($i)])) {
						// le format est bon, on vérifie la saisie de l'utilisateur
						$recupDateMatch = explode(' ', $_POST['DateMatch_'.($i)]);
						//echo "Date match : ".$recupDateMatch[0]." ".$recupDateMatch[1];
						$tabDate = explode('-', $recupDateMatch[0]);
						$tabHeure = explode(':', $recupDateMatch[1]);
						// on stocke le mktime en secondes de la date du match
						$mktimeMatch = mktime((int)$tabHeure[0],(int)$tabHeure[1],(int)$tabHeure[2],(int)$tabDate[1],(int)$tabDate[2],(int)$tabDate[0]);
						
						// validité de la date et de l'heure					
						if(checkdate((int)$tabDate[1], (int)$tabDate[2], (int)$tabDate[0]) && 
									(((int)$tabHeure[0] > -1 && (int)$tabHeure[0] < 24) && 
									((int)$tabHeure[1] > -1 && (int)$tabHeure[1] < 60) && 
									((int)$tabHeure[2] > -1 && (int)$tabHeure[2] < 60))) {
							
							// la date est valide mais on vérifie que celle-ci ne soit pas passée
							if ($mktimeMatch >= $mktimeCourante) {
								// la date du match n'est pas passé
								// on enregistre chaque match dans la base de données
								main_db_query("INSERT INTO Matchs (Date,Team1,Team2,Rate1,Rate2,ShowTime,Category,etat)
								VALUES ('".$_POST['DateMatch_'.($i)]."','".$_POST['Equipe_1'.($i)]."', '".$_POST['Equipe_2'.($i)]."','".$RATE_1."','".$RATE_2."','".$ShowTime."','".$CategoryId."','".$Etat."')");	

								// insertion dans table MatchsStats
								$max_tmp = db_fetch_array(main_db_query("SELECT MAX(MatchId) as MaxId FROM Matchs"));
								$the_MatchId = $max_tmp[MaxId];
								main_db_query("INSERT INTO MatchsStats (MatchId, Win1, Win2, NullGame) VALUES ('$the_MatchId', '0', '0', '0')");
								
								// une fois les données insérées dans la BD, on vide tous les champs
								$_POST['Equipe_1'.($i)] = "";
								$_POST['Equipe_2'.($i)] = "";
								$_POST['DateMatch_'.($i)] = "";								
							} else {
								echo "<font face=\"Arial\" color=\"#EA0101\" size=\"2\"><b>La ou les dates saisies sont inférieures à la date courante.</b></font><br/><br/>";	
								// mise à jour du tableau d'affichage des matchs
								$query = "SELECT Team1, Team2, Date FROM Matchs WHERE Category='".$CategoryId."'";
								$matchs = main_db_query($query);
								//debug("requete tableau match : ".$query);
								// tant que la requete retourne une ligne, on l'affiche dans le tableau
								$data = "";
								while ($match = db_fetch_array($matchs)) {
									$data .= "<tr><td>".$match[Team1]."</td><td>".$match[Team2]."</td><td>".$match[Date]."</td></tr>";
								}								
							}	
							
						} else {
							echo "<font face=\"Arial\" color=\"#EA0101\" size=\"2\"><b>La date et/ou l'heure est incorrecte.</b></font><br/><br/>";										
							// mise à jour du tableau d'affichage des matchs
							$query = "SELECT Team1, Team2, Date FROM Matchs WHERE Category='".$CategoryId."'";
							$matchs = main_db_query($query);
							//debug("requete tableau match : ".$query);
							// tant que la requete retourne une ligne, on l'affiche dans le tableau
							$data = "";
							while ($match = db_fetch_array($matchs)) {
								$data .= "<tr><td>".$match[Team1]."</td><td>".$match[Team2]."</td><td>".$match[Date]."</td></tr>";
							}
						}
					} else {
						echo "<font face=\"Arial\" color=\"#EA0101\" size=\"2\"><b>Le format date/heure n'est pas respecté.</b></font><br/><br/>";						
						// mise à jour du tableau d'affichage des matchs
						$query = "SELECT Team1, Team2, Date FROM Matchs WHERE Category='".$CategoryId."'";
						$matchs = main_db_query($query);
						// debug("requete tableau match : ".$query);
						// tant que la requete retourne une ligne, on l'affiche dans le tableau
						$data = "";
						while ($match = db_fetch_array($matchs)) {
							$data .= "<tr><td>".$match[Team1]."</td><td>".$match[Team2]."</td><td>".$match[Date]."</td></tr>";
						}
					}
				}
			}			
		}
		
		// mise à jour du tableau d'affichage des matchs
		$query = "SELECT Team1, Team2, Date FROM Matchs WHERE Category='".$CategoryId."'";
		$matchs = main_db_query($query);
		//debug("requete tableau match : ".$query);
		// tant que la requete retourne une ligne, on l'affiche dans le tableau
		$data = "";
		while ($match = db_fetch_array($matchs)) {
			$data .= "<tr><td>".$match[Team1]."</td><td>".$match[Team2]."</td><td>".$match[Date]."</td></tr>";
		}
	break;
}
?>


<table>
	<tr class=trTitle>
	<td align=center>Equipe 1</td>
	<td align=center>Equipe 2</td>
	<td align=center>Date du match</td>
	</tr>
	<?php
	// on crée dynamiquement les zones de saisie pour les équipes.
	for($i=0; $i < $NB_LIGNES; $i++) { 	
	?>
		<tr>	
		<td><input type=text name="<?php echo "Equipe_1".($i); ?>" id="<?php echo "TeamName_1".($i); ?>" value="<?php  echo $_POST['Equipe_1'.($i)]; ?>" onchange="verifSaisie();" onkeyup="lookup(this.value, '<?php echo "TeamName_1".($i); ?>');"/></td>
		<td><input type=text name="<?php echo "Equipe_2".($i); ?>" id="<?php echo "TeamName_2".($i); ?>" value="<?php echo $_POST['Equipe_2'.($i)]; ?>" onchange="verifSaisie();" onkeyup="lookup(this.value, '<?php echo "TeamName_2".($i); ?>');"/></td>
		<td><input type=text name="<?php echo "DateMatch_".($i); ?>" value="<?php echo $_POST['DateMatch_'.($i)]; ?>" /></td>
		<td>&nbsp;&nbsp;&nbsp; AAAA-MM-JJ HH:MM:SS</td>
		</tr>
		
	<?php
	}
	?>
	<input type=hidden name=queryTeams id=queryTeams value=""/>	
</table>
<br/><br/>
<input name=submit type=submit value="Valider">
	
<br/><br/>
<table border=1>
<tr class=trTitle>
<td>Equipe 1</td>
<td>Equipe 2</td>
<td>Date du match</td>
</tr>
<?php
if ($data != "") {
	echo $data;
}
?>
</table>
</form>
</body>
</html>