/**
 *	Function collection for form validation
 *	Copyright 2006 by DTW Fonds-Service GmbH
 *  @author	Ruediger Reinhardt <r.reinhardt@dtw-fonds.de>
 */

/*
	Variablen
*/
var popupErrors = false;

var anredeErrorString 			= "Bitte w&auml;hlen Sie eine Anredeform!";
var emailErrorString 			= "Bitte geben Sie Ihre Email-Adresse an!";
var nameErrorString 			= "Bitte geben Sie Ihren Namen an!";
var ortErrorString 				= "Bitte geben Sie Ihren Wohnort an!";
var plzErrorString 				= "Bitte geben Sie Ihre Postleitzahl an!";
var strasseErrorString 			= "Bitte geben Sie Ihre Stra&szlig;e an!";
var telefonErrorString 			= "Bitte geben Sie Ihre Telefonnummer an!";
var telefonOrEmailErrorString	= "Bitte geben Sie Ihre Telefonnummer oder Email-Adresse an!";
var vornameErrorString 			= "Bitte geben Sie Ihren Vornamen an!";
var infopaketBestaetigungErrorString    = "Bitte best&auml;tigen Sie, dass Sie ein Infopaket w&uuml;nschen!";
var rabattangebotBestaetigungErrorString    = "Bitte best&auml;tigen Sie, dass Sie ein Rabattangebot w&uuml;nschen!";


function checkTheForm() {
	return checkInfopaketForm();
}


function checkInfopaketForm() {

	/*
		lsche alle Markierungen
	*/
	document.getElementById("anrede").style.backgroundColor		= "#FFFFFF";
	document.getElementById("email").style.backgroundColor		= "#FFFFFF";
	document.getElementById("nachname").style.backgroundColor	= "#FFFFFF";
	document.getElementById("ort").style.backgroundColor		= "#FFFFFF";
	document.getElementById("plz").style.backgroundColor		= "#FFFFFF";
	document.getElementById("strasse").style.backgroundColor	= "#FFFFFF";
	document.getElementById("telefon").style.backgroundColor	= "#FFFFFF";
	document.getElementById("vorname").style.backgroundColor	= "#FFFFFF";
	document.getElementById("kontaktdaten-speichern-box").style.border = "none";

	
	/*
		pruefe ob Anrede gewaehlt
	*/
	var theAnrede	= document.getElementById("anrede");
	var anredeIsSet	= false;
	var theValue	= "";
	for (var i = 0; i < theAnrede.options.length; i++) {
		if(theAnrede.options[i].selected == true) {
			var theValue = theAnrede.options[i].value;
		}
	}
	anredeIsSet = (theValue != "") ? true : false;

	/*
		prfe ob Name angegeben wurde
	*/
	var theName		= document.getElementById("nachname");
	var nameIsSet	= (theName.value != "") ? true : false;

	/*
		prfe ob Vorname angegeben wurde
	*/
	var theVorname		= document.getElementById("vorname");
	var vornameIsSet	= (theVorname.value != "") ? true : false;


	/*
		prfe ob PLZ angegeben wurde (mit Typecheck)
	*/
	var thePLZ		= document.getElementById("plz");
	var plzIsSet	= (thePLZ.value != "") ? true : false;

	/*
		prfe ob Ort angegeben wurde
	*/
	var theOrt		= document.getElementById("ort");
	var ortIsSet	= (theOrt.value != "") ? true : false;


	/*
		prfe ob Strae angegeben wurde
	*/
	var theStrasse		= document.getElementById("strasse");
	var strasseIsSet	= (theStrasse.value != "") ? true : false;


	/*
		prfe ob Telefonnummer angegeben wurde
	*/
	var theTelefon		= document.getElementById("telefon");
	var telefonIsSet	= (theTelefon.value != "") ? true : false;
	
	
	/*
		prfe ob EMail angegeben wurde
	*/
	var mailRegExp	= /^([0-9a-zA-Z]([\-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,4})$/
	var theEmail	= document.getElementById("email");
	var emailIsSet = (theEmail.value != "" && theEmail.value != "noonehere@yahoo.com" && mailRegExp.test(theEmail.value)) ? true : false;
	
	
	var kontaktdatenSpeichernIsSet = document.getElementById("kontaktdaten_speichern").checked;
	
	
	/*
		Formulardaten OK?
	*/
	
	var result = (anredeIsSet && nameIsSet && vornameIsSet && emailIsSet && plzIsSet && ortIsSet && strasseIsSet && kontaktdatenSpeichernIsSet) ? true : false;

	{
		/* Fehlerausgabe im Dokument */
		var theOutputdiv = document.getElementById("outputdiv");
		var theErrorString = "<ul>";
		
		if(!anredeIsSet) {
			theErrorString += "<li>" + anredeErrorString + "</li>";
			document.getElementById("anrede").style.backgroundColor = "#FFE6E6";
		}

		if(!vornameIsSet) {
			theErrorString += "<li>" + vornameErrorString + "</li>";
			document.getElementById("vorname").style.backgroundColor = "#FFE6E6";
		}

		if(!nameIsSet) {
			theErrorString += "<li>" + nameErrorString + "</li>";
			document.getElementById("nachname").style.backgroundColor = "#FFE6E6";
		}

		if(!strasseIsSet) {
			theErrorString += "<li>" + strasseErrorString + "</li>";
			document.getElementById("strasse").style.backgroundColor = "#FFE6E6";
		}

		if(!plzIsSet) {
			theErrorString += "<li>" + plzErrorString + "</li>";
			document.getElementById("plz").style.backgroundColor = "#FFE6E6";
		}

		if(!ortIsSet) {
			theErrorString += "<li>" + ortErrorString + "</li>";
			document.getElementById("ort").style.backgroundColor = "#FFE6E6";
		}

		if(!emailIsSet) {
			theErrorString += "<li>" + emailErrorString + "</li>";
			document.getElementById("email").style.backgroundColor = "#FFE6E6";
		}

		if(!kontaktdatenSpeichernIsSet) {
			theErrorString += "<li>" + infopaketBestaetigungErrorString + "</li>";
			document.getElementById("kontaktdaten-speichern-box").style.border = "solid #dd0000 3px";
		}
		
		theErrorString += "</ul>";
		theOutputdiv.innerHTML = theErrorString;
		theOutputdiv.style.display = "block";
	}


	/*
		Rueckgabe
	*/
	return result;
}


function checkRabattangebotForm() {

	/*
		loesche alle Markierungen
	*/
	document.getElementById("anrede").style.backgroundColor		= "#FFFFFF";
	document.getElementById("email").style.backgroundColor		= "#FFFFFF";
	document.getElementById("nachname").style.backgroundColor	= "#FFFFFF";
	document.getElementById("ort").style.backgroundColor		= "#FFFFFF";
	document.getElementById("plz").style.backgroundColor		= "#FFFFFF";
	document.getElementById("strasse").style.backgroundColor	= "#FFFFFF";
	document.getElementById("telefon").style.backgroundColor	= "#FFFFFF";
	document.getElementById("vorname").style.backgroundColor	= "#FFFFFF";
	document.getElementById("kontaktdaten-speichern-box").style.border = "none";

	/*
		pruefe ob Anrede gewhlt
	*/
	var theAnrede	= document.getElementById("anrede");
	var anredeIsSet	= false;
	var theValue	= "";
	for (var i = 0; i < theAnrede.options.length; i++) {
		if(theAnrede.options[i].selected == true) {
			var theValue = theAnrede.options[i].value;
		}
	}
	anredeIsSet = (theValue != "") ? true : false;

	/*
		prfe ob Name angegeben wurde
	*/
	var theName		= document.getElementById("nachname");
	var nameIsSet	= (theName.value != "") ? true : false;

	/*
		prfe ob Vorname angegeben wurde
	*/
	var theVorname		= document.getElementById("vorname");
	var vornameIsSet	= (theVorname.value != "") ? true : false;


	/*
		prfe ob PLZ angegeben wurde (mit Typecheck)
	*/
	var thePLZ		= document.getElementById("plz");
	var plzIsSet	= (thePLZ.value != "") ? true : false;

	/*
		prfe ob Ort angegeben wurde
	*/
	var theOrt		= document.getElementById("ort");
	var ortIsSet	= (theOrt.value != "") ? true : false;


	/*
		prfe ob Strae angegeben wurde
	*/
	var theStrasse		= document.getElementById("strasse");
	var strasseIsSet	= (theStrasse.value != "") ? true : false;


	/*
		prfe ob Telefonnummer angegeben wurde
	*/
	var theTelefon		= document.getElementById("telefon");
	var telefonIsSet	= (theTelefon.value != "") ? true : false;
	
	
	/*
		pruefe ob EMail angegeben wurde
	*/
	var mailRegExp	= /^([0-9a-zA-Z]([\-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,4})$/
	var theEmail	= document.getElementById("email");
	var emailIsSet = (theEmail.value != "" && theEmail.value != "noonehere@yahoo.com" && mailRegExp.test(theEmail.value)) ? true : false;
	
	
	var kontaktdatenSpeichernIsSet = document.getElementById("kontaktdaten_speichern").checked;


	/*
		Formulardaten OK?
	*/
	
//	var result = (anredeIsSet && nameIsSet && vornameIsSet && emailIsSet && plzIsSet && ortIsSet && strasseIsSet) ? true : false;
	var result = (kontaktdatenSpeichernIsSet && (telefonIsSet || emailIsSet)) ? true : false;


	{
		/* Fehlerausgabe im Dokument */
		var theOutputdiv = document.getElementById("outputdiv");
		var theErrorString = "<ul>";
		
		/*
		if(!anredeIsSet) {
			theErrorString += "<li>" + anredeErrorString + "</li>";
			document.getElementById("anrede").style.backgroundColor = "#FFE6E6";
		}

		if(!vornameIsSet) {
			theErrorString += "<li>" + vornameErrorString + "</li>";
			document.getElementById("vorname").style.backgroundColor = "#FFE6E6";
		}

		if(!nameIsSet) {
			theErrorString += "<li>" + nameErrorString + "</li>";
			document.getElementById("nachname").style.backgroundColor = "#FFE6E6";
		}

		if(!strasseIsSet) {
			theErrorString += "<li>" + strasseErrorString + "</li>";
			document.getElementById("strasse").style.backgroundColor = "#FFE6E6";
		}

		if(!plzIsSet) {
			theErrorString += "<li>" + plzErrorString + "</li>";
			document.getElementById("plz").style.backgroundColor = "#FFE6E6";
		}

		if(!ortIsSet) {
			theErrorString += "<li>" + ortErrorString + "</li>";
			document.getElementById("ort").style.backgroundColor = "#FFE6E6";
		}

		if(!emailIsSet) {
			theErrorString += "<li>" + emailErrorString + "</li>";
			document.getElementById("email").style.backgroundColor = "#FFE6E6";
		}
		*/
		
		if (!(telefonIsSet || emailIsSet)){
			theErrorString += "<li>" + telefonOrEmailErrorString + "</li>";
			document.getElementById("telefon").style.backgroundColor = "#FFE6E6";
			document.getElementById("email").style.backgroundColor = "#FFE6E6";
		}
		
		if(!kontaktdatenSpeichernIsSet) {
			theErrorString += "<li>" + rabattangebotBestaetigungErrorString + "</li>";
			document.getElementById("kontaktdaten-speichern-box").style.border = "solid #dd0000 3px";
		}
		
		theErrorString += "</ul>";
		theOutputdiv.innerHTML = theErrorString;
		theOutputdiv.style.display = "block";
	}


	/*
		Rueckgabe
	*/
	return result;
}
