<META http-equiv="Content-Type" content="text/html; charset=utf-8">
<?php 


//////////////////////////////////////////////////////////////////////////////////////////////////////////
//										FONCTION CALENDRIER												//
//	1 = 	Cette fonction permet de cr&eacute;er un &eacute;tat pour le calendrier afin en ce basant sur les dates 	//
//			d&eacute;ja entrer et d'ensuite enregistrer les modification.										//
//	2 = 	Permet d'effacer une location au calendrier sans toucher au contrat de la meme journ&eacute;e.		//
//////////////////////////////////////////////////////////////////////////////////////////////////////////
function calendrier($cal_debut,$cal_fin,$date_debut,$date_fin,$type,$etape,$num_chalet,$code_contrat,$type_precedent)
{
//////////////////////////////////////////////////////////////////////////////////////////////////////////
//	Si etape = 1 alors c'est que la fonction a &eacute;t&eacute; appel&eacute; pour faire un ajout de contrat au calendrier	//
//////////////////////////////////////////////////////////////////////////////////////////////////////////
	if ($etape == 1) //POUR AJOUT
	{
		if ($date_debut != $date_fin)
		{
			//cherche toute les dates
			$sql = " SELECT base_calendrier.date, base_calendrier.etat, base_calendrier.c1, base_calendrier.c2, base_calendrier.c3, base_calendrier.c4
			           FROM base_calendrier
					  WHERE num_chalet = '$num_chalet'
  				   ORDER BY base_calendrier.date;"; 
			$result = mysqli_query($GLOBALS["___mysqli_ston"], $sql)	or die ("Ne peut lire la requ&ecirc;te1 du calendrier.<br>".$sql);

			
			//met les r&eacute;sultat dans les tables
			$i = 0;

			while ($row = mysqli_fetch_row($result))
			{
				$table_date[$i] = $row[0];
				$table_etat[$i] = $row[1]; 
				$table_c1[$i] = $row[2];
				$table_c2[$i] = $row[3];
				$table_c3[$i] = $row[4];
				$table_c4[$i++] = $row[5];								
			}
		
			$num = count($table_date);			
			
		
//////////////////////////////////////////////////////////////////////////////////////////////////////////
//	SI base_calendrier ne contient aucun enregistrement avec ce num&eacute;ro de chalet, le calendrier est 	//
//	est vide donc on l'enregistre avec insert et 0000 comme &eacute;tat pour toute les dates					//
//////////////////////////////////////////////////////////////////////////////////////////////////////////
		
			if ($num == 0)
			{
				$date = 0;
				//BOUCLE POUR CHAQUE DATE DE LENREGISTREMENT			
				for ($x = 0; $date < $date_fin; $x++)
				{
					//pour l'incr&eacute;mentation de la date
					list($annee,$mois,$jour) = explode("-", $date_debut);
					$date = date("d-m-Y", mktime(0,0,0,$mois,$jour+$x,$annee));
					list($jour,$mois,$annee) = explode("-", $date);
					$date = ($annee."-".$mois."-".$jour);
					$requete = 1;
					$bitmap = '0000';			
						
					list ($tempo_date,$tempo_etat,$tempo_ok,$tempo_requete,$c1,$c2,$c3,$c4) = ConstruitEtatAjout($num_chalet,$cal_debut,$cal_fin,$date_debut,$date_fin,$x,$date,$bitmap,$requete,$type,$code_contrat);
						$array_date[$x] = $tempo_date;
						$array_etat[$x] = $tempo_etat;
						$array_ok[$x] = $tempo_ok;
						$array_requete[$x] = $tempo_requete;
						$array_c1[$x] = $c1;
						$array_c2[$x] = $c2;
						$array_c3[$x] = $c3;
						$array_c4[$x] = $c4;
				}	
			}	
//////////////////////////////////////////////////////////////////////////////////////////////////////////
//	Si il existe d&eacute;ja des enregistrements avec le num&eacute;ro du chalets, on doit v&eacute;rifier si l'insertion	//
//	est possible pour ne pas &eacute;craser de date.															//
//////////////////////////////////////////////////////////////////////////////////////////////////////////			
			else//tant que la table n'est pas vide
			{
		
				//BOUCLE POUR CHAQUE DATE DE LENREGISTREMENT			
				for ($x = 0; $date < $date_fin; $x++)
				{
					$requete = 0;
					//calcul la date incr&eacute;ment&eacute;
					list($annee,$mois,$jour) = explode("-", $date_debut);
					$date = date("d-m-Y", mktime(0,0,0,$mois,$jour+$x,$annee));
					list($jour,$mois,$annee) = explode("-", $date);
					$date = ($annee."-".$mois."-".$jour);
					
					//TANT QUIL Y A DES R&Eacute;SULTAT
					for ($j = 0; $j < $num; $j++)
					{
						$c1 = $table_c1[$i];
						$c2 = $table_c2[$i];
						$c3 = $table_c3[$i];
						$c4 = $table_c4[$i++];		
						
						if ($table_date[$j] <= $date)
						{
							//SI IL Y A D&Eacute;J&Agrave; UN CONTRAT DANS L'INTERVAL
							if (($table_date[$j] > $date_debut) and ($table_date[$j] < $date_fin))
							{
								if ($table_etat[$j] == '0000')
								{ 
									$bitmap = '0000';
									$requete = 2;
									break;
								}
							}
							//SI IL NY A AUCUN CONTRAT DANS L'INTERVAL
							if (($table_date[$j] <= $date_debut) or ($table_date[$j] >= $date_fin))
							{
								//SI LES DATES SONT PAREILLES	
								if	($table_date[$j] == $date)
								{
									$bitmap = $table_etat[$j];
									$requete = 2;
									break;
								}
								//SI LES DATES SONT DIFF&Eacute;RENTE
								else
								{
									$bitmap = '0000';
									$requete = 1;
								}
							}
						}
						else
						{
							//SI IL NY A AUCUN CONTRAT DANS L'INTERVAL
							if (($table_date[$j] < $date_debut) or ($table_date[$j] > $date_fin))
							{
								//SI LES DATES SONT PAREILLES	
								if	($table_date[$j] == $date)
								{
									$bitmap = $table_etat[$j];
									$requete = 2;
								}
								//SI LES DATES SONT DIFF&Eacute;RENTE
								else
								{
									$bitmap = '0000';
									$requete = 1;
								}
							}	
							if (($table_date[$j] == $date_debut) or ($table_date[$j] == $date_fin))
							{
								$bitmap = $table_etat[$j];
								$requete = 2;
								
							}
							
						}	
					}//while
					
					if (($requete == 1) or ($requete == 2))
					{
						list ($tempo_date,$tempo_etat,$tempo_ok,$tempo_requete,$c1,$c2,$c3,$c4) = ConstruitEtatAjout($num_chalet,$cal_debut,$cal_fin,$date_debut,$date_fin,$x,$date,$bitmap,$requete,$type,$code_contrat);

						//APRES LA FONCTION ConstruitEtat(), PLACE LES RESULTAT DANS UNE TABLE QUI VA SERVIR &Agrave; FAIRE LA VALIDATION PLUS TARD
						$array_date[$x] = $tempo_date;
						$array_etat[$x] = $tempo_etat;
						$array_ok[$x] = $tempo_ok;
						$array_requete[$x] = $tempo_requete;
						$array_c1[$x] = $c1;
						$array_c2[$x] = $c2;
						$array_c3[$x] = $c3;
						$array_c4[$x] = $c4;
					}					
					
											
				}//for ($j = 0; $date < $date_fin; $j++)		
			}//if (!empty($row))
			
		$validation = 1;
		for ($a = 0; $a < $x; $a++)
		{
			$validation = ($validation * $array_ok[$a]);
		}	 
		return array ($validation,$num_chalet,$array_date,$array_etat,$array_requete,$x,$array_c1,$array_c2,$array_c3,$array_c4);
			
		}//if ($date_debut != $date_fin)
			
//////////////////////////////////////////////////////////////////////////////////////////////////////////
// V&Eacute;RIFICATION si la validation c'est bien pass&eacute;														//
//////////////////////////////////////////////////////////////////////////////////////////////////////////		
				
		
		
//////////////////////////////////////////////////////////////////////////////////////////////////////////
//	Si la date de debut et la date de fin sont semblable, le contrat ne dure qu'une journ&eacute;e				//
//////////////////////////////////////////////////////////////////////////////////////////////////////////
		elseif ($date_debut == $date_fin)
		{		
			//cherche toute les dates
			$sql = " SELECT base_calendrier.date, base_calendrier.etat
			           FROM base_calendrier
					  WHERE num_chalet = '$num_chalet'
  				   ORDER BY base_calendrier.date;"; 
			$result = mysqli_query($GLOBALS["___mysqli_ston"], $sql)	or die ("Ne peut lire la requ&ecirc;te1 du calendrier.<br>".$sql);

			
			//met les r&eacute;sultat dans les tables
			$i = 0;

			while ($row = mysqli_fetch_row($result))
			{
				$table_date[$i] = $row[0];
				$table_etat[$i] = $row[1]; 
				$table_c1[$i] = $row[2];
				$table_c2[$i] = $row[3];
				$table_c3[$i] = $row[4];
				$table_c4[$i++] = $row[5];
			}
			
			$num = count($table_date);
			
			//SI AUCUN ENREGISTREMENT			
			if ($num == 0)
			{
				$x = 0;
				$requete = 1;
				$bitmap = "0000";			
			}
			else
			{
				$date = $date_debut;
				
				//TANT QUIL Y A DES R&Eacute;SULTAT
				for ($j = 0; $j < $num; $j++)
				{
					if ($table_date[$j] == $date)
					{
						$bitmap = $table_etat[$j];
						$requete = 2;
						break;
					}
					else
					{
						$bitmap = '0000';
						$requete = 1;
					}
				}				
			}
			if (($requete == 1) or ($requete == 2))
			{
				list ($tempo_date,$tempo_etat,$tempo_ok,$tempo_requete,$c1,$c2,$c3,$c4) = ConstruitEtatAjout($num_chalet,$cal_debut,$cal_fin,$date_debut,$date_fin,$x,$date,$bitmap,$requete,$type,$code_contrat);

				//APRES LA FONCTION ConstruitEtat(), PLACE LES RESULTAT DANS UNE TABLE QUI VA SERVIR &Agrave; FAIRE LA VALIDATION PLUS TARD
				$array_date[0] = $tempo_date;
				$array_etat[0] = $tempo_etat;
				$array_ok[0] = $tempo_ok;
				$array_requete[0] = $tempo_requete;
				$array_c1[0] = $c1;
				$array_c2[0] = $c2;
				$array_c3[0] = $c3;
				$array_c4[0] = $c4;
		
			}					

			
			
		return array ($array_ok[0],$num_chalet,$array_date,$array_etat,$array_requete,$x,$array_c1,$array_c2,$array_c3,$array_c4);	
		}
		
		
	}//FIN if ($etape == 1)
	
	
	
	
//////////////////////////////////////////////////////////////////////////////////////////////////////////
//	Si etape = 2 alors c'est que la fonction a &eacute;t&eacute; appel&eacute; pour faire supprimer une p&eacute;riode du calendrier//
//////////////////////////////////////////////////////////////////////////////////////////////////////////	
	if ($etape == 2) //SUPPRIMER
	{
	
//////////////////////////////////////////////////////////////////////////////////////////////////////////
//	cherche les dates dans le contrat avant de les effacers												//
//	est possible pour ne pas &eacute;craser de date.															//
//////////////////////////////////////////////////////////////////////////////////////////////////////////			

		if ($type != 'reservation')
		{
			$sql = "SELECT date_debut, date_fin, cal_debut, cal_fin   
	      			  FROM base_contrat
		   			 WHERE base_contrat.code_contrat = '$code_contrat';";
			$result2 = mysqli_query($GLOBALS["___mysqli_ston"], $sql) or die ("Ne peut lire les dates du contrats".$sql);
			$row = mysqli_fetch_row($result2);
			$date_debut = ($row[0]);
			$date_fin = ($row[1]);
			$cal_debut = ($row[2]);
			$cal_fin = ($row[3]);
		}
		
		//cherche toute les dates
		$sql = " SELECT base_calendrier.date, base_calendrier.etat, base_calendrier.c1, base_calendrier.c2, base_calendrier.c3, base_calendrier.c4
		           FROM base_calendrier
				  WHERE num_chalet = '$num_chalet'
  			   ORDER BY base_calendrier.date;"; 
		$result1 = mysqli_query($GLOBALS["___mysqli_ston"], $sql)	or die ("Ne peut lire la requ&ecirc;te2 du calendrier.<br>".$sql);

		//met les r&eacute;sultat dans les tables
		$i = 0;

		while ($row = mysqli_fetch_row($result1))
		{
			$table_date[$i] = $row[0];
			$table_etat[$i] = $row[1];
			$table_c1[$i] = $row[2];
			$table_c2[$i] = $row[3];
			$table_c3[$i] = $row[4];
			$table_c4[$i++] = $row[5];	
		}
	
		$num = count($table_date);

		if ($date_debut != $date_fin)
		{

//////////////////////////////////////////////////////////////////////////////////////////////////////////
//	Si il existe d&eacute;ja des enregistrements avec le num&eacute;ro du chalets, on doit v&eacute;rifier si l'insertion	//
//	est possible pour ne pas &eacute;craser de date.															//
//////////////////////////////////////////////////////////////////////////////////////////////////////////


			if ($num > 0)//tant que la table n'est pas vide
			{
				$date = 0;
				//BOUCLE POUR CHAQUE DATE DE LENREGISTREMENT			
				for ($x = 0; $date < $date_fin; $x++)
				{
					$requete = 0;
					$stop = 0;
					//calcul la date incr&eacute;ment&eacute;
					list($annee,$mois,$jour) = explode("-", $date_debut);
					$date = date("d-m-Y", mktime(0,0,0,$mois,$jour+$x,$annee));
					list($jour,$mois,$annee) = explode("-", $date);
					$date = ($annee."-".$mois."-".$jour);
					
					
					//TANT QUIL Y A DES R&Eacute;SULTAT
					for ($j = 0; $j < $num; $j++)
					{
						$c1 = $table_c1[$i];
						$c2 = $table_c2[$i];
						$c3 = $table_c3[$i];
						$c4 = $table_c4[$i++];	
						
						if ($stop == 0)
						{
							//SI DATE &Eacute;GALE D&Eacute;BUT OU FIN
							if (($table_date[$j] == $date_debut) or ($table_date[$j] == $date_fin))  
							{
								if	($table_date[$j] == $date)
								{
									$bitmap = $table_etat[$j];
									$requete = 2;
									$stop = 1;								
								}
							}
							//SI DATE EST ENTRE D&Eacute;BUT OU FIN
							elseif (($date > $date_debut) && ($date < $date_fin))
							{
								$bitmap = 'LLLL';
								$requete = 1;
							}
						}
					}//while

					if (($requete == 1) or ($requete == 2))
					{
						list ($tempo_date,$tempo_etat,$tempo_ok,$tempo_requete,$c1,$c2,$c3,$c4) = ConstruitEtatDelete($num_chalet,$cal_debut,$cal_fin,$date_debut,$date_fin,$x,$date,$bitmap,$requete,$type,$code_contrat);

						//APRES LA FONCTION ConstruitEtatDelete(), PLACE LES RESULTAT DANS UNE TABLE QUI VA SERVIR &Agrave; FAIRE LA VALIDATION PLUS TARD
						$array_date[$x] = $tempo_date;
						$array_etat[$x] = $tempo_etat;
						$array_ok[$x] = $tempo_ok;
						$array_c1[$x] = $c1;
						$array_c2[$x] = $c2;
						$array_c3[$x] = $c3;
						$array_c4[$x] = $c4;
						
						if ($tempo_etat != '0000')
						{
							$array_requete[$x] = $tempo_requete;
						}else{
							$array_requete[$x] = 1;
						}	
						$stop = 0;
					}		
										
				}//for ($j = 0; $date < $date_fin; $j++)		
			}//if (!empty($row))
		}//if ($date_debut != $date_fin)

//////////////////////////////////////////////////////////////////////////////////////////////////////////
// SI LE CONTRAT NE DURE QU'UNE JOURN&Eacute;E																	//
//////////////////////////////////////////////////////////////////////////////////////////////////////////		
		elseif ($date_debut == $date_fin)
		{
				$x = 0;
				$date = $date_debut;
				$requete = 0;
				$stop = 0;
			
				//TANT QUIL Y A DES R&Eacute;SULTAT
				for ($j = 0; $j < $num; $j++)
				{
					$c1 = $table_c1[$i];
					$c2 = $table_c2[$i];
					$c3 = $table_c3[$i];
					$c4 = $table_c4[$i++];
						
					if ($stop == 0)
					{	
						if	($table_date[$j] == $date)
						{
							$bitmap = $table_etat[$j];
							$requete = 2;
							$stop = 1;
						}
					}	
				}
				if ($requete == 2)
				{
					list ($tempo_date,$tempo_etat,$tempo_ok,$tempo_requete,$c1,$c2,$c3,$c4) = ConstruitEtatDelete($num_chalet,$cal_debut,$cal_fin,$date_debut,$date_fin,$x,$date,$bitmap,$requete,$type,$code_contrat);

					//APRES LA FONCTION ConstruitEtatDelete(), PLACE LES RESULTAT DANS UNE TABLE QUI VA SERVIR &Agrave; FAIRE LA VALIDATION PLUS TARD
					$array_date[0] = $tempo_date;
					$array_etat[0] = $tempo_etat;
					$array_ok[0] = $tempo_ok;
					$array_c1[$x] = $c1;
					$array_c2[$x] = $c2;
					$array_c3[$x] = $c3;
					$array_c4[$x] = $c4;
					
					if ($tempo_etat != '0000')
					{
						$array_requete[0] = $tempo_requete;
					}else{
						$array_requete[0] = 1;
					}	
					$stop = 0;		
					
				}		
		}		
//////////////////////////////////////////////////////////////////////////////////////////////////////////
// V&Eacute;RIFICATION si la validation c'est bien pass&eacute;														//
//////////////////////////////////////////////////////////////////////////////////////////////////////////		
		$validation = 1;
		for ($a = 0; $a < $x; $a++)
		{
			$validation = ($validation * $array_ok[$a]);
		}
			 
//////////////////////////////////////////////////////////////////////////////////////////////////////////
//	SI TOUTE LES DATES SONT OK, BOUCLE POUR EFFACER ET MODIFIER TOUTE LES DATES							//
//////////////////////////////////////////////////////////////////////////////////////////////////////////
		if ($validation > 0)
		{

			for ($a = 0; $a<= $x; $a++)
			{
				//SI C'EST POUR UN DELETE
				if ($array_requete[$a] == 1)
				{
					$sql = "DELETE FROM base_calendrier
				    	          WHERE base_calendrier.date = '$array_date[$a]'
							        AND num_chalet = '$num_chalet';";
					$result = mysqli_query($GLOBALS["___mysqli_ston"], $sql)	or die ("Probl&egrave;me de del de la date: ".$date."<br><br>".$sql);

				}
			
				//SI C'EST POUR UN UPDATE
				if ($array_requete[$a] == 2)
				{
					//if (($type_precedent !="actif") and ($type != "annul&eacute;"))
					//{
					//}
					//elseif ($type_precedent !="annul&eacute;")
					//{
						$sql = "UPDATE base_calendrier SET etat = '$array_etat[$a]',";
						if ($array_c1[$a] == '0')
							$sql .= "base_calendrier.c1 = '$array_c1[$a]',";		   
						if ($array_c2[$a] == '0')
							$sql .= "base_calendrier.c2 = '$array_c2[$a]',";
						if ($array_c3[$a] == '0')
							$sql .= "base_calendrier.c3 = '$array_c3[$a]',";
						if ($array_c4[$a] == '0')
							$sql .= "base_calendrier.c4 = '$array_c4[$a]',";				   
						$sql .= "mis_a_jour = now()
								 WHERE base_calendrier.date = '$array_date[$a]'
								   AND num_chalet = '$num_chalet';";
						$result3 = mysqli_query($GLOBALS["___mysqli_ston"], $sql)	or die ("Probl&egrave;me dupdate de la date: ".$date."<br><br>".$sql);
					//}
				}
			}
		}
		else
		{
		}

return $validation;//si la validation est correcte
	}//FIN if ($etape == 1)
}//FIN Function



























//////////////////////////////////////////////////////////////////////////////////////////////////////////
//										FONCTION CONSTRUITETATAJOUT										//
//	Cette fonction est appel&eacute; pour chaque jour du calendrier modifi&eacute;. Elle prend les donn&eacute;es du contrat	//
//	et les compares au donn&eacute;es de la BD base_Calendrier. Elle g&eacute;n&egrave;re ensuite un &eacute;tat qui sera renvoy&eacute;	//
//	&agrave; la fonction appelante.																			//
//////////////////////////////////////////////////////////////////////////////////////////////////////////

function ConstruitEtatAjout($num_chalet,$cal_debut,$cal_fin,$date_debut,$date_fin,$compteur,$date,$bitmap,$requete,$type,$code_contrat)
// ARGUMENT = 	1 - num&eacute;ro du chalet
//				2 - case du calendrier pour le d&eacute;but
//				3 - case du calendrier pour le d&eacute;but
//				4 - date de d&eacute;but du contrat
//				5 - date de fin du contrat
//				6 - compteur de la boucle pour chaque date
//				7 - le bitmap actuel pour la date

{

//SI LE CONTRAT DURE SEULEMENT UNE JOURN&Eacute;E
if ($date_debut == $date_fin)
{
	$ok = 0;
	$reponse = 0;

//CONVERSION DU BITMAP AU FORMAT NUM&Eacute;RIQUE
	if ($bitmap == "L000"){
		$bitmap = 1000;}
	elseif ($bitmap == "0L00"){
		$bitmap = 100;}
	elseif ($bitmap == "00L0"){
		$bitmap = 10;}
	elseif ($bitmap == "000L"){
		$bitmap = 1;}
	elseif ($bitmap == "LL00"){
		$bitmap = 1100;}
	elseif ($bitmap == "0LL0"){
		$bitmap = 110;}
	elseif ($bitmap == "00LL"){
		$bitmap = 11;}
	elseif ($bitmap == "L0L0"){
		$bitmap = 1010;}
	elseif ($bitmap == "L00L"){
		$bitmap = 1001;}
	elseif ($bitmap == "0L0L"){
		$bitmap = 101;}
	elseif ($bitmap == "LLL0"){
		$bitmap = 1110;}
	elseif ($bitmap == "L0LL"){
		$bitmap = 1011;}
	elseif ($bitmap == "0LLL"){
		$bitmap = 111;}
	elseif ($bitmap == "LLLL"){
		$bitmap = 1111;}
	else{
		$bitmap = "0000";}	
																										
//CR&Eacute;ATION DU BITMAP TEMPORAIRE CALCUL&Eacute; AVEC LE CAL_DEBUT ET CAL_FIN
	$tmp_bitmap = 0;
	if (($cal_debut == 1) and ($cal_fin == 1)){
		$tmp_bitmap = "1000";
		$c1 = $code_contrat;}
	elseif (($cal_debut == 2) and ($cal_fin == 2)){
		$tmp_bitmap = "0100";
		$c2 = $code_contrat;}
	elseif (($cal_debut == 3) and ($cal_fin == 3)){
		$tmp_bitmap = "0010";
		$c3 = $code_contrat;}
	elseif (($cal_debut == 4) and ($cal_fin == 4)){
		$tmp_bitmap = "0001";
		$c4 = $code_contrat;}	
	elseif (($cal_debut == 1) and ($cal_fin == 2)){
		$tmp_bitmap = "1100";
		$c1 = $code_contrat;
		$c2 = $code_contrat;}
	elseif (($cal_debut == 1) and ($cal_fin == 3)){
		$tmp_bitmap = "1110";
		$c1 = $code_contrat;
		$c2 = $code_contrat;
		$c3 = $code_contrat;}
	elseif (($cal_debut == 1) and ($cal_fin == 4)){
		$tmp_bitmap = "1111";
		$c1 = $code_contrat;
		$c2 = $code_contrat;
		$c3 = $code_contrat;
		$c4 = $code_contrat;}		
	elseif (($cal_debut == 2) and ($cal_fin == 3)){
		$tmp_bitmap = "0110";
		$c2 = $code_contrat;
		$c3 = $code_contrat;}	
	elseif (($cal_debut == 2) and ($cal_fin == 4)){
		$tmp_bitmap = "0111";
		$c2 = $code_contrat;
		$c3 = $code_contrat;
		$c4 = $code_contrat;}
	elseif (($cal_debut == 3) and ($cal_fin == 4)){
		$tmp_bitmap = "0011";
		$c3 = $code_contrat;
		$c4 = $code_contrat;}		

//SI IL Y A UN CONTRAT DANS LA DATE
	$reponse = ($tmp_bitmap + $bitmap);
	$a = (substr($reponse,0,1));
	$b = (substr($reponse,1,1));
	$c = (substr($reponse,2,1));
	$d = (substr($reponse,3,1));
	
	if (($a == 2) or ($b == 2) or ($c == 2) or ($d == 2) or ($a == 4) or ($b == 4) or ($c == 4) or ($d == 4) or ($a == 6) or ($b == 6) or ($c == 6) or ($d == 6))
	{
		$ok = 0;
	}
	else
	{
		$tmp_bitmap = $reponse;
		$date = $date_debut;
		$ok = 1;

		//CONVERSION DU FORMAT NUM&Eacute;RIQUE AU BITMAP ORIGINAL
		if ($tmp_bitmap == 1101){
			$etat = "LL0L";} 	
		if ($tmp_bitmap == 1000){
			$etat = "L000";}	
		if ($tmp_bitmap == 100){
			$etat = "0L00";}
		if ($tmp_bitmap == 10){
			$etat = "00L0";}
		if ($tmp_bitmap == 1){
			$etat = "000L";}
		if ($tmp_bitmap == 1100){
			$etat = "LL00";}
		if ($tmp_bitmap == 110){
			$etat = "0LL0";}
		if ($tmp_bitmap == 11){
			$etat = "00LL";}
		if ($tmp_bitmap == 1010){
			$etat = "L0L0";}
		if ($tmp_bitmap == 1001){
			$etat = "L00L";}
		if ($tmp_bitmap == 101){
			$etat = "0L0L";}
		if ($tmp_bitmap == 1110){
			$etat = "LLL0";}
		if ($tmp_bitmap == 1011){
			$etat = "L0LL";}
		if ($tmp_bitmap == 111){
			$etat = "0LLL";}
		if ($tmp_bitmap == 1111){
			$etat = "LLLL";}
	}
}
else
{
//////////////////////////////////////////////////////////////////////////////////////////////////////////
//	Si la date est &eacute;gale &agrave; celle de d&eacute;but du contrat:													//
//////////////////////////////////////////////////////////////////////////////////////////////////////////
	if ($date == $date_debut)
	{
		$o = "0";
		$l = "L";	
		$x = "L";

		if ($bitmap == '0000')
		{
			if ($cal_debut == 1)
			{
				$etat = "$x$x$x$x";$ok = 1;$c1 = $code_contrat;$c2 = $code_contrat;$c3 = $code_contrat;$c4 = $code_contrat;
			}
			if ($cal_debut == 2)
			{
				$etat = "$o$x$x$x";$ok = 1;$c2 = $code_contrat;$c3 = $code_contrat;$c4 = $code_contrat;
			}
			if ($cal_debut == 3)
			{
				$etat = "$o$o$x$x";$ok = 1;$c3 = $code_contrat;$c4 = $code_contrat;
			}
			if ($cal_debut == 4)
			{
				$etat = "$o$o$o$x";$ok = 1;$c4 = $code_contrat;
			}	
		}
		elseif ($bitmap == 'L000')
		{
			if ($cal_debut == 1)
			{
				$ok = 0;
			}	
			if ($cal_debut == 2)
			{
				$etat = "$l$x$x$x";$ok = 1;$c2 = $code_contrat;$c3 = $code_contrat;$c4 = $code_contrat;
			}	
			if ($cal_debut == 3)
			{
				$etat = "$l$o$x$x";$ok = 1;$c3 = $code_contrat;$c4 = $code_contrat;
			}
			if ($cal_debut == 4)
			{
				$etat = "$l$o$o$x";$ok = 1;$c4 = $code_contrat;
			}	
		}
		elseif ($bitmap == '0L00')
		{
			if ($cal_debut == 1)
			{
				$ok = 0;
			}	
			if ($cal_debut == 2)
			{
				$ok = 0;
			}	
			if ($cal_debut == 3)
			{
				$etat = "$o$l$x$x";$ok = 1;$c3 = $code_contrat;$c4 = $code_contrat;
			}	
			if ($cal_debut == 4)
			{
				$etat = "$o$l$o$x";$ok = 1;$c4 = $code_contrat;
			}	
		}
		elseif ($bitmap == 'LL00')
		{
			if ($cal_debut == 1)
			{
				$ok = 0;
			}	
			if ($cal_debut == 2)
			{
				$ok = 0;
			}	
			if ($cal_debut == 3)
			{
				$etat = "$l$l$x$x";$ok = 1;$c3 = $code_contrat;$c4 = $code_contrat;
			}	
			if ($cal_debut == 4)
			{
				$etat = "$l$l$o$x";$ok = 1;$c4 = $code_contrat;
			}	
		}
		elseif ($bitmap == '00L0') 
		{
			if ($cal_debut == 1)
			{
				$ok = 0;
			}	
			if ($cal_debut == 2)
			{
				$ok = 0;
			}	
			if ($cal_debut == 3)
			{
				$ok = 0;
			}	
			if ($cal_debut == 4)
			{
				$etat = "$o$o$l$x";$ok = 1;$c4 = $code_contrat;
			}	
		}
		elseif ($bitmap == 'L0L0')
		{
			if ($cal_debut == 1)
			{
				$ok = 0;
			}	
			if ($cal_debut == 2)
			{
				$ok = 0;
			}	
			if ($cal_debut == 3)
			{
				$ok = 0;
			}	
			if ($cal_debut == 4)
			{
				$etat = "$l$o$l$x";$ok = 1;$c4 = $code_contrat;
			}	
		}
		elseif ($bitmap == '0LL0')
		{
			if ($cal_debut == 1)
			{
				$ok = 0;
			}	
			if ($cal_debut == 2)
			{
				$ok = 0;
			}	
			if ($cal_debut == 3)
			{
				$ok = 0;
			}	
			if ($cal_debut == 4)
			{
				$etat = "$o$l$l$x";$ok = 1;$c4 = $code_contrat;
			}	
		}
		elseif ($bitmap == 'LLL0')
		{
			if ($cal_debut == 1)
			{
				$ok = 0;
			}	
			if ($cal_debut == 2)
			{
				$ok = 0;
			}	
			if ($cal_debut == 3)
			{
				$ok = 0;
			}	
			if ($cal_debut == 4)
			{
				$etat = "$l$l$l$x";$ok = 1;$c4 = $code_contrat;
			}	
		}
		
		
		$last = (substr($bitmap,3,1));
			
		if (($last == "L") or ($last == "S"))
		{
			$ok = 0;
		}		
	}
//////////////////////////////////////////////////////////////////////////////////////////////////////////	
//	Si c'est le dernier enregistrement:																	//
//////////////////////////////////////////////////////////////////////////////////////////////////////////
	elseif ($date == $date_fin)
	{
		$o = "0";
		$l = "L";	
		$x = "L";
			
		if ($bitmap == '0000')
		{
			if ($cal_fin == 1)
			{
				$etat = "$x$o$o$o";$ok = 1;$c1 = $code_contrat;
			}	
			if ($cal_fin == 2)
			{
				$etat = "$x$x$o$o";$ok = 1;$c1 = $code_contrat;$c2 = $code_contrat;
			}	
			if ($cal_fin == 3)
			{
				$etat = "$x$x$x$o";$ok = 1;$c1 = $code_contrat;$c2 = $code_contrat;$c3 = $code_contrat;
			}	
			if ($cal_fin == 4)
			{
				$etat = "$x$x$x$x";$ok = 1;$c1 = $code_contrat;$c2 = $code_contrat;$c3 = $code_contrat;$c4 = $code_contrat;
			}	
		}
		elseif ($bitmap == '0L00')
		{
			if ($cal_fin == 1)
			{
				$etat = "$x$l$o$o";$ok = 1;$c1 = $code_contrat;
			}	
			if ($cal_fin == 2)
			{
				$ok = 0;
			}	
			if ($cal_fin == 3)
			{
				$ok = 0;
			}	
			if ($cal_fin == 4)
			{
				$ok = 0;
			}	
		}
		elseif ($bitmap == '0LL0')
		{
			if ($cal_fin == 1)
			{
				$etat = "$x$l$l$o";$ok = 1;$c1 = $code_contrat;
			}	
			if ($cal_fin == 2)
			{
				$ok = 0;
			}	
			if ($cal_fin == 3)
			{
				$ok = 0;
			}	
			if ($cal_fin == 4)
			{
				$ok = 0;
			}	
		}		
		elseif ($bitmap == '0L0L')
		{
			if ($cal_fin == 1)
			{
				$etat = "$x$l$o$l";$ok = 1;$c1 = $code_contrat;
			}	
			if ($cal_fin == 2)
			{
				$ok = 0;
			}	
			if ($cal_fin == 3)
			{
				$ok = 0;
			}	
			if ($cal_fin == 4)
			{
				$ok = 0;
			}	
		}		
		elseif ($bitmap == '0LLL')
		{
			if ($cal_fin == 1)
			{
				$etat = "$x$l$l$l";$ok = 1;$c1 = $code_contrat;
			}	
			if ($cal_fin == 2)
			{
				$ok = 0;
			}	
			if ($cal_fin == 3)
			{
				$ok = 0;
			}	
			if ($cal_fin == 4)
			{
				$ok = 0;
			}	
		}		
		elseif ($bitmap == '00L0')
		{
			if ($cal_fin == 1)
			{
				$etat = "$x$o$l$o";$ok = 1;$c1 = $code_contrat;
			}	
			if ($cal_fin == 2)
			{
				$etat = "$x$x$l$o";$ok = 1;$c1 = $code_contrat;$c2 = $code_contrat;
			}	
			if ($cal_fin == 3)
			{
				$ok = 0;
			}	
			if ($cal_fin == 4)
			{
				$ok = 0;
			}	
		}
		elseif ($bitmap == '00LL')
		{
			if ($cal_fin == 1)
			{
				$etat = "$x$o$l$l";$ok = 1;$c1 = $code_contrat;
			}	
			if ($cal_fin == 2)
			{
				$etat = "$x$x$l$l";$ok = 1;$c1 = $code_contrat;$c2 = $code_contrat;
			}	
			if ($cal_fin == 3)
			{
				$ok = 0;
			}	
			if ($cal_fin == 4)
			{
				$ok = 0;
			}	
		}
		elseif ($bitmap == '000L')
		{
			if ($cal_fin == 1)
			{
				$etat = "$x$o$o$l";$ok = 1;$c1 = $code_contrat;
			}					
			if ($cal_fin == 2)
			{
				$etat = "$x$x$o$l";$ok = 1;$c1 = $code_contrat;$c2 = $code_contrat;
			}					
			if ($cal_fin == 3)
			{
				$etat = "$x$x$x$l";$ok = 1;$c1 = $code_contrat;$c2 = $code_contrat;$c3 = $code_contrat;
			}					
			if ($cal_fin == 4)
			{
				$ok = 0;
			}	
		}
					
		
		$last = (substr($bitmap,0,1));
			
		if (($last == "L") or ($last == "S"))
		{
			$ok = 0;
		}		
	}
//////////////////////////////////////////////////////////////////////////////////////////////////////////	
//	Si c'est un enregistrement du milieu du contrat:													//
//////////////////////////////////////////////////////////////////////////////////////////////////////////
	elseif (($date < $date_fin) and ($compteur != 0) and ($date !=$date_fin))
	{
		$etat = 'LLLL';$ok = 1;
		$c1 = $code_contrat;$c2 = $code_contrat;$c3 = $code_contrat;$c4 = $code_contrat;
	}	
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////
//	RETOURNE la date, le nouvel &eacute;tat, si la validation est ok et le type de requ&ecirc;te						//
//////////////////////////////////////////////////////////////////////////////////////////////////////////		
	$array_date[$compteur] = $date;
	$array_etat[$compteur] = $etat;
	$array_ok[$compteur] = $ok;
	$array_requete[$compteur] = $requete;
	$array_c1[$compteur] = $c1;
	$array_c2[$compteur] = $c2;
	$array_c3[$compteur] = $c3;
	$array_c4[$compteur] = $c4;
																																						
	return array($array_date[$compteur],$array_etat[$compteur],$array_ok[$compteur],$array_requete[$compteur],$array_c1[$compteur],$array_c2[$compteur],$array_c3[$compteur],$array_c4[$compteur]);	


}	



























//////////////////////////////////////////////////////////////////////////////////////////////////////////
//										FONCTION CONSTRUITETATDELETE									//
//	Cette fonction est appel&eacute; pour chaque jour du calendrier modifi&eacute;. Elle prend les donn&eacute;es du contrat	//
//	et les compares au donn&eacute;es de la BD base_Calendrier. Elle g&eacute;n&egrave;re ensuite un &eacute;tat qui sera renvoy&eacute;	//
//	&agrave; la fonction appelante.																			//
//////////////////////////////////////////////////////////////////////////////////////////////////////////

function ConstruitEtatDelete($num_chalet,$cal_debut,$cal_fin,$date_debut,$date_fin,$compteur,$date,$bitmap,$requete,$type,$code_contrat)
// ARGUMENT = 	1 - num&eacute;ro du chalet
//				2 - case du calendrier pour le d&eacute;but
//				3 - case du calendrier pour le d&eacute;but
//				4 - date de d&eacute;but du contrat
//				5 - date de fin du contrat
//				6 - compteur de la boucle pour chaque date
//				7 - le bitmap actuel pour la date

{
$ok = 0;

//SI LE CONTRAT DURE SEULEMENT UNE JOURN&Eacute;E
if ($date_debut == $date_fin)
{
	$reponse = 0;
//CONVERSION DU BITMAP AU FORMAT NUM&Eacute;RIQUE	
	if ($bitmap == "L000"){
		$bitmap = 1000;}	
	elseif ($bitmap == "0L00"){
		$bitmap = 100;}
	elseif ($bitmap == "00L0"){
		$bitmap = 10;}
	elseif ($bitmap == "000L"){
		$bitmap = 1;}
	elseif ($bitmap == "LL00"){
		$bitmap = 1100;}
	elseif ($bitmap == "0LL0"){
		$bitmap = 110;}
	elseif ($bitmap == "00LL"){
		$bitmap = 11;}
	elseif ($bitmap == "L0L0"){
		$bitmap = 1010;}
	elseif ($bitmap == "L00L"){
		$bitmap = 1001;}
	elseif ($bitmap == "0L0L"){
		$bitmap = 101;}
	elseif ($bitmap == "LLL0"){
		$bitmap = 1110;}
	elseif ($bitmap == "L0LL"){
		$bitmap = 1011;}
	elseif ($bitmap == "0LLL"){
		$bitmap = 111;}
	elseif ($bitmap == "LLLL"){
		$bitmap = 1111;}
	elseif ($bitmap == "LL0L"){
		$bitmap = 1101;}
	else{
		$bitmap = "0000";}	
	
																										
	$tmp_bitmap = 0;
//CR&Eacute;ATION DU BITMAP TEMPORAIRE CALCUL&Eacute; AVEC LE CAL_DEBUT ET CAL_FIN
	if (($cal_debut == 1) and ($cal_fin == 1)){
		$tmp_bitmap = "1000";
		$c1 = 0;}
	elseif (($cal_debut == 2) and ($cal_fin == 2)){
		$tmp_bitmap = "0100";
		$c2 = 0;}
	elseif (($cal_debut == 3) and ($cal_fin == 3)){
		$tmp_bitmap = "0010";
		$c3 = 0;}
	elseif (($cal_debut == 4) and ($cal_fin == 4)){
		$tmp_bitmap = "0001";
		$c4 = 0;}
	elseif (($cal_debut == 1) and ($cal_fin == 2)){
		$tmp_bitmap = "1100";
		$c1 = 0;
		$c2 = 0;}
	elseif (($cal_debut == 1) and ($cal_fin == 3)){
		$tmp_bitmap = "1110";
		$c1 = 0;
		$c2 = 0;
		$c3 = 0;}
	elseif (($cal_debut == 1) and ($cal_fin == 4)){
		$tmp_bitmap = "1111";
		$c1 = 0;
		$c2 = 0;
		$c3 = 0;
		$c4 = 0;}
	elseif (($cal_debut == 2) and ($cal_fin == 3)){
		$tmp_bitmap = "0110";
		$c2 = 0;
		$c3 = 0;}
	elseif (($cal_debut == 2) and ($cal_fin == 4)){
		$tmp_bitmap = "0111";
		$c2 = 0;
		$c3 = 0;
		$c4 = 0;}
	elseif (($cal_debut == 3) and ($cal_fin == 4)){
		$tmp_bitmap = "0011";
		$c3 = 0;
		$c4 = 0;}

		
//SI IL Y A UN CONTRAT DANS LA DATE
	$reponse = ($tmp_bitmap + $bitmap);
	
	$a = (substr($reponse,0,1));
	$b = (substr($reponse,1,1));
	$c = (substr($reponse,2,1));
	$d = (substr($reponse,3,1));

	
	if (($a == "2") or ($a == "4") or ($a == "6"))
		$a = "0";
	if (($b == "2") or ($b == "4") or ($b == "6"))
		$b = "0";
	if (($c == "2") or ($c == "4") or ($c == "6"))	
		$c = "0";
	if (($d == "2") or ($d == "4") or ($d == "6"))	
		$d = "0";
	$reponse =("$a$b$c$d");
		
	$tmp_bitmap = $reponse;
	$date = $date_debut;
	$ok = 1;
	//CONVERSION DU FORMAT NUM&Eacute;RIQUE AU BITMAP ORIGINAL
	if ($tmp_bitmap == 1101){
		$etat = "LL0L";} 	
	if ($tmp_bitmap == 1000){
		$etat = "L000";}	
	if ($tmp_bitmap == 100){
		$etat = "0L00";}
	if ($tmp_bitmap == 10){
		$etat = "00L0";}
	if ($tmp_bitmap == 1){
		$etat = "000L";}
	if ($tmp_bitmap == 1100){
		$etat = "LL00";}
	if ($tmp_bitmap == 110){
		$etat = "0LL0";}
	if ($tmp_bitmap == 11){
		$etat = "00LL";}
	if ($tmp_bitmap == 1010){
		$etat = "L0L0";}
	if ($tmp_bitmap == 1001){
		$etat = "L00L";}
	if ($tmp_bitmap == 101){
		$etat = "0L0L";}
	if ($tmp_bitmap == 1110){
		$etat = "LLL0";}
	if ($tmp_bitmap == 1011){
		$etat = "L0LL";}
	if ($tmp_bitmap == 111){
		$etat = "0LLL";}
	if ($tmp_bitmap == 1111){
		$etat = "LLLL";}
	if ($tmp_bitmap == 0000){	
		$requete = 1;}
}

else
{
//////////////////////////////////////////////////////////////////////////////////////////////////////////
//	Si la date est &eacute;gale &agrave; celle de d&eacute;but du contrat:													//
//////////////////////////////////////////////////////////////////////////////////////////////////////////
	if ($date == $date_debut)
	{
		if ($bitmap == '000L')
		{
			if ($cal_debut == 1)
			{
				$ok = 0;
			}	
			if ($cal_debut == 2)
			{
				$ok = 0;
			}	
			if ($cal_debut == 3)
			{
				$ok = 0;
			}
			if ($cal_debut == 4)
			{
				$etat = '0000';$ok = 1;
				$c4 = 0;
			}
		}
		elseif ($bitmap == 'L00L')
		{
			if ($cal_debut == 1)
			{
				$ok = 0;
			}	
			if ($cal_debut == 2)
			{
				$ok = 0;
			}	
			if ($cal_debut == 3)
			{
				$ok = 0;
			}	
			if ($cal_debut == 4)
			{
				$etat = 'L000';$ok = 1;
				$c4 = 0;
			}	
		}
		elseif ($bitmap == '0L0L')
		{
			if ($cal_debut == 1)
			{
				$ok = 0;
			}	
			if ($cal_debut == 2)
			{
				$ok = 0;
			}	
			if ($cal_debut == 3)
			{
				$ok = 0;
			}
			if ($cal_debut == 4)
			{
				$etat = '0L00';$ok = 1;
				$c4 = 0;
			}
		}
		elseif ($bitmap == '00LL')
		{
			if ($cal_debut == 1)
			{
				$ok = 0;
			}
			if ($cal_debut == 2)
			{
				$ok = 0;
			}	
			if ($cal_debut == 3)
			{
				$etat = '0000';$ok = 1;
				$c3 = 0;
				$c4 = 0;
			}	
			if ($cal_debut == 4)
			{
				$etat = '00L0';$ok = 1;
				$c4 = 0;
			}	
		}
		elseif ($bitmap == 'L0LL')
		{
			if ($cal_debut == 1)
			{
				$ok = 0;
			}	
			if ($cal_debut == 2)
			{
				$ok = 0;
			}	
			if ($cal_debut == 3)
			{
				$etat = 'L000';$ok = 1;
				$c3 = 0;
				$c4 = 0;
			}	
			if ($cal_debut == 4)
			{
				$etat = 'L0L0';$ok = 1;
				$c4 = 0;
			}	
		}
		elseif ($bitmap == '0LLL')
		{
			if ($cal_debut == 1)
			{
				$ok = 0;
			}	
			if ($cal_debut == 2)
			{
				$etat = '0000';$ok = 1;
				$c2 = 0;
				$c3 = 0;
				$c4 = 0;
			}	
			if ($cal_debut == 3)
			{
				$etat = '0L00';$ok = 1;
				$c3 = 0;
				$c4 = 0;
			}	
			if ($cal_debut == 4)
			{
				$etat = '0LL0';$ok = 1;
				$c4 = 0;
			}	
		}	
		elseif ($bitmap == 'LLLL')
		{
			if ($cal_debut == 1)
			{
				$etat = '0000';$ok = 1;
				$c1 = 0;
				$c2 = 0;
				$c3 = 0;
				$c4 = 0;
			}	
			if ($cal_debut == 2)
			{
				$etat = 'L000';$ok = 1;
				$c2 = 0;
				$c3 = 0;
				$c4 = 0;
			}	
			if ($cal_debut == 3)
			{
				$etat = 'LL00';$ok = 1;
				$c3 = 0;
				$c4 = 0;
			}	
			if ($cal_debut == 4)
			{
				$etat = 'LLL0';$ok = 1;
				$c4 = 0;
			}	
		}
		elseif ($bitmap == 'LL0L')
		{
			if ($cal_debut == 1)
			{
				$ok = 0;
			}
			if ($cal_debut == 2)
			{
				$ok = 0;
			}
			if ($cal_debut == 3)
			{
				$ok = 0;
			}
			if ($cal_debut == 4)
			{
				$etat = 'LL00';$ok = 1;
				$c4 = 0;
			}
		}
	}	
	
//////////////////////////////////////////////////////////////////////////////////////////////////////////	
//	Si c'est un enregistrement du milieu du contrat:													//
//////////////////////////////////////////////////////////////////////////////////////////////////////////
	elseif (($date < $date_fin) and ($date <> $date_debut) and ($compteur >= 1))
	{
		$etat = '0000';$ok = 1;	$c1 = 0;$c2 = 0;$c3 = 0;$c4 = 0;
	}
//////////////////////////////////////////////////////////////////////////////////////////////////////////	
//	Si c'est le dernier enregistrement:																	//
//////////////////////////////////////////////////////////////////////////////////////////////////////////
	elseif ($date == $date_fin)
	{
	
		if ($bitmap == 'L000')
		{
			if ($cal_fin == 1)
			{
				$etat = '0000';$ok = 1;
				$c1 = 0;
			}	
			if ($cal_fin == 2)
			{
				$ok = 0;
			}	
			if ($cal_fin == 3)
			{
				$ok = 0;
			}	
			if ($cal_fin == 4)
			{
				$ok = 0;
			}	
		}
		elseif ($bitmap == 'LL00')
		{
			if ($cal_fin == 1)
			{
				$etat = '0L00';$ok = 1;
				$c1 = 0;
			}	
			if ($cal_fin == 2)
			{
				$etat = '0000';$ok = 1;
				$c1 = 0;
				$c2 = 0;
			}	
			if ($cal_fin == 3)
			{
				$ok = 0;
			}	
			if ($cal_fin == 4)
			{
				$ok = 0;
			}	
		}	
		elseif ($bitmap == 'LLL0')
		{
			if ($cal_fin == 1)
			{
				$etat = '0LL0';$ok = 1;
				$c1 = 0;
			}	
			if ($cal_fin == 2)
			{
				$etat = '00L0';$ok = 1;
				$c1 = 0;
				$c2 = 0;
			}		
			if ($cal_fin == 3)
			{
				$etat = '0000';$ok = 1;
				$c1 = 0;
				$c2 = 0;
				$c3 = 0;
			}	
			if ($cal_fin == 4)
			{
				$ok = 0;
			}	
		}	
		elseif ($bitmap == 'L0L0')
		{
			if ($cal_fin == 1)
			{
				$etat = '00L0';$ok = 1;
				$c1 = 0;
			}	
			if ($cal_fin == 2)
			{
				$ok = 0;
			}	
			if ($cal_fin == 3)
			{
				$ok = 0;
			}	
			if ($cal_fin == 4)
			{
				$ok = 0;
			}	
		}
		elseif ($bitmap == 'L00L')
		{
			if ($cal_fin == 1)
			{
				$etat = '000L';$ok = 1;
				$c1 = 0;
			}	
			if ($cal_fin == 2)
			{
				$ok = 0;
			}	
			if ($cal_fin == 3)
			{
				$ok = 0;
			}	
			if ($cal_fin == 4)
			{
				$ok = 0;
			}	
		}
		elseif ($bitmap == 'LLL0')
		{
			if ($cal_fin == 1)
			{
				$etat = '0LL0';$ok = 1;
				$c1 = 0;
			}	
			if ($cal_fin == 2)
			{
				$etat = '00L0';$ok = 1;
				$c1 = 0;
				$c2 = 0;
			}	
			if ($cal_fin == 3)
			{
				$etat = '0000';$ok = 1;
				$c1 = 0;
				$c2 = 0;
				$c3 = 0;
			}	
			if ($cal_fin == 4)
			{
				$ok = 0;
			}	
		}
		elseif ($bitmap == 'L0LL')
		{
			if ($cal_fin == 1)
			{
				$etat = '00LL';$ok = 1;
				$c1 = 0;
			}	
			if ($cal_fin == 2)
			{
				$ok = 0;
			}	
			if ($cal_fin == 3)
			{
				$ok = 0;
			}	
			if ($cal_fin == 4)
			{
				$ok = 0;
			}	
		}
		elseif ($bitmap == 'LL0L')
		{
			if ($cal_fin == 1)
			{
				$etat = '0L0L';$ok = 1;
				$c1 = 0;
			}	
			if ($cal_fin == 2)
			{
				$etat = '000L';$ok = 1;
				$c1 = 0;
				$c2 = 0;
			}	
			if ($cal_fin == 3)
			{
				$ok = 0;
			}	
			if ($cal_fin == 4)
			{
				$ok = 0;
			}	
		}
		elseif ($bitmap == 'LLLL')
		{
			if ($cal_fin == 1)
			{
				$etat = '0LLL';$ok = 1;
				$c1 = 0;
			}	
			if ($cal_fin == 2)
			{
				$etat = '00LL';$ok = 1;
				$c1 = 0;
				$c2 = 0;
			}	
			if ($cal_fin == 3)
			{
				$etat = '000L';$ok = 1;
				$c1 = 0;
				$c2 = 0;
				$c3 = 0;
			}	
			if ($cal_fin == 4)
			{
				$etat = '0000';$ok = 1;
				$c1 = 0;
				$c2 = 0;
				$c3 = 0;
				$c4 = 0;
			}	
		}
		else
		{	
			$ok = 0;
		}
	}	
}

	
//////////////////////////////////////////////////////////////////////////////////////////////////////////
//	RETOURNE la date, le nouvel &eacute;tat, si la validation est ok et le type de requ&ecirc;te						//
//////////////////////////////////////////////////////////////////////////////////////////////////////////		
	$array_date[$compteur] = $date;
	$array_etat[$compteur] = $etat;
	$array_ok[$compteur] = $ok;
	$array_requete[$compteur] = $requete;
	$array_c1[$compteur] = $c1;
	$array_c2[$compteur] = $c2;
	$array_c3[$compteur] = $c3;
	$array_c4[$compteur] = $c4;
																																					
	return array($array_date[$compteur],$array_etat[$compteur],$array_ok[$compteur],$array_requete[$compteur],$array_c1[$compteur],$array_c2[$compteur],$array_c3[$compteur],$array_c4[$compteur]);	
}	
?>















