﻿function getElById(idVal) {
  if (document.getElementById != null)
    return document.getElementById(idVal)
  if (document.all != null)
    return document.all[idVal]
  
  alert("Problem getting element by id")
  return null
}
//pour iframe et nouvelle fenetre
function getElByIdFromObject(idVal,obj) {
  if (obj.document.getElementById != null)
    return obj.document.getElementById(idVal);
  if (obj.document.all != null)
    return obj.document.all[idVal];
  
  if (obj==null){
    alert("Object null");
    return null;
  }
  alert("Problem getting element by id");
  return null;
}
function getParentElById(idVal) {
  if (window.parent.document.getElementById != null)
    return window.parent.document.getElementById(idVal)
  if (window.parent.document.all != null)
    return window.parent.document.all[idVal]
  
  alert("Problem getting element by id")
  return null
}
function getOpenerElById(idVal) {
  if (window.opener.document.getElementById != null)
    return window.opener.document.getElementById(idVal)
  if (window.opener.document.all != null)
    return window.opener.document.all[idVal]
  
  alert("Problem getting element by id")
  return null
}
function Left(s,lgs){
	var lgt=s.length;
	var txt=s;
	if (lgt>=lgs) txt=s.substring(0,lgs)
	return (txt)
}
function Right(s,lgs){
	var lgt=s.length;
	var txt=s;
	if (lgt>=lgs) txt=s.substring(lgt-lgs+1,lgs)
	return (txt)
}
// menu color swapper
function menuColorMaker(id,state,col1,col2,col3,col4)
{
	var td,font,selected;

	if (IE5 || NS6)
	{
		td	= getElById("menu"+id);
		font	= document.getElementById("font"+id);
		selected= (font && td);

		if (state) {
			if (selected)	td.style.backgroundColor= col1;
			if (selected)	font.style.color	= col2;
		}
		else {
			if (selected)	td.style.backgroundColor= col3;
			if (selected)	font.style.color	= col4;
		}
	}
	return true;
}

function menuColor(id,state)
{	return menuColorMaker(id,state,"#ffffcc","#cc0000","#cccc99","black");}


//surligne les TD
function S(id,color,c,ex)
{var i=1
	i=i+ ex
	for (i;i<=c;i++){
		eval('document.all[\'' + id + i + '\'].style.backgroundColor=\'' + color + '\';');
	}
}


function ITrim( chaine ){
	return (chaine.indexOf('  ')==-1)?chaine:ITrim( chaine.substring( 0 , chaine.indexOf('  ') )+chaine.substring( chaine.indexOf('  ') +1 ) )
}

function LTrim( chaine ){
	return (chaine.charAt(0)==' ')?LTrim( chaine.substring( 1 )):chaine
}

function RTrim( chaine ){
	return (chaine.charAt( chaine.length - 1 )==' ')?RTrim( chaine.substring( 0 , chaine.length - 1 )):chaine
}

function Trim( chaine ){
	return LTrim( RTrim( ITrim( chaine ) ) )
}

function Ctrok(c){
	var ca='À,Á,Â,Ã,Ä,Å,Æ,Ç,È,É,Ê,Ë,Ì,Í,Î,Ï,Ñ,Ò,Ó,Ô,Õ,Ö,Ù,Ú,Û,Ü,Ý,à,á,â,ã,ä,å,æ,ç,è,é,ê,ë,ì,í,î,ï,ð,ñ,ò,ó,ô,õ,ö,ù,ú,û,ü,ý,ÿ,œ,Œ, ,\',"';
	var ta=ca.split(',')
	for (var i=0;i<ta.length;i++){
		if (c.lastIndexOf(ta[i])>-1) return(ta[i]);
	}
	return ('');
}

function zoom(fen,w,h){
	window.open(fen,'zoom','width='+w+', height='+h+', toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes');
}

// ************************  DEBUT popUp Modale ************************
var win = false;

function PopupCentre(page,largeur,hauteur,options) {
	var top=(screen.height-hauteur)/2;
	var left=(screen.width-largeur)/2;
	try {
		if(win!=null) if(win!=false) win.close();
	} catch (e){
		void(0);
	}
	win = window.open(page,"","top="+top+",left="+left+",width="+largeur+",height="+hauteur+","+options);
	try {
		if(win!=null) if(win!=false) win.focus();
	} catch (e){
		void(0);
	}
	return win
}
// ************************  FIN popUp Modale ************************

function PopupWin(url,width,height){
// if (navigator.family== 'ie4' || navigator.family== 'ie3' ){
//		window.showModelessDialog(url,window,"dialogWidth:"+width+"px;dialogHeight:"+height+"px;edge:Raised;center:1;help:0;resizable:1;");
//	}else{		
		var left = screen.availWidth/2 - width/2;
		var top = screen.availHeight/2 - height/2;
		window.open(url, "", "dependent=yes,width="+width+"px,height="+height+",left="+left+",top="+top);
//	}
}

function ModalWin(url,width,height,sc){		
//	if (navigator.family== 'ie4' || navigator.family== 'ie3' ){
//		window.showModalDialog(url,window,"dialogWidth:"+width+"px;dialogHeight:"+height+50+"px;edge:Raised;center:1;help:0;resizable:1;maximize:1");
//	}else{
		if (sc=='') sc="no"
		var left = screen.availWidth/2 - width/2;
		var top = screen.availHeight/2 - height/2;
		win = window.open(url, "", "width="+width+"px,height="+height+",left="+left+",top="+top +",scrollbars=" +sc +",resizable=1,maximize=1");
		window.onfocus = function(){
			try {
				if(win.closed==false) win.focus();
			} catch (e){
				void(0);
			}
		};
//	}
}

function r_(r,l){
	var rec=eval(r+'.value')
	var i,p=-1,lis
	rec=c_(rec)
	if (rec==''){return false}
	var nb=eval(l+'.length')
	if (nb<0) return false
	if (posc>nb) posc=0
	for (i=posc;i<nb;i++){
		lis=eval(l+'.options['+i+'].text')
		lis=c_(lis)
		if (lis.search(rec)>=0){p=i;posc=i+1;break}
	}
	if (p>=0){eval(l+'.selectedIndex='+p)}else{posc=0;}
	return false
}

function r2_(r,l){
	var rec=eval(r+'.value')
	var i,p=-1,lis
	rec=c_(rec)
	if (rec==''){window.alert('Valeur non trouvée !');return false}
	var nb=eval(l+'.length')
	if (nb<0) return false
	if (posc>nb) posc=0
	for (i=posc;i<nb;i++){
		lis=eval(l+'.options['+i+'].text')
		lis=c_(lis)
		if (lis.search(rec)>=0){p=i;posc=i+1;break}
	}
	if (p>=0){
		eval(l+'.options['+(p)+'].selected=true;');
		eval(l+'.options['+(p)+'].selected=false;');
//		eval(l+'.selectedIndex='+p)
	}else{
		posc=0;window.alert('Fin de liste !')
	}
	return false
}
function bissextile(yy){
        if (((yy % 4)==0) && ((yy % 100)!=0) || ((yy % 400)==0))
                return (1);
        else
               return (0);
}

function isHour(s) {
	var a;
	if (s.length<5) return false
	if (s.substr(2,1).indexOf(":")==-1) return false
	a = s.split(":");
	if (Trim(a[0]).length<2 || Trim(a[1]).length<2) return false
	a[0] = Number(a[0]);
	a[1] = Number(a[1]);
	return a[0] >= 0 && a[0] <= 23 && a[1] >= 0 && a[1] <= 59
}

function IsDate(dd,obl){
	var d=Trim(dd);
	var j,m,a,jj
	if (d=='' && obl=='O') return (false);
	if (d=='') return (true);
	var vd=d.split("/");
	if (vd.length<3) return (false);
	for (var i=0;i<3;i++){
		if (isNaN(vd[i])) return (false);
	}
	if (vd[0].substr(0,1)=='0'){
		j=parseInt(vd[0],36)
	}else{
		j=parseInt(vd[0])
	}
	if (vd[1].substr(0,1)=='0'){
		m=parseInt(vd[1],36)
	}else{
		m=parseInt(vd[1])
	}
	a=parseInt(vd[2])
	if (m<1 || m>12) return (false);
	if (m==1 || m==3 || m==5 || m==7 || m==8 || m==10 || m==12){
		if (j<1 || j>31) return (false);
	}
	if (m==4 || m==6 || m==9 || m==11){
		if (j<1 || j>30) return (false);
	}
	if (m==2){
		if (bissextile(a)==1){
			jj=29;
		}else{
			jj=28;
		}
		if (j<1 || j>jj) return (false);
	}
	return (true)
}

function isDateValid(chaineDate) {

   if (chaineDate == "") return false
   var ladate = (chaineDate).split("/")
// 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 != 6) || isNaN(parseInt(ladate[0])) || isNaN(parseInt(ladate[1])) || isNaN(parseInt(ladate[2])) || isNaN(parseInt(ladate[3])) || isNaN(parseInt(ladate[4]))) 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]),eval(ladate[3]),eval(ladate[4]),'00')

// 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 + 1900

// 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 ((unedate.getDate() == eval(ladate[0])) && (unedate.getMonth() == eval(ladate[1])-1) && (annee == eval(ladate[2])) && (unedate.getHours() == eval(ladate[3])) && (unedate.getMinutes() == eval(ladate[4])))

}


function showWait(){
	document.location = '#ancre_haut';
	document.all("waiting").style.visibility = 'visible';
}

function hideWait(){
	document.all("waiting").style.visibility = 'hidden';
}

function deconnecter(root,idLog){
	//alert(idLog);
	PopupCentre(root + 'deconnecter.asp?id_log=' +idLog,200,200,'')
}

function htmldiv(msg,root){
	html ='';
	html = html + '<div id="waiting" style="visibility:hidden; position:absolute; width:100%; height:100%; z- index:100; left:0; top:0;" allowtransparency="true">';
	html = html + '<table width="100%" height="100%">';
	html = html + '<tr>';
	html = html + '<td align="center" valign="bottom"><br><br>';
	html = html + '<table border="1" bordercolor="#000000" cellpadding="0" cellspacing="0" width="325" height="66">';
	html = html + '<tr bgcolor="#E79400" class="menu">';
	html = html + '<td  height="17" align="center" valign="middle" class="menu">&nbsp;'+ msg +'...</td>';
	html = html + '</tr>';
	html = html + '<tr>';
	html = html + '<td bgcolor="#FFFFFF" height="20" align="center" valign="middle"><img src="'+root+'images/divers/wait.gif" border="0"></td>';
	html = html + '</tr>';
	html = html + '</table>';
	html = html + '</td>';
	html = html + '</tr>';
	html = html + '</table>';
	html = html + '</div>';
	document.write (html);
}

function Zoom_img(image, l_image, h_image,nom) {
	var doc,fenetre,texte;
	var xparam='toolbar=no,location=no,directories=no,status=no,scrollbars=no,resizable=no'
	+',copyhistory=no,' + 'width='+(l_image+20)+',height='+(h_image+55);
	fenetre = window.open('','zoom',xparam);
	fenetreNote = fenetre;
	if (fenetreNote != null) {
		doc = fenetre.document;
		texte='<html>\n'
		+'<head>'
		+'<title>'+nom+'</title>\n'
		+'</head>\n'
		+'<body BGcolor="#000000" onblur=focus()>\n'
		+'<table width="100%" height="100%" border="0" cellspacing="0" cellpadding="0">\n'
		+'	<tr>\n'
		+'		<td align="center" valign="middle">\n'
		+'			<img src="'+image+'" alt="'+nom+'">\n'
		+'		</td>\n'
		+'	</tr>\n'
		+'	<tr>\n'
		+'		<td align="left">\n'
		+'			<a href="#" onClick="return closezoom()"><img src="../../images/close.gif" width="39" height="34" alt="Fermer le zoom" border="0"></a>\n'
		+'		</td>\n'
		+'	</tr>\n'
		+'</table>\n'
		+'</body>\n'
		+'<scri'+'pt>\n'
		+'function closezoom(){\n'
		+'	window.close()\n'
		+'}\n'
		+'</scri'+'pt>\n'
		+'</html>\n';
		doc.write(texte);
		doc.close();
		return false;
	} 
}

function verifiermail(mail) {
  if ((mail.indexOf("@")>=0)&&(mail.indexOf(".")>=0)) {
	 return (true); 
  } else {
	 return (false);
  }
}
function verif_email(email) {
   var reg = /^[a-z0-9._-]+@[a-z0-9.-]{2,}[.][a-z]{2,3}$/
   return (reg.exec(email)!=null)
}

function verifiertel(tel) {
  if (isNaN(tel)==false) {
	 return (true); 
  } else {
	 return (false);
  }
}

function verifBrowser(){
	var browser_type = navigator.appName
	var i = navigator.appVersion.indexOf("MSIE");
	browser_version = navigator.appVersion.substring(i+5,i+8);
	//if IE 5+
	/*
	if (browser_type=="Microsoft Internet Explorer" && browser_version >= 5){
		
	}else
	
	}
	*/
	return browser_type + '(' + browser_version + ')';
}

/*----------------------------------------------------------------------------------------------*/
/* Function de test d'un champs en fonction d'une expression reguliere				*/
/* nom :		matchValue								*/
/* entrées :											*/
/*				- objet		:		: objet du formulaire		*/
/*				- string	:		: expression reguliere		*/
/*				- boolean	:		: etat si success		*/
/* sortie :											*/
/*				- boolean	:		: etat ou false si echec	*/
/*----------------------------------------------------------------------------------------------*/
function matchValue() {
	var param = matchValue.arguments;
	var re = new RegExp(param[1]);
	param[0].style.backgroundColor="#FFFFFF";
	param[0].style.color="#000000";
	if(param[0].value.match(re)) return param[2];
	else {
		param[0].style.backgroundColor="#FFCC66";
		param[0].style.color="#330066";
		param[0].focus();
		return false;
	}
}

/*----------------------------------------------------------------------------------------------*/
/* Function de vérification du format de l'email						*/
/* nom :		verifEmail								*/
/* entrées :											*/
/*				- objet		:		: objet du formulaire		*/
/*				- boolean	:		: etat si success		*/
/* sortie :											*/
/*				- boolean	:		: true ou false	si echec	*/
/*----------------------------------------------------------------------------------------------*/
function verifEmail() {
	var param=verifEmail.arguments;
	var obj=param[0];
	var verif=true;
	var car="";
	var carAfter="";
	var carBefore="";
	var chaine=obj.value.toLowerCase();
	var nbrcar=chaine.length;
	var nbrarobase=0;
	var nbrpoint=0;
	var goodcar="@0123456789.-_abcdefghijklmnopqrstuvwxyz";
	obj.style.backgroundColor="#FFFFFF";
	obj.style.color="#000000";
	for(var i=0;i<nbrcar;i++) {
		car=chaine.substr(i,1);
		if(goodcar.indexOf(car)>=0) {
			carAfter="";
			carBefore="";
			if(car=="@") {
				if((i-1)>=0) carBefore=chaine.substr((i-1),1);
				if((i+1)<nbrcar) carAfter=chaine.substr((i+1),1);
				if(i>0&&nbrarobase==0&&i<(nbrcar-4)&&!(carBefore==".")&&!(carAfter==".")&&!(carBefore=="-")&&!(carAfter=="-")&&!(carBefore=="_")&&!(carAfter=="_")) nbrarobase++;
				else {
					verif=false;
					break;
				}
			}
			if(car==".") {
				if((i-1)>=0) carBefore=chaine.substr((i-1),1);
				if((i+1)<nbrcar) carAfter=chaine.substr((i+1),1);
				if(i>0&&i<(nbrcar-2)&&!(carBefore==".")&&!(carAfter==".")&&!(carBefore=="-")&&!(carAfter=="-")&&!(carBefore=="_")&&!(carAfter=="_")) nbrpoint++;
				else {
					verif=false;
					break;
				}
			}
		} else {
			verif=false;
			break;
		}
	}
	if(nbrarobase==0||nbrpoint==0||chaine.substr(0,1)=="."||chaine.substr(0,1)=="-"||chaine.substr(0,1)=="_"||chaine.substr((nbrcar-1),1)=="."||chaine.substr((nbrcar-1),1)=="-"||chaine.substr((nbrcar-1),1)=="_") verif=false;
	if(!verif) {
		obj.style.backgroundColor="#FFCC66";
		obj.style.color="#330066";
	}
	return verif;
}

/*------------------------------------------------------------------------------------------------------*/
/* Function de test d'un champs vide									*/
/* nom :		isEmpty										*/
/* entrées :												*/
/*				- objet		:		: objet du formulaire			*/
/*				- boolean	:		: etat si success			*/
/* sortie :												*/
/*				- boolean	:		: etat ou false si echec		*/
/*------------------------------------------------------------------------------------------------------*/
function isEmpty() {
	var param = isEmpty.arguments;
	param[0].style.backgroundColor="#FFFFFF";
	param[0].style.color="#000000";
	if(Trim(param[0].value)!="") return param[1];
	else {
		param[0].style.backgroundColor="#FFCC66";
		param[0].style.color="#330066";
		param[0].focus();
		return true;
	}
}

/*----------------------------------------------------------------------------------------------*/
/* Function de test d'un champs numéric								*/
/* nom :		isNumeric								*/
/* entrées :											*/
/*				- objet		:		: objet du formulaire		*/
/*				- boolean	:		: etat si success		*/
/* sortie :											*/
/*				- boolean	:		: etat ou false si echec	*/
/*----------------------------------------------------------------------------------------------*/
function isNumeric() {
	var param = isNumeric.arguments;
	param[0].style.backgroundColor="#FFFFFF";
	param[0].style.color="#000000";
	var obj_ereg = new RegExp(/^([-]?[,.]?)$|^([-]?[,.]?\d+)$|^([-]?\d+[,.]?([\d]?)+)$/);
	if(param[0].value.match(obj_ereg)) return param[1];
	else {
		param[0].style.backgroundColor="#FFCC66";
		param[0].style.color="#330066";
		param[0].focus();
		return false;
	}
}

/*--------------------------------------------------------------------------------------*/
/* Function d'ajout d'elements d'une liste vers une autre liste				*/
/* nom :		add								*/
/* entrées :										*/
/*				- variant	:		: objet source		*/
/*				- variant	:		: objet destination	*/
/*				- boolean	:		: multiple		*/
/* sortie :										*/
/*--------------------------------------------------------------------------------------*/
function add() {
	var param=add.arguments;
	var obj=eval(param[0]+"1");
	if(obj==null) {
		var lst1=eval(param[0]+".ID");
		var lstlbl1=eval(param[0]+".LIBELLE");
	} else {
		var lst1=obj.options;
		var lstlbl1=null;
	}
	var lst2=eval(param[1]+"2.options");
	var boo_mult=param[2];
	var int_id=0;
	var str_value="";
	for(var j=0;j<lst1.length;j++) {
		if((lstlbl1==null?lst1[j].selected:lst1[j].checked)) {
			str_value=lst1[j].value;
			if(verif(lst2,str_value)) {
				if((!boo_mult&&lst2.length==0)||boo_mult) {
					int_id = lst2.length;
					lst2[int_id]=new Option((lstlbl1==null?lst1[j].text:lstlbl1[j].value), str_value);
					if(lstlbl1!=null) lst2[int_id].className = lstlbl1[j].className;
				}
				if(!boo_mult) break;
			}
		}
	}
	lst2.focus();
}

/*--------------------------------------------------------------------------------------*/
/* Function de suppression d'elements d'une liste					*/
/* nom :		sup								*/
/* entrées :										*/
/*				- variant	:		: objet source		*/
/*				- boolean	:		: efface tout		*/
/* sortie :										*/
/*--------------------------------------------------------------------------------------*/
function sup() {
	var param=sup.arguments;
	var obj = param[0];
	var force = param[1];
	for(var j=(obj.options.length-1);j>=0;j--) if(obj.options[j].selected||force) obj.options[j]=null;
	obj.focus();
}

/*--------------------------------------------------------------------------------------*/
/* Function de vérification d'un element existant dans une liste			*/
/* nom :		verif								*/
/* entrées :										*/
/*				- variant	:		: objet source		*/
/*				- variant	:		: reference		*/
/* sortie :										*/
/*--------------------------------------------------------------------------------------*/
function verif(nobj,id) {
	var boo_ret=true
	if(nobj.length>0) {
		for(var j=0;j<nobj.length;j++) {
			if(nobj[j].value==id) {
				boo_ret=false;
				break;
			}
		}
	}
	return boo_ret;
}

/*----------------------------------------------------------------------------------------------*/
/* Function d'ecriture format date	XX/XX/XXXX automatique					*/
/* nom :		formatDate & autoSlash							*/
/* entrées :											*/
/*				- variant	: objet source					*/
/*				- string	: "dd/mm/yyyy"	: date de reference (option)	*/
/* sortie :											*/
/*				- integer	: 0 correct					*/
/*				  1 inferieur à date de reference				*/
/*				  2 date incorrecte						*/
/*				  3 date vide							*/
/*				  4 format incorrect						*/
/*----------------------------------------------------------------------------------------------*/
/* Vérifie le format d'une date */
function formatDate() {
	var param=formatDate.arguments;
	var obj=param[0];
	var refdate=param[1];
	var car="";
	var chaine=obj.value;
	obj.style.backgroundColor="#FFCC66";
	obj.style.color="#330066";
	if(chaine.length<10) {
		if(chaine.length==0) {
			obj.style.backgroundColor="#FFFFFF";
			obj.style.color="#330066";
			return 4;
		} else return 3;
	} else {
		for(var i=0;i<10;i++) {
			car=chaine.charAt(i);
			if(i==0||i==1||i==3||i==4||i>=6) {
				if(car.search(/[1234567890]/)==-1) return 4;
			} else if(car!="/") return 4;
		}
		var userdate=chaine.split("/");
		ujour=(userdate[0])*1;
		umois=(userdate[1])*1;
		uannee=(userdate[2])*1;
		var userdate=new Date(uannee, (umois-1), ujour);
		if((userdate.getDate()*1)+"/"+((userdate.getMonth()*1)+1)+"/"+(userdate.getFullYear()*1)!=ujour+"/"+umois+"/"+uannee) return 2
		else if(refdate!=null&&refdate!="") {
			var refdate=refdate.split("/");
			rjour=(refdate[0])*1;
			rmois=(refdate[1])*1;
			rannee=(refdate[2])*1;
			var refdate=new Date(rannee, (rmois-1), rjour);
			if(userdate.getTime()<refdate.getTime()) return 1;
		}
		obj.style.backgroundColor="#FFFFFF";
		obj.style.color="#330066";
		return 0;
	}
}

// Place les slash automatiquement pour le format d'une date dans un champs
function autoSlash() {
	var param=autoSlash.arguments;
	var obj=param[0];
	if(event.keyCode<48||event.keyCode>57) event.returnValue=false;
	if(obj.value.length==2||obj.value.length==5) obj.value=obj.value+"/";
}

/*------------------------------------------------------------------------------*/
/* Function de test des caractères d'un champs					*/
/* nom :		isGoodText						*/
/* entrées :									*/
/*				- objet		: objet du formulaire		*/
/*				- string	: caractères autorisés		*/
/*				- string	: caractères refusés		*/
/*				- boolean	: etat si success		*/
/* sortie :									*/
/*				- boolean	: etat ou false si echec	*/
/*------------------------------------------------------------------------------*/
function isGoodText() {
	var car,param=isGoodText.arguments;
	var obj=param[0];
	if(typeof(param[0])=="object") {
		obj.style.backgroundColor="#FFCC66";
		obj.style.color="#330066";
	}
	if(param.length>3) {
		var chaine=(typeof(obj)=="object"?obj.value:obj);
		var gcar=param[1];
		var bcar=param[2];
		var RetValue=param[3];
		if(bcar!="") {
			for(i=0;i<chaine.length;i++) {
				car=chaine.substr(i, 1);
				if((eval("car.search(/["+bcar+"]/)")>-1)) {
					RetValue=false;
					break;
				}
			}
		}
		if(gcar!="") {
			for(i=0;i<chaine.length;i++) {
				car=chaine.substr(i, 1);
				if(eval("car.search(/["+gcar+"]/)")==-1) {
					RetValue=false;
					break;
				}
			}
		}
	} else RetValue=false;
	if(RetValue&&typeof(obj)=="object") {
		obj.style.backgroundColor="#FFFFFF";
		obj.style.color="#330066";
	}
	return RetValue;
}

function showHide() {
	var param=showHide.arguments;
	var obj_span=document.getElementById(param[0]).style;
	obj_span.display = (param[1]!=null?(param[1]?"block":"none"):(obj_span.display=="none"?"block":"none"));
}

function GoDiff(InputName, InputValue){
	document.FrmForSubmit.u.value=InputValue;
	document.FrmForSubmit.u.name=InputName;	
	//document.FrmForSubmit.enctype="multipart/form-data";
	//document.FrmForSubmit.action="op2.asp";
	//document.FrmForSubmit.method="post";	
	document.FrmForSubmit.submit();	
}
function tma(codelist, description, atagattr) {
	var thiscode, thischar;
	var CodeString = new String(codelist);
	var CodedArray = CodeString.split('|');
	var L = CodedArray.length;
	var AddrDecoded = '';
	for (var x=0; x < L; x++) {
		thiscode = CodedArray[x];
		thischar = String.fromCharCode( thiscode - L );
		AddrDecoded += thischar;
	}
	atagattr = atagattr ? ' ' + atagattr : '';
	if (!description) description = AddrDecoded; 
	var strOutput = '<a href="mailto:'+AddrDecoded+'"' + atagattr+'>' + description + '</a>';
	document.write(strOutput);
}
function bissextile(yy){
        if (((yy % 4)==0) && ((yy % 100)!=0) || ((yy % 400)==0))
                return (1);
        else
               return (0);
}
function cdate(obj,obl,mes){
	var d=Trim(eval(obj+'.value'));
	var j,m,a,jj
	if (d=='' && obl=='O'){
		window.alert(mes+' non saisie !');
		eval(obj+'.focus()');
		return (false);
	}
	if (d=='') return (true);
	var vd=d.split("/");
	if (vd.length!=3){
		window.alert(mes+' incorrecte !');
		eval(obj+'.focus()');
		return (false);
	}
	if (vd[0]==''){
		window.alert(mes+' : jour incorrect !');
		eval(obj+'.focus()');
		return (false);
	}
	if (vd[1]==''){
		window.alert(mes+' : mois incorrect !');
		eval(obj+'.focus()');
		return (false);
	}
	if (vd[2]==''){
		window.alert(mes+' : année incorrecte !');
		eval(obj+'.focus()');
		return (false);
	}
	for (var i=0;i<3;i++){
		if (isNaN(vd[i])){
			window.alert(mes+' incorrecte !');
			eval(obj+'.focus()');
			return (false);
		}
		
	}
	if (vd[0].substr(0,1)=='0'){
		j=parseInt(vd[0],36)
	}else{
		j=parseInt(vd[0])
	}
	if (vd[1].substr(0,1)=='0'){
		m=parseInt(vd[1],36)
	}else{
		m=parseInt(vd[1])
	}
	a=parseInt(vd[2])
	if (m<1 || m>12){
		window.alert(mes+' : mois incorrect !');
		eval(obj+'.focus()');
		return (false);
	}
	if (m==1 || m==3 || m==5 || m==7 || m==8 || m==10 || m==12){
		if (j<1 || j>31){
			window.alert(mes+' : jour incorrect !');
			eval(obj+'.focus()');
			return (false);
		}
	}
	if (m==4 || m==6 || m==9 || m==11){
		if (j<1 || j>30){
			window.alert(mes+' : jour incorrect !');
			eval(obj+'.focus()');
			return (false);
		}
	}
	if (m==2){
		if (bissextile(a)==1){
			jj=29;
		}else{
			jj=28;
		}
		if (j<1 || j>jj){
			window.alert(mes+' : jour incorrect !');
			eval(obj+'.focus()');
			return (false);
		}
	}
	return (true)
}


function WinDim (w,h){
     window.resizeTo(w, h);
}

function ValidFile(obj, ext, msgcar, msgext){
	var f = obj.value;	
	var err1 = (msgcar!=null?msgcar:"Caractère interdit dans le nom du fichier !");
	var err2 = (msgext!=null?msgext:"Extension autorisée");
	var tfil,fil,filext

	fil=Trim(f.toUpperCase());
	if (fil=='') return(true);
	tfil=fil.split('\\');
	fil=tfil[tfil.length-1];

	var vca=Ctrok(fil)
	if (vca!='') {
		window.alert('[ '+vca+' ] : '+err1);
		return(false);
	}
	filext=fil.split('.')
	if (ext.lastIndexOf(filext[filext.length-1])==-1){
		window.alert(err2+' : '+ext);		
		BckColor(obj,"#FFCC66")
		return(false);
	}
	return (true);
}

function BckColor(o,c){
	o.style.backgroundColor=c;
	//o.style.color="#330066";	
}

function vpic(img) { 
titre="..."; 
w=open("",'image','width=400,height=400,toolbar=no,scrollbars=no,resizable=no'); 
w.document.write("<HTML><HEAD><TITLE>"+titre+"</TITLE></HEAD>"); 
w.document.write("<SCRIPT language=javascript>function checksize() { if (document.images[0].complete) { window.resizeTo(document.images[0].width+10,document.images[0].height+30); window.focus();} else { setTimeout('checksize()',250) } }</"+"SCRIPT>"); 
w.document.write("<BODY onload='checksize()' onblur='window.close()' onclick='window.close()' leftMargin=0 topMargin=0 marginwidth=0 marginheight=0>");
w.document.write("<TABLE width='100%' border='0' cellspacing='0' cellpadding='0' height='100%'><TR>");
w.document.write("<TD valign='middle' align='center'><IMG src='"+img+"' border=0 alt=''>"); 
w.document.write("</TD></TR></TABLE>");
w.document.write("</BODY></HTML>"); 
w.document.close(); 
} 

function WhereMouse( e ){
  var DocRef;   
  if( e){                    
    Mouse_X = e.pageX;
    Mouse_Y = e.pageY;
  }
  else{                     
    Mouse_X = event.clientX;
    Mouse_Y = event.clientY;
	
    if( document.documentElement && document.documentElement.clientWidth) 
      DocRef = document.documentElement;  
      DocRef = document.body; 

    Mouse_X += DocRef.scrollLeft;
    Mouse_Y += DocRef.scrollTop;
  }
}

function DamNavigation(page,param){
	oForm = getElById("FRM_NAVIGATION")
	oForm.action=page;
	oForm.FR_QUERY.value = param;
	oForm.submit();
}

/*----------------------------------------------------------------------------------*/
/* Fonction de recherche et remplace de toutes les occurences dans chaine			*/
/* nom :		replaceAll															*/
/* entrées :																		*/
/*				- str_text			: string	: chaine à traiter					*/
/*				- str_search		: string	: chaine recherchée					*/
/*				- str_replace		: string	: chaine de replacement				*/
/* sortie :																			*/
/*				- str_ret			: string	: chaine traitée					*/
/*----------------------------------------------------------------------------------*/
function replaceAll(){
	var arr_param=replaceAll.arguments;
	var str_text=arr_param[0], str_search=arr_param[1], str_replace=arr_param[2], str_ret=str_text;
	while(str_ret.indexOf(str_search)>=0)str_ret=str_ret.replace(str_search,str_replace);
	return str_ret;
}
/*----------------------------------------------------------------------------------*/
/* Fonction de recherche et remplace de toutes les occurences dans chaine via regexp*/
/* nom :		ereplaceAll															*/
/* entrées :																		*/
/*				- str_text			: string	: chaine à traiter					*/
/*				- str_search		: string	: chaine recherchée					*/
/*				- str_replace		: string	: chaine de replacement				*/
/* sortie :																			*/
/*				- str_ret			: string	: chaine traitée					*/
/*----------------------------------------------------------------------------------*/
function ereplaceAll(){
	var arr_param=ereplaceAll.arguments;
	var str_text=arr_param[0], str_search=arr_param[1], str_replace=(arr_param.length>2?arr_param[2]:""),str_ret=str_text;
	var obj_ereg=new RegExp(str_search, "gim");
	while(str_ret.match(obj_ereg))str_ret=str_ret.replace(obj_ereg, str_replace);
	return str_ret;
}
/*----------------------------------------------------------------------------------*/
/* Fonction de recherche et remplace dans chaine via regexp							*/
/* nom :		ereplaceAll															*/
/* entrées :																		*/
/*				- str_text			: string	: chaine à traiter					*/
/*				- str_search		: string	: chaine recherchée					*/
/*				- str_replace		: string	: chaine de replacement				*/
/* sortie :																			*/
/*				- str_ret			: string	: chaine traitée					*/
/*----------------------------------------------------------------------------------*/
function ereplace(){
	var arr_param=ereplace.arguments;
	var str_text=arr_param[0], str_search=arr_param[1], str_replace=(arr_param.length>2?arr_param[2]:""),str_ret=str_text;
	var obj_ereg=new RegExp(str_search, "gim");
	if(str_ret.match(obj_ereg))str_ret=str_ret.replace(obj_ereg, str_replace);
	return str_ret;
}


function getCookie(c_name)
{
	if (document.cookie.length>0)
	  {
	  c_start=document.cookie.indexOf(c_name + "=");
	  if (c_start!=-1)
		{
		c_start=c_start + c_name.length+1;
		c_end=document.cookie.indexOf(";",c_start);
		if (c_end==-1) c_end=document.cookie.length;
		return unescape(document.cookie.substring(c_start,c_end));
		}
	  }
	return "";
}

function setCookie(c_name,value,expiredays)
{
	var exdate=new Date();
	exdate.setDate(exdate.getDate()+expiredays);
	//document.cookie=c_name+ "=" +escape(value)+ ((expiredays==null) ? "" : ";expires="+exdate.toUTCString());
	document.cookie=c_name+"="+escape(value)+((expiredays==null) ? "" : ("; expires=" + expiredays.toGMTString()));
}

function SaveSessin(){
	oImg = new Image()
	oImg.src = 'session.asp'
	setTimeout("SaveSessin()",120000)
}
