//= require jquery.simulate
+//= require querystring
OSM.Query = function (map) {
+ var querystring = require("querystring-component");
+
var url = OSM.OVERPASS_URL,
queryButton = $(".control-query .control-button"),
uninterestingTags = ["source", "source_ref", "source:ref", "history", "attribution", "created_by", "tiger:county", "tiger:tlid", "tiger:upload_uuid", "KSJ2:curve_id", "KSJ2:lat", "KSJ2:lon", "KSJ2:coordinate", "KSJ2:filename", "note:ja"],
if (interestingFeature(element)) {
var $li = $("<li>")
- .addClass("query-result")
+ .addClass("query-result list-group-item")
.data("geometry", featureGeometry(element))
- .appendTo($ul);
- var $p = $("<p>")
.text(featurePrefix(element) + " ")
- .appendTo($li);
+ .appendTo($ul);
$("<a>")
.attr("href", "/" + element.type + "/" + element.id)
.text(featureName(element))
- .appendTo($p);
+ .appendTo($li);
}
}
function queryOverpass(lat, lng) {
var latlng = L.latLng(lat, lng).wrap(),
bounds = map.getBounds().wrap(),
- bbox = bounds.getSouth() + "," + bounds.getWest() + "," + bounds.getNorth() + "," + bounds.getEast(),
+ precision = OSM.zoomPrecision(map.getZoom()),
+ bbox = bounds.getSouth().toFixed(precision) + "," +
+ bounds.getWest().toFixed(precision) + "," +
+ bounds.getNorth().toFixed(precision) + "," +
+ bounds.getEast().toFixed(precision),
radius = 10 * Math.pow(1.5, 19 - map.getZoom()),
around = "around:" + radius + "," + lat + "," + lng,
nodes = "node(" + around + ")",