// JavaScript Document
function executeAjax(){
	var http_request = false;

	if (window.XMLHttpRequest) { // Mozilla, Safari,...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) {
			http_request.overrideMimeType('text/html');
			// Voir la note ci-dessous à propos de cette ligne
		}
	} else if (window.ActiveXObject) { // IE
		try {
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {}
		}
	}

	if (!http_request) {
		alert('Abandon :( Impossible de créer une instance XMLHTTP');
		return false;
	}
	return http_request;

}
function efface(elt){
  document.getElementById(elt).value='';
}
function calendrier(form,elt,elt2){
window.open("/admin/admin/modules/calendrier/calendrier.php?form="+form+"&elem="+elt+"&elem2="+elt2,"calendrier","menubar=no, status=no, scrollbars=no, menubar=no, width=200, height=290");
}

function editChambre(ch){
window.open("/admin/chambre_edit.php?id="+ch,"modifier une chambre","menubar=no, status=no, scrollbars=no, menubar=no, width=300, height=150");
}
function verifRecherche(leform)
{
  var temoin=0;
  var message="";
  var leForm=document.forms[leform];
  var date1=leForm.date1H.value;
  var date2=leForm.date2H.value;
  var nbPlaces=leForm.nbPlaces.options[leForm.nbPlaces.selectedIndex].value;
  var ville=leForm.ville.options[leForm.ville.selectedIndex].value;
  mois1=date1.substr(5,5);
  mois1=mois1.substr(0,2);
  
  mois2=date2.substr(5,5);
  mois2=mois2.substr(0,2);
  


  if((date1!="")&&(date2!=""))
  {
    var oDate1=new Date(date1.substr(0,4),mois1,date1.substr(9,10));
    var oDate2=new Date(date2.substr(0,4),mois2,date2.substr(9,10));
    //alert(calculduree(date1.substr(8,10),mois1,date1.substr(0,4),date2.substr(8,10),mois2,date2.substr(0,4)));
    if(calculduree(date1.substr(8,10),mois1,date1.substr(0,4),date2.substr(8,10),mois2,date2.substr(0,4))<0)
    {
     // temoin=1;
      //message+="Veuillez selectionner une periode valide\n";
    }
  }else{
    temoin=1;
    message+="Veuillez selectionner les deux dates de la periode\n";
  }
  
  if(temoin==1)
  {
    alert(message);
    return false;
  }else{
    return true;
  }
  

}

function afficheCarteVilles()
{
var laDiv=document.getElementById('map');
leDisplay=(laDiv.style.display=="none")?"block":"none";
laDiv.style.display=leDisplay;
}

function nouvelleVille()
{
window.open("ville_nouveau.php", "secondefenetre", "width=400,height=400,scrollbars");
}

function description(lId)
{
  var desc=document.getElementById(lId);
  desc.style.display=(desc.style.display="none")?"inline":"none";
}

 function calculduree(jourdebut,moisdebut,anneedebut,jourfin,moisfin,anneefin)
 {
 //préconditions : jourdebut,moisdebut,anneedebut,jourfin,moisfin,anneefin sont des entiers et ont été initialisé correctement(c.a.d que la date de debut doit être inferieur à la date de fin)
 //postconditions : retourne un entier qui indique la durée en jour
 //explications : cette fonction est le coeur du script, c'est elle qui calcule la durée, et c'est cette fonction qu'il vous sera utile de réutiliser, cette fonction renvoie
 //la durée précise qui s'est écoulée, elle ne fait pas d'approximation et vérifie si l'année est bissextile


 function calcul_longueur_mois(annee)
 {
 //préconditions : annee est en entier
 //postconditions : retourne un tableau de 12 éléments d'entier qui indique le nombre de jours dans chaque mois

 var longueurmois=[31,28,31,30,31,30,31,31,30,30,30,31];
 if((!(annee % 4) && (annee % 100)) || !(annee % 400)) //vérifie si l'année traitée est bissextile
 {
 longueurmois=[31,28,31,30,31,30,31,31,30,30,30,31];
 }
 return longueurmois;

 }

 var duree=0;
 for(i=anneedebut;i<anneefin;i++)
 {
 if((!(i % 4) && (i % 100)) || !(i % 400)) //vérifie si l'année traitée est bissextile
 {
 duree+=366;
 }
 else
 {
 duree+=365;
 }
 }
 var longueurmois=calcul_longueur_mois(anneedebut);
 for(i=0;i<moisdebut;i++)
 {
 if(i==moisdebut-1){duree-=jourdebut}
 else{duree-=longueurmois[i]}
 }

 var longueurmois=calcul_longueur_mois(anneefin);
 for(i=0;i<moisfin;i++)
 {
 if(i==moisfin-1){duree+=jourfin}
 else{duree+=longueurmois[i]}
 }
 return duree;
 }



function compareDates(date_1, date_2){
alert(date_1-date_2);
	    diff = date_1.getTime()-date_2.getTime();
	    return (diff==0?diff:diff/Math.abs(diff));
	  }

function afficheCal()
{
  var leMois=document.getElementById("moisListe");
  leMois=leMois.options[leMois.selectedIndex].value;
  var lAnnee=document.getElementById("anneeListe");
  lAnnee=lAnnee.options[lAnnee.selectedIndex].value;
  var lUrl=document.location.toString();
  var nouvelleUrl=lUrl.substr(lUrl.length-14,lUrl.length-8);
  var lHeber=document.forms['refresh'].id_heber.value;
  var test=nouvelleUrl.substr(0,6);
leMois=(leMois=='00')?'01':leMois;
lAnnee=(lAnnee=='00')?'2007':lAnnee;
  if(test=='&date=')
  {
    nouvelleUrl=lUrl.substr(0,lUrl.length-14);
    nouvelleUrl=nouvelleUrl+"&date="+lAnnee+leMois+"01";
  }else{
      nouvelleUrl=lUrl+"&id_heber="+lHeber+"&date="+lAnnee+leMois+"01";
  }

  
  document.location=nouvelleUrl;
}

function checkSuppr(heber)
{
valeur=confirm("Voulez-vous vraiment effacer "+heber+" ?");
return valeur;

}

function updatePlaces() {
  var laDiv=document.getElementById('rtatPlaces');
  var lInput=document.getElementById('nb_places');
  var lHeber=document.getElementById('id_heber');
  var date1=document.getElementById('date1').value;
  var date2=document.getElementById('date2').value;
  var date3=document.getElementById('date3').value;
  var places=document.getElementById('nb_places').value;
  lHeber=lHeber.options[lHeber.selectedIndex].value;
  var lePlace=document.getElementById('heber'+lHeber).value;
  
  
		var url="ajax_update_places.php?id_heber="+lHeber+"&date1="+date1+"&date2="+date2+"&date3="+date3+"&places="+places+"&lePlace="+lePlace;
        var http_request=executeAjax();
        http_request.onreadystatechange = function() { 
		if (http_request.readyState == 4) {
            if (http_request.status == 200) {
                laDiv.innerHTML=http_request.responseText;
            } else {
                laDiv.innerHTML='Un problème est survenu avec la requête.';
            }
        }
			
		 };
        http_request.open('GET', url, true);
        http_request.send(null);
    }
    
function afficheResa(lUrl)
{
   window.open(lUrl, "secondefenetre", "width=400,height=400,scrollbars");


}



function montreCarte(address,nom,urlPage) {
var geocoder = new GClientGeocoder();
		  geocoder.getLatLng(
			address,
			function(point) {
			  if (!point) {
				//alert(address + " pas trouvé");
			  } else {
				//map.setCenter(point,10);
				var marker = new GMarker(point);
				var map2 = new GMap2(document.getElementById("map"));
				  map2.addOverlay(marker);
					marker.openInfoWindowHtml("<b>Recherche dans " + nom + "</b>");
			  }
			}
		  );
}

function changeListe() {
    var lHeber=document.getElementById('id_heber');
  lHeber=lHeber.options[lHeber.selectedIndex].value;
  var laDiv=document.getElementById('divListeChambres');
  
		var url="ajax_liste_chambres.php?id_heber="+lHeber;
        var http_request=executeAjax();
        http_request.onreadystatechange = function() { 
		if (http_request.readyState == 4) {
            if (http_request.status == 200) {
                laDiv.innerHTML=http_request.responseText;
            } else {
                laDiv.innerHTML='Un problème est survenu avec la requête.';
            }
        }
			
		 };
        http_request.open('GET', url, true);
        http_request.send(null);
       
    }
    

function reservType() {
    var lHeber=document.getElementById('id_heber');
  lHeber=lHeber.options[lHeber.selectedIndex].value;
  
  var laChambre=document.getElementById('id_chambre');
  laChambre=laChambre.options[laChambre.selectedIndex].value;
  var laDiv=document.getElementById('reserv_type');
  
		var url="ajax_reserv_type.php?id_heber="+lHeber+"&id_chambre="+laChambre;
        var http_request=executeAjax();
        http_request.onreadystatechange = function() { 
		if (http_request.readyState == 4) {
            if (http_request.status == 200) {
                laDiv.innerHTML=http_request.responseText;
            } else {
                laDiv.innerHTML='Un problème est survenu avec la requête.';
            }
        }
			
		 };
        http_request.open('GET', url, true);
        http_request.send(null);
        afficheDates();
        
}

function afficheDates() {
   
  var laDiv=document.getElementById('dates');
  laDiv.style.display='block';
        
}

