
//##############################################
function check_step1(frm)
{
	var msg = "";
	
	if(frm.title.value == "")
		msg += "\n   Your Title     ";
	if(frm.firstname.value == "")
		msg += "\n   Your First name     ";
	if(frm.surname.value == "")
		msg += "\n   Your Surname     ";
	if(frm.email.value == "" || (!isEmail(frm.email.value)))
		msg += "\n   A valid Email address     ";
	if(frm.telephone.value == "" ||  (!is_number(frm.telephone.value)))
		msg += "\n   A valid telephone number     ";
	if(msg != ""){
		alert("Please supply the following:     \n" + msg);
		return false;
	}else{
		return true;
	}
}

//##############################################
function check_step2(frm)
{
	var msg = "";
	
	if(frm.address.value == "")
		msg += "\n   Your Address     ";
	if(frm.town.value == "")
		msg += "\n   Your Town     ";
	if(frm.county.value == "")
		msg += "\n   Your County     ";
	if(frm.country.options[frm.country.selectedIndex].value == "")
		msg += "\n   Your Country   ";
	if(frm.telephone.value != "" &&  (!is_number(frm.telephone.value)))
		msg += "\n   A valid telephone number     ";
	if(frm.billing[0].checked == false && frm.billing[1].checked == false)
		msg += "\n   Are Billing and Delivery addresses the same?    ";
		
	if(frm.billing[1].checked == true){
		if(frm.bill_address.value == "")
			msg += "\n\n   Your Billing Address     ";
		if(frm.bill_town.value == "")
			msg += "\n   Your Billing Town     ";
		if(frm.bill_county.value == "")
			msg += "\n   Your Billing County     ";
		if(frm.bill_country.options[frm.bill_country.selectedIndex].value == "")
			msg += "\n   Your Billing Country   ";
	}
	
	if(msg != ""){
		alert("Please supply the following:     \n" + msg);
		return false;
	}else{
		return true;
	}
}

//##############################################
function check_step3(frm)
{
	var terms1 = document.frm1.terms.checked;
	var terms2 = document.frm2.terms.checked;
	if((!terms1) && (!terms2)){
		alert("Please acknowledge you have read the terms and conditions.    ");
		return false;
	}else{
		frm.terms.checked = true;
		return true;
	}
}

//####################  EMAIL FUNCTION  ###############
function isEmail(str) {
  // are regular expressions supported?
  var supported = 0;
  if (window.RegExp) {
    var tempStr = "a";
    var tempReg = new RegExp(tempStr);
    if (tempReg.test(tempStr)) supported = 1;
  }
  if (!supported) 
    return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
  var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
  var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,4}|[0-9]{1,4})(\\]?)$");
  return (!r1.test(str) && r2.test(str));
}

//####################  TELEPHONE FUNCTION  #########
function is_number(num)
{
	var supported = 0;
  if (window.RegExp) {
 		var r1 = new RegExp("[^0-9 ]");
		return (!r1.test(num))
  }
}