var Ajax_states = false;
var Ajax_counties = false;
var Ajax_cities = false;
var Ajax_zipcodes = false;

function AjaxRequest(){
	var Ajax = false;
	if(window.XMLHttpRequest){
		Ajax = new XMLHttpRequest();			
	}else if(window.ActiveXObject){
		try{
			Ajax = new ActiveXObject("Msxml2.XMLHTTP");				
		}catch(e){
			try{
				Ajax = new ActiveXObject("Microsoft.XMLHTTP");
			}catch(e) { }
		}
	}
	return Ajax;
}

//==================================================================
// STATES
//==================================================================
function build_combo_states(state_sg){	
	Ajax_states = new AjaxRequest();		
	if(!Ajax_states){
		alert("Error inicializing Ajax!");
		return;
	}
	Ajax_states.onreadystatechange = build_combo_states_ajax;
	Ajax_states.open('GET', 'build_combo_states.php?state_sg='+state_sg, true);
	Ajax_states.send(null);
}
function build_combo_states_ajax(){	
	var ss = document.getElementById("combo_states");
	if(Ajax_states.readyState == 4){
		if(Ajax_states.status == 200 ){
			var html_response = Ajax_states.responseText;
			ss.innerHTML = html_response;
		}
		else{
			alert("Server error!");
		}
	}
}

//==================================================================
// COUNTIES
//==================================================================
function build_combo_counties(state_sg, county_name){
	Ajax_counties = new AjaxRequest();		
	if(!Ajax_counties){
		alert("Error inicializing Ajax!");
		return;
	}
	Ajax_counties.onreadystatechange = build_combo_counties_ajax;
	Ajax_counties.open('GET', 'build_combo_counties.php?state_sg='+state_sg+'&county_name='+county_name, true);
	Ajax_counties.send(null);
}
function build_combo_counties_ajax(){	
	var ss = document.getElementById("combo_counties");
	if(Ajax_counties.readyState == 4){
		if(Ajax_counties.status == 200 ){
			var html_response = Ajax_counties.responseText;
			ss.innerHTML = html_response;
		}
		else{
			alert("Server error!");
		}
	}
}

//==================================================================
// CITIES
//==================================================================
function build_combo_cities(state_sg, county_name, city){
	Ajax_cities = new AjaxRequest();		
	if(!Ajax_cities){
		alert("Error inicializing Ajax!");
		return;
	}
	Ajax_cities.onreadystatechange = build_combo_cities_ajax;
	Ajax_cities.open('GET', 'build_combo_cities.php?state_sg='+state_sg+'&county_name='+county_name+'&city='+city, true);
	Ajax_cities.send(null);
}
function build_combo_cities_ajax(){	
	var ss = document.getElementById("combo_cities");
	if(Ajax_cities.readyState == 4){
		if(Ajax_cities.status == 200 ){
			var html_response = Ajax_cities.responseText;
			ss.innerHTML = html_response;
		}
		else{
			alert("Server error!");
		}
	}
}

//==================================================================
// ZIPCODES
//==================================================================
function build_combo_zipcodes(state_sg, county_name, city, zipcode){
	Ajax_zipcodes = new AjaxRequest();		
	if(!Ajax_zipcodes){
		alert("Error inicializing Ajax!");
		return;
	}
	Ajax_zipcodes.onreadystatechange = build_combo_zipcodes_ajax;
	Ajax_zipcodes.open('GET', 'build_combo_zipcodes.php?state_sg='+state_sg+'&county_name='+county_name+'&city='+city+'&zipcode='+zipcode, true);
	Ajax_zipcodes.send(null);
}
function build_combo_zipcodes_ajax(){	
	var ss = document.getElementById("combo_zipcodes");
	if(Ajax_zipcodes.readyState == 4){
		if(Ajax_zipcodes.status == 200 ){
			var html_response = Ajax_zipcodes.responseText;
			ss.innerHTML = html_response;
		}
		else{
			alert("Server error!");
		}
	}
}

function select_counties(){
	var state_sg = document.getElementById("state_sg").value;
	
	build_combo_counties(state_sg, '');
	clean_select("combo_cities");
	clean_select("combo_zipcodes");
}
function select_cities(){
	var state_sg = document.getElementById("state_sg").value;
	var county_name = document.getElementById("county_name").value;
	
	build_combo_cities(state_sg, county_name,'');
	clean_select("combo_zipcodes");
}
function select_zipcodes(){
	var state_sg = document.getElementById("state_sg").value;
	var county_name = document.getElementById("county_name").value;
	var city = document.getElementById("city").value;
	
	build_combo_zipcodes(state_sg, county_name, city, '');
}
function clean_select(select_name){
	var select_obj = document.getElementById(select_name);
	if( select_name == "combo_cities"){
		select_obj.innerHTML = "<select name=\"city\" class=\"select_modify_state\" id=\"city\" onchange=\"javascipt:select_zipcodes()\"><option value=\"\" selected=\"selected\">Select a County First</option></select>";
	}
	else if(select_name == "combo_zipcodes"){
		select_obj.innerHTML = "<select name=\"zipcode\" class=\"select_modify_state\" id=\"zipcode\"\"><option value=\"\" selected=\"selected\">Select a State First</option></select>";
	}
	
}
function search_submit(){
	var state_sg = document.getElementById("state_sg").value;
	var county_name = document.getElementById("county_name").value;
	var city = document.getElementById("city").value;
	var zipcode = document.getElementById("zipcode").value;
	
	var url = "http://www.foreclosurerepos.com/listings/";
	
	if(zipcode == '' && state_sg == ''){
		window.alert("Please, select a state to begin your search.");
	}
	else{
		if(zipcode != ''){
			url += zipcode+".html";
		}
		else{
			if(state_sg  != ''){
				url += state_sg;
				if(county_name  != ''){
					url += "/"+county_name;
					if(city  != ''){
						url += "/"+city+".html";
					}
					else
						url += ".html";
				}
				else
					url += ".html";
			}
		}
		window.location = url;
	}	
}