// JavaScript Document

<!--
function addBookmark() {
  var title=document.title;
  var url=location.href;
  if(window.sidebar.addPanel){
    window.sidebar.addPanel(title,url,"");
  }else if(window.external.AddFavorite){
    window.external.AddFavorite(url,title);
  }
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x;
  if(!x.oSrc) {
   if(x.realSrc) x.oSrc=x.realSrc;
   else x.oSrc=x.src;
  }
  x.src=a[i+2];}
}
//-->

// change la class de n'importe quel objet avec l'id

function niouclass(id,myClass) {
	var obj;
	obj = document.getElementById(id);
	obj.className = myClass;
}


function DonnerFocus(nom) {
   document.myresa.elements[nom].focus();
}
function datecomp(){
   var datedebut=document.myresa.datedeb.value;
   var datefin=document.myresa.datefin.value;
  
   //verification du format -  si la date est saisie je commence le travail, ce si se termine a la fin
 
      if (!verifdate(datedebut)) {
	  var rfocus01="datedeb";
         alert("Attention soit la date de début n'est pas correcte, soit elle n'est pas au format JJ/MM/AAAA"); DonnerFocus(rfocus01); return false;
      }
	  
	    if (!verifdate(datefin)) {
		var rfocus02="datefin";
         alert("Attention soit la date de fin n'est pas correcte, soit elle n'est pas au format JJ/MM/AAAA"); DonnerFocus(rfocus02); return false;
      }
	  
	  datejour=new Date();
      jour = new Array(3);
      jour[1]=datejour.getDate();
      jour[2]=datejour.getMonth()+1;
      jour[3]=datejour.getYear()+1900;
	  
	 deb = new Array(3); 
       if (datedebut.substring(0,1)=="0"){
      deb[1]=parseInt(datedebut.substring(1,2));
      }  else {
      deb[1]=parseInt(datedebut.substring(0,2));
      }
      if (datedebut.substring(3,4)=="0"){
      deb[2]=parseInt(datedebut.substring(4,5));
      }  else {
      deb[2]=parseInt(datedebut.substring(3,5));
      }
      deb[3]=parseInt(datedebut.substring(6,10));
	 
	   if (deb[3]<jour[3]) {
		var message="la date de debut de reservation ne peut etre inferieure a la date du jour";
		 var rfocus="datedeb";
         alert(message); DonnerFocus(rfocus); return false;
         } else {
         if ((deb[3]== jour[3]) && (deb[2]<jour[2])){
		 var message="la date de debut de reservation ne peut etre inferieure a la date du jour";
		  var rfocus="datedeb";
            alert(message); DonnerFocus(rfocus); return false;
         } else {
            if ((deb[3]== jour[3]) && (deb[2]==jour[2]) && (deb[1]<jour[1])){
			 var rfocus="datedeb";
			var message="la date de debut de reservation ne peut etre inferieure a la date du jour";
            alert(message); DonnerFocus(rfocus); return false;
            }
         }
      }
	  
	  
	   fin = new Array(3); 
      if (datefin.substring(0,1)=="0"){
         fin[1]=parseInt(datefin.substring(1,2));
      } else {
         fin[1]=parseInt(datefin.substring(0,2));
      }
      if (datefin.substring(3,4)=="0"){
         fin[2]=parseInt(datefin.substring(4,5));
      } else {
         fin[2]=parseInt(datefin.substring(3,5));
         }
      fin[3]=parseInt(datefin.substring(6,10));
	  

	   if (fin[3]<deb[3]) { 
		 var message2="la date de fin de reservation ne peut etre inferieure a la date de debut";
		 var rfocus2="datefin";
         alert(message2); DonnerFocus(rfocus2); return false;
         } else {
         if ((deb[3]== fin[3]) && (fin[2]<deb[2])){ 
		  var message2="la date de fin de reservation ne peut etre inferieure a la date de debut";
		  var rfocus2="datefin";
            alert(message2); DonnerFocus(rfocus2); return false;
         } else {
            if ((deb[3]== fin[3]) && (deb[2]==fin[2]) && (fin[1]<deb[1])){ 
			 var message2="la date de fin de reservation ne peut etre inferieure a la date de debut";
			 var rfocus2="datefin";
            alert(message2); DonnerFocus(rfocus2); return false;
            }
         }
      }
	
	  if(TZR.isFormValidWithFocus(document.myresa,true)){document.myresa.submit();} 
	}
	

 function verifdate(d) {
  var dateaverifier=d
  // rangement de la date dans des variables
  if (dateaverifier.substring(0,1)=="0"){
         var j=parseInt(dateaverifier.substring(1,2));
      }
      else {
         var j=parseInt(dateaverifier.substring(0,2));
      }
      if (dateaverifier.substring(3,4)=="0"){
         var m=parseInt(dateaverifier.substring(4,5));
      }
      else {
         var m=parseInt(dateaverifier.substring(3,5));
         }
      var a=parseInt(dateaverifier.substring(6,10));
   //si la longueur est different de 10 , probleme
     if (dateaverifier.length != 10) {
         return false;
   }
   //les carateres / ne sont pas aux endroits attendus
   else {
      if((dateaverifier.charAt(2) != '/') && (dateaverifier.charAt(5) != '/')) {
         return false;
      }
   }
   //l'annee n'est pa un chiffre
   if (isNaN(a)) {
      return false;
    }
   //le mois n'est pas un chiffre ou n'est pas compris entre 0 et12
     if ((isNaN(m))||(m<1)||(m>12)) {
      return false;
    }
   //test si il s'agit d'une annee bissextile pour accepter le 29/02
   if (((a % 4)==0 && (a % 100)!=0) || (a % 400)==0){
         if ((isNaN(j)) || ((m!=2) && ((j<1)||(j>31))) || ((m==2) && ((j<1)||(j>29)))) {
            return false;
        }
   }
    else {
         if ((isNaN(j)) || ((m!=2) && ((j<1)||(j>31))) || ((m==2) && ((j<1)||(j>28)))){
         return false;
      }
   }
   return true;
}


function IsNumberString(NumStr) 
{var regEx=/^[0-9]+$/; 
var ret=false; 
if (regEx.test(NumStr)) ret=true; 
return ret; 
} 
