function validatePropertyInquiryForm(form) {

    // The code will need to be modified based on the the
    // actual contents of the form

	if (isWhitespace(form.ContactName.value)) {
        alert ("Please provide your name");
        form.ContactName.focus();
        return false;
	}
	if (isWhitespace(form.ContactPhone.value)) {
        alert ("Please provide your phone number");
        form.ContactPhone.focus();
        return false;
	}
	if (!isWhitespace(form.ContactEmail_EM.value)) {
	    if (!isEmail(form.ContactEmail_EM.value)) {
            alert ("Email address appears to be in invalid format");
            form.ContactEmail_EM.focus();
            return false;
        }
	}
	if (isWhitespace(form.Message.value)) {
        alert ("Please write a message");
        form.Message.focus();
        return false;
	}
    return true;
}
function xmlhttpPost(form, strURL, validationFunc, toggleElem, targetElemId) {

// We come in with the form, the URL to invoke on submit, the validation function to
// invoke, and the element to toggle

    if (!validationFunc(form)) {
        return false;
    }

    var xmlHttpReq = false;
    var self = this;
    // Mozilla/Safari
    if (window.XMLHttpRequest) {
        self.xmlHttpReq = new XMLHttpRequest();
    }
    // IE
    else if (window.ActiveXObject) {
        self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
    }
    self.xmlHttpReq.open('POST', strURL, true);
    self.xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    self.xmlHttpReq.onreadystatechange = function() {
        if (self.xmlHttpReq.readyState == 4) {
            updatepage(self.xmlHttpReq.responseText, targetElemId);
        }
    }
    self.xmlHttpReq.send(getquerystring(form));
    toggle_it(toggleElem);
}

function getquerystring(form) {
    var queryStr = "";
    var separator = "";
    for (var i = 0; i < form.elements.length - 1; i++) {
        var elemValue = form.elements[i].value;
        var elemName = form.elements[i].name;
        elemName = escape(elemName);
        elemValue = escape(elemValue);
        queryStr += separator;
        queryStr += elemName;
        queryStr += "=";
        queryStr += elemValue;
        separator = "&";
	}
    // NOTE: no '?' before querystring
    return queryStr;
}

function updatepage(str, elemName){
    document.getElementById(elemName).innerHTML = str;
}


function toggle_it(itemID){
    // Toggle visibility between none and inline
    if ((document.getElementById(itemID).style.display == 'none'))
    {
      document.getElementById(itemID).style.display = 'inline';
    } else {
      document.getElementById(itemID).style.display = 'none';
    }
    document.getElementById(itemID).innerHTML = '';
}
