]> git.openstreetmap.org Git - rails.git/blobdiff - app/assets/javascripts/index/history.js
Allow searching users by IP subnet
[rails.git] / app / assets / javascripts / index / history.js
index e8d912685f0aae2b73808ed2b339947043838ccf..52929018bbd60886c3e3528f4ccb4be0d04ed5c2 100644 (file)
@@ -56,24 +56,23 @@ OSM.History = function (map) {
   }
 
   function update() {
-    var data = { list: "1" };
+    const data = new URLSearchParams();
 
     if (window.location.pathname === "/history") {
-      data.bbox = map.getBounds().wrap().toBBoxString();
+      data.set("bbox", map.getBounds().wrap().toBBoxString());
       var feedLink = $("link[type=\"application/atom+xml\"]"),
           feedHref = feedLink.attr("href").split("?")[0];
-      feedLink.attr("href", feedHref + "?bbox=" + data.bbox);
+      feedLink.attr("href", feedHref + "?" + data);
     }
 
-    $.ajax({
-      url: window.location.pathname,
-      method: "GET",
-      data: data,
-      success: function (html) {
+    data.set("list", "1");
+
+    fetch(window.location.pathname + "?" + data)
+      .then(response => response.text())
+      .then(function (html) {
         displayFirstChangesets(html);
         updateMap();
-      }
-    });
+      });
   }
 
   function loadMore(e) {
@@ -96,7 +95,7 @@ OSM.History = function (map) {
   function updateBounds() {
     group.clearLayers();
 
-    changesets.forEach(function (changeset) {
+    for (const changeset of changesets) {
       var bottomLeft = map.project(L.latLng(changeset.bbox.minlat, changeset.bbox.minlon)),
           topRight = map.project(L.latLng(changeset.bbox.maxlat, changeset.bbox.maxlon)),
           width = topRight.x - bottomLeft.x,
@@ -115,16 +114,15 @@ OSM.History = function (map) {
 
       changeset.bounds = L.latLngBounds(map.unproject(bottomLeft),
                                         map.unproject(topRight));
-    });
+    }
 
     changesets.sort(function (a, b) {
       return b.bounds.getSize() - a.bounds.getSize();
     });
 
-    for (var i = 0; i < changesets.length; ++i) {
-      var changeset = changesets[i],
-          rect = L.rectangle(changeset.bounds,
-                             { weight: 2, color: "#FF9500", opacity: 1, fillColor: "#FFFFAF", fillOpacity: 0 });
+    for (const changeset of changesets) {
+      const rect = L.rectangle(changeset.bounds,
+                               { weight: 2, color: "#FF9500", opacity: 1, fillColor: "#FFFFAF", fillOpacity: 0 });
       rect.id = changeset.id;
       rect.addTo(group);
     }
@@ -146,7 +144,6 @@ OSM.History = function (map) {
   }
 
   page.pushstate = page.popstate = function (path) {
-    $("#history_tab").addClass("current");
     OSM.loadSidebarContent(path, page.load);
   };
 
@@ -165,8 +162,7 @@ OSM.History = function (map) {
   page.unload = function () {
     map.removeLayer(group);
     map.off("moveend", update);
-
-    $("#history_tab").removeClass("current");
+    map.off("zoomend", updateBounds);
   };
 
   return page;