/**
 * @author Theo Bakker, WHELP.nl
 */

//load Google Map
function load() {
  if (GBrowserIsCompatible()) {
  	var map = new GMap2(document.getElementById("map"));
    map.addControl(new GSmallMapControl());

	//create randomnumber and retrieve xml file
	var randomnumber=Math.floor(Math.random()*11111)
    GDownloadUrl("data.xml?random="+randomnumber, function(data, responseCode) {
    var xml = GXml.parse(data);

	//store markers in markers array
    var markers = xml.documentElement.getElementsByTagName("marker");

	//loop over the markers array
    for (var i = 0; i < markers.length; i++) {
		var lat = parseFloat(markers[i].getAttribute("lat"));
		var lng = parseFloat(markers[i].getAttribute("lng"));
		var point = new GLatLng(lat,lng);
	    var html = markers[i].getAttribute("html");
	  	map.addControl(new GMapTypeControl());
	  	map.setCenter(point, 15);
	  	var marker = createMarker(point,html);
	  	map.addOverlay(marker);
    } //close for loop

	// add an encoded polyline
    var encodedPoints = "osgvHa`xb@vCcH`AwB\\e@Tw@pCuOj@sBtA}DpBkFZs@j@eBn@aBTc@DODQAQEQa@{@}CgJoFfEu@j@]h@]t@mDxHBL_@nAKPYF[Hm@b@yC`Cx@dCwAnEQT?ZCZ]vAWdAcB~F}@s@s@S_BYiBCeBNc@Hp@tAj@d@x@b@jA`@v@b@XVl@jAi@`A_A`BeAtB[bAa@pA_@j@wApCUjAEd@K\\BXNPb@TPFROr@y@z@uAnAyBZo@JGB_@\\[h@e@p@g@p@c@l@k@`As@t@g@j@s@l@gAz@yAVc@Ry@PsA`@sKTYP_@F}@?yAE_BLs@@u@As@Ck@Pq@r@aCLURKTNf@d@\\`@Tb@";
	
	var encodedLevels = "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB";

    var encodedPolyline = new GPolyline.fromEncoded({
		color: "#FF0000",
		weight: 5,
		points: encodedPoints,
		levels: encodedLevels,
		zoomFactor: 32,
		numLevels: 4
	});

	//add polyline to map
	map.addOverlay(encodedPolyline);

	  }
	); //close GDownloadUrl
  } //close GBrowserIsCompatible
} //close load

  //Create marker and set up event window
  function createMarker(point,html){
  	var marker = new GMarker(point);
	GEvent.addListener(marker, "click", function() {
      marker.openInfoWindowHtml(html);
    });
	return marker;
  }
