From 64bd129c025e5100f9dde237fc71f57c15baba60 Mon Sep 17 00:00:00 2001 From: Philipp Schaefer Date: Tue, 25 Mar 2014 00:24:12 +0100 Subject: [PATCH] bugfix: update portal level layer if it already exists instead of ignoring the addLabel call --- plugins/portal-level-numbers.user.js | 32 +++++++++++++++------------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/plugins/portal-level-numbers.user.js b/plugins/portal-level-numbers.user.js index 9f8fe33c..8a9526be 100644 --- a/plugins/portal-level-numbers.user.js +++ b/plugins/portal-level-numbers.user.js @@ -52,22 +52,24 @@ window.plugin.portalLevelNumbers.removeLabel = function(guid) { } window.plugin.portalLevelNumbers.addLabel = function(guid,latLng) { - var previousLayer = window.plugin.portalLevelNumbers.levelLayers[guid]; - if (!previousLayer) { - var p = window.portals[guid]; - var levelNumber = p.options.level; - var level = L.marker(latLng, { - icon: L.divIcon({ - className: 'plugin-portal-level-numbers', - iconSize: [window.plugin.portalLevelNumbers.ICON_SIZE, window.plugin.portalLevelNumbers.ICON_SIZE], - html: levelNumber - }), - guid: guid - }); - plugin.portalLevelNumbers.levelLayers[guid] = level; - level.addTo(plugin.portalLevelNumbers.levelLayerGroup); - } + // remove old layer before updating + var previousLayer = window.plugin.portalLevelNumbers.levelLayers[guid]; + if (previousLayer) window.plugin.portalLevelNumbers.removeLabel(guid); + + // add portal level to layers + var p = window.portals[guid]; + var levelNumber = p.options.level; + var level = L.marker(latLng, { + icon: L.divIcon({ + className: 'plugin-portal-level-numbers', + iconSize: [window.plugin.portalLevelNumbers.ICON_SIZE, window.plugin.portalLevelNumbers.ICON_SIZE], + html: levelNumber + }), + guid: guid + }); + plugin.portalLevelNumbers.levelLayers[guid] = level; + level.addTo(plugin.portalLevelNumbers.levelLayerGroup); } window.plugin.portalLevelNumbers.updatePortalLabels = function() {