var mf_map = null;
var mf_mgr = null;
var mf_markers = [];
var mf_infoidx = {tab:0,id:1,thumb:2,name:3,addr1:4,addr2:5,city:6,state:7,zip:8};
var mf_info = ["","","","","","","","",""];
var mf_latlngidx = {lat:0,lng:1,color:2};
var mf_latlng = [0,0,0];
var mf_mapID = "";

function loadGMap() {
	if (GBrowserIsCompatible()) {
		mf_map = new GMap2(document.getElementById(mf_mapID));
		mf_map.addControl(new GSmallMapControl()); 
		mf_map.addControl(new GMapTypeControl());
		mf_map.setCenter(new GLatLng(mf_latlng[0][mf_latlngidx.lat],mf_latlng[0][mf_latlngidx.lng]), 12);
		var baseIcon = new GIcon();
		baseIcon.shadow = "/images/map/pin_shadow.png";
		baseIcon.iconSize = new GSize(20, 34);
		baseIcon.shadowSize = new GSize(40, 34);
		baseIcon.iconAnchor = new GPoint(10, 34);
		baseIcon.infoWindowAnchor = new GPoint(10, 1);
		mf_mgr = new GMarkerManager(mf_map);
		var icon = null;
		for (var i=0;i<mf_latlng.length;i++) {
			icon = new GIcon(baseIcon);
			if (mf_latlng[i][mf_latlngidx.color]==0) {
				icon.image = "/images/map/pin"+(i+1)+".png";
			} else {
				switch (mf_info[i][mf_infoidx.tab]) {
					case "S":
						icon.image = "/images/map/pin_blue.png";
						break;
					case "A":
						icon.image = "/images/map/pin_orange.png";
						break;
					case "H":
						icon.image = "/images/map/pin_green.png";
						break;
					default:
						icon.image = "/images/map/pin"+(i+1)+".png";
						break;
				}
			}
			mf_markers[i] = new GMarker(new GLatLng(mf_latlng[i][mf_latlngidx.lat],mf_latlng[i][mf_latlngidx.lng]),icon);
			createClickListener(mf_markers[i],i);
		}
		mf_mgr.addMarkers(mf_markers, 3);
		mf_mgr.refresh();
	}
}
function createClickListener(marker,id) {
	GEvent.addListener(marker, "click", 
		function () {
			showInfo(id);
		}
	);
}
function showPin(id,sh) {
	if (sh) {
		mf_markers[id].show();
		showInfo(id);
	} else {
		mf_markers[id].closeInfoWindow();
		mf_markers[id].hide();
	}
}
function showInfo(id) {
	var html;
	if (mf_markers[id].isHidden()) {
		mf_markers[id].show();
		var cb = eval("document.mapForm.cb_"+mf_info[id][mf_infoidx.id]);
		if (cb != null) {
			cb.checked = true;
		}
	}
	html = "<p><a href=\"javascript:ShowDetails('" + mf_info[id][mf_infoidx.tab] + "'," + mf_info[id][mf_infoidx.id] + ");void(0);\">" + mf_info[id][mf_infoidx.name] + "</a><br />" + mf_info[id][mf_infoidx.addr1] + "<br />";
	if (mf_info[id][mf_infoidx.addr2].length > 0) {
		html += mf_info[id][mf_infoidx.addr2] + "<br />";
	}
	html += mf_info[id][mf_infoidx.city] + ", " + mf_info[id][mf_infoidx.state] + " " + mf_info[id][mf_infoidx.zip] + "<br /><br />"
				+ "<a href=\"javascript:ShowDetails('" + mf_info[id][mf_infoidx.tab] + "'," + mf_info[id][mf_infoidx.id] + ");void(0);\">Book Now</a></p>";
	if (mf_info[id][mf_infoidx.thumb].length > 0) {
		html = "<img src=\"http://static.reservedirect.net/media/thumbnail/" + mf_info[id][mf_infoidx.thumb] + "\" width=100 height=75 align=left style=\"margin-right:4px;margin-bottom:4px;\">" + html;
	}
	mf_markers[id].openInfoWindowHtml(html);
}
function showProperty(lat,lng,id,name) {
	var pt = new GLatLng(lat,lng);
	mf_map.panTo(pt);
	showInfo(id-1);
}

