function createRequestObject() {
	var ro;
	ro = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHTTP");
	return ro;
}

var http = createRequestObject();

function sendRequest(type, action) {

	var rpcDateObject = new Date();
	http.open('get', '/scripts/ajax.php?timestamp=' + rpcDateObject.getTime() + '&action=' + action);
	
	switch (type) {
		case 'sendEnquiryEmail':
			http.onreadystatechange = handleEnquiryResponse;
			break;
	}
	http.send(null);
}

function handleEnquiryResponse() {
	if (http.readyState == 4) {
		var response = http.responseXML;
		var error = response.getElementsByTagName("error")[0];
		var errorMessage = response.getElementsByTagName("message")[0];
		
		if (errorMessage && errorMessage.childNodes[0].nodeValue) {
			document.getElementById('sendEnquiryErrorMessage').innerHTML = errorMessage.childNodes[0].nodeValue;
		} else {
			document.getElementById('sendEnquiryRow').style.display = 'none';
			document.getElementById('enquirySentMessage').style.display = 'block';
		}
	}
}

function sendEnquiryAJAX(f, type) {
	if (f.name.value =='') {
		alert("Please enter your name.");
		return false;
	} else if (f.email.value == '' && f.telephone.value == '') {
		alert("Please enter an email address and/or telephone number.");
		return false;
	} else if (f.enquiry.innerHTML == '' || f.enquiry.innerHTML == 'Your Message...') {
		alert("Please enter a message for the property owner.");
		return false;
	}
	
	if (!type) type = 'property';
	
	var action = "sendEnquiry&type=" + type + "&id=" + encodeURIComponent(f.propertyId.value) + "&fromName=" + encodeURIComponent(f.name.value);
	action += "&fromEmail=" + encodeURIComponent(f.email.value);
	if (f.arrival) {
		action += "&arrivalDate=" + encodeURIComponent(f.arrival.value);
	}
	if (f.departure) {
		action += "&departureDate=" + encodeURIComponent(f.departure.value);
	}
	action += "&fromTelephone=" + encodeURIComponent(f.telephone.value) + "&message=" + encodeURIComponent(f.enquiry.innerHTML);
	sendRequest('sendEnquiryEmail', action);
		
}