 
 
 var valid_rule=new Array();
 var firstErrorElement=null;

function validateRegexp(formular, feld, errormessage, regexp) { 
if(!regexp.test(feld)) {
  document.getElementById(formular+"_errormessage").style.visibility = "visible";
   document.getElementById(formular+"_errormessage").firstChild.data = errormessage;
  return false;

} else {
  document.getElementById(formular+"_errormessage").style.visibility  = "hidden";
   return true;

}
}


function validateEmail(formular, feld, errormessage) { 
 regexp=/^[a-zA-Z].+@.{2,}\..{2,}$/;
if(!regexp.test(feld)) {
  document.getElementById(formular+"_errormessage").style.visibility = "visible";
   document.getElementById(formular+"_errormessage").firstChild.data = errormessage;
  return false;

} else {
  document.getElementById(formular+"_errormessage").style.visibility  = "hidden";
   return true;

}
}




 


function checkInput(formular){
   myformular=document.getElementById(formular);
   ok=true;
   firstErrorElement=null;
	for(i=0;ok && i<myformular.elements.length;i++){
	  	input_field=myformular.elements[i]; 
		if(input_field.getAttribute('validate')){
		var validation_rule;
		switch (input_field.getAttribute('validate'))
		 {
		 	case "email":
			validation_rule="validateEmail('"+formular+"','"+input_field.value+"','"+ 	input_field.getAttribute('errormessage')+"')";
			break;
			case "required":
			 validation_rule=
				"validateRegexp('"+formular+"','"+input_field.value+"','"+ input_field.getAttribute('errormessage')+"', /^.{"+
				(input_field.getAttribute('required_from')?input_field.getAttribute('required_from'):1)+
				","+
				(input_field.getAttribute('required_to')?input_field.getAttribute('required_to'):"")+
				"}$/)";
				break;
				default:
		}
			
			if(validation_rule)
			ok= eval(validation_rule) && ok;
			if(!ok){
				  if(!firstErrorElement){
  					 firstErrorElement=input_field;
   				}
			}
		}
	}
	if(ok){
  		myformular.submit();
	} else {
		
		firstErrorElement.focus();
		return ok;
	}
}

function switchValidation(formular) {
		 document.formular.f_required_to.disabled=document.formular.f_required_from.disabled=
		 !document.formular.f_validate[2].checked;
		 document.formular.f_errormessage.disabled=!document.formular.f_validate[1].checked && !document.formular.f_validate[2].checked;
}