
	function show_calendar(div_cal,fichier){
		
		//alert(div_cal + ',' + fichier);
		document.getElementById(div_cal).innerHTML= file(fichier);
		//return file(fichier);
		//return 'test';
	}
	
	function file(fichier)
     {

     if(window.XMLHttpRequest) // FIREFOX
          xhr_object = new XMLHttpRequest(); 
     else if(window.ActiveXObject) // IE
          xhr_object = new ActiveXObject("Microsoft.XMLHTTP"); 
     else 
          return(false); 
     xhr_object.open("GET", fichier, false); 
     xhr_object.send(null);  
     if(xhr_object.readyState == 4) return(xhr_object.responseText);
     else return(xhr_object.readyState);
     }
	 
	 //conversion champ texte en date
	 function get_date(date)
	{
		var d = new Date(date[2], date[1] - 1, date[0]);
		return d.getTime();
	}
	
	//ajout de day jours, month mois, year années à la date en paramétre
	function date_add(date,day,month,year)
	{
		//var d = new Date(date[2], date[1] - 1 , date[0]);
		//return d.getTime();
		var new_day=parseInt(date[0])+day; 
		new_day = ((new_day < 10) ? '0' : '') + new_day;
		var new_month=parseInt(date[1])+month; 
		new_month = ((new_month < 10) ? '0' : '') + new_month;
		var new_year=parseInt(date[2])+year; 
		
		return new_day + '/' + new_month +'/' + new_year;
	}
	
	//Affichage du nombre de jours de la demande seulement si les 2 champs sont renseignés
	function calcul_nbr_days() 
	{ 

		//var date_debut=window.opener.document.forms[0].elements['debut'].value;
		//var date_fin=window.opener.document.forms[0].elements['fin'].value;
		var date_debut=document.getElementById('debut').value;
		var date_fin=document.getElementById('fin').value;

		//conversion des champs texte récupérés en dates
		var debut = get_date(date_debut.split("/"));
		var fin = get_date(date_fin.split("/"));
		
		//Conversion de la durée de milliserconds en jours 
		var nb = (fin - debut) / (1000 * 60 * 60 * 24); 

		//if(!isNaN(nb)){window.opener.document.forms[0].elements['nbr_days'].value=parseInt(nb)+' days';}
		if(!isNaN(nb)){document.getElementById('nbr_days').value=parseInt(nb)+' days';}
		
		//Si nombre de jours <0 (date début > date fin) on force la date de fin = date de début + 1 jours
		if(nb<0){
			document.getElementById('fin').value=date_add(date_debut.split("/"),1,0,0);
			document.getElementById('nbr_days').value='1 day';
		}
	}

	function active_calendar(date_field,contact_us){
		var date_debut='';
		var date_fin='';
		var date_param='';
		var is_contact_us='';
		//alert(document.getElementById(date_field).value);
		if(date_field=='debut'){
			date_debut=get_date_value(document.getElementById('debut').value);
			date_param='debut=' + date_debut;				
		}else
		{
			date_debut=get_date_value(document.getElementById('debut').value);
			date_fin=get_date_value(document.getElementById('fin').value);
			
			if(date_fin!='dd/mm/yy'){
				date_param=(date_debut!='dd/mm/yy')?'fin=' + date_fin:'fin=' + date_fin;	
			}else{
				date_param='fin=' + date_debut;	
			}
		}
		//alert (document.getElementById('img_debut').style.top);
		//Positionnement du calendrier différent si contact us ou non
		var pos = getPosition((date_field=='debut')?'img_debut':'img_fin'); 
		if(contact_us=='oui'){
			document.getElementById('calendar').style.top=pos[1];//getPosition('img_debut');
			document.getElementById('calendar').style.left=pos[0];//(date_field=='debut')?270+"px":490+"px";
			is_contact_us='&contact_us=oui';
		}else{
			document.getElementById('calendar').style.top=270+"px";
			document.getElementById('calendar').style.left=(date_field=='debut')?410+"px":585+"px";
			is_contact_us='&contact_us=non';
		}
		show_calendar('calendar','../include/calendar_inc.php?' + date_param + is_contact_us);
		
		document.getElementById('calendar').style.visibility='visible';		
	}

	//06/06/2011 si la valeur n'est pas une date alors on retourne le format dd/mm/yy sinon la valeur de la date
	//dd/mm/yy imposé pour permettre à calendar_inc.php de se positionner sur le bon mois.
	function get_date_value(date_value)
	{
		var valide_date='';
		var reg=new RegExp("^[0-9]{2}[/]{1}[0-9]{2}[/]{1}[0-9]{4}$","g");
		if (reg.test(date_value)) {
			valide_date=date_value;
			return valide_date;
		}
		else {
			valide_date='dd/mm/yy';
			return valide_date;
		}
	}
	
	//récupére la position d'un élément dans la page
	function getPosition(element){	
		var left = 0;	
		var top = 0;	
		/*On récupère l'élément*/	
		var e = document.getElementById(element);	
		/*Tant que l'on a un élément parent*/	
		while (e.offsetParent != undefined && e.offsetParent != null)	{
			/*On ajoute la position de l'élément parent*/		
			left += e.offsetLeft + (e.clientLeft != null ? e.clientLeft : 0);		
			top += e.offsetTop + (e.clientTop != null ? e.clientTop : 0);		
			e = e.offsetParent;	
		}	
		return new Array(left,top);
	}

