From 980abf000eb5c60b804d95fd4a421154296ebe22 Mon Sep 17 00:00:00 2001 From: Skylar Ittner Date: Tue, 10 Sep 2019 22:00:44 -0600 Subject: [PATCH] Reload map when adding packages (fixes glitch), adjust max zoom --- www/assets/js/manage.js | 2 +- www/assets/js/map.js | 13 +++++++++++++ www/assets/js/map_leaflet.js | 4 ++-- www/assets/js/packages.js | 4 +--- 4 files changed, 17 insertions(+), 6 deletions(-) diff --git a/www/assets/js/manage.js b/www/assets/js/manage.js index eb24170..fcb0aff 100644 --- a/www/assets/js/manage.js +++ b/www/assets/js/manage.js @@ -25,7 +25,7 @@ function addPackage(address, latitude, longitude) { }); if (map != null) { - map.updatePackageLayer(packages); + reloadMap(); } } diff --git a/www/assets/js/map.js b/www/assets/js/map.js index f62a559..be415d9 100644 --- a/www/assets/js/map.js +++ b/www/assets/js/map.js @@ -11,6 +11,19 @@ function createMap() { map.updatePackageLayer(packages); } +/** + * Destroy and re-create the map. + * @returns {undefined} + */ +function reloadMap() { + if (map != null) { + map.off(); + map.remove(); + map = null; + } + createMap(); +} + /** * Make the toggle button on the popup sheet do things */ diff --git a/www/assets/js/map_leaflet.js b/www/assets/js/map_leaflet.js index 398d7d7..6d2c8c8 100644 --- a/www/assets/js/map_leaflet.js +++ b/www/assets/js/map_leaflet.js @@ -8,7 +8,7 @@ function leafletMap() { var map = L.map('mapbox', { zoomSnap: 0.25, minZoom: 1, - maxZoom: 20, + maxZoom: 19, zoom: 12, center: L.latLng(46.5966, -112.0180), attributionControl: true, @@ -36,7 +36,7 @@ function leafletMap() { } else { L.tileLayer(mapSources[localStorage.getItem("mapsource")], { minZoom: 1, - maxZoom: 20 + maxZoom: 19 }).addTo(map); } diff --git a/www/assets/js/packages.js b/www/assets/js/packages.js index 72d796e..69ebdf4 100644 --- a/www/assets/js/packages.js +++ b/www/assets/js/packages.js @@ -16,9 +16,7 @@ function confirmDeletePackage(id) { "Confirm", function () { // delete - packages.splice(id, 1); - localStorage.setItem("packages", JSON.stringify(packages)); - loadPackageList(); + deletePackage(id); }, function () { // cancel