X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/ae00fa84c8f981e909c61ab31b6115bb96e859cc..6c1704b24587537cb7ebd3844db2500052523c6c:/app/assets/javascripts/leaflet.share.js diff --git a/app/assets/javascripts/leaflet.share.js b/app/assets/javascripts/leaflet.share.js index 40ba020e6..2faa5a2a1 100644 --- a/app/assets/javascripts/leaflet.share.js +++ b/app/assets/javascripts/leaflet.share.js @@ -337,7 +337,8 @@ L.OSM.share = function (options) { } function update() { - var canEmbed = map.getMapBaseLayerId() !== "tracestracktopo"; + const layer = map.getMapBaseLayer(); + var canEmbed = Boolean(layer && layer.options.canEmbed); var bounds = map.getBounds(); $("#link_marker") @@ -410,15 +411,10 @@ L.OSM.share = function (options) { $("#mapnik_image_width").text(mapWidth); $("#mapnik_image_height").text(mapHeight); - const layer = map.getMapBaseLayerId(); - const layerKeys = new Map([ - ["mapnik", "standard"], - ["cyclemap", "cycle_map"], - ["transportmap", "transport_map"] - ]); + const canDownloadImage = Boolean(layer && layer.options.canDownloadImage); - $("#mapnik_image_layer").text(layerKeys.has(layer) ? I18n.t(`javascripts.map.base.${layerKeys.get(layer)}`) : ""); - $("#map_format").val(layer); + $("#mapnik_image_layer").text(canDownloadImage ? layer.options.name : ""); + $("#map_format").val(canDownloadImage ? layer.options.layerId : ""); $("#map_zoom").val(map.getZoom()); $("#mapnik_lon").val(map.getCenter().lng); @@ -426,18 +422,9 @@ L.OSM.share = function (options) { $("#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(); - $("#export-warning").show(); - } + $("#export-image").toggle(canDownloadImage); + $("#export-warning").toggle(!canDownloadImage); + $("#mapnik_scale_row").toggle(canDownloadImage && layer.options.layerId === "mapnik"); } function select() {