//#########################################
function checkOther(elmt)
{
	var oth = document.getElementById("other_"+elmt.name);
	
	if(elmt.options[elmt.selectedIndex].value == 'Other'){
		//elmt.disabled = true;
		oth.style.visibility = "visible";
	}else{
		oth.style.visibility = "hidden";
	}
}

//#####################################
function checkPost(elmt)
{
	var postcode = document.getElementById("postcode");
	if(elmt.options[elmt.selectedIndex].value != 'United Kingdom' && elmt.options[elmt.selectedIndex].value != 'Ireland'){
		postcode.disabled = true;
	}else{
		postcode.disabled = false;
	}
}

//######################################
function checkRForm(frm)
{
	var msg = "";
	
	if(frm.name.value == "")
		msg += "\n   Your name     ";
	if(frm.email.value == "" || (!isEmail(frm.email.value)))
		msg += "\n   A valid email address     ";
	if(frm.telephone.value == "" ||  (!is_number(frm.telephone.value)) && frm.mobile.value == "" ||  (!is_number(frm.mobile.value)))
		msg += "\n   A valid telephone or mobile number     ";
	if(frm.website[0].checked == false && frm.website[1].checked == false)
		msg += "\n   Do you have a website?      ";
	if(frm.website[0].checked == true && frm.website_address.value == "")
		msg += "\n   Your website address?       ";
	if(frm.experience.options[frm.experience.selectedIndex].text == "...please select")
		msg += "\n   Your one to one experience      ";
	if(frm.tel_experience.options[frm.tel_experience.selectedIndex].text == "...please select")
		msg += "\n   Your telephone reading experience      ";
	if(frm.age.options[frm.age.selectedIndex].text == "...please select")
		msg += "\n   Your age      ";
	if(frm.gender[0].checked == false && frm.gender[1].checked == false)
		msg += "\n   Your gender      ";
	if(frm.divination.options[frm.divination.selectedIndex].text == "...please select")
		msg += "\n   Your method of divination      ";
		
	if(msg != ""){
		alert("Please supply the following:          \n" + msg);
		return false;
	}else{
		return true;
	}	

}

//###########################################
function checkForm(frm)
{

	var msg = "";
	
	if(frm.email.value != frm.email1.value){
		alert("Your email address and\nconfirmation email address do not match!     ");
		return false;
	}
	
	if(frm.title.options[frm.title.selectedIndex].value == ""){
		msg += "\n   Your Title   ";
	}else{
		if(frm.title.options[frm.title.selectedIndex].value == "Other" && frm.otherT.value == "")
			msg += "\n   Your Title (other)   ";
	}
	
	if(frm.firstname.value == "")
		msg += "\n   Your Firstname   ";

	if(frm.surname.value == "")
		msg += "\n   Your Surname   ";
		
	if(frm.house.value == "")
		msg += "\n   House Name/Number   ";
		
	if(frm.address1.value == "")
		msg += "\n   Address line 1   ";
	
	if(frm.town.value == "")
		msg += "\n   Your Town   ";
	
	if(frm.county.value == "")
		msg += "\n   Your County   ";
	if(frm.country.options[frm.country.selectedIndex].value == 'United Kingdom' || frm.country.options[frm.country.selectedIndex].value == 'Ireland'){
		if(frm.postcode.value == "")
			msg += "\n   Your Postcode   ";
	}
		
	//if(!frm.country[0].checked && !frm.country[1].checked)
	//	msg += "\n   Do you live in the UK or EIRE ?   ";
	if(frm.country.options[frm.country.selectedIndex].value == "")
		msg += "\n   Your country   ";

	if(frm.email.value == "" || (!isEmail(frm.email.value)))
			msg += "\n   A valid email address";
	
	day = frm.day.options[frm.day.selectedIndex].value;
	month = frm.month.options[frm.month.selectedIndex].value;
	year = frm.year.options[frm.year.selectedIndex].value;
	if(day == "" || month =="" || year == "")
		msg += "\n   A valid date of birth";
		
	if(frm.lead.options[frm.lead.selectedIndex].value == ""){
		msg += "\n   Where did you hear about us?   ";
	}else{
		if(frm.lead.options[frm.lead.selectedIndex].value == "Other" && frm.other.value == "")
			msg += "\n   Where did you hear about us (other)?   ";
	}
	
	//#####################################################
	// Optional form dependant fields
	if(frm.survey){
		if(frm.survey[0].checked == false && frm.survey[1].checked == false && frm.survey[2].checked == false)
			msg += "\n   Your survey answer !    ";
	}
	
	if(msg != ""){
		alert("Please supply the following:          \n" + msg);
		return false;
	}else{
		return true;
	}

}

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

//####################  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));
}