
/*----------------------------------------------------------------------------
FORMULARRULES.JS

Copyright by
plenum stoll & fischbach Communication GmbH,
Herrenberg, Germany

formularrules.js 	defines rules of the form plausibility check in an array
					Remind: form plausibility has to be checked also serverside
					
					requires js-include: /global/js/formularcheck.js
----------------------------------------------------------------------------*/


//	Define rules of the form plausibility check
//	Array parameters:
//	[fieldname,functionname,argument for error message,error message,input type]
var checkRulesArray = [,
		['field_1','isOneCatalogChecked',false,'Bitte wählen Sie ein Infomaterial aus.','checkbox'],
		['title','isRadioButtonChecked',false,'Bitte geben Sie Ihre Anrede an.','radiobutton'],
		['firstname','isEmptyField',true,'Bitte geben Sie Ihren Vornamen an.','text'],
		['lastname','isEmptyField',true,'Bitte geben Sie Ihren Nachnamen an.','text'],
		['street','isStreetDataMissing',false,'Bitte geben Sie Ihre Straße oder Ihr Postfach an.',''],
		['zipcode','isZipCode',false,'Bitte geben Sie Ihre Postleitzahl an.\nDie Postleitzahl muss 5-stellig sein und darf nur Zahlen enthalten.',''],
		['city','isCity',false,'Bitte geben Sie Ihren Ort an.\nDer Ort darf nur Buchstaben enthalten.',''],
		['email','isEmailCorrect',false,'Bitte geben Sie eine korrekte E-Mail Adresse an.',''],
		['acceptPrivacyPolicy','isCheckboxChecked',false,'Bitte akzeptieren Sie die Datenschutzbestimmungen.\nAnsonsten kann Ihre Anfrage leider nicht bearbeitet werden.','checkbox']
];


//	isEmailProvidedForNewsletter()
//
//	arguments:
//	- field (required):	field object to be checked
//
//	what:	checks, if email field is empty when newsletter application is checked
function isEmailProvidedForNewsletter(field)
{
	if (document.forms['KontaktInfomaterial'].registerNewsletter.checked == true)
	{
		if (isEmptyField(field))
		{
			return true
		}
		else
		{
			return false
		}
	}
}


function isEmailCorrect(field)
{
	if (field.value.length == 0)
	{
		return false;
	}
	else
	{
		return (isCorrectEmailAddress(field));
	}
}

function isCity(field)
{
	if (field.value.length == 0)
	{
		return false;
	}
	else
	{	
		// Wenn eine Zahl gefunden wird, Fehler zurückgeben
		var fieldvalue = field.value;
		var regularExpression = /[0-9]+/;
		var regularExpressionState = regularExpression.test(fieldvalue);
		return (!(regularExpressionState));
	}
}

function isZipCode(field)
{
	if (field.value.length != 5)
	{
		return false;
	}
	else
	{	
		var fieldvalue = field.value;
		var regularExpression = /^[0-9]+$/;
		var regularExpressionState = regularExpression.test(fieldvalue);
		return regularExpressionState;
	}
}

function isStreetDataMissing(field)
{
	if ((document.forms['KontaktInfomaterial'].street.value=='') && document.forms['KontaktInfomaterial'].postbox.value=='')
	{
		return false;
	}
	return true;
}

function isOneCatalogChecked(field)
{
	if (document.forms['KontaktInfomaterial'].field_1.checked == false &&
	 document.forms['KontaktInfomaterial'].field_2.checked == false &&
	 document.forms['KontaktInfomaterial'].field_3.checked == false &&
	 document.forms['KontaktInfomaterial'].field_4.checked == false &&
	 document.forms['KontaktInfomaterial'].field_5.checked == false &&
	 document.forms['KontaktInfomaterial'].field_6.checked == false &&
	 //document.forms['KontaktInfomaterial'].field_7.checked == false &&
	 document.forms['KontaktInfomaterial'].field_8.checked == false &&
	 document.forms['KontaktInfomaterial'].field_9.checked == false &&
	 document.forms['KontaktInfomaterial'].registerNewsletter.checked == false
	 )
	{
		return false;
	}
	
	return true;
}