<!-- HIDE FROM OTHER BROWSERS
haute_saison = new Array;
tarifs_semaine = new Array;

/******************************************
* Dates début et fin de haute saison
******************************************/
haute_saison[0] = new Array("12/06", "11/09");
/******************************************
* Tarifs par semaine par type de logement - avec indices tel qu'indiquées dans le select 'heb_type'
******************************************/
tarifs_semaine['Studio 2p'] = new Array(240,350);
tarifs_semaine['Appart 4p'] = new Array(370,590);
/******************************************
* Tarifs par nuité par type de logement - avec indices tel qu'indiquées dans le select 'heb_type'
******************************************/
tarifs_nuit = new Array;
/*
tarifs_nuit['Studio 2p'] = new Array(60,60);
tarifs_nuit['Appart 4p'] = new Array(90,90);
*/
tarifs_nuit['Studio 2p'] = new Array(0,100,160,180,200,220);
tarifs_nuit['Appart 4p'] = new Array(0,140,220,270,320,370);
/******************************************
* taux en % pour le calcul de l'acompte
******************************************/
taux_acompte	= '25';	
/******************************************
* Flip/flop 'par semaine' ou 'par nuit'
******************************************/
function OnClick_Check(e) {
	if (document.getElementById("heb_type").value== 0) {
		alert('Indiquez le type d\'hébergement désiré.');
	}
	if (e.name=='sem_heb') { 
		document.getElementById("sem_heb").checked = true;
		document.getElementById("nuit_heb").checked = false;
		document.getElementById("nuit_date").value = '';
	}
	if (e.name=='nuit_heb') {
		document.getElementById("sem_heb").checked = false;
		document.getElementById("nuit_heb").checked = true;
		document.getElementById("sem_date").value = '';
	}
	document.forms[0].sem_q.value = '';
	document.forms[0].nuit_q.value = '';
	document.forms[0].total.value = '';
	document.forms[0].acompte.value = '';
}

/******************************************
* Véfification du formulaire
******************************************/
function formCheck(f) {
	if ((document.getElementById("total").value=='') || document.getElementById("total").value== 0) {
		alert("Le total séjour est invalide");
		return false;
	} else {
		return true;
	}
}

/******************************************
* Haute saison (true) ou basse saison (false)
******************************************/
function Haute_Saison(date_sejour) {
	saison_debut_jj = haute_saison[0][0].substring(0,2);	
	saison_debut_mm = (haute_saison[0][0].substring(3,5)) -1;	
	saison_fin_jj = haute_saison[0][1].substring(0,2);	
	saison_fin_mm = (haute_saison[0][1].substring(3,5)) -1;
	sejour_annee = date_sejour.getFullYear();
	saison_debut_date 	= new Date(sejour_annee, saison_debut_mm, saison_debut_jj);
	saison_finuit_date 	= new Date(sejour_annee, saison_fin_mm, saison_fin_jj);
	if ( date_sejour>=saison_debut_date && date_sejour<=saison_finuit_date) return true;
return false;
}

/******************************************
* Recalcul du tarif 
******************************************/
function calcul(f) {
	var acompte = 0;
	var total = 0;
	var tarif = 0;
	var reduction = 1;
	/*
	* Vérification si les champs requis existent
	*/
	message = '';
	// Réservation de plus de 4 semaines  ?
	if (f.sem_q.value>4) {
		message = 'Merci de nous contacter pour les réservations de plus de 4 semaines.';
	}
	// type de réservation choisi ?
	if ((f.sem_q.value>0) || (f.nuit_q.value>0)) {
		if ((!f.sem_heb.checked) && (!f.nuit_heb.checked)) {
			message = 'Merci de choisir la réservation à la semaine ou par nuitée.';
		}
		// Effacement du champs si saisie dans le mauvais champs.
		else if ((f.sem_q.value>0) && (!f.sem_heb.checked)) {	
			document.forms[0].sem_q.value = '';
			document.forms[0].sem_date.value = '';
		} else if ((f.nuit_q.value>0) && (!f.nuit_heb.checked)) {
			document.forms[0].nuit_q.value = '';
			document.forms[0].nuit_date.value = '';	
		}
		// date d'arrivée choisie ?
		if (((f.sem_heb.checked)  && (f.sem_date.value=='')) || ((f.nuit_heb.checked) && (f.nuit_q.value>0) && (f.nuit_date.value==''))) {
			message = 'Merci d\'indiquer votre date d\'arrivée.';
		}
	}
	// hébergement choisi ?
	if (f.heb_type.value==0) {
		message = 'Indiquez le type d\'hébergement désiré.';
	}

	if (message!='') {
		alert(message);
		document.forms[0].sem_q.value = '';
		document.forms[0].nuit_q.value = '';
		document.forms[0].total.value = '';
		document.forms[0].acompte.value = '';
		return false;
	} else {
		/*
		* Calcul du tarif pour les réservations à la semaine.
		*/
		if ((f.sem_heb.checked) && (f.sem_date.value!='') && (!isNaN(f.sem_q.value))) {
			var sem_date = StrToDate(f.sem_date.value);
			for ( i=1; i<=f.sem_q.value; i++) {
				if (Haute_Saison(sem_date)) {
					tarif = tarifs_semaine[f.heb_type.value][1];
				} else {
					tarif = tarifs_semaine[f.heb_type.value][0];
				}
				if (i==2) reduction = 0.9; 
				if (i>2) reduction =  0.8;
				total += tarif * reduction;
				sem_date.setDate(sem_date.getDate()+7);
			}
		}
		/*
		* Calcul du tarif pour les réservations à la nuit.
		*/
		if ((f.nuit_heb.checked) && (f.nuit_date.value!='') && (!isNaN(f.nuit_q.value))) {
			var nuit_date = StrToDate(f.nuit_date.value);
			if (Haute_Saison(nuit_date)) {
				alert('Réservation par nuitée possible uniquement en période creuse.');
				document.forms[0].sem_q.value = '';
				document.forms[0].nuit_q.value = '';
				document.forms[0].total.value = '';
				document.forms[0].acompte.value = '';
				return false;
			} else if (f.nuit_q.value > 5) {
				alert('Réservation possible jusque 5 nuitées.');
				document.forms[0].nuit_q.value = '';
				Clear_fields();
				return false;
			} else {
				tarif = tarifs_nuit[f.heb_type.value][f.nuit_q.value];
				total += tarif;
				nuit_date.setDate(nuit_date.getDate() + f.nuit_q.value);
			}
		}	
		// Affichage à blanc si total = 0
		if (total==0) {
			total = '';
			acompte = '';
			f.total.value = '';
			f.acompte.value = '';
		} else {
			// Calcul du montant total et de l'acompte
			acompte = Math.round(total * taux_acompte /100)  ;
			// Mise en forme pour affichage
			f.acompte.value = acompte.toFixed(2);
			f.total.value = total.toFixed(2);
			// Affichage de la date du jour
			datedujour = new Date();
			f.date.value = datedujour.getDate() + "/" + (datedujour.getMonth()+1) + "/" + datedujour.getFullYear();	
			// Indicateur de traitement JavaScript
			if (total>0) { 
				f.js_flag.value = "true"; 
			} else { 
				f.js_flag.value = ""; 
			}
		}	
	}
}

/******************************************
* Conversion d'une chaine jj/mm/aaaa en objet Date
******************************************/
function StrToDate(strDate) {	  
	var day = strDate.substring(0,2);
	var month = strDate.substring(3,5);
	var year = strDate.substring(6,10);
	d = new Date();
	d.setDate(day);
	d.setMonth(month-1);
	d.setFullYear(year); 
	return d;  
}
 
//*****************************************
// Arrondi au centimes supérieur..
// pour corriger les pbs de calcul de JS (ex 3*3.3)
//*****************************************
function lround(n) {
  with (Math) { 
  n = (round(n*100))/100;
  }
  return n;
  }
//*****************************************
// Valeur en centimes
//*****************************************
function centimes(n) {
  n = n*100;
  return n;
  }

// STOP HIDING FROM OTHER BROWSERS -->



