<!--
var max_nb_nuit      = 23;
var max_nb_jour_resa = 405;
var today            = new Date();
var max_depart       = ajouter_nbJours(today,max_nb_jour_resa);
var formulaire;
var annee_debut;
var date_arrivee;
var date_depart;
var nb_nuit;

//==================================================================
//====  Fonction pour le calcul des nbjours date depart et retour
//==================================================================
//verifier si l'année est bissextile ou pas
function bissextile(annee) {
	if (annee%4==0 && annee %100!=0 || annee%400==0)
		return true;
	else
		return false;
}
//Recuperer le nombre de jours d'un mois
function get_nbJours_Mois(mois,annee) {
	//Nombre de jours par mois
	var DaysOfMonths = new Array(31,28,31,30,31,30,31,31,30,31,30,31);
        // For fevrier only - annee bisextile
        if (bissextile(annee))
            DaysOfMonths[1] =  29;
        else
            DaysOfMonths[1] =  28;
	return DaysOfMonths[mois];
}
//Trouver la date date1 + jours
function ajouter_nbJours(date1,jours) {
	var C_Day 	= date1.getDate() + jours;
	var C_Month = date1.getMonth();
	var C_Year  = date1.getFullYear();
	while ( C_Day > get_nbJours_Mois(C_Month,C_Year) ) {
		C_Day	= C_Day - get_nbJours_Mois(C_Month,C_Year);
		C_Month++;
		if (C_Month == 12) {
                	C_Month = 0;
                	C_Year++;
        	}
	}
        var outputDate = new Date(C_Year,C_Month,C_Day);
	return outputDate;
}
//Trouver la date date1 - jours
function diminuer_nbJours(date1,jours) {
	var C_Day 	= date1.getDate() - jours;
	var C_Month = date1.getMonth();
	var C_Year  = date1.getFullYear();
	while ( C_Day > get_nbJours_Mois(C_Month,C_Year) ) {
		C_Day	= C_Day + get_nbJours_Mois(C_Month,C_Year);
		C_Month--;
		if (C_Month == -1) {
        	        C_Month = 11;
	                C_Year--;
            	}
	}
        var outputDate = new Date(C_Year,C_Month,C_Day);
		return outputDate;
}
//Le nombre de jours entre deux années a1 et a2
function nb_jour_annee(a1,a2) {
	n=0;
	if (a2>a1)
		for (i=a1; i<a2; i++) {
			n += 365;
			if (bissextile(i))
				n++
		}
	return n;
}
//le nombre de jours entre 01/01 et date1 de la meme année
function nb_01_01(date1) {
	nb_mois=new Array(12);
	nb_mois=[0,31,59,90,120,151,181,212,243,273,304,334];
	j=date1.getDate();
	m=date1.getMonth();
	a=date1.getFullYear();
	nb=nb_mois[m]+j-1;
	if (bissextile(a) && m>1)
		nb++;
	return nb;
}
//le nombre de jours entre deux date date1 et date2
function nb_jour(date1,date2) {
	nb=nb_jour_annee(date1.getFullYear(),date2.getFullYear()) - nb_01_01(date1) + nb_01_01(date2);
	
	return nb;
}

//==================================================================
//====  Fonction pour le traitement des formulaires accorhotels
//==================================================================
function dates_init(myForm) {

  formulaire    = myForm ;
  annee_debut 	= new Date();
  annee_debut= annee_debut.getYear();
  if ((Math.abs(annee_debut)+"").length < 4) annee_debut = annee_debut + 1900;

  //init de la date d'arrivee javascript si elle est deja preselectionnée
    if( formulaire.jour_arrivee.selectedIndex==0 &&
        formulaire.mois_arrivee.selectedIndex==0 &&
        formulaire.annee_arrivee.selectedIndex==0 ) {
            date_arrivee  = new Date();
            date_depart   = new Date();
            maj_form();
  } else {
   	    unsetForm();
  }
}

//Fonction de mise a jour des champs date arrivée, date depart et nbre nuit
//en fonction des variables javascript correspondantes
function maj_form(){
     /*
	 nb_nuit = nb_jour(date_arrivee,date_depart);
      if (nb_nuit > max_nb_nuit) {
        nb_nuit = max_nb_nuit;
        date_depart = ajouter_nbJours(date_arrivee,max_nb_nuit);
      }
	  */
      if (date_depart.getTime() > max_depart.getTime()) {
        date_depart = max_depart ;
        nb_nuit = nb_jour(date_arrivee,date_depart);
      }
      formulaire.jour_arrivee.selectedIndex  = date_arrivee.getDate();
      formulaire.mois_arrivee.selectedIndex  = date_arrivee.getMonth()+1;
      formulaire.annee_arrivee.selectedIndex = date_arrivee.getFullYear() - annee_debut + 1;

      formulaire.jour_depart.value  = date_depart.getDate();
      formulaire.mois_depart.value  = date_depart.getMonth() + 1;
      formulaire.annee_depart.value = date_depart.getFullYear();

      formulaire.nb_nuit.selectedIndex = nb_nuit;

      if (document.jourSemaineA != null)
      document.jourSemaineA.src = '/fr/images/reservation/jours_' + date_arrivee.getDay() + '.gif';
      if (document.jourSemaineD != null)
      document.jourSemaineD.src = '/fr/images/reservation/jours_' + date_depart.getDay() + '.gif';
}

//Fonction appelée lorsqu'on change le jour, le mois ou l'année de la date d'arrivée
function change_date_arrivee(letype) {
    if (    (letype=='j'&&formulaire.jour_arrivee.selectedIndex==0) ||
            (letype=='m'&&formulaire.mois_arrivee.selectedIndex==0) ||
            (letype=='a'&&formulaire.annee_arrivee.selectedIndex==0)  ) {
   	    unsetForm();
    } else {
              if (      formulaire.jour_arrivee.selectedIndex==0 ||
                        formulaire.mois_arrivee.selectedIndex==0 ||
                        formulaire.annee_arrivee.selectedIndex==0   ) {
                    setToDay();
                    if (letype=='j') {
                          formulaire.mois_arrivee.selectedIndex  = today.getMonth()+1;
                          formulaire.annee_arrivee.selectedIndex = today.getFullYear() - annee_debut + 1;
                    }
                    if (letype=='m') {
                          formulaire.jour_arrivee.selectedIndex  = today.getDate();
                          formulaire.annee_arrivee.selectedIndex = today.getFullYear() - annee_debut + 1;
                    }
                    if (letype=='a') {
                          formulaire.jour_arrivee.selectedIndex  = today.getDate();
                          formulaire.mois_arrivee.selectedIndex  = today.getMonth()+1;
                    }
              }
              var jour=formulaire.jour_arrivee.selectedIndex;
              var mois=formulaire.mois_arrivee.selectedIndex-1;
              var annee=annee_debut + formulaire.annee_arrivee.selectedIndex-1;
              if(letype=="j") {
                if ( ( jour < today.getDate() )&& ( mois == today.getMonth() ) )
                    {mois=mois+1;}
              }
              if(letype=="m") {
                if ( ( mois< today.getMonth() )&& ( annee == today.getFullYear() ) )
                    {annee=annee+1;}
              }
              var nouv_date=bonne_date(annee,mois,jour);
              if (nouv_date.getTime() < today.getTime() )           { date_arrivee = today }
              else if (nouv_date.getTime() >= max_depart.getTime()) { date_arrivee = diminuer_nbJours(max_depart,1); }
              else                                                  { date_arrivee = nouv_date }
              date_depart = ajouter_nbJours(date_arrivee,nb_nuit);
              maj_form();
    }
}

// Fonction appelée lorsque l'internaute change le nbre de jours
function change_nb_nuit() {
    var nb_nuit_tmp = formulaire.nb_nuit.selectedIndex;
    if (formulaire.nb_nuit.selectedIndex==0) {
   	    unsetForm();
    } else {
        if (    formulaire.jour_arrivee.selectedIndex==0 ||
                formulaire.mois_arrivee.selectedIndex==0 ||
                formulaire.annee_arrivee.selectedIndex==0   ) {
            setToDay();
            formulaire.jour_arrivee.selectedIndex  = today.getDate();
            formulaire.mois_arrivee.selectedIndex  = today.getMonth()+1;
            formulaire.annee_arrivee.selectedIndex = today.getFullYear() - annee_debut + 1;
        }
        date_depart = ajouter_nbJours(date_arrivee,nb_nuit_tmp);
        if ( date_depart.getTime() > max_depart.getTime() ) date_depart = max_depart ;
        maj_form();
    }
}

//Fonction permettant de remplir le jour/mois/annee de la date d'arrivée en fction de la date selectionnée dans le
//popup du calendrier
function met_arrivee(jour,mois,annee) {
      if (  formulaire.jour_arrivee.selectedIndex==0  ||
            formulaire.mois_arrivee.selectedIndex==0  ||
            formulaire.annee_arrivee.selectedIndex==0 ||
            formulaire.annee_arrivee.selectedIndex==0 ) {
              setToDay();
              formulaire.jour_arrivee.selectedIndex  = today.getDate();
              formulaire.mois_arrivee.selectedIndex  = today.getMonth()+1;
              formulaire.annee_arrivee.selectedIndex = today.getFullYear() - annee_debut + 1;
              formulaire.nb_nuit.selectedIndex = 1;
              formulaire.jour_depart.value  = date_depart.getDate();
              formulaire.mois_depart.value  = date_depart.getMonth() + 1;
              formulaire.annee_depart.value = date_depart.getFullYear();
      }
      formulaire.jour_arrivee.selectedIndex=jour;
      formulaire.mois_arrivee.selectedIndex=mois;
      formulaire.annee_arrivee.selectedIndex=annee-annee_debut+1;
      change_date_arrivee('');
}

//Remet les champs jour, mois, année d'arrivée et nbNuits à '-'
function unsetForm() {
  	formulaire.jour_arrivee.selectedIndex=0;
	formulaire.mois_arrivee.selectedIndex=0;
	formulaire.annee_arrivee.selectedIndex=0;

    formulaire.jour_depart.value  = '-';
    formulaire.mois_depart.value  = '-';
    formulaire.annee_depart.value = '-';
	formulaire.nb_nuit.selectedIndex=0;
}

//Fonction de mise a jour des champs date arrivée, date depart et nbre nuit
//en fonction des variables javascript correspondantes
function setToDay() {
    date_arrivee = today;
    nb_nuit = 1;
    date_depart = ajouter_nbJours(date_arrivee, nb_nuit);
}

function bonne_date(annee,mois,jour)
{
  var nouv_date=new Date(annee,mois,jour);
  while(nouv_date.getDate() != jour) {
    jour--;
    nouv_date=new Date(annee,mois,jour);
  }
  return nouv_date;
}

//==================================================================
//====  Fonction pour l'affichage du calendrier
//==================================================================
var jour=new Date();
var jour2=ajouter_nbJours(jour, 405);
var jour3=new Date(ajouter_nbJours(jour, 1));
var annee_deb=jour.getFullYear();
var annee_fin=jour2.getFullYear();

    annee_deb_choix=2008



    annee_fin_choix=2008

function calendrier_arrivee(myForm) {
	var theMonth;
	var theYear;
    if (    formulaire.jour_arrivee.selectedIndex==0 ||
            formulaire.mois_arrivee.selectedIndex==0 ||
            formulaire.annee_arrivee.selectedIndex==0   ) {
		var todayDate  = new Date();
		theMonth=todayDate.getMonth()+1;
		theYear=todayDate.getFullYear();
	} else {
		theMonth=myForm.mois_arrivee.value;
		theYear=myForm.annee_arrivee.value;
	}
	cal_arrivee=window.open(
		'/accorhotels/commun/calendrier.jsp?date_min=4/24/2007&date_max=7/1/2008'+
			'&mois='+theMonth+
			'&annee='+theYear+
			'&qdate=arrivee',
		'calen_arrivee',
      'width=246,height=196,toolbar=no,location=no,menubar=no,resizable=no,status=no,screenX=0,left=0,screenY=0,top=0'
	);
}
//-->




// Validation du formulaire
function checkville() {

var langue="nl";
 var resaId = "";
 var bfurl = 'http://www.accorhotels.com/accorhotels/lien_externe.svlt?goto=rech_ville_dates';
 if ((document.formulaire.hotel_ou_ville.value=="") || (document.formulaire.hotel_ou_ville.value==null)) {
  alert("Veuillez saisir une destination.");
  return false;
 }

 var nuit;
 var jarrivee;
 var marrivee;
 var aarrivee;
 var jdepart;
 var mdepart;
 var adepart;

jarrivee=parseInt(document.formulaire.jour_arrivee.value);
marrivee=parseInt(document.formulaire.mois_arrivee.value);
aarrivee=parseInt(document.formulaire.annee_arrivee.value);
jdepart=parseInt(document.formulaire.jour_depart.value);
mdepart=parseInt(document.formulaire.mois_depart.value);
adepart=parseInt(document.formulaire.annee_depart.value);
nom_ville=document.formulaire.hotel_ou_ville.value;

nuit = document.formulaire.nb_nuit.value;



var el = document.formulaire.elements.length;
 for (var n = 0; n<el; n++) {
  if (document.formulaire.elements[n].name == 'submit') {
   bfurl = bfurl;
  } else if (document.formulaire.elements[n].name == 'nb_nuit') {
   bfurl = bfurl += '&nb_nuit='+nuit;
  } else if (document.formulaire.elements[n].name == 'jour_arrivee') {
   bfurl = bfurl += '&jour_arrivee='+jarrivee;
  } else if (document.formulaire.elements[n].name == 'mois_arrivee') {
   bfurl = bfurl += '&mois_arrivee='+marrivee;
  } else if (document.formulaire.elements[n].name == 'annee_arrivee') {
   bfurl = bfurl += '&annee_arrivee='+aarrivee;
  } else if (document.formulaire.elements[n].name == 'jour_depart') {
   bfurl = bfurl += '&jour_depart='+jdepart;
  } else if (document.formulaire.elements[n].name == 'mois_depart') {
   bfurl = bfurl += '&mois_depart='+mdepart;
  } else if (document.formulaire.elements[n].name == 'annee_depart') {
   bfurl = bfurl += '&annee_depart='+adepart;
  }  else if (document.formulaire.elements[n].name == 'hotel_ou_ville') {
   bfurl = bfurl += '&nom_ville='+nom_ville;
  }
  else {
   bfurl += '&'+document.formulaire.elements[n].name+'='+document.formulaire.elements[n].value;
  }
 }
 
 var url = bfurl + "&force_origine_motcle=reservez&langue="+langue;
 location.href=url;
 return false;
}