function isverifan(chaineDate) 
{

//Je regarde tout d'abord si la chaîne n'est pas vide, sinon pas la peine d'aller plus loin
   if (chaineDate == "") return false

// J'utilise split pour créer un tableau dans lequel je récupère les jour mois année
// J'attends bien sûr une date formatée en JJ/MM/AAAA
   var ladate = (chaineDate).split("/")
   //alert(parseInt(ladate[0]));
// Si je n'ai pas récupéré trois éléments ou bien s'il ne s'agit pas d'entiers, pas la peine non plus d'aller plus loin
   if ((ladate.length != 3) || isNaN(parseInt(ladate[0])) || isNaN(parseInt(ladate[1])) || isNaN(parseInt(ladate[2]))) return false

// Sinon, c'est maintenant que je crée la date correspondante. Attention, les mois sont étalonnés de 0 à 11
   var unedate = new Date(eval(ladate[2]),eval(ladate[1])-1,eval(ladate[0]))

// Bug de l'an 2000 oblige, lorsque je récupère l'année, je n'ai pas toujours 4 chiffres selon les navigateurs, je rectifie donc ici le tir.
   var annee = unedate.getYear()
   if ((Math.abs(annee)+"").length < 4) annee = annee + 2000;
   ladate= new Date();
	if(annee > ladate.getYear()){alert('Les réservations ne peuvent être éffectuées que pour l\'année en cours !');return false;}
	else{return true;}

}

function isDateValid(chaineDate) 
{

//Je regarde tout d'abord si la chaîne n'est pas vide, sinon pas la peine d'aller plus loin
   if (chaineDate == "") return false

// J'utilise split pour créer un tableau dans lequel je récupère les jour mois année
// J'attends bien sûr une date formatée en JJ/MM/AAAA
   var ladate = (chaineDate).split("/")
   //alert(parseInt(ladate[0]));
// Si je n'ai pas récupéré trois éléments ou bien s'il ne s'agit pas d'entiers, pas la peine non plus d'aller plus loin
   if ((ladate.length != 3) || isNaN(parseInt(ladate[0])) || isNaN(parseInt(ladate[1])) || isNaN(parseInt(ladate[2]))) return false

// Sinon, c'est maintenant que je crée la date correspondante. Attention, les mois sont étalonnés de 0 à 11
   var unedate = new Date(eval(ladate[2]),eval(ladate[1])-1,eval(ladate[0]))

// Bug de l'an 2000 oblige, lorsque je récupère l'année, je n'ai pas toujours 4 chiffres selon les navigateurs, je rectifie donc ici le tir.
   var annee = unedate.getYear()
   if ((Math.abs(annee)+"").length < 4) annee = annee + 2000;

// Il ne reste plus qu'à vérifier si le jour, le mois et l'année obtenus sont les mêmes que ceux saisis par l'utilisateur.
   return ladate[0] + '/' +  ladate[1] + '/' + annee;
}
function verifreservation(date_deb, date_fin){
	document.getElementById('date_deb').value=isDateValid(date_deb);
	document.getElementById('date_fin').value=isDateValid(date_fin);
	if(document.MM_returnValue== false)return false;
	if(isverifan(date_deb)== false)return false;
	if(isverifan(date_fin)== false)return false;
	
	return true;
	
}
function createXHR() 
{
    var request = false;
        try {
            request = new ActiveXObject('Msxml2.XMLHTTP');
        }
        catch (err2) {
            try {
                request = new ActiveXObject('Microsoft.XMLHTTP');
            }
            catch (err3) {
		try {
			request = new XMLHttpRequest();
		}
		catch (err1) 
		{
			request = false;
		}
            }
        }
    return request;
}
function selectCL(id,rch){
	document.location.href='/gestion/compte.php?compte='+id+'&rch='+rch;
   }
  
function selecturl(id,url){
	document.location.href=url + '?modif='+id+'&modifsel=1';
   }
  function selecturlaction(id,url,action){
	if(action=='zoneadd'){
	document.location.href=url + '&modif='+id+'&addsel=1';
	}
	else{
	document.location.href=url + '&modif='+id+'&modifsel=1';
	}
   }  
 function remplichampaction(zonerch,url,champrch,urlretour,ob)
{ 
    var xhr = createXHR(); 
    xhr.onreadystatechange  = function()
    { 
         if(xhr.readyState  == 4)
         {
              if(xhr.status  == 200) {
              	if(xhr.responseText!=''){
					 document.getElementById(zonerch).style.display = 'block';
					 document.getElementById(zonerch).innerHTML = xhr.responseText;
				}
			}
         }
    }; 
	var rch =ob.value;
	//var rch =document.getElementById(champrch).value;
	if(rch.length>2){
		var script = url;   // local script
		xhr.open("POST", script, true);		
		xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		xhr.send("rch=" + rch + "&zonerch=" + zonerch+ "&urlretour="+urlretour);
	}
} 
   ///////////////////////////////////////////////////////////////// 
 
   /////////////////////////////////////////////////////////////////
function remplichamp(zonerch,url,champrch)
{ 
    var xhr = createXHR(); 
    xhr.onreadystatechange  = function()
    { 
         if(xhr.readyState  == 4)
         {
              if(xhr.status  == 200) {
              	if(xhr.responseText!=''){
					 document.getElementById(zonerch).style.display = 'block';
					 document.getElementById(zonerch).innerHTML = xhr.responseText;
				}
			}
         }
    }; 
	var rch =document.getElementById(champrch).value;
	if(rch.length>2){
		var script = url;   // local script
		xhr.open("POST", script, true);		
		xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		xhr.send("rch=" + rch + "&zonerch=" + zonerch);
	}
}
///////////////////////////////////////////// exploitation résultat recherche//////////////////////////////////////////////////
function selecte(id, zonerch,url,zoneresultat){
	var xhr = createXHR(); 
    xhr.onreadystatechange  = function()
    { 
		if(xhr.readyState  != 4)
		         {
					 document.getElementById(zonerch).style.display = 'none';
		}	
         if(xhr.readyState  == 4)
         {
            if(xhr.status  == 200) {
					  document.getElementById(zoneresultat).style.display = 'block';
					  document.getElementById(zoneresultat).innerHTML = xhr.responseText;
			}
      }
};   

	xhr.open("POST", url, true);		
	xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	xhr.send("id=" +id);
	   
   }
/////////////////////////////////////////////////////////////////////////////////////////////////
function lister_champs(theform)//icic la fonction qui va gÚnÚrer les ÚlÚments a envoyer
{
   var url='';
   for (i=0; i<theform.elements.length; i++)
   {
       if(((theform.elements[i].type=='radio' ||theform.elements[i].type=='checkbox') && theform.elements[i].checked==true) || (theform.elements[i].type!='radio' &&theform.elements[i].type!='checkbox'))//control si c'est des radio ou check box et incrÚmente le rÚsultat QUE si c'est cochÚ (sans þa il prendrais les deux)
           {
   if(theform.elements[i].type=='select-multiple' || theform.elements[i].type=='select' )//si c'est un select multiple 
   {
    for(j = theform.elements[i].length-1; j >= 0; j-=1)//on parcours les element du select multiple
       {
          if(theform.elements[i].options[j].selected)//si selectionnÚ on incremente
             {
                             if(url){url+='&';}
           url+=theform.elements[i].name+'='+theform.elements[i].options[j].value;
             }
     }
   }
   if(url){url+='&';}
   if(theform.elements[i].type!='select-multiple'){  url+=theform.elements[i].name+'='+theform.elements[i].value;}
           }
        }
return url;//onretourne le resultat vers la fonction appelÚe
}

function exploiteform(form,zonemsg,zone,msg,url,test,action){
	if(typeof form!="object"){form = document.getElementById(form);} //retourne object
	if(test==true){if(document.MM_returnValue==false) return false;}
	var xhr = createXHR(); 
    xhr.onreadystatechange  = function()
    { 
		if(xhr.readyState  != 4)
		         {
					 document.getElementById(zonemsg).style.display = 'block';
					 document.getElementById(zonemsg).innerHTML = msg;
		}	
         if(xhr.readyState  == 4)
         {
            if(xhr.status  == 200) {
				if(action=="0"){
					  document.getElementById(zonemsg).style.display = 'none';
					  document.getElementById(zone).style.display = 'block';
					  document.getElementById(zone).innerHTML = xhr.responseText;
				}
			}
      }
};   

	var script = url;   // local script
	xhr.open("POST", script, true);		
	xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	xhr.send(lister_champs(form) + "&action=" + action);
	return false;
}

/////////////////////////////////
 


function list_control_produit(controle, divcont){
		var xhr = createXHR();
    xhr.onreadystatechange  = function()
    { 
         if(xhr.readyState  == 4)
         {
              if(xhr.status  == 200) {
              if(xhr.responseText!=''){
								 document.getElementById(divcont).innerHTML = xhr.responseText;
								 document.getElementById(divcont).style.display = 'block';
							 }
				 }
         }
    }; 
	var script = "/gestion/divcont.php";   // local script
	xhr.open("POST", script, true);		
	xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	xhr.send("controle=" + controle);
}
//////////////////////NEWS///////////////////////////////////
function selnews(n, nivcat, div){
	var xhr = createXHR(); 
    xhr.onreadystatechange  = function()
    { 
         if(xhr.readyState  == 4)
         {
            if(xhr.status  == 200) {
					  document.getElementById(div).innerHTML = xhr.responseText;
		 }
      }
	};   
	var script = "/selnews.php";   // local script
	xhr.open("POST", script, true);		
	xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	xhr.send("n="+n+"&nivcat="+nivcat+"&div="+div);
	return false;
}

///////////////////////////////////////////////////////////

 function afffiche(id, url, type){
   var xhr = createXHR(); 
    xhr.onreadystatechange  = function()
    { 	
         if(xhr.readyState  == 4)
         {
            if(xhr.status  == 200) { 
			var w_s=win_size();
			 var lardiv=parseInt(document.getElementById('divficheacc').style.width)*1;
               document.getElementById('divficheacc').style.left=Math.floor(w_s[0]/2)-Math.floor(parseInt(lardiv)/2)+'px'; 
			   document.getElementById('divficheacc').style.top=Math.floor(w_s[2]/2)+Math.floor(w_s[1]/2)+'px'; 
			   document.getElementById('divficheacc').style.display = 'block';
			document.getElementById('divficheacc').innerHTML = xhr.responseText; }
         }
	};   

	xhr.open("POST", url, true);		
	xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	xhr.send("id=" + id + "&type=" + type);
}

 function affcat3(id, url, type){
   var xhr = createXHR(); 
    xhr.onreadystatechange  = function()
    { 	
         if(xhr.readyState  == 4)
         {
            if(xhr.status  == 200) { 

			document.getElementById(type).innerHTML = xhr.responseText; }
         }
	};   

	xhr.open("POST", url, true);		
	xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	xhr.send("id=" + id + "&type=" + type);
}

function agendaarchive(zonerch,url,archive)
{ 
    var xhr = createXHR(); 
    xhr.onreadystatechange  = function()
    { 
         if(xhr.readyState  == 4)
         {
              if(xhr.status  == 200) {
              	if(xhr.responseText!=''){
					 document.getElementById(zonerch).innerHTML = xhr.responseText;
				}
			}
         }
    }; 
		var script = url;   // local script
		xhr.open("POST", script, true);		
		xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		xhr.send("archive=" + archive);

}

function selvideo(videosel)
{ 
	var reg=new RegExp("[|||]+", "g");
    var xhr = createXHR(); 
    xhr.onreadystatechange  = function()
    { 
         if(xhr.readyState  == 4)
         {
              if(xhr.status  == 200) {
              	if(xhr.responseText!=''){
					var tabchamp=xhr.responseText.split(reg);
					 document.getElementById('divplayer').innerHTML = tabchamp[0];
					 document.getElementById('divdescription').innerHTML = tabchamp[1];
					 $('#player').jwplayer({
					  flashplayer:'/file_flash/player.swf',
					  autostart:false,
					  skin:'/file_flash/five/five.xml'
					});
				}
			}
         }
    }; 
		var script = "/videosel.php";   // local script
		xhr.open("POST", script, true);		
		xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		xhr.send("videosel=" + videosel);

}

/////////////////////////////verif form /////////////////////////////:

function verifform(form){
	if(typeof form!="object"){form = document.getElementById(form);} //retourne object
	if(document.MM_returnValue==false) return false;

	var xhr = createXHR(); 
    xhr.onreadystatechange  = function()
    { 
	
         if(xhr.readyState  == 4)
         {
            if(xhr.status  == 200) {
				if(xhr.responseText=="1"){

					  form.submit();
				}
				else{
					alert(xhr.responseText);
				}
			}
      }
};   

	if(document.getElementById('date_deb') && document.getElementById('date_fin')){
		document.getElementById('date_deb').value=isDateValid(document.getElementById('date_deb').value);
		document.getElementById('date_fin').value=isDateValid(document.getElementById('date_fin').value);
		var script = '/img_verif_res.php';   // local script
	}
	else{
		var script = '/img_verif.php';   // local script
	}
	
	xhr.open("POST", script, true);		
	xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	xhr.send(lister_champs(form) );
	return false;
}


//////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////::RESERVATION///////////////////////////////

function verifdatres(form){
	if(typeof form!="object"){form = document.getElementById(form);} //retourne object


	var xhr = createXHR(); 
    xhr.onreadystatechange  = function()
    { 
	
         if(xhr.readyState  == 4)
         {
            if(xhr.status  == 200) {
				if(xhr.responseText=="1"){

					  form.submit();
				}
				else{
					alert(xhr.responseText);
				}
			}
      }
};   
	var id= document.getElementById('id').value;
	var date_deb= document.getElementById('date_deb').value;
	var date_fin= document.getElementById('date_fin').value;
	
	date_deb=isDateValid(date_deb);
	date_fin=isDateValid(date_fin);
	
	var selObj= document.getElementById('chambre');
	var chambre = selObj.options[selObj.selectedIndex].value;
	var script = '/gestion/modules/reservationajax.php';   // local script
	xhr.open("POST", script, true);		
	xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	xhr.send("date_deb=" + date_deb+"&date_fin=" + date_fin+"&chambre=" + chambre+"&id=" + id);
	return false;
}

function readloadplanning(mois,an,url){
	var xhr = createXHR(); 
    xhr.onreadystatechange  = function()
    { 
         if(xhr.readyState  == 4)
         {
            if(xhr.status  == 200) {

					  document.getElementById('zoneplanning').innerHTML = xhr.responseText;
			}
      }
};   
	var script = url;   // local script
	xhr.open("POST", script, true);		
	xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	xhr.send("mois="+mois+ "&an=" + an);
	return false;
}

function objchj(id){
var visit=0;
	if(document.getElementById('objhid'+id).value==0 && visit==0){
		document.getElementById('objbtn'+id).style.backgroundImage='url(/img/moins.jpg)';
		document.getElementById('objdesc'+id).style.visibility = 'visible';
		document.getElementById('objdesc'+id).style.height = 'auto';
		document.getElementById('objhid'+id).value=1;
		visit=1;
	}
	if(document.getElementById('objhid'+id).value==1 && visit==0){
		document.getElementById('objbtn'+id).style.backgroundImage='url(/img/plus.jpg)';
		document.getElementById('objdesc'+id).style.visibility='hidden';
		document.getElementById('objdesc'+id).style.height = '0px';
		document.getElementById('objhid'+id).value=0;
	}
}
/////////////////::RESERVATION///////////////////////////////
