// JavaScript Document
var req = createXMLHttpRequest();

function stripcommas(str) {
	return str.replace(/,/g,'');
}

function stripdollar(str) {
	return str.replace(/\$/g,'');
}

function strip(str) {
	return stripdollar(stripcommas(str));
}

function createXMLHttpRequest() {
	var ua;
	if(window.XMLHttpRequest) {
		try {
			ua = new XMLHttpRequest();
		} catch(e) {
			ua = false;
		}
	} else if(window.ActiveXObject) {
		try {
			ua = new ActiveXObject("Microsoft.XMLHTTP");
		} catch(e) {
			ua = false;
		}
	}
	return ua;
}

function submitComment() {
	var form = document.getElementById("contact-form");
	
	var values = "name="+form.name.value;
	values += "&email="+form.email.value;
	values += "&comment="+form.comment.value;	

	var errors = "";
	
	// check the email address
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!filter.test(form.email.value))	{
		errors = "The email address was not formatted correctly. Please enter again.\n";
		form.email.style.border = "1px solid #ff0000";	
	}

	if(errors.length > 0) {
		alert("Errors were found in the information you entered. Please correct the following:\n\n"+errors);
		return null;
	} 
	
	if(values != null) {

		req.open('get', 'emailcomment.php?'+values);
		req.onreadystatechange = handleResponseForEmailingComment;
		req.send(null);	
	}
}

function handleResponseForEmailingComment() {
   if(req.readyState == 4){
		var response = req.responseText;
		window.location = "commentsent.html";	
   } 
}

function submitEBookRequest() {
	var form = document.getElementById("ebook-form");
	
	var values = "name="+form.name.value;
	values += "&email="+form.email.value;

	var errors = "";
	
	// check the email address
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!filter.test(form.email.value))	{
		errors = "The email address was not formatted correctly. Please enter again.\n";
		form.email.style.border = "1px solid #ff0000";	
	}
	
	if (form.word.value.length == 0 || form.word.value.toLowerCase() != "free")	{
		errors += "The word from the image ('free' hint hint) was not entered. Are you a robot? Please enter again.\n";
		form.word.style.border = "1px solid #ff0000";	
	}

	if(errors.length > 0) {
		alert("Errors were found in the information you entered. Please correct the following:\n\n"+errors);
		return null;
	} 
	
	if(values != null) {

		req.open('get', 'emailebookrequest.php?'+values);
		req.onreadystatechange = handleResponseForEmailingEBook;
		req.send(null);	
	}
}

function handleResponseForEmailingEBook() {
   if(req.readyState == 4){
		var response = req.responseText;
		window.location = "ebookdownloaded.html";	
   } 
}

function submitShortForm() {
	var form = document.getElementById("quickform");
	
	var values = "name="+form.name.value;
	values += "&phone="+form.phone.value;
	values += "&email="+form.email.value;
	values += "&address="+form.address.value;	
	values += "&city="+form.city.value;
	values += "&state="+form.state.value;
	values += "&zip="+form.zip.value;

	var errors = "";
	
	// check the email address
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!filter.test(form.email.value))	{
		errors = "The email address was not formatted correctly. Please enter again.\n";
		form.email.style.border = "1px solid #ff0000";
	
	}
	
	// check the phone numbers
	filter = /^([0-9\-]{10,12})+$/;
	if(form.phone.value.length == 0) {
		errors += "Please enter a phone number that you can be reached at.\n";
		form.phone.style.border = "1px solid #ff0000";
	} else if (!filter.test(form.phone.value))	{
		errors += "The phone number was not formatted correctly. XXX-XXX-XXXX expected.\n";
		form.phone.style.border = "1px solid #ff0000";
	}

	// check the address
	if(form.address.value.length == 0) {
		errors += "Please enter the address of the property you are selling.\n";
		form.address.style.border = "1px solid #ff0000";
	}
		
	if(errors.length > 0) {
		alert("Errors were found in the information you entered. Please correct the following:\n\n"+errors);
		return null;
	} 
	
	if(values != null) {

		req.open('get', 'emaillead.php?'+values);
		req.onreadystatechange = handleResponseForEmailingLead;
		req.send(null);	
	}
}

function handleResponseForEmailingLead() {
   if(req.readyState == 4){
		var response = req.responseText;
		if(response != null)
			window.location = "sellform.php"+response;	
		else
			window.location = "sellform.php";
   } 
}

function submitLongForm() {
	var form = document.getElementById("longform");

	var values = "name="+form.name.value;
	values += "&phone="+form.phone.value;
	values += "&email="+form.email.value;
	values += "&address="+form.address.value;	

	values += "&beds="+form.beds.value;
	values += "&baths="+form.baths.value;	
	values += "&sqft="+form.sqft.value;
	values += "&garage="+form.garage.value;	
	values += "&pool="+form.pool.value;
	
	values += "&occupancy="+form.occupancy.value;
	values += "&repairs="+form.repairs.value;
	values += "&price="+form.price.value;
	values += "&yearsowned="+form.years_owned.value;
	
	values += "&owed="+strip(form.owed.value);	
	values += "&behind="+strip(form.behind.value);
	values += "&reason="+form.reason.value;
	
	values += "&fast="+form.fast.value;
	values += "&least="+strip(form.least.value);
	values += "&heard="+form.heard.options[form.heard.selectedIndex].value;		
	
	values += "&searchterms="+strip(form.searchterms.value);

	var radioObj = form.realtor;
	for(var i = 0; i < radioObj.length; i++) {
		if(radioObj[i].checked) {
			values += "&realtor="+radioObj[i].value;
		}
	}	
	radioObj = form.sell_owed;
	for(var i = 0; i < radioObj.length; i++) {
		if(radioObj[i].checked) {
			values += "&sellowed="+radioObj[i].value;
		}
	}	

	var errors = "";
	
	// check the source field
//	var heard = document.getElementById("heard"); 
	if(form.heard.selectedIndex == 0) {
		errors = "Please enter how you heard about us.\n";
		form.heard.style.border = "1px solid #ff0000";
	}
		
	if(errors.length > 0) {
		alert("Information was missing (fields that are red). Please correct the following:\n\n"+errors);
		return null;
	}	
	
	if(values != null) {
		 req.open('get', 'emaillonginfo.php?'+values);
		 req.onreadystatechange = handleResponseForAddingLead;
		 req.send(null);	
	}
}	

function handleResponseForAddingLead() {
   if(req.readyState == 4) {
		var response = req.responseText;
		window.location = "Congrats.html";
	}
}

function submitInvestor() {

	var form = document.getElementById("join-form");

	var values = "name="+form.firstname.value;
	values += "&lastname="+form.lastname.value;	
	values += "&companyname="+form.companyname.value;
	values += "&address="+form.address.value;	
	values += "&city="+form.city.value;

	values += "&state="+form.state.value;
	values += "&zip="+form.zip.value;
	values += "&email="+form.email.value;
	values += "&website="+form.website.value;

	values += "&workphone="+form.workphone.value;	
	values += "&homephone="+form.homephone.value;
	values += "&fax="+form.fax.value;

	values += "&cell="+form.cell.value;
	values += "&propertytypes="+form.propertytypes.value;
	values += "&pricerange="+form.pricerange.value;		

	values += "&pay="+form.pay.value;
	values += "&funding="+form.funding.value;
	values += "&closing="+form.closing.value;
	values += "&profit="+strip(form.profit.value);
	values += "&repairs="+form.repairs.value;

	values += "&source="+form.source.value;
	values += "&comments="+form.comments.value;

	var errors = "";
	
	// check the name fields
	if(form.firstname.value.length == 0) {
		errors = "Please enter your first name.\n";
		form.firstname.style.border = "1px solid #ff0000";
	}

	if(form.lastname.value.length == 0) {
		errors += "Please enter your last name.\n";
		form.lastname.style.border = "1px solid #ff0000";
	}

	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!filter.test(form.email.value))	{
		errors += "The email address was not formatted correctly. Please enter again.\n";
		form.email.style.border = "1px solid #ff0000";
	
	}

	// check the phone numbers
	filter = /^([0-9\-]{10,12})+$/;
	if(form.cell.value.length == 0) {
		errors += "Please enter a cell number that you can be reached at.\n";
		form.cell.style.border = "1px solid #ff0000";
	} else if (!filter.test(form.cell.value))	{
		errors += "The cell number was not formatted correctly. XXX-XXX-XXXX expected.\n";
		form.cell.style.border = "1px solid #ff0000";
	}
	if(errors.length > 0) {
		alert("Information was missing (fields that are red). Please correct the following:\n\n"+errors);
		return null;
	}	

	if(values != null) {
		 req.open('get', 'emailinvestor.php?'+values);
		 req.onreadystatechange = handleResponseForAddingInvestor;
		 req.send(null);	
	}
}	

function handleResponseForAddingInvestor() {
   if(req.readyState == 4) {
		var response = req.responseText;
		window.location = "InvestorAdded.html";
	}
}

