var iconBlue = new GIcon(); 
iconBlue.image = 'http://labs.google.com/ridefinder/images/mm_20_blue.png';
iconBlue.shadow = 'http://labs.google.com/ridefinder/images/mm_20_shadow.png';
iconBlue.iconSize = new GSize(12, 20);
iconBlue.shadowSize = new GSize(22, 20);
iconBlue.iconAnchor = new GPoint(6, 20);
iconBlue.infoWindowAnchor = new GPoint(5, 11);

var map;

function gmap_load() {
	
	if (GBrowserIsCompatible()) {
		
		map = new GMap2(document.getElementById("gmap"));
	  
		map.setCenter(new GLatLng(0, -97), 2);

		map.disableScrollWheelZoom();
		map.disableDoubleClickZoom();

		GDownloadUrl("/collegehumor-live-tour/tourdates.xml", function(data) {
			
			var xml = GXml.parse(data);
			var markers = xml.documentElement.getElementsByTagName("marker");
			
			for (var i = 0; i < markers.length; i++) {
				
				var id = markers[i].getAttribute("id");
				var venue = markers[i].getAttribute("venue");
				var citystate = markers[i].getAttribute("citystate");
				var dates = markers[i].getAttribute("dates");
				var extras = markers[i].getAttribute("extras");
				var url = markers[i].getAttribute("url");

				var lat = parseFloat(markers[i].getAttribute("lat"));
				var lng = parseFloat(markers[i].getAttribute("lng"));
				
				var point = new GLatLng(lat, lng);
				
				var marker = createMarker(point, venue, citystate, dates, extras, url, id);

				map.addOverlay(marker);
			}
		});

//		var pointSW = new GLatLng(2, -149);
//		var pointNE = new GLatLng(60, -44);
//
//		var groundOverlay = new GGroundOverlay(
//		   "http://john.collegehumor.com/artwork/chlive/img_map_overlay.png", map.getBounds());
//
//		map.addOverlay(groundOverlay);

	}

}

function createMarker(point, venue, citystate, dates, extras, url, id) {
	var marker = new GMarker(point, iconBlue);

	var html = "<b>" + dates + "</b><br />";

	html += venue + "<br />";

	html += citystate + "<br /><br />";

	if(extras.length)
		html += "<small>" + extras + "</small><br /><br />";

	if(url.length)
		html += "<a href=\"" + url + "\">Click here for more info!</a>";


	GEvent.addListener(marker, 'click', function() {
		
		marker.openInfoWindowHtml(html);
	
	});

	var textlink = $('tour_' + id);

	Event.observe(textlink, 'mouseover', function() {
		
		marker.openInfoWindowHtml(html);
//		map.panTo(new GLatLng(this.getPoint().lat(), this.getPoint().lng()));
	});

	return marker;
}