/*
Die Parameter werden in Dreiergruppen Ã¼bergeben (feldname, prÃ¼fart, ausgabe)
1. Param name des Input-Elementes
2. Param Nach was soll geprÃ¼ft werden
			'str' ist Eingabe gemacht?
			'num' ist Eingabe eine Zahl?
			'email' ist Eingabe eine gÃ¼ltige Emailadresse?
			'radio' wurde etwas ausgewÃ¤hlt?
3. Param So wird das Feld in der Ausgabe genannt
 
Funktionsaufruf:
..onclick="if(validate(nachname,'str', 'Name', email,'email', 'Email')) submit();
*/

function datpruef(datum) {
	Datumstring = datum.split("."); 
	if (Datumstring.length != 3 ) 	{
		return false;
	}
	else if (isNaN(Datumstring[0]) ||isNaN(Datumstring[1])||isNaN(Datumstring[2]))	{
		return false;
	}
	else
		return true;
}

function mailpruef(email) {
 	p = email.indexOf('@');
    if (p < 1 || p == (email.length-1))	
		return false;
	else
		return true;
}

function validate()	{
	var	args = validate.arguments;
	var errors = "";
	var foc = "";
	for (i = 0; i < (args.length-2); i += 3) {
		if(args[i+1] == 'str' && args[i].value == "")	{
			errors += args[i+2] + " muss ausgefüllt werden.\n"
			if(foc == "") foc = args[i];
		}
		if(args[i+1] == 'num' && (isNaN(args[i].value) || args[i].value == ""))	{
			errors += args[i+2] + " muss eine Zahl enthalten.\n"
			if(foc == "") foc = args[i];			
		}
		if(args[i+1] == 'email' &&  (!mailpruef(args[i].value) || args[i].value == ""))		{
			errors += args[i+2] + " bitte gültige Emailadresse.\n"
			if(foc == "") foc = args[i];			
		}
		if(args[i+1] == 'date' &&  (!datpruef(args[i].value) || args[i].value == ""))		{
			errors += args[i+2] + " bitte gültiges Datum.\n"
			if(foc == "") foc = args[i];			
		}
		if(args[i+1] == 'radio')	{
			var ok = 0;
			for(j = 0; j < args[i].length; j++)	{
				if(args[i][j].checked)
					ok = 1;
			}
			if(ok == 0)
				errors += args[i+2] + " bitte Auswahl treffen.\n"
			if(foc == "") foc = args[i][0];			
		}
	}
	if (errors == "")
		return true;
	else	{
		alert(errors);
		foc.focus();
		return false;
	}
}
