var MSG_EMPTY_SALUTATION = "Geben Sie bitte eine Anrede ein!";
var MSG_EMPTY_NAME = "Geben Sie bitte Ihren Namen ein!";
var MSG_EMPTY_FIRSTNAME = "Geben Sie bitte Ihren Vornamen ein!";
var MSG_EMPTY_STREET = unescape("Geben Sie bitte Ihre Stra%DFe ein!");
var MSG_EMPTY_ZIPCODE = "Geben Sie bitte Ihre PLZ ein!";
var MSG_INVALID_ZIPCODE = unescape("%DCberpr%FCfen Sie bitte die eingegebene PLZ!");
var MSG_EMPTY_LOCATION = "Geben Sie bitte Ihren Ort ein!";
var MSG_EMPTY_TEL = "Geben Sie bitte Ihre Telefonnummer ein!";
var MSG_INVALID_TEL = unescape("%DCberpr%FCfen Sie bitte die eingegebene Telefonnummer!");
var MSG_EMPTY_FAX = "Geben Sie bitte Ihre Faxnummer ein!";
var MSG_INVALID_FAX = unescape("%DCberpr%FCfen Sie bitte die eingegebene Faxnummer!");
var MSG_EMPTY_EMAIL = "Geben Sie bitte Ihre Emailadresse ein!";
var MSG_INVALID_EMAIL = unescape("%DCberpr%FCfen Sie bitte Ihre Emailadresse!");
var MSG_EMPTY_RECIPIENT_EMAIL = unescape("Geben Sie bitte die Emailadresse des Empf%E4ngers ein!");
var MSG_INVALID_RECIPIENT_EMAIL = unescape("%DCberpr%FCfen Sie bitte die Emailadresse des Empf%E4ngers!");
var MSG_EMPTY_TEXT = "Geben Sie bitte eine Nachricht ein!";
var MSG_AGREE_TO_CONDITIONS = unescape("Sie k%F6nnen am Online-Exposé-Verfahren nur teilnehmen wenn Sie unseren Bedingungen zustimmen!");
var MSG_FINDERS_FEES_AGREEMENT = unescape("Bitte nehmen Sie zur Kenntins, dass wir Ihnen eine Nachweis- bzw. Vermittlungsprovision in Rechnung stellen, wenn Sie Objekte aufgrund unserer Onlineexposes erwerben!");
var MSG_MANDATORY_FIELDS_CONTACT = unescape("Geben Sie bitte die folgenden Daten ein.\n\n- Ihre vollst%E4ndige Anschrift\nODER\n- Ihre Telefonnummer\nODER\n- Ihre Emailadresse\n\nWir kontaktieren Sie anschlie%DFend umgehend.");
var MSG_MANDATORY_FIELDS_REQONLINE = unescape("Geben Sie bitte die folgenden Daten ein.\n\n- Ihre vollst%E4ndige Anschrift\nODER\n- Ihre Telefonnummer\nODER\n- Ihre Emailadresse\n\nWir kontaktieren Sie anschlie%DFend umgehend.");

// Text überschreiben
if(LANG == "en"){
	// TODO
	MSG_EMPTY_SALUTATION = "Please insert a salutation!";
	MSG_EMPTY_NAME = "Please insert your name!";
	MSG_EMPTY_FIRSTNAME = "Please insert your firstname!";
	MSG_EMPTY_STREET = "Please insert a street!";
	MSG_EMPTY_ZIPCODE = "Please insert your zipcode!";
	MSG_INVALID_ZIPCODE = "Please check yout zipcode!";
	MSG_EMPTY_LOCATION = "Please insert your location!";
	MSG_EMPTY_TEL = "Please insert a telephone number!";
	MSG_INVALID_TEL = "Please check your telephone number!";
	MSG_EMPTY_FAX = "Please insert your fax number!";
	MSG_INVALID_FAX = "Please check your fax number!";
	MSG_EMPTY_EMAIL = "Please insert your e-mail address!";
	MSG_INVALID_EMAIL = "Please check your e-mail address!";
	//MSG_EMPTY_RECIPIENT_EMAIL = "Geben Sie bitte die Emailadresse des Empfängers ein!";
	//MSG_INVALID_RECIPIENT_EMAIL = "%DCberprüfen Sie bitte die Emailadresse des Empfängers!";
	MSG_EMPTY_TEXT = "Please insert a text!";
	//MSG_AGREE_TO_CONDITIONS = "Sie können am Online-Exposé-Verfahren nur teilnehmen wenn Sie unseren Bedingungen zustimmen!";
	//MSG_FINDERS_FEES_AGREEMENT = "Bitte nehmen Sie zur Kenntins, dass wir Ihnen eine Nachweis- bzw. Vermittlungsprovision in Rechnung stellen, wenn Sie Objekte aufgrund unserer Onlineexposes erwerben!";
	MSG_MANDATORY_FIELDS_CONTACT = "Please insert the following data.\n\n- Your complete address\nOR\n- Your telephone number\nOR\n- Your e-mail address\n\nWe will contact you immediately.";
	//MSG_MANDATORY_FIELDS_REQONLINE = "Geben Sie bitte die folgenden Daten ein.\n\n- Ihre vollständige Anschrift\nODER\n- Ihre Telefonnummer\nODER\n- Ihre Emailadresse\n\nWir kontaktieren Sie anschlie%DFend umgehend.";
}


	function check(){
		if (document._ForwardForm){
			return checkForward();
		}else if (document._ReqOnline){
			return checkReqOnline();
			}else
		{
			return checkContact();
		}

	}	


	function checkForward(){
		//Name
		if(document._ForwardForm.AbsenderEMail.value == "") 
			{
			varName = false;
			alert(MSG_EMPTY_EMAIL);
			document._ForwardForm.AbsenderEMail.focus();
			return false;
			}
		else
			{
			varName = true;
			}
		
		
		//Email
		if(document._ForwardForm.email.value == "") 
			{
			varEmail = false;
			alert(MSG_EMPTY_RECIPIENT_EMAIL);
			document._ForwardForm.email.focus();
			return false;
			}
		else
			{
			varEmail = true;
			
			//Email-Check
			regexp = new RegExp('^([a-zA-Z0-9\\-\\.\\_]+)(\\@)([a-zA-Z0-9\\-\\.]+)(\\.)([a-zA-Z]{2,4})$');
			if(!regexp.test(document._ForwardForm.email.value))
				{
				alert(MSG_INVALID_RECIPIENT_EMAIL);
				document._ForwardForm.email.focus();
				document._ForwardForm.email.select();
				return false;
				}
			}
	}


	//Variablen zum Überprüfen, ob in die entsprechenden Felder schon was eingegeben wurde
	var varName, varStrasse, varPlz, varOrt, varTel, varFax, varEmail, varText;

	//###### checkContact ############################################################
	function checkContact(){
		//Name
		if(document._Contact.name.value == "") {
			varName = false;
			alert(MSG_EMPTY_NAME);
			document._Contact.name.focus();
			return false;
		}else{
			varName = true;
		}
		
		//Adresse
		if(document._Contact.strasse.value == "") {
			varStrasse = false;
			alert(MSG_EMPTY_STREET);
			document._Contact.strasse.focus();
			return false;
		}else{
			varStrasse = true;
		}
		if(document._Contact.plz.value == "") {
			varPlz = false;
			alert(MSG_EMPTY_ZIPCODE);
			document._Contact.plz.focus();
			return false;
		}else{
			varPlz = true;
		
			var validPLZ = true;
			//Überprüfung, ob Inhalt nur Ziffern zwischen 0 und 9
			for(i=0; i<document._Contact.plz.value.length; ++i){
				if(document._Contact.plz.value.charAt(i) < "0" || document._Contact.plz.value.charAt(i) > "9")
					validPLZ = false;
			}
			//Überprüfung, ob Länge der PLZ auch 5 ist
			if(document._Contact.plz.value.length != 5) validPLZ = false;
			
			if(!validPLZ){
				alert(MSG_INVALID_ZIPCODE);
				document._Contact.plz.focus();
				document._Contact.plz.select();
				return false;
			}
		}
		if(document._Contact.ort.value == "") {
			varOrt = false;
			alert(MSG_EMPTY_LOCATION);
			document._Contact.ort.focus();
			return false;
		}else{
			varOrt = true;
		}
		
		//Telefon
		if(document._Contact.tel.value == "") {
			varTel = false;
			//alert(MSG_EMPTY_TEL);
			//document._Contact.tel.focus();
			//return false;
		}else{
			varTel = true;
			
			//Wenn Telefonnummer andere Zeichen als 0-9 oder / hat
			if(!ckeckNumber(document._Contact.tel.value)){
				alert(MSG_INVALID_TEL);
				document._Contact.tel.focus();
				document._Contact.tel.select();
				return false;
			}
		}
		
		//Fax
		if(document._Contact.fax.value == "") {
			varFax = false;
			//alert(MSG_EMPTY_FAX);
			//document._Contact.fax.focus();
			//return false;
		}else{
			varFax = true;
			
			//Wenn Faxfonnummer andere Zeichen als 0-9 oder / hat
			if(!ckeckNumber(document._Contact.fax.value)){
				alert(MSG_INVALID_FAX);
				document._Contact.fax.focus();
				document._Contact.fax.select();
				return false;
			}
		}
		
		//Email
		if(document._Contact.email.value == "") {
			varEmail = false;
			//alert(MSG_EMPTY_EMAIL);
			//document._Contact.email.focus();
			//return false;
		}else{
			varEmail = true;
			
			//Email-Check
			regexp = new RegExp('^([a-zA-Z0-9\\-\\.\\_]+)(\\@)([a-zA-Z0-9\\-\\.]+)(\\.)([a-zA-Z]{2,4})$');
			if(!regexp.test(document._Contact.email.value)){
				alert(MSG_INVALID_EMAIL);
				document._Contact.email.focus();
				document._Contact.email.select();
				return false;
			}
		}
		
		//Nachricht
		if(document._Contact.text.value == "" && document._Contact.text.value == "") {
			varText = false;
			alert(MSG_EMPTY_TEXT);
			document._Contact.text.focus();
			return false;
		}else{
			varText = true;
		}
		
		//#####################################################################
		//###### Pflichteingaben ##############################################
		if( !(varName && varText && (varStrasse && varPlz && varOrt || varTel || varEmail)) ){
			//alert("Pflichtfelder sind:\n- Ihr Name\n- Nachricht\n\nUND\n\n- Anschrift\nODER\n- Telefon\nODER\n- Emailadresse");
			alert(MSG_MANDATORY_FIELDS_CONTACT);
			return false;
		}
	}
	
	//###### checkNumber ######################################################
	function ckeckNumber(number){
		var validNumber = true;
		for(i=0; i<number.length; ++i){
			if( (number.charAt(i) < "0" || number.charAt(i) > "9") && number.charAt(i) != "/"  && number.charAt(i) != "-" && number.charAt(i) != " " && number.charAt(i) != "(" && number.charAt(i) != ")" ){
				validNumber = false;
			}
		}
		return validNumber;
	}

	
	//###### checkReqOnline ############################################################
	function checkReqOnline(){
	
	//Anrede
		if(document._ReqOnline.anrede.value == "") {
			varName = false;
			alert(MSG_EMPTY_SALUTATION);
			document._ReqOnline.anrede.focus();
			return false;
		}else{
			varName = true;
		}
		
		//Name
		if(document._ReqOnline.name.value == "") {
			varName = false;
			alert(MSG_EMPTY_NAME);
			document._ReqOnline.name.focus();
			return false;
		}else{
			varName = true;
		}
		
		//VorName
		if(document._ReqOnline.vorname.value == "") {
			varName = false;
			alert(MSG_EMPTY_FIRSTNAME);
			document._ReqOnline.vorname.focus();
			return false;
		}else{
			varName = true;
		}
		
		
		
		//Adresse
		if(document._ReqOnline.strasse.value == "") {
			varStrasse = false;
			alert(MSG_EMPTY_STREET);
			document._ReqOnline.strasse.focus();
			return false;
		}else{
			varStrasse = true;
		}
		if(document._ReqOnline.plz.value == "") {
			varPlz = false;
			alert(MSG_EMPTY_ZIPCODE);
			document._ReqOnline.plz.focus();
			return false;
		}else{
			varPlz = true;
		
			var validPLZ = true;
			//ÃœberprÃ¼fung, ob Inhalt nur Ziffern zwischen 0 und 9
			for(i=0; i<document._ReqOnline.plz.value.length; ++i){
				if(document._ReqOnline.plz.value.charAt(i) < "0" || document._ReqOnline.plz.value.charAt(i) > "9")
					validPLZ = false;
			}
			//ÃœberprÃ¼fung, ob LÃ¤nge der PLZ auch 5 ist
			if(document._ReqOnline.plz.value.length != 5) validPLZ = false;
			
			if(!validPLZ){
				alert(MSG_INVALID_ZIPCODE);
				document._ReqOnline.plz.focus();
				document._ReqOnline.plz.select();
				return false;
			}
		}
		if(document._ReqOnline.ort.value == "") {
			varOrt = false;
			alert(MSG_EMPTY_LOCATION);
			document._ReqOnline.ort.focus();
			return false;
		}else{
			varOrt = true;
		}

		//Telefon
		if(document._ReqOnline.tel.value == "") {
			varTel = false;
			alert(MSG_EMPTY_TEL);
			document._ReqOnline.tel.focus();
			return false;
		}else{
			varTel = true;
			
			//Wenn Telefonnummer andere Zeichen als 0-9 oder / hat
			if(!ckeckNumber(document._ReqOnline.tel.value)){
				alert(MSG_INVALID_TEL);
				document._ReqOnline.tel.focus();
				document._ReqOnline.tel.select();
				return false;
			}
		}
		
		//Fax
		if(document._ReqOnline.fax.value == "") {
			varFax = false;
			//alert(MSG_EMPTY_FAX);
			//document._ReqOnline.fax.focus();
			//return false;
		}else{
			varFax = true;
			
			//Wenn Faxfonnummer andere Zeichen als 0-9 oder / hat
			if(!ckeckNumber(document._ReqOnline.fax.value)){
				alert(MSG_INVALID_FAX);
				document._ReqOnline.fax.focus();
				document._ReqOnline.fax.select();
				return false;
			}
		}
		
		//Email
		if(document._ReqOnline.email.value == "") {
			varEmail = false;
			alert(MSG_EMPTY_EMAIL);
			document._ReqOnline.email.focus();
			return false;
		}else{
			varEmail = true;
			
			//Email-Check
			regexp = new RegExp('^([a-zA-Z0-9\\-\\.\\_]+)(\\@)([a-zA-Z0-9\\-\\.]+)(\\.)([a-zA-Z]{2,4})$');
			if(!regexp.test(document._ReqOnline.email.value)){
				alert(MSG_INVALID_EMAIL);
				document._ReqOnline.email.focus();
				document._ReqOnline.email.select();
				return false;
			}
		}
		
		//Nachricht
		if(document._ReqOnline.text && document._ReqOnline.text.value == "") {
			varText = false;
			alert(MSG_EMPTY_TEXT);
			document._ReqOnline.text.focus();
			return false;
		}else{
			varText = true;
		}
		
		//Bedingung 
		if(document._ReqOnline.bedingung && !document._ReqOnline.bedingung.checked) {
			varText = false;
			alert(MSG_AGREE_TO_CONDITIONS);
			//document._ReqOnline.text.focus();
			return false;
		}else{
			varText = true;
		}
		
		if(document._ReqOnline.download && !document._ReqOnline.download.checked) {
			varText = false;
			alert(MSG_FINDERS_FEES_AGREEMENT);
			//document._ReqOnline.text.focus();
			return false;
		}else{
			varText = true;
		}
		
		//#####################################################################
		//###### Pflichteingaben ##############################################
		if( !(varName && varText && (varStrasse && varPlz && varOrt || varTel || varEmail)) ){
			//alert("Pflichtfelder sind:\n- Ihr Name\n- Nachricht\n\nUND\n\n- Anschrift\nODER\n- Telefon\nODER\n- Emailadresse");
			alert(MSG_MANDATORY_FIELDS_REQONLINE);
			return false;
		}
	}
	
	//###### checkNumber ######################################################
	function ckeckNumber(number){
		var validNumber = true;
		for(i=0; i<number.length; ++i){
			if( (number.charAt(i) < "0" || number.charAt(i) > "9") && number.charAt(i) != "/"  && number.charAt(i) != "-" && number.charAt(i) != " " && number.charAt(i) != "(" && number.charAt(i) != ")" ){
				validNumber = false;
			}
		}
		return validNumber;
	}
