var jour=new Date(), jour2=new Date(jour.getTime()+405*86400000);
var jour3=new Date(jour.getTime()+86400000), annee_deb, annee_fin;

annee_deb=jour.getFullYear();
annee_fin=jour2.getFullYear();

annee_deb_choix=2003
annee_fin_choix=2003


var max_nb_nuit      = 60;
var max_nb_jour_resa = 405;
var today            = new Date();
var today            = new Date(today.getFullYear(), today.getMonth(), today.getDate());
var max_depart       = new Date(today.getTime() + ( 86400000 * max_nb_jour_resa ) );

var formulaire;
var annee_debut;
var date_arrivee;
var date_depart;
var nb_nuit;

function init_nb_nuit()
{
  date_depart.setTime( date_arrivee.getTime() + ( 86400000 * 3 ) ) ;
  if ( date_depart.getTime() > max_depart.getTime() ) date_depart = max_depart ;
  maj_form();
}

function dates_dispo(maDate, maDate2)
{
	formulaire    = document.resaDate ; //ecran ;
	//annee_debut   = parseInt(formulaire.annee_arrivee.options[0].text);
  date_arrivee  = new Date((maDate * 1000));
  date_depart   = new Date((maDate2 * 1000));
  //modif du 31/10/01 pour gérer changement de mois à l'initialisation
  //if (date_depart.getDate() < date_arrivee.getDate() ) { date_depart = new Date (date_arrivee.getTime() + 86400000);}
  maj_form();
}

function dates_init()
{
  formulaire    = document.resaDate ; //ecran ;
  annee_debut   = parseInt(formulaire.annee_arrivee.options[0].text);
  date_arrivee  = new Date(
    formulaire.annee_arrivee.selectedIndex+annee_debut,
    formulaire.mois_arrivee.selectedIndex,
    formulaire.jour_arrivee.selectedIndex+1);
  date_depart   = new Date(
    formulaire.annee_depart.selectedIndex+annee_debut,
    formulaire.mois_depart.selectedIndex,
    formulaire.jour_depart.selectedIndex+1);
  //modif du 31/10/01 pour gérer changement de mois à l'initialisation
  if (date_depart.getDate() < date_arrivee.getDate() ) { date_depart = new Date (date_arrivee.getTime() + 86400000);}
  maj_form();
}

function maj_form()
{
  nb_nuit = ( date_depart.getTime() - date_arrivee.getTime() ) / 86400000 ;
  if (nb_nuit > max_nb_nuit) {
    nb_nuit = max_nb_nuit;
    date_depart.setTime(date_arrivee.getTime() + ( 86400000 * max_nb_nuit ) );
  }
  if (date_depart.getTime() > max_depart.getTime()) {
    date_depart = max_depart ;
    nb_nuit = ( date_depart.getTime() - date_arrivee.getTime() ) / 86400000 ;
  }
	//AJOUT pour date maxi paiement par chèques
	//alert(formulaire.date_cheque.value*1000 +" // "+date_arrivee.getTime());
	if ( (formulaire.date_cheque.value>0) && (formulaire.date_cheque.value *1000 > date_arrivee.getTime()) ) {
		alert ("Cet hôtel n'accepte que les réservations par chèque. En conséquence seuls les séjours débutant dans plus de 15 jours sont disponibles en ligne.");
		date_arrivee = new Date((formulaire.date_cheque.value  * 1000));;
		date_depart.setTime(date_arrivee.getTime() + ( 86400000 * nb_nuit ) );
	}
	
  formulaire.jour_arrivee.selectedIndex  = date_arrivee.getDate() - 1;
  formulaire.mois_arrivee.selectedIndex  = date_arrivee.getMonth();
  formulaire.annee_arrivee.selectedIndex = date_arrivee.getFullYear() - annee_debut;
  formulaire.jour_depart.selectedIndex  = date_depart.getDate() - 1;
  formulaire.mois_depart.selectedIndex  = date_depart.getMonth();
  formulaire.annee_depart.selectedIndex = date_depart.getFullYear() - annee_debut;
	formulaire.nb_nuit.selectedIndex = nb_nuit - 1;

}

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;
}

function change_nb_nuit()
{
  nb_nuit = formulaire.nb_nuit.selectedIndex + 1;
  date_depart.setTime( date_arrivee.getTime() + ( 86400000 * nb_nuit ) ) ;
  if ( date_depart.getTime() > max_depart.getTime() ) date_depart = max_depart ;
  maj_form();
}

function change_date_arrivee(letype)
{
  var jour= formulaire.jour_arrivee.selectedIndex + 1;
  var mois= formulaire.mois_arrivee.selectedIndex;
  var annee=annee_debut + formulaire.annee_arrivee.selectedIndex;
  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.setTime=(max_depart.getTime() - 86400000) }
  else { date_arrivee = nouv_date }
  date_depart.setTime( date_arrivee.getTime() + ( 86400000 * nb_nuit ) ) ;
  maj_form();
}

function met_arrivee(jour,mois,annee)
{
  formulaire.jour_arrivee.selectedIndex=jour-1;
  formulaire.mois_arrivee.selectedIndex=mois-1;
  formulaire.annee_arrivee.selectedIndex=annee-annee_debut;
  change_date_arrivee('');
}

function change_date_depart(letype)
{
  var jour=formulaire.jour_depart.selectedIndex + 1;
  var mois=formulaire.mois_depart.selectedIndex;
  var annee=annee_debut + formulaire.annee_depart.selectedIndex;
  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() <= date_arrivee.getTime())	{
    nouv_date.setTime( date_arrivee.getTime() + 86400000 );
  }
  date_depart=nouv_date;
  maj_form();
}

function met_depart(jour,mois,annee)
{
  formulaire.jour_depart.selectedIndex=jour-1;
  formulaire.mois_depart.selectedIndex=mois-1;
  formulaire.annee_depart.selectedIndex=annee-annee_debut;
  change_date_depart('');
}

