function windowOnLoad(f) {
	var curLoad = window.onload;
	window.onload = function() {
		if (curLoad)
			curLoad();
		f();
	}
}

var markers = new Array();
var htmls = new Array();

function loadGMap(lat, lng, zoom, points) {
	if (GBrowserIsCompatible()) {
		var map = new GMap2(document.getElementById("map_canvas"));
		map.setMapType(G_HYBRID_MAP);
		map.setCenter(new GLatLng(lat, lng), zoom);
		map.addControl(new GSmallMapControl());
		
		function createMarker(latlng, myHtml) {
			var marker = new GMarker(latlng);
			marker.value = myHtml;
			GEvent.addListener(marker, "click", function() {
				map.openInfoWindowHtml(latlng, myHtml);
			});
			return marker;
		}
		
		var latlngs = new Array();
		for (i = 0; i < points.length; i++) {
			htmls[i] = points[i][2];
			latlngs[i] = new GLatLng(points[i][0], points[i][1]);
			markers[i] = createMarker(latlngs[i], points[i][2]);
			map.addOverlay(markers[i]);
		}
	}
}

function locateToMarker(i) {
	markers[i].openInfoWindowHtml(htmls[i]);
}
