function validateFields() {
var frmEl = document.getElementById('cForm');
var posNome = document.getElementById('posNome');
var posEmail = document.getElementById('posEmail');
var posTelefono = document.getElementById('posTelefono');
var posTesto = document.getElementById('posTesto');
var posRefer = document.getElementById('posRefer');
var posFax = document.getElementById('posFax');
var posCity = document.getElementById('posCity');
var posType = document.getElementById('posType');
var posConsegna = document.getElementById('posConsegna');
var posLuogoCarico = document.getElementById('posLuogoCarico');
var posCarico = document.getElementById('posCarico');
var posPesoM = document.getElementById('posPesoM');
var posVolume = document.getElementById('posVolume');
var posEquip = document.getElementById('posEquip');
var posCaricoPr = document.getElementById('posCaricoPr');

var failed = document.getElementById('emailFailed');
var whiteSpace = /^[\s]+$/;
	if ( posNome.value == '' || whiteSpace.test(posNome.value) ) {
		failed.style.display = 'block';
		alert("Inserire Nome Azienda");
		posNome.focus();
	}
	else if ( posRefer.value == '' ) {
		failed.style.display = 'block';
		alert("Inserire Referente");
		posRefer.focus();
	}
	else if ( posEmail.value == '') {
		failed.style.display = 'block';
		alert("Inserire la tua Email.");
		posEmail.focus();
	}
	else if ( posTelefono.value == '') {
		failed.style.display = 'block';
		alert("Inserire Telefono.");
		posTelefono.focus();
	}
	else if ( posFax.value == '') {
		failed.style.display = 'block';
		alert("Inserire Fax.");
		posFax.focus();
	}
	else if ( posCity.value == '') {
		failed.style.display = 'block';
		alert("Inserire Citta.");
		posCity.focus();
	}
	else if ( posConsegna.value == '') {
		failed.style.display = 'block';
		alert("Inserire Luogo di Consegna.");
		posConsegna.focus();
	}
	else if ( posLuogoCarico.value == '') {
		failed.style.display = 'block';
		alert("Inserire Luogo di carico.");
		posLuogoCarico.focus();
	}
	else if ( posCarico.value == '') {
		failed.style.display = 'block';
		alert("Inserire Carico.");
		posCarico.focus();
	}
	else if ( posPesoM.value == '') {
		failed.style.display = 'block';
		alert("Inserire Peso in tonnellate metriche.");
		posPesoM.focus();
	}
	else if ( posVolume.value == '') {
		failed.style.display = 'block';
		alert("Inserire Volume in CBM.");
		posVolume.focus();
	}
	else if ( posEquip.value == '') {
		failed.style.display = 'block';
		alert("Inserire Equipaggiamento.");
		posEquip.focus();
	}
	else if ( posCaricoPr.value == '') {
		failed.style.display = 'block';
		alert("Inserire la data in cui il carico deve essere pronto.");
		posCaricoPr.focus();
	}
	else if ( posTesto.value == '' || whiteSpace.test(posTesto.value) ) {
		failed.style.display = 'block';
		alert("Inserire il Messaggio.");
		posTesto.focus();
	}
	else {
		sendPosEmail();
	}
}
function sendPosEmail () {
	var success = document.getElementById('emailSuccess');
	var posNome = document.getElementById('posNome');
	var posEmail = document.getElementById('posEmail');
	var posSubmit = document.getElementById('invioEmail');
	var posTelefono = document.getElementById('posTelefono');
	var posTesto = document.getElementById('posTesto');
	var posRefer = document.getElementById('posRefer');
	var posFax = document.getElementById('posFax');
	var posCity = document.getElementById('posCity');
	var posType = document.getElementById('posType');
	var posConsegna = document.getElementById('posConsegna');
	var posLuogoCarico = document.getElementById('posLuogoCarico');
	var posCarico = document.getElementById('posCarico');
	var posPesoM = document.getElementById('posPesoM');
	var posVolume = document.getElementById('posVolume');
	var posEquip = document.getElementById('posEquip');
	var posCaricoPr = document.getElementById('posCaricoPr');
	var failed = document.getElementById('emailFailed');
	
	var page = "inc/xmlHttpRequest.php?contact=true&xml=true";
	failed.style.display = 'none';
	showContactTimer(); // quickly begin the load bar
	success.style.display = 'none'; // hide the success bar (incase this is a multi-email
	posSubmit.disabled = 'disabled';
	// convert (&, +, =) to string equivs. Needed so URL encoded POST won't choke.
	var str1 = posNome.value;
	str1 = str1.replace(/&/g,"**am**");
	str1 = str1.replace(/=/g,"**eq**");
	str1 = str1.replace(/\+/g,"**pl**");
	var str2 = posEmail.value;
	str2 = str2.replace(/&/g,"**am**");
	str2 = str2.replace(/=/g,"**eq**");
	str2 = str2.replace(/\+/g,"**pl**");
	var str3 = posTelefono.value;
	var str4 = posTesto.value;
	str4 = str4.replace(/&/g,"**am**");
	str4 = str4.replace(/=/g,"**eq**");
	str4 = str4.replace(/\+/g,"**pl**");
	var str5 = posRefer.value;
	var str6 = posFax.value;
	var str7 = posCity.value;
	var str8 = posType.value;
	var str9 = posConsegna.value;
	var str10 = posLuogoCarico.value;
	var str11 = posCarico.value;
	var str12 = posPesoM.value;
	var str13 = posVolume.value;
	var str14 = posEquip.value;
	var str15 = posCaricoPr.value;

	
	var stuff = "posNome=" + str1 + "&posEmail=" + str2 + "&posTesto=" + str4 + "&posTelefono=" +str3+ "&posRefer=" +str5+ "&posFax=" +str6+ "&posCity=" +str7+ "&posType=" +str8+ "&posConsegna=" +str9+ "&posLuogoCarico=" +str10+ "&posCarico=" +str11+ "&posPesoM=" +str12+ "&posVolume=" +str13+ "&posEquip=" +str14+ "&posCaricoPr=" +str15;
	loadXMLPosDoc(page,stuff)
}
function showContactTimer () {
	var loader = document.getElementById('loadBar');
	loader.style.display = 'block';
	sentTimer = setTimeout("hideContactTimer()",6000);
}

function hideContactTimer () {
	var loader = document.getElementById('loadBar');
	var success = document.getElementById('emailSuccess');
	var fieldArea = document.getElementById('contactFormArea');
	var inputs = fieldArea.getElementsByTagName('input');
	var inputsLen = inputs.length;
	var tAreas = fieldArea.getElementsByTagName('textarea');
	var tAreasLen = tAreas.length;
	// Hide the load bar alas! Done Loading
	loader.style.display = "none";
	success.style.display = "block";
	success.innerHTML = '<strong style="color:#FFFFFF;">'+grabPosXML("confirmation")+'</strong>';
	// Now Hijack the form elements
	for ( i=0;i<inputsLen;i++ ) {
		if ( inputs[i].getAttribute('type') == 'text' ) {
			inputs[i].value = '';
		}
	}
	for ( j=0;j<tAreasLen;j++ ) {
		tAreas[j].value = '';
	}
}

function ajaxContact() {
var frmEl = document.getElementById('cForm');
addEvent(frmEl, 'submit', validateFields, false);
frmEl.onsubmit = function() { return false; }
}
addEvent(window, 'load',ajaxContact, false);