/**
 * FONCTIONS COMMUNES JAVASCRIPT
 */
function makearray(n) {
	this.length = n;
	for(var i = 1; i <= n; i++)
		this[i] = 0;
	return this;
}

hexa = new makearray(16);
function fade(sr, sg, sb, er, eg, eb, step){
	for(var i = 0; i < 10; i++)
	hexa[i] = i;
	hexa[10]="a"; hexa[11]="b"; hexa[12]="c";
	hexa[13]="d"; hexa[14]="e"; hexa[15]="f";
	for(var i = 0; i <= step; i++){
		setbgColor(
		Math.floor(sr * ((step-i)/step) + er * (i/step)),
		Math.floor(sg * ((step-i)/step) + eg * (i/step)),
		Math.floor(sb * ((step-i)/step) + eb * (i/step)));
	}
}

function customfade(){
/**
 * si fonction customfade() désactivé (return) -> activer
 * la couleur de fond sur BODY (arkiane.css)
 */
return
	sr = 255
	sg = 255
	sb = 255
	er = 80
	eg = 53
	eb = 174
	step = 64
	for(var i = 0; i < 10; i++)
		hexa[i] = i;
		hexa[10]="a"; hexa[11]="b"; hexa[12]="c";
		hexa[13]="d"; hexa[14]="e"; hexa[15]="f";
		for(var i = 0; i <= step; i++)
		{
			setbgColor(
			Math.floor(sr * ((step-i)/step) + er * (i/step)),
			Math.floor(sg * ((step-i)/step) + eg * (i/step)),
			Math.floor(sb * ((step-i)/step) + eb * (i/step)));
		}
}

function hex(i) {
	if (i < 0)
		return "00";
	else if (i > 255)
		return "ff";
		else return "" + hexa[Math.floor(i/16)] + hexa[i%16];
}

function setbgColor(r, g, b) {
	var hr = hex(r), hg = hex(g), hb = hex(b);
	document.bgColor = "#"+hr+hg+hb;
}

function DisableBtnSuite(){
/**
 * pour éviter les clicks successifs
 * le formulaire est référencé
 */
	document.forms[0].b_next.disabled = 1;
	document.forms[0].submit();
/**
 * si on veut nommer le formulaire
 * document.nom_du_formulaire.nom_du_bouton.disabled = 1;
 * document.nom_du_formulaire.submit();
 */
}

function EnableCC(){
/**
 * active les zones de saise CB
 */
	document.forms[0].num_cb.disabled = 0;
	document.forms[0].mois_exp.disabled = 0;
	document.forms[0].an_exp.disabled = 0;
	document.forms[0].crypto.disabled = 0;
}
function DisableCC(){
/**
 * desactive les zones de saise CB
 */
	document.forms[0].num_cb.disabled = 1;
	document.forms[0].mois_exp.disabled = 1;
	document.forms[0].an_exp.disabled = 1;
	document.forms[0].crypto.disabled = 1;
	document.forms[0].num_cb.value = "";
	document.forms[0].mois_exp.value = "";
	document.forms[0].an_exp.value = "";
	document.forms[0].crypto.value = "";
}

function updateChbx(idChbx,idZone,val1,val2){
/**
 * Change la valeur de la zone idZone
 * par val1 si la checbox idChbx est cochée
 * par val2 si la checbox idChbx est décochée
 */
 	var chbx = document.getElementById(idChbx);
 	var zone = document.getElementById(idZone);

	if (chbx.checked==true) {
		zone.innerHTML = val1;
	} else {
		zone.innerHTML = val2;
	}
}

function currentpage(numpage){
	document.form_dispo.no_appel.value = numpage;
	document.form_dispo.submit();
}

function envoiMail(){
	action="mailto:";
	document.courrier.action=action;
}

function MM_openBrWindow(theURL,winName,features, myWidth, myHeight, isCenter) {
	if(window.screen)if(isCenter)if(isCenter=="true"){
		var myLeft = (screen.width-myWidth)/2;
		var myTop = (screen.height-myHeight)/2;
		features+=(features!='')?',':'';
		features+=',left='+myLeft+',top='+myTop;
	}
	window.open(theURL,winName,features+((features!='')?',':'')+'width='+myWidth+',height='+myHeight);
}

function verif_coord(lang,mailconf){
	if(document.form_coord.cc_accept.checked == false){
		switch (lang){
			case "FR" :
				msg = "Vous devez accepter les conditions générales pour poursuivre !";
				break;
			default :
				msg="You don't have accepted booking conditions !";
		}
		setTimeout('Flash(msg)', speed);
		document.form_coord.cc_accept.focus();
		return false;

	}
	zone=document.form_coord.nom.value;
	if ((zone.length<1) || (zone == "")){
		switch (lang)	{
			case "FR" :
				msg="Veuillez entrer votre nom !";
				break;
			default :
				msg="Enter your last name !";
		}
		setTimeout('Flash(msg)', speed);
		document.form_coord.nom.focus();
		return false;
	}
	zone=document.form_coord.prenom.value;
	if ((zone.length<1) || (zone == "")){
		switch (lang)	{
			case "FR" :
				msg="Veuillez entrer votre prénom !";
				break;
			default :
				msg="Enter your first name !";
		}
		setTimeout('Flash(msg)', speed);
		document.form_coord.prenom.focus();
		return false;
	}
	zone=document.form_coord.adr1.value;
	if ((zone.length<1) || (zone == "")){
		switch (lang)	{
			case "FR" :
				msg="Veuillez entrer votre adresse !";
				break;
			default :
				msg="Enter your address !";
		}
		setTimeout('Flash(msg)', speed);
		document.form_coord.adr1.focus();
		return false;
	}
	zone=document.form_coord.cp.value;
	if ((zone.length<1) || (zone == "")){
		switch (lang)	{
			case "FR" :
				msg="Veuillez entrer votre code postal !";
				break;
			default :
				msg="Enter your zip code !";
		}
		setTimeout('Flash(msg)', speed);
		document.form_coord.cp.focus();
		return false;
	}
	zone=document.form_coord.ville.value;
	if ((zone.length<1) || (zone == "")){
		switch (lang)	{
			case "FR" :
				msg="Veuillez entrer votre ville !";
				break;
			default :
				msg="Enter your city !";
		}
		setTimeout('Flash(msg)', speed);
		document.form_coord.ville.focus();
		return false;
	}
	zone=document.form_coord.pays.value;
	if ((zone.length<1) || (zone == "")){
		switch (lang)	{
			case "FR" :
				msg="Veuillez entrer votre pays !";
				break;
			default :
				msg="Enter your country !";
		}
		setTimeout('Flash(msg)', speed);
		document.form_coord.pays.focus();
		return false;
	}
	zone=document.form_coord.tel.value;
	if ((zone.length<1) || (zone == "")){
		switch (lang)	{
			case "FR" :
				msg="Veuillez entrer votre téléphone !";
				break;
			default :
				msg="Enter your phone number !";
		}
		setTimeout('Flash(msg)', speed);
		document.form_coord.tel.focus();
		return false;
	}
	zone=document.form_coord.email.value;
	if ((zone.length>0) && (zone != "")){
		pos_arro = -1;
		pos_point = -1;
		pos_arro = zone.indexOf('@');
		if (pos_arro > -1){pos_point = zone.substring(pos_arro+1).indexOf('.');}
		if ((pos_arro == -1) || (pos_point == -1)) {
			switch (lang)	{
				case "FR" :
					msg="Ce n'est pas une adresse électronique valable !";
					break;
				default :
					msg="Wrong email !";
			}
			setTimeout('Flash(msg)', speed);
			document.form_coord.email.focus();
			return false;
	    }
    }else{
		switch (lang)	{
		case "FR" :
			msg="Veuillez entrer votre email !";
			break;
		default :
			msg="Enter your email !";
		}
		setTimeout('Flash(msg)', speed);
		document.form_coord.email.focus();
		return false;
	}

	/*cc_secure_cheked = "true"*/ /*oc191004-cb obligatoire */
	cc_secure_cheked = document.form_coord.cc_secure[1].checked + "";
	/* ac030206 si ancienne ligne, pas le choix de paiement > CB obligatoire là on a le choix */

	if(cc_secure_cheked == "true"){
	  zone=document.form_coord.num_cb.value;
	  // if ((zone.length>0) && (zone != "")){
			indexe_espace=zone.indexOf(" ");

		if ( (zone.length!=16) || (indexe_espace!=-1 ) || isNaN(zone) || zone == "" || zone.length == 0 ) {
			switch (lang)	{
				case "FR" :
					msg="Le numéro de carte de crédit doit comporter 16 chiffres sans espaces.";
					break;
				default :
					msg="Card number is 16 digits without spaces.";
			}
			setTimeout('Flash(msg)', speed);
			document.form_coord.num_cb.focus();
			return false;
		}
		mois_exp = document.form_coord.mois_exp.value;
		an_exp   = document.form_coord.an_exp.value;
		if ( isNaN(mois_exp) || isNaN(an_exp)  ) {
			switch (lang)	{
				case "FR" :
					msg="Le date d'expiration doit être renseignée";
					break;
				default :
					msg="Expiration date must be selected.";
			}
			setTimeout('Flash(msg)', speed);
			document.form_coord.mois_exp.focus();
			return false;
		}
	  // }
	  zone=document.form_coord.crypto.value;
	  if ((zone.length<1) || (zone == "")){
		switch (lang)	{
			case "FR" :
				msg="Veuillez entrer votre Cryptogramme visuel";
				break;
			default :
				msg="Enter your Three-digit CVV number";
		}
		setTimeout('Flash(msg)', speed);
		document.form_coord.crypto.focus();
		return false;
	}
    }
	document.form_coord.cc_accept.checked = false;
	document.form_coord.b_next.disabled = 1;

}

function Flash(mess) {
	if (visible == 0) {
		alert(msg);
		window.status=mess;
		visible=1;
	} else {
		alert(msg); // am 01/09/2003
		window.status="";
		visible=0;
	}
}

function verif_prest(){
return true
// à faire
alert(document.form_prest.rubr_qte.value);
	if (document.form_prest.rubr_qte.value < 0){
		alert("erreur");
		return false;
	}
	var chkZ = 1;
	for(i=0;i<document.form_prest.rubr_qte.value.length;++i)
		if(document.form_prest.rubr_qte.value.charAt(i) < "0"
			|| document.form_prest.rubr_qte.value.charAt(i) > "9")
			chkZ = -1;
		if(chkZ == -1) {
			switch (lang){
				case "FR" :
					alert("Quantité non autorisée !");
					break;
			default :
					alert("Quantity is incorrect !");
			}
			document.form_prest.rubr_qte.focus();
			return false;
		}
}

/*
The Arguments for windows.open

You have a number of options for the third argument. When you define any of them, the remaining Boolean values (which can be true/false or yes/no or 1/0) are all set to false/no/0. Whichever you choose to use, all of your options go into the same quoted string, with commas between the values, and no spaces are allowed between them.

height
    Defines the height of the window in pixels. Percentage values don t work.
width
    Defines the width. Again, you ll have no joy with percentages.
left
    Supported by version 4 browsers and above, this sets how far removed the window appears from the left of the screen. In pixels.
top
    Partner to left, this pushes the window off the top of the screen.
resizable
    Set to true or false, this may allow the user to resize the window.
scrollbars
    Another Boolean value, this adds scrollbars to the new window. If your content may be longer then the dimensions you ve specified, make sure this is set to yes.
toolbar
    Specifies whether the basic back/forward toolbar should be visible. If there are links to follow in your new page, set this to yes.
menubar
    Specifies whether the main toolbar (File, Edit, ...) is shown.
location
    Specifies whether the location toolbar (address bar) is shown.
status
    Specifies whether the new window can have a status bar. Best set to yes.
directories
    Specifies whether the directories toolbar is shown (Links toolbar in IE).
fullscreen
    Internet Explorer-only Boolean attribute which may open the window in fullscreen. It s annoying don t use it.
dependant
    Netscape 4-only attribute which makes the popup dependant on the status of the main window. If the main window is closed, the popup closes with it.
screenX & screenY
    Old Netscape attributes for defining the window s position on the page. Use left and top in their place.

*/

var newwindow;
function openpopup(url, width, height)
{
	newwindow=window.open(url,'name','height='+height+',width='+width+',left=0, top=0,resizable=yes,scrollbars=yes,toolbar=no,status=no')
	if (window.focus) {newwindow.focus()}
}

/*function verif_date(){
	//oc140607-rpl parseint en parsefloat bicoze 08->0 en parseint !!!
	var today=new Date()
	var date_jour  = document.form_cs.opti_debut_jour.value;
	var date_mois  = document.form_cs.opti_debut_mois.value;
	var date_annee = document.form_cs.opti_debut_annee.value;
	//alert("anneeParam "+parseFloat(date_annee)+"| anneeGet "+parseFloat(today.getFullYear()));
	//alert("moisParam "+parseFloat(date_mois)+"| moisGet "+parseFloat(today.getMonth()+1));
	//alert("jourParam "+parseFloat(date_jour)+"| jourGet "+parseFloat(today.getDate()));


	var totParam = parseFloat(date_jour)+parseFloat(date_mois)+parseFloat(date_annee)
	var totGet   = parseFloat(today.getDate())+parseFloat(today.getMonth()+1)+parseFloat(today.getFullYear())
	alert("totParam " + totParam + " || totGet " + totGet);

	if(parseFloat(date_annee)<parseFloat(today.getFullYear())) {
		alert("ANNEE Vous ne pouvez pas effectuer de réservation en ligne débutant ce jour."+"Vous pouvez utiliser le calendrier pour connaitre les jours d'arrivée possibles.");
	} else {
		if(parseFloat(date_mois)<parseFloat(today.getMonth()+1)) {
			alert("MOIS Vous ne pouvez pas effectuer de réservation en ligne débutant ce jour."+"Vous pouvez utiliser le calendrier pour connaitre les jours d'arrivée possibles.");
		} else {
			if(parseFloat(date_jour)<parseFloat(today.getDate())) {
				alert("JOUR Vous ne pouvez pas effectuer de réservation en ligne débutant ce jour."+"Vous pouvez utiliser le calendrier pour connaitre les jours d'arrivée possibles.");
			} else {
				document.form_cs.submit();
			}
		}
	}*/
function control_date_inf_today(form_cs,today_day,today_month,today_year){
	var now=new Date(today_year,today_month,today_day);
	var dte=new Date(form_cs.opti_debut_annee.value,(form_cs.opti_debut_mois.value),form_cs.opti_debut_jour.value);
	var mkt_now=now.getTime();
	var mkt_dte=dte.getTime();
	if (mkt_now>mkt_dte) alert("La date que vous avez saisie est antérieure à la date d'aujourd'hui !");
	else form_cs.submit();
}


function AffMenuFly(img,contenu,decalX,decalY) {
	var finalPosX=findPosX(img)+decalX;
	var finalPosY=findPosY(img)+img.height+decalY;

	if (document.layers) {
	document.layers["menuDHTML"].document.write(contenu);
	document.layers["menuDHTML"].document.close();
	document.layers["menuDHTML"].top=finalPosY;
	document.layers["menuDHTML"].left=finalPosX;
	document.layers["menuDHTML"].visibility="show";
	document.layers["menuDHTML"].style.zIndex="50";
	}
	else if (document.all)  {
		document.all["menuDHTML"].innerHTML=contenu;
	document.all["menuDHTML"].style.top=finalPosY;
	document.all["menuDHTML"].style.left=finalPosX;
	document.all["menuDHTML"].style.visibility="visible";
	document.all["menuDHTML"].style.zIndex=50;
   }else if (document.getElementById) {
	document.getElementById("menuDHTML").innerHTML=contenu;
	document.getElementById("menuDHTML").style.top=finalPosY;
	document.getElementById("menuDHTML").style.left=finalPosX;
	document.getElementById("menuDHTML").style.visibility="visible";
	}
}


function verif_gdispo(lot_pax) {
	var total_pers = 0
	if ((document.fdisp.assurance[0].checked==false) && (document.fdisp.assurance[1].checked==false)) {
		alert("Vous ne vous êtes pas prononcé au sujet de l'assurance.");
	} else {
		if ((document.fdisp.adulte.value=="0")) {
			alert("Veuillez indiquer le nombre d'adultes inscrits à ce séjour.");
		}else{
			total_pers = parseInt(document.fdisp.adulte.value) + parseInt(document.fdisp.enfant.value)
			if(total_pers > lot_pax) {
					alert("La capacité de l'hébergement choisi ne permet pas d'accueillir ce nombre de personnes.Merci de modifier vos critères.");
			} else {
				document.fdisp.submit();
			}
		}
	}
}

function verif_gcoord(lang){
	zone=document.form_coord.nom.value;
	if ((zone.length<1) || (zone == "")){
		switch (lang)	{
			case "FR" :	msg="Merci de saisir votre nom dans la zone prévue à cet effet.";
				break;
			default :	msg="Merci de saisir votre nom dans la zone prévue à cet effet.";
		}
		alert(msg);
		document.form_coord.nom.focus();
		return false;
	}
	zone=document.form_coord.prenom.value;
	if ((zone.length<1) || (zone == "")){
		switch (lang)	{
			case "FR" :	msg="La saisie du prénom est obligatoire.";
				break;
			default :	msg="La saisie du prénom est obligatoire.";
		}
		alert(msg);
		document.form_coord.prenom.focus();
		return false;
	}
	zone=document.form_coord.adr1.value;
	if ((zone.length<1) || (zone == "")){
		switch (lang)	{
			case "FR" :	msg="Merci de renseigner votre adresse.";
				break;
			default :	msg="Merci de renseigner votre adresse.";
		}
		alert(msg);
		document.form_coord.adr1.focus();
		return false;
	}
	zone=document.form_coord.cp.value;
	if ((zone.length<1) || (zone == "")){
		switch (lang)	{
			case "FR" :	msg="Vous devez renseigner votre code postal.";
				break;
			default :	msg="Vous devez renseigner votre code postal.";
		}
		alert(msg);
		document.form_coord.cp.focus();
		return false;
	}
	zone=document.form_coord.ville.value;
	if ((zone.length<1) || (zone == "")){
		switch (lang)	{
			case "FR" :	msg="Merci de renseigner votre ville.";
				break;
			default :	msg="Enter your city !";
		}
		alert(msg);
		document.form_coord.ville.focus();
		return false;
	}
	zone=document.form_coord.pays.value;
	if ((zone.length<1) || (zone == "")){
		switch (lang)	{
			case "FR" :	msg="Veuillez entrer votre pays !";
				break;
			default :	msg="Enter your country !";
		}
		alert(msg);
		document.form_coord.pays.focus();
		return false;
	}
	zone=document.form_coord.tel1.value;
	if ((zone.length<1) || (zone == "")){
		switch (lang)	{
			case "FR" :	msg="La saisie de votre numéro de téléphone est obligatoire.";
				break;
			default :	msg="La saisie de votre numéro de téléphone est obligatoire.";
		}
		alert(msg);
		document.form_coord.tel1.focus();
		return false;
	}
	zone=document.form_coord.email.value;
	if ((zone.length>0) && (zone != "")){
		pos_arro = -1;
		pos_point = -1;
		pos_arro = zone.indexOf('@');
		if (pos_arro > -1){pos_point = zone.substring(pos_arro+1).indexOf('.');}
		if ((pos_arro == -1) || (pos_point == -1)) {
			switch (lang)	{
				case "FR" :	msg="Merci de remplir correctement votre adresse e-mail.";
					break;
				default :	msg="Merci de remplir correctement votre adresse e-mail.";
			}
			alert(msg);
			document.form_coord.email.focus();
			return false;
	    }
	 }else{
		switch (lang)	{
		case "FR" :	msg="Merci de remplir correctement votre adresse e-mail.";
			break;
		default :	msg="Merci de remplir correctement votre adresse e-mail.";
		}
		alert(msg);
		document.form_coord.email.focus();
		return false;
	 }

	document.form_coord.submit();
	//document.form_coord.b_next.disabled = 1;


}

