function valid_form(f,s)
{
	if (!DDXEMail(f.email,"Bitte geben Sie eine vollständige e-mail Adresse mit @ und . ein!")) {
		f.email.focus();
		return false;
	}
	
	if ( f.email2.value != f.email.value ) {
		alert("Felder stimmen nicht überein! Bitte geben Sie Ihre e-mail Adresse nochmals als Bestätigung ein!");
		f.email2.focus();
		return false;
	}
	
	if ( (f.Anrede.value != "Herr") && (f.Anrede.value != "Frau") ) {
		alert("Bitte geben Sie Ihre Anrede ein!");
		f.Anrede.focus();
		return false;
	}	
	
	if (!DDXLen(f.Vorname,1,100,"Bitte geben Sie Ihren Vornamen ein!")) {
		f.Vorname.focus();
		return false;
	}

	if (!DDXLen(f.Nachname,1,100,"Bitte geben Sie Ihren Nachnamen ein!")) {
		f.Nachname.focus();
		return false;
	}
	
	if (!DDXLen(f.Strasse,1,100,"Bitte geben Sie Ihre Straße ein!")) {
		f.Strasse.focus();
		return false;
	}

	if (!DDXLen(f.Hausnummer,1,100,"Bitte geben Sie Ihre Hausnummer ein!")) {
		f.Hausnummer.focus();
		return false;
	}

	if (!DDXLen(f.PLZ,1,7,"Bitte geben Sie Ihre PLZ ein!")) {
		f.PLZ.focus();
		return false;
	}

	if (!DDXLen(f.Ort,1,100,"Bitte geben Sie Ihren Ort ein!")) {
		f.Ort.focus();
		return false;
	}
	
	if (!DDXLen(f.Geburtsdatum,1,100,"Bitte geben Sie Ihr Geburtsdatum ein (tt.mm.jjjj)!")) {
		f.Geburtsdatum.focus();
		return false;
	}
	
	if (!DDXLen(f.Sicherheitscode,1,100,"Bitte geben Sie den Sicherheitscode ein!")) {
		f.Sicherheitscode.focus();
		return false;
	}
	
	s.disabled = true;
	return true;
}

function DDXLen(control,minLen,maxLen,errmsg)
{
	var s = control.value;
	if ( s.length < minLen || s.length > maxLen ) 
	{
		self.status=errmsg;
		control.focus();
		control.select();
		alert(errmsg);
		return false;
	}
	
	return true;
}
	
function DDXInt(control,min,max,errmsg)
{
	var s = control.value;
	
	if ( isNaN (s,10)  )
	{
		self.status=errmsg;
		control.focus();
		control.select();
		alert(errmsg);
		return false;
	}
	
	if ( s.valueOf() < min || s.valueOf() > max )
	{
		self.status=errmsg;
		control.focus();
		control.select();
		alert(errmsg);
		return false;
	}
	return true;
}

function DDXEMail(control, errmsg)
{
	var s = control.value;
	var rE = /(\w)+(\w\.)*@.*\.\w+/;
	var mArr = s.match(rE);
	if (mArr == null) 
	{
		self.status=errmsg;
		control.focus();
		control.select();
		alert(errmsg);
		return false;
	}	

	return true;		
}

function DDXRExp(control, rE, errmsg)
{
	var s = control.value;
	var mArr = s.match(rE);
	if (mArr == null) 
	{
		self.status=errmsg;
		control.focus();
		control.select();
		alert(errmsg);
		return false;
	}	

	return true;		
}