var domain = url;
var map;
var markersCache = new Array();
var icon1;
var icon2;

function reset_content() {
	map.clearOverlays();
	markersCache = new Array();
	
	update_content();
}

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

var categoryid;
function update_content(p) {
	
	

	if(p==null) {
		var p=0;
	}
	
	categoryid = document.getElementById('categoryid').options[document.getElementById('categoryid').selectedIndex].value;
	
	handyman = document.getElementById('handymanselect').options[document.getElementById('handymanselect').selectedIndex].value;
	
	
	if(categoryid==null){
		
		categoryid='';
	}
	var bounds = map.getBounds();
	var zoom = map.getZoom();
	
	var lat = map.getCenter().lat(); 
	var lng = map.getCenter().lng();
	
	var verloopt = new Date(); 
	verloopt.setMonth(verloopt.getMonth() + 12);
	
	document.cookie = "gmaps="+escape(lat+"#"+lng+"#"+zoom)+ ";expires="+verloopt+";path=/";
	
	var pointSWLat = bounds.getSouthWest().lat();
	var pointSWLon = bounds.getSouthWest().lng();
	var pointNELat = bounds.getNorthEast().lat();
	var pointNELon = bounds.getNorthEast().lng();
	if(document.getElementById('results')!=null) {
		GDownloadUrl(url+"kml_results.php?pointSWLat="+pointSWLat+"&pointSWLon="+pointSWLon+"&pointNELat="+pointNELat+"&pointNELon="+pointNELon+"&p="+p+"&categoryid="+categoryid+"&handyman="+handyman, show_results);
	}
	GDownloadUrl(url+"kml.php?pointSWLat="+pointSWLat+"&pointSWLon="+pointSWLon+"&pointNELat="+pointNELat+"&pointNELon="+pointNELon+"&categoryid="+categoryid+"&zoom="+zoom+"&handyman="+handyman, 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 markerOptions = { 
		
		//clickable: true
	//};
	if(node.getElementsByTagName('type')[0].firstChild.nodeValue=='1') {
		var icon = icon1;
	} else {
		var icon = icon2;
	}
	
	var marker = new GMarker(point,icon)
	map.addOverlay(marker);
	
	GEvent.addListener(
		marker,
		"click",
		function() {
				
			GDownloadUrl(domain+'kml_detail.php?id='+id+'&categoryid='+categoryid, function(data,responsecode) {
				marker.openInfoWindow(data);
			
			});
			
			
		}
	);
}
var zoombuttons;

function getCookie(c_name)
{
	
	if (document.cookie.length>0) {
  		c_start=document.cookie.indexOf(c_name + "=");
  		if (c_start!=-1)	{ 
   			c_start=c_start + c_name.length+1; 
    		c_end=document.cookie.indexOf(";",c_start);
    		if (c_end==-1) {
				c_end=document.cookie.length;
			}
    		return unescape(document.cookie.substring(c_start,c_end));
    		 
  		}
	}
	return "";
}

function load() {
	var cookie = getCookie("gmaps");

	if(cookie=='') {
		cookie = '52.669720383688166#5.9326171875#7';
	}
	
	var index = document.cookie.indexOf('gmaps');
	
	var coord = cookie.split('#');
	

	map = new GMap2(document.getElementById("map"));
	
	zoombuttons = new GLargeMapControl();
	
	map.addControl(zoombuttons);
	map.addControl(new GMapTypeControl());
	
	map.setCenter(new GLatLng(coord[0], coord[1]), parseInt(coord[2]));
	
	var jobIcon = new GIcon();
	jobIcon.iconSize=new GSize(31,30);
	jobIcon.shadowSize=new GSize(42,42);
	jobIcon.iconAnchor=new GPoint(0,0);
	jobIcon.infoWindowAnchor=new GPoint(15,0);
	icon1 = new GIcon(jobIcon, url+"images/icon1.png", null, url+"images/shadow2.png");
	var mannetjeIcon = new GIcon();
	mannetjeIcon.iconSize=new GSize(23,38);
	mannetjeIcon.shadowSize=new GSize(42,42);
	mannetjeIcon.iconAnchor=new GPoint(15,0);

	mannetjeIcon.infoWindowAnchor=new GPoint(15,0);
	icon2 = new GIcon(mannetjeIcon, url+"images/icon2.png", null, url+"images/shadow.png");
	
	
	GEvent.addListener(map, "dragend", function() {
		// get the contents of this window
		update_content();
	});
	
	GEvent.addListener(map, "zoomend", function() {
		update_content();
	});
	
	update_content();
	change_height('middel');
	
}// JavaScript Document
