Move layer definitions to yml

This commit is contained in:
Anton Khorev 2024-11-22 01:18:55 +03:00
parent 703990a5bb
commit 126a987aa8
3 changed files with 75 additions and 101 deletions

View file

@ -15,109 +15,9 @@ L.OSM.Map = L.Map.extend({
initialize: function (id, options) {
L.Map.prototype.initialize.call(this, id, options);
const layerDefinitions = [
{
leafletOsmId: "Mapnik",
code: "M",
keyId: "mapnik",
nameId: "standard",
credit: {
id: "make_a_donation",
href: "https://supporting.openstreetmap.org",
donate: true
}
},
{
leafletOsmId: "CyclOSM",
code: "Y",
keyId: "cyclosm",
nameId: "cyclosm",
credit: {
id: "cyclosm_credit",
children: {
cyclosm_link: {
id: "cyclosm_name",
href: "https://www.cyclosm.org"
},
osm_france_link: {
id: "osm_france",
href: "https://openstreetmap.fr/"
}
}
}
},
{
leafletOsmId: "CycleMap",
code: "C",
keyId: "cyclemap",
nameId: "cycle_map",
apiKeyId: "THUNDERFOREST_KEY",
credit: {
id: "thunderforest_credit",
children: {
thunderforest_link: {
id: "andy_allan",
href: "https://www.thunderforest.com/"
}
}
}
},
{
leafletOsmId: "TransportMap",
code: "T",
keyId: "transportmap",
nameId: "transport_map",
apiKeyId: "THUNDERFOREST_KEY",
credit: {
id: "thunderforest_credit",
children: {
thunderforest_link: {
id: "andy_allan",
href: "https://www.thunderforest.com/"
}
}
}
},
{
leafletOsmId: "TracestrackTopo",
code: "P",
keyId: "tracestracktopo",
nameId: "tracestracktop_topo",
apiKeyId: "TRACESTRACK_KEY",
credit: {
id: "tracestrack_credit",
children: {
tracestrack_link: {
id: "tracestrack",
href: "https://www.tracestrack.com/"
}
}
}
},
{
leafletOsmId: "HOT",
code: "H",
keyId: "hot",
nameId: "hot",
credit: {
id: "hotosm_credit",
children: {
hotosm_link: {
id: "hotosm_name",
href: "https://www.hotosm.org/"
},
osm_france_link: {
id: "osm_france",
href: "https://openstreetmap.fr/"
}
}
}
}
];
this.baseLayers = [];
for (const layerDefinition of layerDefinitions) {
for (const layerDefinition of OSM.LAYER_DEFINITIONS) {
if (layerDefinition.apiKeyId && !OSM[layerDefinition.apiKeyId]) continue;
const layerOptions = {

View file

@ -1,5 +1,6 @@
//= depend_on settings.yml
//= depend_on settings.local.yml
//= depend_on layers.yml
//= depend_on key.yml
//= require qs/dist/qs
@ -30,6 +31,7 @@ OSM = {
TRACESTRACK_KEY: <%= Settings.tracestrack_key.to_json %>,
<% end %>
LAYER_DEFINITIONS: <%= YAML.load_file(Rails.root.join("config/layers.yml")).to_json %>,
LAYERS_WITH_MAP_KEY: <%= YAML.load_file(Rails.root.join("config/key.yml")).keys.to_json %>,
MARKER_GREEN: <%= image_path("marker-green.png").to_json %>,