var map = null;
var markerMgr = null;
var geocoder = null;
var markers = [];

//Show our map on page load
$(document).ready(function(){
	var ctrlFbdGoogleMaps = document.getElementById('fbdGoogleMaps');		
	if(ctrlFbdGoogleMaps != undefined){
		$('#fbdGoogleMaps').show();
		var gmMap = initGoogleMaps('fbdGoogleMaps');
		renderMarkers();
	}
});

//Initialize Google Maps
function initGoogleMaps(sDivName) {
	if (GBrowserIsCompatible()) {
		//google maps object V2
		if(sDivName == undefined || sDivName == '' || sDivName == null) {
			map = new GMap2(document.getElementById("map"));
		}
		else {
			map = new GMap2(document.getElementById(sDivName));
		}
		map.setCenter(new GLatLng(50.503887, 4.469936), 7);
		map.addControl(new GSmallMapControl());
		//marker manager
		//var mgrOptions = { borderPadding: 50, maxZoom: 15, trackMarkers: false };
		//markerMgr = new MarkerManager(map, mgrOptions);
		//geocoder
		geocoder = new GClientGeocoder();

		return map;
	}  
	return null;
}

//Geocode an address
function showAddress(address, html) { 
	if (geocoder) {
		geocoder.getLatLng( 
			address, 
			function(point) {  
				if (!point) { 
					//alert(address + " not found");
				} else {  
					var marker = createMarker(point, html);  
					markers.push(marker);
					map.addOverlay(marker);
					//markerMgr.addMarker(marker);
				}  
			}); 
	}  
}  

//Display a marker on the map
function createMarker(point, html) { 
	var marker = new GMarker(point); 
	GEvent.addListener(marker, 'click', function() {  
		marker.openInfoWindowHtml(html); 
	});  
	return marker;  
} 

//Clear markers
function clearMarkers() {  
	if (markers) {     
		for (i in markers) {       
			markers[i].setMap(null);     
		}   
	} 
} 
