From: Tom Hughes Date: Thu, 7 Dec 2023 16:19:23 +0000 (+0000) Subject: Merge remote-tracking branch 'upstream/pull/4371' X-Git-Tag: live~1402 X-Git-Url: https://git.openstreetmap.org/rails.git/commitdiff_plain/e78aee9585650673e686288322fa218f0f5a1692?hp=38bcc001e307a4ed32ce4623f2992d1c8c7c3738 Merge remote-tracking branch 'upstream/pull/4371' --- diff --git a/app/assets/images/key/opnvkarte/bus_stop13.svg b/app/assets/images/key/opnvkarte/bus_stop13.svg new file mode 100644 index 000000000..ae4ffeeaf --- /dev/null +++ b/app/assets/images/key/opnvkarte/bus_stop13.svg @@ -0,0 +1,3 @@ + + + diff --git a/app/assets/images/key/opnvkarte/bus_stop15.svg b/app/assets/images/key/opnvkarte/bus_stop15.svg new file mode 100644 index 000000000..a25991954 --- /dev/null +++ b/app/assets/images/key/opnvkarte/bus_stop15.svg @@ -0,0 +1,3 @@ + + + diff --git a/app/assets/images/key/opnvkarte/rail11.svg b/app/assets/images/key/opnvkarte/rail11.svg new file mode 100644 index 000000000..849f5cf94 --- /dev/null +++ b/app/assets/images/key/opnvkarte/rail11.svg @@ -0,0 +1,4 @@ + + + + diff --git a/app/assets/images/key/opnvkarte/rail15.svg b/app/assets/images/key/opnvkarte/rail15.svg new file mode 100644 index 000000000..efe7792b9 --- /dev/null +++ b/app/assets/images/key/opnvkarte/rail15.svg @@ -0,0 +1,4 @@ + + + + diff --git a/app/assets/images/key/opnvkarte/rail17.svg b/app/assets/images/key/opnvkarte/rail17.svg new file mode 100644 index 000000000..8cada29c9 --- /dev/null +++ b/app/assets/images/key/opnvkarte/rail17.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/app/assets/images/key/opnvkarte/stop13.svg b/app/assets/images/key/opnvkarte/stop13.svg new file mode 100644 index 000000000..cfe65b344 --- /dev/null +++ b/app/assets/images/key/opnvkarte/stop13.svg @@ -0,0 +1,3 @@ + + + diff --git a/app/assets/images/key/opnvkarte/stop15.svg b/app/assets/images/key/opnvkarte/stop15.svg new file mode 100644 index 000000000..3ae62672e --- /dev/null +++ b/app/assets/images/key/opnvkarte/stop15.svg @@ -0,0 +1,3 @@ + + + diff --git a/app/assets/javascripts/leaflet.key.js b/app/assets/javascripts/leaflet.key.js index bcd5839cd..088d0f9d3 100644 --- a/app/assets/javascripts/leaflet.key.js +++ b/app/assets/javascripts/leaflet.key.js @@ -39,11 +39,11 @@ L.OSM.key = function (options) { $(".mapkey-table-entry").each(function () { var data = $(this).data(); - if (layer === data.layer && zoom >= data.zoomMin && zoom <= data.zoomMax) { - $(this).show(); - } else { - $(this).hide(); - } + $(this).toggle( + layer === data.layer && + (!data.zoomMin || zoom >= data.zoomMin) && + (!data.zoomMax || zoom <= data.zoomMax) + ); }); } }; diff --git a/app/views/site/key.html.erb b/app/views/site/key.html.erb index da7638948..d3da86856 100644 --- a/app/views/site/key.html.erb +++ b/app/views/site/key.html.erb @@ -2,7 +2,7 @@ <% YAML.load_file(Rails.root.join("config/key.yml")).each do |name,data| %> <% data.each do |entry| %> - " data-zoom-max="<%= entry["max_zoom"] %>"> + <%= tag.tr :class => "mapkey-table-entry", :data => { :layer => name, :zoom_min => entry["min_zoom"], :zoom_max => entry["max_zoom"] } do %> - + <% end %> <% end %> <% end %>
<% if entry["width"] && entry["height"] && entry["fill"] %> <%= image_tag "data:image/svg+xml,#{u("")}" %> @@ -13,7 +13,7 @@ <%= Array(t(".table.entry.#{entry['name']}")).to_sentence %>
diff --git a/config/key.yml b/config/key.yml index 2d1cf97a0..ab3eaf3cc 100644 --- a/config/key.yml +++ b/config/key.yml @@ -69,3 +69,26 @@ cyclemap: - { min_zoom: 14, max_zoom: 19, name: bicycle_shop, image: bicycle_shop.png } - { min_zoom: 14, max_zoom: 19, name: bicycle_parking, image: bicycle_parking.png } - { min_zoom: 16, max_zoom: 19, name: toilets, image: toilets.png } +opnvkarte: + - { min_zoom: 6, max_zoom: 7, name: rail, width: 52, height: 1, fill: "#868686" } + - { min_zoom: 8, max_zoom: 10, name: rail, width: 52, height: 2, fill: "#868686" } + - { min_zoom: 11, max_zoom: 14, name: rail, image: rail11.svg } + - { min_zoom: 15, max_zoom: 16, name: rail, image: rail15.svg } + - { min_zoom: 17, name: rail, image: rail17.svg } + - { min_zoom: 6, max_zoom: 9, name: train, width: 52, height: 2, fill: "#ffc366" } + - { min_zoom: 10, max_zoom: 11, name: train, width: 52, height: 3, fill: "#ffc366" } + - { min_zoom: 12, name: train, width: 52, height: 4, fill: "#ffc366" } + - { min_zoom: 10, name: light_rail, width: 52, height: 4, fill: "#66ff66" } + - { min_zoom: 10, name: tram_only, width: 52, height: 4, fill: "#3333fe" } + - { min_zoom: 10, name: subway, width: 52, height: 4, fill: "#33339f" } + - { min_zoom: 9, max_zoom: 13, name: ferry, width: 52, height: 2, fill: "#9f339f" } + - { min_zoom: 14, name: ferry, width: 52, height: 3, fill: "#9f339f" } + - { min_zoom: 10, name: trolleybus, width: 52, height: 4, fill: "#9f3333" } + - { min_zoom: 11, max_zoom: 11, name: bus, width: 52, height: 1, fill: "#fe3333" } + - { min_zoom: 12, max_zoom: 12, name: bus, width: 52, height: 2, fill: "#fe3333" } + - { min_zoom: 13, max_zoom: 13, name: bus, width: 52, height: 3, fill: "#fe3333" } + - { min_zoom: 14, name: bus, width: 52, height: 4, fill: "#fe3333" } + - { min_zoom: 13, max_zoom: 14, name: bus_stop, image: bus_stop13.svg } + - { min_zoom: 15, name: bus_stop, image: bus_stop15.svg } + - { min_zoom: 13, max_zoom: 14, name: stop, image: stop13.svg } + - { min_zoom: 15, name: stop, image: stop15.svg } diff --git a/config/locales/en.yml b/config/locales/en.yml index c48a94017..4b4f6b301 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -2290,10 +2290,16 @@ en: cycleway_local: "Local cycleway" footway: "Footway" rail: "Railway" + train: "Train" subway: "Subway" + ferry: "Ferry" tram: - Light rail - tram + light_rail: "Light rail" + tram_only: "Tram" + trolleybus: "Trolleybus" + bus: "Bus" cable: - Cable car - chair lift @@ -2341,6 +2347,8 @@ en: private: "Private access" destination: "Destination access" construction: "Roads under construction" + bus_stop: "Bus stop" + stop: "Stop" bicycle_shop: "Bicycle shop" bicycle_parking: "Bicycle parking" toilets: "Toilets"