var map;
var initload = 1;
var redraw=0;
var icon=null;
var bounds =  new GLatLngBounds();
var defzoom = 7;
var setbounds = 1;

function setMap() {
     if (GBrowserIsCompatible()) {
        map = new GMap2(document.getElementById("map"));
        map.addControl(new GMapTypeControl());
		map.addControl(new GLargeMapControl());
		map.hideControls();
        map.enableDoubleClickZoom();
		GEvent.addListener(map, "mouseover", function(){map.showControls();});
		GEvent.addListener(map, "mouseout", function(){map.hideControls();});
        icon = new GIcon();
        icon.image = "images/mm_20_red.png";
        icon.shadow = "images/mm_20_shadow.png";
        icon.iconSize = new GSize(12, 20);icon.shadowSize = new GSize(22, 20);
        icon.iconAnchor = new GPoint(6, 20);icon.infoWindowAnchor = new GPoint(5, 1);
       map.setCenter(new GLatLng(52.30, 5.45), defzoom);
       setAddress();
       setTimeout('zoomMap()',1000);
      }  else {
          alert('Uw brouwser laat het gebruik van Google Maps niet toe');
      }
     return;
}

function redrawMap() {
       map.clearOverlays();
       bounds = new GLatLngBounds();
       setAddress();
       setTimeout('zoomMap()',1000);
       return;
}

function clearMap() {
       map.clearOverlays();
       return;
}

function addBound(pointer) {
       bounds.extend(pointer);
       return;
}

function zoomMap() {
       var clat = (bounds.getNorthEast().lat() + bounds.getSouthWest().lat()) /2;
       var clng = (bounds.getNorthEast().lng() + bounds.getSouthWest().lng()) /2; 
       map.setCenter(new GLatLng(clat,clng));
       if (setbounds == 1) {
           map.setZoom(map.getBoundsZoomLevel(bounds));
       }
       return;
}

function zoekop(address, sMarkerInfo) {
         
          var geocoder = new GClientGeocoder(); 
          point = geocoder.getLatLng(address, 
		    function (point) { 
			   if (point) {
                  var myIcon = icon;
                  var marker = new GMarker(point, {icon: myIcon , title: sMarkerInfo});
                  addBound(marker.getPoint());
                 // click
                 //GEvent.addListener(marker, "click", function() {marker.openInfoWindowHtml(sMarkerInfo,'500');});                 
			      map.addOverlay(marker);
			      //marker.openInfoWindowHtml(address);
			   }
            }
		  );
                return;
}

function loadGmap() {
  
  if (initload == 1) {
     map=null;
     setMap();
     initload = 0; 
  } else {
     redrawMap();
  }
  
  return;
}
