// Fonction spécifique pour ajuster la page à l'écran :
// le panneau situé à gauche de l'écran,  doit occuper (largeur de l'écran - largeur de la page)/2
// Le contenu doit occuper (hauteur de l'écran - hauteur (haut+bas))
function ajusterPage(){
	var divGauche = getDiv("gauche");
	var divPage = getDiv("page");
	var divHaut = getDiv("haut");
	var divBas = getDiv("bas");
	var divContenu = getDiv("contenu");
	var hauteur = Math.max(getPageHeight()-getDivHeight(divHaut)-getDivHeight(divBas),getDivHeight(divContenu));
	setDivHeight(divContenu,hauteur + "px");
	var largeur = Math.max((getPageWidth()-parseInt(getDivWidth(divPage)))>>1,0);
	setDivWidth(divGauche,largeur + "px");
	setDivHeight(divGauche,getDivHeight(divPage) + "px");
	document.body.style.visibility='visible';
}
window.onresize = ajusterPage;
// Fonction pour récupérer un DIV à partir de son ID
function getDiv(id){
	var resultat = null;
	if (document.getElementById){
		resultat = document.getElementById(id);	
	}else if(document.all){
		resultat = document.all[id];
	}else if(document.layers){
		resultat = document.layers[id];
	}
	return resultat;
}
// Fonction pour modifier la largeur d'un DIV
function setDivWidth(div,width){
	if (div){
		if (div.style){
			div.style.width = width;
		}else{
			div.width = width;
		}
	}
}	
// Fonction pour récupérer la largeur d'un DIV
function getDivWidth(div){
	var resultat=null;
	if (div){
		if (div.document && div.document.width){
			resultat = div.document.width;
		}else if (div.clientWidth){
			resultat = div.clientWidth;
		}
	}
	return resultat;
}
// Fonction  pour modifier la hauteur d'un DIV
function setDivHeight(div,height){
	if (div){
		if (div.style){
			div.style.height=height;
		}else{
			div.height=height;
		}
	}
}
// Fonction pour récupérer la hauteur d'un DIV
function getDivHeight(div){
	var resultat = null;
	if (div){
		if (div.document && div.document.height){
			resultat = div.document.height;
		}else if (div.clientHeight){
			resultat = div.clientHeight;
		}
	}
	return resultat;
}
// Fonction  pour récupérer la hauteur de la page
function getPageHeight(){
	var resultat=null;
	if (document.body.clientHeight){
		resultat = document.body.clientHeight;
	}else if(window.innerHeight){
		resultat = window.innerHeight;
	}
	return resultat;
}
// Fonction pour récupérer la largeur de la page
function getPageWidth(){
	var resultat = null;
	if (document.body.clientWidth){
		resultat = document.body.clientWidth;
	}else if(window.innerWidth){
		resultat = window.innerWidth;
	}
	return resultat;
}
// Fonctions Standard Macromedia Dreamweaver
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_validateForm() { //v3.0
  var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
  for (i=0; i<(args.length-2); i+=3) {
  	test=args[i+2];
  	val=MM_findObj(args[i]);
    	if (val) {
    		nm=val.name;
		//alert(nm);
    		if (val.options){
    			if (val.options[val.selectedIndex].value=="")
    				errors+='- Vous devez choisir une valeur dans la boite de sélection '+nm+'.\n';
    		}else{
			if ((val=val.value)!="") {
				if (test.indexOf('isEmail')!=-1) {
					p=val.indexOf('@');
					if (p<1 || p==(val.length-1)) 
						errors+='- Le champ '+nm+' doit contenir une adresse mail valide.\n';
				} else if (test!='R') {
					num = parseFloat(val);
					if (val!=''+num)
						errors+='- Le champ '+nm+' doit contenir une valeur numérique.\n';
					if (test.indexOf('inRange') != -1) {
						p=test.indexOf(':');
						min=test.substring(8,p); max=test.substring(p+1);
						if (num<min || max<num)
						errors+='- Le champ '+nm+' doit contenir une valeur numérique comprise entre '+min+' et '+max+'.\n';
					}
				}
			} else if (test.charAt(0) == 'R')
				errors += '- Le champ '+nm+' est obligatoire.\n';
		}
    	}
  }
  if (errors)
  	alert('Le formulaire n\' a pas pu être validé pour les raisons suivantes :\n'+errors);
  document.MM_returnValue = (errors == '');
}