﻿// JavaScript Document

function checkForm() {
	var args = checkForm.arguments;
	var frm = args[0];
	var elemID;
	var cls, cls2;
	var foundError = false;
	var isEmpty = false;
	//alert("[ FUNCTION checkForm ]: frm="+frm);
	
	for(var i=0; i<document.forms[frm].elements.length; i++) {
		elemID = document.forms[frm].elements[i].id;
		if(elemID.length>0 && document.getElementById(elemID).className) {
			//alert(elemID+"; exists? -> "+document.getElementById(elemID)+"; className="+document.getElementById(elemID).className);
			isEmpty = false;
			if(document.getElementById(elemID).className.indexOf("Pflicht")!=-1) {
				switch(document.forms[frm].elements[i].type) {
					case "text":
						if(document.forms[frm].elements[i].value.length==0) { isEmpty = true; }
						break;
					case "select-one":
						//alert(document.forms[frm].elements[i].name+"="+document.forms[frm].elements[i].value+"; len="+val.length+"; type="+document.forms[frm].elements[i].type);
						if(document.forms[frm].elements[i].value.length==0) { isEmpty = true; }
						break;
					case "select-multiple":
						if(document.forms[frm].elements[i].value.length==0) { isEmpty = true; }
						break;
					case "radio":
						break;
					case "checkbox":
						//alert("checkbox: elemID="+elemID+"; checked="+document.forms[frm].elements[i].checked);
						if(!document.forms[frm].elements[i].checked) { isEmpty = true; }
						break;
				}
				
				if(isEmpty) {
					//leeres Feld
					cls = document.getElementById(elemID).className;
					if(cls.indexOf("PflichtError")==-1) {
						cls2 = cls.replace(/Pflicht/gi,"PflichtError");
						document.getElementById(elemID).className = cls2;
					}
					foundError = true;
				}
				else {
					cls = document.getElementById(elemID).className;
					cls2 = cls.replace(/PflichtError/gi,"Pflicht");
					document.getElementById(elemID).className = cls2;
				}
			}
		}
	}
	return !foundError;
}
