function setupMap() {
	var f = function(req) {
		if (GBrowserIsCompatible()) {
			builderInfo = eval('(' + req + ')');
			if(!builderInfo.lat) {
				var a = builderInfo.address_1+', '+builderInfo.city+', '+builderInfo.state+', '+builderInfo.zip;
				var geo = new GClientGeocoder();
				geo.getLatLng(a, buildMap);
			} else {
				buildMap(new GLatLng(builderInfo.lat, builderInfo.lng));
			}
		}
	}
	new Ajax( '/admin/ajax-data.php', { method:'post', postBody:'map=1', onComplete:f }).request();

}

function buildMap(point) {
	if(point) { 
		document.getElementById("mapOverlay").style.display = 'block';
		var map = new GMap2(document.getElementById("map"));
		
		map.setCenter(point, 13);
		map.addControl(new GSmallMapControl());
		var marker = new GMarker(point);
		GEvent.addListener(marker, "click", function() {
			var html = '<div style="width: 210px; padding-right: 10px">';
			html += '<h4>'+builderInfo.name+'</h4>';
			html += '<p>'+builderInfo.address_1+'<br />';
			if (builderInfo.address_2) 
				html += builderInfo.address_2+'<br />';
			html += builderInfo.city+', '+builderInfo.state+' '+builderInfo.zip+'<br />';
			html += 'Phone: '+builderInfo.phone+'<br />';
			if (builderInfo.fax) 
				html += 'Fax: '+builderInfo.fax+'<br />';
			html += '</p>';
			html += '<p><a href="http://maps.google.com/maps?f=d&q='+builderInfo.address_1+', '+builderInfo.city+', '+builderInfo.state+', '+builderInfo.zip+'" onclick="window.open(this.href); return false;">Get Directions</a></p>';
			html += '</div>';
			marker.openInfoWindowHtml(html);
		});

		map.addOverlay(marker);
		GEvent.trigger(marker, "click");
	} else 
		alert('There has been an error.');
}

function closeMap() {
	$('mapOverlay').style.display = 'none';	
	GUnload();
}

window.addEvent('domready', function() {
	var builderInfo = ''; 
									 
	var overlay = new Element('div').setProperty('id', 'mapOverlay').injectInside(document.body);
	var map = new Element('div').setProperty('id', 'map').injectInside(overlay);
	var dropshadow = new Element('div').injectInside(overlay);
	var c = new Element('img').setProperty('src', 'styles/images/closebox.png').injectInside(overlay);
	c.addEvent('click', closeMap);
	c.alt = 'Close Map';
	c.setStyles({'cursor':'pointer'});

	c.setStyles({'position':'absolute', 'top':'-15px', 'z-index':'3', 'left':'485px'});
	overlay.setStyles({'left':'220px', 'position':'absolute', 'z-index':'10', 'top':'220px', 'width':'505px', 'height':'405px', 'padding':'0 5px 5px 0','display':'none', 'background':'none' });
	map.setStyles({'width':'500px', 'height':'400px', 'border':'solid 1px #333', 'z-index':'2', 'background':'none'});
	dropshadow.setStyles({'width':'505px', 'height':'405px', 'background':'#333', 'position':'absolute', 'top':'0', 'z-index':'1', 'margin':'5px 0 0 5px', 'opacity':.6});
	
	document.body.addEvent('unload', function() { GUnload(); });
});

