function evalGooLuxID(uid, alarm) {
	if(uid === "GooLux ID" || uid === "" || uid.length != 6 || isNaN(uid)) {
		var idr = "ungültige GooLux ID";
		if(alarm === true) alert("FEHLER: " + idr);
		return idr;
	}
}

function evalUserPass(ups, alarm) {
	if(ups === "Passwort" || ups === "") {
		var psr = "ungültiges Passwort";
		if(alarm === true) alert("FEHLER: " + psr);
		return psr;
	}
}

function evalLogin() {
	var idr = evalGooLuxID(document.getElementById('user_id').value, false); if(!idr) idr = "";
	var psr = evalUserPass(document.getElementById('password').value, false); if(!psr) psr = "";

	if(idr != "" || psr != "") {
		alert("FEHLER: " + idr + (idr != "" && psr != "" ? " und " : "") + psr);
		return false;
	} else {
		return true;
	}
}







var cfg = new Array();
cfg['user_id']	= /(^[\d]{6}$)/;
cfg['password']	= /[\w\d\,\.\;\:\-\_]+/;
cfg['name']		= /[\w\d\-\.\+]/gi;
cfg['phone']	= /^(\(?\+?[0-9]*\)?)?[0-9_\- \(\)]*$/; //^\(\d{1,2}(\s\d{1,2}){1,2}\)\s(\d{1,2}(\s\d{1,2}){1,2})((-(\d{1,4})){0,1})$
cfg['email']	= /\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,6}\b/gi;
cfg['year']		= /(^[\d]{4}$)/;
cfg['title']	= /(male|female)/;

function checkThis(target) {
	for(i in cfg) {
		var check = new RegExp(i, 'gi');
		if(check.test(target.name)) var pattern = cfg[target.name];
	}

	var value = target.value.replace(/^[ \s]+|[ \s]+$/g, "");
	target.value = value;
	if(value.length  === 0) return false;
	if(pattern) return pattern.test(value);
}

function validate(my_form) {
	for(my_element in my_form) {
		var my_id = my_form.elements[my_element].id;
		var trigger = new RegExp("validate", "g");
		if(trigger.test(my_form.elements[my_element].className)) {
			var my_label = document.getElementById(my_id + "_label");
			if(checkThis(my_form.elements[my_element]) === false) {
				my_form.elements[my_element].focus();
				alert("FEHLER: " + (!my_label ? "Eingabe" : my_label.innerHTML.replace(/(:|\*)/g, "")) + " ungültig");
				return false;
				break;
			}
		}
	}
}