/** * @file * GMap Markers * Gmaps Utility Library MarkerManager API version */ /*global Drupal, GMarker, MarkerManager */ // Replace to override marker creation Drupal.gmap.factory.marker = function (loc, opts) { return new GMarker(loc, opts); }; Drupal.gmap.addHandler('gmap', function (elem) { var obj = this; obj.bind('init', function () { // Set up the markermanager. obj.mm = new MarkerManager(obj.map, Drupal.settings.gmap_markermanager); }); obj.bind('addmarker', function (marker) { var minzoom = Drupal.settings.gmap_markermanager.markerMinZoom; var maxzoom = Drupal.settings.gmap_markermanager.markerMaxZoom; if (marker.minzoom) { minzoom = marker.minzoom; } if (marker.maxzoom) { maxzoom = marker.maxzoom; } if (maxzoom > 0) { obj.mm.addMarker(marker.marker, minzoom, maxzoom); } else { obj.mm.addMarker(marker.marker, minzoom); } obj.mm.refresh(); }); obj.bind('delmarker', function (marker) { obj.mm.removeMarker(marker.marker); }); obj.bind('clearmarkers', function () { obj.mm.clearMarkers(); }); });