//Rajout de la fonction qui vérifie la validité d'une date
function dateValide(origine)
{
	var elt_value = document.getElementById(origine).value;
	var ladate=new Date();
	var bissextile = false;
	var strMonthArray = new Array(12);
	strMonthArray["01"] = "31";
	strMonthArray["02"] = "29";
	strMonthArray["03"] = "31";
	strMonthArray["04"] = "30";
	strMonthArray["05"] = "31";
	strMonthArray["06"] = "30";
	strMonthArray["07"] = "31";
	strMonthArray["08"] = "31";
	strMonthArray["09"] = "30";
	strMonthArray["10"] = "31";
	strMonthArray["11"] = "30";
	strMonthArray["12"] = "31";

	date_decomp = elt_value.split("/");

	if (date_decomp.length < 3)
	{
		alert("la date est erronée");
		return false;
	}
	
	for(i=0;i<date_decomp.length;i++)
	{
		if (isNaN(date_decomp[i]))
		{
			alert("la date contient des caractères");
			return false;
		}
	}
	
	if(eval(parseInt("20"+date_decomp[2],10)%4)==0)
 	{

	  if(eval(parseInt("20"+date_decomp[2],10)%100)==0)
	  {
	
	     if(eval(parseInt("20"+date_decomp[2],10)%400)==0)
	     {
	     	bissextile = true;
	     	strMonthArray["01"] = "28";
	     }
	     
	  }
	  else
	  {
	  	bissextile = true;
	  	strMonthArray["01"] = "28";
	  }
  	}

 	if (date_decomp[0] < 1 || date_decomp[0] > strMonthArray[date_decomp[1]] || !strMonthArray[date_decomp[1]] || parseInt(date_decomp[2],10)< parseInt(ladate.getFullYear(),10))
 	{
 		alert("Date invalide");
 		return false;
 	}
	
	return true;
}

//Rajout de la fonction qui vérifie que le nombre de personnes corresponde à la quantité de places pour les chambres dans le formulaire complexe
function repartition()
{
	var capacite = new Array(5);
	var type = new Array("Single","Twin","Double","Triple","Quadruple");
	
	var paxadt = new Array("zs_complexe_nb_adultes");
	var paxenf = new Array("zs_complexe_enfant1","zs_complexe_enfant2","zs_complexe_enfant3","zs_complexe_enfant4");			
	
	var nbpax = 0;
	var nbchambre = 0;
	
	capacite["Single"] = 1;
	capacite["Twin"] = 2;
	capacite["Double"] = 2;
	capacite["Triple"] = 3;
	capacite["Quadruple"] = 4;
	
	if (document.getElementById(paxadt[0]).value != "")
	{	
		nbpax = nbpax+parseInt(document.getElementById(paxadt[0]).value,10);
	}
	else
	{
		alert("il faut minimum 1 adulte");
		return;
	}
	
	for (i=0;i<paxenf.length;i++)
	{
		if (document.getElementById(paxenf[i]).value != "")
		{
			nbpax++;
		}
	
	}
	
	if (nbpax <= 0)
	{
		alert("vous devez avoir au moins une personne adulte");
		return;
	} 
	
	if (nbpax > 6)
	{
		alert("vous ne pouvez avoir plus de 6  personnes");
		return;
	}
	
	for(i=0; i<type.length; i++)
	{
		if (document.getElementById(type[i]).value != "")
		{
			nbchambre = nbchambre + (parseInt(document.getElementById(type[i]).value,10)*capacite[type[i]]);
		}
	}
	
	if (nbchambre == 0)
	{
		alert("vous devez sélectionner un type de chambre");
		return;
	}
	
	if (nbchambre > nbpax)
	{
		alert("certaines chambres sont vides");
		return;
	}
	if (nbpax>nbchambre)
	{
		alert("vous n'avez pas assez de chambres pour le nombre de personne");
		return;
	}
	
	return true;
}

//Fonction "spéciale CGOS" qui vérifie que le nombre de personnes corresponde à la quantité de places pour les chambres dans le formulaire complexe
function repartitionCGOS()
{
	var capacite = new Array(5);
	var type = new Array("Single","Twin","Double","Triple","Quadruple");

	var nbpax 		= 0;
	var nbadultes 	= 0;
	var nbenfants 	= 0;
	var nbchambre 	= 0;
	
	//Récupération des ayants-droit sélectionnés et vérification qu'il s'agisse d'un adulte ou d'un enfant
	var cpt = 1;
	do
	{	if(document.getElementById('chk_complexe_pax_cgos_'+cpt)!= undefined && document.getElementById('chk_complexe_pax_cgos_'+cpt).checked)
		{	//Client CGOS coché => On vérifie sir le champ de date de naissance correspondant est présent
			if(document.getElementById('hd_complexe_datenaiss_enfantcgos_'+cpt)!= undefined)
			{	//Le champ "date de naissance" correspondant existe => Il faut vérifier que cet Ayant-droit ai +/- 18 ans le jour du retour
				if(document.getElementById('zs_complexe_date_retour').value != "")
				{	var dateRetour 		= document.getElementById('zs_complexe_date_retour').value;
					var dateNaissance 	= document.getElementById('hd_complexe_datenaiss_enfantcgos_'+cpt).value;
					
					//Premièrement : On splite la date de naissance et la date du retour
					var dateNaissance = new Array(dateNaissance.substring(6,8),dateNaissance.substring(4,6),dateNaissance.substring(0,4));
					var dateRetour = new Array(dateRetour.substring(0,2),dateRetour.substring(3,5),'20'+dateRetour.substring(6,8));
					
					//Deuxièmement:  comparaison entre l'année de naissance et l'année de retour pour obtenir l'age supposé de la personne
					var anneeRetour = parseInt(dateRetour[2]);
					var ageCalcul = anneeRetour - parseInt(dateNaissance[2],10);
					
					var differenceMois = parseInt(dateRetour[1],10) - parseInt(dateNaissance[1],10);
					if(differenceMois<0)
					{	//la date anniversaire de cette personne est dépassée avant la date de retour, il a donc 1 an de plus que la valeur contenue dans ageCalcul
						ageCalcul = ageCalcul-1;
					}
					if(differenceMois==0)
					{	//Nous nous trouvons en plein mois anniversaire de cette personne, il faut donc comparer le jour anniversaire avec le jour de retour pour déterminer son age
						var differenceJour = parseInt(dateRetour[0],10) - parseInt(dateNaissance[0],10);
						if(differenceJour<=0)
						{	//la date anniversaire de cette personne est dépassée, il a donc 1 an de plus que la valeur contenue dans ageCalcul
							ageCalcul = ageCalcul-1;
						}
					}
				
					if(ageCalcul>=18)
					{	//Il s'agit d'un adulte
						nbadultes++;
					}
					else
					{	//Il s'agit d'un mineur
						nbenfants++;
					}
					
				}
				else
				{	return;
				}
			}
			else
			{	//Il s'agit d'un adulte => Incrémentation du compteur
				nbadultes++;
			}
			nbpax++;
		}
		cpt++;
	}
	while(document.getElementById('chk_complexe_pax_cgos_'+cpt)!= undefined && cpt<20);	//Limiter sur la variable cpt<20 permet de rajouter une sécurité pour éviter de faire une boucle infinie...
			
	capacite["Single"] = 1;
	capacite["Twin"] = 2;
	capacite["Double"] = 2;
	capacite["Triple"] = 3;
	capacite["Quadruple"] = 4;
	
	if (nbadultes <= 0)
	{
		alert("vous devez avoir au moins une personne adulte");
		return;
	} 
	
	if (nbpax > 6)
	{
		alert("vous ne pouvez avoir plus de 6  personnes");
		return;
	}
	
	for(i=0; i<type.length; i++)
	{
		if (document.getElementById(type[i]).value != "")
		{
			nbchambre = nbchambre + (parseInt(document.getElementById(type[i]).value,10)*capacite[type[i]]);
		}
	}
	
	if (nbchambre == 0)
	{
		alert("vous devez sélectionner un type de chambre");
		return;
	}
	
	if (nbchambre > nbpax)
	{
		alert("certaines chambres sont vides");
		return;
	}
	if (nbpax>nbchambre)
	{
		alert("vous n'avez pas assez de chambres pour le nombre de personne");
		return;
	}
	return true;
}

//Fonction vérifiant qu'une destination a bien été sélectionnée
function controleListeDestination(id)
{
	var elt=document.getElementById(id);
	if (elt.selectedIndex==0)
	{
	  	alert("Veuillez sélectionner une destination");
	  	return false;
	}
	return true;
}

//Fonction permettant de déterminer qu'au moins un pax a été enregistré dans le formulaire de recherche du forfait dynamique
function verifPresencePaxs(form,is_cgos)
{
	switch(form)
	{		
		case 'form_col_droite':
			if(is_cgos==0)
			{	//Vérifier qu'au moins un adulte a été enregistré dans le formulaire
				if(parseInt(document.getElementById('zs_coldroite_nb_adultes').value,10)==0 || isNaN(parseInt(document.getElementById('zs_coldroite_nb_adultes').value,10)))
				{	alert("Saisie d'un adulte obligatoire");
					return false;
				}
			}
			else
			{	//Vérifier qu'un ayants-droit adulte ai été coché
				var nbadultes 	= 0;
				var cpt 		= 1;
				do
				{	if(document.getElementById('chk_formcoldroite_pax_cgos_'+cpt)!= undefined && document.getElementById('chk_formcoldroite_pax_cgos_'+cpt).checked)
					{	//Client CGOS coché => On vérifie sir le champ de date de naissance correspondant est présent
						if(document.getElementById('hd_formcoldroite_datenaiss_enfantcgos_'+cpt)!= undefined)
						{	//Le champ "date de naissance" correspondant existe => Il faut vérifier que cet Ayant-droit ai +/- 18 ans le jour du retour
							if(document.getElementById('zs_coldroite_date_retour').value != "")
							{	var dateRetour 		= document.getElementById('zs_coldroite_date_retour').value;
								var dateNaissance 	= document.getElementById('hd_formcoldroite_datenaiss_enfantcgos_'+cpt).value;
								
								//Premièrement : On splite la date de naissance et la date du retour
								var dateNaissance = new Array(dateNaissance.substring(6,8),dateNaissance.substring(4,6),dateNaissance.substring(0,4));
								var dateRetour = new Array(dateRetour.substring(0,2),dateRetour.substring(3,5),'20'+dateRetour.substring(6,8));
								
								//Deuxièmement:  comparaison entre l'année de naissance et l'année de retour pour obtenir l'age supposé de la personne
								var anneeRetour = parseInt(dateRetour[2]);
								var ageCalcul = anneeRetour - parseInt(dateNaissance[2],10);
								
								var differenceMois = parseInt(dateRetour[1],10) - parseInt(dateNaissance[1],10);
								if(differenceMois<0)
								{	//la date anniversaire de cette personne est dépassée avant la date de retour, il a donc 1 an de plus que la valeur contenue dans ageCalcul
									ageCalcul = ageCalcul-1;
								}
								if(differenceMois==0)
								{	//Nous nous trouvons en plein mois anniversaire de cette personne, il faut donc comparer le jour anniversaire avec le jour de retour pour déterminer son age
									var differenceJour = parseInt(dateRetour[0],10) - parseInt(dateNaissance[0],10);
									if(differenceJour<=0)
									{	//la date anniversaire de cette personne est dépassée, il a donc 1 an de plus que la valeur contenue dans ageCalcul
										ageCalcul = ageCalcul-1;
									}
								}
							
								if(ageCalcul>=18)
								{	//Il s'agit d'un adulte
									nbadultes++;
								}
							}
							else
							{	alert("Veuillez saisir une date de retour valide");
								return false;
							}
						}
						else
						{	//Il s'agit d'un adulte => Incrémentation du compteur
							nbadultes++;
						}
					}
					cpt++;
				}
				while(document.getElementById('chk_formcoldroite_pax_cgos_'+cpt)!= undefined && cpt<20 && nbadultes==0);	//Limiter sur la variable cpt<20 permet de rajouter une sécurité pour éviter de faire une boucle infinie...
				
				if(nbadultes==0)
					return false;
			}
		break;
		
		default:
		case 'simple':
			if(is_cgos==0)
			{	//Vérifier qu'au moins un adulte a été enregistré dans le formulaire
				if(parseInt(document.getElementById('zs_simple_nb_adultes').value,10)==0 || isNaN(parseInt(document.getElementById('zs_simple_nb_adultes').value,10)))
				{	alert("Saisie d'un adulte obligatoire");
					return false;
				}
			}
			else
			{	//Vérifier qu'un ayants-droit adulte ai été coché
				//Vérifier qu'un ayants-droit adulte ai été coché
				var nbadultes 	= 0;
				var cpt 		= 1;
				do
				{	if(document.getElementById('chk_simple_pax_cgos_'+cpt)!= undefined && document.getElementById('chk_simple_pax_cgos_'+cpt).checked)
					{	//Client CGOS coché => On vérifie sir le champ de date de naissance correspondant est présent
						if(document.getElementById('hd_simple_datenaiss_enfantcgos_'+cpt)!= undefined)
						{	//Le champ "date de naissance" correspondant existe => Il faut vérifier que cet Ayant-droit ai +/- 18 ans le jour du retour
							if(document.getElementById('zs_simple_date_retour').value != "")
							{	var dateRetour 		= document.getElementById('zs_simple_date_retour').value;
								var dateNaissance 	= document.getElementById('hd_simple_datenaiss_enfantcgos_'+cpt).value;
								
								//Premièrement : On splite la date de naissance et la date du retour
								var dateNaissance = new Array(dateNaissance.substring(6,8),dateNaissance.substring(4,6),dateNaissance.substring(0,4));
								var dateRetour = new Array(dateRetour.substring(0,2),dateRetour.substring(3,5),'20'+dateRetour.substring(6,8));
								
								//Deuxièmement:  comparaison entre l'année de naissance et l'année de retour pour obtenir l'age supposé de la personne
								var anneeRetour = parseInt(dateRetour[2]);
								var ageCalcul = anneeRetour - parseInt(dateNaissance[2],10);
								
								var differenceMois = parseInt(dateRetour[1],10) - parseInt(dateNaissance[1],10);
								if(differenceMois<0)
								{	//la date anniversaire de cette personne est dépassée avant la date de retour, il a donc 1 an de plus que la valeur contenue dans ageCalcul
									ageCalcul = ageCalcul-1;
								}
								if(differenceMois==0)
								{	//Nous nous trouvons en plein mois anniversaire de cette personne, il faut donc comparer le jour anniversaire avec le jour de retour pour déterminer son age
									var differenceJour = parseInt(dateRetour[0],10) - parseInt(dateNaissance[0],10);
									if(differenceJour<=0)
									{	//la date anniversaire de cette personne est dépassée, il a donc 1 an de plus que la valeur contenue dans ageCalcul
										ageCalcul = ageCalcul-1;
									}
								}
							
								if(ageCalcul>=18)
								{	//Il s'agit d'un adulte
									nbadultes++;
								}
							}
							else
							{	alert("Veuillez saisir une date de retour valide");
								return false;
							}
						}
						else
						{	//Il s'agit d'un adulte => Incrémentation du compteur
							nbadultes++;
						}
					}
					cpt++;
				}
				while(document.getElementById('chk_simple_pax_cgos_'+cpt)!= undefined && cpt<20 && nbadultes==0);	//Limiter sur la variable cpt<20 permet de rajouter une sécurité pour éviter de faire une boucle infinie...
				
				if(nbadultes==0)
					return false;
			}
		break;
	}
	return true;
}

//Rajout de la fonction de vérification de l'age des enfant
function AgeEnfants(id,numero)
{
  var elt=document.getElementById(id);
  
  if (isNaN(elt.value) && elt.value != "")
  {
  	alert("saisie incorrecte de l'age des enfants N°"+numero);
  	return false;
  }
  
  if(elt.value>17  && elt.value != "") 
  {
    elt.value=17;
    alert("erreur de saisie dans l'age de l'enfant n° "+numero);
    elt.focus();
    return false;
  }
  return true;
}

//Rajout de la fonction qui valide la sélection de l'hotel
function validationHotel(indice)
{
	document.getElementById('zh_id_hotel').value = indice;
	document.getElementById('frm_avion').submit();
}

//Function qui permet de cocher ou décocher les couples de vols
function VerifSelectionAllerRetour(indice,nbTransports)
{	//On décoche tout les autres vols ayant un indice de vol différent
	for(i=0;i<nbTransports;i++)
	{
	if(i!=indice)
		{	var elements_aller = document.getElementsByName('rd_aller_'+i);
			var elements_retour = document.getElementsByName('rd_retour_'+i);
			if(elements_aller.length>0)
			{	for(var j=0;j<elements_aller.length;j++)
				{	elements_aller[j].checked = '';
				}
			}
			if(elements_retour.length>0)
			{	for(var j=0;j<elements_retour.length;j++)
				{	elements_retour[j].checked = '';
				}
			}
		}
	}
	
}

//Fonction permettant d'enregistrer les vols sélectionnés par le client au moment de la validation de son choix
function SelectionVol(indice,nbTransports)
{	

	//On teste que l on ai un vol aller et un vol retour sélectionnés dans le bloc de propositions de vols identifié par "indice"
	if(indice!="@@")
	{	var volsAller = document.getElementsByName("rd_aller_"+indice);
		var volsRetour = document.getElementsByName("rd_retour_"+indice);

		VerifSelectionAllerRetour(indice,nbTransports);
		
		var valeurAller = '@@';
		if(volsAller.length == 1)
		{
			volsAller[0].checked = true,
			valeurAller = volsAller[0].value;
		}
		else
		{
			for(var i=0;i<volsAller.length;i++)
			{	if(volsAller[i].checked)
				{	valeurAller = volsAller[i].value;
				}
			}
		}
		
		var valeurRetour = '@@';
		if(volsRetour.length == 1)
		{
			volsRetour[0].checked = true,
			valeurRetour = volsRetour[0].value;
		}
		else
		{
			for(var i=0;i<volsRetour.length;i++)
			{	if(volsRetour[i].checked)
				{	valeurRetour = volsRetour[i].value;
				}
			}
		}
		
		if(valeurAller!='@@' && valeurRetour!='@@')
		{	var elt = document.getElementById("frm_avion");
			elt.hd_indice_transport.value = indice;
			elt.hd_selection_vol_aller.value = valeurAller;
			elt.hd_selection_vol_retour.value = valeurRetour;
		}
		else
		{	var elt = document.getElementById("frm_avion");
			elt.hd_indice_transport.value = '@@';
			elt.hd_selection_vol_aller.value = '@@';
			elt.hd_selection_vol_retour.value = '@@';
		}
	}
	
}

//Function qui permet de sélectionner les onglets Avions ou Train pour la sélection des transports
function affichListeTransport(transport)
{	if(transport=='avion')
	{	if(document.getElementById('td_avion_id') != undefined)
			document.getElementById('td_avion_id').className = 'selected';
		if(document.getElementById('td_train_id') != undefined)
			document.getElementById('td_train_id').className = '';
		
		if(document.getElementById('div_avion_id') != undefined)
			document.getElementById('div_avion_id').style.display='';
		if(document.getElementById('div_train_id') != undefined)
			document.getElementById('div_train_id').style.display='none';
	}
	else
	{	if(document.getElementById('td_avion_id') != undefined)
			document.getElementById('td_avion_id').className = '';
		if(document.getElementById('td_train_id') != undefined)
			document.getElementById('td_train_id').className = 'selected';
		
		if(document.getElementById('div_avion_id') != undefined)
			document.getElementById('div_avion_id').style.display='none';
		if(document.getElementById('div_train_id') != undefined)
			document.getElementById('div_train_id').style.display='';
	}
	return false;
}

//function GOOGLE qui permet de faire l'appel pour savoir si l'on peut situer l'hotel sur la carte!
function google(adresse,id_hotel,fournisseur)
{
		if (GBrowserIsCompatible()) {
						
	       	geocoder = new GClientGeocoder();
	       	geocoder.getLatLng(adresse,function(point) {
	        		if (!point) {
	              		document.getElementById("lien_google_"+id_hotel).style.display= "none";
										document.getElementById("fiche_produit_"+id_hotel).href = "javascript:MM_openBrWindow('pkd_recherche/fiche_prod_pkd.php?fournisseur="+fournisseur+"&code="+id_hotel+"&btn_google=no','hotel','status=yes,width=620,height=500,scrollbars=yes')";
	            		}
	            		
	       	});
	       
		}
}

//Rajour de la fonction tri par les étoile, on affiche ou l'on cache tous hotels qui ne font pas partie du filtre
function TriEtoile(etoile)
{	
	$("#idHotelPaP").val("");
	var nb_hotel = 0;
    $("#All_Hotel div").each(function() {
      var val = $(".e"+etoile,this).attr("class") ;

      if (etoile != 0)
      {
     	if(val != 'e'+etoile)
     	{
	     	if (this['id'].indexOf("E_",0) != -1)
	     	{
	        	$(this).hide();	
	        }
        }
        else
        {
        	$(this).show();
        	$("#idHotelPaP").val($("#idHotelPaP").val()+this['id']+"|");
        	nb_hotel = nb_hotel+1;
      	}
      }
      else
      {
      	if (this['id'].indexOf("E_",0) != -1)
	    {
	       $(this).show();
	       $("#idHotelPaP").val($("#idHotelPaP").val()+this['id']+"|");
	       nb_hotel = nb_hotel+1;
	    }
      }
      
    }) ;
    $("#nb_results").html('<img src="images/puce_points.gif" alt="::" align="absmiddle" />&nbsp;'+nb_hotel + ' hôtels disponibles');

	Page_A_Page(1,true);
}

//Rajout de la fonction qui permet de faire le page a page une fois la function de tri étoile appelé
function Page_A_Page(num_page,tri)
{
	//récupération des hotels
	var idHotel = "";
	idHotel = $("#idHotelPaP").val();
	idHotel = idHotel.substr(0,(idHotel.length -1));
	var idHotelTab = idHotel.split("|");
		
	if (num_page == 1)
	{
		var NumIdHotelMin = 0;
		var NumIdHotelMax = (num_page*10)-1;
	}
	else
	{
		var NumIdHotelMin = ((num_page-1)*10);
		var NumIdHotelMax = (num_page*10)-1;
	}
	
	for(i=0; i<idHotelTab.length; i++)
	{
		if (i >= NumIdHotelMin && i <= NumIdHotelMax)
		{
			$("#"+idHotelTab[i]).show();
		}
		else
		{
			$("#"+idHotelTab[i]).hide();
		}
	}
	$("#pagetri").val("false");
	//modification du page a page
	if (tri)
	{
		$("#pagetri").val("true");
		var nbPage = 0;
		
			nbPage = Math.floor(idHotelTab.length/10) + nbPage;
			if((idHotelTab.length%10) > 0)
			{
				nbPage = nbPage+1;
			}
			var PaPDeb = '<a href="#" onclick="SuivantPrecedent(\'precedent\','+nbPage+')"><b>Précédente</b></a><a href="#" onclick="SuivantPrecedent(\'precedent\','+nbPage+')"><img src="images/bt_liste_precedent.gif" border="0" align="absmiddle"></a>';
			var PaPFin = '<a href="#"onclick="SuivantPrecedent(\'suivant\','+nbPage+')"><img src="images/bt_liste_suivant.gif" border="0" align="absmiddle"></a><a href="#"onclick="SuivantPrecedent(\'suivant\','+nbPage+')"><b>Suivante</b></a>';
			var PaP = "";
			
			for(i=1;i<(nbPage+1);i++)
			{
				if(i != num_page)
				{
					PaP = PaP + '<a href="#" onclick="Page_A_Page('+i+',true)">'+i+'</a>';
				}
				else
				{
					PaP = PaP + i;
				}
			}
			
			if (idHotelTab.length > 10)
			{
				if(num_page == 1)
				{
					$("#pagination_hotel").html(PaP+PaPFin);
				}
				else if(num_page == nbPage)
				{
					$("#pagination_hotel").html(PaPDeb+PaP);
				}
				else
				{
					$("#pagination_hotel").html(PaPDeb+PaP+PaPFin);
				}
			}
			else
			{
				$("#pagination_hotel").html("");
			}
		
	}
	
	
		$("#pageencours").val(num_page);
	
}

//Rajout de la fonction qui supprime les couples de vol indirectes, ou cache les vols indirect si l'on a 1 aller et un retour directe dans les couple
function FiltreVolDirect(arret)
{
	if (arret == "")
	{
		if($("#vol_dir").attr("checked"))
		{
			var direct = true;
		}
		else
		{
			var direct = false;
		}
	}

	$("#div_avion_id table").each(function()
		{
			var nb_tr = $("#" +this['id']+ " tr").length ;
			var nb_aller = 0;
			var nb_retour = 0 ;
			//affiche/masque
			$("#" +this['id']+ " tr").each(
				function(){
					if(this['id'].indexOf('escale',0)!= -1)
					{
						if(direct)
						{
							$("#" +this).hide();
							nb_tr = nb_tr - 1 ;
						}
						else
						{
							$("#" +this).show();
							
						}
					}
					else
					{
						$(this).show();
						if (this['id'].indexOf('aller',0)!= -1) {
							nb_aller = nb_aller + 1 ;
						}
						if (this['id'].indexOf('retour',0)!= -1) {
							nb_retour = nb_retour + 1 ;
						}
					}
					
					
					if(!direct)
				{
					$("#" +this['id']).show();
				}
				}
				
				
			);
			
			//masquer les tables avec 1 aller ou 1 retour ou juste 3 tr
			//console.log(nb_retour) ;
			//console.log(nb_aller) ;
			if ((nb_aller == 0 || nb_retour == 0) && direct) {
				$(this).hide() ;
			}
			else
			{
				$(this).show() ;
			} 
			//console.log(nb_tr) ;
			
		}
	);
	
}

//Fonction permettant de valider le formulaire simple de "inc_pack_rech.php"
function ValidationFormSimple(form,isCGOS)
{
	if(form=="simple")
	{	if(isCGOS==1)
		{	if(verifPresencePaxs(form,isCGOS) && dateValide("zs_simple_date_depart") && dateValide("zs_simple_date_retour") && controleListeDestination("lst_simple_aeroport_arrivee"))
				$("#form_rech_simple").submit();
		}
		else
		{	if(verifPresencePaxs(form,isCGOS) && dateValide("zs_simple_date_depart") && dateValide("zs_simple_date_retour") && AgeEnfants("zs_simple_enfant1",1) && AgeEnfants("zs_simple_enfant2",2) && AgeEnfants("zs_simple_enfant3",3) && AgeEnfants("zs_simple_enfant4",4) && controleListeDestination("lst_simple_aeroport_arrivee"))
				$("#form_rech_simple").submit();
		}
	}
	else
	{	if(isCGOS==1)
		{	if(verifPresencePaxs(form,isCGOS) && dateValide("zs_coldroite_date_depart") && dateValide("zs_coldroite_date_retour") && controleListeDestination("lst_arrivee_coldroite"))
				$("#form_rech").submit();
		}
		else
		{	if(verifPresencePaxs(form,isCGOS) && dateValide("zs_coldroite_date_depart") && dateValide("zs_coldroite_date_retour") && AgeEnfants("zs_coldroite_nb_enfant1",1) && AgeEnfants("zs_coldroite_nb_enfant2",2) && AgeEnfants("zs_coldroite_nb_enfant3",3) && AgeEnfants("zs_coldroite_nb_enfant4",4) && controleListeDestination("lst_arrivee_coldroite"))
				$("#form_rech").submit();
		}
	}
}

//Fonction permettant de valider le formulaire complexe de "inc_pack_rech.php"
function ValidationFormComplexe(isCGOS)
{
	if(isCGOS==1)
	{	if(repartitionCGOS() && dateValide("zs_complexe_date_depart") && dateValide("zs_complexe_date_retour") && controleListeDestination("lst_complexe_aeroport_arrivee"))
			$("#form_rech_complexe").submit();
	}
	else
	{	if(repartition() && dateValide("zs_complexe_date_depart") && dateValide("zs_complexe_date_retour") && AgeEnfants("zs_complexe_enfant1",1) && AgeEnfants("zs_complexe_enfant2",2) && AgeEnfants("zs_complexe_enfant3",3) && AgeEnfants("zs_complexe_enfant4",4) && controleListeDestination("lst_complexe_aeroport_arrivee"))
			$("#form_rech_complexe").submit();
	}	
}

//Met le nom de l'hotel pour récupérer après la recherche
function selecthotel(){
	
	document.getElementById("nomhotel").value = document.getElementById("prop_hotel").options[document.getElementById("prop_hotel").selectedIndex].text;
	
}

function rch_hotel(){
	
	if (document.getElementById("nomhotel").value.length >=3){
		
		RechnomHotel(document.getElementById("lst_complexe_aeroport_arrivee").options[document.getElementById("lst_complexe_aeroport_arrivee").selectedIndex].value,document.getElementById("nomhotel").value,"prop_hotel")
		
		document.getElementById("prop_hotel").style.display = "";
		
	}
	else{
		
		document.getElementById("prop_hotel").style.display = "none";
		
	}
	
}

function RechnomHotel(destination,nom,selecteur){
	//alert(selecteur);
	$.ajax({
		   type: "GET",
		   url: "pkd_recherche/inc_pack_rech_hotel.php",
		   data: "destination="+destination+"&nom="+nom,
		   success: function(msg){
		     	var html = msg
				$("#prop_hotel").html(html);
		   }
 	});

}

function ValidRechNomHotel(destination)
{
	if (destination == "0")
	{
		$("#nomhotel").attr("disabled","disabled");
		$("#prop_hotel").hide();
		$("#prop_hotel").val("");
		$("#nomhotel").val("");
		
	}
	else
	{
		$("#nomhotel").attr("disabled","");
		$("#prop_hotel").val("");
		$("#nomhotel").val("");
	}
}

function SuivantPrecedent(action,nbPage)
{
	if(action == "precedent")
	{
		if ($("#pageencours").val() > 1)
		{
			$("#pageencours").val((parseInt($("#pageencours").val())-1));
			if($("#pagetri").val() == "true")
			{
				Page_A_Page($("#pageencours").val(),true);
			}
			else
			{
				Page_A_Page($("#pageencours").val(),true);
			}
		}
		else
		{
			return;
		}
	}
	else if(action == "suivant")
	{
		if ($("#pageencours").val() < nbPage)
		{
			$("#pageencours").val((parseInt($("#pageencours").val())+1));
			if($("#pagetri").val() == "true")
			{
				Page_A_Page($("#pageencours").val(),true);
			}
			else
			{
				Page_A_Page($("#pageencours").val(),true);
			}
		}
		else
		{
			return;
		}
	}

}

function reservationVols()
{
	var elt = document.getElementById("frm_avion");
	if (elt.hd_indice_transport.value == "@@" || elt.hd_selection_vol_aller.value == "@@" || elt.hd_selection_vol_retour.value == "@@")
	{
		alert("veuillez sélectionner un vol aller et un vol retour")
	}
	else
	{
		document.forms['frm_avion'].submit();
	}

}