function buildmessagebody(form)
{

	var messagebody;
	var fromaddress;

	if (form.realname.value.length > 0)
		messagebody='Name: ' + form.realname.value + '\n';
	else
	{
		alert('Name is a required field. Please complete the form and submit again.');
		form.realname.focus();
		return false;
	}

	if (form.address.value.length > 0)
		messagebody=messagebody + 'Address:\n' + form.address.value + '\n';

	if (form.city.value.length > 0)
		messagebody=messagebody + form.city.value + ', ';

	if (form.state.value.length > 0)
		messagebody=messagebody + form.state.value + '\n';

	if (form.phone_number.value.length > 0)
		messagebody=messagebody + 'Phone number: ' + form.phone_number.value + '\n';
	else
	{
		alert('Phone number is a required field. Please complete the form and submit again.');
		form.phone_number.focus();
		return false;
	}

	if (form.email.value.length > 0)
	{
		messagebody=messagebody + 'Email Address: ' + form.email.value + '\n';
		var emailStr=form.email.value;
		var emailPat=/^(.+)@(.+)$/
		var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
		var validChars="\[^\\s" + specialChars + "\]"
		var quotedUser="(\"[^\"]*\")"
		var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
		var atom=validChars + '+'
		var word="(" + atom + "|" + quotedUser + ")"
		var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
		var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")
		var matchArray=emailStr.match(emailPat)
		if (matchArray==null)
		{
			alert("Your email address appears invalid.\n\nPlease try again.\n\nie: user@domain.com");
			form.email.focus();
			return false
		}
		var user=matchArray[1]
		var domain=matchArray[2]
		if (user.match(userPat)==null)
		{
			alert("The username doesn't appear to be valid in your email address.\n\nPlease try again.\n\nie: user@domain.com");
			form.email.focus();
			return false
		}
		var IPArray=domain.match(ipDomainPat)
		if (IPArray!=null)
		{
			for (var i=1;i<=4;i++)
			{
				if (IPArray[i]>255)
				{
					alert("Destination IP address is invalid.");
					form.email.focus();
					return false
				}
			}
			return true
		}
		var domainArray=domain.match(domainPat)
		if (domainArray==null)
		{
			alert("The domain name doesn't seem to be valid.\n\nPlease try again.\n\nie:user@domain.com");
			form.email.focus();
			return false
		}
		var atomPat=new RegExp(atom,"g")
		var domArr=domain.match(atomPat)
		var len=domArr.length
		if (domArr[domArr.length-1].length<2 || domArr[domArr.length-1].length>3)
		{
			alert("The address must end in a three-letter domain, or two letter country.\n\nPlease try again.\n\nie:user@domain.com or user@domain.cc");
			form.email.focus();
			return false
		}
		if (len<2)
		{
			var errStr="This address is missing a hostname.\n\nPlease try again.\n\nie:user@domain.com"
			alert(errStr);
			form.email.focus();
			return false
		}
	}
	else
	{	
		alert('Your email is a required field. Please complete the form and submit again.');
		form.email.focus();
		return false;	
	}

	messagebody=messagebody + 'Current situation:\n';
	if(form.own.checked)
		messagebody=messagebody + 'I own a system\n';
	if(form.lease.checked)
		messagebody=messagebody + 'I lease a system\n';
	if(form.not_monitored.checked)
		messagebody=messagebody + 'My system isn\'t monitored\n';
	if(form.long_term_contract.checked)
		messagebody=messagebody + 'I have a long term contract\n';
	if(form.monthly_contract.checked)
		messagebody=messagebody + 'I have a monthly contract\n';

	if (form.best_time_am_m_f.value.length > 0)
		messagebody=messagebody + 'Best time M-F: ' + form.best_time_am_m_f.value + ' AM to ';

	if (form.best_time_pm_m_f.value.length > 0)
		messagebody=messagebody + form.best_time_pm_m_f.value + ' PM\n';

	if (form.best_time_am_sat.value.length > 0)
		messagebody=messagebody + 'Best time SAT: ' + form.best_time_am_sat.value + ' AM to ';

	if (form.best_time_pm_sat.value.length > 0)
		messagebody=messagebody + form.best_time_pm_sat.value + ' PM\n';

	messagebody=messagebody + 'I am interested in:\n';
	if(form.free_alarm.checked)
		messagebody=messagebody + 'Free Alarm System and Satellite\n';

	if (form.comments.value.length > 0)
		messagebody=messagebody + 'Additional Comments:\n' + form.comments.value + '\n';

	form.sender.value = form.email.value;
	form.bodytext.value=messagebody;
	return true;	
}
