function displayDate () {
	monName = new Array ("January","February","March","April","May","June","July","August","September","October","November","December");
	now = new Date;
	document.write(monName[now.getMonth()] + " "+ now.getDate() + ", " + now.getFullYear());
}

function hilite(elem) {
	setTimeout(elem.focus(), 100);
	setTimeout(elem.select(), 100); //Does not seem to do anything
}

function SendMessage(f) { // Respond to 'Send This Message' button.
	if (validName(f.name)) {
		if (validEmail(f.email)) {
			if (validSubject(f.subject)) {
				if (validMessage(f.message)) {
					f.submit();
				}
			}
		}
	}
}

function SendQuoteRequest(f) { // Respond to 'Send Quote Request' button.
	if (validName(f.name)) {
		if (validPhone(f.phone)) {
			if (validTime(f.time)) {
				if (validEmail(f.email)) {
					if (validAddress(f.address)) {
						if (validDescription(f.message)) {
							f.submit();
						}
					}
				}
			}
		}
	}
}

function SendRepairOrder(f) { // Respond to 'Send Repair Order' button.
	if (validName(f.name)) {
		if (validAddress(f.address)) {
			if (validPhone(f.phone)) {
				if (validEmail(f.email)) {
					if (validMessage(f.message)) {
						f.submit();
					}
				}
			}
		}
	}
}

function Trap() { //Trap premature form submission on 'return' key
	return false;
}

function validAddress(elem) {
	var stripped = elem.value.replace(/\s/g, ''); // strip out all spaces
	if (stripped.length < 6) { //Need atv least 6 chars--
		alert ("Where is the property located?");
		hilite (elem);
		return false;
	}
	return true;
}

function validDescription(elem) {
	var stripped = elem.value.replace(/\s/g, ''); // strip out all spaces
	if (stripped.length == 0) { //If there is nothing left--
		alert ("Please tell us a little about the property");
		hilite (elem);
		return false;
	}
	return true;
}

function validEmail(elem) {
	var emailFilter=/^.+@.+\..{2,4}$/;
	if (!(emailFilter.test(elem.value))) {
		alert ("We are sorry! We need a valid email address.");
		hilite (elem);
		return false;
	}
	var illegalChars=/[\(\)\<\>\,\;\:\\\/\"\[\]]/;
	if (elem.value.match(illegalChars)) {
		alert ("We are sorry! Your email address appears to contain illegal characters");
		hilite (elem);
		return false;
	}
	return true;
}

function validMessage(elem) {
	var stripped = elem.value.replace(/\s/g, ''); // strip out all spaces
	if (stripped.length == 0) { //If there is nothing left--
		alert ("Message field is empty");
		hilite (elem);
		return false;
	}
	return true;
}

function validName(elem) {
	var stripped = elem.value.replace(/\s/g, ''); // strip out all spaces
	if (stripped.length == 0) { //If there is nothing left--
		alert ("What's your name?");
		hilite (elem);
		return false;
	}
	return true;
}

function validPhone(elem) {
	var stripped = elem.value.replace(/\s/g, ''); // strip out all spaces
	if (stripped.length < 7) { //Must be at least 7 digits--
		alert ("What's your phone number?");
		hilite (elem);
		return false;
	}
	return true;
}

function validSubject(elem) {
	var stripped = elem.value.replace(/\s/g, ''); // strip out all spaces
	if (stripped.length == 0) { //If there is nothing left--
		alert ("Subject field is empty");
		hilite (elem);
		return false;
	}
	return true;
}

function validTime(elem) {
	var stripped = elem.value.replace(/\s/g, ''); // strip out all spaces
	if (stripped.length == 0) { //If there is nothing left--
		alert ("When is a good time to call?");
		hilite (elem);
		return false;
	}
	return true;
}

