$("<div>")
.appendTo($form)
.attr("class", "row mb-3")
+ .attr("id", "mapnik_scale_row")
.append($("<label>")
.attr("for", "mapnik_scale")
.attr("class", "col-auto col-form-label")
.attr("class", "form-check-input")
.bind("change", toggleFilter))));
- ["minlon", "minlat", "maxlon", "maxlat"].forEach(function (name) {
+ ["minlon", "minlat", "maxlon", "maxlat", "lat", "lon"].forEach(function (name) {
$("<input>")
.attr("id", "mapnik_" + name)
.attr("name", name)
});
$("<input>")
+ .attr("id", "map_format")
.attr("name", "format")
.attr("value", "mapnik")
.attr("type", "hidden")
.appendTo($form);
+ $("<input>")
+ .attr("id", "map_zoom")
+ .attr("name", "zoom")
+ .attr("value", map.getZoom())
+ .attr("type", "hidden")
+ .appendTo($form);
+
+ $("<input>")
+ .attr("id", "map_width")
+ .attr("name", "width")
+ .attr("value", 0)
+ .attr("type", "hidden")
+ .appendTo($form);
+
+ $("<input>")
+ .attr("id", "map_height")
+ .attr("name", "height")
+ .attr("value", 0)
+ .attr("type", "hidden")
+ .appendTo($form);
+
var csrf_param = $("meta[name=csrf-param]").attr("content"),
csrf_token = $("meta[name=csrf-token]").attr("content");
.appendTo($form);
var args = {
+ layer: "<span id=\"mapnik_image_layer\"></span>",
width: "<span id=\"mapnik_image_width\"></span>",
height: "<span id=\"mapnik_image_height\"></span>"
};
$("#mapnik_scale").val(scale);
}
- $("#mapnik_image_width").text(Math.round(size.x / scale / 0.00028));
- $("#mapnik_image_height").text(Math.round(size.y / scale / 0.00028));
+ const mapWidth = Math.round(size.x / scale / 0.00028);
+ const mapHeight = Math.round(size.y / scale / 0.00028);
+ $("#mapnik_image_width").text(mapWidth);
+ $("#mapnik_image_height").text(mapHeight);
+
+ const layerId = map.getMapBaseLayerId();
+ const layerKeys = new Map([
+ ["mapnik", "standard"],
+ ["cyclemap", "cycle_map"],
+ ["transportmap", "transport_map"]
+ ]);
- if (map.getMapBaseLayerId() === "mapnik") {
+ $("#mapnik_image_layer").text(layerKeys.has(layerId) ? I18n.t(`javascripts.map.base.${layerKeys.get(layerId)}`) : "");
+ $("#map_format").val(layerId);
+
+ $("#map_zoom").val(map.getZoom());
+ $("#mapnik_lon").val(map.getCenter().lng);
+ $("#mapnik_lat").val(map.getCenter().lat);
+ $("#map_width").val(mapWidth);
+ $("#map_height").val(mapHeight);
+
+ if (["cyclemap", "transportmap"].includes(map.getMapBaseLayerId())) {
+ $("#export-image").show();
+ $("#mapnik_scale_row").hide();
+ $("#export-warning").hide();
+ } else if (map.getMapBaseLayerId() === "mapnik") {
$("#export-image").show();
+ $("#mapnik_scale_row").show();
$("#export-warning").hide();
} else {
$("#export-image").hide();