//<![CDATA[
	var map;
	var point;			
	function loadIcon(iconType){
		var iconHeight = 20;
		var iconWidth = 16;		
		var icon = new GIcon();
		icon.image = "http://www.britishorienteering.org.uk/images/flags/"+iconType+".png";
		icon.iconSize = new GSize(iconWidth, iconHeight);
		icon.iconAnchor = new GPoint(0, iconHeight);
		icon.infoWindowAnchor = new GPoint(0,iconHeight);		
		return icon;
	}
	function createMarker(latLong,text,color) {
		var marker = new GMarker(latLong, loadIcon(color));
		GEvent.addListener(marker, "click", function() {
		 marker.openInfoWindowHtml('<div class="gmapPopup">'+text+'</div>');
		});
		return marker;
	}

	function loadAllIcons(){
		var points = new Array();
		var bolSingle = false;
		for(var intIndex in arrEvents){

			var latSix =arrEvents[intIndex][0].lat;
			var longSix = arrEvents[intIndex][0].lng;
			var latLong = new GLatLng(latSix,longSix);
			var marker = createMarker(latLong,arrEvents[intIndex][1],arrEvents[intIndex][2]);
									
			map.addOverlay(marker);		
			if(eventId == arrEvents[intIndex][3]){
				 marker.openInfoWindowHtml('<div class="gmapPopup">'+arrEvents[intIndex][1]+'</div>');
				 map.setCenter(latLong, 8);
				 bolSingle = true;
			}	
			points[points.length]=latLong;

		}
		if(!bolSingle){
			fitMap(points);
		}
	}
	function mapSetup(){
		map = new GMap2(document.getElementById("map"));
		map.addControl(new GSmallMapControl());
		map.addControl(new GMapTypeControl());		
        if(homeIcon){
			map.setCenter(point, 8);
			map.addOverlay(new GMarker(point, loadIcon('home')));
		}else{
			map.setCenter(new GLatLng(55, -2), 5);
		}
		map.addMapType(G_PHYSICAL_MAP);
		map.setMapType(G_PHYSICAL_MAP); 
		loadAllIcons()
		
		map.hideControls();
		GEvent.addListener(map, "mouseover", function(){
			map.showControls();
		});
		GEvent.addListener(map, "mouseout", function(){
			map.hideControls(); 
		});
	}
	
    function load() {
      if (GBrowserIsCompatible()) {
		point = new GLatLng(lat, long);
		mapSetup(point);
		
      }	  
    }
	function fitMap( points ) {
	   var bounds = new GLatLngBounds();
	   for (var i=0; i< points.length; i++) {
		  bounds.extend(points[i]);
	   }
	   map.setZoom(map.getBoundsZoomLevel(bounds));
	   map.setCenter(bounds.getCenter());
	}
 //]]>	
