function isEmail(input) {
	return /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9_]+((\.|-)[A-Za-z0-9_]+)*\.[A-Za-z0-9]+$/.test(input);
}

function isPhone(input) {
	return /^\(?\d{3}\W?\d{3}\W?\d{4}$/.test(input);
}

function trim(input) {
  var start = 0;
  while ((start < input.length) && (input.charAt(start) == ' ')) {
    ++start;
  }

  var end = input.length;
  while ((end > 0) && (input.charAt(end - 1) == ' ')) {
    --end;
  }

  return input.substring(start, end);
}

var isChecked = false;
function euValidation(){	
	for (var i=0; i<document.contact_form.EU_resident.length; i++)  {		
		if (document.contact_form.EU_resident[i].checked) {	
			if (i == 0){
				document.contact_form.action = '/contact_us/eu_opt_out.asp';
			}
			if (i == 1){
				document.contact_form.action = '/contact_us/send_email.asp';
			}			
			isChecked = true;			
		} 
	} 		
}
var isInformationChecked = false;
function EUQuestionCheck(){	
	for (var i=0; i<document.contact_form.contact_further_information.length; i++)  {		
		if (document.contact_form.contact_further_information[i].checked) {				
			isInformationChecked = true;			
		} 
	} 		
}

function trySubmit() {	
	euValidation();
	f = document.contact_form;
	for (i=0; i < f.elements.length; i++) {
		if (f.elements[i].type == "text") f.elements[i].value = trim(f.elements[i].value);
	}

	with(document.contact_form) {
		if (contactSubject.selectedIndex == 0) {
			alert("Please choose a Subject.");
			contactSubject.focus();
		} else if (contactFirstName.value.length == 0) {
			alert("Please enter your First Name.");
			contactFirstName.focus();
		} else if (contactLastName.value.length == 0) {
			alert("Please enter your Last Name.");
			contactLastName.focus();
		} else if (contactCompany.value.length == 0) {
			alert("Please enter your Company Name.");
			contactCompany.focus();
		} else if (!isEmail(contactEmail.value)) {
			alert("Please enter your Email Address.");
			contactEmail.focus();
		} else if (!isChecked){
			alert("I'm based in the European Union\nPlease select Yes or No.");			
		} else {
			_hfs=1;
			_hbSet("sf",1);
			_hbSend();
			submit();
		}
	}
}
function trySubmitEU() {		
	EUQuestionCheck();
	with(document.contact_form) {		
		if (!isInformationChecked){
			alert("Would you like to receive more information from Agency.com in the future?\nPlease select Yes or No.");			
		} else submit();
	}
}