var url = "http://www.gzu-online.com/";
var domain = url;
var map;
var markersCache = new Array();
var icon1;
var zoombuttons;
var categoryid;

/*
function show_results(data,responsecode) {
	document.getElementById('results').innerHTML=data;
}
*/

function update_content(p) {
	if(p==null) {
		var p=0;
	}
	markersCache = new Array();
	var bounds = map.getBounds();
	var zoom = map.getZoom();
	
	var lat = map.getCenter().lat(); 
	var lng = map.getCenter().lng();
		
	var pointSWLat = bounds.getSouthWest().lat();
	var pointSWLon = bounds.getSouthWest().lng();
	var pointNELat = bounds.getNorthEast().lat();
	var pointNELon = bounds.getNorthEast().lng();

	GDownloadUrl(url+"kml.php?pointSWLat="+pointSWLat+"&pointSWLon="+pointSWLon+"&pointNELat="+pointNELat+"&pointNELon="+pointNELon+"&zoom="+zoom, put_markers);
}



function put_markers(data, responseCode) {
	  var xml = GXml.parse(data);
	  var markers = xml.documentElement.getElementsByTagName("Placemark");
	  
	  for (var i = 0; i < markers.length; i++) {
			var markerid = markers[i].getElementsByTagName('id')[0].firstChild.nodeValue;
			var exist = false;
			for(j=0;j<markersCache.length;j++) {
				if(markersCache[j]==markerid) {
					exist = true;
				}
			}
			
			if(exist==false) {
				put_marker(markers[i]);
				markersCache[markersCache.length]=markerid
			}
	  }
}

function put_marker(node) {
	var arrCoords = node.getElementsByTagName('Point')[0].getElementsByTagName('coordinates')[0].firstChild.nodeValue;
	var id = node.getElementsByTagName('id')[0].firstChild.nodeValue;
	arrCoords = arrCoords.split(',');
	
	var floatLat = parseFloat(arrCoords[0]);
	var floatLng = parseFloat(arrCoords[1]);
	
	var point = new GLatLng(floatLat,floatLng);
	
	var marker = new GMarker(point,icon1)
	map.addOverlay(marker);
	
	GEvent.addListener(
		marker,
		"click",
		function() {
			document.location='';
		}
	);
}

function put_single_marker(loc) {
	var marker = new GMarker(loc);
	map.addOverlay(marker);
}

function loadMaps(loc, update) {
	map = new GMap2(document.getElementById("google_maps"));
	zoombuttons = new GLargeMapControl();
	map.addControl(zoombuttons);
	map.addControl(new GMapTypeControl());
	map.setCenter(loc?loc:new GLatLng(49,15), loc?14:3);
	
	var huisje = new GIcon();
	huisje.iconSize=new GSize(31,30);
	huisje.shadowSize=new GSize(31,30);
	huisje.iconAnchor=new GPoint(0,0);
	huisje.infoWindowAnchor=new GPoint(15,0);
	icon1 = new GIcon(huisje, url+"images/icon1.png");
	
	if (update == true) {	
		GEvent.addListener(map, "dragend", function() {
			// get the contents of this window
			update_content();
		});
		
		GEvent.addListener(map, "zoomend", function() {
			update_content();
		});
		
		update_content();
	}
}
