$(".describe_location").on("click", function (e) {
e.preventDefault();
- var center = map.getCenter().wrap(),
- precision = OSM.zoomPrecision(map.getZoom());
- OSM.router.route("/search?whereami=1&query=" + encodeURIComponent(
- center.lat.toFixed(precision) + "," + center.lng.toFixed(precision)
- ));
+ $("header").addClass("closed");
+ const [lat, lon] = OSM.cropLocation(map.getCenter(), map.getZoom()).map(encodeURIComponent);
+
+ OSM.router.route("/search?" + Qs.stringify({ lat, lon }));
});
$("#sidebar_content")
page.pushstate = page.popstate = function (path) {
var params = Qs.parse(path.substring(path.indexOf("?") + 1));
- $(".search_form input[name=query]").val(params.query);
- $(".describe_location").hide();
+ if (params.query) {
+ $(".search_form input[name=query]").val(params.query);
+ $(".describe_location").hide();
+ } else if (params.lat && params.lon) {
+ $(".search_form input[name=query]").val(params.lat + ", " + params.lon);
+ $(".describe_location").hide();
+ }
OSM.loadSidebarContent(path, page.load);
};