// JavaScript Document
function afficheBulle(txt,X,Y){
	//alert(X);
	document.getElementById("bulle").innerHTML = txt;
	document.getElementById("bulle").style.top=Y-10+ "px";
	document.getElementById("bulle").style.left=X+15+ "px";
	document.getElementById("bulle").style.textAlign="left";
	document.getElementById("bulle").style.visibility='visible';
}

function PopupCentrer(page,largeur,hauteur,options) {
  var top=(screen.height-hauteur)/2;
  var left=(screen.width-largeur)/2;
  window.open(page,"","top="+top+",left="+left+",width="+largeur+",height="+hauteur+","+options);
}

function ValidMoteurCircuit(){
      var frm=document.RechercheCircuit	
	  var sError='';
      InitLabelClass();
   if(frm){
	  
		 if((document.getElementById("dateDepartMin").value!='' && document.getElementById("dateDepartMin").value!='jj/mm/aaaa') && !(isDate(document.getElementById("dateDepartMin").value))){
           sError+="- date de départ minimum (au format jj/mm/aaaa).\n ";
           oLabel=GetLabelFor('dateDepartMin');
           oLabel.className='Error';
         }
		 if((document.getElementById("dateDepartMax").value!="" && document.getElementById("dateDepartMin").value!='jj/mm/aaaa') && !(isDate(document.getElementById("dateDepartMin").value))){
		    sError+="- date de départ maximum (au format jj/mm/aaaa).\n";
           oLabel=GetLabelFor('dateDepartMax');
           oLabel.className='Error';
         }
		 if((document.getElementById("dateDepartMax").value!="" && isDate(document.getElementById("dateDepartMax").value)) && (document.getElementById("dateDepartMin").value!="" && isDate(document.getElementById("dateDepartMin").value))){
           if(Compare_Dates(document.getElementById("dateDepartMin").value, document.getElementById("dateDepartMax").value)==-1){
		   sError+="- la date de retour est inférieur à la date de départ.\n";
           oLabel=GetLabelFor('dateDepartMax');
           oLabel.className='Error';
		   }
         }
		if(sError==''){
           return true;
         }else{
           alert('Les informations suivantes semblent être manquantes ou incorrectes :\n'+sError);
           return false;
         } 
	}
}

function UpdateValue(sIdInput, sValue){
	if(document.getElementById(sIdInput)){
	  document.getElementById(sIdInput).value=sValue;
	  dateMax=sValue;
	}
}
// Enleve le '0' des nb < 10
function ConvNum(tabDeDate) {
for (i=0; i<tabDeDate.length; i++)
tabDeDate[i] = (tabDeDate[i].charAt(0)=='0')?tabDeDate[i].charAt(1):tabDeDate[i];
return tabDeDate;
}
// Retourne 1 si valeur_date1 < valeur_date2
// 0 si valeur_date1 = valeur_date2
// -1 si valeur_date1 > valeur_date2
function Compare_Dates(valeur_date1, valeur_date2)
{var tabDate1 = valeur_date1.split('/');
tabDate1 = ConvNum(tabDate1);
var datTest_Date1 = new Date(parseInt(tabDate1[2]), parseInt(tabDate1[1])-1, parseInt(tabDate1[0]));
var tabDate2 = valeur_date2.split('/');
tabDate2 = ConvNum(tabDate2);
var datTest_Date2 = new Date(parseInt(tabDate2[2]), parseInt(tabDate2[1])-1, parseInt(tabDate2[0]));
return (datTest_Date2-datTest_Date1==0)?"0":(datTest_Date2-datTest_Date1<0)?"-1":"1";
}
function isDate(value)
{
	var bErr;
	var strValeur;
	var strJour, strMois, strAnnee;
    var intJour, intMois, intAnnee;
	var strSeparateur1, strSeparateur2;

	bErr = 0;
	strValeur = value;
    
    // Verification de la longueur
	if (strValeur.length != 10)
	    bErr = 1;

    // Separation des chaines j/m/a
	strJour = strValeur.substring(0, 2);        // jour
	strSeparateur1 = strValeur.substring(2, 3); // '/'
	strMois = strValeur.substring(3, 5);        // mois
	strSeparateur2 = strValeur.substring(5, 6); // '/'
	strAnnee = strValeur.substring(6);          // année

    // Conversion des chaines en entier
    intJour = parseInt(strJour, 10);
    if (isNaN(intJour))
        bErr = 1;
    intMois = parseInt(strMois, 10);
    if (isNaN(intMois))
        bErr = 1;
    intAnnee = parseInt(strAnnee, 10);
    if (isNaN(intAnnee))
        bErr = 1;
	if (intAnnee < 1900 || intAnnee > 2099)
        bErr = 1;

	// Erreurs de base
	//

        if (intJour < 1 || intJour > 31)
            bErr = 1;
        if (strSeparateur1 != '/')
            bErr = 1;
        if (intMois < 1 || intMois > 12)
            bErr = 1;
        if (strSeparateur2 != '/')
            bErr = 1;


	// Erreurs avancées

	// Mois comportant 30 jours
	if (intMois == 4 || intMois == 6 || intMois == 9 || intMois == 11)
	{
		if (intJour == 31)
		    bErr = 1;
	}

	// Février, année bisextile
	if (intMois == 2)
	{
        if (intJour > 29)
		    bErr = 1;
        if ((intJour == 29) && (!AnneeBisextile(intAnnee)))
            bErr = 1;
	}

    if (bErr == 1)
    {
        return false;
    }

    return true;
}

function plusDeCriteres(){
	if(document.getElementById('plusDeCriteres')){
		if(document.getElementById('plusDeCriteres').style.display=='inline'){
			document.getElementById('plusDeCriteres').style.display='none';
			document.getElementById('strPlusDeCriteres').innerHTML='+ de critères ...';
			ReinitCriteres();
		}
		else{
			document.getElementById('plusDeCriteres').style.display='inline';	
			document.getElementById('strPlusDeCriteres').innerHTML='- de critères ...';
		}
	}
}

function ReinitCriteres() {
	if(document.getElementById('duree')) document.getElementById('duree').selectedIndex=0;
	if(document.getElementById('budget')) document.getElementById('budget').selectedIndex=0;
	if(document.getElementById('circuit')) document.getElementById('circuit').selectedIndex=0;
	if(document.getElementById('theme')) document.getElementById('theme').selectedIndex=0;	
}

//////////////////////////////////////////////////////////
	// Fonction qui gère le retour une fois que la requête
	// de l'objet xmlhttp s'est exécutée
	function AfficherComboRegion(http){
		if(http.readyState==4){
			//readystate 4 - la page a fini de s'exécuter
			var res=http.responseText;
			if(res!='0'){
  			//Affichage de la liste des regions
        //Element.show("texteRegion");
        $("comboRegion").innerHTML= res;
        Element.show("comboRegion");
			}
			else{
       // Element.hide("texteRegion");
        Element.hide("comboRegion");
			}
		}
	}

	//////////////////////////////////////////////////////////
	// Fonction déclenchée sur l'evt onchange et qui apelle
	// la page recherche-specifique.vb.asp avec le code pays sélectionné
	function SelectRegion(val){
  	if(val!=''){
  	  url='inc/recherche-specifique.vb.asp';
      pars='pays='+escape(val)+'&codeDept=<%=codeDept%>&region=<%=region%>&typeRech=region';
      var myAjax = new Ajax.Request(url, {method: 'get', parameters: pars, onComplete: AfficherComboRegion});
		}
	}

	function AfficherPaysMetaZone(http){
		if(http.readyState==4){
			//readystate 4 - la page a fini de s'exécuter
			var res=http.responseText;
			if(res!='0'){
			//alert(res);
  			//Affichage de la liste des pasy de la meta zone
        $("comboPaysMetaZone").innerHTML= res;
			}
		}
	}
	//////////////////////////////////////////////////////////
	// Fonction déclenchée sur l'evt onchange et qui apelle
	// la page recherche-specifique.vb.asp avec le code pays et le code de la meta zone sélectionné
	function SelectPays(val,isCircuit){
  	//if(val!=''){
  	  url='inc/recherche-specifique.vb.asp';
      pars='Pays=<%=pays%>&MetaZone='+escape(val)+'&typeRech=metaZone&isCircuit='+escape(isCircuit)+'';
	  //alert(url+pars);
      var myAjax = new Ajax.Request(url, {method: 'get', parameters: pars, onComplete: AfficherPaysMetaZone});
		//}
	}