/**
 * @author 	Bassier, Bergmann & Kindler 
 * 			Digital Sales and Brand Specialists GmbH
 */

var _tmpErrorMsgText;

/**
 * contact-form field validation
 */
function checkForm() 
{
	var _lastnameValid = (document.getElementById('lastname').value != '');
	var _firstnameValid = (document.getElementById('firstname').value != '');
	var _emailValid = (document.getElementById('email').value != '');
	var _emailSyntaxValid = EMail_Validator(document.getElementById('email').value)
	var _subjectValid = (document.getElementById('subject').value != '');
	var _messageValid = (document.getElementById('message').value != '');
	var _errorMsgField = document.getElementById('errorMsg');

	var _formValid = (	 Boolean(_lastnameValid) && 
						 Boolean(_firstnameValid) && 
						 Boolean(_emailValid) && 
						 Boolean(_emailSyntaxValid) && 
						 Boolean(_subjectValid) && 
						 Boolean(_messageValid)
					 );
	
	if (!Boolean(_lastnameValid)) { setLabelErrorMark('lab_lastname'); } else { resetLabelErrorMark('lab_lastname'); }
	if (!Boolean(_firstnameValid)) { setLabelErrorMark('lab_firstname'); } else { resetLabelErrorMark('lab_firstname'); }
	if (!Boolean(_emailValid) || !Boolean(_emailSyntaxValid)) { setLabelErrorMark('lab_email'); } else { resetLabelErrorMark('lab_email'); }
	if (!Boolean(_subjectValid)) { setLabelErrorMark('lab_subject'); } else { resetLabelErrorMark('lab_subject'); }
	if (!Boolean(_messageValid)) { setLabelErrorMark('lab_message'); } else { resetLabelErrorMark('lab_message'); }
	
//	alert('_formValid: '+ _formValid);
	
	if (!Boolean(_emailSyntaxValid) || !Boolean(_formValid)) {
		_errorMsgField.className = _errorMsgField.className+' error';
		_tmpErrorMsgText = _errorMsgField.innerHTML;
		if (!Boolean(_emailSyntaxValid) && Boolean(_emailValid)) {
			_errorMsgField.innerHTML = _STRCONTACT_EMAILSYNTAX_INVALID;
		} else if (!Boolean(_formValid)) {
			_errorMsgField.innerHTML = _STRCONTACT_FORM_INVALID;
		}
	}
	
	return _formValid;
}
function setLabelErrorMark(_currLabelName)
{
	var _currLabel = document.getElementById(_currLabelName);
	if (_currLabel) { _currLabel.className = _currLabel.className+' error'; }
}

function resetLabelErrorMark(_currLabelName)
{
	var _currLabel = document.getElementById(_currLabelName);
	if (_currLabel) { _currLabel.className = _currLabel.className.replace(/error/g, ''); }
}

function resetForm()
{
	var contactForm = document.getElementsByName('interest')[0];
	var labels = contactForm.getElementsByTagName('label');
	var _errorMsgField = document.getElementById('errorMsg');
	
	for (var i=0;i <= labels.length; i++) {
		if (labels[i] && labels[i].className) {
			var _tmpCN = labels[i].className;
			labels[i].className = _tmpCN.replace(/error/g, '');
		}
	}
	if (_tmpErrorMsgText && (_tmpErrorMsgText != '')) _errorMsgField.innerHTML = _tmpErrorMsgText;
	_errorMsgField.className = _errorMsgField.className.replace(/error/g, '');
}

function EMail_Validator(cemail)
{
	//Validating the email field
	var regex = /^(([^<>()[\]\\.,;:%\s@\"]+(\.[^<>()[\]\\.,;:%\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
	return regex.test(cemail);
}