Rework the map attribution to avoid raw html in translations.

This commit is contained in:
Andy Allan 2023-03-29 16:11:21 +01:00
parent 63484a169a
commit 4cfb632b5e
2 changed files with 62 additions and 14 deletions

View file

@ -15,13 +15,55 @@ L.OSM.Map = L.Map.extend({
initialize: function (id, options) {
L.Map.prototype.initialize.call(this, id, options);
var copyright = I18n.t("javascripts.map.copyright", { copyright_url: "/copyright" });
var donate = I18n.t("javascripts.map.donate_link_text", { donate_url: "https://donate.openstreetmap.org" });
var terms = I18n.t("javascripts.map.terms", { terms_url: "https://wiki.osmfoundation.org/wiki/Terms_of_Use" });
var cyclosm = I18n.t("javascripts.map.cyclosm", { cyclosm_url: "https://www.cyclosm.org", osmfrance_url: "https://openstreetmap.fr/" });
var thunderforest = I18n.t("javascripts.map.thunderforest", { thunderforest_url: "https://www.thunderforest.com/" });
var memomaps = I18n.t("javascripts.map.opnvkarte", { memomaps_url: "https://memomaps.de/" });
var hotosm = I18n.t("javascripts.map.hotosm", { hotosm_url: "https://www.hotosm.org/", osmfrance_url: "https://openstreetmap.fr/" });
var copyright_link = $("<a>", {
href: "/copyright",
text: I18n.t("javascripts.map.openstreetmap_contributors")
}).prop("outerHTML");
var copyright = I18n.t("javascripts.map.copyright_text", { copyright_link: copyright_link });
var donate = $("<a>", {
"href": "https://donate.openstreetmap.org",
"class": "donate-attr",
"text": I18n.t("javascripts.map.make_a_donation")
}).prop("outerHTML");
var terms = $("<a>", {
href: "https://wiki.osmfoundation.org/wiki/Terms_of_Use",
text: I18n.t("javascripts.map.website_and_api_terms")
}).prop("outerHTML");
var cyclosm_link = $("<a>", {
href: "https://www.cyclosm.org",
target: "_blank",
text: I18n.t("javascripts.map.cyclosm_name")
}).prop("outerHTML");
var osm_france_link = $("<a>", {
href: "https://openstreetmap.fr/",
target: "_blank",
text: I18n.t("javascripts.map.osm_france")
}).prop("outerHTML");
var cyclosm = I18n.t("javascripts.map.cyclosm_credit", { cyclosm_link: cyclosm_link, osm_france_link: osm_france_link });
var thunderforest_link = $("<a>", {
href: "https://www.thunderforest.com/",
target: "_blank",
text: I18n.t("javascripts.map.andy_allan")
}).prop("outerHTML");
var thunderforest = I18n.t("javascripts.map.thunderforest_credit", { thunderforest_link: thunderforest_link });
var memomaps_link = $("<a>", {
href: "https://memomaps.de/",
target: "_blank",
text: I18n.t("javascripts.map.memomaps")
}).prop("outerHTML");
var memomaps = I18n.t("javascripts.map.opnvkarte_credit", { memomaps_link: memomaps_link });
var hotosm_link = $("<a>", {
href: "https://www.hotosm.org/",
target: "_blank",
text: I18n.t("javascripts.map.hotosm_name")
}).prop("outerHTML");
var hotosm = I18n.t("javascripts.map.hotosm_credit", { hotosm_link: hotosm_link, osm_france_link: osm_france_link });
this.baseLayers = [];

View file

@ -2956,13 +2956,19 @@ en:
gps: Public GPS Traces
overlays: Enable overlays for troubleshooting the map
title: "Layers"
copyright: "© <a href='%{copyright_url}'>OpenStreetMap contributors</a>"
donate_link_text: "<a class='donate-attr' href='%{donate_url}'>Make a Donation</a>"
terms: "<a href='%{terms_url}' target='_blank'>Website and API terms</a>"
cyclosm: "Tiles style by <a href='%{cyclosm_url}' target='_blank'>CyclOSM</a> hosted by <a href='%{osmfrance_url}' target='_blank'>OpenStreetMap France</a>"
thunderforest: "Tiles courtesy of <a href='%{thunderforest_url}' target='_blank'>Andy Allan</a>"
opnvkarte: "Tiles courtesy of <a href='%{memomaps_url}' target='_blank'>MeMoMaps</a>"
hotosm: "Tiles style by <a href='%{hotosm_url}' target='_blank'>Humanitarian OpenStreetMap Team</a> hosted by <a href='%{osmfrance_url}' target='_blank'>OpenStreetMap France</a>"
copyright_text: "© %{copyright_link}"
openstreetmap_contributors: "OpenStreetMap contributors"
make_a_donation: Make a Donation
website_and_api_terms: Website and API terms
cyclosm_credit: "Tiles style by %{cyclosm_link} hosted by %{osm_france_link}"
cyclosm_name: CyclOSM
osm_france: OpenStreetMap France
thunderforest_credit: "Tiles courtesy of %{thunderforest_link}"
andy_allan: Andy Allan
opnvkarte_credit: "Tiles courtesy of %{memomaps_link}"
memomaps: MeMoMaps
hotosm_credit: "Tiles style by %{hotosm_link} hosted by %{osm_france_link}"
hotosm_name: Humanitarian OpenStreetMap Team
site:
edit_tooltip: Edit the map
edit_disabled_tooltip: Zoom in to edit the map