var boo_nn4=document.layers;
var boo_nn6=document.getElementById&&!document.all;
var boo_nn=boo_nn4||boo_nn6;
var boo_ie=document.all&&!boo_nn;
var boo_dhtml=document.getElementById||document.all||document.layers;

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
}

/*----------------------------------------------------------------------------------*/
/* Class contrôle														 			*/
/* nom :		control																*/
/* entrées :																		*/
/*				- [str_remotedata]	: string	: url XML des données				*/
/*				- [int_errmode]		: integer	: 1 - err resume global 			*/
/*												  2 - err detail global  			*/
/*												  4 - err resume individuel			*/
/*												  8 - err detail individuel  		*/
/*												  16 - sortir à la 1ere erreur 		*/
/*				- [obj_form]		: object	: form de référence					*/
/* attributs :																		*/
/*				- str_remotedata	: string	: url XML des données				*/
/*				- int_errmode		: string	: gestion des erreurs				*/
/*				- obj_form			: string	: form de référence					*/
/*				- var_data_accept	: variant	: liste des controles acceptées		*/
/*				- var_data_except	: variant	: liste des controles ignorées		*/
/*				- str_errxmlload	: string	: msg d'erreur de chargement xml	*/
/*				- boo_debug			: boolean	: debugage							*/
/* méthodes :																		*/
/*				- run				: Démarrage des tests							*/
/*				- add				: Ajout d'un controle							*/
/*				- del				: Suppression d'un control						*/
/*				- enabled			: Désactivation d'un controle					*/
/* sortie :																			*/
/*----------------------------------------------------------------------------------*/
function control(){
	var arr_param=control.arguments;
	/*------------------------------------------------------------------------------*/
	/* ATTRIBUTS PUBLIQUES															*/
	/*------------------------------------------------------------------------------*/
	this.str_remotedata=(arr_param.length>0?arr_param[0]:"");
	this.int_errmode=(arr_param.length>1?arr_param[1]:1);
	this.obj_form=(arr_param.length>2?arr_param[2]:null);
	this.str_errxmlload="Vos paramètres de sécurité ne permettent pas le chargement du fichier de contrôle.";
	this.var_data_accept=null;
	this.var_data_except=null;
	this.boo_debug=false;
	
	/*------------------------------------------------------------------------------*/
	/* ATTRIBUTS PRIVÉES															*/
	/*------------------------------------------------------------------------------*/
	var arr_verifdata=new Array();
	var global=this;

	/*------------------------------------------------------------------------------*/
	/* METHODES PUBLIQUES															*/
	/*------------------------------------------------------------------------------*/
	this.run=verifData;
	this.add=addData;
	this.del=delData;
	this.enabled=enabledData;

	/*------------------------------------------------------------------------------*/
	/* METHODES PRIVÉES																*/
	/*------------------------------------------------------------------------------*/
	/*------------------------------------------------------------------------------*/
	/* Fonction de test d'un champs	ou d'une chaine									*/
	/* nom :		checkData														*/
	/* entrées :																	*/
	/*				- var_data			: variant	: objet ou chaine				*/
	/*				- [boo_isnull]		: boolean	: vide autorisé					*/
	/*				- [boo_istext]		: boolean	: valeur texte					*/
	/*				- [str_accept]		: string	: caractères autorisés			*/
	/*				- [str_reject]		: string	: caractères refusés			*/
	/*				- [str_min]			: string	: minimum						*/
	/*				- [str_max]			: string	: maximum						*/
	/*				- [str_fct]			: string	: fonction						*/
	/*				- [str_fctmask]		: string	: mask des paramètres			*/
	/*				- [var_fctretok]	: variant	: retour succes					*/
	/*				- [boo_ret]			: boolean	: etat si success				*/
	/* sortie :																		*/
	/*				- boo_ret			: boolean	: etat ou false si echec		*/
	/*------------------------------------------------------------------------------*/
	function checkData(){
		var arr_param=checkData.arguments;
		var var_data=arr_param[0], var_fctretok=(arr_param.length>9?arr_param[9]:"");
		var str_accept=(arr_param.length>3?arr_param[3]:""), str_reject=(arr_param.length>4?arr_param[4]:""), str_min=(arr_param.length>5?arr_param[5]:""), str_max=(arr_param.length>6?arr_param[6]:""), str_fct=(arr_param.length>7?arr_param[7]:""), str_fctmask=(arr_param.length>8?arr_param[8]:"");
		var boo_isnull=(arr_param.length>1?arr_param[1]:false), boo_istext=(arr_param.length>2?arr_param[2]:true), boo_ret=(arr_param.length>10?arr_param[10]:true);
		obj_field=(typeof(var_data)=="object"?var_data:getElement(var_data));
		obj_field=(obj_field!=null?obj_field:var_data);
		if(typeof(obj_field)=="object"){
			switch(obj_field.nodeName){
				case "OPTION":
					if(obj_field.parentElement!=null){
						obj_field.parentElement.style.backgroundColor="#FFFFFF";
						obj_field.parentElement.style.color="#000000";
					}
					str_value=obj_field.value;
					break;
				case "IFRAME":
					obj_field.contentWindow.document.body.style.backgroundColor="#FFFFFF";
					obj_field.contentWindow.document.body.style.color="#000000";
					str_value=obj_field.contentWindow.document.body.innerHTML;
					break;
				default:
					obj_field.style.backgroundColor="#FFFFFF";
					obj_field.style.color="#000000";
					str_value=obj_field.value;
					break;
			}
		}else str_value=obj_field;
		if((!boo_isnull&&isEmpty(obj_field, false))||((!boo_isnull||str_value!="")&&((!boo_istext&&!(isNumeric(obj_field, true)||checkDate(obj_field)!=null))||((str_accept!=""||str_reject!="")&&!isGoodText(obj_field, str_accept, str_reject, true))||isOutOfBound(obj_field, str_min, str_max, boo_istext, false)||(str_fct!=""&&eval((str_fctmask!=""?replaceAll(str_fct, str_fctmask, (boo_istext||checkDate(str_value)!=null?"\""+str_value.replace("\"", "\\\"")+"\"":str_value)):str_fct))!=var_fctretok)))){
			if(typeof(obj_field)=="object"){
				switch(obj_field.nodeName){
					case "OPTION":
						obj_field.parentElement.style.backgroundColor="#FFCC66";
						obj_field.parentElement.style.color="#330066";
						if(obj_field.parentElement.style.display=="block") obj_field.parentElement.focus();
						break;
					case "IFRAME":
						obj_field.contentWindow.document.body.style.backgroundColor="#FFCC66";
						obj_field.contentWindow.document.body.style.color="#330066";
						if(obj_field.style.display=="block") obj_field.contentWindow.document.body.focus();
						break;
					default:
						obj_field.style.backgroundColor="#FFCC66";
						obj_field.style.color="#330066";
						if(obj_field.style.display=="block") obj_field.focus();
						break;
				}
			}
			boo_ret=false;
		}
		if(global.boo_debug&&!boo_ret) alert("name:"+(typeof(obj_field)=="object"?obj_field.name:obj_field)+"\ntype:"+obj_field.nodeName+"\n"+"test null:"+(!boo_isnull&&isEmpty(obj_field, false)?"ok":"ko")+"\n"+(!boo_isnull||str_value!=""?"test numeric or date:"+(!boo_istext&&!(isNumeric(obj_field, true)||checkDate(obj_field)!=null)?"ko":"ok")+"\n"+"test format:"+((str_accept!=""||str_reject!="")&&!isGoodText(obj_field, str_accept, str_reject, true)?"ko":"ok")+"\n"+"test limit:"+(isOutOfBound(obj_field, str_min, str_max, boo_istext, false)?"ko":"ok"):"")+"\n"+"test function:"+(str_fct!=""&&eval((str_fctmask!=""?replaceAll(str_fct, str_fctmask, (boo_istext||checkDate(str_value)!=null?"\""+str_value.replace("\"", "\\\"")+"\"":str_value)):str_fct))!=var_fctretok?"ko":"ok"));
		return boo_ret;
	}
	/*------------------------------------------------------------------------------*/
	/* Fonction de vérification de données											*/
	/* nom :		verifData														*/
	/* entrées :																	*/
	/*				- [str_remotedata]	: string	: Url XML des données			*/
	/*				- [int_errmode]		: integer	: 1 - err resume global 		*/
	/*												  2 - err detail global  		*/
	/*												  4 - err resume individuel		*/
	/*												  8 - err detail individuel  	*/
	/*												  16 - sortir à la 1ere erreur 	*/
	/*				- [obj_form]		: object	: reference du form				*/
	/* sortie :																		*/
	/*				- boo_ret			: boolean	: true ou false si echec		*/
	/*------------------------------------------------------------------------------*/
	function verifData(){
		var arr_type, arr_data, arr_param=verifData.arguments;
		var var_fctretok;
		var int_nbrow, int_cnt1, int_cnt2, int_cnt3;
		var obj_name, obj_field;
		var str_min, str_max, str_accept, str_reject, str_type, str_erreur, str_information, str_msg="", str_fct, str_fctmask;
		var boo_enabled, boo_isnull, boo_istext, boo_err=false, boo_ret=true;
		if(arr_param.length>0) global.str_remotedata=arr_param[0];
		if(arr_param.length>1) global.int_errmode=arr_param[1];
		if(arr_param.length>2) global.obj_form=arr_param[2];
		if(global.int_errmode==null) global.int_errmode=1;
		if(global.str_remotedata!="") arr_data=getVerifData(global.str_remotedata);
		else arr_data=arr_verifdata
		if(arr_data!=null){
			for(int_cnt1=0;int_cnt1<arr_data.length;int_cnt1++){
				boo_err=false;
				obj_field=null;
				obj_name=arr_data[int_cnt1][0][0];
				boo_enabled=arr_data[int_cnt1][0][1];
				if(global.var_data_accept!=null){
					boo_enabled=false;
					if(typeof(global.var_data_accept)=="object"){
						for(int_cnt2=0;int_cnt2<global.var_data_accept.length;int_cnt2++){
							if(obj_name==global.var_data_accept[int_cnt2]){
								boo_enabled=true;
								break;
							}
						}
					}else if(obj_name==global.var_data_accept) boo_enabled=true;
				}
				if(global.var_data_except!=null){
					if(typeof(global.var_data_except)=="object"){
						for(int_cnt2=0;int_cnt2<global.var_data_except.length;int_cnt2++){
							if(obj_name==global.var_data_except[int_cnt2]){
								boo_enabled=false;
								break;
							}
						}
					}else if(obj_name==global.var_data_except) boo_enabled=false;
				}
				if(boo_enabled){
					boo_isnull=arr_data[int_cnt1][1][0];
					boo_istext=arr_data[int_cnt1][1][1];
					str_accept=arr_data[int_cnt1][2][0];
					str_reject=arr_data[int_cnt1][2][1];
					str_min=arr_data[int_cnt1][3][0];
					str_max=arr_data[int_cnt1][3][1];
					str_erreur=arr_data[int_cnt1][4][0];
					str_information=arr_data[int_cnt1][4][1];
					str_fct=arr_data[int_cnt1][5][0];
					str_fctmask=arr_data[int_cnt1][5][1];
					var_fctretok=arr_data[int_cnt1][5][2];
					if(global.obj_form!=null) if(typeof(global.obj_form)=="object") if(global.obj_form.nodeName=="FORM") obj_field=eval("global.obj_form." + obj_name);
					if(obj_field==null) obj_field=getElement(obj_name);
					if(obj_field==null) obj_field=obj_name;
					arr_type=getType(obj_field);
					str_type=arr_type[arr_type.length - 1];
					if(str_type=="select-multiple"||str_type=="select-one"){
						obj_field.style.backgroundColor="#FFFFFF";
						obj_field.style.color="#000000";
						int_nbrow=obj_field.options.length;
						int_cnt3=0;
						for(int_cnt2=0;int_cnt2<int_nbrow;int_cnt2++){
							if(obj_field.options[int_cnt2].selected){
								int_cnt3=int_cnt3+1;
								boo_err=!checkData(obj_field.options[int_cnt2], boo_isnull, boo_istext, str_accept, str_reject, "", "", str_fct, str_fctmask, var_fctretok, !boo_err);
								boo_ret=(boo_err?false:boo_ret);
								if(boo_err) break;
							}
						}
						if(!boo_isnull){
							if(str_min!=""&&isNumeric(str_min, true)&&parseInt(str_min)>-1&&int_cnt3<parseInt(str_min)) boo_err=true;
							if(str_max!=""&&isNumeric(str_max, true)&&parseInt(str_max)>-1&&int_cnt3>parseInt(str_max)) boo_err=true;
							boo_ret=(boo_err?false:boo_ret);
						}
						if(boo_err){
							obj_field.style.backgroundColor="#FFCC66";
							obj_field.style.color="#330066";
							if(((global.int_errmode|1)==global.int_errmode&&str_erreur!="")||((global.int_errmode|2)==global.int_errmode&&str_information!="")) str_msg+=(str_msg!=""?"\n\n":"")+((global.int_errmode|1)==global.int_errmode?str_erreur:"")+((global.int_errmode|2)==global.int_errmode?((global.int_errmode|3)==global.int_errmode&&str_erreur!=""?"\n":"")+str_information:"");
							if(((global.int_errmode|4)==global.int_errmode&&str_erreur!="")||((global.int_errmode|8)==global.int_errmode&&str_information!="")) alert(((global.int_errmode|4)==global.int_errmode?str_erreur:"")+((global.int_errmode|8)==global.int_errmode?((global.int_errmode|12)==global.int_errmode&&str_erreur!=""?"\n":"")+str_information:""));
							if((global.int_errmode|16)==global.int_errmode) break;
							if(obj_field.style.display=="block") obj_field.focus();
						}
					}else{
						if(typeof(obj_field)=="object"){
							int_cnt3=0;
							if(obj_field.length==null){
								if(str_type!="checkbox"||(str_type=="checkbox"&&obj_field.checked)){
									int_cnt3=int_cnt3+1;
									boo_err=!checkData(obj_field, boo_isnull, boo_istext, str_accept, str_reject, (str_type=="checkbox"?"":str_min), (str_type=="checkbox"?"":str_max), str_fct, str_fctmask, var_fctretok, !boo_err);
									boo_ret=(boo_err?false:boo_ret);
								}
							}else{
								for(int_cnt2=0;int_cnt2<obj_field.length;int_cnt2++){
									arr_type=getType(obj_field[int_cnt2]);
									str_type=arr_type[arr_type.length - 1];
									if(str_type!="checkbox"||(str_type=="checkbox"&&obj_field[int_cnt2].checked)){
										int_cnt3=int_cnt3+1;
										boo_err=!checkData(obj_field[int_cnt2], boo_isnull, boo_istext, str_accept, str_reject, (str_type=="checkbox"?"":str_min), (str_type=="checkbox"?"":str_max), str_fct, str_fctmask, var_fctretok, !boo_err);
										boo_ret=(boo_err?false:boo_ret);
										if(boo_err) break;
									}
								}
							}
							if(str_type=="checkbox"&&!boo_isnull){
								if(str_min!=""&&isNumeric(str_min, true)&&int_cnt3<parseInt(str_min)) boo_err=true;
								if(str_max!=""&&isNumeric(str_max, true)&&int_cnt3>parseInt(str_max)) boo_err=true;
								boo_ret=(boo_err?false:boo_ret);
							}
						}else{
							boo_err=!checkData(obj_field, boo_isnull, boo_istext, str_accept, str_reject, str_min, str_max, str_fct, str_fctmask, var_fctretok, !boo_err);
							boo_ret=(boo_err?false:boo_ret);
						}
						if(boo_err){
							if(((global.int_errmode|1)==global.int_errmode&&str_erreur!="")||((global.int_errmode|2)==global.int_errmode&&str_information!="")) str_msg+=(str_msg!=""?"\n\n":"")+((global.int_errmode|1)==global.int_errmode?str_erreur:"")+((global.int_errmode|2)==global.int_errmode?((global.int_errmode|3)==global.int_errmode&&str_erreur!=""?"\n":"")+str_information:"");
							if(((global.int_errmode|4)==global.int_errmode&&str_erreur!="")||((global.int_errmode|8)==global.int_errmode&&str_information!="")) alert(((global.int_errmode|4)==global.int_errmode?str_erreur:"")+((global.int_errmode|8)==global.int_errmode?((global.int_errmode|12)==global.int_errmode&&str_erreur!=""?"\n":"")+str_information:""));
							if((global.int_errmode|16)==global.int_errmode) break;
						}
					}
				}
			}
		}
		if(str_msg!=""&&!boo_ret) alert(str_msg);
		
		return boo_ret;
	}
	/*------------------------------------------------------------------------------*/
	/* Fonction de récupération des données de vérification							*/
	/* nom :		getVerifData													*/
	/* entrées :																	*/
	/*				- [str_remotedata]	: string	: Url XML des données		 	*/
	/* sortie :																		*/
	/*				- arr_ret			: array		: Tableau de données			*/
	/*------------------------------------------------------------------------------*/
	function getVerifData(){
		var arr_ret=new Array(), arr_script, arr_param=getVerifData.arguments;
		var var_fctretok;
		var str_accept, str_reject, str_min, str_max, str_fct, str_fctmask, str_erreur, str_information, str_page, str_script, str_name;
		var obj_nodecontrol, obj_nodepage, obj_nodedata, obj_xmldoc=(boo_ie?new ActiveXObject("Microsoft.XMLDOM"):document.implementation.createDocument("", "", null));
		var int_cnt1, int_cnt2, int_cnt3;
		var boo_isnull, boo_istext;
		if(arr_param.length>0) global.str_remotedata=arr_param[0];
		if(global.str_remotedata!=""&&obj_xmldoc!=null){
			obj_xmldoc.async=false;
			try{
				obj_xmldoc.load(global.str_remotedata);
			}catch(e){
				if(global.str_errxmlload!="") alert(global.str_errxmlload);
			}
			obj_nodecontrol=obj_xmldoc.getElementsByTagName("CONTROL");
			str_script=document.location.href;
			arr_script=str_script.split("?");
			str_script=arr_script[0].replace("\\","/");
			arr_script=str_script.split("/");
			str_script=arr_script[(arr_script.length-1)];
			for(int_cnt1=0;int_cnt1<obj_nodecontrol.length;int_cnt1++){
				str_name=obj_nodecontrol[int_cnt1].getAttribute("NAME");
				if(getElement(str_name)!=null){
					str_page="";
					obj_nodepage=obj_nodecontrol[int_cnt1].getElementsByTagName("PAGE");
					for(int_cnt2=0;int_cnt2<obj_nodepage.length;int_cnt2++){
						str_page=obj_nodepage[int_cnt2].getAttribute("NAME");
						boo_isnull=true;
						boo_istext=true;
						str_accept="";
						str_reject="";
						str_min="";
						str_max="";
						str_erreur="";
						str_information="";
						str_fct="";
						str_fctmask="";
						var_fctretok="";
						obj_nodedata=obj_nodepage[int_cnt2].childNodes;
						for(int_cnt3=0;int_cnt3<obj_nodedata.length;int_cnt3++){
							switch(obj_nodedata[int_cnt3].nodeName){
								case "PROPERTY":
									boo_isnull=(obj_nodedata[int_cnt3].getAttribute("ISNULL")=="true"?true:false);
									boo_istext=(obj_nodedata[int_cnt3].getAttribute("ISTEXT")=="true"?true:false);
									break;
								case "EXPRESSION":
									str_accept=obj_nodedata[int_cnt3].getAttribute("ACCEPT");
									str_reject=obj_nodedata[int_cnt3].getAttribute("REJECT");
									break;
								case "LIMIT":
									str_min=obj_nodedata[int_cnt3].getAttribute("MIN");
									str_max=obj_nodedata[int_cnt3].getAttribute("MAX");
									break;
								case "MESSAGE":
									str_erreur=obj_nodedata[int_cnt3].getAttribute("ERREUR");
									str_information=obj_nodedata[int_cnt3].getAttribute("INFORMATION");
									break;
								case "FUNCTION":
									str_fct=obj_nodedata[int_cnt3].getAttribute("NAME");
									str_fctmask=obj_nodedata[int_cnt3].getAttribute("MASK");
									var_fctretok=obj_nodedata[int_cnt3].getAttribute("RETOK");
									if(var_fctretok.toLowerCase()=="true"||var_fctretok.toLowerCase()=="false") var_fctretok=(var_fctretok.toLowerCase()=="true"?true:false);
									else if(isNumeric(var_fctretok)) var_fctretok=eval(var_fctretok);
									break;
							}
						}
						if((str_page==str_script||str_page=="")&&str_name!="") arr_ret[arr_ret.length]=[[str_name, true], [boo_isnull, boo_istext], [str_accept, str_reject], [str_min, str_max], [str_erreur, str_information], [str_fct, str_fctmask, var_fctretok]];
					}
				}
			}
		}
		if(arr_verifdata!=null) for(int_cnt1=0;int_cnt1<arr_verifdata.length;int_cnt1++) arr_ret[arr_ret.length]=arr_verifdata[int_cnt1];
		return arr_ret;
	}
	/*------------------------------------------------------------------------------*/
	/* Fonction d'ajout de données													*/
	/* nom :		addData															*/
	/* entrées :																	*/
	/*				- var_data			: variant	: objet ou chaine				*/
	/*				- [boo_isnull]		: boolean	: vide autorisé					*/
	/*				- [boo_istext]		: boolean	: valeur texte					*/
	/*				- [str_accept]		: string	: caractères autorisés			*/
	/*				- [str_reject]		: string	: caractères refusés			*/
	/*				- [str_min]			: string	: minimum						*/
	/*				- [str_max]			: string	: maximum						*/
	/*				- [str_erreur]		: string	: erreur						*/
	/*				- [str_information]	: string	: information					*/
	/*				- [str_fct]			: string	: fonction						*/
	/*				- [str_fctmask]		: string	: mask des paramètres			*/
	/*				- [var_fctretok]	: string	: retour succes					*/
	/* sortie :																		*/
	/*------------------------------------------------------------------------------*/
	function addData(){
		var arr_param=addData.arguments;
		var var_data=arr_param[0], var_fctretok=(arr_param.length>11?arr_param[11]:"");
		var str_accept=(arr_param.length>3?arr_param[3]:""), str_reject=(arr_param.length>4?arr_param[4]:""), str_min=(arr_param.length>5?arr_param[5]:""), str_max=(arr_param.length>6?arr_param[6]:""), str_erreur=(arr_param.length>7?arr_param[7]:""), str_information=(arr_param.length>8?arr_param[8]:""), str_fct=(arr_param.length>9?arr_param[9]:""), str_fctmask=(arr_param.length>10?arr_param[10]:"");
		var boo_isnull=(arr_param.length>1?arr_param[1]:false), boo_istext=(arr_param.length>2?arr_param[2]:true);
		if(arr_verifdata==null) arr_verifdata=new Array();
		arr_verifdata[arr_verifdata.length]=[[var_data, true], [boo_isnull, boo_istext], [str_accept, str_reject], [str_min, str_max], [str_erreur, str_information], [str_fct, str_fctmask, var_fctretok]];
	}
	/*------------------------------------------------------------------------------*/
	/* Fonction de suppression de données											*/
	/* nom :		delData															*/
	/* entrées :																	*/
	/*				- var_data			: variant	: objet ou chaine				*/
	/* sortie :																		*/
	/*------------------------------------------------------------------------------*/
	function delData(){
		var arr_data=new Array(), arr_param=delData.arguments;
		var var_data=arr_param[0];
		var int_cnt;
		if(arr_verifdata!=null) for(int_cnt=0;int_cnt<arr_verifdata.length;int_cnt++) if(var_data!=arr_verifdata[int_cnt][0][0]) arr_data[arr_data.length]=arr_verifdata[int_cnt];
		arr_verifdata=arr_data;
	}
	/*------------------------------------------------------------------------------*/
	/* Fonction d'activation ou desactivation de données							*/
	/* nom :		enabledData														*/
	/* entrées :																	*/
	/*				- boo_state			: boolean	: etat							*/
	/*				- [var_data]		: variant	: objet ou chaine				*/
	/*				- [var_except]		: variant	: objet ou chaine ignore		*/
	/* sortie :																		*/
	/*------------------------------------------------------------------------------*/
	function enabledData(){
		var arr_param=enabledData.arguments;
		var obj_field;
		var boo_ignore, boo_exist, boo_state=arr_param[0];
		var var_data=(arr_param.length>1?arr_param[1]:null), var_except=(arr_param.length>2?arr_param[2]:null);
		var int_cnt1, int_cnt2, int_cnt3;
		global.var_data_accept=null;
		global.var_data_except=null;
		if(arr_verifdata!=null){
			for(int_cnt1=0;int_cnt1<arr_verifdata.length;int_cnt1++){
				boo_ignore=false;
				obj_field=arr_verifdata[int_cnt1][0][0];
				if(var_except!=null){
					if(typeof(var_except)!="object") var_except=new Array(var_except);
					for(int_cnt2=0;int_cnt2<var_except.length;int_cnt2++){
						if(obj_field==var_except[int_cnt2]){
							boo_ignore=true;
							break;
						}
					}
				}
				if((var_data==null||var_data==obj_field)&&!boo_ignore) arr_verifdata[int_cnt1][0][1]=boo_state;
				if(arr_verifdata[int_cnt1][0][1]){
					if(global.var_data_accept==null) global.var_data_accept=new Array();
					global.var_data_accept[global.var_data_accept.length]=obj_field;
				}else{
					if(global.var_data_except==null) global.var_data_except=new Array();
					global.var_data_except[global.var_data_except.length]=obj_field;
				}
			}
		}
		if(var_data!=null){
			if(typeof(var_data)!="object") var_data=new Array(var_data);
			if(boo_state){
				if(global.var_data_accept!=null){
					if(typeof(global.var_data_accept)!="object") global.var_data_accept=new Array(global.var_data_accept);
					for(int_cnt1=0;int_cnt1<var_data.length;int_cnt1++){
						boo_exist=false;
						for(int_cnt2=0;int_cnt2<global.var_data_accept.length;int_cnt2++){
							if(var_data[int_cnt1]==global.var_data_accept[int_cnt2]){
								boo_exist=true;
								break;
							}
						}
						if(!boo_exist) global.var_data_accept[global.var_data_accept.length]=var_data[int_cnt1];
					}
				}else global.var_data_accept=var_data;
			}else{
				if(global.var_data_except!=null){
					if(typeof(global.var_data_except)!="object") global.var_data_except=new Array(global.var_data_except);
					for(int_cnt1=0;int_cnt1<var_data.length;int_cnt1++){
						boo_exist=false;
						for(int_cnt2=0;int_cnt2<global.var_data_except.length;int_cnt2++){
							if(var_data[int_cnt1]==global.var_data_except[int_cnt2]){
								boo_exist=true;
								break;
							}
						}
						if(!boo_exist) global.var_data_except[global.var_data_except.length]=var_data[int_cnt1];
					}
				}else global.var_data_except=var_data;
			}
		}
		if(var_except!=null){
			if(typeof(var_except)!="object") var_except=new Array(var_except);
			if(!boo_state){
				if(global.var_data_accept!=null){
					if(typeof(global.var_data_accept)!="object") global.var_data_accept=new Array(global.var_data_accept);
					for(int_cnt1=0;int_cnt1<var_except.length;int_cnt1++){
						boo_exist=false;
						for(int_cnt2=0;int_cnt2<global.var_data_accept.length;int_cnt2++){
							if(var_except[int_cnt1]==global.var_data_accept[int_cnt2]){
								boo_exist=true;
								break;
							}
						}
						if(!boo_exist) global.var_data_accept[global.var_data_accept.length]=var_except[int_cnt1];
					}
				}else global.var_data_accept=var_except;
			}else{
				if(global.var_data_except!=null){
					if(typeof(global.var_data_except)!="object") global.var_data_except=new Array(global.var_data_except);
					for(int_cnt1=0;int_cnt1<var_except.length;int_cnt1++){
						boo_exist=false;
						for(int_cnt2=0;int_cnt2<global.var_data_except.length;int_cnt2++){
							if(var_except[int_cnt1]==global.var_data_except[int_cnt2]){
								boo_exist=true;
								break;
							}
						}
						if(!boo_exist) global.var_data_except[global.var_data_except.length]=var_except[int_cnt1];
					}
				}else global.var_data_except=var_except;
			}
		}
	}
}
/*----------------------------------------------------------------------------------*/
/* Class fenêtre														 			*/
/* nom :		windows																*/
/* entrées :																		*/
/*				- [str_url]			: string	: Url de la page					*/
/*				- [int_width]		: integer	: largeur				 			*/
/*				- [int_height]		: integer	: hauteur							*/
/*				- [str_properties]	: string	: propriétés						*/
/* attributs :																		*/
/*				- str_url			: string	: Url de la page					*/
/*				- int_width			: integer	: largeur				 			*/
/*				- int_height		: integer	: hauteur							*/
/*				- str_properties	: string	: propriétés						*/
/*				- str_method		: string	: methode (GET|POST)				*/
/*				- str_name			: string	: nom de la fenetre					*/
/*				- obj_form			: object	: reference du form					*/
/*				- boo_debug			: boolean	: debugage							*/
/* methodes :																		*/
/*				- open				: ouverture										*/
/*				- close				: fermeture										*/
/* sortie :																			*/
/*				- str_ret			: string	: chaine traitée					*/
/*----------------------------------------------------------------------------------*/
function windows(){
	var arr_param=windows.arguments;
	/*------------------------------------------------------------------------------*/
	/* ATTRIBUTS PUBLIQUES															*/
	/*------------------------------------------------------------------------------*/
	this.str_url=(arr_param.length>0?arr_param[0]:"about:blank");
	this.int_width=(arr_param.length>1?arr_param[1]:400);
	this.int_height=(arr_param.length>2?arr_param[2]:300);
	this.str_properties=(arr_param.length>3?arr_param[3]:"");
	this.str_method="GET";
	this.str_name="newpopup";
	this.str_blankpage="about:blank";
	this.obj_form=null;
	this.boo_debug=false;
	/*------------------------------------------------------------------------------*/
	/* ATTRIBUTS PRIVÉES															*/
	/*------------------------------------------------------------------------------*/
	var obj_wo=null;
	var global=this;
	/*------------------------------------------------------------------------------*/
	/* METHODES PUBLIQUES															*/
	/*------------------------------------------------------------------------------*/
	this.open=openWin;
	this.close=closeWin;
	/*------------------------------------------------------------------------------*/
	/* METHODES PRIVÉES																*/
	/*------------------------------------------------------------------------------*/
	/*------------------------------------------------------------------------------*/
	/* Fonction d'ouverture de fenêtre												*/
	/* nom :		openWin															*/
	/* entrées :																	*/
	/* sortie :																		*/
	/*				- obj_wo			: object	: objet fenêtre					*/
	/*------------------------------------------------------------------------------*/
	function openWin(){
		var str_action, str_method, str_target;
		if(obj_wo!=null) if(obj_wo!=false) closeWin();
		obj_wo = window.open((global.obj_form!=null?global.str_blankpage:global.str_url), global.str_name, "top="+(global.int_top!=null?global.int_top:((screen.height-global.int_height)/2))+",left="+(global.int_left!=null?global.int_left:((screen.width-global.int_width)/2))+",width="+global.int_width+",height="+global.int_height+","+global.str_properties);
		if(global.obj_form!=null){
			str_action=global.obj_form.action;
			str_method=global.obj_form.method;
			str_target=global.obj_form.target;
			global.obj_form.action=global.str_url;
			global.obj_form.method=global.str_method;
			global.obj_form.target=global.str_name;
			global.obj_form.submit();
			global.obj_form.action=str_action;
			global.obj_form.method=str_method;
			global.obj_form.target=str_target;
		}
		if(obj_wo!=null) if(obj_wo!=false) obj_wo.focus();
		return obj_wo;
	}
	/*------------------------------------------------------------------------------*/
	/* Fonction de fermeture de fenêtre												*/
	/* nom :		closeWin														*/
	/* entrées :																	*/
	/* sortie :																		*/
	/*------------------------------------------------------------------------------*/
	function closeWin(){
		if(obj_wo!=null) if(obj_wo!=false) obj_wo.close();
	}
}
/*----------------------------------------------------------------------------------*/
/* 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 supression des espaces double										*/
/* nom :		ITrim																*/
/* entrées :																		*/
/*				- str_text			: string	: chaine non formatée				*/
/* sortie :																			*/
/*				- str_text			: string	: chaine formattée					*/
/*----------------------------------------------------------------------------------*/
function ITrim(){
	var arr_paraam=ITrim.arguments;
	var str_text=arr_paraam[0];
	return (str_text.indexOf("  ")==-1)?str_text:ITrim(str_text.substring(0, str_text.indexOf("  "))+str_text.substring(str_text.indexOf("  ")+1));
}
/*----------------------------------------------------------------------------------*/
/* Fonction de supression des espaces à gauche										*/
/* nom :		LTrim																*/
/* entrées :																		*/
/*				- str_text			: string	: chaine non formatée				*/
/* sortie :																			*/
/*				- str_text			: string	: chaine formattée					*/
/*----------------------------------------------------------------------------------*/
function LTrim(){
	var arr_paraam=LTrim.arguments;
	var str_text=arr_paraam[0];
	return (str_text.charAt(0)==" ")?LTrim(str_text.substring(1)):str_text;
}
/*----------------------------------------------------------------------------------*/
/* Fonction de supression des espaces à droite										*/
/* nom :		RTrim																*/
/* entrées :																		*/
/*				- str_text			: string	: chaine non formatée				*/
/* sortie :																			*/
/*				- str_text			: string	: chaine formattée					*/
/*----------------------------------------------------------------------------------*/
function RTrim(){
	var arr_paraam=RTrim.arguments;
	var str_text=arr_paraam[0];
	return (str_text.charAt(str_text.length-1)==" ")?RTrim(str_text.substring(0, str_text.length-1)):str_text;
}
/*----------------------------------------------------------------------------------*/
/* Fonction de supression des espaces double, à gauche et à droite					*/
/* nom :		Trim																*/
/* entrées :																		*/
/*				- str_text			: string	: chaine non formatée				*/
/* sortie :																			*/
/*				- str_text			: string	: chaine formattée					*/
/*----------------------------------------------------------------------------------*/
function Trim(){
	var arr_paraam=Trim.arguments;
	var str_text=arr_paraam[0];
	return LTrim(RTrim(ITrim(str_text)));
}
/*----------------------------------------------------------------------------------*/
/* Fonction de récupération d'un élément											*/
/* nom :		getElement															*/
/* entrées :																		*/
/*				- str_elt			: string	: nom de l'élément					*/
/* sortie :																			*/
/*				- obj_ret			: object	: objet ou null si echec			*/
/*----------------------------------------------------------------------------------*/
function getElement(){
	var arr_param=getElement.arguments;
	var obj_ret=null;
	if(boo_ie) obj_ret=document.all(arr_param[0]);
	else obj_ret=document.getElementById(arr_param[0]);
	return obj_ret;
}
/*----------------------------------------------------------------------------------*/
/* Fonction de test d'un champs vide												*/
/* nom :		isEmpty																*/
/* entrées :																		*/
/*				- var_data			: variant	: objet ou chaine					*/
/*				- [boo_err]			: boolean	: etat si success					*/
/* sortie :																			*/
/*				- boo_err			: boolean	: etat ou false si echec			*/
/*----------------------------------------------------------------------------------*/
function isEmpty(){
	var arr_param=isEmpty.arguments;
	var var_data=arr_param[0];
	var str_value;
	var boo_err=(arr_param.length>1?arr_param[1]:false);
	if(typeof(var_data)=="object"){
		if(var_data.tagName=="OPTION"&&var_data.parentElement!=null){
			var_data.parentElement.style.backgroundColor="#FFFFFF";
			var_data.parentElement.style.color="#000000";
		}else{
			var_data.style.backgroundColor="#FFFFFF";
			var_data.style.color="#000000";
		}
		str_value=var_data.value;
	}else str_value=var_data;
	if(Trim(str_value)==""){
		if(typeof(var_data)=="object"){
			if(var_data.tagName=="OPTION"&&var_data.parentElement!=null){
				var_data.parentElement.style.backgroundColor="#FFCC66";
				var_data.parentElement.style.color="#330066";
				if(var_data.parentElement.style.display=="block") var_data.parentElement.focus();
			}else{
				var_data.style.backgroundColor="#FFCC66";
				var_data.style.color="#330066";
				if(var_data.style.display=="block") var_data.focus();
			}
		}
		boo_err=true;
	}
	return boo_err;
}
/*----------------------------------------------------------------------------------*/
/* Fonction de test d'un champs numéric												*/
/* nom :		isNumeric															*/
/* entrées :																		*/
/*				- var_data			: variant	: objet ou chaine					*/
/*				- [boo_err]			: boolean	: etat si success					*/
/* sortie :																			*/
/*				- boo_err			: boolean	: etat ou false si echec			*/
/*----------------------------------------------------------------------------------*/
function isNumeric(){
	var arr_param=isNumeric.arguments;
	var var_data=arr_param[0];
	var str_value;
	var boo_err=(arr_param.length>1?arr_param[1]:true);
	if(typeof(var_data)=="object"){
		if(var_data.tagName=="OPTION"&&var_data.parentElement!=null){
			var_data.parentElement.style.backgroundColor="#FFFFFF";
			var_data.parentElement.style.color="#000000";
		}else{
			var_data.style.backgroundColor="#FFFFFF";
			var_data.style.color="#000000";
		}
		str_value=var_data.value;
	}else str_value=var_data;
	var obj_ereg=new RegExp(/^([-+]?[,.]?)$|^([-+]?[,.]?\d+)$|^([-+]?\d+[,.]?([\d]?)+)$/);
	if(!str_value.match(obj_ereg)){
		if(typeof(var_data)=="object"){
			if(var_data.tagName=="OPTION"&&var_data.parentElement!=null){
				var_data.parentElement.style.backgroundColor="#FFCC66";
				var_data.parentElement.style.color="#330066";
				if(var_data.parentElement.style.display=="block") var_data.parentElement.focus();
			}else{
				var_data.style.backgroundColor="#FFCC66";
				var_data.style.color="#330066";
				if(var_data.style.display=="block") var_data.focus();
			}
		}
		boo_err=false;
	}
	return boo_err;
}
/*----------------------------------------------------------------------------------*/
/* Fonction de test d'un champs date												*/
/* nom :		checkDate															*/
/* entrées :																		*/
/*				- var_data			: variant	: objet ou chaine					*/
/* sortie :																			*/
/*				- obj_ret			: object	: date ou null si echec				*/
/*----------------------------------------------------------------------------------*/
function checkDate(){
	var arr_param=checkDate.arguments;
	var var_data=arr_param[0];
	var str_value, str_match;
	var int_year, int_month, int_day, int_hour=0, int_minute=0, int_second=0;
	var boo_err=true, obj_ret=null;
	if(typeof(var_data)=="object"){
		if(var_data.tagName=="OPTION"&&var_data.parentElement!=null){
			var_data.parentElement.style.backgroundColor="#FFFFFF";
			var_data.parentElement.style.color="#000000";
		}else{
			var_data.style.backgroundColor="#FFFFFF";
			var_data.style.color="#000000";
		}
		str_value=var_data.value;
	}else str_value=var_data;
	var obj_ereg=new RegExp("^(\\d{1,4})([/-]{1})(\\d{1,2})([/-]{1})(\\d{1,4})([ ]{1}(\\d{1,2})[:]{1}(\\d{1,2})([:]{1}(\\d{1,2}))?)?$", "gim");
	var obj_match=obj_ereg.exec(str_value);
	if(obj_match!=null){
		if(!(obj_match[1].length>2&&obj_match[5].length>2)){
			int_day=((obj_match[5].length>2?obj_match[1]:obj_match[5])*1);
			int_month=(obj_match[3]*1);
			int_year=((obj_match[1].length>2?obj_match[1]:obj_match[5])*1);
			int_hour=((obj_match.length>6?obj_match[7]:0)*1);
			int_hour=((isNaN(int_hour)?0:int_hour)*1);
			int_minute=((obj_match.length>7?obj_match[8]:0)*1);
			int_minute=((isNaN(int_minute)?0:int_minute)*1);
			int_second=((obj_match.length>9?obj_match[10]:0)*1);
			int_second=((isNaN(int_second)?0:int_second)*1);
			var obj_date=new Date(int_year, (int_month-1), int_day, int_hour, int_minute, int_second);
			if((obj_date.getDate()*1)+"/"+((obj_date.getMonth()*1)+1)+"/"+(obj_date.getFullYear()*1)+" "+(obj_date.getHours()*1)+":"+(obj_date.getMinutes()*1)+":"+(obj_date.getSeconds()*1)==int_day+"/"+int_month+"/"+int_year+" "+int_hour+":"+int_minute+":"+int_second) obj_ret=obj_date;
		}
	}
	if(boo_err){
		if(typeof(var_data)=="object"){
			if(var_data.tagName=="OPTION"&&var_data.parentElement!=null){
				var_data.parentElement.style.backgroundColor="#FFCC66";
				var_data.parentElement.style.color="#330066";
				if(var_data.parentElement.style.display=="block") var_data.parentElement.focus();
			}else{
				var_data.style.backgroundColor="#FFCC66";
				var_data.style.color="#330066";
				if(var_data.style.display=="block") var_data.focus();
			}
		}
	}
	return obj_ret;
}
/*----------------------------------------------------------------------------------*/
/* Fonction de test les limite d'un champs (numeric ou nb caractères)				*/
/* nom :		isOutOfBound														*/
/* entrées :																		*/
/*				- var_data			: variant	: objet ou chaine					*/
/*				- str_min			: integer	: minimum							*/
/*				- str_max			: integer	: maximum							*/
/*				- [boo_istext]		: boolean	: false pour nb de car ou true		*/
/*				- [boo_err]			: boolean	: etat si success					*/
/* sortie :																			*/
/*				- boo_err			: boolean	: etat ou false si echec			*/
/*----------------------------------------------------------------------------------*/
function isOutOfBound(){
	var arr_param=isOutOfBound.arguments;
	var obj_refdate, obj_date;
	var var_data=arr_param[0];
	var str_min=arr_param[1], str_max=arr_param[2];
	var int_year, int_month, int_day, int_hour=0, int_minute=0, int_second=0, int_refyear, int_refmonth, int_refday, int_refhour=0, int_refminute=0, int_refsecond=0;
	var boo_istext=(arr_param.length>3?arr_param[3]:true), boo_err=(arr_param.length>4?arr_param[4]:false);
	var str_value="";
	if(typeof(var_data)=="object"){
		if(var_data.tagName=="OPTION"&&var_data.parentElement!=null){
			var_data.parentElement.style.backgroundColor="#FFFFFF";
			var_data.parentElement.style.color="#000000";
		}else{
			var_data.style.backgroundColor="#FFFFFF";
			var_data.style.color="#000000";
		}
		str_value=var_data.value;
	}else str_value=var_data;
	if(boo_istext){
		if(str_min!="") if(str_value.length<(str_min*1)) boo_err=true;
		if(str_max!="") if(str_value.length>(str_max*1)) boo_err=true;
	}else{
		if(str_min!=""){
			if(isNumeric(str_min)&&(str_value*1)<(str_min*1)) boo_err=true;
			else{
				obj_refdate=checkDate(str_min);
				obj_date=checkDate(str_value);
				if(obj_refdate!=null&&obj_date!=null) if(obj_date.getTime()<obj_refdate.getTime()) boo_err=true;
			}
		}
		if(str_max!=""){
			if(isNumeric(str_max)&&(str_value*1)>(str_max*1)) boo_err=true;
			else{
				obj_refdate=checkDate(str_max);
				obj_date=checkDate(str_value);
				if(obj_refdate!=null&&obj_date!=null) if(obj_date.getTime()>obj_refdate.getTime()) boo_err=true;
			}
		}
	}
	if(boo_err){
		if(typeof(var_data)=="object"){
			if(var_data.tagName=="OPTION"&&var_data.parentElement!=null){
				var_data.parentElement.style.backgroundColor="#FFCC66";
				var_data.parentElement.style.color="#330066";
				if(var_data.parentElement.style.display=="block") var_data.parentElement.focus();
			}else{
				var_data.style.backgroundColor="#FFCC66";
				var_data.style.color="#330066";
				if(var_data.style.display=="block") var_data.focus();
			}
		}
	}
	return boo_err;
}
/*----------------------------------------------------------------------------------*/
/* Fonction de test des caractères d'un champs										*/
/* nom :		isGoodText															*/
/* entrées :																		*/
/*				- var_data			: variant	: objet ou chaine					*/
/*				- [str_accept]		: string	: expression autorisée				*/
/*				- [str_reject]		: string	: expression refusée				*/
/*				- [boo_err]			: boolean	: etat si success					*/
/* sortie :																			*/
/*				- boo_err			: boolean	: etat ou false si echec			*/
/*----------------------------------------------------------------------------------*/
function isGoodText(){
	var arr_param=isGoodText.arguments;
	var var_data=arr_param[0];
	var str_value, str_accept=(arr_param.length>1?arr_param[1]:""), str_reject=(arr_param.length>2?arr_param[2]:"");
	var boo_err=(arr_param.length>3?arr_param[3]:true);
	if(typeof(arr_param[0])=="object"){
		switch(var_data.nodeName){
			case "OPTION":
				if(var_data.parentElement!=null){
					var_data.parentElement.style.backgroundColor="#FFFFFF";
					var_data.parentElement.style.color="#675C53";
				}
				str_value=var_data.value;
				break;
			case "IFRAME":
				var_data.contentWindow.document.body.style.backgroundColor="#FFFFFF";
				var_data.contentWindow.document.body.style.color="#675C53";
				str_value=var_data.contentWindow.document.body.innerHTML;
				alert("isGoodText:"+str_value);
				break;
			default:
				var_data.style.backgroundColor="#FFFFFF";
				var_data.style.color="#675C53";
				str_value=var_data.value;
				break;
		}
	}
	var str_value=(typeof(var_data)=="object"?var_data.value:var_data);
	var boo_ret=arr_param[3];
	if(str_accept!=""){
		var obj_ereg=new RegExp(str_accept, "gim");
		if(!str_value.match(obj_ereg)) boo_ret=false;
	}
	if(str_reject!=""){
		var obj_ereg=new RegExp(str_reject, "gim");
		if(str_value.match(obj_ereg)) boo_ret=false;
	}
	if(!boo_ret&&typeof(var_data)=="object"){
		switch(var_data.nodeName){
			case "OPTION":
				var_data.parentElement.style.backgroundColor="#BED600";
				var_data.parentElement.style.color="#675C53";
				if(var_data.parentElement.style.display=="block") var_data.parentElement.focus();
				break;
			case "IFRAME":
				var_data.contentWindow.document.body.style.backgroundColor="#BED600";
				var_data.contentWindow.document.body.style.color="#675C53";
				if(var_data.style.display=="block") var_data.contentWindow.document.body.focus();
				break;
			default:
				var_data.style.backgroundColor="#BED600";
				var_data.style.color="#675C53";
				if(var_data.style.display=="block") var_data.focus();
				break;
		}
	}
	return boo_ret;
}
/*----------------------------------------------------------------------------------*/
/* Fonction de récupération du types de données										*/
/* nom :		getType																*/
/* entrées :																		*/
/*				- var_data			: variant	: objet ou chaine					*/
/* sortie :																			*/
/*				- arr_ret			: array		: tableau de type d'objets			*/
/*----------------------------------------------------------------------------------*/
function getType(){
	var arr_ret=new Array(), arr_param=getType.arguments;
	var var_data=arr_param[0];
	if(arr_param.length>0){
		if(var_data!=null){
			if(typeof(var_data)=="object"){
				if(var_data.length==null||var_data.type!=null) arr_ret[arr_ret.length]=(var_data.type!=null?var_data.type:"inconnu");
				else{
					var boo_exist=false;
					var int_cnt1=0, int_cnt2=0;
					var var_type="";
					for(int_cnt1=0;int_cnt1<var_data.length;int_cnt1++){
						var_type=var_data[int_cnt1];
						if(var_type==null) arr_ret.concat(getType(var_type));
						else{
							boo_exist=false;
							for(int_cnt2=0;int_cnt2<arr_ret.length;int_cnt2++){
								if(arr_ret[int_cnt2]==var_type.type){
									boo_exist=true;
									break;
								}
							}
							if(!boo_exist) arr_ret[arr_ret.length]=var_type.type;
						}
					}
				}
			}else arr_ret[arr_ret.length]=(typeof(var_data)!=null?typeof(var_data):"inconnu");
		}else arr_ret[arr_ret.length]="paramètre manquant";
	}else arr_ret[arr_ret.length]="paramètre manquant";
	return arr_ret;
}
/*----------------------------------------------------------------------------------*/
/* Fonction de selection de tout les objets selectionnables							*/
/* nom :		selectAll															*/
/* entrées :																		*/
/*				- var_field			: variante	: objet ou chaine					*/
/*				- [boo_select]		: boolean	: true si selectionner				*/
/* sortie :																			*/
/*----------------------------------------------------------------------------------*/
function selectAll(){
	var arr_type, arr_param=selectAll.arguments;
	var var_field=arr_param[0];
	var boo_select=(arr_param.length>1?arr_param[1]:true);
	var str_type;
	var int_cnt1, int_cnt2;
	var obj_field=(typeof(var_field)=="object"?var_field:getElement(var_field));
	if(obj_field!=null){
		if(obj_field.length>0){
			for(int_cnt1=0;int_cnt1<obj_field.length;int_cnt1++){
				arr_type=getType(obj_field[int_cnt1]);
				str_type=arr_type[arr_type.length-1];
				if(str_type=="select-multiple"||str_type=="select-one"){
					if(obj_field[int_cnt1].options.length!=null) for(int_cnt2=0;int_cnt2<obj_field[int_cnt1].options.length;int_cnt2++) obj_field[int_cnt1].options[int_cnt2].selected=boo_select;
				}else if(str_type=="checkbox") obj_field[int_cnt1].checked=boo_select;
			}
		}else{
			arr_type=getType(obj_field);
			str_type=arr_type[arr_type.length-1];
			if(str_type=="select-multiple"||str_type=="select-one"){
				if(obj_field.options.length!=null) for(int_cnt1=0;int_cnt1<obj_field.options.length;int_cnt1++) obj_field.options[int_cnt1].selected=boo_select;
			}else if(str_type=="checkbox") obj_field.checked=boo_select;
		}
	}
}
/*----------------------------------------------------------------------------------*/
/* Fonction de mise à vide de tout les champs d'un formulaire						*/
/* nom :		clearField															*/
/* entrées :																		*/
/*				- obj_frm			: object	: objet formulaire					*/
/* sortie :																			*/
/*----------------------------------------------------------------------------------*/
function clearField(){
	var arr_type, arr_param=clearField.arguments;
	var str_type;
	var int_cnt;
	var obj_field, obj_fields, obj_frm=(arr_param.length>0?arr_param[0]:null);
	if(document.getElementsByTagName&&obj_frm!=null){
		obj_fields=obj_frm.getElementsByTagName("INPUT");
		for(int_cnt=0;obj_field=obj_fields.item(int_cnt++);){
			arr_type=getType(obj_field);
			str_type=arr_type[arr_type.length - 1];
			if(str_type=="text"||str_type=="textarea"||str_type=="checkbox") obj_field.value="";
		}
		obj_fields=obj_frm.getElementsByTagName("SELECT");
		for(int_cnt=0;obj_field=obj_fields.item(int_cnt++);) obj_field.options.selectedIndex=0;
	}
}
/*----------------------------------------------------------------------------------*/
/* Fonction d'affichage/masque d'objet												*/
/* nom :		showHide															*/
/* entrées :																		*/
/*				- var_object		: variante	: objet ou nom						*/
/*				- [boo_visible]		: boolean	: état								*/
/* sortie :																			*/
/*----------------------------------------------------------------------------------*/
function showHide(){
	var arr_param=showHide.arguments;
	var var_object=arr_param[0];
	var boo_visible=(arr_param.length>1?arr_param[1]:null);
	if(typeof(var_object)!="object")var_object=getElement(var_object);
	if(var_object!=null)var_object.style.display=(boo_visible!=null?(boo_visible?"block":"none"):(var_object.style.display=="none"?"block":"none"));
}
/*----------------------------------------------------------------------------------*/
/* Fonction de récupération d'une valeur numérique d'un objet ou d'une chaine		*/
/* nom :		getNumeric															*/
/* entrées :																		*/
/*				- var_data			: object	: objet ou chaine					*/
/* sortie :																			*/
/*				- dec_ret			: decimal	: valeur numerique					*/
/*----------------------------------------------------------------------------------*/
function getNumeric(){
	var arr_param=getNumeric.arguments;
	var var_data=arr_param[0];
	var obj_range, obj_field=(typeof(var_data)=="object"?var_data:null);
	var dec_ret=0;
	var int_curpos=0;
	var str_value=(obj_field!=null?obj_field.value:var_data), str_firstcar, str_nextcar, str_lastcar;
	if(str_value.indexOf(",")>0){
		str_value=str_value.replace(",",".");
		if(obj_field!=null) obj_field.value=parseFloat(str_value);
	}
	str_firstcar=str_value.substring(0,1);
	str_nextcar=(str_value.length>1?str_value.substring(1,2):"");
	str_lastcar=str_value.substring((str_value.length-1),str_value.length);
	if(str_firstcar=="."||str_lastcar=="+"||str_lastcar=="-"||str_lastcar=="."){
		str_value=(str_firstcar=="."?"0":"")+str_value;
		int_curpos=str_value.length;
		str_value+=(str_lastcar=="+"||str_lastcar=="-"||str_lastcar=="."?"0":"");
		int_curpos-=str_value.length;
		if(obj_field!=null) obj_field.value=str_value;
	}
	if(str_firstcar=="0"&&str_nextcar!="."&&str_nextcar!=""&&obj_field!=null) obj_field.value=parseFloat(str_value);
	if(isEmpty(str_value, false)||!isNumeric(str_value, true)){
		str_value=dec_ret;
		if(obj_field!=null) obj_field.value=parseFloat(str_value);
	}
	if(int_curpos!=0&&obj_field!=null){
		obj_field.focus();
		if(boo_ie){
			obj_range=document.selection.createRange();
			obj_range.move('character', int_curpos);
			obj_range.select();
		}else{
			obj_field.selectionStart=(str_value.length+int_curpos);
			obj_field.selectionEnd=(str_value.length+int_curpos);
		}
	}
	dec_ret=str_value;
	return parseFloat(dec_ret);
}
/*----------------------------------------------------------------------------------*/
/* Fonction de surlignage d'une ligne ou d'une cellule								*/
/* nom :		surligne															*/
/* entrées :																		*/
/*				- obj_current		: object	: objet courant						*/
/*				- str_state			: string	: etat (over|out|click)				*/
/*				- str_overcolor		: string	: couleur over						*/
/*				- str_bgcolor		: string	: couleur background				*/
/*				- arr_bgcolor		: array		: couleur background par cellule	*/
/* sortie :																			*/
/*				-					: boolean	: true								*/
/*----------------------------------------------------------------------------------*/
var obj_clickobject=null;
var arr_clickbgcolor=Array();
var arr_outbgcolor=Array();
function surligne(){
	var arr_rgb, arr_param=surligne.arguments, arr_bgcolor=(arr_param.length>4?arr_param[4]:null);
	var obj_current=arr_param[0], obj_cellule=null;
	var str_state=arr_param[1], str_overcolor=(arr_param[2]==null?"#FBD84F":arr_param[2]), str_bgcolor=(arr_param[3]==null?"#FFFFFF":arr_param[3]), str_currentcolor=null, str_newcolor=null, str_rgb, str_hex="0123456789ABCDEF";
    var boo_dom=null;
	var int_cnt1, int_cnt2, int_rgb;
    if(typeof(obj_current.style)=="undefined") return false;
	if(obj_current.tagName.toLowerCase()=="tr"){
		if(str_state=="click"&&obj_clickobject!=obj_current){
			if(obj_clickobject!=null){
				obj_cellule=(typeof(document.getElementsByTagName)!="undefined"?obj_clickobject.getElementsByTagName("td"):(typeof(obj_clickobject.cells)!="undefined"?obj_clickobject.cells:false));
				boo_dom=(typeof(window.opera)=="undefined"&&typeof(obj_cellule[0].getAttribute)!="undefined");
				for(int_cnt1=0;int_cnt1<obj_cellule.length;int_cnt1++){
					if(boo_dom) obj_cellule[int_cnt1].setAttribute("bgcolor", arr_clickbgcolor[int_cnt1], 0);
					else obj_cellule[int_cnt1].style.backgroundColor=arr_clickbgcolor[int_cnt1];
				}
			}
			obj_clickobject=obj_current;
		}
		obj_cellule=(typeof(document.getElementsByTagName)!="undefined"?obj_current.getElementsByTagName("td"):(typeof(obj_current.cells)!="undefined"?obj_current.cells:false));
		boo_dom=(typeof(window.opera)=="undefined"&&typeof(obj_cellule[0].getAttribute)!="undefined");
		for(var int_cnt1=0;int_cnt1<obj_cellule.length;int_cnt1++){
			str_currentcolor=(boo_dom?obj_cellule[int_cnt1].getAttribute("bgcolor"):obj_cellule[0].style.backgroundColor);
			if(str_currentcolor.indexOf("rgb")>=0){
				str_rgb=str_currentcolor.slice(str_currentcolor.indexOf("(")+1, str_currentcolor.indexOf(")"));
				arr_rgb=str_rgb.split(",");
				str_currentcolor="#";
				for(int_cnt2=0;int_cnt2<3;int_cnt2++){
					int_rgb=arr_rgb[int_cnt2].valueOf();
					str_currentcolor+=str_hex.charAt(int_rgb/16)+str_hex.charAt(int_rgb%16);
				}
			}
			if(str_currentcolor==""||str_state=="over"&&str_overcolor!=""){
				str_newcolor=str_overcolor;
				arr_outbgcolor[int_cnt1]=str_currentcolor;
			}else if(str_state=="click"&&str_overcolor!=""){
				str_newcolor=str_overcolor;
				arr_clickbgcolor[int_cnt1]=(arr_bgcolor!=null?(int_cnt1<arr_bgcolor.length?(arr_bgcolor[int_cnt1]!=""?arr_bgcolor[int_cnt1]:str_bgcolor):str_bgcolor):str_bgcolor);
				arr_outbgcolor[int_cnt1]=str_currentcolor;
			}else if(str_currentcolor.toLowerCase()==str_overcolor.toLowerCase()&&str_state=="out") str_newcolor=arr_outbgcolor[int_cnt1];
			if(str_newcolor){
				if(boo_dom) obj_cellule[int_cnt1].setAttribute("bgcolor", str_newcolor, 0);
				else obj_cellule[int_cnt1].style.backgroundColor=str_newcolor;
			}
		}
	}else if(obj_current.tagName.toLowerCase()=="td"){
		obj_cellule=obj_current;
		boo_dom=(typeof(window.opera)=="undefined"&&typeof(obj_cellule.getAttribute)!="undefined");
		if(str_state=="click"&&obj_clickobject!=obj_current){
			if(obj_clickobject!=null){
				if(boo_dom) obj_cellule.setAttribute("bgcolor", str_bgcolor, 0);
				else obj_cellule.style.backgroundColor=str_bgcolor;
			}
			obj_clickobject=obj_current;
		}
		obj_clickobject=obj_current;
		str_currentcolor=(boo_dom?obj_cellule.getAttribute("bgcolor"):obj_cellule.style.backgroundColor);
		if(str_currentcolor.indexOf("rgb") >=0){
			str_rgb=str_currentcolor.slice(str_currentcolor.indexOf("(")+1, str_currentcolor.indexOf(")"));
			arr_rgb=str_rgb.split(",");
			str_currentcolor="#";
			for(int_cnt1=0;int_cnt1<3;int_cnt1++){
				int_rgb=arr_rgb[int_cnt1].valueOf();
				str_currentcolor+=str_hex.charAt(int_rgb/16)+str_hex.charAt(int_rgb%16);
			}
		}
		if(str_currentcolor==""||str_state=="over"&&str_overcolor!=""){
			str_newcolor=str_overcolor;
			arr_outbgcolor[0]=str_currentcolor;
		}else if(str_state=="click"&&str_overcolor!=""){
			str_newcolor=str_overcolor;
			arr_clickbgcolor[0]=str_bgcolor;
			arr_outbgcolor[0]=str_currentcolor;
		}else if(str_currentcolor.toLowerCase()==str_overcolor.toLowerCase()&&str_state=="out") str_newcolor=arr_outbgcolor[0];
		if(str_newcolor){
			if(boo_dom) obj_cellule.setAttribute("bgcolor", str_newcolor, 0);
			else obj_cellule.style.backgroundColor=str_newcolor;
		}
	}
    return true;
}


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);
		window.onfocus = function(){
			try {
				if(win.closed==false) win.focus();
			} catch (e){
				void(0);
			}
		};
//	}
}
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)
}
/*----------------------------------------------------------------------------------*/
/* Fonction de surlignage d'une ligne ou d'une cellule								*/
/* nom :		surligne															*/
/* entrées :																		*/
/*				- obj_current		: object	: objet courant						*/
/*				- str_state			: string	: etat (over|out|click)				*/
/*				- str_overcolor		: string	: couleur over						*/
/*				- str_bgcolor		: string	: couleur background				*/
/*				- arr_bgcolor		: array		: couleur background par cellule	*/
/* sortie :																			*/
/*				-					: boolean	: true								*/
/*----------------------------------------------------------------------------------*/
var obj_clickobject=null;
var arr_clickbgcolor=Array();
var arr_outbgcolor=Array();
function surligne(){
	var arr_rgb, arr_param=surligne.arguments, arr_bgcolor=(arr_param.length>4?arr_param[4]:null);
	var obj_current=arr_param[0], obj_cellule=null;
	var str_state=arr_param[1], str_overcolor=(arr_param[2]==null?"#FBD84F":arr_param[2]), str_bgcolor=(arr_param[3]==null?"#FFFFFF":arr_param[3]), str_currentcolor=null, str_newcolor=null, str_rgb, str_hex="0123456789ABCDEF";
    var boo_dom=null;
	var int_cnt1, int_cnt2, int_rgb;
    if(typeof(obj_current.style)=="undefined") return false;
	if(obj_current.tagName.toLowerCase()=="tr"){
		if(str_state=="click"&&obj_clickobject!=obj_current){
			if(obj_clickobject!=null){
				obj_cellule=(typeof(document.getElementsByTagName)!="undefined"?obj_clickobject.getElementsByTagName("td"):(typeof(obj_clickobject.cells)!="undefined"?obj_clickobject.cells:false));
				boo_dom=(typeof(window.opera)=="undefined"&&typeof(obj_cellule[0].getAttribute)!="undefined");
				for(int_cnt1=0;int_cnt1<obj_cellule.length;int_cnt1++){
					if(boo_dom) obj_cellule[int_cnt1].setAttribute("bgcolor", arr_clickbgcolor[int_cnt1], 0);
					else obj_cellule[int_cnt1].style.backgroundColor=arr_clickbgcolor[int_cnt1];
				}
			}
			obj_clickobject=obj_current;
		}
		obj_cellule=(typeof(document.getElementsByTagName)!="undefined"?obj_current.getElementsByTagName("td"):(typeof(obj_current.cells)!="undefined"?obj_current.cells:false));
		boo_dom=(typeof(window.opera)=="undefined"&&typeof(obj_cellule[0].getAttribute)!="undefined");
		for(var int_cnt1=0;int_cnt1<obj_cellule.length;int_cnt1++){
			str_currentcolor=(boo_dom?obj_cellule[int_cnt1].getAttribute("bgcolor"):obj_cellule[0].style.backgroundColor);
			if(str_currentcolor.indexOf("rgb")>=0){
				str_rgb=str_currentcolor.slice(str_currentcolor.indexOf("(")+1, str_currentcolor.indexOf(")"));
				arr_rgb=str_rgb.split(",");
				str_currentcolor="#";
				for(int_cnt2=0;int_cnt2<3;int_cnt2++){
					int_rgb=arr_rgb[int_cnt2].valueOf();
					str_currentcolor+=str_hex.charAt(int_rgb/16)+str_hex.charAt(int_rgb%16);
				}
			}
			if(str_currentcolor==""||str_state=="over"&&str_overcolor!=""){
				str_newcolor=str_overcolor;
				arr_outbgcolor[int_cnt1]=str_currentcolor;
			}else if(str_state=="click"&&str_overcolor!=""){
				str_newcolor=str_overcolor;
				arr_clickbgcolor[int_cnt1]=(arr_bgcolor!=null?(int_cnt1<arr_bgcolor.length?(arr_bgcolor[int_cnt1]!=""?arr_bgcolor[int_cnt1]:str_bgcolor):str_bgcolor):str_bgcolor);
				arr_outbgcolor[int_cnt1]=str_currentcolor;
			}else if(str_currentcolor.toLowerCase()==str_overcolor.toLowerCase()&&str_state=="out") str_newcolor=arr_outbgcolor[int_cnt1];
			if(str_newcolor){
				if(boo_dom) obj_cellule[int_cnt1].setAttribute("bgcolor", str_newcolor, 0);
				else obj_cellule[int_cnt1].style.backgroundColor=str_newcolor;
			}
		}
	}else if(obj_current.tagName.toLowerCase()=="td"){
		obj_cellule=obj_current;
		boo_dom=(typeof(window.opera)=="undefined"&&typeof(obj_cellule.getAttribute)!="undefined");
		if(str_state=="click"&&obj_clickobject!=obj_current){
			if(obj_clickobject!=null){
				if(boo_dom) obj_cellule.setAttribute("bgcolor", str_bgcolor, 0);
				else obj_cellule.style.backgroundColor=str_bgcolor;
			}
			obj_clickobject=obj_current;
		}
		obj_clickobject=obj_current;
		str_currentcolor=(boo_dom?obj_cellule.getAttribute("bgcolor"):obj_cellule.style.backgroundColor);
		if(str_currentcolor.indexOf("rgb") >=0){
			str_rgb=str_currentcolor.slice(str_currentcolor.indexOf("(")+1, str_currentcolor.indexOf(")"));
			arr_rgb=str_rgb.split(",");
			str_currentcolor="#";
			for(int_cnt1=0;int_cnt1<3;int_cnt1++){
				int_rgb=arr_rgb[int_cnt1].valueOf();
				str_currentcolor+=str_hex.charAt(int_rgb/16)+str_hex.charAt(int_rgb%16);
			}
		}
		if(str_currentcolor==""||str_state=="over"&&str_overcolor!=""){
			str_newcolor=str_overcolor;
			arr_outbgcolor[0]=str_currentcolor;
		}else if(str_state=="click"&&str_overcolor!=""){
			str_newcolor=str_overcolor;
			arr_clickbgcolor[0]=str_bgcolor;
			arr_outbgcolor[0]=str_currentcolor;
		}else if(str_currentcolor.toLowerCase()==str_overcolor.toLowerCase()&&str_state=="out") str_newcolor=arr_outbgcolor[0];
		if(str_newcolor){
			if(boo_dom) obj_cellule.setAttribute("bgcolor", str_newcolor, 0);
			else obj_cellule.style.backgroundColor=str_newcolor;
		}
	}
    return true;
}
function verifiermail(mail) {
  if ((mail.indexOf("@")>=0)&&(mail.indexOf(".")>=0)) {
	 return (true); 
  } else {
	 return (false);
  }
}

function verif_email(email) {
   var reg = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]{2,}[.][a-zA-Z]{2,6}$/
   return (reg.exec(email)!=null)
}

function Rpos(o,p){
	document.getElementById(o).style.left =p;
}
function showHide2(){
	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 EmptyField(obj){
	if (obj.value=='Mots clefs') obj.value=''
}
function VSearch(obj){
	var vFR_FULLTEXT_CONTENU=Trim(eval('document.Fsearch'+obj+'.FR_FULLTEXT_CONTENU'+obj+'.value'))
	if (vFR_FULLTEXT_CONTENU.length<3){
		alert('La recherche est autorisée sur un champs de 3 caractères ou plus !')
		eval('document.Fsearch'+obj+'.FR_FULLTEXT_CONTENU'+obj+'.focus()');
		return (false);
	}
	return (true);
}
var Cfield=''
function FieldBcolor(obj){
	if (Cfield!='') document.getElementById(Cfield).style.backgroundColor='#ffffff'
	obj.style.backgroundColor='#fee6e6';
	Cfield=obj.name;
}
function EmptyDate(obj){
	if (obj.value=='JJ/MM/AAAA') obj.value=''
}
function Search(){
	var vdate1	=Trim(document.FRM_AUTH.DATE1.value);
	var vdate2	=Trim(document.FRM_AUTH.DATE2.value);
	if (vdate1=='JJ/MM/AAAA') vdate1=''
	if (vdate2=='JJ/MM/AAAA') vdate2=''	
	if (!IsDate(vdate1,'N')){
		alert('Date incorrecte !');
		document.FRM_AUTH.DATE1.focus();
		return(false);
	}
	if (!IsDate(vdate2,'N')){
		alert('Date incorrecte !');
		document.FRM_AUTH.DATE2.focus();
		return(false);
	}
	document.FRM_AUTH.DATE1.value	=vdate1;
	document.FRM_AUTH.DATE2.value	=vdate2;
	document.FRM_AUTH.action		='http://www.http://geroscopie.fr/result.asp';
	document.FRM_AUTH.submit();
}
function NL(){
	var NLquotidien	=0;
	var NLhebdo		=0;
	var vok			=1;
	if (document.FRM_AUTH.quotidien.checked) NLquotidien=1
	if (document.FRM_AUTH.hebdo.checked) NLhebdo=1	
	var vemail	=Trim(document.FRM_AUTH.email.value);
	if (NLquotidien+NLhebdo==0){
		alert('Sélectionnez la newsletter Quotidienne et/ou Hebdomadaire !');
		document.FRM_AUTH.quotidien.focus();
		vok=0;
	}else{
		if (vemail==''){
			alert('Saisissez votre email !');
			document.FRM_AUTH.email.focus();
			vok=0;
		}else{
			if (!verifiermail(vemail)){
				alert('Email erroné!');
				document.FRM_AUTH.email.focus();
				vok=0;
			}
		}
	}
	if (vok==1) ModalWin('./inscription.asp?NLq='+NLquotidien+'&NLh='+NLhebdo+'&email='+vemail,350,180,'');
}

var str_current_act_div
function goBasket(int_act, int_id_product, str_act_div, Basket, str_bt){
	var date_du_jour = new Date();
	str_current_act_div=str_act_div;
	if (int_act==2) if(!confirm('Voulez-vous vider votre pannier ?'))return false;
	var int_opt1 = document.getElementById('opt1_'+int_id_product)?(document.getElementById('opt1_'+int_id_product).checked?1:0):0;
	var int_opt2 = document.getElementById('opt2_'+int_id_product)?(document.getElementById('opt2_'+int_id_product).checked?1:0):0;
	var int_opt3 = document.getElementById('opt3_'+int_id_product)?(document.getElementById('opt3_'+int_id_product).checked?1:0):0;
	var int_qte  = document.getElementById('qte_'+int_id_product)?document.getElementById('qte_'+int_id_product).value:0;
	
	new Ajax_request('aj'+ Basket +'_pannier.asp',{method:'get',params:'FR_TIMER='+ date_du_jour +'&FR_ACTION='+ int_act +'&FR_ID_PRODUCT=' + int_id_product + '&FR_OPT1=' + int_opt1+ '&FR_OPT2=' + int_opt2+ '&FR_OPT3=' + int_opt3 + '&FR_QUANTITE=' + int_qte + '&FR_BUTTON=' + str_bt ,onSuccess:Aff});
}
function Aff(xhr){
	var str_c=xhr.responseText;
	str_c=str_c.replace(/&lt;/g,'<').replace(/&gt;/g,'>').replace(/&quot;/g,'"');
	document.getElementById(str_current_act_div).innerHTML =str_c;
}

/*----------------------------------------------------------------------------------*/
/*------------------------------ GESTION DE LA PUB ---------------------------------*/
/*----------------------------------------------------------------------------------*/
var my_key = 0
function startTimer(key, int_id_rub) {

	var timer = document.getElementById('FR_PUB_' + key).value;
	if (timer != 0) {
		document.getElementById('FR_PUB_' + key).value = timer - 1;

		if (document.getElementById('FR_PUB_' + key).value == 1) {
			document.getElementById('FR_PUB_' + key).value = 10;
			my_key = key;
			AjaxSendSimple('ajax/aj_pub.asp', 'id_rub='+ int_id_rub+'&pub_key=' + key, loadPub)
			setTimeout("startTimer('" + key + "',"+int_id_rub +")", 1000);
		} else {
			setTimeout("startTimer('" + key + "',"+int_id_rub +")", 1000);
		}
	}
}

function loadPub(xhr) {
	oDiv = document.getElementById('DIV_PUB_' + my_key)
	str = xhr.responseText
	oDiv.innerHTML = str

	if (document.getElementById('FL_PUB_' + my_key)) {WriteFlPUB();}
}
/*----------------------------------------------------------------------------------*/




