function ProcessForm()
{
	var formOk = true;
	
	//clear all errors
	$("frm_chk_error").style.display = "none";
	$("frm_firstname_error").style.display = "none";
	$("frm_lastname_error").style.display = "none";
	$("frm_organisation_error").style.display = "none";
	$("frm_email_error").style.display = "none";
	$("frm_phone_error").style.display = "none";
	$("frm_state_error").style.display = "none";
	$("frm_country_error").style.display = "none";
	$("frm_error").style.display = "none";
	
	//find errors
	if (!$("chk_sentry").checked && !$("chk_defender").checked && !$("chk_garrison").checked) 
	{
		$("frm_chk_error").style.display = "block";
		formOk = false;
	}
	if ($("frm_firstname").value.length == 0) 
	{
		$("frm_firstname_error").style.display = "block";
		formOk = false;
	}
	if ($("frm_lastname").value.length == 0) 
	{
		$("frm_lastname_error").style.display = "block";
		formOk = false;
	}
	if ($("frm_organisation").value.length == 0) 
	{
		$("frm_organisation_error").style.display = "block";
		formOk = false;
	}
	if (!$("frm_email").value.match("\\b[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}\\b")) 
	{
		$("frm_email_error").style.display = "block";
		formOk = false;
	}
	if (!$("frm_phone").value.match("^(\\(?\\+?[0-9]*\\)?)?[0-9_\\- \\(\\)]*$") || $("frm_phone").value.length < 6) 
	{
		$("frm_phone_error").style.display = "block";
		formOk = false;
	}
	if ($("frm_state").value.length == 0) 
	{
		$("frm_state_error").style.display = "block";
		formOk = false;
	}
	if ($("frm_country").value == "") 
	{
		$("frm_country_error").style.display = "block";
		formOk = false;
	}
		
	if (formOk) 
	{
		niceDoPostBack("send", "");
	}
	else 
	{
		$("frm_error").style.display = "block";
	}
}

function niceDoPostBack(eventTarget, eventArgument) 
{
	var theform;
	if (window.navigator.appName.toLowerCase().indexOf("microsoft") > -1) 
	{
		theform = document.regform;
	}
	else 
	{
		theform = document.forms["regform"];
	}
	theform.niceTarget.value = eventTarget.split("$").join(":");
	theform.niceArgument.value = eventArgument;
	theform.submit();
}