	var map;

	function loadMap(){
		if (GBrowserIsCompatible()) {
        	// Map Initialization
			map = new GMap2(document.getElementById("map"));
			map.addControl(new GSmallMapControl());
			map.addControl(new GMapTypeControl());
			map.setCenter(new GLatLng(19, -89), 7, G_HYBRID_MAP);			
			// Plotting the points
			parseXML();
	    }
	}

	function parseXML(){
		GDownloadUrl("points.xml", function(data, responseCode) {
			var xml = GXml.parse(data);
			var markers = xml.getElementsByTagName("marker");
			for (var i = 0; i < markers.length; i++) {
				var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
		                            	parseFloat(markers[i].getAttribute("lng")));
				var marker = createMarker(point,markers[i].getAttribute("text"),markers[i].getAttribute("link"));
				map.addOverlay(marker);
			}
		});
	}
	
	function createMarker(point,text,url) {
		if (url) 
			var html = '<div style="white-space:nowrap;"><a href="' + url + '"><b>' + text + '</b></a></div>';
		else
			var html = '<div style="white-space:nowrap;"><b>' + text + '</b></div>';				
		var marker = new GMarker(point);
		GEvent.addListener(marker, "click", function() {
			marker.openInfoWindowHtml(html);
		});
		return marker;
	}
