	// form_checker() schaut, ob alle benoetigten Felder ausgefuellt wurden
	// Zuerst wird die ID des Formulars angegeben
	// benoetigte Felder werden danach aufgefuehrt (zB 'Name'). Anzahl ist nicht relevant
	// DAMIT DIESES SCRIPT FEHLERFREI LÄUFT, MUSS AUSSERDEM EIN ELEMENT NAMENS "info_" + formid bestehen (display: none;). 
	// Es kann genutzt werden um Fehlermeldungen anzuzeigen
	// Soll ein Info-Feld bei Aufruf immer angezeigt werden, muss es die ID "info_always_" + formid bekommen. Dies ist optional.
	// Der Unterschied zu form_submitter() besteht darin, dass dieses Script nichts oder false ausgibt, und das formular nicht abgeschickt.
	// Geschrieben für Verwendung in "Onsubmit"-Event
			
	function form_checker(formid, mode, inputs){
		var anz = arguments.length;
		var el;
		var filled = true;
		
		if(anz > 0){
			while(anz > 1){
				anz--;
				
				if(document.getElementById(arguments[anz]) != null){
					el = document.getElementById(arguments[anz]);
				} else {
					if(document.getElementById(arguments[anz] + "_0") != null){
						several_cb = true;
					}
				}
				// to debugg:
				// alert(arguments[anz] + ": " + el);
				
				if(several_cb == false){
					if(el.type == 'checkbox'){
						if(el.checked != null && el.checked == false){
							if(!checkloop(formid, arguments[anz])){
								filled = false;
								// alert('CHECKLOOP FALSE!');
							}
						}
					}
				} else {
					var i = 0;
					var el;
					
					if(filled == true){
						filled = false;
						while(document.getElementById(arguments[anz] + "_" + i) != null && i < 100 && filled != true){
							el = document.getElementById(arguments[anz] + "_" + i);
							if (el.type == 'checkbox') {
								// DEBUG: alert(document.getElementById(arguments[anz] + "_" + i).checked);
								if (el.checked != null && el.checked == true) {
										filled = true;
								}
							}
							i++;
						}
					}
				}
				
				if(el.type == 'text'){
					if(el.value == '' || el.value == '-' || el.value == ' ' || el.value == '&nbsp;'){
						filled = false;
					}
				}
			}
		} else {
			filled = false;
		}
		
		if(document.getElementById('info_always_'+formid) != null && document.getElementById('') != 'undefined'){
			id = 'info_always_' + formid;
			show_info(id);
		}
		
		if(filled != true){
			id = "info_" + formid;
			show_info(id);
			return false;
		}
	}
	
	function show_info(id, mode){
		var p = "block";
		if(mode == '0'){
			p = "none";
		} 
		
		if(document.getElementById(id) != null){
			document.getElementById(id).style.display = p;
			document.getElementById(id).display = p;
		} else {
			if(parent.document.getElementById(id) != null){
				parent.document.getElementById(id).style.display = p;
				parent.document.getElementById(id).display = p;
			} else {
				top.documet.getElementById(id).style.display = p;
				top.document.getElementById(id).display = p;
			}
		}
	}

