function lectnb(v) {
	var s=v.toString();
	var signe="";
	var virg=0;
	var nbre="";
	for (var p=0; p<s.length; p++) {
		var c=s.charAt(p);
		if ((c>="1" && c<="9") || ((c=="0")&&(nbre!=""))) nbre+=c;
		if (((c==",")||(c==".")) && (virg==0)) {
			nbre+=".";
			virg++;
		}
		if ((c=="-")&&(nbre=="")) signe="-";
	}
	if (nbre=="") nbre="0";
	return signe+nbre;
}

function strtoint(s) {
	return Math.round(parseFloat(lectnb(s)));
}

function strtofloat(s) {
	return Math.round(parseFloat(lectnb(s))*100)/100;
}

function inttostr(i) {
	i=Math.round(parseFloat(i));
	var signe="";
	if (i<0) {
		signe="-";
		i=-i;
	}
	var s=i.toString();
	if (isNaN(s)) s="0";
	var result="";
	for (var p=0; p<s.length; p++) {
		var c=s.charAt(s.length-p-1);
		if ((p!=0)&&(p%3==0)) {
			result=c+" "+result;
		} else {
			result=c+result;
		}
	}
	return signe+result;
}

function floattostr(f,n) {
	f=Math.round(f*100)/100;
	var s=f.toString();
	var result="";
	var b=false;
	var nbdec=0;
	if (floattostr.arguments.length<2) n=2;
	for (var p=0; p<s.length; p++) {
		var c=s.charAt(p);
		if (b==true) nbdec+=1;
		if ((c=='.')||(c==',')) {
			result+=',';
			b=true;
		} else {
			result+=c;
		}
	}
	if (b==false) result+=",";
	while (nbdec++<n) result+="0";
	return result;
}

function editblur(src) {
	if (src.value!="")
		src.value=inttostr(strtoint(src.value));
}

function editblurf(src,n) {
	if (src.value!="") {
		if (editblurf.arguments.length<2) n=2;
		src.value=floattostr(strtofloat(src.value));
	}
}

browserName=navigator.appName;
browserVersion=navigator.appVersion;
explorerVersion=parseFloat(browserVersion.substring(browserVersion.indexOf('MSIE ')+5));
explorerOk=(browserName=="Microsoft Internet Explorer" && explorerVersion >=5);
netscapeVersion=parseFloat(browserVersion);
netscapeOk=(browserName=="Netscape" && netscapeVersion >=4);

function printClick() {
	if (explorerOk || netscapeOk)
		print()
	else
		alert("Cette fonction nécessite Microsoft Internet Explorer 5 ou Netscape Navigator 4!");
}

var classAOld,classBOld;
function color(a,b) {
	classAOld=a.className;
	classBOld=b.className;
	//a.className='champ';
	//b.className='titre';	
}
function uncolor(a,b) {
	a.className=classAOld;
	b.className=classBOld;
}

function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

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_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}

