		function EASError(){
			this.err = new Array();
			this.toString = EASErrorToString;
		}
		EASError.prototype.Add = function(er){
			this.err.push(er);
		}
		
		function EASErrorToString(){
			var l = this.err.length;
			var s="";
			for (i=0;i<l;i++){
				s += "\t"+this.err[i]+"\n";
			}
			return s;
		}
				
		EASError.prototype.Length = function(){
			return this.err.length;
		}

		function Check_EAS_DebNrX(arg,err,warning){
			if (arg.value==""){
				err.Add("The debnr can not be null");
				return;				
			}		
			var i = parseInt(arg.value)
			if (i<0){
				err.Add("The debnr must be a positive value");
			
			
			}	
		}

		function EASARGS(form){
			this.form = form;
		}
		
		EASARGS.prototype.Value = function(argname){
			var v="";
			try{
				v= this.form.elements(argname,0).value;
			}catch(ex){}
			return v;
		}	


		function EASCheckForm_PLUSX(args,err,warning){
			warning.Add("EASCheckForm_PLUS" + args.Value("eas:Debnr"));
		
		
		}
		function EASCheckMandatory(arg,err,display,lg){
			try{
				if (arg.value=='') {
					var message=display+" ";
					if (lg=='F') {message += " est obligatoire";}
					if (lg=='E') {message += " is mandatory";}
					if (lg=='N') {message += " is verplicht";}
					err.Add(message);
				}
			}catch(e){}
		}


		function msg_error(lg){
			if (lg=='F') {return "ERREUR";}
			if (lg=='E') {return "ERROR";}
			if (lg=='N') {return "ERROR";}
		}
		function msg_warning(lg){
			if (lg=='F') {return "AVERTISSEMENT";}
			if (lg=='E') {return "WARNING";}
			if (lg=='N') {return "VERWITTING";}
		}
		function msg_continue(lg){
			if (lg=='F') {return "Voulez-vous continuer ?";}
			if (lg=='E') {return "Do you want to submit this form";}
			if (lg=='N') {return "Doorgaan ?";}
		}

		function EASCheckForm(form,lg){
			var err = new EASError();
			var warning = new EASError();
			// Appel d'une fonction Check pour les contrôles ayant une fonction onsubmiteas définie
			var l = form.elements.length;	
			for (i=0;i<l;i++){
				var fctname = form.elements(i).onsubmiteas;
				
				if(fctname!="undefined"){
					try{
						var n = document.forms.easreq.item(i).name
						if (n.search(/begin$/g)==-1){
							eval(fctname+"(document.forms.easreq.item(i),err,warning);");
						}else{
							var ne = n.replace(/begin/g,"end");
							eval(fctname+"(document.forms.easreq.item(n),document.forms.easreq.item(ne),err,warning);");
						}
					}catch(e){}
				}



			}
			// Appel d'une fonction Check si la forme a une fonction onsubmiteas définie
			var args = new EASARGS(form);
			var fctname=form.onsubmiteas;
			if ((fctname !="undefined") && (fctname !=undefined)){
				try{
					eval(fctname+"(args,err,warning);");
				}catch(e){}
			}
			
			// Affichage de message d'erreur
			if(err.Length() || warning.Length()) {
				var s = "";//"Form invalid \n";
				if (err.Length()){
					s += "\n"+msg_error(lg)+":\n"+err.toString();
				}
				if (warning.Length()){
					s += "\n"+msg_warning(lg)+":\n"+warning.toString();
				}
				if (err.Length()){
					alert(s);
					event.returnValue=false;
				}else{
					if (warning.Length()){
						if(!confirm(s+"\n\n"+msg_continue(lg))) event.returnValue=false;
					}
				}
			}
		}

		function ConfirmDelete(){
			if (!confirm("Are you sure you want to delete the selected items")) event.returnValue=false;
		}
