$(function()
{
	if (GBrowserIsCompatible())
	{
		var gmap = new GMap2(document.getElementById('page-header-map'));
		gmap.addControl(new GSmallMapControl());
		gmap.addControl(new GMapTypeControl());
		//gmap.addControl( new GOverviewMapControl(new GSize(100,100)) );
		gmap.enableScrollWheelZoom();
		gmap.setCenter(new GLatLng(52.68245910122608, -2.024312917327881), 14);
		
		GDownloadUrl('resources/scripts/points.js', 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 += '<h1>' + input.companyName + '</h1>';
			html += '<p>' + input.address + '</p>';
			html += '</div>';
			return html;
		}
		
		function makeIcon(image)
		{
			var icon = new GIcon();
			icon.image = 'http://www.google.com/intl/en_us/mapfiles/ms/micons/blue-dot.png';
			//icon.shadow = 'resources/graphics/google-marker-shadow.png';
			//icon.iconSize = new GSize(20, 34);
			//icon.shadowSize = new GSize(37, 34);
			icon.iconAnchor = new GPoint(16, 32);
			//icon.infoShadowAnchor = new GPoint(25, 0);
			icon.infoWindowAnchor = new GPoint(25, 0);
			return icon;
		}
	}
});
