//load Google Map
var address;
var geocoder;
var gmarkers = [];
var info;
var htmls =[];
var i = 0;
var icon;
var label;
var map;
var marker;
var markers;
var xml;
var id;
var latlng;

function load(parXMLfile) {
//	alert();
  if (GBrowserIsCompatible()) {
		map = new GMap2(document.getElementById("map"));
		geocoder = new GClientGeocoder();
		//geocoder.setBaseCountryCode("nl");
		//add controls
	  map.addControl(new GMapTypeControl());
		map.addControl(new GOverviewMapControl(new GSize(100,100)));
				map.addControl(new GLargeMapControl()); //zoompallet verander Large in Small voor een kleiner palet
				map.addControl(new GScaleControl());
				map.addControl(new GMapTypeControl());
				map.setCenter(new GLatLng(51.64554, 5.95596), 8)
		//create randomnumber to prevent caching and retrieve xml file
		var randomnumber=Math.floor(Math.random()*11111)
    GDownloadUrl(parXMLfile + "&random="+randomnumber, function(data, responseCode) {
	    xml = GXml.parse(data);
	    markers = xml.documentElement.getElementsByTagName("marker");
			icon = new GIcon();
			icon.image = "/gfx/marker.png";
			icon.iconSize = new GSize(24, 34);
			icon.iconAnchor = new GPoint(0, 20);
			icon.infoWindowAnchor = new GPoint(5, 1);
	    for (var j = 0; j < markers.length; j++) {
//	      var address = markers[j].getAttribute("address"); // old
//	      var label = markers[j].getAttribute("label"); // old
	      address = GXml.value(markers[j].getElementsByTagName("address")[0]);
	      label   = GXml.value(markers[j].getElementsByTagName("label")[0]);
	      info    = GXml.value(markers[j].getElementsByTagName("infowindow")[0]);
	      id      = markers[j].getAttribute("id");
	      latlng  = GXml.value(markers[j].getElementsByTagName("latlng")[0]);
//				latlng  = markers[j].getAttribute("latlng");
	      showAddress(map,address,info,label,icon,id,latlng);
	    }
  	});
//beginstand van de weergave. de laatste 2 cijfers zijn het zoomniveau in zorg dat je het middelpunt neemd van alle markerpunten, of als je bijvoorbeeld
//heel Nederland wilt hebben zoek je de coordinaten van Utrecht (middelpunt nld) op en zet je het zoomniveau zó dat heel nederland in beeld staat. om coordinaten op te zoeken ga je naar
//http://www.gpscoordinaten.nl/bepaal-gps-coordinaten.php

  }
}
function createMarker(point,info,label,icon,id){
  var marker = new GMarker(point,icon);
  GEvent.addListener(marker, "click", function() {
     marker.openInfoWindowHtml(info);
		 map.setZoom(16);
  });
  gmarkers[i] = marker;
  htmls[i] = info;
	document.getElementById("dealer" + id).href = 'javascript:myclick(' + i + ')';
  i++;
  return marker;
}
function showAddress(map,address,info,label,icon,id,latlng) {
	if ( latlng.toString().length>8) {
		var LL = eval("new GLatLng" + latlng);
	  var marker = createMarker(LL,info+'',label,icon,id);
	  map.addOverlay(marker);
	} else {
	  geocoder.getLatLng(
	    address,
	    function(point) {
	      if (!point) {
//	        alert(address + " niet gevonden");
	      } else {
					saveLatLng(id,point);
//					alert(point);
	        var marker = createMarker(point,info+'',label,icon,id);
	        map.addOverlay(marker);
	      }
	    }
	  );
	}
}
function myclick(i) {
	GEvent.trigger(gmarkers[i], "click");
}

// JavaScript Document
function verstuurAdres(locatie){
	var van = document.forms['mapsForm'].elements['van'].value
	if (van != '') {
		window.open('http://maps.google.nl/maps?f=d&saddr=' + van + '&daddr=' + locatie ,'mywindow','')
	}
}
	function saveLatLng(id,latlng) {
		var strFile = "/scSaveLatLng.asp?id="+id+"&latlng="+latlng;
		setLatLng(strFile);
	}
	function GetXmlHttpObject() {
		var xH=null;
		try { // Firefox, Opera 8.0+, Safari
		  xH=new XMLHttpRequest();
		}
		catch (e) { // Internet Explorer
		  try {
				xH=new ActiveXObject("Msxml2.XMLHTTP");
			}
		  catch (e) {
		    xH=new ActiveXObject("Microsoft.XMLHTTP");
	    }
	  }
		return xH;
	}
	function setLatLng(parFile, parElID) {
		var xmlHttp=GetXmlHttpObject();
		if (xmlHttp==null) {
		  alert ("Your browser does not support AJAX!");
		  return;
	  }
//	  xmlHttp.onreadystatechange=function() {
//	    if(xmlHttp.readyState==4) {
//					if ( xmlHttp.responseText!="" ) {
//			 			var tempText = xmlHttp.responseText;
//alert(tempText);
//					}
//	    }
//	  }
	  xmlHttp.open("GET",parFile,true);
	  xmlHttp.send(null);
	}

