$(function()
{
	
	if (GBrowserIsCompatible())
	{
	
		var gmap = new GMap2(document.getElementById('map'));
		gmap.addControl( new GSmallMapControl() );
		gmap.addControl( new GMapTypeControl()) ;
		//gmap.addControl( new GOverviewMapControl(new GSize(100,100)) );
		gmap.enableScrollWheelZoom();
		gmap.setMapType(G_HYBRID_MAP);
		gmap.setCenter( new GLatLng(51.29445800933084, -0.815933346748352), 17 );
		
		GDownloadUrl('../wp-content/themes/tgm/resources/scripts/points.json', function(data, responseCode)
		{
			parseJson(data);
		});
	
		function parseJson(doc)
		{
			var jsonData = eval("(" + doc + ")");
			for (var i = 0; i < jsonData.markers.length; i++)
			{
				var marker = createMarker(jsonData.markers[i]);
				gmap.addOverlay(marker);
			}
		}
	
		function createMarker(input)
		{
			var marker = new GMarker(input.point);//, makeIcon(input.markerImage) );
			GEvent.addListener(marker, "click", function()
			{
				marker.openInfoWindowHtml(formatWindow(input));
			});
			return marker;
		}
		
		function formatWindow(input)
		{
			var html = "<div class=\"bubble\">";
			html += "<h4>" + input.companyName + "</h4>";
			html += "<p>" + input.address + "</p>";
			/* Some more formatting */
			html += "</div>";
			return html;
		}
		
		/*function makeIcon (image)
		{
			var icon = new GIcon();
			icon.image = "graphics/google-marker.png";
			icon.shadow = "graphics/google-shadow.png";
			icon.iconSize = new GSize(32, 32);
			icon.shadowSize = new GSize(59, 32);
			icon.iconAnchor = new GPoint(16, 32);
			icon.infoShadowAnchor = new GPoint(25, 16);
			icon.infoWindowAnchor = new GPoint(25, 16);
			return icon;
		}*/
		
	} 
	else 
	{
		alert("Sorry, your browser does not support Google Maps");
	}

});
