	// this variable will collect the html which will eventually be placed in the side_bar
    var sideBar = "";
    var gmarkers = [];
    var i = 0;
	
	var _gmap = null;
	 	
	function GoogleMapLoad() 
	{
		if (GBrowserIsCompatible()) 
		{
			_gmap = new GMap2(document.getElementById("map"));
			_gmap.addControl(new GLargeMapControl());
			_gmap.addControl(new GMapTypeControl());
			_gmap.addControl(new GOverviewMapControl(),
               new GControlPosition(G_ANCHOR_BOTTOM_RIGHT, new GSize(10, 10)));
			
			if (typeof DisplayMarkers == 'function')
			{
				DisplayMarkers(); // JS Function emitted serverside.
			}
		}
		else
		{
			document.getElementById("map").innerHTML = 'Sorry, your browser is not supported for viewing results on a map.<br /><br />Please use either <a href="http://www.mozilla.com/firefox/" target="_blank">Firefox</a> or <a href="http://www.microsoft.com/windows/ie/ie6/" target="_blank">Internet Explorer</a>.';
		}
	}
	
	function GoogleMapLoadWithNoOverviewMap() 
	{
		if (GBrowserIsCompatible()) 
		{
			_gmap = new GMap2(document.getElementById("map"));
			_gmap.addControl(new GLargeMapControl());
			_gmap.addControl(new GMapTypeControl());			

			if (typeof DisplayMarkers == 'function')
			{
				DisplayMarkers(); // JS Function emitted serverside.
			}
		}
		else
		{
			document.getElementById("map").innerHTML = 'Sorry, your browser is not supported for viewing results on a map.<br /><br />Please use either <a href="http://www.mozilla.com/firefox/" target="_blank">Firefox</a> or <a href="http://www.microsoft.com/windows/ie/ie6/" target="_blank">Internet Explorer</a>.';
		}
	}	
		
	function SetCenter(lat, lng, zoom)
	{
		var point = new GLatLng(lat, lng);
		_gmap.setCenter(point, zoom);
	}
	
	function SetBounds(midLat, maxLat, minLat, midLng, maxLng, minLng)
	{
		var pointSW = new GLatLng(minLat, minLng);
		var pointNE = new GLatLng(maxLat, maxLng);
		
		var bounds = new GLatLngBounds(pointSW,  pointNE);
		var zoom = _gmap.getBoundsZoomLevel(bounds);
		SetCenter(midLat, midLng, zoom);
	}
	
	function AddBrokerMarker(lat, lng, title, htmlInfoWindow, icon)
	{
		var options = new Object();
		options.title = title;
		options.clickable = true;
		
		marker = CreateMarker(_gmap, new GLatLng(lat, lng), htmlInfoWindow, '', '');
				
		_gmap.addOverlay(marker, options);	
	}

	
	
		
	function CreateMarker(gmap, point, htmlInfoWindow, gicon, giconfocused) 
	{	
			var _gicon = new GIcon();
        	_gicon.image = "images/mm_20_red.png";
        	_gicon.iconSize = new GSize(12, 20);
        	_gicon.shadow = "images/mm_20_shadow.png";
        	_gicon.shadowSize = new GSize(22, 20);
        	_gicon.iconAnchor = new GPoint(6, 10);
        	_gicon.infoWindowAnchor = new GPoint(5, 13);

		var marker = new GMarker(point,_gicon);

		GEvent.addListener(marker, "click", function() {
			marker.openInfoWindowHtml(htmlInfoWindow);
		});
        gmarkers[i] = marker;
        sideBar += '<a href="javascript:myclick(' + i + ',\''+ htmlInfoWindow +'\')">' + htmlInfoWindow + '</a><br>';
        i++;
		return marker;	
	}
      // This function picks up the click and opens the corresponding info window
      function myclick(i,htm) 
      {
        gmarkers[i].openInfoWindowHtml(htm);
      }
      
      
		
//	function createFocusMarker(point, htmlInfoWindow, giconFocus) {
//		
//		var focusmarker = new GMarker(point,giconFocus);
//		GEvent.addListener(focusmarker, "click", function() {
//			focusmarker.openInfoWindowHtml(htmlInfoWindow);
//		});
//		return focusmarker;
//	}
	
	function OpenBrokerCard(id)
	{
		popitup('BrokerDetail.aspx?broker='+id);
        //alert(id);
	}		
		
	function zoomRightIn(lat, lng)
	{
		var zoom = (_gmap.getZoom() >= 16) ? (_gmap.getZoom() + 2) : 16;
		_gmap.setMapType(G_NORMAL_MAP);
		_gmap.setZoom(zoom);
		_gmap.panTo(new GLatLng(lat, lng));
		_gmap.closeInfoWindow();
	}
	
	function zoomIn(lat, lng)
	{
		_gmap.setZoom(_gmap.getZoom() + 1);
		_gmap.panTo(new GLatLng(lat, lng));
	}
	
	function zoomOut()
	{
		_gmap.setZoom(_gmap.getZoom() - 1);
	}










