var isFormValide = true;

function validateContactForm(myForm) {		
	// Element validation
	// Element Standard Kontaktfelder
	isFormValide = true;
	var message = "";
	var lang = myForm.lang.value;
	
	// Anrede checken
	/*
	if (!myForm.anrede[0].checked && !myForm.anrede[1].checked) {
		highlightElement(document.getElementById('anredeDIV'));
		isFormValide = false;
	}
	*/
	
	validate(myForm.email);
	if (!checkEmail(myForm.email.value)) {
		highlightElement(myForm.email);
		isFormValide = false;
		if (lang == 'ger')
			message += '\nBitte geben Sie eine gueltige E-Mailadresse ein.';
		else
			message += '\nPlease enter a valid email address.';
	}
	
	message+= validateAdditionalFields(myForm);
	
	// Error handling
	if (!isFormValide) {
		if (lang == 'ger')
			alert('Bitte fuellen Sie alle Pflichtfelder aus.' + message);
		else
			alert('Please fill out all required fields.' + message);
		return false;
	}
	
	return true;
	
}

// Highlights a required field
function highlightElement(el) {
	el.style.backgroundColor = "#FFFF99";
	el.style.border = "1px solid red";
}

// Validates the given input field
function validate(el) {
	if (el.value == "") {
		highlightElement(el)
		isFormValide = false;
	} 		
}

function validateSelect(el) {
	if (el.selectedIndex == 0) {
		highlightElement(el);
		isFormValide = false;
	}
}

// Validates the given email address
function checkEmail(s) {
	var a = false;
	var res = false;
	
	if(typeof(RegExp) == 'function') {
  		var b = new RegExp('abc');
  		if(b.test('abc') == true){a = true;}
  	}
	
  	if(a == true) {
		reg = new RegExp('^([a-zA-Z0-9\\-\\.\\_]+)'+
			'(\\@)([a-zA-Z0-9\\-\\.]+)'+
			'(\\.)([a-zA-Z]{2,4})$');
		res = (reg.test(s));
	} else {
		res = (s.search('@') >= 1 &&
			s.lastIndexOf('.') > s.search('@') &&
			s.lastIndexOf('.') >= s.length-5)
	}
	
	return(res);
}