function validEmail(emailAddress) {
	return /^[!-'*+=?{-~\/-9A-Z^-z-]+(\.[!-'*+=?{-~\/-9A-Z^-z-]+)*@[!-'*+=?{-~\/-9A-Z^-z-]+\.[!-'*+=?{-~\/-9A-Z^-z-]{2,}/.test(emailAddress);
}

function ajaxUrlEncode(param) {
	return param.replace(/&/g,"**am**").replace(/=/g,"**eq**").replace(/\+/g,"**pl**");
}

function getScrollY() {
	if( typeof( window.pageYOffset ) == 'number' ) {
		return window.pageYOffset;
	} else if( document.body && document.body.scrollTop) {
		return document.body.scrollTop;
	} else if( document.documentElement && document.documentElement.scrollTop) {
		return document.documentElement.scrollTop;
	}
	
	return -1
}

function showProgressBar() {
	var dSuccess = document.getElementById('emailSuccess');
	var dFailure = document.getElementById('emailFailure');
	var dProgressBar = document.getElementById('progressBar');

	dSuccess.style.display = 'none';
	dFailure.style.display = 'none';	
	dProgressBar.style.display = 'block';
	
	if (window.scroll && (getScrollY() > 400)) {window.scroll(0,200);}

	window.failTimer = window.setTimeout("hideProgressBar(false)", 10000);
}

function hideProgressBar(success) {
	var dSuccess = document.getElementById('emailSuccess');
	var dFailure = document.getElementById('emailFailure');
	var dProgressBar = document.getElementById('progressBar');
	var dContactArea = document.getElementById('contactArea');
	
	window.clearTimeout(window.failTimer);
	
	dProgressBar.style.display = 'none';
	dSuccess.style.display = (success ? 'block' : 'none');
	dFailure.style.display = (!success ? 'block' : 'none');
	//dSuccess.innerHTML = '<font class="global">'+grabPosXML("confirmation")+'</font>';
	
	//Clear form
	if (success) {
		var dContactAreaInputs = dContactArea.getElementsByTagName('input');
		var dContactAreaTextAreas = dContactArea.getElementsByTagName('textarea');
		
		for (var i=0; i < dContactAreaInputs.length; i++) {
			if (dContactAreaInputs[i].getAttribute('type') == 'text') {
				dContactAreaInputs[i].value = '';
			}
			else if (dContactAreaInputs[i].getAttribute('type') == 'checkbox') {
				dContactAreaInputs[i].checked = false;
			}
		}
	
		for (var i=0; i < dContactAreaTextAreas.length; i++) {
			dContactAreaTextAreas[i].value = '';
		}
	}
}

function ajaxContactForm() {
	var frmEl = document.getElementById('cForm');

	addEvent(frmEl, 'submit', validateFields, false);
	frmEl.onsubmit = function() { return false; }
}
