﻿//<![CDATA[
function load() {
	if (GBrowserIsCompatible()) {
		var gmarkers = [];
		var htmls = "";
		var i = 0;
		
		var map = new GMap2(document.getElementById("map"));
		map.addControl(new GSmallMapControl());
	    map.addControl(new GMapTypeControl());
	    map.setCenter(new GLatLng(0,0), 0);
	      	
   	  	// base icons
    	var baseIcon = new GIcon();
     	baseIcon.iconSize = new GSize (12,20);
     	baseIcon.shadow = "shadow.png";
     	baseIcon.shadowSize = new GSize(22,20);
      	baseIcon.iconAnchor = new GPoint(6,20);
      	baseIcon.infoWindowAnchor = new GPoint (6,1);
      	baseIcon.infoShadowAnchor = new GPoint(13,13);

	    // array of customized icons
	   	var gicons = [];
      	gicons["9"] = new GIcon(baseIcon, "http://graphicdesignr.net/mm/blue.png");
      	gicons["18"]= new GIcon(baseIcon, "http://graphicdesignr.net/mm/green.png");
      	gicons["9/9/9"] = new GIcon(baseIcon, "http://graphicdesignr.net/mm/red.png");
      	gicons["18/9"] = new GIcon(baseIcon, "http://graphicdesignr.net/mm/red.png");
      	gicons["27"] = new GIcon(baseIcon, "http://graphicdesignr.net/mm/red.png");
		    

	    // function creates marker and window
	    function createMarker(point, course, address, city, state, zip, holes, par, yards, green, cart, pull, discount, league, phone, web) {
	    	var marker = new GMarker(point,gicons[holes]);
	    	GEvent.addListener(marker, "click", function() {
				if (state == "MO") {
					var html = '<table width="300" border="0" cellspacing="0" cellpadding="0"><tr><td><h3>' + course + '</h3></td></tr><tr><td><i>' + holes + ' holes &bull; par ' + par + ' &bull; ' + yards + ' yards </i></td></tr><tr><td>' + address + ', ' + city + ', ' + state + ' ' + zip + '</td></tr><tr><td><b>Green fees:</b> ' + green + '</td></tr><tr><td><b>Cart:</b> ' + cart + '</td></tr><tr><td><b>Pull cart:</b> ' + pull + '</td></tr><tr><td><b>Discounts:</b> ' + discount + '</td></tr><tr><td><b>Leagues:</b> ' + league + '</td></tr><tr><td><b>Phone:</b> ' + phone + '</td></tr><tr><td><b>Web:</b> <a href="http://' + web + '">' + web + '</a></td></tr></table>';
	      			marker.openInfoWindowHtml(html);
	      		} else  {
					var html = '<table width="300" border="0" cellspacing="0" cellpadding="0"><tr><td><h3>' + course + '</h3></td></tr><tr><td><i>' + holes + ' holes &bull; par ' + par + ' &bull; ' + yards + ' yards </i></td></tr><tr><td>' + address + ', ' + city + ', ' + state + ' ' + zip + '</td></tr><tr><td><b>Green fees:</b> ' + green + '</td></tr><tr><td><b>Cart:</b> ' + cart + '</td></tr><tr><td><b>Pull cart:</b> ' + pull + '</td></tr><tr><td><b>Discounts:</b> ' + discount + '</td></tr><tr><td><b>Leagues:</b> ' + league + '</td></tr><tr><td><b>Phone:</b> ' + phone + '</td></tr><tr><td><b>Web:</b> <a href="http://' + web + '">' + web + '</a></td></tr></table>';
	      			marker.openInfoWindowHtml(html);
	      		}

			});
	      	return marker;
		}
				
		function myclick(i) {
			GEvent.trigger(gmarkers[i], "click");
		}
		      	
	    var bounds = new GLatLngBounds();

	    // get xml file -- double-check link
	    GDownloadUrl("http://graphicdesignr.net/docs/golf.xml", function(data, responseCode) {
	      	var xml = GXml.parse(data);
	      	var markers = xml.documentElement.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 course = markers[i].getAttribute("course");
	      		var address = markers[i].getAttribute("address");
	      		var city = markers[i].getAttribute("city");
	      		var state = markers[i].getAttribute("state");
	      		var zip = markers[i].getAttribute("zip");
	      		var holes = markers[i].getAttribute("holes");
	      		var par = markers[i].getAttribute("par");
	      		var yards = markers[i].getAttribute("yards");
	      		var green = markers[i].getAttribute("green");
	      		var cart = markers[i].getAttribute("cart");
	      		var pull = markers[i].getAttribute("pull");
	      		var discount = markers[i].getAttribute("discount");
	      		var league = markers[i].getAttribute("league");
	      		var phone = markers[i].getAttribute("phone");
	      		var web = markers[i].getAttribute("web");
	      			
	      		var marker = createMarker(point, course, address, city, state, zip, holes, par, yards, green, cart, pull, discount, league, phone, web);
	      		map.addOverlay(marker);
	      		bounds.extend(point);
	      	}
	      		
	      	map.setZoom(map.getBoundsZoomLevel(bounds));
			map.setCenter(bounds.getCenter());
		});

	} else {
		alert("Sorry, but your browser is not compatible with Google Maps.");
	}
}
