

//---------------- Variables ----------------------------------------------


// ---------------- Functions --------------------------------------------- 
  
  function MakeValArray(valstring){
	
	if(valstring!=""){
	var tmpValarray = valstring.split(";;");
	return tmpValarray;
  }
  }
 
function ControlValidation(){
	var breakloop = false;
	if (Valarray!=null){
		for (i = 0;i < Valarray.length;i++){
			if (breakloop){
				break;
			}else{
				var valstringarray = Valarray[i].split(";|");
				
				var objname = valstringarray[0];
				var valitemstring = valstringarray[1];
				var tmpvalitemarray = valitemstring.split(";");
				
				for (q = 0;q < tmpvalitemarray.length;q++){
					if (breakloop){
						break;
					}else{
						var valitem = tmpvalitemarray[q].split(",");
						var valtype = valitem[0];
						
						switch (valtype) {
							case "noempty":
								if(valnoempty(objname)){
									breakloop=true;
									alert(valitem[1]);
								}
								break;
							case "maxlength":
								if(valmaxlength(objname,valitem[2])){
									breakloop=true;
									alert(valitem[1]);
								}
								break;
							case "minlength":
								if(valminlength(objname,valitem[2])){
									breakloop=true;
									alert(valitem[1]);
								}
								break;
							case "length":
								if(vallength(objname,valitem[2])){
									breakloop=true;
									alert(valitem[1]);
								}
								break;
							case "email":
							
								if(valemail(objname)){
									breakloop=true;
									alert(valitem[1]);
								}
								break;
								
								
						}
					}
				}
			}
		}
	}
	//Retunerar true om ett objekt inte stämmer med valideringen.
	return breakloop;
}
  
  //--------------- Validatefunctions ----------------------------
  
  function valnoempty(controlname){
	var defobj = findobject(controlname);
	if (defobj!=null){
		if (defobj.value==""){
			defobj.focus();
			return true;
		}else{
			return false;
		}
		}
		}
function valmaxlength(controlname,maxlength){
	var defobj = findobject(controlname);
	if (defobj!=null){
		var tmptext = defobj.value;
		
		if (tmptext.length > maxlength ){
			defobj.focus();
			return true;
		}else{
			return false;
		}	
	}
  }	

function valminlength(controlname,minlength){
	var defobj = findobject(controlname);
	if (defobj!=null){
		var tmptext = defobj.value;
		
		if (tmptext.length < minlength ){
			defobj.focus();
			return true;
		}else{
			return false;
		}	
	}
  }	

function vallength(controlname,length){
	var defobj = findobject(controlname);
	if (defobj!=null){
		var tmptext = defobj.value;
		
		if (tmptext.length!= length ){
			defobj.focus();
			return true;
		}else{
			return false;
		}	
	}
  }	

function valemail(controlname){
var defobj = findobject(controlname);
	if (defobj!=null){
		var tmptext = defobj.value;
		var regEmail = new RegExp("^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]{2,}[.][a-zA-Z]{2,4}$");
		var email;
			if (!regEmail.test(tmptext)){
			defobj.focus();
			return true;
		}else{
			return false;
		}
	}
  }	








  
  
