}).prop("outerHTML");
var thunderforest = I18n.t("javascripts.map.thunderforest_credit", { thunderforest_link: thunderforest_link });
+ var tracestrack_link = $("<a>", {
+ href: "https://www.tracestrack.com/",
+ target: "_blank",
+ text: I18n.t("javascripts.map.tracestrack")
+ }).prop("outerHTML");
+ var tracestrack = I18n.t("javascripts.map.tracestrack_credit", { tracestrack_link: tracestrack_link });
+
var memomaps_link = $("<a>", {
href: "https://memomaps.de/",
target: "_blank",
}));
}
+ if (OSM.TRACESTRACK_KEY) {
+ this.baseLayers.push(new L.OSM.TracestrackTopo({
+ attribution: copyright + ". " + tracestrack + ". " + terms,
+ apikey: OSM.TRACESTRACK_KEY,
+ code: "P",
+ keyid: "tracestracktopo",
+ name: I18n.t("javascripts.map.base.tracestracktop_topo")
+ }));
+ }
this.baseLayers.push(new L.OSM.OPNVKarte({
attribution: copyright + ". " + memomaps + ". " + terms,
code: "O",
THUNDERFOREST_KEY: <%= Settings.thunderforest_key.to_json %>,
<% end %>
+<% if Settings.key?(:tracestrack_key) %>
+ TRACESTRACK_KEY: <%= Settings.tracestrack_key.to_json %>,
+<% end %>
+
MARKER_GREEN: <%= image_path("marker-green.png").to_json %>,
MARKER_RED: <%= image_path("marker-red.png").to_json %>,
:form_action => %w['self'],
:frame_ancestors => %w['self'],
:frame_src => %w['self'],
- :img_src => %w['self' data: www.gravatar.com *.wp.com tile.openstreetmap.org *.tile.openstreetmap.org *.tile.thunderforest.com tileserver.memomaps.de *.openstreetmap.fr],
+ :img_src => %w['self' data: www.gravatar.com *.wp.com tile.openstreetmap.org *.tile.openstreetmap.org *.tile.thunderforest.com tileserver.memomaps.de tile.tracestrack.com *.openstreetmap.fr],
:manifest_src => %w['self'],
:media_src => %w['none'],
:object_src => %w['self'],
cyclosm: CyclOSM
cycle_map: Cycle Map
transport_map: Transport Map
+ tracestracktop_topo: Tracestrack Topo
hot: Humanitarian
opnvkarte: ÖPNVKarte
layers:
andy_allan: Andy Allan
opnvkarte_credit: "Tiles courtesy of %{memomaps_link}"
memomaps: MeMoMaps
+ tracestrack_credit: "Tiles courtesy of %{tracestrack_link}"
+ tracestrack: Tracestrack
hotosm_credit: "Tiles style by %{hotosm_link} hosted by %{osm_france_link}"
hotosm_name: Humanitarian OpenStreetMap Team
site:
#wikipedia_auth_secret: ""
# Thunderforest authentication details
#thunderforest_key: ""
+# Tracestrack authentication details
+#tracestrack_key: ""
# Key for generating TOTP tokens
#totp_key: ""
# Enforce Content-Security-Policy
}
});
+L.OSM.TracestrackTopo = L.OSM.TileLayer.extend({
+ options: {
+ url: 'https://tile.tracestrack.com/topo__/{z}/{x}/{y}.png?key={apikey}',
+ maxZoom: 19,
+ attribution: '© <a href="https://www.openstreetmap.org/copyright" target="_blank">OpenStreetMap</a> contributors. Tiles courtesy of <a href="https://www.tracestrack.com/" target="_blank">Tracestrack Maps</a>'
+ }
+});
+
L.OSM.GPS = L.OSM.TileLayer.extend({
options: {
url: 'https://gps.tile.openstreetmap.org/lines/{z}/{x}/{y}.png',