function changeDate(){
 var posPrefMonthInt = document.getElementById('posPrefMonth').selectedIndex;
 var posPrefDateInt = document.getElementById('posPrefDate').selectedIndex+1;
 var posPrefMonthVal = document.getElementById('posPrefMonth').value; 
 var posPrefTimeVal = document.getElementById('posPrefTime').value; 
 var lbPrintDate = document.getElementById('lbPrintDate'); 
 var selDateStr="";
 var posPrefDateSuf = "th";
 var daysArray=new Array('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday');
 
 curDate = new Date();
 selYear = curDate.getYear();
 if (selYear < 1000) selYear += 1900;
 selDate = new Date(selYear, posPrefMonthInt, posPrefDateInt, 23, 59, 59);
 if(selDate<curDate){
  selYear +=1;
  selDate = new Date(selYear, posPrefMonthInt, posPrefDateInt, 23, 59, 59);
 }

 if(posPrefDateInt==1) posPrefDateSuf = "st";
 if(posPrefDateInt==2) posPrefDateSuf = "nd";
 if(posPrefDateInt==3) posPrefDateSuf = "rd";
 
 selDateStr=daysArray[selDate.getDay()]+" "+posPrefMonthVal+" "+posPrefDateInt+posPrefDateSuf+" : "+posPrefTimeVal;
 lbPrintDate.innerHTML=selDateStr;
}

function changeRegard() {
 var posRegardVal = document.getElementById('posRegard').value;
 var lbMessage = document.getElementById('lbMessage');
 var posText = document.getElementById('posText');
 var pPosPrefDate = document.getElementById('pPosPrefDate');

 if(posRegardVal=="I would like to request a consultation"){
  lbMessage.style.display="none";
  posText.style.display="none";
  pPosPrefDate.style.display="block";
  changeDate();
 } 
 else {
  pPosPrefDate.style.display="none";
  lbMessage.style.display="block";
  posText.style.display="block";
 }
}

function changePrefMonth(){
 var posPrefMonthVal = document.getElementById('posPrefMonth').value; 
 var posPrefDate = document.getElementById('posPrefDate');
 var daysInMonth=31;
 if(posPrefMonthVal=="February") daysInMonth=28;
 if(posPrefMonthVal=="April" || posPrefMonthVal=="June" || 
    posPrefMonthVal=="September" || posPrefMonthVal=="November") daysInMonth=30;
 posPrefDate.options.length=daysInMonth;
 for(i=0;i<daysInMonth;i++) {
  posPrefDate.options[i].text=""+(i+1);
  posPrefDate.options[i].value=""+(i+1);
 } 
}

function validateFields() {
var posNameVal = document.getElementById('posName').value;
var posEmailVal = document.getElementById('posEmail').value;
var posPhoneVal = document.getElementById('posPhone').value;
var posHowVal = document.getElementById('posHow').value;
var posRegardVal = document.getElementById('posRegard').value;
var posTextVal = document.getElementById('posText').value;
var whiteSpace = /^[\s]+$/;
 if(posNameVal == '' || whiteSpace.test(posNameVal)) {
  alert("Please enter your name");
  return;
 }
 if(posEmailVal == '' || whiteSpace.test(posEmailVal)) {
  alert("Please enter your email address");
  return;
 }
 if(posPhoneVal == '' || whiteSpace.test(posPhoneVal)) {
  alert("Please enter your telephone number");
  return;
 }
 if(posHowVal == '' || whiteSpace.test(posHowVal)) {
  alert("Please tell us how you heard about us");
  return;
 }
 if(posRegardVal!="I would like to request a consultation"){
  if(posTextVal == '' || whiteSpace.test(posTextVal)) {
   alert("Please enter your question or message");
   return;
  } 
 }
 sendPosEmail();
}

function sendPosEmail () {
	var success = document.getElementById('emailSuccess');
	var posName = document.getElementById('posName');
	var posEmail = document.getElementById('posEmail');
    var posPhone = document.getElementById('posPhone');
    var posHow = document.getElementById('posHow');
    var posPrefContactMethod = document.getElementById('posPrefContactMethod');
	var posRegard = document.getElementById('posRegard');
	var posText = document.getElementById('posText');
	var posPrefMonth = document.getElementById('posPrefMonth');
	var posPrefDate = document.getElementById('posPrefDate');
	var posPrefTime = document.getElementById('posPrefTime');
	var page = "http://www.sparkledental.co.uk/contact_form/scripts/xmlHttpRequest.php?contact=true&xml=true";
	
	showContactTimer(); // quickly begin the load bar
	success.style.display = 'none'; // hide the success bar (incase this is a multi-email
	
	// convert (&, +, =) to string equivs. Needed so URL encoded POST won't choke.
	var str1 = posName.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 = posPhone.value;
	str3 = str3.replace(/&/g,"**am**");
	str3 = str3.replace(/=/g,"**eq**");
	str3 = str3.replace(/\+/g,"**pl**");
	var str4 = posHow.value;
	str4 = str4.replace(/&/g,"**am**");
	str4 = str4.replace(/=/g,"**eq**");
	str4 = str4.replace(/\+/g,"**pl**");
	var str5 = posPrefContactMethod.value;
	str5 = str5.replace(/&/g,"**am**");
	str5 = str5.replace(/=/g,"**eq**");
	str5 = str5.replace(/\+/g,"**pl**");
	var str6 = posRegard.value;
	str6 = str6.replace(/&/g,"**am**");
	str6 = str6.replace(/=/g,"**eq**");
	str6 = str6.replace(/\+/g,"**pl**");
	var str7 = posText.value;
	str7 = str7.replace(/&/g,"**am**");
	str7 = str7.replace(/=/g,"**eq**");
	str7 = str7.replace(/\+/g,"**pl**");
	
	var stuff;
	
	if(posRegard.value=="I would like to request a consultation"){
	 stuff = "posName="+str1+"&posEmail="+str2+"&posPhone="+str3+"&posHow="+str4+"&posPrefContactMethod="+str5+"&posRegard="+str6+"&posPrefMonth="+posPrefMonth.value+"&posPrefDate="+posPrefDate.value+"&posPrefTime="+posPrefTime.value; 
    } else {
     stuff = "posName="+str1+"&posEmail="+str2+"&posPhone="+str3+"&posHow="+str4+"&posPrefContactMethod="+str5+"&posRegard="+str6+"&posText="+str7; 
    }
	loadXMLPosDoc(page,stuff);
}
function showContactTimer () {
	var loader = document.getElementById('loadBar');
	var fieldArea = document.getElementById('contactFormArea');
    loader.style.display = "block";
	fieldArea.style.display = "none";
	sentTimer = setTimeout("hideContactTimer()",6000);
}

function hideContactTimer () {
	var loader = document.getElementById('loadBar');
	var success = document.getElementById('emailSuccess');
	// Hide the load bar alas! Done Loading
	loader.style.display = "none";
	success.style.display = "block";
}

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