
var CompteurGratuit=0;
var inCalculTotal=false;
var Saison ="";
var selectLits = new Array();
var selectOptions = new Array();
var corrOptions = new Array();
var codeOptionsLibre = new Array();

document.observe("dom:loaded", function () {
	Init_bw();
});

function Init_bw()
{
	//TODELETE
	$('Envoyer').onclick="";
	$('Envoyer').observe("click",function(){
		validateStep1();
	});
	// \TODELETE\ //

	if(DatesDispo=="INDISPONIBLE")
	{
		var Tab = $$('.tabledetail');
		Tab = Tab[0].ancestors();
		Tab[0].innerHTML = TXTINDISPONIBLE+'<a href="index.asp?id='+FORMCONTACTID+'&s='+$('LibelleFiche').innerHTML+'">'+FORMULAIRECONTACT+'</a>';
		$('Envoyer').style.display="none";
	}
	else
	{
		InitDs();
		//Debug("init ds ok");
		setDates();
		//Debug("init dates ok");
		InitOptions();
		//Debug("init options ok");
		resetOpts();
		modifSelectEnfants($('NbPersonnes'));
		modifSelectEnfants($('NbPersonnes'));
		modifQteLits();
		affDateNaissance($('NbEnfants'));
		modifChoixLits();
		InitForm();
		//Assurance annulation
		Retour= "<input onclick='calculTotal()' type='checkbox' id='Assurance'><label for='Assurance'>"+TXTASSURANCE+"<a target='_blank' href='/images/files/assurance.pdf'>"+ICI+"</a>.</label><br />";
		$('Supplements').innerHTML+=Retour;
		affSupplements();
		$('NbNuits').innerHTML = DureeSejour-1;
	}
}

function validateStep1(){
	initContenuParticipants();
	show('kat2');
	hide('kat1');
}

function initContenuParticipants(){
	var Tab = $$('.person');
	var Nb = $('NbPersonnes').options[$('NbPersonnes').selectedIndex].value;
	if(Tab.length!=Nb){
		if(Tab.length<Nb){
			for(var i=Tab.length;i<Nb;i++){
				buildInfoPerson(i+1);
			}
		}else if(Tab.length>Nb){
			for(var i=Tab.length;i>Nb;i--){
				Tab[i-1].remove();
			}
		}
	}
}

function buildInfoPerson(indice){
	var div = makeEl("div");
	div.addClassName("person");
	div.innerHTML = PERSONNENUMERO +" " +indice;

	var divG = makeEl("div",div);
	div.addClassName("divG");

	var divP = makeEl("div",divG);
	divP.addClassName("divLibNP");
	divP.innerHTML = '<input type="text" name="prenom'+indice+'" class="md_new_input" value="'+PRENOM+'" onclick="if (this.value==\''+PRENOM+'\'){this.value=\'\'};" />';	

	var divN = makeEl("div",divG);
	divN.addClassName("divLibNP");
	divN.innerHTML = '<input type="text" name="nom'+indice+'" class="md_new_input" value="'+NOM+'" onclick="if (this.value==\''+NOM+'\'){this.value=\'\'};" />'

	var br = makeEl("br",divG);
	br.style.clear="both";

	var divD = makeEl("div",divG);
	divD.style.paddingTop="5px";
	divD.innerHTML = DATENAISSANCE+': <input type="text" name="jour'+indice+'" class="md_new_input2" value="'+J.toUpperCase()+'" onclick="if (this.value==\''+J.toUpperCase()+'\'){this.value=\'\'};" /> / <input type="text" name="mois'+indice+'" class="md_new_input2" value="'+M.toUpperCase()+'" onclick="if (this.value==\''+M.toUpperCase()+'\'){this.value=\'\'};" /> / <input type="text" name="annee'+indice+'" class="md_new_input3" value="'+A.toUpperCase()+'" onclick="if (this.value==\''+A.toUpperCase()+'\'){this.value=\'\'};" />';

	$('contenuParticipants').appendChild(div);
}

function getParticipantsInfos(){
	var Tab = $$('.person');
	var form = $('detailProduct'); 
	Retour = "";
	for(var i=1;i<=Tab.length;i++){
		if(i==1){
			if(form.elements['prenom'+i].value=="" || form.elements['prenom'+i].value==PRENOM || form.elements['nom'+i].value=="" || form.elements['nom'+i].value==NOM){
				alert(REMPLIKO);
				return false;
			}
		}
		if(form.elements['prenom'+i].value!="" && form.elements['prenom'+i].value!=PRENOM && form.elements['nom'+i].value!="" && form.elements['nom'+i].value!=NOM){
				Retour += "<b>"+i+" - </b>" + form.elements['prenom'+i].value + " " +form.elements['nom'+i].value;
				if(form.elements['jour'+i].value != J.toUpperCase() && form.elements['jour'+i].value!="" && form.elements['mois'+i].value!=M.toUpperCase() && form.elements['mois'+i].value!="" && form.elements['annee'+i].value!=A.toUpperCase() && form.elements['annee'+i].value!=""){
					Retour += " " + form.elements['jour'+i].value + "/" + form.elements['mois'+i].value + "/" + form.elements['annee'+i].value;
				}
				Retour +="<br />";
		}
		
	}
	return Retour;
}

function InitForm()
{
	var Form = $('detailProduct');
	Form.action+="&view=1";
}

function InitOptions()
{
	var reg = new RegExp("^OPT_#[0-9]+$","i");
	var Form = $('detailProduct');
	for(var i=0;i<Form.elements.length;i++)
	{
		if(reg.test(Form.elements[i].name))
		{
			corrOptions[Form.elements[i].title] = Form.elements[i].id;
		}
	}
}

function resetOpts()
{
	var reg = new RegExp("^OPT_#[0-9]+$","i");
	var Form = $('detailProduct');
	for(var i=0;i<Form.elements.length;i++)
	{
		if(reg.test(Form.elements[i].name))
		{
			Form.elements[i].value=0;
		}
	}
}

function el(parent)
{
	var el = document.createElement('input');
	Element.extend(el);
	el.setAttribute('type','hidden');
	parent.appendChild(el);
	return el;
}

function affSupplements()
{
	var Nb = $('NbPersonnes').options[$('NbPersonnes').selectedIndex].value;
	if(NuitSupp!="" && NuitSupp!=0)
	if(NuitSupp!="" && NuitSupp!=0)
	{
		var Retour = NUITEESUP+" : <select name='nuiteeSuppNb' id='nuiteeSuppNb' onchange='calculTotal()'></select> "+NUITEES;
		$('Supplements').innerHTML+=Retour;
		setIncrementalSelect($('nuiteeSuppNb'),4);
	}
	
	if(DemiPension!="" && DemiPension!=0)
	{
		var Retour = DEMIPENSION+" : <select name='demiPensionJours' id='demiPensionJours' onchange='calculTotal()'></select> "+JOURS;
		if($('Supplements').innerHTML!="")
			$('Supplements').innerHTML+="<br />";
		$('Supplements').innerHTML+=Retour;
		setIncrementalSelect($('demiPensionJours'),DureeSejour-1);
	}
	
	if(Options!="" && Options!="0")
	{
		var Tab = Options.split("|");
		var Retour="";
		for(var i=0;i<Tab.length;i++)
		{
			var Temp = Tab[i].split('#');
			if(Retour!="")
				Retour+="<br />";
			
			Retour+=Temp[0]+" - "+format(Temp[1])+' €/'+PERS+'<input type="hidden" name="prix_options_'+i+'" id="prix_options_'+i+'" value="'+parseFloat(Temp[1].replace(',','.'),10)+'" /><input type="hidden" id="libelle_options_'+i+'" name="libelle_options_'+i+'" value="'+Temp[0]+'" /><select name="options_'+i+'" id="options_'+i+'" onchange="calculTotal()"></select> '+PERSONNES;
			selectOptions[selectOptions.length]=i;
			codeOptionsLibre[i] = findOPT("'"+ Temp[0] +"'");
		}
		if($('Supplements').innerHTML!="")
			$('Supplements').innerHTML+="<br />";
		$('Supplements').innerHTML+=Retour;
		setSelectOptions();
	}
	
}

function findOPT(chaine)
{
	var form = $('detailProduct');
	for(var i=0;i<form.elements.length;i++)
	{
		if(form.elements[i].getAttribute("title")==chaine || "'"+form.elements[i].getAttribute("title")+"'"==chaine)
			return form.elements[i].id;
	}
	return 0;
}

function setSelectOptions()
{
	var Nb = $('NbPersonnes').options[$('NbPersonnes').selectedIndex].value;
	for(var i=0;i<selectOptions.length;i++)
	{
		setIncrementalSelect($('options_'+selectOptions[i]),Nb);
	}
}

function setDates()
{
	var Tab = DatesDispo.split('|');
	for(var i=0;i<Tab.length;i++)
	{
		var Tab2 = Tab[i].split("-");
		for(var j=0;j<Tab2.length;j++)
		{
			var chaine = Tab2[j].split("/");
			if(j==0)
				DatesDebut[DatesDebut.length] = chaine[2].toString()+chaine[1].toString()+chaine[0].toString();
			else if(j==1)
			{
				DatesFin[DatesFin.length] = chaine[2].toString()+chaine[1].toString()+chaine[0].toString();
			}
		}
	}
	var Tab = DatesSupp.split('|');
	for(var i=0;i<Tab.length;i++)
	{
		var Tab2 = Tab[i].split("-");
		if(Tab2.length>1)
		{
			for(var j=0;j<Tab2.length;j++)
			{
				var chaine = Tab2[j].split("/");
				if(j==0)
					DebutSupp[DebutSupp.length] = chaine[2].toString()+chaine[1].toString()+chaine[0].toString();
				else if(j==1)
					FinSupp[FinSupp.length] = chaine[2].toString()+chaine[1].toString()+chaine[0].toString();
				else if(j==2)
					CoutSupp[CoutSupp.length] = chaine[0];
			}
		}
	}
}

function isPast(m,y)
{
	var ladate=new Date();
	mtemp = ladate.getMonth() +1;
	ytemp = ladate.getFullYear().toString();
	if(mtemp<10)
		mtemp = "0"+mtemp.toString();
	else
		mtemp = mtemp.toString();
	
	m = parseInt(m,10);
	if(m<10)
		m = "0"+m.toString();
	else
		m = m.toString();
	
	if(ytemp+mtemp>y.toString()+m.toString())
		return true;
	else
		return false;
}

function is_dispo(d,m,y)
{
	
	var ladate =new Date();
	var dtemp = ladate.getDate();
	if(ladate.getDate()<10)
		dtemp = "0"+ parseInt(ladate.getDate(),10);
	var mtemp = (ladate.getMonth()+1);
	if((ladate.getMonth()+1)<10)
		mtemp = "0"+parseInt((ladate.getMonth()+1),10);
	var DateActuelle = ladate.getFullYear() + mtemp.toString() + dtemp.toString();

	var dtemp = d;
	if(d<10)
		dtemp = "0"+parseInt(d,10);
	var mtemp = m;
	if(m<10)
		mtemp = "0"+parseInt(m,10);
	var Chaine =y.toString()+mtemp.toString()+dtemp.toString();
	
	if(Chaine>DateActuelle)
	{
		for(var i=0;i<DatesDebut.length;i++)
		{
			ladate.setDate(1);
			ladate.setFullYear(DatesFin[i].substr(0,4));
			ladate.setMonth(parseInt(DatesFin[i].substr(4,2),10)-1);
			ladate.setDate(parseInt(DatesFin[i].substr(6,2),10));
			var TimeDateFin = ladate.getTime() - ((parseInt(DureeSejour,10)-1)*24*3600*1000);
			
			ladate.setTime(TimeDateFin);
			var moistemp = (ladate.getMonth()+1).toString();
			if(moistemp.length==1)
				moistemp = "0"+moistemp;
			var datetemp = ladate.getDate().toString();
			if(datetemp.length==1)
				datetemp = "0"+datetemp;
			TimeDateFin = ladate.getFullYear().toString()+moistemp+datetemp;
			
			if(Chaine>=DatesDebut[i] && Chaine<=TimeDateFin)
			{
				return true;
			}
		}
	}
	return false;
}

function is_supp(d,m,y)
{
	var Cout=0;
	var dtemp = d;
	if(d<10)
		dtemp = "0"+d;
	var mtemp = m;
	if(m<10)
		mtemp = "0"+m;
	var Chaine =y.toString()+mtemp.toString()+dtemp.toString();
	for(var i=0;i<DebutSupp.length;i++)
	{
		if(Chaine>=DebutSupp[i] && Chaine<=(FinSupp[i]))
		{
			return CoutSupp[i];
		}
	}
	return 0;
}

function get_Supp_OPT(d,m,y)
{
	var dtemp = d;
	if(d<10)
		dtemp = "0"+d;
	var mtemp = m;
	if(m<10)
		mtemp = "0"+m;
	var Chaine =y.toString()+mtemp.toString()+dtemp.toString();
	for(var i=0;i<DebutSupp.length;i++)
	{
		if(Chaine>=DebutSupp[i] && Chaine<=(FinSupp[i]))
		{
			return "+"+DebutSupp[i].substr(6,2)+DebutSupp[i].substr(4,2)+DebutSupp[i].substr(2,2)+FinSupp[i].substr(6,2)+FinSupp[i].substr(4,2)+FinSupp[i].substr(2,2);
		}
	}
}

function Debug(chaine)
{
	if(typeof(console)!="undefined")
		console.log(chaine);
}

function resetCalcul()
{
	var Tab = new Array("infos","enfants","gratuit","adultes","singles","reducTriple","nuiteesSupp","demiPensions","options","affAssurance","coutTotal");
	for(var i=0;i<Tab.length;i++)
	{
		if($(Tab[i]))
			$(Tab[i]).innerHTML = "";
	}
}

function calculTotal()
{
	if(inCalculTotal)
		return;
	inCalculTotal = true;
	resetOpts();
	calculAge();
	var Nb = $('NbPersonnes').options[$('NbPersonnes').selectedIndex].value;
	var Commentaire = $('commentaire');
	
	if($('DebutSejour').value=="")
	{
		inCalculTotal=false;
		return;
	}
	var Somme=0;
	Commentaire.value="<b>"+DEBUTSEJOUR+" : </b>"+$('DebutSejour').value;

	/****************
	Cout hébergement brut
	****************/
	var DebutSejour = $('DebutSejour').value;
	var FinSejour;
	var Temp = DebutSejour.split("/");
	var date = new Date();
	date.setDate(parseInt(Temp[0],10));
	date.setMonth(Temp[1]-1);
	date.setFullYear(Temp[2]);
	var OptionsNuit = new Array("SUPPNTDI","SUPPNTLU","SUPPNTMA","SUPPNTME","SUPPNTJE","SUPPNTVE","SUPPNTSA");
	
	for(var i=0;i<OptionsNuit.length;i++)
	{
		$(corrOptions[OptionsNuit[i]]+'').value='';
	}
	
	var DureeModifiee = parseInt(DureeSejour,10);
	if($('nuiteeSuppNb'))
		DureeModifiee = parseInt(DureeSejour,10) + parseInt($('nuiteeSuppNb').options[$('nuiteeSuppNb').selectedIndex].value,10);
		
	for(var i=1;i<DureeModifiee;i++)
	{
		var SuppNuit = parseFloat(Nuit[date.getDay()],10);
		if(SuppNuit=="")
			SuppNuit=0;
		if(SuppNuit!=0)
		{	
			//$(corrOptions[OptionsNuit[date.getDay()]]+'').value = parseInt($(corrOptions[OptionsNuit[date.getDay()]]+'').value,10)+parseInt(Nb,10);
			$(corrOptions[OptionsNuit[date.getDay()]]+'').value = parseInt(Nb,10);
		}
		SuppNuit+=parseFloat(is_supp(date.getDate(),date.getMonth()+1,date.getFullYear()),10);
		if(is_supp(date.getDate(),date.getMonth()+1,date.getFullYear()))
		{
			var Option = get_Supp_OPT(date.getDate(),date.getMonth()+1,date.getFullYear());
			if($(corrOptions[Option]+''))
			{
				$(corrOptions[Option]+'').value = parseInt($(corrOptions[Option]+'').value,10)+parseInt(Nb,10);
			}
		}
		Somme+=SuppNuit;
		date.setTime(date.getTime()+24*3600*1000);
	}
	var Cout1Personne = parseFloat(BasePrix.toString().replace(" ","").replace("&nbsp;","").replace(String.fromCharCode(160),""),10)+parseFloat(Somme,10);
	/******************
	Cout Gratuit
	******************/
	var Gratuit = CompteurGratuit;
	var Adultes=Nb-CompteurEnfants-CompteurGratuit;
	if(Adultes>=2)
	{
		if($('Lits_3'))
		{
			if($('Lits_3').options[$('Lits_3').selectedIndex].value!=0)
			{
				if(Gratuit!=0)
				{
					if(parseInt(Nb/3)<Gratuit)
					{
						Gratuit = parseInt(Nb/3);
					}
					if(Gratuit>$('Lits_3').options[$('Lits_3').selectedIndex].value)
						Gratuit = $('Lits_3').options[$('Lits_3').selectedIndex].value;
					$('gratuit').innerHTML = Gratuit+" x "+ENFANT+" < "+AgeGratuite+" "+ANS+" : "+GRATUIT;
					Commentaire.value+=$('gratuit').innerHTML+"<br />";
				}
				else Gratuit=0;
			}
			else
				Gratuit=0;
		}
		else
			Gratuit=0;
	}
	else
		Gratuit=0;
	if(Gratuit==0)
		$('gratuit').innerHTML = "";
	
	
	/***********************
	Cout enfants
	**********************/
	var Enfants = CompteurEnfants;
	var PrixEnfant=Cout1Personne;
	if(Adultes>=2)
		if($('Lits_3'))
			if($('Lits_3').options[$('Lits_3').selectedIndex].value!=0)
			{
				if(parseInt(Nb/3)<(Gratuit+Enfants))
				{
					Enfants = parseInt(Nb/3)-Gratuit;
					if(Enfants<0)
						Enfants=0;
				}
				if((Gratuit+Enfants)>$('Lits_3').options[$('Lits_3').selectedIndex].value)
				{
					Enfants = $('Lits_3').options[$('Lits_3').selectedIndex].value - Gratuit;
				}
						
				Adultes=Nb-Enfants-Gratuit;
				PrixEnfant = Cout1Personne-ReductionEnfant;
			}
			else
			{
				Enfants=0;
			}
		else
		{
			Enfants=0;
		}
	else
	{
		Enfants=0;
	}
		
	if(Enfants!=0)
	{
		$('enfants').innerHTML = Enfants+" x "+ENFANT+" : "+PrixEnfant+" €";
		//Commentaire.value+=$('enfants').innerHTML+"<br />";
		$(corrOptions['REDENF']+'').value = Enfants;
	}
	else
	{
		PrixEnfant = 0;
		$('enfants').innerHTML="";
		$(corrOptions['REDENF']+'').value = '';
	}
	
	
	
	/********************
	Cout personnes
	*******************/
	Adultes = Nb - Enfants - Gratuit;
	var PrixAdulte = Cout1Personne*Adultes;
	$('adultes').innerHTML = Adultes+" x "+ADULTE+" : "+PrixAdulte+" €";

	/*******************
	Cout Single
	*******************/
	var PrixSingle = SupplementSingle*(DureeSejour-1);
	if($('Lits_1'))
	{
		if($('Lits_1').options[$('Lits_1').selectedIndex].value!=0)
		{
			var NbNuitSupp=0;
			if($('nuiteeSuppNb'))
			{
				if($('nuiteeSuppNb').options[$('nuiteeSuppNb').selectedIndex].value!=0)
					NbNuitSupp = parseInt($('nuiteeSuppNb').options[$('nuiteeSuppNb').selectedIndex].value);
			}
			PrixSingle = $('Lits_1').options[$('Lits_1').selectedIndex].value * SupplementSingle *(DureeSejour-1+NbNuitSupp);
			$('singles').innerHTML = $('Lits_1').options[$('Lits_1').selectedIndex].value+" x "+SUPPLEMENTSINGLE+" : "+PrixSingle+" €";
			if(NbNuitSupp!=0)
				$('singles').innerHTML += "<br />("+DONT+" "+(NbNuitSupp*$('Lits_1').options[$('Lits_1').selectedIndex].value)+" "+NUITSUPSINGLE+")";
			//Commentaire.value+=$('singles').innerHTML+"<br />";
			$(corrOptions['SUPPRM1']+'').value = $('Lits_1').options[$('Lits_1').selectedIndex].value*(DureeSejour-1+NbNuitSupp);
			Commentaire.value+="<br /><b>"+CHAMBRESINGLE+" : </b>"+$('Lits_1').options[$('Lits_1').selectedIndex].value;
		}
		else
		{
			PrixSingle=0;
			$('singles').innerHTML="";
			$(corrOptions['SUPPRM1']+'').value = '';
		}
	}
	else
	{
		PrixSingle=0;
		$('singles').innerHTML="";
		$(corrOptions['SUPPRM1']+'').value = '';
	}
	
	if($('Lits_2').options[$('Lits_2').selectedIndex].value!=0)
	{
		Commentaire.value+="<br /><b>"+CHAMBREDOUBLE+" : </b>"+$('Lits_2').options[$('Lits_2').selectedIndex].value;
		if($('Qte2Lits').selectedIndex!=-1)
			Commentaire.value+="<br /><b>"+CHAMBRE2LITS+" : </b>"+$('Qte2Lits').options[$('Qte2Lits').selectedIndex].value;
	}
	/********************
	Réduction chambre triple
	********************/
	if(ReducTriple!=0)
	{
		if($('Lits_3'))
		{
			if($('Lits_3').options[$('Lits_3').selectedIndex].value!=0 && CompteurEnfants==0 && CompteurGratuit==0)
			{
				TotalReducTriple = $('Lits_3').options[$('Lits_3').selectedIndex].value * parseFloat(ReducTriple,10);
				$('reducTriple').innerHTML = $('Lits_3').options[$('Lits_3').selectedIndex].value+" x "+CHAMBRETRIPLE+" : -"+TotalReducTriple+" €";
				//Commentaire.value+=$('reducTriple').innerHTML+"<br />";
				$(corrOptions['REDRM3']+'').value = $('Lits_3').options[$('Lits_3').selectedIndex].value;
			}
			else
			{
				$('reducTriple').innerHTML="";
				TotalReducTriple=0;
				$(corrOptions['REDRM3']+'').value = '';
			}
		}
		else
		{
			$('reducTriple').innerHTML="";
			TotalReducTriple=0;
			$(corrOptions['REDRM3']+'').value = '';
		}
	}
	else
	{
		$('reducTriple').innerHTML="";
		TotalReducTriple=0;
		$(corrOptions['REDRM3']+'').value = '';
	}
	
	/********************
	Nuitées Supplémentaires
	**********************/
	var CoutNuiteeSupp=0;
	var NbNuiteeSupp = 0;
	if(NuitSupp!="")
	{
		if($('nuiteeSuppNb'))
		{
			if($('nuiteeSuppNb').options[$('nuiteeSuppNb').selectedIndex].value!=0)
			{
				CoutNuiteeSupp = $('nuiteeSuppNb').options[$('nuiteeSuppNb').selectedIndex].value*NuitSupp*(Nb-CompteurGratuit);
				$('nuiteesSupp').innerHTML = $('nuiteeSuppNb').options[$('nuiteeSuppNb').selectedIndex].value+" "+NUITEESUP+" : "+CoutNuiteeSupp+" €";
				NbNuiteeSupp = $('nuiteeSuppNb').options[$('nuiteeSuppNb').selectedIndex].value*(Nb-CompteurGratuit);
				$(corrOptions['SUPPNT']+'').value=$('nuiteeSuppNb').options[$('nuiteeSuppNb').selectedIndex].value*(Nb-CompteurGratuit);
			}
			else
			{
				$('nuiteesSupp').innerHTML="";
				CoutNuiteeSupp=0;
				$(corrOptions['SUPPNT']+'').value=0;
			}
		}
	}
	else
	{
		$('nuiteesSupp').innerHTML="";
		CoutNuiteeSupp=0;
		$(corrOptions['SUPPNT']+'').value=0;
	}
		
	/********************
	Demi pensions
	**********************/
	var CoutDemiPension=0;
	if(DemiPension!="")
	{
		if($('demiPensionJours'))
		{
			if($('demiPensionJours').options[$('demiPensionJours').selectedIndex].value!=0)
			{
				CoutDemiPension = $('demiPensionJours').options[$('demiPensionJours').selectedIndex].value*DemiPension*(Nb-CompteurGratuit);
				$('demiPensions').innerHTML=$('demiPensionJours').options[$('demiPensionJours').selectedIndex].value+" "+DEMIPENSION+" : "+CoutDemiPension+"€";
				//Commentaire.value+=$('demiPensions').innerHTML+"<br />";
				$(corrOptions['DMPENS']+'').value = $('demiPensionJours').options[$('demiPensionJours').selectedIndex].value*(Nb-CompteurGratuit);
			}
		}
	}
	else
	{
		$('demiPensionNb').innerHTML="";
		CoutDemiPension=0;
		$(corrOptions['DMPENS']+'').value = 0;
	}
	
	/***********************
	Options
	************************/
	
	var CoutOptions=0;
	$('options').innerHTML="";
	for(var i=0;i<selectOptions.length;i++)
	{
		var Retour="";
		var el = $('options_'+i);
		if(el.options[el.selectedIndex].value!=0)
		{
			if($('options').innerHTML!="")
				Retour+="<br />";
			var calc = el.options[el.selectedIndex].value*$('prix_options_'+i).value;
			Retour+=el.options[el.selectedIndex].value+" x "+$('libelle_options_'+i).value+" : "+format(calc)+" €";
			CoutOptions+=calc;
			$('options').innerHTML+=Retour;
			$(codeOptionsLibre[i]+"").value = el.options[el.selectedIndex].value;
		}
	}
	
	$(corrOptions['SUPPPPL']+'').value = Nb - CompteurGratuit - 1;	
	
	/***************
	Assurance annulation
	******************/
	if($('Assurance'))
	{
		var CoutUnitaireAssurance = 1.5;
		var CoutAssurance=0;
		if($('Assurance').checked)
		{
			CoutAssurance = (Nb*DureeSejour+NbNuiteeSupp)*CoutUnitaireAssurance;
			$('affAssurance').innerHTML = "Assurance annulation : "+format(CoutAssurance)+" €";
			$(corrOptions['INSCANCL']).value = Nb*DureeSejour+NbNuiteeSupp;
		}
		else
		{
			$('affAssurance').innerHTML = "";
			$(corrOptions['INSCANCL']).value=0;
		}
	}
	else
		CoutAssurance=0;
	/******************
	Total
	**************/
	$('coutTotal').innerHTML = COUTTOTAL+" : "+ format(PrixAdulte + PrixEnfant + PrixSingle - TotalReducTriple + CoutOptions+CoutDemiPension+CoutNuiteeSupp+CoutAssurance)+" €";
	$('detailProduct').elements['prix'] = $('coutTotal');
	var CompteLits = 0;
	if($('Lits_3'))
		CompteLits+=$('Lits_3').options[$('Lits_3').selectedIndex].value*3;
	if($('Lits_2'))
		CompteLits+=$('Lits_2').options[$('Lits_2').selectedIndex].value*2;
	if($('Lits_1'))
		CompteLits+=$('Lits_1').options[$('Lits_1').selectedIndex].value*1;
	if(CompteLits!=Nb)
	{
		$('infos').innerHTML = ERREURCOUCHAGE;
		$('Envoyer').disabled="disabled";
	}
	else
	{
		$('Envoyer').disabled = false;
		$('infos').innerHTML = "";
		for(var i=0;i<selectLits.length;i++)
		{
			$('Lits_'+selectLits[i]).disabled="disabled";
		}
	}
	inCalculTotal=false;
}

function format(nombre)
{
	nombre = nombre.toString().replace('.',',');
	if(nombre.indexOf(",")!=-1)
	{
		nombre = nombre.split(",");
		if(nombre[1].length==1)
			return nombre[0]+","+nombre[1]+"0";
	}
	return nombre;
}

function checkDate(champs)
{
	if(champs.value!="")
	{
		var Tab = champs.value.split("/");
		Tab = Tab[2].toString()+Tab[1].toString()+Tab[0].toString();
	}
}

function modifQteLitsDouble(val)
{
	if(val!=0)
	{	
		if($('divDoubleQte2Lits').style.display=="none")
			$('divDoubleQte2Lits').style.display="block";
	}
	else
	{
		if($('divDoubleQte2Lits'))
			$('divDoubleQte2Lits').style.display="none";
	}
	setIncrementalSelect($("Qte2Lits"),val);
}

function modifChoixLits()
{
	var Nb = $('NbPersonnes').options[$('NbPersonnes').selectedIndex].value;
	var Min = Math.ceil(Nb/3);
	selectList = new Array();
	var HTML ="<table cellpadding='0' cellspacing='0'>";
	var Tab=sel.split(',');
	var CompteLoc=0;
	for(var i=Tab.length-1;i>=0;i--)
	{
		selectLits[CompteLoc++] = Tab[i];
		if(Tab[i]==2)
		{
			Pers = "double";
			HTML+="<tr><td> <div class='room1'>"+Pers+" : </div><div class='room2'><select id='Lits_"+Tab[i]+"' onchange='modifQteLits("+Tab[i]+");modifQteLitsDouble(this.options[this.selectedIndex].value);'></select></td>"+'<td id="divDoubleQte2Lits" style="display:none;" onchange="modifQteLits(true)">'+CHAMBREA2LITS+'<select id="Qte2Lits"></select></div></td></td></tr>';
		}
		else if(Tab[i]==1)
		{
			Pers = "single";
			HTML+="<tr><td colspan='2'> <div class='room1'>"+Pers+" : </div><div class='room2'><select id='Lits_"+Tab[i]+"' onchange='modifQteLits("+Tab[i]+")'></select></div></td></tr>";
		}
		
	}
	var regEscape = new RegExp("'","g");
	HTML+="<tr><td colspan='2'><div class='reset'><input type='button' value='"+RECOMMENCER+"' onclick='modifChoixLits()' /></div></td></tr>";
	HTML+="<tr><td colspan='2'><ul><li>"+'<a href="index.asp?id='+FORMCONTACTID+'&s='+$('LibelleFiche').innerHTML+'">'+TRIPLESURDEMANDE+'</li>';
	HTML+="<li>"+'<a href="index.asp?id='+FORMCONTACTID+'&s='+$('LibelleFiche').innerHTML+'">'+TARIFENFANTDEMANDE+'</a></li></ul></td></tr>';
	HTML+='</table>';
	$('choixLits').innerHTML = HTML;
	modifQteLits();
}

function sendForm()
{
	var ParticipantsInfos = getParticipantsInfos();
	if(ParticipantsInfos==false)
		return;
	$('commentaire').value+="<br />"+"<b>"+PARTICIPANTS+" : </b><br />"+ParticipantsInfos;
	$('commentaire').value+="<br />"+"<b>"+COMMENTAIRES+" : </b><br />"+$("comments").value;
	$('detailProduct').submit();
}


function modifQteLits(sel)
{
	var Nb = $('NbPersonnes').options[$('NbPersonnes').selectedIndex].value;
	
	if(typeof(sel)=="undefined")
	{
		for(var i=0;i<selectLits.length;i++)
		{
			var selected = $('Lits_'+selectLits[i]);
			selected.selectedIndex=0;
			selected.length=0;
			for(var j=0;j<=Math.floor(Nb/selectLits[i]);j++)
			{	
				var o = new Option(j,j);
				selected.options[selected.options.length] = o;
			}

			
			selected.disabled=false;
		}
	}
	else
	{
	
	}
	calculTotal();
}

function Max(tab)
{
	var Max = tab[0];
	for(var i=1;i<tab.length;i++)
		if(tab[i]>Max)
			Max = tab[i];
	return Max;
}

function in_array(tab,valeur)
{
	for(var i=0;i<tab.length;i++)
		if(tab[i]==valeur)
			return true;
	return false;
}

function modifSelectEnfants(sel)
{
	var Nb = sel.options[sel.selectedIndex].value;
	setIncrementalSelect($('demiPensionNb'),Nb);
	setIncrementalSelect($('nuiteeSuppPers'),Nb);
	setSelectOptions();
	var NbAc = $('NbEnfants').options.length;
	if(Nb==1)
	{
		$('NbEnfants').options.length=0;
		var o = new Option(0,0);
		$('NbEnfants').options[$('NbEnfants').options.length] = o;
	}
	else if(NbAc != Nb)
	{
		setIncrementalSelect($('NbEnfants'),Nb-1);
		affDateNaissance($('NbEnfants'));
	}
	calculTotal();
}

function setIncrementalSelect(sel,valeurMax)
{
	if(sel)
	{
		sel.length=0;
		var o;
		for(var i=0;i<=valeurMax;i++)
		{
			o = new Option(i,i);
			sel.options[sel.length] = o;
		}
	}
}

function affDateNaissance(sel)
{
	$('DatesNaissances').innerHTML="";
	for(var i=0;i<sel.options[sel.selectedIndex].value;i++)
	{
		$('DatesNaissances').innerHTML += "Enfant "+(i+1)+" : <input type='text' id='Jour"+(i+1)+"' name='Jour"+(i+1)+"' size='2' value='"+J+"' onfocus='checkValue(this)' onblur='calculTotal();' /><input type='text' id='Mois"+(i+1)+"' name='Mois"+(i+1)+"' size='2' value='"+M+"' onfocus='checkValue(this)' onblur='calculTotal();' /><input type='text' id='Annee"+(i+1)+"' name='Annee"+(i+1)+"' size='2' value='"+A+"' onfocus='checkValue(this)' onblur='calculTotal();' /><br />";
	}
}

function checkValue(input)
{
	if(input.value==J || input.value==M || input.value==A)
		input.value="";
}

function calculAge()
{
	CompteurEnfants=0;
	CompteurGratuit=0;
	/***********/
	var ladate = new Date();
	ladate.setYear(ladate.getFullYear()-AgeTarifEnfant);
	ladate = ladate.getTime();
	var gratuit = new Date();
	gratuit.setYear(gratuit.getFullYear()-3);
	gratuit = gratuit.getTime();
	/************/
	var nb = $('NbEnfants').options[$('NbEnfants').selectedIndex].value;
	for(var i=0;i<nb;i++)
	{
		if($('Annee'+(i+1)).value.length==2)
		{
			alert(ERREURANNEE);
			$('Annee'+(i+1)).focus();
			return;
		}
		if($('Jour'+(i+1))!=undefined)
			if(($('Jour'+(i+1)).value!="" && $('Jour'+(i+1)).value!=J) && ($('Mois'+(i+1)).value!="" && $('Mois'+(i+1)).value!=M) && ($('Annee'+(i+1)).value!="" && $('Annee'+(i+1)).value!=A))
			{
				if(is_numeric($('Jour'+(i+1)).value) && is_numeric($('Mois'+(i+1)).value) && is_numeric($('Annee'+(i+1)).value))
				{
					var Tab = new Array($('Jour'+(i+1)).value,$('Mois'+(i+1)).value,$('Annee'+(i+1)).value)
					var ladate1 = new Date();
					ladate1.setYear(Tab[2]);
					ladate1.setMonth(Tab[1]);
					ladate1.setDate(Tab[0]);
					ladate1 = ladate1.getTime();
					if(ladate1>gratuit)
						CompteurGratuit++;
					else if(ladate1>ladate)
						CompteurEnfants++;
				}
				else
					alert(ERREURDATESENFANTS);
			}
	}
}

function is_numeric(valeur)
{
	var reg = new RegExp("^[0-9]+$","ig");
	return reg.test(valeur);
}

function Exists(chaine,sel)
{
	var nb=sel.options.length;
	var Flag = true;
	for(var i=0;i<nb;i++)
	{
		if(sel.options[i].text == chaine)
			return i;		
	}
	return -1;
}

function d(el)
{
	if(typeof(console)!="undefined")
		console.log(el);
}

function makeEl(type,attach){
	var el = document.createElement(type);
	Element.extend(el);
	if(typeof(attach)!="undefined"){
		attach.appendChild(el);
	}
	return el;
}
