// JavaScript Document

	function isString(valor){
	  return (typeof valor == 'string' && valor != '' && isNaN(valor));
	}
	
	function isNum(valor){
	  return (!isNaN(valor) && valor != '');
	}
	
	function isEmail(valor){
		var emailFilter = /^\w+[\+\.\w-]*@([\w-]+\.)*\w+[\w-]*\.([a-z]{2,4}|\d+)$/i;
		if (valor != '' && emailFilter.test(valor)) {return true;}
		return false;
	}

	function changecode(countryid) {
		
		if (parseInt(countryid) !== 0) {
			
			if (countrycodes[countryid]) {

				document.getElementById('prefix').disabled = true;	
				document.getElementById('prefix').value = countrycodes[countryid];
			
			} else {
				
				document.getElementById('prefix').disabled = false;
				document.getElementById('prefix').value = '';
				
			}
		
		} else {
		
			document.getElementById('prefix').value = "-";
		
		}
				
		if (document.getElementById('prefix2')) {
		
			document.getElementById('prefix2').disabled = document.getElementById('prefix').disabled;
			document.getElementById('prefix2').value = document.getElementById('prefix').value;
		
		}
	
	}

function validateForms(formname) { // used in landing pages (multiple forms per page)
	//
	if (!isString(document.forms[formname].elements['fullname'].value)) {
		alert('You must enter your name!');
		document.forms[formname].elements['fullname'].focus();
		return false;
	}
	if (!isEmail(document.forms[formname].elements['email'].value)) {
		alert('You must enter a valid email address!');
		document.forms[formname].elements['email'].focus();
		return false;
	}
	if (!isNum(document.forms[formname].elements['telephone'].value)) {
		alert('You must enter a telephone number (just numbers) ');
		document.forms[formname].elements['telephone'].focus();
		return false;
	}
	// form with List of Countries
	if (document.forms[formname].guideid.length>0) {
		var radiochoice=false;
		for (counter=0; counter<document.forms[formname].guideid.length; counter++) {
			if (document.forms[formname].guideid[counter].checked) { radiochoice=true; }
		}
		if (radiochoice==false) { alert('You must choose a country'); return false; }
	}
	// default
	return true;
//end of validateForms(formname)
}


	function validateForm(thisform) {
		
		if (thisform != "") {
		// set var radio_choice to false
		var radio_choice = false;

		// Loop from zero to the one minus the number of radio button selections
		for (counter = 0; counter < thisform.guideid.length; counter++) {
			// If a radio button has been selected it will return true
			// (If not it will return false)
			if (thisform.guideid[counter].checked) radio_choice = true; 
		}
		
		if (radio_choice == false) {
			alert('Please Select a Guide!');
			return false;	
		}
		
		}
		if (!isString(document.getElementById('fullname').value)) {
		
			alert('You must enter your name!');
			document.getElementById('fullname').focus();
			return false;
		
		}

		if (!isEmail(document.getElementById('email').value)) {
		
			alert('You must enter a valid email address!');
			document.getElementById('email').focus();
			return false;
		
		}

		if (document.getElementById('countryid').value == 0) {
		
			alert('You must select a country!');
			document.getElementById('countryid').focus();
			return false;
		
		}
		
		if (document.getElementById('prefix').value == "+44") {
		
			newTel = checkUKTelephone(document.getElementById('telephone').value);
		
			if (!newTel) {

				alert(telNumberErrors[telNumberErrorNo]);
				document.getElementById('telephone').focus();
				return false;	
			
			} else {
			
				document.getElementById('telephone').value = newTel;
			
			}
		
		} else if (document.getElementById('prefix').value == "+353") {

			newTel = checkIrishTelephone(document.getElementById('telephone').value);
		
			if (!newTel) {

				alert(telNumberErrors[telNumberErrorNo]);
				document.getElementById('telephone').focus();
				return false;	
			
			} else {
			
				document.getElementById('telephone').value = newTel;
			
			}
		
		} else if (document.getElementById('prefix').value == "-") {
			
			newTel = checkUnlistedTelephone(document.getElementById('telephone').value);
		
			if (!newTel) {

				alert(telNumberErrors[telNumberErrorNo]);
				document.getElementById('telephone').focus();
				return false;	
			
			} else {
			
				document.getElementById('telephone').value = newTel;
			
			}		

		} else {
	
			newTel = checkOtherTelephone(document.getElementById('telephone').value);
		
			if (!newTel) {

				alert(telNumberErrors[telNumberErrorNo]);
				document.getElementById('telephone').focus();
				return false;	
			
			} else {
			
				document.getElementById('telephone').value = newTel;
			
			}
		
		}
		
		if (document.getElementById('agreed').checked == false) {
		
				alert('You must agree to our registration agreement!');
				return false;			
		
		}


		
		
		document.getElementById('prefix').disabled = false;

		return true;
	}
	
