var resas;
var confirmChangerPage=false;

function initConnexion(){
	/*** On ne le fait pas dans setInstanceByDpt car si on va trop vite et que l'appel ajax 
	n'est pas terminé, le champ DPT ne se remplit pas ***/
	if (getVersionIE()<9){
		var div_avertissement = new Element("div",{"id":"div_avertissementIE"});
		$('div_generale').parentNode.insertBefore(div_avertissement, $('div_generale'));
		ajoutMessageIE($('div_avertissementIE'));
		new Effect.BlindDown('div_avertissementIE', 1);
        checkGoogleChromeFrameExtension();
    }
	$("instance_dpt").onblur=function (evt){
    	if($("dpt_connex").value=="") $("dpt_connex").value=this.value;
    }
    appelAjaxToFunc("/config_v3/etc/instanceByDpt.txt","",setChmpInstanceAutoCompleter);

}

function afficheMessageGCFExtension(){
    div = $('ie_google_chrome_frame_warning');
    div.style.display='block';
	div.addClassName("ieAffiche");
    var html = "Vous souhaitez quand meme utiliser Internet Explorer ?";
    html += "<br/> <a href='#' onclick='window.open(\"http://google.com/chromeframe\",\"\",\"width=800,height=600\")' >Cliquez ici</a> et telechargez l'extension pour ameliorer la rapidité du module proprietaire sur votre navigateur !"
    div.innerHTML = html;
}

function afficheMessageRedemarrerIE(noreload){
    alert("Pour finaliser l'installation de l'extension, fermez puis relancez votre navigateur");
     div = $('ie_google_chrome_frame_warning');
    div.style.display='block';
	div.addClassName("ieAffiche");
    var html = "<strong>Pour finaliser l'installation de l'extension, fermez puis relancez votre navigateur</strong>";
    div.innerHTML = html;
    //if (!noreload) document.location.reload(true);
}

//sous ie, regarde si l'extension Google Chrome Frame est installée
// et affiche un message dans la div si elle n'est pas la
function checkGoogleChromeFrameExtension(div){
    if (location.href.indexOf("#gcfinstalled") != -1){//on vient juste d'installer l'extension
        //afficheMessageRedemarrerIE(true);
    }
    CFInstall.check({
     mode: "popup",
     destination: "http://prop.itea.fr/",
     onmissing: afficheMessageGCFExtension,
     preventPrompt: true,
     oninstall: afficheMessageRedemarrerIE

   });
}

function setChmpInstanceAutoCompleter(reponse){
	var jsonarray=eval(reponse);
    var infos=[];
    for (var i=0;i<jsonarray.length;i++){
        infos.push(jsonarray[i].libelle+"<span class='choixInstance_instance'>"+jsonarray[i].instance+"</span><span class='choixInstance_dpt'>"+jsonarray[i].dpt+"</span>");
    }
    
    /**** champ dpt ****/
    var typeahead = new Autocompleter.Local('instance_dpt', 'divLstInstances_inpt_instance', infos, {
        frequency: 0.2,
        updateElement: setInstanceByDpt
    });
}

function setInstanceByDpt(li){
    $("instance_dpt").value=$(li).childNodes[0].innerHTML+$(li).childNodes[1].nodeValue;
    $("instance_connex").value=$(li).childNodes[2].innerHTML;
    $("dpt_connex").value=$(li).childNodes[3].innerHTML;
    
    $("instance_dpt").onfocus=function (evt){
    	this.value='';
    	$("instance_connex").value='';
    	$("dpt_connex").value='';
    }    
}

function initLstHeberg(){
	$$('.li_listHebergActions_reserverCentrale').each(function(obj){
        var lnkResa =  obj.getAttribute("lnkResa");
        var num_gite = obj.getAttribute("num_gite");
        if(getVersionIE()==6)
        	obj.innerHTML="<a target='_blank' href='"+lnkResa+"'>R&eacute;server</a>";
        else obj.innerHTML="<a href='reserver_centrale.php?numero_gite="+num_gite+"'>R&eacute;server</a>";
    });
	
	var li_messageCentral = $("li_afficheMessageCentrale");
	if(li_messageCentral){
		if(('localStorage' in window) && window['localStorage'] != null){
			if(window.localStorage.getItem('ITEA_PROP_id_news')!=li_messageCentral.getAttribute("id_news")){
				li_messageCentral.style.display="block";
				$("li_afficheMessageCentrale").observe("click",function(){
					 var html="<div id='fermePopIn' onClick='effaceDivAvecTransparence();'><img src='/config_v3/imgs_defaut/btFermer.png'/></div>";
					 html+="<div id='div_messageCentrale'>";
						html+="<span id='spn_messageCentraleTitre'>Le message de la centrale :</span>";
						html+="<span id='spn_messageCentraleTexte'>"+$("div_infosCentrale").innerHTML+"</span>";
					 html+="</div>";
					 window.localStorage.setItem('ITEA_PROP_id_news', li_messageCentral.getAttribute("id_news"));
					 afficheDivAvecTransparence(html,400,200);
					 this.style.display="none";
				});
			}
		}
	}
}

function appelSaisieDate(numGite,dpt,module,dateDeb,typeGite,ident,tabChambre){
	var html = "<div id='div_formDates'></div><div id='div_reponseDates'></div>";
	if(typeGite=="GE" || typeGite=="SE" || typeGite=="GS"){
		var H=430;
	}else{
		var H=350;
	}
	var L=520
	var urlXHTML = "./ajax/prop.php";
	var vars = "mode=formDates&numGite="+numGite+"&dpt="+dpt+"&module="+module;
	if(dateDeb) vars+="&dateDeb="+dateDeb;
	afficheDivAvecTransparence(html,L,H);
	affUrlInDiv("div_formDates",urlXHTML,vars,"",function(evt){
		initApresAppelSaisieDateForCal(ident,typeGite,tabChambre, null, dateDeb);
	});	
}

function initApresAppelSaisieDateForCal(ident,typeGite,tabChambre, afficheForstats, dateDeb){
	
	function foncClicSurJour(evt,jour,mois,annee){
		if($("div_choixGiteEtape")){
			$("div_choixGiteEtape").innerHTML="";
		}
		var dte=new OBJDate(jour+"/"+mois+"/"+annee);
		if (!window.objDateDebutSelect){
			window.objDateDebutSelect=dte;
			var j1=dte.getJour();
			var m1=dte.getMois();
			var a1=dte.getAnnee();
			calendrier_setPeriodeInClass("div_dateSejour_calendrier","spanSelectJourDsSejour",j1,m1,a1,j1,m1,a1);
			$("dateDeb").value=dte.toString();
			if(afficheForstats)
				if($("dateFin").value.length>0)calculeDateDuree();
			$("div_dateSejour_message").innerHTML="Cliquez sur la date de fin...";
		}else{
			var dte1=window.objDateDebutSelect;
			var j1=dte1.getJour();
			var m1=dte1.getMois();
			var a1=dte1.getAnnee();
			var j2=dte.getJour();
			var m2=dte.getMois();
			var a2=dte.getAnnee();
			window.objDateDebutSelect=null;
			calendrier_setPeriodeInClass("div_dateSejour_calendrier","spanSelectJourDsSejour",j1,m1,a1,j2,m2,a2);
			$("dateFin").value=dte.toString();
			$("duree").value = dte1.getNbJourEcartWithOBJDate(dte,"O");
			if(afficheForstats){
				$("div_dateSejour_message").innerHTML="La dur&eacute;e est s&eacute;lectionn&eacute;e. <br />Vous pouvez cependant choisir une nouvelle date de d&eacute;but";
				if($("dateFin").value.length>0)calculeDateDuree();
			}else $("div_dateSejour_message").innerHTML="Le s&eacute;jour est s&eacute;lectionn&eacute;. <br />Vous pouvez cependant choisir une nouvelle date d'arriv&eacute;e";
		}
		
		
	}
	
	function affSejourDsCalendQdChangeMois(mois, annee){
		var j1,j2,m1,m2,a1,a2;
		var set=false;
		if ($("dateDeb").value){
			var dteDeb=new OBJDate($("dateDeb").value);
			j1=dteDeb.getJour();j2=dteDeb.getJour();
			m1=dteDeb.getMois();m2=dteDeb.getMois();
			a1=dteDeb.getAnnee();a2=dteDeb.getAnnee();
			set=true;
		}
		if ($("dateFin").value){
			var dteFin=new OBJDate($("dateFin").value);
			j2=dteFin.getJour();
			m2=dteFin.getMois();
			a2=dteFin.getAnnee();
		}
		if (set)calendrier_setPeriodeInClass("div_dateSejour_calendrier","spanSelectJourDsSejour",j1,m1,a1,j2,m2,a2);
	}
	var dte=new OBJDate();
	if(dateDeb)dte.definition(dateDeb);
	else dte.definition();
	if(afficheForstats){
		setCalendrierToDivStats("div_dateSejour_calendrier",{
													"affForStats": true,
													"nbMois":1,
													"debutPlanStats":"01/"+sprintf("%02d",dte.getMois())+"/"+sprintf("%04d",dte.getAnnee()),
													"moisDebut":parseInt(dte.getMois()),
													"anneeDebut":parseInt(dte.getAnnee()),
													"typeGite":typeGite,
													"afficheJrArrivee":true,
													"afficheDispos":false,
													"clic":foncClicSurJour,
													"modeAff":"CARRE",
													"nePasChargerMotCles":true,
													"apresToday":false,
													"estCalFin":"O",
													"foncQdChangeMois":affSejourDsCalendQdChangeMois
						});
	}else{
		//maintenant tout les jours sont cliquable. On passe donc H a la place du typeGite
		setCalendrierToDiv("div_dateSejour_calendrier",{
													"nbMois":1,
													"moisDebut":parseFloat(dte.getMois()),
													"anneeDebut":parseFloat(dte.getAnnee()),
													"ident":ident,
													"typeGite":typeGite,
													"tabChambre":tabChambre,
													"afficheJrArrivee":true,
													"afficheDispos":true,
													"clic":foncClicSurJour,													
													"modeAff":"CARRE",
													"nePasChargerMotCles":true,
													"estCalFin":"O",
													"autoriseToutJrs":true,
													"foncQdChangeMois":affSejourDsCalendQdChangeMois
						});
	}
}
function appellQdClicValideGEGS(){
	var numGite=$("numGite").value;
	if($("radio_choixGiteEtapeGite") && $("radio_choixGiteEtapeGite").checked){
		appelQdClicValidDate(numGite,"G","G");
	}
	if($("radio_choixGiteEtapeChambre") && $("radio_choixGiteEtapeChambre").checked){
		appelQdClicValidDate(numGite,"H","H");
	}
	if($("radio_choixGiteEtapeGite") && !$("radio_choixGiteEtapeGite").checked && $("radio_choixGiteEtapeChambre") && !$("radio_choixGiteEtapeChambre").checked){
		$("div_reponseDates").innerHTML = "Pour réserver il faut choisir le type de réservation";
	}
}

function appelQdClicValidDate(numGite,type_gite,mode_vt_gegs){
	if(type_gite=="SE" || type_gite=="GS" || type_gite=="GE"){
		var date_deb=$("dateDeb").value;
		var duree=$("duree").value;
		verifGEGS(numGite,date_deb,duree);
	}else if (!type_gite || type_gite=="G"){
		$('a_btValidDate').innerHTML='Modifier les dates';
		calculeDateDuree();
		verifDates(numGite);
	}else{
		var date_deb=$("dateDeb").value;
		var date_fin=$("dateFin").value;
		var duree=$("duree").value;
		
		var url="reserver_prop.php?numGite="+numGite+"&dateDeb="+date_deb+"&dateFin="+date_fin+"&duree="+duree;
		if(mode_vt_gegs){
			url+="&mode_vt_gegs="+mode_vt_gegs;
		}
		document.location.href=url;
	}
	
}

function verifGEGS(numGite ,date_deb,duree){
	var urlVerif = "./ajax/verifGEGS.php";
	var sending="dateDeb="+date_deb;
	sending+="&numGite="+numGite;
	sending+="&dpt="+$("dpt").value;
	sending+="&duree="+duree;
	sending+="&module="+$("module").value;
	$("div_reponseDates").innerHTML = "";
	appelAjaxToFunc(urlVerif,sending,function(reponseAjax){
		retour=reponseAjax.evalJSON();

		if(retour.foncApres){
			eval(retour.foncApres);
		}
		else if(retour.erreur==""){
			if($("div_choixGiteEtape")){
				$("div_choixGiteEtape").innerHTML=retour.html;
			}
		}else{
			$("div_reponseDates").innerHTML = retour.erreur;
		}
	});
}
function verifDates(numGite,mode_vt_gegs){

	var date_deb=$("dateDeb").value;
	var date_fin=$("dateFin").value;
	var duree=$("duree").value;

	var urlVerif = "./ajax/verifDates.php";
	
	var sending="dateDeb="+date_deb;
	sending+="&dateFin="+date_fin;
	sending+="&duree="+duree;
	sending+="&numGite="+$("numGite").value;
	sending+="&dpt="+$("dpt").value;
	sending+="&module="+$("module").value;
	if($("instance").value)sending+="&instance="+$("instance").value;
	$("div_reponseDates").innerHTML = "<img id='img_chargementRecap' src='/config_v3/imgs_defaut/jauge.gif' >";
	appelAjaxToFunc(urlVerif,sending,function(reponseAjax){
		retour=reponseAjax.evalJSON();
		if(retour.erreur==""){
			var url="reserver_prop.php?numGite="+numGite+"&dateDeb="+date_deb+"&dateFin="+date_fin+"&duree="+duree;
			if(mode_vt_gegs){
				url+="&mode_vt_gegs="+mode_vt_gegs;
			}
			document.location.href=url;
		}else{
			$("div_reponseDates").innerHTML = retour.erreur;
		}
	});	
	
}

function calculeDateDuree(){
	if(document.getElementById("dateDeb").value && document.getElementById("dateFin").value){
		var deb = new OBJDate(); 
		deb.definition(document.getElementById("dateDeb").value);

		var fin = new OBJDate();
		fin.definition(document.getElementById("dateFin").value);
		
		var nbJours = deb.getNbJourEcartWithOBJDate(fin);
		document.getElementById("duree").value = nbJours;
	}else{

		if(document.getElementById("dateDeb").value && document.getElementById("duree").value){
			var deb = new OBJDate();
			deb.definition(document.getElementById("dateDeb").value);
			deb.ajoutJour(document.getElementById("duree").value);
			document.getElementById("dateFin").value = deb.toString();
		}
	}	
}


function affCalendrierDateFinLocation(nomDiv){
	var urlXHTML = "./ajax/prop.php";
	var vars = "mode=affichCalendFin";
	
	vars+="&numGite="+document.getElementById("numGite").value;
	vars+="&nomDivFin="+nomDiv;
	
	if(document.getElementById("dateDeb")){
		var deb = new OBJDate(); 
		deb.definition(document.getElementById("dateDeb").value);
		
		vars+= "&mois="+deb.getMois()+"&annee="+deb.getAnnee();
	}
	affUrlInDiv(nomDiv,urlXHTML,vars);	
}

function clicCalendJsPropStats(evt,jour,mois,annee,etat){
  $("dateDeb").value=jour+mois+annee;
 // afficheEffaceCalendJsPropStats("calendrierAcc");
}

//Paiement des réservation
function paiementResa(numero_resa){
	var adr="./ajax/infosDistProp.php";
	var montant= parseInt($('inpt_pbx_montant').value)/100;
	var sending="info=PAIEMENT_PBX&numero_resa="+numero_resa+"&montant="+montant;

	appelAjaxToFunc(adr,sending,function(reponseAjax){
		retour=reponseAjax.evalJSON();
		$("inpt_pbx_site").value=retour.SITE;
		$("inpt_pbx_rang").value=retour.RANG;
		$("inpt_pbx_identifiant").value=retour.IDENTIFIANT;
		$("inpt_pbx_cmd").value=retour.REFERENCE;
		$("form_formPbx").submit();
	});
}

function enregistrerEtPayerResaProp(){
	window.htmlRecapResaProp = $("div_recapResaProp").innerHTML;
	var urlEnregResa = "./ajax/enregistrementResaProp.php";
	var sending = getSendingForResaProp();
	sending+="&mode=creationDossier";
	sending+="&PAIEMENT_OBLIGATOIRE=1";
	appelAjaxToFunc(urlEnregResa,sending,function(reponseAjax){
		retour=reponseAjax.evalJSON();
		if(retour.numero_resa){
			if($("inpt_pbx_montant")){
				$("inpt_pbx_montant").value=retour.prix_total_pbx;
			}
			paiementResa(retour.numero_resa);
		}
	});
}
function setPrixAssuranceChambre(yaAssurance){
	var adr="./ajax/infosDistProp.php";
	var sending="info=SET_PRIX_ASSURANCE_GITE&yaAssurance="+yaAssurance;
	if($("fs_recapPrixResaChambre")){
		$("fs_recapPrixResaChambre").innerHTML="";
	}
	if($("div_recapBtnPrixResaGite")){
		$("div_recapBtnPrixResaGite").innerHTML="";
	}
	affImgChargementRecap(1);
	appelAjaxToFunc(adr,sending,function(reponseAjax){
		verifPourContratCentraleChambre();
	});
}
function setPrixAssuranceGite(yaAssurance){
	var adr="./ajax/infosDistProp.php";
	var sending="info=SET_PRIX_ASSURANCE_GITE&yaAssurance="+yaAssurance;
	if($("fs_recapPrixResaGite")){
		$("fs_recapPrixResaGite").innerHTML="";
	}
	if($("div_recapBtnPrixResaGite")){
		$("div_recapBtnPrixResaGite").innerHTML="";
	}
	affImgChargementRecap(1);
	appelAjaxToFunc(adr,sending,function(reponseAjax){
		verifPourContratCentraleGite();
	});
}
//Calcul des options pour les gîtes
function getPrixOtion(indice_option,nb_adulte_option,nb_enfant_option,selection){
	var adr="./ajax/infosDistProp.php";
	var sending="info=CHARGE_PRIX_OPTION&indice_option="+indice_option+"&nb_adulte_option="+nb_adulte_option+"&nb_enfant_option&="+nb_enfant_option;
	//Si on choisi de supprimer une option de type forfaitaire
	if(selection===false){
		 sending=sending+"&deselection=1";
	}
	appelAjaxToFunc(adr,sending,function(reponseAjax){
		retour=reponseAjax.evalJSON();
		if($("span_prixAcompte")){
			$("span_prixAcompte").innerHTML=parseFloat(retour.accompte).toFixed(2)+"&nbsp;&euro;";
		}
		if($("span_prixSupplement") && $("p_prixSupplementModif") && $("prixLocationSupplement") ){
			$("prixLocationSupplement").value=parseFloat(retour.supplement).toFixed(2);
			if(parseFloat(retour.supplement)>0){
				$("p_prixSupplementModif").style.display="block";
				$("span_prixSupplement").innerHTML=parseFloat(retour.supplement).toFixed(2)+"&nbsp;&euro;";

			}else{
				$("p_prixSupplementModif").style.display="none";
			}
		}

	});
}
function getPrixOptionChambre(indice_option,indice_chambre,nb_personne,deselection){
	var adr="./ajax/infosDistProp.php";
	var sending="info=CHARGE_PRIX_CHAMBRE_OPTION&idselect="+getValueById("input_idSelect")+"&idchambre="+indice_chambre+"&nbpersonne="+nb_personne+"&indiceoption="+indice_option;
	if(deselection===true){
		sending=sending+"&deselection=1";
	}
	attenteValide(1);
	appelAjaxToFunc(adr,sending,function(reponseAjax){		
		retour=reponseAjax.evalJSON();
		if($("div_infoOption_"+indice_chambre)){
			$("div_infoOption_"+indice_chambre).innerHTML = retour.aff_option;
		}
		if($("input_prixOption_"+indice_chambre)){
			$("input_prixOption_"+indice_chambre).value = parseFloat(retour.prix_option).toFixed(2);
		}
		if($("span_prixOption_"+indice_chambre)){
			$("span_prixOption_"+indice_chambre).innerHTML = parseFloat(retour.prix_option).toFixed(2);
		}
		if($("div_prixOption_"+indice_chambre)){
			$("div_prixOption_"+indice_chambre).style.display = "block";
		}
		if($("div_infoOption_"+indice_chambre)){
			$("div_infoOption_"+indice_chambre).style.display = "block";
		}

		calculTotal();
	});
}

function setActionSurMotMagique(){
	if($("span_validMotMagique") && $("motMagique")){
		$("span_validMotMagique").observe("click",function(){
			if($("motMagique").value.length>0){
				var adr="./ajax/infosDistProp.php";
				var sending="info=SET_PRIX_MOTMAGIQUE&mot_magique="+$("motMagique").value;
				
				appelAjaxToFunc(adr,sending,function(reponseAjax){
					retour=reponseAjax.evalJSON();
					//resa chambre
					if(is_array(retour)){
						retour.each(function(rep){
							if(rep.total && $("prixTotalLocation")){
								$("prixTotalLocation").innerHTML=parseFloat(rep.total).toFixed(2)+"&nbsp;&euro;";
								if($("prixLocation"))$("prixLocation").value=parseFloat(rep.total).toFixed(2);
							}
							if($("prix_chb_"+rep.num_chb)){
								$("prix_chb_"+rep.num_chb).value=parseFloat(rep.location).toFixed(2);
							}
							if($("prixReel_chb_"+rep.num_chb)){
								$("prixReel_chb_"+rep.num_chb).value=parseFloat(rep.location).toFixed(2);
							}
						});
					}else{
						if($("span_prixLocation")){
							$("span_prixLocation").innerHTML=parseFloat(retour.location).toFixed(2)+"&nbsp;&euro;";
						}
					}
				});
			}
		});
	}
}

/************* actions sur les choix des chambres dans le formulaire de RESA LD CHAMBRE *************/
function setActionsFormResaProp(){
	// Action sur les option pour les gîtes
	if($("fs_formResaProp_option")){
		$$('.comboOptionAdu').each(function(obj){
			var tab_split= obj.id.split("_");
			var indice_option = tab_split[2];
			obj.onchange = function (evt){
				getPrixOtion(indice_option,obj.value,0);
				var input_option =$('input_'+indice_option);
				if(obj.value>0){
					input_option.checked=true;
				}else{
					input_option.checked=false;
				}
			}
		});
		$$('.optionInput_indiv').each(function(obj){
			obj.onclick = function (evt){
				var tab_split= obj.id.split("_");
				var indice_option = tab_split[1];
				var select_option = $('select_optionAdu_'+indice_option);
				if(obj.checked==false){					
					select_option.selectedIndex=0;
				}else{
					select_option.selectedIndex=1;
				}
				getPrixOtion(indice_option,select_option.value,0);
			}
		});
		$$('.optionInput_forfait').each(function(obj){
			obj.onclick = function (evt){
				var tab_split= obj.id.split("_");
				var indice_option = tab_split[1];
				getPrixOtion(indice_option,1,0,obj.checked);
			}
		});
	}
	
	/*** action sur le mot magique ***/
	setActionSurMotMagique();
	
	var objForm=$("div_resaPropChambres");
	if (!objForm)return;
	// Action sur les option pour les chambres
	$$('.checkOptionChb').each(function(obj){
		obj.onclick = function (evt){
			var tab_split= obj.id.split("_");
			var indice_chambre = tab_split[3];
			var indice_option = tab_split[4];
			var select_option = $('select_nb_adu_'+indice_chambre+'_'+indice_option);
			var nb_personne;
			var deselection = false;
			if(obj.checked==true){
				nb_personne = 1;
				if(select_option){select_option.selectedIndex=1;}
			}else{
				nb_personne = 0;
				if(select_option){select_option.selectedIndex=0;}
				//Dans le cas d'une option forfaitaire
				else{deselection=true;}
			}			
			getPrixOptionChambre(indice_option,indice_chambre,nb_personne,deselection);
		}
	});
	$$('.comboOptionNbPers').each(function(obj){
		obj.onchange = function (evt){
			var tab_split= obj.id.split("_");
			var indice_chambre = tab_split[3];
			var indice_option = tab_split[4];
			var input_option = $('input_chk_opt_'+indice_chambre+'_'+indice_option);
			if(obj.value==0){
				input_option.checked=false;
			}else{
				input_option.checked=true;
			}
			getPrixOptionChambre(indice_option,indice_chambre,obj.value);
		}
	});

	var tabForm=getTabChmpForm(objForm);
	for (var i=0;i<tabForm.length;i++){
		/*** selection de lif(tabForm[i].className=="checkboxChb"){
			var idChambre = tabForm[i].name.substr(7,tabForm[i].name.length);
			if($(tabForm[i].id).checked){
		a chambre ***/
		if(tabForm[i].className=="checkboxChb"){
			var idChambre = tabForm[i].name.substr(7,tabForm[i].name.length);
			if($(tabForm[i].id).checked){
				activeChoixNbPersPourChambre(idChambre);
				calculTotal();
			} else desactiveChoixNbPersPourChambre(idChambre);
			$(tabForm[i].id).onclick = function (evt){
					var idChambre = this.name.substr(7,this.name.length);
					if(this.checked) activeChoixNbPersPourChambre(idChambre);
					else {
						desactiveChoixNbPersPourChambre(idChambre);
						effaceMess(idChambre);
						desaffecteChbResa(idChambre);
					}
			}
		}
		/*** selection des adultes/enfants dans la chambre  ***/
		if(tabForm[i].className=="comboNbAduChb" || tabForm[i].className=="comboNbEnfChb"){
			$(tabForm[i].id).onfocus = function (evt){
				this.oldValue = this.value;
			}
			$(tabForm[i].id).onchange = function (evt){				
				var idCheckbox = "chk_chb_"+this.name.substr(13,this.name.length);
				var idLstAdulte = "select_comboNbAdu_"+this.name.substr(13,this.name.length);
				var idLstEnfant = "select_comboNbEnf_"+this.name.substr(13,this.name.length);
				var idChambre = this.name.substr(13,this.name.length);
				var idNbMax = "input_nbMax_"+this.name.substr(13,this.name.length);
				if(this.id==idLstAdulte){
					valAdulte = this.value;
					if($(idLstEnfant)) valEnfant = $(idLstEnfant).value;
					if($(idNbMax)) valNbMax = $(idNbMax).value;
				}else{
					if(this.id==idLstEnfant){
							valEnfant = this.value;
							if($(idLstAdulte)) valAdulte = $(idLstAdulte).value;
							if($(idNbMax)) valNbMax = $(idNbMax).value;
					}
				}
				valideCompoFamilleChbFormResaProp(idChambre,valAdulte,valEnfant,valNbMax,this);
				//Permet d'afficher ou non les options pour les chambres quand on choisie un nombre d'adulte
				if((valAdulte+valEnfant)>0){
					activeChoixOptionChambre(idChambre,false,false);
				}else{
					activeChoixOptionChambre(idChambre,true,true);
				}
			}
		}
		/*** modification du prix de la chambre ***/
		if(tabForm[i].className=="detailPrixChambre_input"){
			$(tabForm[i].id).onchange = function (evt){
			   // affMsgAttenteParDessusInDiv("prixTotalLocation", "prixTotalLocation");
				calculTotal();
			 }
	   }
	}
}
/******* activation de la selection du nombre de personne quand la checkbox de la chambre est cochée *****/
function activeChoixNbPersPourChambre(idChambre){
	var idSelectNbAdu = "select_comboNbAdu_"+idChambre;
	var idSelectNbEnf = "select_comboNbEnf_"+idChambre;
	var max = $('input_nbMax_'+idChambre).value;
	$(idSelectNbAdu).disabled=false;
	$(idSelectNbEnf).disabled=false;
	if(parseInt($(idSelectNbAdu).value)+parseInt($(idSelectNbEnf).value) > parseInt(max)){
		$('div_messageClient_'+idChambre).addClassName("msgClientAffiche");
		var mess = "Attention, le nombre de personnes sélectionnées est supérieur à la capacité maximum de la chambre, il nous est impossible de calculer le prix";
		setHTMLById('span_messageClient_'+idChambre,mess);		
	}
	activeChoixOptionChambre(idChambre,true,true);

}

/******* desactivation du select quand la chambre est décochée *****/
function desactiveChoixNbPersPourChambre(idChambre){
	var idSelectNbAdu = "select_comboNbAdu_"+idChambre;
	var idSelectNbEnf = "select_comboNbEnf_"+idChambre;
	$(idSelectNbAdu).disabled=true;
	$(idSelectNbEnf).disabled=true;
    $(idSelectNbAdu).value=0;
	$(idSelectNbEnf).value=0;
    $('prix_chb_'+idChambre).value="0.00";
    $('prixReel_chb_'+idChambre).value="0.00";
    if($('div_detailPrixChambre_'+idChambre))$('div_detailPrixChambre_'+idChambre).setStyle({display:'none'});
    if($('nbAduSelect_'+idChambre))$('nbAduSelect_'+idChambre).setStyle({display:'none'});
    if($('nbEnfSelect_'+idChambre))$('nbEnfSelect_'+idChambre).setStyle({display:'none'});
	activeChoixOptionChambre(idChambre,true,true);
}
//Gere l'affichage des options pour les chambres
function activeChoixOptionChambre(idChambre,disabled,raz){
	if(idChambre>0){
		$$("#selectionOption_"+idChambre+" SELECT, #selectionOption_"+idChambre+" INPUT").each(function(obj){
			obj.disabled=disabled;
			if(raz==true){
				if(obj.type=="select-one"){
					obj.selectedIndex=0;
				}
				if(obj.type=="checkbox"){
					obj.checked=0;
				}
			}
		});
		if($("div_infoOption_"+idChambre)){
			if(disabled==false){
				$("div_infoOption_"+idChambre).style.display="block";
			}else{
				$("div_infoOption_"+idChambre).style.display="none";
				$("div_infoOption_"+idChambre).innerHTML="";
			}
		}
		if($("div_prixOption_"+idChambre)){
			$("div_prixOption_"+idChambre).disabled=disabled;
			if(disabled==true){
				$("div_prixOption_"+idChambre).style.display="none";
			}
		}
		if($("input_prixOption_"+idChambre)){
			if(raz==true){
				$("input_prixOption_"+idChambre).value=0;
			}
		}

	}else if(idChambre==-1){
		$$(".comboOptionNbPers").each(function(obj){
			obj.selectedIndex=0;
		});
		$$(".checkOptionChb").each(function(obj){
			obj.checked=0;
		});
		$$(".div_prixOption").each(function(obj){
			obj.style.display="none";
		});
		$$(".input_prixOption").each(function(obj){
			obj.value=0;			
		});
		$$(".div_infoOption").each(function(obj){
			obj.style.display="none";
			obj.innerHTML="";
		});		
	}
}
function effaceMess(idChambre){
      if($('div_messageClient_'+idChambre).hasClassName("msgClientAffiche")) $('div_messageClient_'+idChambre).removeClassName("msgClientAffiche");
      setHTMLById('span_messageClient_'+idChambre, '');
}

/***** desafecte chambre du panier quand chambre est décochée ou nb personnes=0******/
function desaffecteChbResa(idChambre){
    $('prix_chb_'+idChambre).value="0.00";
    $('prixReel_chb_'+idChambre).value="";
       var adr="./ajax/infosDistProp.php";
       var sending="info=DESAFECTE_CHAMBRE_RESA&idSelect="+getValueById("input_idSelect")+"&num="+getValueById("numGite")+"&idChambre="+idChambre;
       appelAjaxToFunc(adr,sending,calculTotal);
}


/****************** affichage composition et envoie de la requete pour calcul de prix *******************/
function valideCompoFamilleChbFormResaProp(idChambre,nbAduSel,nbEnfSel,nbMax,objElem){
    //quand le nombre de personne par chambre change
      var nbEnfants = parseInt(nbEnfSel);
      var nbAdultes = parseInt(nbAduSel);

	  if(objElem){
		objElem.blur()
	  }
      /** capacité de la chambre dépassée **/
      if(nbEnfants+nbAdultes>parseInt(nbMax)) {		
		objElem.selectedIndex = objElem.oldValue ;
		$('div_messageClient_'+idChambre).addClassName("msgClientAffiche");
		var mess = "Attention, le nombre de personnes sélectionnées est supérieur à la capacité maximum de la chambre, il nous est impossible de calculer le prix";
		setHTMLById('span_messageClient_'+idChambre,mess);
		//$('prix_chb_'+idChambre).value="0.00";
		//$('prixReel_chb_'+idChambre).value="";
		//var adr="./ajax/infosDistProp.php";
		/** on affecte quand même la chambre au panier mais sans calcul de prix **/
		//var sending="info=AFFECTE_CHAMBRE_RESA&idSelect="+getValueById("input_idSelect")+"&num="+getValueById("numGite")+"&idChambre="+idChambre;
		//sending+="&nbadultes="+nbAdultes;
		//sending+="&nbenfants="+nbEnfants;
		//appelAjaxToFunc(adr,sending,calculTotal);
     }else {
		  /***** libelle de personnes par chambre  ******/
		  if(nbAdultes>0){
			if(nbAdultes>1)var adulte = nbAdultes+" adultes";
			else var adulte = nbAdultes+" adulte";
			$('nbAduSelect_'+idChambre).innerHTML=adulte;
		 }else $('nbAduSelect_'+idChambre).innerHTML='';
		 if(nbEnfants>0){
			if(nbEnfants>1)var enfant = nbEnfants+" enfants";
			else var enfant = nbEnfants+" enfant";
			$('nbEnfSelect_'+idChambre).innerHTML=enfant;
		  }else  $('nbEnfSelect_'+idChambre).innerHTML='';

		if($('div_messageClient_'+idChambre).hasClassName("msgClientAffiche")) $('div_messageClient_'+idChambre).removeClassName("msgClientAffiche");
		setHTMLById('span_messageClient_'+idChambre, '');

		if(nbAdultes==0 && nbEnfants==0){
		   desaffecteChbResa(idChambre);
		}else{
			/** calcul du prix par requete 57 **/
			affMsgAttenteParDessusInDiv("div_detail_selection_"+idChambre);
			var adr="./ajax/infosDistProp.php";
			var sending="info=CHARGE_PRIX_CHAMBRE_RESA_LD&idSelect="+getValueById("input_idSelect")+"&num="+getValueById("numGite")+"&idChambre="+idChambre;
			sending+="&nbadultes="+nbAdultes;
			sending+="&nbenfants="+nbEnfants;
			attenteValide(1);
			appelAjaxToFunc(adr,sending,refreshPrix);
       }
    }
}
function attenteValide(affiche){
	if($("img_chargementValide") && $("a_verifFormResaProp")){
		if(affiche){
			$("img_chargementValide").style.display="inline";
			$("a_verifFormResaProp").style.display="none";
		}else{
			$("img_chargementValide").style.display="none";
			$("a_verifFormResaProp").style.display="block";
		}
	}

}
/******************************** Affichage Prix et calcul total**************************************/

function refreshPrix(retour){
   //if (!retour) return;
   	if(retour){
	    eval("var tabRetour="+retour);
	    var num_chambre=tabRetour['num_chambre'];
	    var prix =sprintf("%0.2f",tabRetour['prix_chambre']);
	    //var prix_total=tabRetour['prix_total'];
	   	//var prix_acompte = tabRetour['prix_acompte'];
	    var taux_acompte = tabRetour['taux_acompte'];
	    // jslog(num_chambre+" // "+prix+ "//"+prix_acompte);
	    if($('prix_chb_'+num_chambre)){
			$('prix_chb_'+num_chambre).value=prix;
			$('prix_chb_'+num_chambre).onchange = function (evt){
				if(parseInt($('prix_chb_'+num_chambre).value)>prix){
					$('prix_chb_'+num_chambre).value=prix;
					$('div_messageClient_'+num_chambre).addClassName("msgClientAffiche");
					var mess = "le montant de la location ne peut être supérieur à "+prix+" &euro;.";
					setHTMLById('span_messageClient_'+num_chambre,mess);
				}
				calculTotal();
			}
		}
	    $('prixReel_chb_'+num_chambre).value =prix;
        if($('tauxAcompte')){
            if(parseInt(taux_acompte) != parseInt($('tauxAcompte').value))$('tauxAcompte').value = taux_acompte;
        }
        $('div_detailPrixChambre_'+num_chambre).setStyle({display:'block'});
	    if($('nbAduSelect_'+num_chambre))$('nbAduSelect_'+num_chambre).setStyle({display:'inline'});
	    if($('nbEnfSelect_'+num_chambre))$('nbEnfSelect_'+num_chambre).setStyle({display:'inline'});
	    effaceMsgAttenteParDessus();
       
	    /*** si erreur dans le calcul des prix on affiche un message ***/
	    if(tabRetour['erreur']){
	        $('div_messageClient_'+num_chambre).addClassName("msgClientAffiche");
	     	//var mess = "Attention, le calcul du prix pour cette chambre est impossible, veuillez saisir le prix désiré";
	     	var mess = "Attention, le calcul du prix pour cette chambre est impossible.";
	     	setHTMLById('span_messageClient_'+num_chambre,mess);
			if($('select_comboNbAdu_'+num_chambre)){
				$('select_comboNbAdu_'+num_chambre).selectedIndex=0;
			}
			if($('select_comboNbEnf_'+num_chambre)){
				$('select_comboNbEnf_'+num_chambre).selectedIndex=0;
			}
   		}
  	}
    calculTotal();
}

function calculTotal(){
    var total=0;
    var totalOption=0;
	var yaoption=false;
    $$('.detailPrixChambre_input').each(function(obj){
        total+=parseFloat(obj.value);
    });

    $('prixTotalLocation').innerHTML=sprintf("%0.2f",total)+" &euro;";
    $('prixLocation').value=sprintf("%0.2f",total);

	$$('.input_prixOption').each(function(obj){
		yaoption=true;
        totalOption+= parseFloat(obj.value);
    });
	if($('prixTotalLocationOption')){		
		if(yaoption===true){
			$('prixTotalLocationOption').innerHTML=sprintf("%0.2f",totalOption)+" &euro;";
			$('prixTotalOptionChambre').value=parseFloat(totalOption);
		}
	}
	if($('prixTotalLocationTotal')){
		total = total + totalOption;
		$('prixTotalLocationTotal').innerHTML=sprintf("%0.2f",total)+" &euro;";

	}


    if($('tauxAcompte')){
        var taux = $('tauxAcompte').value;
    }else{
        taux=0;
    }    
    if(parseInt(taux)<1 || !taux) taux = 25;
    if(total >0){
        var acompte = total*(taux/100);
        if($('tauxAcompte')){$('prixAcompte').value = sprintf("%0.2f",acompte);}
    }else{
         if($('tauxAcompte')){$('prixAcompte').value= "0.00";}
    }
	attenteValide(0);
	//effaceMsgAttenteParDessus("prixTotalLocation");
}


function yaChambresCochees(tabForm){
	for (var i=0;i<tabForm.length;i++){
		if($(tabForm[i].id).checked) return true;
	}
	return false;
}




/******************************** verification formulaire resa Prop**************************************/
function verifFormResaProp(returnMsg){
	var msgErr = null;
	
	var nom 			= new String("");
	var prenom 			= new String("");
	var adr1 			= new String("");
	var cp 				= new String("");
	var ville 			= new String("");
	var teldom 			= new String("");
	var mail 			= new String("");
	var emailConfirm	= new String("");
	
	if(document.getElementById("nom"))nom = new String(document.getElementById("nom").value);
	if(document.getElementById("prenom"))prenom = new String(document.getElementById("prenom").value);
	if(document.getElementById("adr1"))adr1 = new String(document.getElementById("adr1").value);
	if(document.getElementById("cp"))cp = new String(document.getElementById("cp").value);
	if(document.getElementById("ville"))ville = new String(document.getElementById("ville").value);
	if(document.getElementById("teldom"))teldom = new String(document.getElementById("teldom").value);
	if(document.getElementById("mail"))mail = new String(document.getElementById("mail").value);
	if(document.getElementById("emailConfirm"))emailConfirm = new String(document.getElementById("eMailConfirm").value);
	
	if(nom.substr(0,9)=="-- ERREUR" || prenom.substr(0,9)=="-- ERREUR" || adr1.substr(0,9)=="-- ERREUR" ||
	cp.substr(0,9)=="-- ERREUR" || ville.substr(0,9)=="-- ERREUR" || teldom.substr(0,9)=="-- ERREUR" ||
	mail.substr(0,9)=="-- ERREUR" || emailConfirm.substr(0,9)=="-- ERREUR") 
		msgErr = "Il y a des erreurs dans la saisie des coordonn&eacute;es du client";
	
	if(document.getElementById("commentaireDossier") && document.getElementById("commentaireDossier").value.length>180)
		msgErr = "Le commentaire pour cette r&eacute;servation ne peut pas exc&eacute;der 180 caractères. Merci de modifier ce champ.";
	
	if(mail.length>0 && document.getElementById("emailConfirm") && emailConfirm.length==0)
		msgErr = "Le mail du client n'a pas &eacute;t&eacute; confirm&eacute;!";
			
	if(nom.length==0 || prenom.length==0 || adr1.length==0 || cp.length==0 || ville.length==0)
		msgErr = "Certains champs obligatoires concernant les coordonn&eacute;es du client n'ont pas &eacute;t&eacute; saisis!";
	
	if(document.getElementById("nb_adulte") && document.getElementById("nb_adulte").value==0)
		msgErr = "Le nombre d'adultes inscrits au s&eacute;jour n'a pas &eacute;t&eacute; renseign&eacute;.";
	

 if(!$('fs_formResaProp_chambres')){

     	if(document.getElementById("prixLocationReel") && document.getElementById("prixLocation")){
            if(parseFloat(document.getElementById("prixLocation").value)>parseFloat(document.getElementById("prixLocationReel").value) && parseFloat(document.getElementById("prixLocationReel").value)>0)
             msgErr = "Le prix de location saisi est sup&eacute;rieur au montant de location param&eacute;tr&eacute; par la centrale de r&eacute;servation, ce dossier ne peut donc être enregistr&eacute;.";
	}

	if(document.getElementById("prixAcompte") && document.getElementById("prixLocationReel") && parseFloat(document.getElementById("prixAcompte").value)>parseFloat(document.getElementById("prixLocationReel").value *0.25))
		msgErr = "Le montant d'acompte demand&eacute; ne peut pas être sup&eacute;rieur &agrave; 25% du prix total de la location. Merci de ressaisir ce montant.";	
	
 }

	//if(document.getElementById("prixLocation") && isNaN(document.getElementById("prixLocation").value))
	//	msgErr = "Le prix de location saisi est incorrect. Merci de ressaisir ce champ.";
		
	//if(document.getElementById("prixAcompte") && isNaN(document.getElementById("prixAcompte").value))
	//	msgErr = "Le montant d'acompte saisi est incorrect. Merci de ressaisir ce champ.";
		
	//if(document.getElementById("montantPercu") && isNaN(document.getElementById("montantPercu").value))
	//	msgErr = "Le montant per&ccedil;u saisi est incorrect. Merci de ressaisir ce champ.";
	
	//if(document.getElementById("montantPercu") && document.getElementById("prixLocation") && parseFloat(document.getElementById("montantPercu").value)>parseFloat(document.getElementById("prixLocation").value))
	//		msgErr = "Le montant per&ccedil;u est sup&eacute;rieur au montant de location, ce dossier ne peut donc être enregistr&eacute;.";

        /******resa ld chambre******/
        if($('fs_formResaProp_chambres')){
            var chambreChoisi=false;
            var adulteChoisi=false;
            $$('.comboNbAduChb').each(function(obj){if(parseInt(obj.value)>0) adulteChoisi=true;});
            if(!adulteChoisi)msgErr = "Le nombre d'adultes inscrits au s&eacute;jour n'a pas &eacute;t&eacute; renseign&eacute;.";
  
            $$('.checkboxChb').each(function(obj){if(obj.checked) chambreChoisi=true;});
            if(!chambreChoisi)msgErr = "Aucune chambre n'a &eacute;t&eacute; choisie pour le s&eacute;jour";

        }

        if(document.getElementById("nb_adulte") && document.getElementById("nb_adulte").value==0)
	msgErr = "Le nombre d'adultes inscrits au s&eacute;jour n'a pas &eacute;t&eacute; renseign&eacute;.";

	if(document.getElementById("heureDeb") && document.getElementById("heureFin") && 
	document.getElementById("minuteDeb") && document.getElementById("minuteFin")){		
		if(document.getElementById("heureDeb").value>24 || document.getElementById("heureFin").value>24 || 
		document.getElementById("minuteDeb").value>59 || document.getElementById("minuteFin").value>59 ||
		isNaN(document.getElementById("heureDeb").value) || isNaN(document.getElementById("heureFin").value) ||
		isNaN(document.getElementById("minuteDeb").value) || isNaN(document.getElementById("minuteFin").value))
			msgErr = "Un problème de saisie a &eacute;t&eacute; d&eacute;tect&eacute;e au niveau des heures d'arriv&eacute;e et de d&eacute;part. Merci de v&eacute;rifier ces champs.";  
	}

   
	if(returnMsg || (mail.length==0 && !confirm("Attention: Email Non renseigné - Les documents devront être envoyés par courrier, continuer ?")) ) return msgErr;
	else{	 
		if(msgErr)document.getElementById("div_formResaMsgErreur").innerHTML = "<p class='p_formResaMsgErreur'>"+msgErr+"</p>";
		else{
                    if($('div_resaPropChambres')) validationResaChambreProp();
                    else validationResaProp();
                }
	}
}

function getSendingForResaProp(){

	var vars='';
	var tabResaPropChpATraiter = new Array("numGite","dateDeb","dateFin","duree","heureDeb","minuteDeb","heureFin","minuteFin","prixLocation",
	"prixAcompte","montantPercu","nb_adulte","nb_enfant","nb_chat","nb_chien","titre","nom","prenom","adr1","adr2","cp","ville",
	"pays","teldom","telbur","fax","mail","commentaireDossier","dateProchEcheance","numero_resa","typeDossier","exercice", "assurance",
	"prixLocationSupplement","resaCentrale","prixLocationAssurance","prixLocationFraisDossier","prixFD","motMagique");
	if($('div_resaPropChambres')){
		   tabResaPropChpATraiter.push("input_idSelect");
           tabResaPropChpATraiter.push("select_comboNbAdu_1", "select_comboNbAdu_2", "select_comboNbAdu_3", "select_comboNbAdu_4", "select_comboNbAdu_5");
           tabResaPropChpATraiter.push("select_comboNbEnf_1", "select_comboNbEnf_2", "select_comboNbEnf_3", "select_comboNbEnf_4", "select_comboNbEnf_5");
           tabResaPropChpATraiter.push("prix_chb_1", "prix_chb_2", "prix_chb_3", "prix_chb_4", "prix_chb_5");
           tabResaPropChpATraiter.push("nomChb_1", "nomChb_2", "nomChb_3", "nomChb_4", "nomChb_5");
           tabResaPropChpATraiter.push("prixReel_chb_1", "prixReel_chb_2", "prixReel_chb_3", "prixReel_chb_4", "prixReel_chb_5");
           tabResaPropChpATraiter.push("input_prixOption_1", "input_prixOption_2", "input_prixOption_3", "input_prixOption_4", "input_prixOption_5");
        }
	var cle;
	for(cle in tabResaPropChpATraiter){
  		if(document.getElementById(tabResaPropChpATraiter[cle])) vars+="&"+tabResaPropChpATraiter[cle]+"="+escape(document.getElementById(tabResaPropChpATraiter[cle]).value);
	}
	return vars;
}
function affImgChargementRecap(affiche){
	if($("img_chargementRecap")){
		if(affiche){
			$("img_chargementRecap").style.display="inline";
		}else{
			$("img_chargementRecap").style.display="none";
		}
	}
}
function cacheBoutonResa(){
	if($("span_recapBtn_confirmInfosCentrale")){
		$("span_recapBtn_confirmInfosCentrale").style.display="none";
	}
	if($("span_recapBtn_confirmInfosLD")){
		$("span_recapBtn_confirmInfosLD").style.display="none";
	}
	if($("span_recapBtn_confirmInfosLDInt")){
		$("span_recapBtn_confirmInfosLDInt").style.display="none";
	}
	if($("div_recapBtn_confirmInfosLDMsgInt")){
		$("div_recapBtn_confirmInfosLDMsgInt").style.display="none";
	}
	if($("div_recapBtn_confirmInfosCentraleMsgInt")){
		$("div_recapBtn_confirmInfosCentraleMsgInt").style.display="none";
	}
	if($("span_recapBtn_confirmInfosCentraleInt")){
		$("span_recapBtn_confirmInfosCentraleInt").style.display="none";
	}
	if($("span_recapBtn_confirmInfosCentraleLDMsgInt")){
		$("span_recapBtn_confirmInfosCentraleLDMsgInt").style.display="none";
	}
}

function calculeAccompte(montant_location,montant_option,montant_FD,taux_acompte,montant_assurance){
	var montant_acompte;
	var montant_total;
	montant_location=parseFloat(montant_location);
	montant_option=parseFloat(montant_option);
	montant_FD=parseFloat(montant_FD);
	taux_acompte=parseFloat(taux_acompte);
	montant_assurance=parseFloat(montant_assurance);
	if($("prixLocation")){
		montant_location=parseFloat($("prixLocation").value);
	}
	if($("prixFD")){
		montant_FD=parseFloat($("prixFD").value);
	}
	montant_total=parseFloat(montant_location+montant_FD+montant_option+montant_assurance);
	montant_acompte=Math.floor(parseFloat(montant_total*taux_acompte/100));
	if($("span_prixAcompteMontant_recapPrixResaGite")){
		//Si c'est un gite
		$("span_prixAcompteMontant_recapPrixResaGite").innerHTML=montant_acompte.toFixed(2)+" &euro;";
	}else if($("span_prixAcompteMontant_recapPrixResaChambre")){
		//Si c'est un chambre
		$("span_prixAcompteMontant_recapPrixResaChambre").innerHTML=montant_acompte.toFixed(2)+" &euro;";
	}
    else if($('span_prixAcompte_recapPrixResaGite')){// dans le cas d'une résa LD on change aussi le montant de l'accompte
        $("prixAcompte").value= montant_acompte.toFixed(2);
    }
	if($("span_montantTotalPrix_recapPrixResaGite")){		
		$("span_montantTotalPrix_recapPrixResaGite").innerHTML=montant_total.toFixed(2);
	}else if($("span_montantTotal_recapPrixResaChambre")){
		$("span_montantTotal_recapPrixResaChambre").innerHTML=montant_total.toFixed(2);
	}

}
function verifPourContratCentraleGite(){
	var adr="./ajax/infosDistProp.php";
	var sending="info=CHARGE_PRIX_GITE_RESA";
	affImgChargementRecap(1);
	cacheBoutonResa();
	appelAjaxToFunc(adr,sending,function(reponseAjax){
		affImgChargementRecap(0);
		retour=reponseAjax.evalJSON();
		if($("fs_recapPrixResaGite")){
			$("fs_recapPrixResaGite").style.display="block";
			$("fs_recapPrixResaGite").innerHTML = retour.html_prix;
		}

		if($("fs_recapResaProp_assurance")){
			$("fs_recapResaProp_assurance").style.display="block";
			$("fs_recapResaProp_assurance").innerHTML = retour.html_assurance;
			if($("assurance")){
				$("assurance").onclick = function (evt){
					if($('assurance').checked){
						setPrixAssuranceGite(1);
					}else{
						setPrixAssuranceGite(0);
					}
				}
			}
		}
		if($("prixLocation")){
			$("prixLocation").onchange = function (evt){
                var prixLocationChange = parseFloat($("prixLocation").value.replace(',','.'));
                var montant_loc_original = parseFloat(retour.montant_location);
				if(prixLocationChange>montant_loc_original){
					$("prixLocation").value = retour.montant_location;
					afficheRecapResaMessageErreur("le montant de la location ne peut être supérieur à "+retour.montant_location+" &euro;.");
				}
				calculeAccompte(retour.montant_location,retour.montant_option,retour.montant_FD,retour.taux_acompte,retour.montant_assurance);
			}
		}
		if($("prixFD")){
			$("prixFD").onchange = function (evt){
				if(parseInt($("prixFD").value)>retour.montant_FD){
					$("prixFD").value = retour.montant_FD;
					afficheRecapResaMessageErreur("le montant des frais de dossier ne peut être supérieur à "+retour.montant_FD+" &euro;.");
				}
				calculeAccompte(retour.montant_location,retour.montant_option,retour.montant_FD,retour.taux_acompte,retour.montant_assurance);
				
			}
		}
		if($("div_recapBtnPrixResaGite")){
			$("div_recapBtnPrixResaGite").style.display="block";
			$("div_recapBtnPrixResaGite").innerHTML = retour.html_bouton;
		}

	});

}
function verifPourContratLDGite(){
	var adr="./ajax/infosDistProp.php";
	var sending="info=CHARGE_PRIX_GITE_RESA_LD";
	affImgChargementRecap(1);
	cacheBoutonResa();
	
	appelAjaxToFunc(adr,sending,function(reponseAjax){
		affImgChargementRecap(0);
		retour=reponseAjax.evalJSON();
		if($("fs_recapPrixResaGite")){
			$("fs_recapPrixResaGite").style.display="block";
			$("fs_recapPrixResaGite").innerHTML = retour.html_prix;
		}

		if($("div_recapBtnPrixResaGite")){
			$("div_recapBtnPrixResaGite").style.display="block";
			$("div_recapBtnPrixResaGite").innerHTML = retour.html_bouton;
		}
		
		if($("prixLocation")){
			$("prixLocation").onchange = function (evt){
                var prixLocationChange = parseFloat($("prixLocation").value.replace(',','.'));
                var montant_loc_original = parseFloat(retour.montant_location);
				if(prixLocationChange>montant_loc_original){
					$("prixLocation").value = retour.montant_location;
					afficheRecapResaMessageErreur("le montant de la location ne peut être supérieur à "+retour.montant_location+" &euro;.");
				}
                else{
                    if(!retour.montant_option)retour.montant_option=0;
                    if(!retour.montant_FD)retour.montant_FD=0;
                    if(!retour.taux_acompte)retour.taux_acompte=25;
                    if(!retour.montant_assurance)retour.montant_assurance=0;
                    calculeAccompte(retour.montant_location,retour.montant_option,retour.montant_FD,retour.taux_acompte,retour.montant_assurance);
                }
			}
		}
		if($("prixAcompte")){
			$("prixAcompte").onchange = function (evt){
				if($("prixAcompte").value>retour.montant_acompte){
					$("prixAcompte").value=retour.montant_acompte;
					afficheRecapResaMessageErreur("l'acompte ne peut être supérieur à "+retour.montant_acompte+" &euro;.");
				}
			}
		}
	});

}
function afficheRecapResaMessageErreur(msg){
	if($("spanRecapResaMessageErreur")){
		$("spanRecapResaMessageErreur").innerHTML=msg;
	}
}
function chaineUrlPrixChambre(){
	var url="";
	for(var i=1;i<6;i++){
		if($("prix_chb_"+i) && $("prixReel_chb_"+i) ){
			url+="prix_chb_"+i+"="+$("prix_chb_"+i).value+"&";
			url+="prixReel_chb_"+i+"="+$("prixReel_chb_"+i).value+"&";
		}
	}
	return url;
}
/**** verification de la capacite pour contrat en centrale ****/
function verifPourContratCentraleChambre(){
    if($('fs_formResaProp_chambres')){
		affImgChargementRecap(1);
		var adr="./ajax/infosDistProp.php";
		var newPrixChambre=chaineUrlPrixChambre()
		var sending="info=CHARGE_PRIX_CHAMBRE_RESA&idSelect="+getValueById("input_idSelect")+"&"+newPrixChambre;
		cacheBoutonResa();
		appelAjaxToFunc(adr,sending,function(reponseAjax){
			affImgChargementRecap(0);
			retour=reponseAjax.evalJSON();
			if($("fs_recapPrixResaChambre")){
				$("fs_recapPrixResaChambre").style.display="block";
				$("fs_recapPrixResaChambre").innerHTML = retour.html_prix;
			}

			if($("fs_recapResaProp_assurance")){
				$("fs_recapResaProp_assurance").style.display="block";
				$("fs_recapResaProp_assurance").innerHTML = retour.html_assurance;
				if($("assurance")){
					$("assurance").onclick = function (evt){
						if($('assurance').checked){
							setPrixAssuranceChambre(1);
						}else{
							setPrixAssuranceChambre(0);
						}
					}
				}
			}
			if($("div_recapBtnPrixResaChambre")){
				$("div_recapBtnPrixResaChambre").style.display="block";
				$("div_recapBtnPrixResaChambre").innerHTML = retour.html_bouton;
			}

			if($("prixFD")){
				$("prixFD").onchange = function (evt){
					if(parseInt($("prixFD").value)>retour.montant_FD){
						$("prixFD").value = retour.montant_FD;
						afficheRecapResaMessageErreur("le montant des frais de dossier ne peut être supérieur à "+retour.montant_FD+" &euro;.");
					}
					var montant_option=0;
					if($("prixTotalOptionChambre")){
						montant_option=$("prixTotalOptionChambre").value;
					}

					calculeAccompte(retour.montant_location,montant_option,retour.montant_FD,retour.taux_acompte,retour.montant_assurance);
				}
			}

		});
		
	}
}
function verifPourContratLDChambre(){
    if($('fs_formResaProp_chambres')){
		affImgChargementRecap(1);
		var adr="./ajax/infosDistProp.php";
		var sending="info=CHARGE_PRIX_CHAMBRE_RESA&RESA_LD=1&idSelect="+getValueById("input_idSelect");
		cacheBoutonResa();
		appelAjaxToFunc(adr,sending,function(reponseAjax){
			affImgChargementRecap(0);
			retour=reponseAjax.evalJSON();
			if($("fs_recapPrixResaChambre")){
				$("fs_recapPrixResaChambre").style.display="block";
				$("fs_recapPrixResaChambre").innerHTML = retour.html_prix;
			}
			if($("div_recapBtnPrixResaChambre")){
				$("div_recapBtnPrixResaChambre").style.display="block";
				$("div_recapBtnPrixResaChambre").innerHTML = retour.html_bouton;
			}
			if($("prixAcompte")){
				$("prixAcompte").onchange = function (evt){
					if($("prixAcompte").value>retour.montant_acompte){
						$("prixAcompte").value=retour.montant_acompte;
						afficheRecapResaMessageErreur("l'acompte ne peut être supérieur à "+retour.montant_acompte+" &euro;.");
					}
				}
			}
		});
		var msg ='';
		if($('mail').value.length <1){
			msg += "<li>Attention, pour le contrat centrale, si aucun e-mail n'est renseigné, le paiement en ligne ne sera pas possible sur le compte client.</li>";
			afficheMessAlertRecap("<ul>"+msg+"</ul>", false);
		}

	}

    
}
function afficheMessAlertRecap(msg, bloquant){
	if(bloquant){
		$('span_recapBtn_confirmInfosCentrale').addClassName("span_recapBtn_disable");
		$('lien_confirm_resa').onclick = '';
		$('lien_confirm_resa').setOpacity(0.5);
	}
	var html = "<div class='msgClientAffiche'>"+msg+"</div>";
	$('div_recapResaPropBtn').insert(html, {position:'before'});
}

function afficheChoixAssurance(){
	$('span_recapBtn_confirmInfosLD').style.display='none';
	$('span_recapBtn_confirmInfosLD').innerHTML='';
	Effect.BlindDown('fs_recapResaProp_assurance', {duration: 0.3});
	$('span_recapBtn_confirmInfosCentrale').innerHTML ="";
	$('assurance').onclick = function (evt){
		if(this.checked)this.value='check';
		else this.value='';
	}
}


function validationResaProp(){

	var html = "<div id='div_recapResaProp'></div>";
	var L=600;H=550;
	var urlXHTML = "./ajax/prop.php";
	var vars = "mode=recapResaProp";
	vars+= getSendingForResaProp();	
	afficheDivAvecTransparence(html,L,H);
	affUrlInDiv("div_recapResaProp",urlXHTML,vars);
}

function validationResaChambreProp(){

	var html = "<div id='div_recapResaProp'></div>";
	var L=600;H=600;
	var urlXHTML = "./ajax/prop.php";
	var vars = "mode=recapResaProp";
	vars+= getSendingForResaProp();
        vars+="&resa=chambre";
	afficheDivAvecTransparence(html,L,H);
	affUrlInDiv("div_recapResaProp",urlXHTML,vars);
}
function enregistrementResaProp(){

	var html = "<div id='div_confirmResaProp'></div>";
	var L=500;H=300;
	var urlEnregResa = "./ajax/enregistrementResaProp.php";
	
	window.htmlRecapResaProp = $("div_recapResaProp").innerHTML;
	var sending = getSendingForResaProp();
	sending+="&mode=creationDossier";
	afficheDivAvecTransparence(html,L,H);
	affUrlInDiv("div_confirmResaProp",urlEnregResa,sending,"",effaceFormResaProp);
}
/**** enregistrement de la resa LD contrat centrale ou LD ****/
function enregistrementResaChambreProp(resaCentrale){
        
	var html = "<div id='div_confirmResaProp'></div>";
	var L=500;H=270;
	var urlEnregResa = "./ajax/enregistrementResaProp.php";
	window.htmlRecapResaProp = $("div_recapResaProp").innerHTML;
	var sending = getSendingForResaProp();
	sending+="&mode=creationDossier";
    if(resaCentrale)sending+="&resaCentrale="+resaCentrale;
	afficheDivAvecTransparence(html,L,H);
	affUrlInDiv("div_confirmResaProp",urlEnregResa,sending,"",effaceFormResaProp);
}

function effaceFormResaProp(){
	$("div_formResaProp").innerHTML = window.htmlRecapResaProp;
	window.htmlRecapResaProp = null;
}
function chargeLstResa(exercice,tabNumGite,idDivAffichage,adrProprio,nomProp,prenomProp,numeroResa,scroll,msgResa,sejourPlusUn){
	resas=new Resas();
	resas.setExercice(exercice);
	resas.setEmailProprio(adrProprio);
	resas.setNomPrenomProprio(nomProp,prenomProp);
	resas.setIdDivAffichage(idDivAffichage);
	if(sejourPlusUn){
		resas.setSejourPlusUn(sejourPlusUn);
	}
	if(!numeroResa){
		resas.setTabNumGite(tabNumGite,null,"O");
	}else{
		//Permet d'ouvrir une resa automatiquement
		resas.setTabNumGite(tabNumGite,function (){resas.chargeDetailResaByNumResa(numeroResa,scroll,msgResa)},"O");
	}
	


}

function chargeResaPourUnHebergement(exercice,numGite,numResa,nomProp,prenomProp,adrProprio){
	var objBtn = document.getElementById("span_resaConfirm_btnVoirDossier");
	if(objBtn) objBtn.innerHTML = "<img src='/config_v3/imgs_defaut/jauge.gif'>";
	resas=new Resas();
	resas.setExercice(exercice);
	resas.setEmailProprio(adrProprio);
	resas.setNomPrenomProprio(nomProp,prenomProp);
	resas.lanceAppelAjxForOneStruct(numGite,function (){resas.afficheDetailResaByNoResa(parseInt(numResa))});
}
	
function enregistrementModifDossier(funcQdFini){

	document.getElementById("div_formResaMsgErreur").innerHTML = "";
	var msgErr = verifFormResaProp(true);

	if(msgErr) document.getElementById("div_formResaMsgErreur").innerHTML = "<p class='p_formResaMsgErreur'>"+msgErr+"</p>";
	else{
		var html = "<div id='div_confirmModifDossier'></div>";
		var L=500;
		var H=200;
		var urlEnregModif = "./ajax/enregistrementResaProp.php";
		var xhr_local=creeObjHttpRequest();
		
		var sending = getSendingForResaProp();
		sending+="&mode=modifDossier";
		sending+=getInfoSession("PHPSESSID");
		
		afficheDivAvecTransparence(html,L,H);
			
		xhr_local.onreadystatechange = function(){
			if(xhr_local.readyState == 4 && xhr_local.status == 200){
				contenu=xhr_local.responseText;	
				if (contenu.length>0){		
					document.getElementById("div_confirmModifDossier").innerHTML=contenu;		
				}		
				if (funcQdFini)funcQdFini();
					
			}
		}
		xhr_local.open("POST",urlEnregModif,true);
		xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); 
		xhr_local.send(sending);
	}
}

function enregistrementModifCommentaire(funcQdFini){

	document.getElementById("div_formResaMsgErreur").innerHTML = "";
	var html = "<div id='div_confirmModifDossier'></div>";
	var L=500;
	var H=200;
	var urlEnregModif = "./ajax/enregistrementResaProp.php";
	var xhr_local=creeObjHttpRequest();
	var sending = getSendingForResaProp();
	sending+="&mode=modifCommentaire";
	sending+=getInfoSession("PHPSESSID");
	afficheDivAvecTransparence(html,L,H);
	xhr_local.onreadystatechange = function(){
		if(xhr_local.readyState == 4 && xhr_local.status == 200){
			contenu=xhr_local.responseText;
			if (contenu.length>0){
				document.getElementById("div_confirmModifDossier").innerHTML=contenu;
			}
			if (funcQdFini)funcQdFini();
		}
	}
	xhr_local.open("POST",urlEnregModif,true);
	xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	xhr_local.send(sending);
}


function enregistrementAnnulDossier(funcQdFini){

	var html = "<div id='div_confirmAnnulDossier'></div>";
	var L=500;H=200;
	var urlEnregAnnul = "./ajax/enregistrementResaProp.php";
	
	var sending ="&mode=annulDossier";
	sending+=getSendingForResaProp();
	//sending+="&numero_resa="+document.getElementById("numero_resa").value;
	//sending+="&typeDossier="+document.getElementById("typeDossier").value;
	//sending+="&numGite="+document.getElementById("numGite").value;
	
	afficheDivAvecTransparence(html,L,H);
		
	affUrlInDiv("div_confirmAnnulDossier",urlEnregAnnul,sending,"",funcQdFini);

}

function enregistrementConfirmeIntention(funcQdFini){

	var html = "<div id='div_confirmeIntention'></div>";
	var L=500;H=200;
	var urlEnregAnnul = "./ajax/enregistrementResaProp.php";

	var sending ="&mode=confirmeIntention";
	sending+=getSendingForResaProp();
	//sending+="&numero_resa="+document.getElementById("numero_resa").value;
	//sending+="&typeDossier="+document.getElementById("typeDossier").value;
	//sending+="&numGite="+document.getElementById("numGite").value;

	afficheDivAvecTransparence(html,L,H);

	affUrlInDiv("div_confirmeIntention",urlEnregAnnul,sending,"",funcQdFini);

}

/*******************************Plannings********************************************/

function affichagePlanningPrecedent(elt){
		if(elt.className == 'affichePlanPrec'){
			elt.className ='cachePlanPrec';
			elt.innerHTML = 'Cacher les plannings des mois pr&eacute;c&eacute;dents';
			$$(".calendItea_avant").each(function(obj){
				if(getVersionIE()<9)obj.style.display ='block';
				else{
					if($$('.calendItea_ul')[0].getAttribute('modeaff')=='CARRE')Effect.BlindDown(obj, {duration: 0.5, scaleX:true, scaleY:false});
					else Effect.BlindDown(obj, {duration: 0.5});
				}
			});
			$$(".calendItea_li_enreg_avant").each(function(obj){
				obj.style.display ='block';
			});
		}else if(elt.className == 'cachePlanPrec'){
			elt.className = 'affichePlanPrec';
			elt.innerHTML = 'Afficher les plannings des mois pr&eacute;c&eacute;dents';
			$$(".calendItea_avant").each(function(obj){
				if(getVersionIE()<9)obj.style.display ='none';
				else{
					if($$('.calendItea_ul')[0].getAttribute('modeaff')=='CARRE')Effect.BlindUp(obj, {duration: 0.5, scaleX:true, scaleY:false});
					else Effect.BlindUp(obj, {duration: 0.5});
				}
			});
			$$(".calendItea_li_enreg_avant").each(function(obj){
				obj.style.display ='none';
			});
		}
}
function afficheJourArrive(tabJourArrive,multi_planning,params){
    for(var i_resa=0 ;i_resa<tabJourArrive.length ; i_resa++ ){
        //Creation de l'id
        var resa = tabJourArrive[i_resa];
        var id_date ;
        var reg_date=new RegExp("(/)", "g");
        var id_span ;
        var contenu_span;
        if(!resa[2]){
            id_date = resa[1][0].replace(reg_date,"");
            if(params.AFFETATPLUS){
                if(multi_planning){
                    id_span = "lbl_"+id_date+"_"+resa[3];
                    
                }else{
                    id_span = "lbl_"+id_date;
                }               
                $(id_span).style.fontWeight="bold";
            }else{                
                if(multi_planning){
                    id_span = "id_"+id_date+"_"+resa[3];
                }else{
                    id_span = "id_"+id_date;
                }
                if($(id_span))
                {
                    if( ($(id_span)).innerHTML==""){
                        contenu_span  = "<span style='display:inline;font-size:20px;font-weight:bold'>*</span>";
                        ($(id_span)).innerHTML = contenu_span;
                    }else if($(id_span).childNodes[0] && $(id_span).childNodes[0].nodeType==3){
                         contenu_span  = "<span style='display:inline;font-size:15px;font-weight:bold'>*</span>";
                        ($(id_span)).innerHTML = ($(id_span)).innerHTML+contenu_span;
                    }
                }
            }
        }else{            
            if(params.AFFETATPLUS){
                for (var i_chambre=0 ;i_chambre<resa[1].length;i_chambre++ ){
                    id_date = resa[1][i_chambre][0].replace(reg_date,"");
                    num_chambre = resa[1][i_chambre][1]
                    id_span = "lbl_"+id_date+"_"+(num_chambre);
                    $(id_span).style.fontWeight="bold";
                }
            }else{
                for (var i_chambre=0 ;i_chambre<resa[1].length;i_chambre++ ){
                    id_date = resa[1][i_chambre][0].replace(reg_date,"");
                    num_chambre = resa[1][i_chambre][1]
                    id_span = "id_"+id_date+"_"+(num_chambre);
                    contenu_span  = "<span style='display:inline;font-size:20px;font-weight:bold'>*</span>";
                    if( ($(id_span)).innerHTML==""){
                        ($(id_span)).innerHTML = contenu_span;
                    }else if($(id_span).childNodes[0] && $(id_span).childNodes[0].nodeType==3){
                        ($(id_span)).innerHTML = ($(id_span)).innerHTML+contenu_span;
                    }
                }
            }
        }   
    }
}

/************************************
 *chargement du planning saisonnier *
*************************************/
function initPlanningSaisonnier(exercice,numGite,dpt,affEtatPlus){
	var url="./ajax/infosDistProp.php";
	var sending="&INFO=RECUP_INFOS_SAISON&numGite="+numGite;
	sending+="&exercice="+exercice;
	sending+="&dpt="+dpt;

	appelAjaxToFunc(url,sending,function(reponse){
		eval("var tabReponse="+reponse);
		var chaineSais=new String(tabReponse.calend_sais);
		//on set les infos saisonnier sur le calendrier
		if(chaineSais.length>0){
			var nbLigne;
			if($$('.calendItea_ul_LIGNE')[0]){
				nbLigne=$$('.calendItea_ul_LIGNE')[0].getAttribute("nb_chambre");
			}

			var calendDispo=$("calendItea_divDispo_v3");
			if(calendDispo){
                if(tabReponse.date_deb)
                    var dte=new OBJDate(tabReponse.date_deb);
                else
                    var dte=new OBJDate(calendDispo.getAttribute("dtedispos"));
				var idCurr;
				var saison;
				var tabSaisonCoress=new Array();
				var today = new OBJDate();
				today.definition();

				for(var i=0;i<chaineSais.length;i++){
					if(nbLigne>0){
						for(var j=1;j<=nbLigne;j++){
							idCurr = "id_"+dte.toString("ddmmyyyy")+"_"+j;
							if($(idCurr)){
								saison = chaineSais.charAt(i);
								$(idCurr).setAttribute("etatCalSais",saison);
								$(idCurr).addClassName("eltAvecSaisonDefini");
							}
						}
					}else{
						idCurr = "id_"+dte.toString("ddmmyyyy");
						if($(idCurr)){
							saison = chaineSais.charAt(i);
							$(idCurr).setAttribute("etatCalSais",saison);
							$(idCurr).addClassName("eltAvecSaisonDefini");
						}
					}
					//on cherche la position de ce code saison pour la définition
					//des classes plus loin
					if(saison && !in_array(tabSaisonCoress,saison))array_push(tabSaisonCoress,saison.toUpperCase());

					dte.ajoutJour(1);
				}
				//on tri le tableau pour toujours avoir le meme ordre.
				tabSaisonCoress.sort();
			}
			//on affiche la legende en display none
			if($('div_calend_saison_legend')){
				var objLegendSais=$('div_calend_saison_legend');
				var ulLegende = new Element("ul",{"id":"ul_legendSaison"});
				var liLegende;
				var spanLegende;
				var spanLegendeCouleur;
				var libSaisJSON=eval("("+tabReponse.lib_sais+")");

				libSaisJSON.each(function(rep){
					var legendePosition=array_search(rep.code.toUpperCase(),tabSaisonCoress);

					liLegende = new Element("li",{"class":"li_legendSaison"});
					spanLegende = new Element("span",{"class":"span_legendSaison","id":"span_legendSaison_"+legendePosition});
					spanLegende.innerHTML=rep.lib;
					
					divLegende = new Element("div",{"class":"div_legende"});
					spanLegendeCouleur = new Element("span",{"class":"span_legendSaisonCouleur","id":"legendSaisonCouleur_"+legendePosition});
					spanLegendeHand = new Element("span",{"class":"span_legendSaisonCouleurHand","id":"legendSaisonCouleurHand_"+legendePosition});
					spanLegendeHand.innerHTML=rep.code.toUpperCase();
					
					divLegende.insert(spanLegendeHand);
					divLegende.insert(spanLegendeCouleur);
					liLegende.insert(divLegende);
					liLegende.insert(spanLegende);
					

					ulLegende.insert(liLegende);
				});
				objLegendSais.style.display="none";
				objLegendSais.insert(ulLegende);

				if($("span_changePlanning_saison")){
					$("span_changePlanning_saison").onclick=function(){
						if($('div_calend_saison_legend').style.display=="none"){
							$('div_calend_saison_legend').style.display="block";
							$('ul_visu_planning').style.display="none";
							$("span_changePlanning_saison").innerHTML="Afficher les disponibilit&eacute;s";
							$("span_changePlanning_saison").title="Afficher le planning disponibilit&eacute;s";
							$$(".eltAvecSaisonDefini").each(function(obj){
								var etatCal=obj.getAttribute("etatCalSais");
								obj.addClassName("legendSaisonCouleur");
								var etatPosition=array_search(etatCal.toUpperCase(),tabSaisonCoress);
								obj.addClassName("legendSaisonCouleur_"+etatPosition);
								if(affEtatPlus){									
									var id_lbl = (obj.id.replace("id" , "lbl"));
									if($(id_lbl)){
										$(id_lbl).addClassName("legendSaisonCouleurHand");
										$(id_lbl).innerHTML = etatCal;
									}
								}
								//obj.style.backgroundColor="#"+etatCal.toUpperCase()+"19"+etatCal.toUpperCase()+etatCal.toUpperCase()+"3";
							});
						}else{
							$('div_calend_saison_legend').style.display="none";
							$('ul_visu_planning').style.display="block";
							$("span_changePlanning_saison").innerHTML="Afficher le planning saisonnier";
							$("span_changePlanning_saison").title="Afficher le planning saisonnier";
							tabLbl = calendrier_getTabLblAbrevProprio();
							$$(".eltAvecSaisonDefini").each(function(obj){
								var etatCal=obj.getAttribute("etatCalSais");
								obj.removeClassName("legendSaisonCouleur");
								var etatPosition=array_search(etatCal.toUpperCase(),tabSaisonCoress);
								obj.removeClassName("legendSaisonCouleur_"+etatPosition);
								var etatSpan = obj.getAttribute("etat");
								//obj.style.backgroundColor="";
								if(affEtatPlus){
									var id_lbl = (obj.id.replace("id" , "lbl"));
									if($(id_lbl)){
										$(id_lbl).removeClassName("legendSaisonCouleurHand");
										$(id_lbl).innerHTML = tabLbl.getLblAbrev(etatSpan);
										
									}
								}

							});
						}
					}
				}
                $("span_changePlanning_saison").onclick();
			}
		}
	});
}
/**************************
 * nouvelle initialisation
***************************/
function initPlanning2(exercice,debPlanning,finPlanning,numGite,autoriseModif,autoResaCentrale,autoResaProp,planningVente,tabRefPlan,dpt,module,planningInconnu,adrProprio,nomProp,prenomProp,params){
	var debPlan = new OBJDate();
	debPlan.definition(debPlanning);
	var finPlan = new OBJDate();
	finPlan.definition(finPlanning);
	compteur31=0;
	tabCompteur31= new Array();
	calProp = true;
	if(!planningVente || planningVente!="O"){
		resas=new Resas();
		resas.setExercice(exercice);
		resas.setEmailProprio(adrProprio);
		resas.setNomPrenomProprio(nomProp,prenomProp);
		//if(numGite) resas.lanceAppelAjxForOneStruct(numGite,function (){resas.setResasSurPlanning(debPlan,finPlan,tabRefPlan,params);afficheJourArrive(resas.tabPremierJourResa,false,params);initPlanningSaisonnier(exercice,numGite,dpt,params.AFFETATPLUS);initPlanningPeriodeRestriction(numGite,false)},"O");
		if(numGite) resas.lanceAppelAjxForOneStruct(numGite,function (){resas.setResasSurPlanning(debPlan,finPlan,tabRefPlan,params);afficheJourArrive(resas.tabPremierJourResa,false,params);initPlanningPeriodeRestriction(numGite,false)},"O");
		else resas.setTabNumGite(tabRefPlan,function (){resas.setResasSurPlanning(debPlan,finPlan,tabRefPlan,params);afficheJourArrive(resas.tabPremierJourResa,true,params);initPlanningPeriodeRestriction(resas.giteTemp,true)},"O");
               
    }
}

/***************************************
 * initialisation des anciens plannings
 * 
***************************************/
function initPlanning(exercice,debPlanning,finPlanning,numGite,autoriseModif,autoResaCentrale,autoResaProp,planningVente,tabRefPlan,dpt,module,planningInconnu,adrProprio,nomProp,prenomProp,typeGite,ident,params, tabGite){
	compteur31=0;
	tabCompteur31= new Array();
	var debPlan = new OBJDate();
	debPlan.definition(debPlanning);
	var finPlan = new OBJDate();
	finPlan.definition(finPlanning); 
	/*** Chargement des resas de cet hebergement ***/
	resas=new Resas();
	resas.setExercice(exercice);
	resas.setEmailProprio(adrProprio);
	resas.setNomPrenomProprio(nomProp,prenomProp);
	if(numGite) resas.lanceAppelAjxForOneStruct(numGite,function (){resas.setResasSurPlanning(debPlan,finPlan,tabRefPlan,params)},"O");
	else resas.setTabNumGite(tabRefPlan,function (){resas.setResasSurPlanning(debPlan,finPlan,tabRefPlan,params)},"O");
	
	/*** Chargement des clics par jour pour fermeture ***/
	if(autoriseModif=="O"){
		if(!planningVente) planningVente = "N";
		
		if(planningVente=="O"){
			/*** Fermeture/Ouverture jour / jour ***/
			modifEtatVenteParJour(debPlan,finPlan);
		
			/*** Fermeture/Ouverture mois/mois ***/
			modifEtatVenteParMois(debPlan,finPlan);
		}else{
			/*** Fermeture/Ouverture jour / jour ***/
			if(tabRefPlan.length>0)modifEtatParJourMulti(debPlan,finPlan,tabRefPlan,planningInconnu, autoResaCentrale, autoResaProp, numGite, dpt, module, typeGite, ident, tabGite);
			else modifEtatParJour(debPlan,finPlan,autoResaCentrale,autoResaProp,numGite,dpt,module, typeGite, ident);
			/*** Fermeture/Ouverture mois/mois ***/
			if(tabRefPlan.length>0) modifEtatParMoisMulti(debPlan,finPlan,tabRefPlan,planningInconnu, typeGite, ident);
			else modifEtatParMois(debPlan,finPlan);
		}
		
	}else if(autoResaCentrale=="O" || autoResaProp=="O"){
		if(tabRefPlan.length>0)initCtrlClicPourResaCentraleMultiple(debPlan,finPlan,tabRefPlan,autoResaCentrale,autoResaProp,numGite,dpt,module, typeGite,ident);
		else initCtrlClicPourResaCentrale(debPlan,finPlan,autoResaCentrale,autoResaProp,numGite, dpt, module, typeGite, ident);
	}
	
	/*** On change la classe des elements d'ouverture/fermeture pour tous les mois de l'annee ***/
	if(autoriseModif=="N"){
		var dateDeb = new OBJDate();
		dateDeb.definition(debPlan.toString());

		while(dateDeb.estAvantOBJDate(finPlan) || dateDeb.estEgale(finPlan.toString())){
			if(tabRefPlan.length>0){
				for (var k=0;k<tabRefPlan.length;k++){
					var objFermeMois = document.getElementById("span_fermetureMois_"+sprintf("%02d",dateDeb.getMois())+"_"+sprintf("%04d",dateDeb.getAnnee())+"_"+tabRefPlan[k]);
					var objOuvreMois = document.getElementById("span_ouvertureMois_"+sprintf("%02d",dateDeb.getMois())+"_"+sprintf("%04d",dateDeb.getAnnee())+"_"+tabRefPlan[k]);
					var objInitMois = document.getElementById("span_initMois_"+sprintf("%02d",dateDeb.getMois())+"_"+sprintf("%04d",dateDeb.getAnnee())+"_"+tabRefPlan[k]);
					setClassForObj(objFermeMois,"span_actionsCalend");
					setClassForObj(objOuvreMois,"span_actionsCalend");
					if(objInitMois) setClassForObj(objInitMois,"span_actionsCalend");
				}			
			}else{
				var objFermeMois = document.getElementById("span_fermetureMois_"+sprintf("%02d",dateDeb.getMois())+"_"+sprintf("%04d",dateDeb.getAnnee()));
				var objOuvreMois = document.getElementById("span_ouvertureMois_"+sprintf("%02d",dateDeb.getMois())+"_"+sprintf("%04d",dateDeb.getAnnee()));
				setClassForObj(objFermeMois,"span_actionsCalend");
				setClassForObj(objOuvreMois,"span_actionsCalend");
			}
			if(Number(dateDeb.getJour())>1) dateDeb.definition("01/"+dateDeb.getMois()+"/"+dateDeb.getAnnee());
			dateDeb.getMoisSuivant();
		}
	}
	
}


function initCtrlClicPourResaCentrale(debPlan,finPlan,autoResaCentrale,autoResaProp,numGite,dpt,module, typeGite, ident){
	var dateDeb = new OBJDate();
	dateDeb.definition(debPlan.toString());
	var nbj = dateDeb.getNbJourEcartWithOBJDate(finPlan);
	var aujourdhui = new OBJDate();
	aujourdhui.definition();
	for(var i=0;i<=nbj;i++){
		if(dateDeb.estApres(aujourdhui.toString()) || dateDeb.estEgale(aujourdhui.toString())){
			var objResaClic = document.getElementById("id_"+dateDeb.toString("ddmmyyyy"));
			if(objResaClic){
					var attr=objResaClic.attributes;
			    	var activeClick = false;
			    	for(var j = 0; j < attr.length; j++){
			    		if(attr[j].nodeName=="etat" && (attr[j].nodeValue==".")){
							objResaClic.style.cursor = "pointer";
							activeClick = true;
						}
					}
					if(activeClick){
						objResaClic.dateDebResa = dateDeb.toString();
						objResaClic.onclick = function(evt){
							var attr=this.attributes;
					    	for(var j = 0; j < attr.length; j++){
					    		if(attr[j].nodeName=="etat"){
					    			if(attr[j].nodeValue=="."){
										if (!evt) var evt = window.event;
										if(evt.ctrlKey || evt.altKey){
											if(autoResaProp=="O") appelSaisieDate(numGite,dpt,module,this.dateDebResa.toString(), typeGite, ident);
											else if(autoResaCentrale=="O"){
												if(getVersionIE()==6){ 
													var lnkResa = $("lnkresa").value;
													window.open(lnkResa+"&DEB="+this.dateDebResa.toString()+"&NBJ=7",'Réservation','toolbar=yes,location=yes,directories=no,status=yes,scrollbars=yes,resizable=yes,copyhistory=no,width=700,height=500,left=150,top=50');
												//}else window.location="./reserver_centrale.php?numero_gite="+numGite+"&dateDeb="+this.dateDebResa.toString()+"&duree=7";
												}else appelSaisieDate(numGite,dpt,module,this.dateDebResa.toString(), typeGite, ident);
											}						
										}
									}
					    		}
					    	}
				    	}
				    }
				}
		}
		dateDeb.ajoutJour(1);
	}
}


function initCtrlClicPourResaCentraleMultiple(debPlan,finPlan,tabRefPlan,autoResaCentrale,autoResaProp,numGite, dpt, module, typeGite, ident, tabGite){
	var dateDeb = new OBJDate();
	dateDeb.definition(debPlan.toString());
	var nbj = dateDeb.getNbJourEcartWithOBJDate(finPlan);
	var aujourdhui = new OBJDate();
	aujourdhui.definition();
	for(var i=0;i<=nbj;i++){
		if(dateDeb.estApres(aujourdhui.toString()) || dateDeb.estEgale(aujourdhui.toString())){
			for (var k=0;k<tabRefPlan.length;k++){
				//var numGite =tabRefPlan[k];
				var objResaClic = document.getElementById("id_"+dateDeb.toString("ddmmyyyy")+"_"+tabRefPlan[k]);
				if(objResaClic){
					objResaClic.indice = k;
					var attr=objResaClic.attributes;
					var activeClick = false;
					if((!tabGite && typeGite =='H')|| (tabGite && (tabGite[objResaClic.indice].autoResaProp=='O' || tabGite[objResaClic.indice].autoResaCentrale=='O'))){
						for(var j = 0; j < attr.length; j++){
							if(attr[j].nodeName=="etat" && (attr[j].nodeValue==".")){
								objResaClic.style.cursor = "pointer";
								activeClick = true;
							}
						}
					}
					if(activeClick){
						objResaClic.dateDebResa = dateDeb.toString();
						objResaClic.onclick = function(evt){
							var attr=this.attributes;
								for(var j = 0; j < attr.length; j++){
									if(attr[j].nodeName=="etat"){
										if(attr[j].nodeValue=="."){
											if (!evt) var evt = window.event;
												if(evt.ctrlKey || evt.altKey){
													if(autoResaProp=="O" && typeGite == "H"){
														appelSaisieDate(numGite,dpt,module,this.dateDebResa.toString(), typeGite, ident, tabRefPlan);
													}else if(tabGite && typeGite == 'G'){
														var paramGite = tabGite[this.indice];
														if(paramGite.autoResaProp == "O")appelSaisieDate(paramGite.num,dpt,module,this.dateDebResa, typeGite, paramGite.ident);
														else if(paramGite.autoResaCentrale=="O") window.location="./reserver_centrale.php?numero_gite="+paramGite.num+"&dateDeb="+this.dateDebResa+"&duree=7";
													}
												}
										}
									}
								}
						}//fin onclick
					}
				}
			}
		}
		dateDeb.ajoutJour(1);
	} 
}//fin methode

function modifEtatParJour(debPlan,finPlan,autoResaCentrale,autoResaProp,numGite,dpt,module, typeGite, ident){
	/*** Fermeture jour / jour ***/
	var dateDeb = new OBJDate();
	dateDeb.definition(debPlan.toString());
	var nbj = dateDeb.getNbJourEcartWithOBJDate(finPlan);
	
	var aujourdhui = new OBJDate();
	aujourdhui.definition();
		
	for(var i=0;i<=nbj;i++){
		if(dateDeb.estApres(aujourdhui.toString()) || dateDeb.estEgale(aujourdhui.toString())){
			var objFermeture = document.getElementById("id_"+dateDeb.toString("ddmmyyyy"));
			var objFermetureLbl = document.getElementById("lbl_"+dateDeb.toString("ddmmyyyy"));

			if(objFermeture){
				var attr=objFermeture.attributes;
		    	var activeClick = false;
		    	for(var j = 0; j < attr.length; j++){
		    		if(attr[j].nodeName=="etat" && (attr[j].nodeValue=="." || attr[j].nodeValue=="n" || attr[j].nodeValue=="?")){
						objFermeture.style.cursor = "pointer";
						if(objFermetureLbl)objFermetureLbl.style.cursor = "pointer";
						activeClick = true;
					}
				}
				if(activeClick){
					objFermeture.dateDebResa = dateDeb.toString();
					if(objFermetureLbl)objFermeture.objLbl = objFermetureLbl; 
					objFermeture.etatOrigine = objFermeture.getAttribute('etat');
					objFermeture.setAttribute("etatorigine", objFermeture.etatOrigine);
					objFermeture.onclick = function(evt){

						var attr=this.attributes;
				    	for(var j = 0; j < attr.length; j++){
				    		if(attr[j].nodeName=="etat"){
									if(attr[j].nodeValue=="."){
										if (!evt) var evt = window.event;
										if( (evt.ctrlKey || evt.altKey) && (autoResaProp=="O" || autoResaCentrale=="O")){
											if(autoResaProp=="O") appelSaisieDate(numGite,dpt,module,this.dateDebResa, typeGite, ident)
											//else if(autoResaCentrale=="O") window.location="./reserver_centrale.php?numero_gite="+numGite+"&dateDeb="+this.dateDebResa+"&duree=7";
											else if(autoResaCentrale=="O") appelSaisieDate(numGite,dpt,module,this.dateDebResa, typeGite, ident);
										}else{
											///limiter la modification à 31 jours
											if(compteur31 < 31 || (compteur31 == 31 && this.etatOrigine != attr[j].nodeValue)){
												this.setAttribute("etat","n");
												setClassForObj(this,"couleur_planningCalendJour spanCalendJour_ferme");
												if(this.objLbl){
													this.objLbl.innerHTML="f";
													setClassForObj(this.objLbl,"lbl_planningCalendJour lbl_spanCalendJour_ferme");
												}
												if(this.getAttribute("etat") != this.etatOrigine)compteur31+=1;
												else compteur31-=1;

											}else {
												alertAMalibu("Attention, nous n'autorisons pas les modifications sur plus de 31 jours");
												//jslog("erreur +31 jours: compteur"+compteur31);
											}
											changeRestrictionEtatSpan(this,this.objLbl);
										}
									}else if(attr[j].nodeValue=="n" || attr[j].nodeValue=="?"){
										if(compteur31 < 31 || (compteur31 == 31 && this.etatOrigine != attr[j].nodeValue)){
											this.setAttribute("etat",".");
											setClassForObj(this,"couleur_planningCalendJour spanCalendJour_libre");
											if(this.objLbl){
												this.objLbl.innerHTML=".";
												setClassForObj(this.objLbl,"lbl_planningCalendJour lbl_spanCalendJour_libre");
											}
											if(this.getAttribute("etat") != this.etatOrigine)compteur31+=1;
											else compteur31-=1;
											changeRestrictionEtatSpan(this,this.objLbl);
										}else{
											alertAMalibu("Attention, nous n'autorisons pas les modifications sur plus de 31 jours");
											//jslog("erreur +31 jours: compteur"+compteur31);
										}
									}
				    		}
				    	}
			    	}
			    }
			}
		}
		dateDeb.ajoutJour(1);
	}
}

function modifEtatParJourMulti(debPlan,finPlan,tabRefPlan,planningInconnu, autoResaCentrale, autoResaProp,numGite, dpt, module, typeGite, ident, tabGite){
	/*** Fermeture jour / jour ***/

	var dateDeb = new OBJDate();
	dateDeb.definition(debPlan.toString());
	var nbj = dateDeb.getNbJourEcartWithOBJDate(finPlan);
	var aujourdhui = new OBJDate();
	aujourdhui.definition();
		
	for(var i=0;i<=nbj;i++){
		if(dateDeb.estApres(aujourdhui.toString()) || dateDeb.estEgale(aujourdhui.toString())){
			for (var k=0;k<tabRefPlan.length;k++){
				tabCompteur31[tabRefPlan[k]]=0;
				//var numGite =tabRefPlan[k];
				var objFermeture = document.getElementById("id_"+dateDeb.toString("ddmmyyyy")+"_"+tabRefPlan[k]);
				var objFermetureLbl = document.getElementById("lbl_"+dateDeb.toString("ddmmyyyy")+"_"+tabRefPlan[k]);
				if(objFermeture){
					var attr=objFermeture.attributes;
			    	var activeClick = false;
			    	for(var j = 0; j < attr.length; j++){
			    		if(attr[j].nodeName=="etat" && (attr[j].nodeValue=="." || attr[j].nodeValue=="n" || attr[j].nodeValue=="?")){
			    			objFermeture.style.cursor = "pointer";
							if(objFermetureLbl)objFermetureLbl.style.cursor = "pointer";
							activeClick = true;
						}
					}
					if(activeClick){
						if(objFermetureLbl)objFermeture.objLbl = objFermetureLbl;
						objFermeture.dateDebResa = dateDeb.toString();
						objFermeture.indice = k;
						objFermeture.tabRef=tabRefPlan[k];
						objFermeture.etatOrigine = objFermeture.getAttribute('etat');
						objFermeture.setAttribute('etatorigine',objFermeture.etatOrigine);
						objFermeture.onclick = function(evt){
							var attr=this.attributes;
				    		for(var j = 0; j < attr.length; j++){
				    			if(attr[j].nodeName=="etat"){
				    				if(attr[j].nodeValue=="."){				    					
				    					///pour activer le ctrl_clic
										if (!evt) var evt = window.event;
										if(evt.ctrlKey || evt.altKey){
											if(autoResaProp=="O" && typeGite == "H"){
												appelSaisieDate(numGite,dpt,module,this.dateDebResa, typeGite, ident, tabRefPlan);
											//else if(autoResaCentrale=="O" && typeGite != "H") window.location="./reserver_centrale.php?numero_gite="+numGite+"&dateDeb="+this.dateDebResa.toString()+"&duree=7";
											}else if(tabGite && typeGite != 'H'){
												var paramGite = tabGite[this.indice];
												appelSaisieDate(paramGite.num,dpt,module,this.dateDebResa, typeGite, paramGite.ident);
												//if(paramGite.autoResaProp == "O")appelSaisieDate(paramGite.num,dpt,module,this.dateDebResa, typeGite, paramGite.ident);
												//else if(paramGite.autoResaCentrale=="O") window.location="./reserver_centrale.php?numero_gite="+paramGite.num+"&dateDeb="+this.dateDebResa.toString()+"&duree=7";
											}
										}else if(tabCompteur31[this.tabRef] < 31 || (tabCompteur31[this.tabRef] == 31 && this.etatOrigine != attr[j].nodeValue)){
											//gestion des 3 etats :pour le 1er clic compte +1
											if(attr[j].nodeValue == this.etatOrigine)tabCompteur31[this.tabRef]+=1;

											this.setAttribute("etat","n");
											setClassForObj(this,"couleur_planningCalendJour spanCalendJour_ferme");
	                                            if(this.objLbl){
												this.objLbl.innerHTML="f";
												setClassForObj(this.objLbl,"lbl_planningCalendJour lbl_spanCalendJour_ferme");
											}
											//si on est revenu à l'état d'origine
											if(attr[j].nodeValue == this.etatOrigine)tabCompteur31[this.tabRef]-=1;
											changeRestrictionEtatSpan(this,this.objLbl);
											
										}else{
											alertAMalibu("Attention,nous n'autorisons pas les modifications sur plus de 31 jours");
											//jslog("erreur +31 jours: compteur"+tabCompteur31[this.tabRef]);
										}
									}else if(tabCompteur31[this.tabRef] < 31 || (tabCompteur31[this.tabRef] == 31 && this.etatOrigine != attr[j].nodeValue)){
										if(attr[j].nodeValue == this.etatOrigine)tabCompteur31[this.tabRef]+=1;

										if(attr[j].nodeValue=="?"){
											this.setAttribute("etat",".");
											setClassForObj(this,"couleur_planningCalendJour spanCalendJour_libre");
											if(this.objLbl){
												this.objLbl.innerHTML=".";
												setClassForObj(this.objLbl,"lbl_planningCalendJour lbl_spanCalendJour_libre");
											}
										}else if(attr[j].nodeValue=="n"){
											if(planningInconnu){
												this.setAttribute("etat","?");
												setClassForObj(this,"couleur_planningCalendJour spanCalendJour_inconnu");
												if(this.objLbl){
													this.objLbl.innerHTML="?";
													setClassForObj(this.objLbl,"lbl_planningCalendJour lbl_spanCalendJour_inconnu");
												}
											}else {
												this.setAttribute("etat",".");
												setClassForObj(this,"couleur_planningCalendJour spanCalendJour_libre");
												if(this.objLbl){
													this.objLbl.innerHTML=".";
													setClassForObj(this.objLbl,"lbl_planningCalendJour lbl_spanCalendJour_libre");
												}
											
											}
										}
										if(attr[j].nodeValue == this.etatOrigine)tabCompteur31[this.tabRef]-=1;
										changeRestrictionEtatSpan(this,this.objLbl);
									}else {
										alertAMalibu("Attention, nous n'autorisons pas les modifications sur plus de 31 jours");
										//jslog("erreur +31 jours: compteur"+tabCompteur31[this.tabRef]);
									}
								}
				    		}
				    	}
				    	if(objFermetureLbl){
							objFermetureLbl.objImg = objFermeture;
							objFermetureLbl.indice = objFermeture.indice;
							objFermetureLbl.tabRef= tabRefPlan[k];
							objFermetureLbl.etatOrigine = objFermeture.etatOrigine

							objFermetureLbl.onclick = function(evt){
								if(tabCompteur31[this.tabRef] < 31 || (tabCompteur31[this.tabRef] == 31 && this.etatOrigine != this.innerHTML)){
									if(this.innerHTML == this.etatOrigine)tabCompteur31[this.tabRef]+=1;

									if(this.innerHTML=="."){
										this.objImg.setAttribute("etat","n");
										setClassForObj(this.objImg,"couleur_planningCalendJour spanCalendJour_ferme");
										this.innerHTML="f";
										setClassForObj(this,"lbl_planningCalendJour lbl_spanCalendJour_ferme");
									}else if(this.innerHTML=="?"){
										this.objImg.setAttribute("etat",".");
										setClassForObj(this.objImg,"couleur_planningCalendJour spanCalendJour_libre");
										this.innerHTML=".";
										setClassForObj(this,"lbl_planningCalendJour lbl_spanCalendJour_libre");
									}else if(this.innerHTML=="f"){
										if(planningInconnu){
											this.objImg.setAttribute("etat","?");
											setClassForObj(this.objImg,"couleur_planningCalendJour spanCalendJour_inconnu");
											this.innerHTML="?";
											setClassForObj(this,"lbl_planningCalendJour lbl_spanCalendJour_inconnu");
										}else {
											this.objImg.setAttribute("etat",".");
											setClassForObj(this.objImg,"couleur_planningCalendJour spanCalendJour_libre");
											this.innerHTML=".";
											setClassForObj(this,"lbl_planningCalendJour lbl_spanCalendJour_libre");
										}
									}
									if(this.innerHTML == this.etatOrigine)tabCompteur31[this.tabRef]-=1;

								}else {
									alertAMalibu("Attention, nous n'autorisons pas les modifications sur plus de 31 jours");
									//jslog("erreur +31 jours: compteur"+tabCompteur31[this.tabRef]);
								}
							}
						}
				    }
				}
			}
			
			/*** Ouverture / Fermeture de toutes les chambres en cliquant sur le numero du jour ***/
			var objLblJour = document.getElementById("idJour_"+dateDeb.toString("ddmmyyyy"));
			if(objLblJour && (planningInconnu || typeGite =="H")){
				objLblJour.style.cursor = "pointer";
				objLblJour.date = dateDeb.toString("ddmmyyyy");

			   	objLblJour.onclick = function(evt){
			   		var attrJour = this.attributes;
			   		for(var y = 0; y < attrJour.length; y++){
			   			if(attrJour[y].nodeName=="etatforclic"){
			   				var etatforclic = attrJour[y].nodeValue;
							for(var t=1;t<8;t++){
								var objChambreJour = document.getElementById("id_"+this.date+"_"+t);
								var objChambreJourLbl = document.getElementById("lbl_"+this.date+"_"+t);
								if(objChambreJour){
									var objChambreEtatOrigine = objChambreJour.getAttribute('etatorigine');
									var attr=objChambreJour.attributes;
				    				for(var j = 0; j < attr.length; j++){
				    					if(attr[j].nodeName=="etat" && (attr[j].nodeValue=="." || attr[j].nodeValue=="n" || attr[j].nodeValue=="?")){
											if(tabCompteur31[t] < 31 || (tabCompteur31[t] == 31 && objChambreEtatOrigine != attr[j].nodeValue)){
												//1er clic
												if(objChambreJour.getAttribute("etat") == objChambreEtatOrigine)tabCompteur31[t]+=1;

												if(etatforclic=="."){
													objChambreJour.setAttribute("etat",".");
													setClassForObj(objChambreJour,"couleur_planningCalendJour spanCalendJour_libre");
													if(objChambreJourLbl){
														objChambreJourLbl.innerHTML=".";
														setClassForObj(objChambreJourLbl,"lbl_planningCalendJour lbl_spanCalendJour_libre");
													}
													this.setAttribute("etatforclic","n");
													}else{
													if(etatforclic=="n"){
														objChambreJour.setAttribute("etat","n");
														setClassForObj(objChambreJour,"couleur_planningCalendJour spanCalendJour_ferme");
														if(objChambreJourLbl){
															objChambreJourLbl.innerHTML="f";
															setClassForObj(objChambreJourLbl,"lbl_planningCalendJour lbl_spanCalendJour_ferme");
														}
														if(planningInconnu) this.setAttribute("etatforclic","?");
														else this.setAttribute("etatforclic",".");
													}else{
														if(etatforclic=="?"){
															objChambreJour.setAttribute("etat","?");
															setClassForObj(objChambreJour,"couleur_planningCalendJour spanCalendJour_inconnu");
															if(objChambreJourLbl){
																objChambreJourLbl.innerHTML="?";
																setClassForObj(objChambreJourLbl,"lbl_planningCalendJour lbl_spanCalendJour_inconnu");
															}
															this.setAttribute("etatforclic",".");
														}
													}
												}
												if(objChambreJour.getAttribute("etat") == objChambreEtatOrigine)tabCompteur31[t]+=1;
												changeRestrictionEtatSpan(objChambreJour,objChambreJourLbl);
											}else {
												alertAMalibu("Attention, nous n'autorisons pas les modifications sur plus de 31 jours");
												//jslog("erreur +31 jours: compteur"+tabCompteur31[t]);
											}
				    					}
				    				}
				    			}
							}
						}
					}
				}
			}
		}
		dateDeb.ajoutJour(1);
	}
}

function modifEtatParMois(debPlan,finPlan){
	/*** Fermeture/Ouverture mois/mois ***/
	var dateDeb = new OBJDate();
	dateDeb.definition(debPlan.toString());
	var aujourdhui = new OBJDate();
	aujourdhui.definition();
				
	while(dateDeb.estAvantOBJDate(finPlan) || dateDeb.estEgale(finPlan.toString())){
		
		var debCurr = "01/"+sprintf("%02d",dateDeb.getMois())+"/"+sprintf("%04d",dateDeb.getAnnee()); 
		var finCurr = Number(dateDeb.getNbjMois())+"/"+sprintf("%02d",dateDeb.getMois())+"/"+sprintf("%04d",dateDeb.getAnnee());
		
		if(aujourdhui.estComprisEntre(debCurr,finCurr) || aujourdhui.estAvantOBJDate(dateDeb)){
			
			var objFermeMois = document.getElementById("span_fermetureMois_"+sprintf("%02d",dateDeb.getMois())+"_"+sprintf("%04d",dateDeb.getAnnee()));
			var objOuvreMois = document.getElementById("span_ouvertureMois_"+sprintf("%02d",dateDeb.getMois())+"_"+sprintf("%04d",dateDeb.getAnnee()));
			if(objFermeMois && objOuvreMois){
				objFermeMois.innerHTML = "F";
				objFermeMois.title = "Fermer";
				
				objOuvreMois.innerHTML = "O";
				objOuvreMois.title = "Ouvrir";
				
				/*** Fermeture ***/
				
				objFermeMois.dateDebInit = new OBJDate();
				objFermeMois.dateDebInit.definition(dateDeb.toString());
				
				objFermeMois.onclick = function(evt){
					if((Number(this.dateDebInit.getMois())==Number(debPlan.getMois())) && (Number(this.dateDebInit.getAnnee())==Number(debPlan.getAnnee()))) var jour = debPlan.getJour();
					else var jour = "01";
					
					if((Number(this.dateDebInit.getMois())==Number(finPlan.getMois())) && (Number(this.dateDebInit.getAnnee())==Number(finPlan.getAnnee()))) var nbj = finPlan.getJour();
					else var nbj = this.dateDebInit.getNbjMois();
					
					this.dateDebInit.definition(jour+"/"+this.dateDebInit.getMois()+"/"+this.dateDebInit.getAnnee());
					
					this.deb = new OBJDate();
					this.deb.definition(this.dateDebInit.toString());				
					for(var i=Number(jour);i<=nbj;i++){
						if(this.deb.estApresOBJDate(aujourdhui) || this.deb.estEgale(aujourdhui.toString())){
							var objFermeture = document.getElementById("id_"+this.deb.toString("ddmmyyyy"));
							var objFermetureLbl = document.getElementById("lbl_"+this.deb.toString("ddmmyyyy"));

							if(objFermeture){
								var attr=objFermeture.attributes;
								var etatOrigineFermeture = objFermeture.getAttribute("etatorigine");

						    	for(var j = 0; j < attr.length; j++){
						    		if(attr[j].nodeName=="etat"){
						    			if(attr[j].nodeValue=="." || attr[j].nodeValue=="?"){
											if(compteur31 < 31 || (compteur31 == 31 && etatOrigineFermeture != attr[j].nodeValue)){
												objFermeture.setAttribute("etat","n");
												setClassForObj(objFermeture,"couleur_planningCalendJour spanCalendJour_ferme");
												if(objFermetureLbl){
													objFermetureLbl.innerHTML="f";
													setClassForObj(objFermetureLbl,"lbl_planningCalendJour lbl_spanCalendJour_ferme");
												}
												if(attr[j].nodeValue != etatOrigineFermeture)compteur31+=1;
												else compteur31-=1;
												changeRestrictionEtatSpan(objFermeture,objFermetureLbl);
											}else{
												alertAMalibu("Attention, nous n'autorisons pas les modifications sur plus de 31 jours");
												//jslog("erreur +31 jours: compteur"+compteur31);
											}

										}

						    		}
						    	}
							}
						}
						this.deb.ajoutJour(1);
					}
				}
				
				/*** Ouverture ***/
				
				objOuvreMois.dateDebInit = new OBJDate();
				objOuvreMois.dateDebInit.definition(dateDeb.toString());
				
				objOuvreMois.onclick = function(evt){
					
					if((Number(this.dateDebInit.getMois())==Number(debPlan.getMois())) && (Number(this.dateDebInit.getAnnee())==Number(debPlan.getAnnee()))) var jour = debPlan.getJour();
					else var jour = "01";
					
					if((Number(this.dateDebInit.getMois())==Number(finPlan.getMois())) && (Number(this.dateDebInit.getAnnee())==Number(finPlan.getAnnee()))) var nbj = finPlan.getJour();
					else var nbj = this.dateDebInit.getNbjMois();
						
					this.dateDebInit.definition(jour+"/"+this.dateDebInit.getMois()+"/"+this.dateDebInit.getAnnee());
				
					this.deb = new OBJDate();
					this.deb.definition(this.dateDebInit.toString());
					
					for(var i=Number(jour);i<=nbj;i++){
						if(this.deb.estApresOBJDate(aujourdhui) || this.deb.estEgale(aujourdhui.toString())){
							var objOuverture = document.getElementById("id_"+this.deb.toString("ddmmyyyy"));
							var objOuvertureLbl = document.getElementById("lbl_"+this.deb.toString("ddmmyyyy"));

							if(objOuverture){
								var attr=objOuverture.attributes;
								var etatOrigineOuverture = objOuverture.getAttribute("etatorigine");
								//jslog(etatOrigineOuverture);
						    	for(var j = 0; j < attr.length; j++){
						    		if(attr[j].nodeName=="etat"){
						    			if(attr[j].nodeValue=="n" || attr[j].nodeValue=="?"){
											if(compteur31 < 31 || (compteur31 == 31 && etatOrigineOuverture != attr[j].nodeValue)){
												objOuverture.setAttribute("etat",".");
												setClassForObj(objOuverture,"couleur_planningCalendJour spanCalendJour_libre");
												if(objOuvertureLbl){
													objOuvertureLbl.innerHTML=".";
													setClassForObj(objOuvertureLbl,"lbl_planningCalendJour lbl_spanCalendJour_libre");
												}
												if(attr[j].nodeValue != etatOrigineOuverture)compteur31+=1;
												else compteur31-=1;
												changeRestrictionEtatSpan(objOuverture,objOuvertureLbl);
											}else{
												alertAMalibu("Attention, nous n'autorisons pas les modifications sur plus de 31 jours");
												//jslog("erreur +31 jours: compteur"+compteur31);
											}
										}
										
						    		}
						    	}
							}
						}
						this.deb.ajoutJour(1);
					}
				}
			}
		}
		else {
			var objFermeMois = document.getElementById("span_fermetureMois_"+sprintf("%02d",dateDeb.getMois())+"_"+sprintf("%04d",dateDeb.getAnnee()));
			var objOuvreMois = document.getElementById("span_ouvertureMois_"+sprintf("%02d",dateDeb.getMois())+"_"+sprintf("%04d",dateDeb.getAnnee()));
			setClassForObj(objFermeMois,"span_actionsCalend");
			setClassForObj(objOuvreMois,"span_actionsCalend");
		}
		if(Number(dateDeb.getJour())>1) dateDeb.definition("01/"+dateDeb.getMois()+"/"+dateDeb.getAnnee());
		dateDeb.getMoisSuivant();
	}
}

function modifEtatParMoisMulti(debPlan,finPlan,tabRefPlan,planningInconnu){
	/*** Fermeture/Ouverture mois/mois ***/
	var dateDeb = new OBJDate();
	dateDeb.definition(debPlan.toString());
	
	var aujourdhui = new OBJDate();
	aujourdhui.definition();
				
	while(dateDeb.estAvantOBJDate(finPlan) || dateDeb.estEgale(finPlan.toString())){
		
		var debCurr = "01/"+sprintf("%02d",dateDeb.getMois())+"/"+sprintf("%04d",dateDeb.getAnnee()); 
		var finCurr = Number(dateDeb.getNbjMois())+"/"+sprintf("%02d",dateDeb.getMois())+"/"+sprintf("%04d",dateDeb.getAnnee());
		
		if(aujourdhui.estComprisEntre(debCurr,finCurr) || aujourdhui.estAvantOBJDate(dateDeb)){
			for (var k=0;k<tabRefPlan.length;k++){
				
				var objFermeMois = document.getElementById("span_fermetureMois_"+sprintf("%02d",dateDeb.getMois())+"_"+sprintf("%04d",dateDeb.getAnnee())+"_"+tabRefPlan[k]);
				var objOuvreMois = document.getElementById("span_ouvertureMois_"+sprintf("%02d",dateDeb.getMois())+"_"+sprintf("%04d",dateDeb.getAnnee())+"_"+tabRefPlan[k]);
				var objInitialisationMois = document.getElementById("span_initMois_"+sprintf("%02d",dateDeb.getMois())+"_"+sprintf("%04d",dateDeb.getAnnee())+"_"+tabRefPlan[k]);
				
				if(objFermeMois && objOuvreMois){
					objFermeMois.innerHTML = "F";
					objFermeMois.title = "Fermer";
					
					objOuvreMois.innerHTML = "O";
					objOuvreMois.title = "Ouvrir";
					
					/*** Fermeture ***/
					
					objFermeMois.dateDebInit = new OBJDate();
					objFermeMois.dateDebInit.definition(dateDeb.toString());
					objFermeMois.refPlan = tabRefPlan[k];
					//objFermeMois.indice = k;
					objFermeMois.onclick = function(evt){
						if((Number(this.dateDebInit.getMois())==Number(debPlan.getMois())) && (Number(this.dateDebInit.getAnnee())==Number(debPlan.getAnnee()))) var jour = debPlan.getJour();
						else var jour = "01";
						
						if((Number(this.dateDebInit.getMois())==Number(finPlan.getMois())) && (Number(this.dateDebInit.getAnnee())==Number(finPlan.getAnnee()))) var nbj = finPlan.getJour();
						else var nbj = this.dateDebInit.getNbjMois();
						
						this.dateDebInit.definition(jour+"/"+this.dateDebInit.getMois()+"/"+this.dateDebInit.getAnnee());
						
						this.deb = new OBJDate();
						this.deb.definition(this.dateDebInit.toString());
										
						for(var i=Number(jour);i<=nbj;i++){
							if(this.deb.estApresOBJDate(aujourdhui) || this.deb.estEgale(aujourdhui.toString())){
								var objFermeture = document.getElementById("id_"+this.deb.toString("ddmmyyyy")+"_"+this.refPlan);
								var objFermetureLbl = document.getElementById("lbl_"+this.deb.toString("ddmmyyyy")+"_"+this.refPlan);
								if(objFermeture){
									var attr=objFermeture.attributes;
									var etatOrigineFermeture = objFermeture.getAttribute("etatorigine");
							    	for(var j = 0; j < attr.length; j++){
							    		if(attr[j].nodeName=="etat"){
											if(tabCompteur31[this.refPlan] < 31 || (tabCompteur31[this.refPlan] == 31 && etatOrigineFermeture != attr[j].nodeValue)){
												//pour le 1er clic compte +1
												if(attr[j].nodeValue == etatOrigineFermeture)tabCompteur31[this.refPlan]+=1;

												if(attr[j].nodeValue=="." || attr[j].nodeValue=="?"){
													objFermeture.setAttribute("etat","n");
													setClassForObj(objFermeture,"couleur_planningCalendJour spanCalendJour_ferme");
													if(objFermetureLbl){
														objFermetureLbl.innerHTML="f";
														setClassForObj(objFermetureLbl,"lbl_planningCalendJour lbl_spanCalendJour_ferme");
													}
												}
												if(attr[j].nodeValue == etatOrigineFermeture)tabCompteur31[this.refPlan]-=1;
												changeRestrictionEtatSpan(objFermeture,objFermetureLbl);
											}else{
												alertAMalibu("Attention, nous n'autorisons pas les modifications sur plus de 31 jours");
												//jslog("erreur +31 jours: compteur"+compteur31);
											}
										}
									}
								}
							}
							this.deb.ajoutJour(1);
						}
					}
					
					/*** Ouverture ***/
					
					objOuvreMois.dateDebInit = new OBJDate();
					objOuvreMois.dateDebInit.definition(dateDeb.toString());
					objOuvreMois.refPlan = tabRefPlan[k];
					
					objOuvreMois.onclick = function(evt){
						
						if((Number(this.dateDebInit.getMois())==Number(debPlan.getMois())) && (Number(this.dateDebInit.getAnnee())==Number(debPlan.getAnnee()))) var jour = debPlan.getJour();
						else var jour = "01";
						
						if((Number(this.dateDebInit.getMois())==Number(finPlan.getMois())) && (Number(this.dateDebInit.getAnnee())==Number(finPlan.getAnnee()))) var nbj = finPlan.getJour();
						else var nbj = this.dateDebInit.getNbjMois();
							
						this.dateDebInit.definition(jour+"/"+this.dateDebInit.getMois()+"/"+this.dateDebInit.getAnnee());
					
						this.deb = new OBJDate();
						this.deb.definition(this.dateDebInit.toString());
						
						for(var i=Number(jour);i<=nbj;i++){
							if(this.deb.estApresOBJDate(aujourdhui) || this.deb.estEgale(aujourdhui.toString())){
								var objOuverture = document.getElementById("id_"+this.deb.toString("ddmmyyyy")+"_"+this.refPlan);
								var objOuvertureLbl = document.getElementById("lbl_"+this.deb.toString("ddmmyyyy")+"_"+this.refPlan);
								var etatOrigineOuverture = objOuverture.getAttribute("etatorigine");
								if(objOuverture){
									var attr=objOuverture.attributes;
							    	for(var j = 0; j < attr.length; j++){
							    		if(attr[j].nodeName=="etat"){
											if(tabCompteur31[this.refPlan] < 31 || (tabCompteur31[this.refPlan] == 31 && etatOrigineOuverture != attr[j].nodeValue)){
												//pour le 1er clic compte +1
												if(attr[j].nodeValue == etatOrigineOuverture)tabCompteur31[this.refPlan]+=1;

												if(attr[j].nodeValue=="n" || attr[j].nodeValue=="?"){
													objOuverture.setAttribute("etat",".");
													setClassForObj(objOuverture,"couleur_planningCalendJour spanCalendJour_libre");
													if(objOuvertureLbl){
														objOuvertureLbl.innerHTML=".";
														setClassForObj(objOuvertureLbl,"lbl_planningCalendJour lbl_spanCalendJour_libre");
													}
												}
												//retour etat origine
												if(attr[j].nodeValue == etatOrigineOuverture)tabCompteur31[this.refPlan]-=1;
												changeRestrictionEtatSpan(objOuverture,objOuvertureLbl);
											}else{
												alertAMalibu("Attention, nous n'autorisons pas les modifications sur plus de 31 jours");
												//jslog("erreur +31 jours: compteur"+compteur31);
											}
							    		}
							    	}
								}
							}
							this.deb.ajoutJour(1);
						}
					}
				
					if(objInitialisationMois && planningInconnu){
						objInitialisationMois.innerHTML = "?";
						objInitialisationMois.title = "Non précisé";
						
						/*** Inconnu ***/
					
						objInitialisationMois.dateDebInit = new OBJDate();
						objInitialisationMois.dateDebInit.definition(dateDeb.toString());
						objInitialisationMois.refPlan = tabRefPlan[k];
						
						objInitialisationMois.onclick = function(evt){
							if((Number(this.dateDebInit.getMois())==Number(debPlan.getMois())) && (Number(this.dateDebInit.getAnnee())==Number(debPlan.getAnnee()))) var jour = debPlan.getJour();
							else var jour = "01";
							
							if((Number(this.dateDebInit.getMois())==Number(finPlan.getMois())) && (Number(this.dateDebInit.getAnnee())==Number(finPlan.getAnnee()))) var nbj = finPlan.getJour();
							else var nbj = this.dateDebInit.getNbjMois();
							
							this.dateDebInit.definition(jour+"/"+this.dateDebInit.getMois()+"/"+this.dateDebInit.getAnnee());
							
							this.deb = new OBJDate();
							this.deb.definition(this.dateDebInit.toString());
											
							for(var i=Number(jour);i<=nbj;i++){
								if(this.deb.estApresOBJDate(aujourdhui) || this.deb.estEgale(aujourdhui.toString())){
									var objInitialisation = document.getElementById("id_"+this.deb.toString("ddmmyyyy")+"_"+this.refPlan);
									var objInitialisationLbl = document.getElementById("lbl_"+this.deb.toString("ddmmyyyy")+"_"+this.refPlan);
									if(objInitialisation){
										var attr=objInitialisation.attributes;
										var etatOrigineInitialisation= objInitialisation.getAttribute("etatorigine");
								    	for(var j = 0; j < attr.length; j++){
								    		if(attr[j].nodeName=="etat"){
												if(tabCompteur31[this.refPlan] < 31 || (tabCompteur31[this.refPlan] == 31 && etatOrigineInitialisation != attr[j].nodeValue)){
												//pour le 1er clic compte +1
													if(attr[j].nodeValue == etatOrigineInitialisation)tabCompteur31[this.refPlan]+=1;

													if(attr[j].nodeValue=="." || attr[j].nodeValue=="n"){
														objInitialisation.setAttribute("etat","?");
														setClassForObj(objInitialisation,"couleur_planningCalendJour spanCalendJour_inconnu");
														if(objInitialisationLbl){
															objInitialisationLbl.innerHTML="?";
															setClassForObj(objInitialisationLbl,"lbl_planningCalendJour lbl_spanCalendJour_inconnu");
														}
													}
													changeRestrictionEtatSpan(objInitialisation,objInitialisationLbl);
													if(attr[j].nodeValue == etatOrigineInitialisation)tabCompteur31[this.refPlan]-=1;
												}else{
													alertAMalibu("Attention, nous n'autorisons pas les modifications sur plus de 31 jours");
												//jslog("erreur +31 jours: compteur"+compteur31);
												}
								    		}
								    	}
									}
								}
								this.deb.ajoutJour(1);
							}
						}
					}
				}
			}
		}
		else {
			for (var k=0;k<tabRefPlan.length;k++){
				
				var objFermeMois = document.getElementById("span_fermetureMois_"+sprintf("%02d",dateDeb.getMois())+"_"+sprintf("%04d",dateDeb.getAnnee())+"_"+tabRefPlan[k]);
				var objOuvreMois = document.getElementById("span_ouvertureMois_"+sprintf("%02d",dateDeb.getMois())+"_"+sprintf("%04d",dateDeb.getAnnee())+"_"+tabRefPlan[k]);
				var objInitialisationMois = document.getElementById("span_initMois_"+sprintf("%02d",dateDeb.getMois())+"_"+sprintf("%04d",dateDeb.getAnnee())+"_"+tabRefPlan[k]);
				
				if(objFermeMois)setClassForObj(objFermeMois,"span_actionsCalend");
				if(objOuvreMois)setClassForObj(objOuvreMois,"span_actionsCalend");
				if(objInitialisationMois)setClassForObj(objInitialisationMois,"span_actionsCalend");
			}
		}
		if(Number(dateDeb.getJour())>1) dateDeb.definition("01/"+dateDeb.getMois()+"/"+dateDeb.getAnnee());
		dateDeb.getMoisSuivant();
	}
}

function modifEtatVenteParJour(debPlan,finPlan){
	/*** Fermeture jour / jour ***/
	var dateDeb = new OBJDate();
	dateDeb.definition(debPlan.toString());
	var nbj = dateDeb.getNbJourEcartWithOBJDate(finPlan);
	
	var aujourdhui = new OBJDate();
	aujourdhui.definition();
		
	for(var i=0;i<=nbj;i++){
		if(dateDeb.estApres(aujourdhui.toString()) || dateDeb.estEgale(aujourdhui.toString())){
			var objFermeture = document.getElementById("id_"+dateDeb.toString("ddmmyyyy"));
			var objFermetureLbl = document.getElementById("lbl_"+dateDeb.toString("ddmmyyyy"));
			
			if(objFermeture){
				objFermeture.etatOrigine = objFermeture.getAttribute('etat');
				objFermeture.setAttribute("etatorigine", objFermeture.etatOrigine);
				var attr=objFermeture.attributes;
		    	for(var j = 0; j < attr.length; j++){
		    		if(attr[j].nodeName=="etat" && (attr[j].nodeValue=="G" || attr[j].nodeValue=="H" || attr[j].nodeValue=="?")){
						objFermeture.style.cursor = "pointer";
						if(objFermetureLbl)objFermetureLbl.style.cursor = "pointer";
					}
				}
				if(objFermetureLbl)objFermeture.objLbl = objFermetureLbl;
				objFermeture.onclick = function(evt){
					var attr=this.attributes;
		    		for(var j = 0; j < attr.length; j++){
		    			if(attr[j].nodeName=="etat"){
							if(compteur31 < 31 || (compteur31 == 31 && this.etatOrigine != attr[j].nodeValue)){
								//1er clic
								if(attr[j].nodeValue == this.etatOrigine)compteur31+=1;

								if(attr[j].nodeValue=="G"){
									this.setAttribute("etat","H");
									setClassForObj(this,"couleur_planningCalendJour spanCalendJour_modeVenteGEGS_H");
									if(this.objLbl){
										this.objLbl.innerHTML="v/H";
										setClassForObj(this.objLbl,"lbl_planningCalendJour lbl_spanCalendJour_modeVenteGEGS_H");
									}
								}else if(attr[j].nodeValue=="H"){
									this.setAttribute("etat","?");
									setClassForObj(this,"couleur_planningCalendJour spanCalendJour_inconnu");
									if(this.objLbl){
										this.objLbl.innerHTML="?";
										setClassForObj(this.objLbl,"lbl_planningCalendJour lbl_spanCalendJour_modeVenteGEGS_inconnu");
									}
								}else if(attr[j].nodeValue=="?"){
									this.setAttribute("etat","G");
									setClassForObj(this,"couleur_planningCalendJour spanCalendJour_modeVenteGEGS_G");
									if(this.objLbl){
										this.objLbl.innerHTML="v/G";
										setClassForObj(this.objLbl,"lbl_planningCalendJour lbl_spanCalendJour_modeVenteGEGS_G");
									}
								}
								//retour etat initial
								if(attr[j].nodeValue == this.etatOrigine)compteur31-=1;

							}else{
								alertAMalibu("Attention, nous n'autorisons pas les modifications sur plus de 31 jours");
								//jslog("erreur +31 jours: compteur"+compteur31);
							}
						}
		    		}
		    	}
				if(objFermetureLbl){
					objFermetureLbl.objImg = objFermeture;
					objFermetureLbl.etatOrigine = objFermeture.getAttribute('etat');
					objFermetureLbl.onclick = function(evt){
						if(compteur31 < 31 || (compteur31 == 31 && this.etatOrigine != this.innerHTML)){
							if(this.innerHTML == this.etatOrigine)compteur31+=1;

							if(this.innerHTML=="v/G"){
								this.objImg.setAttribute("etat","H");
								setClassForObj(this.objImg,"couleur_planningCalendJour spanCalendJour_modeVenteGEGS_H");
								this.innerHTML="v/H";
								setClassForObj(this,"lbl_planningCalendJour lbl_spanCalendJour_modeVenteGEGS_H");
							}else if(this.innerHTML=="v/H"){
								this.objImg.setAttribute("etat","?");
								setClassForObj(this.objImg,"couleur_planningCalendJour spanCalendJour_inconnu");
								this.innerHTML="?";
								setClassForObj(this,"lbl_planningCalendJour lbl_spanCalendJour_modeVenteGEGS_inconnu");
							}else if(this.innerHTML=="?"){
								this.objImg.setAttribute("etat","G");
								setClassForObj(this.objImg,"couleur_planningCalendJour spanCalendJour_modeVenteGEGS_G");
								this.innerHTML="?";
								setClassForObj(this,"lbl_planningCalendJour lbl_spanCalendJour_modeVenteGEGS_G");
							}
							if(this.innerHTML == this.etatOrigine)compteur31-=1;

						}else{
							alertAMalibu("Attention, nous n'autorisons pas les modifications sur plus de 31 jours");
							//jslog("erreur +31 jours: compteur"+compteur31);
						}
					}
				}
		    	
			}
		}
		dateDeb.ajoutJour(1);
	}
}

function modifEtatVenteParMois(debPlan,finPlan){
	/*** Fermeture/Ouverture mois/mois ***/
	var dateDeb = new OBJDate();
	dateDeb.definition(debPlan.toString());
	
	var aujourdhui = new OBJDate();
	aujourdhui.definition();
				
	while(dateDeb.estAvantOBJDate(finPlan) || dateDeb.estEgale(finPlan.toString())){
		
		var debCurr = "01/"+sprintf("%02d",dateDeb.getMois())+"/"+sprintf("%04d",dateDeb.getAnnee()); 
		var finCurr = Number(dateDeb.getNbjMois())+"/"+sprintf("%02d",dateDeb.getMois())+"/"+sprintf("%04d",dateDeb.getAnnee());
		
		if(aujourdhui.estComprisEntre(debCurr,finCurr) || aujourdhui.estAvantOBJDate(dateDeb)){
			
			var objHebergementMois = document.getElementById("span_fermetureMois_"+sprintf("%02d",dateDeb.getMois())+"_"+sprintf("%04d",dateDeb.getAnnee()));
			var objChambreMois = document.getElementById("span_ouvertureMois_"+sprintf("%02d",dateDeb.getMois())+"_"+sprintf("%04d",dateDeb.getAnnee()));
			var objInitMois = document.getElementById("span_initMois_"+sprintf("%02d",dateDeb.getMois())+"_"+sprintf("%04d",dateDeb.getAnnee()));
			if(objHebergementMois && objChambreMois && objInitMois){
				objHebergementMois.innerHTML = "Gîte/";
				objChambreMois.innerHTML = "Chambre/";
				objInitMois.innerHTML = "Peu importe";
				
				/*** Hébergement ***/
				
				objHebergementMois.dateDebInit = new OBJDate();
				objHebergementMois.dateDebInit.definition(dateDeb.toString());
				objHebergementMois.onclick = function(evt){
					if((Number(this.dateDebInit.getMois())==Number(debPlan.getMois())) && (Number(this.dateDebInit.getAnnee())==Number(debPlan.getAnnee()))) var jour = debPlan.getJour();
					else var jour = "01";
					
					if((Number(this.dateDebInit.getMois())==Number(finPlan.getMois())) && (Number(this.dateDebInit.getAnnee())==Number(finPlan.getAnnee()))) var nbj = finPlan.getJour();
					else var nbj = this.dateDebInit.getNbjMois();
					
					this.dateDebInit.definition(jour+"/"+this.dateDebInit.getMois()+"/"+this.dateDebInit.getAnnee());
					
					this.deb = new OBJDate();
					this.deb.definition(this.dateDebInit.toString());
									
					for(var i=Number(jour);i<=nbj;i++){
						if(this.deb.estApresOBJDate(aujourdhui) || this.deb.estEgale(aujourdhui.toString())){
							var objHebergement = document.getElementById("id_"+this.deb.toString("ddmmyyyy"));
							var objHebergementLbl = document.getElementById("lbl_"+this.deb.toString("ddmmyyyy"));
							if(objHebergement){
								var etatOrigineHebergement = objHebergement.getAttribute("etatorigine");
								var attr=objHebergement.attributes;
						    	for(var j = 0; j < attr.length; j++){
						    		if(attr[j].nodeName=="etat"){
										if(compteur31 < 31 || (compteur31 == 31 && etatOrigineHebergement != attr[j].nodeValue)){
											//1er clic
											if(etatOrigineHebergement == attr[j].nodeValue)compteur31+=1;
											if(attr[j].nodeValue=="H" || attr[j].nodeValue=="?"){
												objHebergement.setAttribute("etat","G");
												setClassForObj(objHebergement,"couleur_planningCalendJour spanCalendJour_modeVenteGEGS_G");
												if(objHebergementLbl){
													objHebergementLbl.innerHTML="v/G";
													setClassForObj(objHebergementLbl,"lbl_planningCalendJour lbl_spanCalendJour_modeVenteGEGS_G");
												}
											}
											//retour etat origine
											if(etatOrigineHebergement == attr[j].nodeValue)compteur31-=1;
										}else{
											alertAMalibu("Attention, nous n'autorisons pas les modifications sur plus de 31 jours");
											//jslog("erreur +31 jours: compteur"+compteur31);
										}
						    		}
						    	}
							}
						}
						this.deb.ajoutJour(1);
					}
				}
				
				/*** Chambre ***/
				
				objChambreMois.dateDebInit = new OBJDate();
				objChambreMois.dateDebInit.definition(dateDeb.toString());
				
				objChambreMois.onclick = function(evt){
					
					if((Number(this.dateDebInit.getMois())==Number(debPlan.getMois())) && (Number(this.dateDebInit.getAnnee())==Number(debPlan.getAnnee()))) var jour = debPlan.getJour();
					else var jour = "01";
					
					if((Number(this.dateDebInit.getMois())==Number(finPlan.getMois())) && (Number(this.dateDebInit.getAnnee())==Number(finPlan.getAnnee()))) var nbj = finPlan.getJour();
					else var nbj = this.dateDebInit.getNbjMois();
						
					this.dateDebInit.definition(jour+"/"+this.dateDebInit.getMois()+"/"+this.dateDebInit.getAnnee());
				
					this.deb = new OBJDate();
					this.deb.definition(this.dateDebInit.toString());
					
					for(var i=Number(jour);i<=nbj;i++){
						if(this.deb.estApresOBJDate(aujourdhui) || this.deb.estEgale(aujourdhui.toString())){
							var objChambre = document.getElementById("id_"+this.deb.toString("ddmmyyyy"));
							var objChambreLbl = document.getElementById("lbl_"+this.deb.toString("ddmmyyyy"));
							if(objChambre){
								var etatOrigineChambre = objChambre.getAttribute("etatorigine");
								var attr=objChambre.attributes;
						    	for(var j = 0; j < attr.length; j++){
						    		if(attr[j].nodeName=="etat"){
										if(compteur31 < 31 || (compteur31 == 31 && etatOrigineChambre != attr[j].nodeValue)){
											//1er clic
											if(etatOrigineChambre == attr[j].nodeValue)compteur31+=1;
				
											if(attr[j].nodeValue=="G" || attr[j].nodeValue=="?"){
												objChambre.setAttribute("etat","H");
												setClassForObj(objChambre,"couleur_planningCalendJour spanCalendJour_modeVenteGEGS_H");
												if(objChambreLbl){
													objChambreLbl.innerHTML="v/H";
													setClassForObj(objChambreLbl,"lbl_planningCalendJour lbl_spanCalendJour_modeVenteGEGS_H");
												}
											}
											//retour etat origine
											if(etatOrigineChambre == attr[j].nodeValue)compteur31-=1;

										}else{
											alertAMalibu("Attention, nous n'autorisons pas les modifications sur plus de 31 jours");
											//jslog("erreur +31 jours: compteur"+compteur31);
										}
									}
						    	}
							}
						}
						this.deb.ajoutJour(1);
					}
				}
				
				/*** Gite ou chambre ***/

				objInitMois.dateDebInit = new OBJDate();
				objInitMois.dateDebInit.definition(dateDeb.toString());
				
				objInitMois.onclick = function(evt){
					
					if((Number(this.dateDebInit.getMois())==Number(debPlan.getMois())) && (Number(this.dateDebInit.getAnnee())==Number(debPlan.getAnnee()))) var jour = debPlan.getJour();
					else var jour = "01";
					
					if((Number(this.dateDebInit.getMois())==Number(finPlan.getMois())) && (Number(this.dateDebInit.getAnnee())==Number(finPlan.getAnnee()))) var nbj = finPlan.getJour();
					else var nbj = this.dateDebInit.getNbjMois();
						
					this.dateDebInit.definition(jour+"/"+this.dateDebInit.getMois()+"/"+this.dateDebInit.getAnnee());
				
					this.deb = new OBJDate();
					this.deb.definition(this.dateDebInit.toString());
					
					for(var i=Number(jour);i<=nbj;i++){
						if(this.deb.estApresOBJDate(aujourdhui) || this.deb.estEgale(aujourdhui.toString())){
							var objInit = document.getElementById("id_"+this.deb.toString("ddmmyyyy"));
							var objInitLbl = document.getElementById("lbl_"+this.deb.toString("ddmmyyyy"));
							if(objInit){
								var etatOrigineInit= objInit.getAttribute("etatorigine");
								var attr=objInit.attributes;
						    	for(var j = 0; j < attr.length; j++){
						    		if(attr[j].nodeName=="etat"){
										if(compteur31 < 31 || (compteur31 == 31 && etatOrigineInit != attr[j].nodeValue)){
											//1er clic
											if(etatOrigineInit == attr[j].nodeValue)compteur31+=1;
											if(attr[j].nodeValue=="G" || attr[j].nodeValue=="H"){
												objInit.setAttribute("etat","?");
												setClassForObj(objInit,"couleur_planningCalendJour spanCalendJour_inconnu");
												if(objInitLbl){
													objInitLbl.innerHTML="?";
													setClassForObj(objInitLbl,"lbl_planningCalendJour lbl_spanCalendJour_modeVenteGEGS_inconnu");
												}
											}
											//retour etat origine
											if(etatOrigineInit == attr[j].nodeValue)compteur31-=1;
										}else{
											alertAMalibu("Attention, nous n'autorisons pas les modifications sur plus de 31 jours");
											//jslog("erreur +31 jours: compteur"+compteur31);
										}
						    		}
						    	}
							}
						}
						this.deb.ajoutJour(1);
					}
				}
			}
		}
		if(Number(dateDeb.getJour())>1) dateDeb.definition("01/"+dateDeb.getMois()+"/"+dateDeb.getAnnee());
		dateDeb.getMoisSuivant();
	}
}


function enregistrementModifPlanning(exercice,debPlanning,finPlanning,numGite,planningVente,tabRefPlan,planningInconnu,numProp,dpt,bas,instance){
	if(tabRefPlan.length>0) enregistrementModifPlanningMulti(exercice,debPlanning,finPlanning,numGite,tabRefPlan,planningInconnu,numProp,dpt,bas,instance);
	else enregistrementModifPlanningSimple(exercice,debPlanning,finPlanning,numGite,planningVente,numProp,dpt,bas,instance);
    unsetConfirmChangerPage();
}

function enregistrementModifPlanningSimple(exercice,debPlanning,finPlanning,numGite,planningVente,numProp,dpt,bas,instance){

	var debPlan = new OBJDate();
	debPlan.definition(debPlanning);
	var finPlan = new OBJDate();
	finPlan.definition(finPlanning);

	var dateDeb = new OBJDate();
	dateDeb.definition(debPlan.toString());
	var nbj = dateDeb.getNbJourEcartWithOBJDate(finPlan);
	
	var chainePlanning=new String();
		
	for(var i=0;i<=nbj;i++){
		var objModif = document.getElementById("id_"+dateDeb.toString("ddmmyyyy"));
		if(objModif){
			var attr=objModif.attributes;
	    	for(var j = 0; j < attr.length; j++){
	    		if(attr[j].nodeName=="etat"){
	    			chainePlanning+=attr[j].nodeValue;
				}
	    	}
		}
		dateDeb.ajoutJour(1);
	}
	
	var html = "<div id='div_confirmModifPlanning'></div>";
	var L=300;H=200;
	var urlEnregModif = "./ajax/enregistrementPlanning.php";
	var sending = "exercice="+exercice;
	sending+="&numGite="+numGite;
	sending+="&chainePlanning="+chainePlanning;
	sending+="&debPlanning="+debPlan.toString();
	sending+="&finPlanning="+finPlan.toString();
	sending+="&numProp="+numProp;
	sending+="&dpt="+dpt;
	sending+="&bas="+bas;
	sending+="&instance="+instance;
	if(planningVente=="O") sending+="&mode=planningVente";
	else sending+="&mode=planningDispo";
	
	afficheDivAvecTransparence(html,L,H);
		
	affUrlInDiv("div_confirmModifPlanning",urlEnregModif,sending);
}

function enregistrementModifPlanningMulti(exercice,debPlanning,finPlanning,numGite,tabRefPlan,planningInconnu,numProp,dpt,bas,instance){
	var debPlan = new OBJDate();
	debPlan.definition(debPlanning);
	var finPlan = new OBJDate();
	finPlan.definition(finPlanning);
	
	var tabChainePlanning=new Array();
	
	for (var k=0;k<tabRefPlan.length;k++){
		
		var dateDeb = new OBJDate();
		dateDeb.definition(debPlan.toString());
		var nbj = dateDeb.getNbJourEcartWithOBJDate(finPlan);
		var chainePlanning=new String();
			
		for(var i=0;i<=nbj;i++){
			var objModif = document.getElementById("id_"+dateDeb.toString("ddmmyyyy")+"_"+tabRefPlan[k]);
			if(objModif){
				var attr=objModif.attributes;
	    		for(var j = 0; j < attr.length; j++){
		    		if(attr[j].nodeName=="etat"){
		    			chainePlanning+=attr[j].nodeValue;
					}
	    		}
			}
			dateDeb.ajoutJour(1);
		}
		tabChainePlanning.push(new Array(tabRefPlan[k],chainePlanning));
	}
	
	var html = "<div id='div_confirmModifPlanning'></div>";
	var L=300;H=200;
	var urlEnregModif = "./ajax/enregistrementPlanning.php";
	
	var sending = "exercice="+exercice;
	sending+="&numGite="+numGite;
	sending+="&debPlanning="+debPlan.toString();
	sending+="&finPlanning="+finPlan.toString();
	sending+="&mode=planningDispoMulti";
	sending+="&numProp="+numProp;
	sending+="&dpt="+dpt;
	sending+="&bas="+bas;
	sending+="&instance="+instance;
	if(planningInconnu) sending+="&planChambre=O";
	
	for (var i=0;i<tabChainePlanning.length;i++){
		sending+="&planning_"+tabChainePlanning[i][0]+"="+tabChainePlanning[i][1];
	}
	
	afficheDivAvecTransparence(html,L,H);
		
	affUrlInDiv("div_confirmModifPlanning",urlEnregModif,sending);
}


function controleEtAfficheSiExisteDocumentForResa(numResa,exe,typeDoc,idObjAAfficher,idObjAEffacer,objResa){
	var adr="./ajax/verifSiDocument.php";
	var xhr_local=creeObjHttpRequest();
		
	var objAAfficher=document.getElementById(idObjAAfficher);
	var objAEffacer=document.getElementById(idObjAEffacer);
		
	var sending=getInfoSession();
	sending+="&numResa="+numResa;
	sending+="&exercice="+exe;
	sending+="&typeDocument="+typeDoc;
	
	//var objResas=this;
	xhr_local.onreadystatechange = function(){
		if(xhr_local.readyState == 4 && xhr_local.status == 200){
			if(xhr_local.responseText){
				var reponse=new String(xhr_local.responseText);
				var prefix=reponse.substr(0,3);
				var msg=reponse.substr(4);
				var nomFile,msgErr;
			
				switch (prefix){
				case "URL":
					nomFile=msg;
					if (objAAfficher){
						objAAfficher.style.display="block";
						objAAfficher.setAttribute("document_"+typeDoc,nomFile);
						//objLink=
						
						var objLien=objAAfficher.getElementsByTagName("A").item(0);
						if (objLien){
							objLien.setAttribute("href",nomFile);
							objLien.href=nomFile;
						}
						
						//var tid=objAAfficher.getAttribute("tidIntervalRecherche_"+numResa+"_"+typeDoc);
						//clearInterval(tid);
						//objAAfficher.setAttribute("tidIntervalRecherche_"+numResa+"_"+typeDoc,"");
						
					}
					if (objAEffacer)objAEffacer.style.display="none";
					break;
				case "YET":
					if (objAEffacer){
						objAEffacer.innerHTML=msg;
						objResa.verifPresenceDocument(i,typeDoc,idObjAAfficher,idObjAEffacer);
					}
				case "ERR":
					/*
					if (objAAfficher){
						var tid=objAAfficher.getAttribute("tidIntervalRecherche_"+numResa+"_"+typeDoc);
						clearInterval(tid);
						objAAfficher.setAttribute("tidIntervalRecherche_"+numResa+"_"+typeDoc,"");
					}*/
					if (objAEffacer){
						objAEffacer.innerHTML=msg;
					}
				}
			
			
				var nomFile=xhr_local.responseText;
				//alert("Fichier : "+nomFile);
					
			}			
        }
    }
	xhr_local.open("POST",adr,true);
	xhr_local.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); 
	xhr_local.send(sending);
}

function getTextMailDefaut(nomProp,mailProp){
	
	var txt="Madame, Monsieur, \n\n";
 	txt+="Nous avons le plaisir de vous adresser ci-dessous le contrat de location en deux exemplaires ainsi que la fiche descriptive de l'hébergement que vous avez réservé.";
 	txt+="\n\n";
 	txt+="Nous vous demandons de bien vouloir nous retourner rapidement par courrier, le double du contrat signé, accompagné de l'acompte.";
	txt+="\n";
	txt+="Vous souhaitant bonne réception de ces documents, nous vous prions d\'agréer, Madame, Monsieur, l\'expression de nos sentiments distingués. ";
  	txt+="\n\n";
 	if(nomProp && nomProp != null) txt+=nomProp;
 	txt+="\n"; 
	if(mailProp && mailProp !=null) txt+=mailProp;
	txt+="\n\n__________________________________________________________________\n";
 	txt+="NB : Si vous rencontrez un souci pour ouvrir le document c\'est  probablement que votre ordinateur n\'est pas équipé d'un logiciel permettant de lire les fichiers pdf. ";
 	txt+="Vous pouvez télécharger Adobe Acrobat  Reader gratuitement avec le lien suivant : http://www.adobe.com/fr/products/acrobat/readstep2.html\n"; 
 
 	return txt;

}
function getTextByDocument(doc){
    var textDoc;
    switch(doc)
    {        
        case "contrat_ld" :
             textDoc= "Nous avons le plaisir de vous adresser ci-dessous le contrat de location en deux exemplaires.\n\nNous vous demandons de bien vouloir nous retourner rapidement par courrier, le double du contrat signé, accompagné de l'acompte.";
             break;
        case "fiche_ld" :
             textDoc= "Nous avons le plaisir de vous transmettre en pièce jointe la fiche descriptive de l'hébergement que vous avez réservé.";
             break;
        case "cgv_ld" :
             textDoc= "Nous avons le plaisir de vous transmettre en pièce jointe les conditions générales de vente.";
             break;
        case "fiche_appreciation" :
             textDoc= "Nous avons le plaisir de vous transmettre en pièce jointe la fiche d'appréciation.";
             break;
        case "accuses_ld" :
             textDoc= "Nous avons le plaisir de vous transmettre en pièce jointe la confirmation de réception de votre paiement.";
             break;
        default:
             textDoc= "Nous avons le plaisir de vous adresser ci-dessous le contrat de location en deux exemplaires ainsi que la fiche descriptive de l'hébergement que vous avez réservé.\n\nNous vous demandons d'avoir l'obligeance de nous retourner par courrier, sous un délai de 8 jours, le double du contrat signé, accompagné de l'acompte.";
    }    
    return textDoc;
}

function getTextMailByDocument(tabDocument,nomProp,mailProp){

	var txt="Madame, Monsieur, \n\n";
        
        for (var i=0 ; i<tabDocument.length;i++){            
            txt+=getTextByDocument(tabDocument[i]);
            txt+="\n\n";
        }
 	txt+="Vous souhaitant bonne réception de ce document, nous vous prions d'agréer, Madame, Monsieur, l'expression de nos meilleures salutations.";
	txt+="\n\n";
 	if(nomProp && nomProp != null) txt+=nomProp;
 	txt+="\n";
	if(mailProp && mailProp !=null) txt+=mailProp;
	//txt+="\n\n<hr/>\n";
 	//txt+="NB : Si vous rencontrez un souci pour ouvrir le document c\'est  probablement que votre ordinateur n\'est pas équipé d'un logiciel permettant de lire les fichiers pdf. ";
 	//txt+="Vous pouvez télécharger Adobe Acrobat  Reader gratuitement avec le lien suivant : http://www.adobe.com/fr/products/acrobat/readstep2.html\n";

 	return txt;

}

function toggleRepertoire(evt,elt){
	if (!elt)elt=evt.element();
	elt=$(elt.nextSibling);
	
	var classe="repertoire_ferme";
	if (elt.hasClassName(classe)){
		elt.removeClassName(classe);
	}else{
		elt.addClassName(classe);
	}
}

function initEspaceTelechargement(){
	$$(".span_espace_telechargement").each(function(obj){
		toggleRepertoire(null,obj);
		obj.observe("click",toggleRepertoire);
	});
}

function initPreferences(){
	var html = "<div id='div_confirmEnregPreferences'></div>";
	var L=300;H=200;
	var urlEnregPreferences = "./ajax/enregistrementPreferences.php";
		
	$("span_enregPreferencesChoixTheme").observe("click",function(){
		var sending="mode=choixTheme";	
		$$(".input_preferencesTheme").each(function(obj){
			if(obj.checked) sending+="&theme="+obj.value;
		});	
		
		afficheDivAvecTransparence(html,L,H);
			
		affUrlInDiv("div_confirmEnregPreferences",urlEnregPreferences,sending);
	});
	
	$("span_enregPreferencesAffPlanning").observe("click",function(){
		var sending="mode=choixAffPlanning";
		
		$$(".input_preferencesAffPlanning").each(function(obj){
			if(obj.checked) sending+="&modeAff="+obj.value;
		});	
		
		afficheDivAvecTransparence(html,L,H);
			
		affUrlInDiv("div_confirmEnregPreferences",urlEnregPreferences,sending);
	});
}



function valideDatesStats(idConnex, baseExe, idDiv){
	var aujourdhui = new OBJDate();
	aujourdhui.definition();
	var dateString = aujourdhui.getAnnee()+"-"+aujourdhui.getMois()+"-"+aujourdhui.getJour();
	if ($('dateDeb').value.length>0 || $('dateFin').value.length>0){
		var objDebut = new OBJDate($('dateDeb').value);
		var objFin = new OBJDate($('dateFin').value);
		if (objFin.estApresOBJDate(objDebut)&& (objDebut.estAvantOBJDate(aujourdhui) && objFin.estAvantOBJDate(aujourdhui))){
			var date_debut = objDebut.getAnnee()+"-"+objDebut.getMois()+"-"+objDebut.getJour();
			var date_fin = objFin.getAnnee()+"-"+objFin.getMois()+"-"+objFin.getJour();
		}
	}else {
		var date_debut = dateString;
		var date_fin = dateString;
	}
	if(date_debut && date_fin){
		var objdiv = $(idDiv);
		$('div_messageErreur').innerHTML = '';
		var nb_ligne =$$('.div_ligneStats').length;
		if(nb_ligne>0){
			nb_stats+=1;
			var html ="<div id='mess_attente'><img src='/config_v3/imgs_defaut/jauge.gif'></div>";
			if($('mess_attente'))$('div_contenuLstStats').removeChild($('mess_attente'));
			$('div_contenuLstStats').insert(html, {position:'bottom'});
			comparaisonTabStats($('numGite').value, idConnex, baseExe, date_debut, date_fin,'div_contenuLstStats', nb_stats);
		}else{
			nb_stats=0;
			if(objdiv) objdiv.innerHTML = "<img src='/config_v3/imgs_defaut/jauge.gif'>";
			chargeTabStats($('numGite').value, idConnex, baseExe, date_debut, date_fin, idDiv, nb_stats);
		}
	}else{
		$('div_messageErreur').innerHTML= 'Attention, les dates s&eacute;l&eacute;ctionn&eacute;es ne peuvent &ecirc;tre supp&eacute;rieures &agrave; la date du jour' ;
	}
}

	function chargeTabStats(numGite, idConnex, baseExe, date_debut, date_fin, idDiv, nb){
		stats=new Stats();
		var adr="./ajax/infosDistProp.php";
        var sending="info=CHARGE_STATS&idConnex="+idConnex+"&baseExe="+baseExe+"&num="+numGite;
        sending+="&date_debut="+date_debut+"&date_fin="+date_fin;
         appelAjaxToFunc(adr,sending,function(reponseAjax){
				stats.setIdConnex(idConnex);
				stats.setBaseExe(baseExe);
				stats.setNumGite(numGite);
				stats.setIdDivAffichage(idDiv);
				stats.setDateDebut(date_debut);
				stats.setDateFin(date_fin);
				stats.afficheTabStats(reponseAjax);
		 }
		);
	}

	function comparaisonTabStats(numGite, idConnex, baseExe, date_debut, date_fin, idDiv, nb){
		stats=new Stats();
		var adr="./ajax/infosDistProp.php";
        var sending="info=CHARGE_STATS&idConnex="+idConnex+"&baseExe="+baseExe+"&num="+numGite;
        sending+="&date_debut="+date_debut+"&date_fin="+date_fin;
         appelAjaxToFunc(adr,sending,function(reponseAjax){
				stats.setIdConnex(idConnex);
				stats.setBaseExe(baseExe);
				stats.setNumGite(numGite);
				stats.setIdDivAffichage(idDiv);
				stats.setDateDebut(date_debut);
				stats.setDateFin(date_fin);
				stats.setNbStats(nb);
				stats.compareTabStats(reponseAjax);

		 }
		);
	}

	function fermerPeriodeStats(id){
		if($(id))$('div_contenuLstStats').removeChild($(id));
	}


function ajoutMessageIE(div, force){
    if(div){
        if(!force)div.style.display = 'none';
        div.insert("<div id='avertissementTitre'>CONSEIL VISITEUR&nbsp;</div>\n");
       if(!force){
			var div_croix_avertissement = new Element("div",{"id":"div_croix_avertissement"});
			var a_croix = new Element("a",{"href":"#"});
			Event.observe(a_croix,'click',function(){
				new Effect.BlindUp('div_avertissementIE', 1);
			});
			var img = new Element("img",{"src":"/config_v3/imgs_defaut/ie6/close.png","class":"img_navigateur"});
			a_croix.insert(img);
			div_croix_avertissement.insert(a_croix);
			div.insert(div_croix_avertissement);
	   }
	   var lien_firefox = "<a href='http://www.mozilla-europe.org/fr/firefox/' target='_blank' title='T&eacute;l&eacute;charger Firefox'>Firefox</a>";
	   var lien_chrome = "<a href='http://www.google.fr/chrome' target='_blank' title='T&eacute;l&eacute;charger Chrome'>Chrome</a>";
        if(!force){
			div.insert("<div id='avertissementText'>Navigateur conseillé Firefox/Chrome pour une utilisation optimale du module.</div>\n");
			var div_logoNavig = new Element ("div",{"id":"logoNavigateur"});
            var a_chrome = new Element("a",{"href":"http://www.google.fr/chrome","target":"_blank"});
            var img_chrome = new Element ("img",{"src":"/config_v3/imgs_defaut/ie6/chrome.jpg","class":"img_navigateur"});
            a_chrome.insert(img_chrome);
            div_logoNavig.insert(a_chrome);
            div_logoNavig.insert("&nbsp;");
            var a_firefox = new Element("a",{"href":"http://www.mozilla-europe.org/fr/firefox/","target":"_blank"});
                var img_firefox = new Element ("img",{"src":"/config_v3/imgs_defaut/ie6/ff.jpg","class":"img_navigateur"});
            a_firefox.insert(img_firefox);
            div_logoNavig.insert(a_firefox);
			div.insert(div_logoNavig);
		}else div.insert("<div id='avertissementText'>Navigateur conseillé "+lien_firefox+" / "+lien_chrome+" <br/>pour une utilisation optimale du module.</div>\n");
    }
}

function masquerAvertissement(){
    new Effect.BlindUp('div_avertissementIE', 1);
}

function bandeauAvertissement(){

	if (getVersionIE()<9){
			var div_avertissement = new Element("div",{"id":"bandeau_avertissementIE"});
			$('div_generale').parentNode.insertBefore(div_avertissement, $('div_generale'));
			ajoutMessageIE($('bandeau_avertissementIE'), true);
	}
}

//fonction pour remplir automatiquement le formulaire des coordonnée
//avec les coordonés du propriétaire lors de la saisie d'une reservation
//pour une chambre d'hote (pour aller plus rapidement vers le processus de
//paiement lors d'une resa a la derniere minute par exemple:
function remplirFormSaisieRapide(){
    var form = $("coord_prop_sr");
    //var input = form["nom"];
    //alert("value: " + $(input).getValue());
    //var form2 = $('div_saisieClient_nom');
    //var input2 = form2['nom'];
    //var input2 = $('nom');
    //alert("value: " + $(input2).getValue());
    $('titre').value = form["titre"].value;
    $('nom').value = form["nom"].value;
    $('prenom').value = form["prenom"].value;
    $('adr1').value = form["adresse"].value;
    $('cp').value = form["codepostal"].value;
    $('ville').value = form["ville"].value;
    $('pays').value = form["pays"].value;
    $('teldom').value = form["teldom"].value;
    $('mail').value = form["email"].value;
    $('eMailConfirm').value = form["email"].value;
}

/*Gestion des restriction*/
function affListeRestriction(numeroGite,msg){
	if($("listePeriodeRestriction")){
		var urlVerif = "./ajax/actionCalendrierRestriction.php";
		var sending="mode=affichagePeriodeRestriction";
		if(msg){
			sending+="&msg="+msg;
		}
		if(numeroGite){
			var imgAttente="<img src='/config_v3/imgs_defaut/jauge.gif'>";
			$("listePeriodeRestriction").innerHTML=imgAttente;
			sending+="&numeroGite="+numeroGite;
			appelAjaxToFunc(urlVerif,sending,function(reponseAjax){
				$("listePeriodeRestriction").innerHTML=reponseAjax;

			});
		}
	}
}
//Enregistrement restriction
function appelQdClicValidRestriction(){
	if(	$("numeroGite") && $("numCalendrier") && $("dateDeb") && $("dateFin") && $("dureeMin") &&
		$("numeroGite").value && $("numCalendrier").value && $("dateDeb").value && $("dateFin").value && $("dureeMin").value ){

		var dateDeb=$("dateDeb").value;
		var dateFin=$("dateFin").value;
		var objDateDeb=new OBJDate(dateDeb);
		var objDateFin=new OBJDate(dateFin);
		if(objDateFin.estApresOBJDate(objDateDeb)){
			var dureeMin=$("dureeMin").value;
			var expIsInt = new RegExp("^[0-9]+$","g");
			if(expIsInt.test(dureeMin)){
				var numeroGite=$("numeroGite").value;
				var numCalendrier=$("numCalendrier").value;

				var urlVerif = "./ajax/actionCalendrierRestriction.php";
				var sending="mode=enregPeriodeRestriction";
				sending+="&dateDeb="+dateDeb;
				sending+="&dateFin="+dateFin;
				sending+="&dureeMin="+dureeMin;
				sending+="&numeroGite="+numeroGite;
				sending+="&numCalendrier="+numCalendrier;

				appelAjaxToFunc(urlVerif,sending,function(reponseAjax){
					effaceDivAvecTransparence();
					affListeRestriction(numeroGite,reponseAjax);
				});
			}else{
				if($("span_msgErreurAjax")){
					$("span_msgErreurAjax").innerHTML="La durée doit être un entier.";
				}
			}
		}else{
			if($("span_msgErreurAjax")){
				$("span_msgErreurAjax").innerHTML="La date de fin doit être après la date de début.";
			}
		}
	}else{
		if($("span_msgErreurAjax")){
			$("span_msgErreurAjax").innerHTML="Les champs sont obligatoires";
		}
	}

}
//Supprimer restriction
function confirmSupprPeriodeRestriction(numeroGite,numCalendrier,dateDeb,dateFin,dureeMin){
	var html = "<div id='div_supprPeriodeRestriction'></div>";
	var L=300;H=150;
	var urlVerif = "./ajax/actionCalendrierRestriction.php";
	var sending = "mode=confirmSupprPeriodeRestriction";

	sending+="&dateDeb="+dateDeb;
	sending+="&dateFin="+dateFin;
	sending+="&dureeMin="+dureeMin;
	sending+="&numeroGite="+numeroGite;
	sending+="&numCalendrier="+numCalendrier;

	afficheDivAvecTransparence(html,L,H);

	affUrlInDiv("div_supprPeriodeRestriction",urlVerif,sending);
}

function supprimerPeriodeRestriction(numeroGite,numCalendrier,dateDeb,dateFin,dureeMin){
	var urlVerif = "./ajax/actionCalendrierRestriction.php";
	var sending="mode=supprPeriodeRestriction";
	sending+="&dateDeb="+dateDeb;
	sending+="&dateFin="+dateFin;
	sending+="&dureeMin="+dureeMin;
	sending+="&numeroGite="+numeroGite;
	sending+="&numCalendrier="+numCalendrier;

	appelAjaxToFunc(urlVerif,sending,function(reponseAjax){
		affListeRestriction(numeroGite,reponseAjax);
		effaceDivAvecTransparence();
	});
}

//gestion saisie de restriction
function appelSaisiePeriodeRestriction(numeroGite,numCalendrier){
	var html = "<div id='div_formPeriodeRestriction'></div>";
	var H=350;
	var L=520
	var urlXHTML = "./ajax/actionCalendrierRestriction.php";
	var vars = "mode=formPeriodeRestriction&numeroGite="+numeroGite+"&numCalendrier="+numCalendrier;
	
	afficheDivAvecTransparence(html,L,H);
	affUrlInDiv("div_formPeriodeRestriction",urlXHTML,vars,"",function(evt){
			setCalendrierToDiv("calendrierRestriction",{
												"nbMois":1,
												"clic":foncClicSurJourRestriction,
												"modeAff":"CARRE",
												"nePasChargerMotCles":true,
												"estCalFin":"O",
												"foncQdChangeMois":changeClassForRestriction
			});
			affichageRestrictionInCalendrier(numeroGite);
			affMsgAttenteParDessusInDiv("calendrierRestriction");

	});
}
function affichageRestrictionInCalendrier(numeroGite){
	var urlVerif = "./ajax/actionCalendrierRestriction.php";
	var sending="mode=getPeriodeRestrictionCal";
	sending+="&numeroGite="+numeroGite;

	appelAjaxToFunc(urlVerif,sending,function(reponseAjax){
		var retour=reponseAjax.evalJSON();
		window.tabDateRestriction=retour;
		changeClassForRestriction();
		effaceMsgAttenteParDessus();
	});
}
function changeClassForRestriction(){
	if(window.tabDateRestriction){
		var tabDate=window.tabDateRestriction;
		tabDate.each(function(date){
			if($("calendItea_calendrierRestriction_id_"+date)){
				$("calendItea_calendrierRestriction_id_"+date).addClassName("spanCalendRestriction");
				$("calendItea_calendrierRestriction_id_"+date).removeClassName("spanCalendCliquable");
				//$("calendItea_calendrierRestriction_id_"+date).innerHTML=$("calendItea_calendrierRestriction_id_"+date).innerHTML+"R";
			}
		});
	}
}

function foncClicSurJourRestriction(evt,jour,mois,annee){
	if(evt.target.hasClassName("spanCalendCliquable")){
		var dte=new OBJDate(jour+"/"+mois+"/"+annee);
		if (!window.objDateDebutRestriction){
			window.objDateDebutRestriction=dte;
			$("dateDeb").value=dte.toString();
			$("div_restriction_message").innerHTML="Cliquez sur la date de fin de restriction.";
			var j1=dte.getJour();
			var m1=dte.getMois();
			var a1=dte.getAnnee();
			calendrier_setPeriodeInClass("calendrierRestriction","spanSelectJourDsSejour",j1,m1,a1,j1,m1,a1);
		}else{
			
			$("dateFin").value=dte.toString();
			$("div_restriction_message").innerHTML="La période de restriction a été séléctionnée. <br />Vous pouvez cependant choisir des nouvelles dates.";
			var dte1=window.objDateDebutRestriction;
			var j1=dte1.getJour();
			var m1=dte1.getMois();
			var a1=dte1.getAnnee();
			var j2=dte.getJour();
			var m2=dte.getMois();
			var a2=dte.getAnnee();
			calendrier_setPeriodeInClass("calendrierRestriction","spanSelectJourDsSejour",j1,m1,a1,j2,m2,a2);
			window.objDateDebutRestriction=null;
		}
	}
}
//Affichage du des restrictions dans le planning
function initPlanningPeriodeRestriction(numeroGite,multi){
	var urlVerif = "./ajax/actionCalendrierRestriction.php";
	var sending="mode=getPeriodeRestrictionPlanning";
	sending+="&numeroGite="+numeroGite;

	appelAjaxToFunc(urlVerif,sending,function(reponseAjax){
		if(reponseAjax){
			var retour=reponseAjax.evalJSON();
			var tabPeriode=retour
			if(tabPeriode!=null){
				tabPeriode.each(function(periode){
					var dateDeb = new OBJDate(periode.dateDeb);
					var dateFin = new OBJDate(periode.dateFin);
					var dureeMin = periode.dureeMin;
					var title="Restriction du "+dateDeb.toString()+" au "+dateFin.toString()+", la durée minimale du séjour est de "+dureeMin;
					if(dureeMin>1){
						title+=" jours.";
					}else{
						title+=" jour.";
					}

					var date=periode.date;
					var nbLigne;
					if($$('.calendItea_ul_LIGNE')[0]){
						nbLigne=$$('.calendItea_ul_LIGNE')[0].getAttribute("nb_chambre");
					}

					var objSpan;
					var objSpanLbl;
					//Chambre
					if(nbLigne>0){
						for(var j=1;j<=nbLigne;j++){
							objSpan =$("id_"+date+"_"+j);
							objSpanLbl=$("lbl_"+date+"_"+j);
							if($(objSpan)){
								objSpan.setAttribute("restriction",1);
								objSpan.setAttribute("title","");
								objSpan.setAttribute("titleRestriction",title);
								changeRestrictionEtatSpan(objSpan,objSpanLbl);
							}
						}
					}else{
					//Gite
						var idSpan;
						var idSpanLbl;
						var multiSpan="";
						if(multi==true){
							multiSpan="_"+numeroGite;
						}
						idSpan ="id_"+date+multiSpan;
						idSpanLbl ="lbl_"+date+multiSpan;
						objSpan =$(idSpan);
						objSpanLbl=$(idSpanLbl);
						if(objSpan){
							objSpan.setAttribute("restriction",1);
							objSpan.setAttribute("title","");
							objSpan.setAttribute("titleRestriction",title);
							changeRestrictionEtatSpan(objSpan,objSpanLbl)
						}
					}
				});
			}
		}
	});
}
function changeRestrictionEtatSpan(objSpan,objSpanLbl){
	if($(objSpan)){
		if(objSpan.hasAttribute("restriction") && objSpan.getAttribute("restriction")==1){
			if(objSpan.getAttribute("etat")=="."){
				if(objSpan.hasAttribute("titleRestriction")){
					objSpan.setAttribute("title",objSpan.getAttribute("titleRestriction"));						
				}				
				//Si visuel handicap
				if($(objSpanLbl)){
					objSpanLbl.innerHTML=".!";
					if(objSpan.hasAttribute("titleRestriction")){
						objSpanLbl.setAttribute("title",objSpan.getAttribute("titleRestriction"));
					}
				}else{
					objSpan.addClassName("spanCalendJour_restriction");
				}
			}else{
				if(objSpan.hasAttribute("title")){
					if(objSpan.getAttribute("title")!=""){
						objSpan.setAttribute("title","");
					}
					if($(objSpanLbl)){
						if(objSpanLbl.getAttribute("title")!=""){
							objSpanLbl.setAttribute("title","");
						}
					}					
				}
			}
		}
	}
}

function chargePromoAjax(categ,numeroGite){
	var urlVerif = "./ajax/prop.php";
	var sending="mode=xhtmlPromoAjax";
	sending+="&numeroGite="+numeroGite;
	sending+="&categ="+categ;
	if($("div_lstPromo")){
		affMsgAttenteParDessusInDiv("div_lstPromo");
		appelAjaxToFunc(urlVerif,sending,function(reponseAjax){
			$("div_lstPromo").innerHTML=reponseAjax;
			effaceMsgAttenteParDessus();
		});
	}
	
}

function confirmChangerExe(){
    if(confirmChangerPage==true){
        return confirm('Toutes les modifications de planning qui n\'ont pas été enregistrées seront perdues, Voulez vous continuer?'); 
    }
    else return true;
}

function setConfirmChangerPage(){
    confirmChangerPage = true;
}
function unsetConfirmChangerPage(){
    confirmChangerPage = false;
}





