//Create marker and set up event window
function createMarker(point,html,icon){
      var marker = new GMarker(point,icon);
      GEvent.addListener(marker, "click", function() {
          marker.openInfoWindowHtml(html);
      });
      return marker;
}
//load Google Map
function loadEX() {
	if (GBrowserIsCompatible()) {
  		var map = new GMap2(document.getElementById("map"));
		map.addControl(new GMapTypeControl());  
	    map.addControl(new GSmallMapControl());         
	    map.addControl(new GOverviewMapControl());
		
		var geocoder = new GClientGeocoder();
		
//		var icon = new GIcon();
//		icon.image = "../images/website/wineglass.gif";
//		icon.iconSize = new GSize(40, 40);
//		icon.iconAnchor = new GPoint(0, 30);
//		icon.infoWindowAnchor = new GPoint(5, 1);

		var randomnumber=Math.floor(Math.random()*11111)
    	GDownloadUrl("/googlemaps/loadmap.asp?random="+randomnumber, function(data, responseCode) {
    	//GDownloadUrl("../googlemaps/data.xml", function(data, responseCode) {
		    var xml = GXml.parse(data);
		    var markers = xml.documentElement.getElementsByTagName("marker");
		    for (var i = 0; i < markers.length; i++) {
				var tmpTitle = markers[i].getAttribute("title") ;
				if (markers[i].getAttribute("lat")=='') {
					var address = markers[i].getAttribute("address");
					if (address!='') {
						showAddress(map,geocoder,address,tmpTitle);
						}
					}
					else {
						var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
							parseFloat(markers[i].getAttribute("lng")));
				        map.setCenter(point, 15);
						tmpTitle = tmpTitle+'<br>Lat:'+markers[i].getAttribute("lat")+'<br>Lng:'+markers[i].getAttribute("lng")
						//var marker = createMarker(point,tmpTitle,icon);
						var marker = createMarker(point,tmpTitle);
			        	map.addOverlay(marker);
						}
				}
			if (i!=1) {
				map.setCenter(new GLatLng(42.56643, 2.525064), 15, G_SATELLITE_MAP);
				}
				else { map.setCenter(point, 15, G_SATELLITE_MAP); }
			// G_NORMAL_MAP
			// G_SATELLITE_MAP
			// G_HYBRID_MAP
			}
		); //close GDownloadUrl
 	} //close GBrowserIsCompatible
} //close load

//Create marker and set up event window
function createMarker(point,html,icon){
  var marker = new GMarker(point,icon);
  GEvent.addListener(marker, "click", function() {
     marker.openInfoWindowHtml(html);
  });
  return marker;
}

//showAddress
function showAddress(map,geocoder,address,html,icon) {
  geocoder.getLatLng(
    address,
    function(point) {
     if (!point) {
        alert(address + " niet gevonden !");
      } else {
	  	var sPoint = point.toString();
		var aPoint  = new Array();
		aPoint = sPoint.split(',');
		document.getElementById('spanLAT').innerHTML = aPoint[0].replace('(','');
		document.getElementById('spanLNG').innerHTML = aPoint[1].replace(')','');
        map.setCenter(point, 15);
        var marker = createMarker(point,html+'<br/><br/>'+address,icon);
        map.addOverlay(marker);
		map.addControl(new GMapTypeControl());
      }
    }
  );
}

