function sendEmail() {
	var myurl = "includes/php/emailThisLink/sendEmail.php";
	var myRand = parseInt(Math.random() * 999999999);
	
	httpObj = getXMLHTTPRequest();
	myurl = myurl + "?rand=" + myRand + 
					"&listingId=" + document.getElementById("emailThisLinkId").value + 
					"&yourName=" + document.getElementById("emailThisLinkYourName").value + 
					"&yourEmail=" + document.getElementById("emailThisLinkYourEmail").value + 
					"&friendName=" + document.getElementById("emailThisLinkFriendsName").value + 
					"&friendEmail=" + document.getElementById("emailThisLinkFriendsEmail").value + 
					"&message=" + document.getElementById("emailThisLinkMessage").value;
	
	httpObj.open("GET",myurl,true);
	httpObj.onreadystatechange = sendEmailHttpResponse;
	httpObj.send(null);
}

function sendEmailHttpResponse() {
	var emailFormObj = document.getElementById("emailThisLinkBlock");
	
	if (httpObj.readyState == 4) {
		var errorList = httpObj.responseXML.getElementsByTagName("error");
		if (errorList.length > 0) {
			emailThisLink();
			var emailFormObj = document.getElementById("emailThisLinkBlock");
			var errorParagraph;
			errorParagraph = document.createElement("p");
			errorParagraph.setAttribute("class","errorHeader");
			errorParagraph.appendChild(document.createTextNode("Error(s):"));
			emailFormObj.insertBefore(errorParagraph,emailFormObj.childNodes[0]);
			var spanObj;
			
			for (var i = 0; i < errorList.length; i++) {
				errorParagraph = document.createElement("p");
				errorParagraph.setAttribute("class","error");
				spanObj = document.createElement("span");
				spanObj.setAttribute("style","color: rgb(255,0,0)");
				spanObj.appendChild(document.createTextNode(errorList[i].childNodes[0].nodeValue));
				errorParagraph.appendChild(document.createTextNode("- "));
				errorParagraph.appendChild(spanObj);
				emailFormObj.insertBefore(errorParagraph,emailFormObj.childNodes[1]);
			}
		} else {
			var emailFormObj = document.getElementById("emailThisLinkBlock");
			clearAllNodesFrom(emailFormObj);
			var wrapperObj = document.createElement("div");
			wrapperObj.setAttribute("style","margin-top: 16px; margin-bottom: 16px");
			var paragraph = document.createElement("p");
			paragraph.appendChild(document.createTextNode("A link to this listing has been sent to the email address you provided."));
			paragraph.setAttribute("class","success");
			wrapperObj.appendChild(paragraph);
			emailFormObj.appendChild(wrapperObj);
			setTimeout(function() { Effect.Fade("emailThisLinkBlockWrapper", { duration : 1.0 } ); },2000);
		}
	} else {
		clearAllNodesFrom(emailFormObj);
		emailThisLinkShowLoadingWidget();
	}
}

function emailThisLink() {
	var emailFormObj = document.getElementById("emailThisLinkBlock");
	clearAllNodesFrom(emailFormObj);
	var emailFormWrapperObj = document.getElementById("emailThisLinkBlockWrapper");
	var formRowObj;
	var labelObj;
	var contentObj;
	var inputObj;
	var paragraph;
	var linkObj;
	
	formRowObj = document.createElement("div");
	formRowObj.setAttribute("class","formRow");
	labelObj = document.createElement("div");
	labelObj.setAttribute("class","formLabel");
	labelObj.appendChild(document.createTextNode("Your Name:"));
	contentObj = document.createElement("div");
	inputObj = document.createElement("input");
	inputObj.setAttribute("type","text");
	inputObj.setAttribute("id","emailThisLinkYourName");
	inputObj.setAttribute("style","font-size: 7pt");
	contentObj.appendChild(inputObj);
	formRowObj.appendChild(labelObj);
	formRowObj.appendChild(contentObj);
	emailFormObj.appendChild(formRowObj);
	
	formRowObj = document.createElement("div");
	formRowObj.setAttribute("class","formRow");
	labelObj = document.createElement("div");
	labelObj.setAttribute("class","formLabel");
	labelObj.appendChild(document.createTextNode("Your Email:"));
	contentObj = document.createElement("div");
	inputObj = document.createElement("input");
	inputObj.setAttribute("type","text");
	inputObj.setAttribute("id","emailThisLinkYourEmail");
	inputObj.setAttribute("style","font-size: 7pt");
	formRowObj.appendChild(labelObj);
	contentObj.appendChild(inputObj);
	formRowObj.appendChild(contentObj);
	emailFormObj.appendChild(formRowObj);
	
	formRowObj = document.createElement("div");
	formRowObj.setAttribute("class","formRow");
	labelObj = document.createElement("div");
	labelObj.setAttribute("class","formLabel");
	labelObj.appendChild(document.createTextNode("Friend's Name:"));
	contentObj = document.createElement("div");
	inputObj = document.createElement("input");
	inputObj.setAttribute("type","text");
	inputObj.setAttribute("id","emailThisLinkFriendsName");
	inputObj.setAttribute("style","font-size: 7pt");
	formRowObj.appendChild(labelObj);
	contentObj.appendChild(inputObj);
	formRowObj.appendChild(contentObj);
	emailFormObj.appendChild(formRowObj);
	
	formRowObj = document.createElement("div");
	formRowObj.setAttribute("class","formRow");
	labelObj = document.createElement("div");
	labelObj.setAttribute("class","formLabel");
	labelObj.appendChild(document.createTextNode("Friend's Email:"));
	contentObj = document.createElement("div");
	inputObj = document.createElement("input");
	inputObj.setAttribute("type","text");
	inputObj.setAttribute("id","emailThisLinkFriendsEmail");
	inputObj.setAttribute("style","font-size: 7pt");
	formRowObj.appendChild(labelObj);
	contentObj.appendChild(inputObj);
	formRowObj.appendChild(contentObj);
	emailFormObj.appendChild(formRowObj);
	
	formRowObj = document.createElement("div");
	formRowObj.setAttribute("class","formRow");
	labelObj = document.createElement("div");
	labelObj.setAttribute("class","formLabel");
	labelObj.setAttribute("style","text-align: left");
	labelObj.appendChild(document.createTextNode("Message:"));
	formRowObj.appendChild(labelObj);
	labelObj = document.createElement("div");
	labelObj.setAttribute("class","clearBlock");
	formRowObj.appendChild(labelObj);
	contentObj = document.createElement("div");
	inputObj = document.createElement("textarea");
	inputObj.setAttribute("id","emailThisLinkMessage");
	inputObj.setAttribute("style","font-size: 8pt; width: 100%; height: 60px");
	contentObj.appendChild(inputObj);
	formRowObj.appendChild(contentObj);
	emailFormObj.appendChild(formRowObj);
	
	formRowObj = document.createElement("div");
	formRowObj.setAttribute("class","formRow");
	paragraph = document.createElement("p");
	paragraph.setAttribute("style","text-align: center");
	paragraph.setAttribute("class","unstructuredContent");
	linkObj = document.createElement("a");
	linkObj.setAttribute("style","color: rgb(190,52,52)");
	linkObj.setAttribute("href","javascript:hideEmailThisLink();");
	linkObj.appendChild(document.createTextNode("Cancel"));
	paragraph.appendChild(linkObj);
	paragraph.appendChild(document.createTextNode(" | "));
	linkObj = document.createElement("a");
	linkObj.setAttribute("style","color: rgb(190,52,52)");
	linkObj.setAttribute("href","javascript:sendEmail();");
	linkObj.appendChild(document.createTextNode("Send Email"));
	paragraph.appendChild(linkObj);
	formRowObj.appendChild(paragraph);
	emailFormObj.appendChild(formRowObj);
	
	
	
	emailFormWrapperObj.style.position = "absolute";
	var linkPos = findPosition(document.getElementById("emailLink"));
	emailFormWrapperObj.style.top = (linkPos[1] + 8) + "px";
	emailFormWrapperObj.style.left = (linkPos[0] + 140) + "px";
	emailFormWrapperObj.style.zIndex = "10";
	emailFormWrapperObj.style.display = "block";
	emailFormWrapperObj.style.visibility = "visible";
}

function emailThisLinkShowLoadingWidget() {
	var emailFormObj = document.getElementById("emailThisLinkBlock");
	clearAllNodesFrom(emailFormObj);
	var wrapperObj = document.createElement("div");
	wrapperObj.setAttribute("style","text-align: center; margin-top: 32px; margin-bottom: 32px");
	var imgObj = document.createElement("img");
	imgObj.setAttribute("src","images/interface/emailThisLink/ajax-loader.gif");
	imgObj.setAttribute("width","32");
	imgObj.setAttribute("height","32");
	imgObj.setAttribute("border","0");
	imgObj.setAttribute("alt","Loading...");
	wrapperObj.appendChild(imgObj);
	emailFormObj.appendChild(wrapperObj);
}

function hideEmailThisLink() {
	var emailFormWrapperObj = document.getElementById("emailThisLinkBlockWrapper");
	
	emailFormWrapperObj.style.display = "none";
	emailFormWrapperObj.style.visibility = "hidden";
}

function emailThisLinkHandleResize() {
	var emailFormObj = document.getElementById("emailThisLinkBlockWrapper");
	
	if (emailFormObj.style.display != "none") {
		var linkPos = findPosition(document.getElementById("emailLink"));
		emailFormObj.style.left = (linkPos[0] + 140) + "px";
	}
}