Fix highlight of changesets with no bounding box
authorTom Hughes <tom@compton.nu>
Sat, 29 Feb 2020 17:43:19 +0000 (17:43 +0000)
committerTom Hughes <tom@compton.nu>
Sat, 29 Feb 2020 17:43:19 +0000 (17:43 +0000)
A changeset with no bounding box has no map layer so trying to
set it's style throws an exception which means we don't get to
the code to set the style on the list entry.

Fixes #2541

app/assets/javascripts/index/history.js

index 80fb68444f6469ee4e41e03d2f09654a337dfe12..fe64c295999792d91f19b5cf28ae4a6b54a987ca 100644 (file)
@@ -40,12 +40,14 @@ OSM.History = function (map) {
   };
 
   function highlightChangeset(id) {
-    group.getLayer(id).setStyle({ fillOpacity: 0.3, color: "#FF6600", weight: 3 });
+    var layer = group.getLayer(id);
+    if ( layer ) layer.setStyle({ fillOpacity: 0.3, color: "#FF6600", weight: 3 });
     $("#changeset_" + id).addClass("selected");
   }
 
   function unHighlightChangeset(id) {
-    group.getLayer(id).setStyle({ fillOpacity: 0, color: "#FF9500", weight: 2 });
+    var layer = group.getLayer(id);
+    if ( layer ) layer.setStyle({ fillOpacity: 0, color: "#FF9500", weight: 2 });
     $("#changeset_" + id).removeClass("selected");
   }