// contactus.js
function validateContactUsForm(){
	//check topic selected
	if (document.topic.options[document.feedback.topic.options.selectedIndex].value == 0){
		alert('Please select a valid Topic or Category.');
		return false;
	}

	//trim all text fields	
	document.subject.value = trim(document.feedback.subject.value);
	document.message.value = trim(document.feedback.message.value);
	document.emailaddress.value = trim(document.feedback.emailaddress.value);
	document.feedback.post1.value = trim(document.feedback.post1.value);
	document.feedback.post2.value = trim(document.feedback.post2.value);
	document.feedback.post3.value = trim(document.feedback.post3.value);
	document.feedback.phonenumber.value = filterPhoneNumber(document.feedback.faxnumber.value);

	//check message is filled out
	if (document.feedback.message.value == ''){
		alert('Please enter your comment in the Message box.');
		return false;
	}

	//check reply is selected out
	if ((document.feedback.yes.checked) || (document.feedback.no.checked)) {
		;	//checked, let it pass
	}
	else {		
		alert('Please specify you want a reply or not.');
		return false;
	}

	//validate email address as long as it is filled out
	if (document.feedback.emailaddress.value.length > 0){
		if (!validateEmailAddress(document.feedback.emailaddress.value)){
			alert('Please enter a valid E-mail address.');
			document.feedback.emailaddress.focus();
			return false;
		}
	}

	//validate (filtered) phone number as long as it is non-empty
	if (document.feedback.phonenumber.value.length > 0){
		if (document.feedback.phonenumber.value.length < 10){
			alert('Please enter a valid Phone number of at least 10 digits including the area code.');
			document.feedback.phonenumber.focus();
			return false;
		}
	}

	if (document.feedback.yes.checked){
		if (document.feedback.email.checked){	//validated already, make sure it is not blank
			if (document.feedback.emailaddress.value.length == 0){
				alert('Please enter a valid E-mail address.');
				document.feedback.emailaddress.focus();
				return false;
			}
		}
		else if (document.feedback.letter.checked){
			if ((document.feedback.post1.value.length == 0) &&
				(document.feedback.post2.value.length == 0) &&
				(document.feedback.post3.value.length == 0)){
					alert('Please enter a valid Mailing address.');
					document.feedback.post1.focus();
					return false;
			}
		}
		else if (document.feedback.fax.checked){	//extracted already, make sure it is not blank
			if (document.feedback.faxnumber.value.length == 0){
				alert('Please enter a valid Fax number of at least 10 digits including the area code.');
				document.feedback.faxnumber.focus();
				return false;
			}
		}
		else {
			alert('Please select a valid respond method.');
			return false;
		}
	}
	return true;
}
