function validate ($form) {
	
	var $elems = $form.elements;
	
	if (($elems.txtName_r.value == '')) {
		alert ('Please enter your Name');
		$elems.txtName_r.focus ();
	} else if (($elems.txtCompany_r.value == '')) {
		alert ('Please enter your Company');
		$elems.txtCompany_r.focus ();
	} else if (($elems.txtStreet_r.value == '')) {
		alert ('Please enter your Street');
		$elems.txtStreet_r.focus ();
	} else if (($elems.txtCity_r.value == '')) {
		alert ('Please enter your City');
		$elems.txtCity_r.focus ();
	} else if ((!ValidState($elems.txtState_r.value))) {
		alert ('Please enter your State');
		$elems.txtState_r.focus ();
	} else {
		$zipCode = parseInt ($elems.txtZipCode_r_d5.value);
		if ((isNaN($zipCode)) || ($zipCode < 0) ||
			($zipCode > 99999) || ($elems.txtZipCode_r_d5.value.length != 5)) {
			
			alert ('Please enter your Zip Code');
			$elems.txtZipCode_r_d5.focus ();
		} else {
			//var $phoneRegExp = new RegExp ('((\\(\\d{3}\\) ?)|(\\d{3}[- \.]))?\\d{3}[- \.]\\d{4}(\\s(x\\d+)?){0,1}$', 'g');
			var $phoneRegExp = new RegExp ('^(?:\\d{3}[- \.]?){2}\\d{4}(?: +x\\d+)?$', 'g');
			var $emailRegExp = new RegExp ('\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\.\\w+([-.]\\w+)*([,;]\\s*\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\.\\w+([-.]\\w+)*)*', 'g');
			
			if ((!$elems.txtPhone_r_p.value.match ($phoneRegExp))) {
				alert ('Please enter your Phone Number');
				$elems.txtPhone_r_p.focus ();
			}/* else if ((!$elems.txtEmail_r_e.value.match ($emailRegExp))) {
				alert ('Please enter your Email Address');
				$elems.txtEmail_r_e.focus ();
			}*/ else {
				return true;
			}
		}
	}
	
	return false;
}

function ValidState(sstate) {

	var sstates = "wa|or|ca|ak|nv|id|ut|az|hi|mt|wy|" +
		"co|nm|nd|sd|ne|ks|ok|tx|mn|ia|mo|" +
		"ar|la|wi|il|ms|mi|in|ky|tn|al|fl|" +
		"ga|sc|nc|oh|wv|va|pa|ny|vt|me|nh|" +
		"ma|ri|ct|nj|de|md|dc|";
	
	if (sstate.length == 2 && sstates.indexOf(sstate.toLowerCase() + "|") > -1) {
		return true;
	}
	
	return false;
}
