google.load("maps","2",{"other_params":"sensor=false"});
function initialize(){
	if(GBrowserIsCompatible()){
		$("#map").empty().append($(document.createElement("form")).attr("action","").append($(document.createElement("fieldset")).append($(document.createElement('label')).attr("for","add").text("Enter your address, city, and state to find out where you can get a copy of Remodel Spokane:")).append($(document.createElement("input")).attr({id:"add",name:"add",type:"text",tabindex:"1"})).append($(document.createElement("input")).attr({type:"submit",value:"Go!"}))));
		$("#map form").submit(function(event){
			event.preventDefault();
			var address=$("#add").val();
			if(address==""){
				address="9507 E Sprague Ave, Spokane Valley, WA";
			}
			var geocoder=new GClientGeocoder();
			geocoder.getLatLng(address,function(center){
				var sidebar_ul=document.createElement("ul");
				var gm=new Array();
				function createMarker(point,name,html,title){
					var marker=new GMarker(point);
					GEvent.addListener(marker,"click",function(){marker.openInfoWindowHtml(html)});
					gm.push(marker);
					$(document.createElement("li")).append($(document.createElement("a")).attr({href:gm.length-1,title:title}).text(name)).appendTo(sidebar_ul);
					return marker;
				}
				$("#map").empty().append($(document.createElement("div")).attr("id","map_canvas")).append($(document.createElement("div")).attr("id","sidebar"));
				if(center.distanceFrom(new GLatLng(47.6573650,-117.2771290),3959).toFixed(1)>100){
					center=new GLatLng(47.6573650,-117.2771290);
					$(document.createElement("p")).text("It looks like your location is more than 100 miles away from Spokane Valley! For your convenience, the default center has been used, instead.").insertBefore("#map");
				}
				var mapOptions={googleBarOptions:{style:"new"}};
				var map=new GMap2(document.getElementById("map_canvas"),mapOptions);
				map.setCenter(center,12);
				map.setUIToDefault();
				map.enableGoogleBar();
				$.get("xml/points.xml",function(xml){
					var markers=$("marker",xml);
					for(var i=0;i<markers.length;i++){
						var lat=parseFloat(markers[i].getAttribute("lat"));
						var lng=parseFloat(markers[i].getAttribute("lng"));
						var name=markers[i].getAttribute("name");
						var title=markers[i].getAttribute("address")+", "+markers[i].getAttribute("citystate");
						var html=document.createElement("address");
						$(html).attr("class","markers").append($(document.createElement("span")).attr("class","business").text(name)).append(document.createElement("br")).append(markers[i].getAttribute("address")).append(document.createElement("br")).append(markers[i].getAttribute("citystate"));
						var point=new GLatLng(lat,lng);
						var marker=createMarker(point,name,html,title);
						map.addOverlay(marker);
					}
					$("#sidebar").append(sidebar_ul).height(400);
					$("#everything").height(reSize.pre + 400);
					reSize();
					$("#sidebar a").click(function(event){
						event.preventDefault();
						i=$(this).attr("href");
						GEvent.trigger(gm[i],"click");
					});
				});
			});
		});
	}else{
		$("#map").empty().text("It looks like the Google Maps API is not compatible with this browser. Unfortunately, you will not be able to search nearby distribution centers.");
	}
	$("body").unload(function(){
		GUnload();
	});
}
google.setOnLoadCallback(initialize);