var markerGroups = { "nso": [], "kdv": [], "vso": []}; var type; function createMarker(obj,html,type,icon){ var icon = new GIcon(); icon.image = 'gfx/marker/'+ type +'/image.png'; icon.shadow = 'gfx/marker/shadow.png'; icon.iconSize = new GSize(26,26); icon.shadowSize = new GSize(42,26); icon.iconAnchor = new GPoint(13,26); icon.infoWindowAnchor = new GPoint(13,26); icon.printImage = 'gfx/markers/'+ type +'/image.png'; icon.mozPrintImage = 'gfx/markers/'+ type +'/image.png'; icon.printShadow = 'gfx/markers/printShadow.png'; icon.imageMap = [25,0,25,1,25,2,25,3,25,4,25,5,25,6,25,7,25,8,25,9,25,10,25,11,25,12,25,13,25,14,25,15,25,16,25,17,25,18,25,19,25,20,25,21,25,22,25,23,25,24,25,25,0,25,0,24,0,23,0,22,0,21,0,20,0,19,0,18,0,17,0,16,0,15,0,14,0,13,0,12,0,11,0,10,0,9,0,8,0,7,0,6,0,5,0,4,0,3,0,2,0,1,0,0,25,0]; var marker = new GMarker(obj,icon); markerGroups[type].push(marker); GEvent.addListener(marker, "click", function() { window.open(html,'_self') //var link = '/'+html; //window.open(html,'_self'); }); return marker; } function load() { if (GBrowserIsCompatible()) { var map = new GMap2(document.getElementById("map")); //map.addControl(new GLargeMapControl()); //map.addControl(new GSmallMapControl()); //create randomnumber and retrieve xml file var randomnumber=Math.floor(Math.random()*11111); GDownloadUrl("kml.php?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("lnk"); var type = markers[i].getAttribute("kind"); map.setCenter(new GLatLng(52.38200, 4.64100), 13); var marker = createMarker(point,html,type); map.addOverlay(marker); } //close for loop } ); //close GDownloadUrl } //close GBrowserIsCompatible } //close load $(document).ready(function(){ $('.locate label [type=checkbox]').click(function(){ type = $(this).val(); for (var i = 0; i < markerGroups[type].length; i++) { var marker = markerGroups[type][i]; if ($(this).is(':checked')) { marker.show(); } else { marker.hide(); } } }); });