diff --git a/assets/layers/climbing/climbing.json b/assets/layers/climbing/climbing.json
new file mode 100644
index 000000000..9c53a74a0
--- /dev/null
+++ b/assets/layers/climbing/climbing.json
@@ -0,0 +1,300 @@
+{
+ "id": "climbing",
+ "name": {
+ "nl": "Klimgelegenheden",
+ "de": "Klettermöglichkeiten",
+ "en": "Climbing opportunities",
+ "ja": "登坂教室",
+ "fr": "Opportunité d’escalade",
+ "it": "Opportunità di arrampicata"
+ },
+ "minzoom": 10,
+ "source": {
+ "osmTags": {
+ "and": [
+ "sport=climbing",
+ "climbing!~route",
+ "leisure!~sports_centre",
+ "climbing!=route_top",
+ "climbing!=route_bottom"
+ ]
+ }
+ },
+ "title": {
+ "render": {
+ "en": "Climbing opportunity",
+ "nl": "Klimgelegenheid",
+ "de": "Klettermöglichkeit",
+ "ja": "登坂教室",
+ "nb_NO": "Klatremulighet",
+ "fr": "Opportunité d’escalade",
+ "it": "Opportunità di arrampicata"
+ },
+ "mappings": [
+ {
+ "if": "climbing=crag",
+ "then": {
+ "en": "Climbing crag {name}",
+ "fr": "Mur d’escalade {name}",
+ "it": "Muro da arrampicata {name}",
+ "de": "Klettergarten {name}"
+ }
+ },
+ {
+ "if": {
+ "and": [
+ {
+ "or": [
+ "climbing=area",
+ "climbing=site"
+ ]
+ },
+ "name~*"
+ ]
+ },
+ "then": {
+ "en": "Climbing area {name}",
+ "nl": "Klimsite {name}",
+ "fr": "Zone d’escalade {name}",
+ "de": "Klettergebiet {name}",
+ "it": "Area di arrampicata {name}"
+ }
+ },
+ {
+ "if": {
+ "or": [
+ "climbing=site",
+ "climbing=area"
+ ]
+ },
+ "then": {
+ "en": "Climbing site",
+ "nl": "Klimsite",
+ "fr": "Site d’escalade",
+ "de": "Klettergebiet",
+ "it": "Sito di arrampicata",
+ "ca": "Llocs d'escalada"
+ }
+ },
+ {
+ "if": "name~*",
+ "then": {
+ "nl": "Klimgelegenheid {name}",
+ "en": "Climbing opportunity {name}",
+ "fr": "Opportunité d’escalade {name}",
+ "de": "Klettermöglichkeit {name}",
+ "it": "Opportunità di arrampicata {name}"
+ }
+ }
+ ]
+ },
+ "description": {
+ "nl": "Een klimgelegenheid",
+ "de": "Eine Klettergelegenheit",
+ "en": "A climbing opportunity",
+ "ja": "登坂教室",
+ "nb_NO": "En klatremulighet",
+ "fr": "Opportunité d’escalade",
+ "it": "Un’opportunità di arrampicata"
+ },
+ "tagRenderings": [
+ "images",
+ {
+ "id": "minimap",
+ "render": "{minimap(18, id, _contained_climbing_route_ids): height: 9rem; overflow: hidden; border-radius:3rem; }"
+ },
+ {
+ "render": {
+ "en": "
Length overview
{histogram(_length_hist)}",
+ "fr": "Résumé de longueur
{histogram(_length_hist)}",
+ "de": "Längenübersicht
{histogram(_length_hist)}",
+ "it": "Riassunto della lunghezza
{histogram(_length_hist)}"
+ },
+ "condition": "_length_hist!~\\[\\]",
+ "id": "Contained routes length hist"
+ },
+ {
+ "render": {
+ "en": "Grades overview
{histogram(_difficulty_hist)}",
+ "fr": "Résumé des difficultés
{histogram(_difficulty_hist)}",
+ "de": "Schwierigkeitsübersicht
{histogram(_difficulty_hist)}",
+ "it": "Riassunto delle difficoltà
{histogram(_difficulty_hist)}"
+ },
+ "condition": "_difficulty_hist!~\\[\\]",
+ "id": "Contained routes hist"
+ },
+ {
+ "render": {
+ "en": "Contains {_contained_climbing_routes_count} routes
{_contained_climbing_routes}
",
+ "fr": "Contient {_contained_climbing_routes_count} voies
{_contained_climbing_routes}
",
+ "it": "Contiene {_contained_climbing_routes_count} vie
{_contained_climbing_routes}
",
+ "de": " Enthält {_contained_climbing_routes_count} Routen
{_contained_climbing_routes}
"
+ },
+ "condition": "_contained_climbing_routes~*",
+ "id": "Contained_climbing_routes"
+ },
+ {
+ "render": {
+ "en": "{name}",
+ "nl": "{name}",
+ "de": "{name}",
+ "ca": "{name}",
+ "fr": "{name}",
+ "id": "{name}",
+ "ru": "{name}",
+ "ja": "{name}",
+ "it": "{name}"
+ },
+ "question": {
+ "en": "What is the name of this climbing opportunity?",
+ "nl": "Wat is de naam van dit Klimgelegenheid?",
+ "de": "Wie heißt diese Klettergelegenheit?",
+ "ja": "この登坂教室の名前は何ですか?",
+ "fr": "Quel est le nom de ce site ?",
+ "it": "Qual è il nome di questa opportunità di arrampicata?"
+ },
+ "freeform": {
+ "key": "name"
+ },
+ "mappings": [
+ {
+ "if": {
+ "and": [
+ "noname=yes",
+ "name="
+ ]
+ },
+ "then": {
+ "en": "This climbing opportunity doesn't have a name",
+ "nl": "Dit Klimgelegenheid heeft geen naam",
+ "de": "Diese Klettergelegenheit hat keinen Namen",
+ "ja": "この登坂教室には名前がついていない",
+ "fr": "Ce site n’a pas de nom",
+ "it": "Questa opportunità di arrampicata non ha un nome"
+ }
+ }
+ ],
+ "id": "name"
+ },
+ {
+ "question": "What kind of climbing opportunity is this?",
+ "mappings": [
+ {
+ "if": "climbing=boulder",
+ "then": {
+ "en": "A climbing boulder - a single rock or cliff with one or a few climbing routes which can be climbed safely without rope",
+ "fr": "Rocher d’escalade, rocher avec une ou peu de voie permettant d’escalader sans corde",
+ "de": "Ein Kletterfelsen - ein einzelner Felsen oder eine Klippe mit einer oder wenigen Kletterrouten, die ohne Seil sicher bestiegen werden können",
+ "it": "Un masso per arrampicata (una singola roccia o falesia con una o poche vie di arrampicata che possono essere scalate in sicurezza senza una corda)"
+ }
+ },
+ {
+ "if": "climbing=crag",
+ "then": {
+ "en": "A climbing crag - a single rock or cliff with at least a few climbing routes",
+ "fr": "Mur d’escalade, rocher avec plusieurs voies d’escalades",
+ "it": "Un muro da arrampicata (un singolo masso o falesia con almeno qualche via per arrampicata)",
+ "de": "Ein Kletterfelsen - ein einzelner Fels oder eine Klippe mit mindestens einigen Kletterrouten"
+ }
+ },
+ {
+ "if": "climbing=area",
+ "then": "A climbing area with one or more climbing crags and/or boulders"
+ }
+ ],
+ "id": "Type"
+ },
+ {
+ "question": {
+ "en": "What is the rock type here?",
+ "fr": "Quel est le type de roche ?",
+ "de": "Welchen Gesteinstyp gibt es hier?",
+ "it": "Qual è il tipo di roccia qua?"
+ },
+ "render": {
+ "en": "The rock type is {rock}",
+ "fr": "La roche est du {rock}",
+ "de": "Der Gesteinstyp ist {rock}",
+ "it": "Il tipo di roccia è {rock}"
+ },
+ "freeform": {
+ "key": "rock"
+ },
+ "mappings": [
+ {
+ "if": "rock=limestone",
+ "then": {
+ "en": "Limestone",
+ "nl": "Kalksteen",
+ "fr": "Calcaire",
+ "de": "Kalkstein",
+ "it": "Calcare"
+ }
+ }
+ ],
+ "condition": {
+ "or": [
+ "climbing=crag",
+ "natural=cliff",
+ "natural=bare_rock"
+ ]
+ },
+ "id": "Rock type (crag/rock/cliff only)"
+ }
+ ],
+ "presets": [
+ {
+ "tags": [
+ "sport=climbing"
+ ],
+ "title": {
+ "en": "a climbing opportunity",
+ "nl": "een klimgelegenheid",
+ "de": "eine klettermöglichkeit",
+ "ja": "登坂教室",
+ "nb_NO": "en klatremulighet",
+ "fr": "une opportunité d’escalade",
+ "it": "una opportunità di arrampicata"
+ },
+ "description": {
+ "nl": "Een klimgelegenheid",
+ "de": "Eine Klettergelegenheit",
+ "en": "A climbing opportunity",
+ "ja": "登坂教室",
+ "nb_NO": "En klatremulighet",
+ "fr": "Opportunité d’escalade",
+ "it": "Un’opportunità di arrampicata"
+ }
+ }
+ ],
+ "calculatedTags": [
+ "_contained_climbing_routes_properties=feat.overlapWith('climbing_route').map(f => f.feat.properties).map(p => {return {id: p.id, name: p.name, 'climbing:grade:french': p['climbing:grade:french'], 'climbing:length': p['climbing:length']} })",
+ "_contained_climbing_routes=JSON.parse(feat.properties._contained_climbing_routes_properties ?? '[]').map(p => `${p.name ?? 'climbing route'} (${p['climbing:grade:french'] ?? 'unknown difficulty'}, ${p['climbing:length'] ?? 'unkown length'} meter)`).join('')",
+ "_contained_climbing_route_ids=JSON.parse(feat.properties._contained_climbing_routes_properties ?? '[]').map(p => p.id)",
+ "_difficulty_hist=JSON.parse(feat.properties._contained_climbing_routes_properties ?? '[]').map(p => p['climbing:grade:french'])",
+ "_length_hist=JSON.parse(feat.properties._contained_climbing_routes_properties ?? '[]').map(p => p['climbing:length'])",
+ "_contained_climbing_routes_count=JSON.parse(feat.properties._contained_climbing_routes_properties ?? '[]').length"
+ ],
+ "mapRendering": [
+ {
+ "icon": {
+ "render": "./assets/themes/climbing/climbing_no_rope.svg"
+ },
+ "iconSize": {
+ "render": "40,40,center"
+ },
+ "location": [
+ "point",
+ "centroid"
+ ]
+ },
+ {
+ "color": {
+ "render": "#d38d5fAA"
+ },
+ "width": {
+ "render": "8"
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/assets/layers/climbing_club/climbing_club.json b/assets/layers/climbing_club/climbing_club.json
new file mode 100644
index 000000000..6720a1753
--- /dev/null
+++ b/assets/layers/climbing_club/climbing_club.json
@@ -0,0 +1,189 @@
+{
+ "id": "climbing_club",
+ "name": {
+ "de": "Klettervereine",
+ "nl": "Klimclub",
+ "en": "Climbing club",
+ "ru": "Клуб скалолазания",
+ "ja": "クライミングクラブ",
+ "zh_Hant": "攀岩社團",
+ "nb_NO": "Klatreklubb",
+ "fr": "Club d’escalade",
+ "it": "Club di arrampicata",
+ "hu": "Mászóegyesület"
+ },
+ "minzoom": 10,
+ "source": {
+ "osmTags": {
+ "or": [
+ "club=climbing",
+ {
+ "and": [
+ "sport=climbing",
+ {
+ "or": [
+ "office~*",
+ "club~*"
+ ]
+ }
+ ]
+ }
+ ]
+ }
+ },
+ "title": {
+ "render": {
+ "en": "Climbing club",
+ "nl": "Klimclub",
+ "de": "Kletterverein",
+ "ru": "Клуб скалолазания",
+ "ja": "クライミングクラブ",
+ "zh_Hant": "攀岩社團",
+ "nb_NO": "Klatreklubb",
+ "fr": "Club d’escalade",
+ "it": "Club di arrampicata"
+ },
+ "mappings": [
+ {
+ "if": "office~*",
+ "then": {
+ "nl": "Klimorganisatie",
+ "en": "Climbing NGO",
+ "de": "Kletter-Organisation",
+ "ja": "クライミングNGO",
+ "zh_Hant": "攀岩 NGO",
+ "fr": "Association d’escalade",
+ "it": "Associazione di arrampicata",
+ "hu": "Mászószervezet"
+ }
+ }
+ ]
+ },
+ "description": {
+ "de": "Ein Kletterverein oder -organisation",
+ "nl": "Een klimclub of organisatie",
+ "en": "A climbing club or organisation",
+ "ja": "クライミングクラブや団体",
+ "zh_Hant": "攀岩社團或組織",
+ "nb_NO": "En klatreklubb eller organisasjoner",
+ "fr": "Club ou association d’escalade",
+ "it": "Un club o associazione di arrampacata",
+ "hu": "Mászóegyesület vagy -szervezet"
+ },
+ "tagRenderings": [
+ {
+ "render": {
+ "en": "{name}",
+ "nl": "{name}",
+ "de": "{name}",
+ "ca": "{name}",
+ "fr": "{name}",
+ "id": "{name}",
+ "ru": "{name}",
+ "ja": "{name}",
+ "zh_Hant": "{name}",
+ "it": "{name}",
+ "hu": "{name}"
+ },
+ "question": {
+ "en": "What is the name of this climbing club or NGO?",
+ "de": "Wie lautet der Name dieses Vereins oder Organisation?",
+ "nl": "Wat is de naam van deze klimclub?",
+ "ja": "この登山クラブやNGOの名前は何ですか?",
+ "fr": "Quel est le nom du club ou de l’association ?",
+ "it": "Qual è il nome di questo club o associazione di arrampicata?",
+ "hu": "Mi a neve ennek a mászóegyesületnek vagy szervezetnek?"
+ },
+ "freeform": {
+ "key": "name"
+ },
+ "id": "climbing_club-name"
+ },
+ "website",
+ "email",
+ "phone",
+ "opening_hours"
+ ],
+ "presets": [
+ {
+ "tags": [
+ "club=sport",
+ "sport=climbing"
+ ],
+ "title": {
+ "de": "eine kletterverein",
+ "en": "a climbing club",
+ "nl": "een klimclub",
+ "ja": "クライミングクラブ",
+ "nb_NO": "en klatreklubb",
+ "ru": "Клуб скалолазания",
+ "fr": "une club d’escalade",
+ "it": "una club di arrampicata",
+ "hu": "Mászóegyesület"
+ },
+ "description": {
+ "de": "Ein Kletterverein",
+ "nl": "Een klimclub",
+ "en": "A climbing club",
+ "ja": "クライミングクラブ",
+ "nb_NO": "En klatreklubb",
+ "ru": "Клуб скалолазания",
+ "fr": "Un club d’escalade",
+ "it": "Un club di arrampicata",
+ "hu": "Egy mászóegyesület"
+ }
+ },
+ {
+ "tags": [
+ "office=ngo",
+ "sport=climbing"
+ ],
+ "title": {
+ "de": "Eine Kletterorganisation",
+ "en": "a climbing ngo",
+ "nl": "een een klimorganisatie",
+ "ja": "クライミングNGO",
+ "fr": "une association d’escalade",
+ "it": "una associazione di arrampicata",
+ "hu": "Mászószervezet"
+ },
+ "description": {
+ "de": "Eine Organisation, die sich mit dem Klettern beschäftigt",
+ "nl": "Een VZW die werkt rond klimmen",
+ "en": "An NGO working around climbing",
+ "ja": "登山に関わるNGO",
+ "fr": "Une association d’escalade",
+ "it": "Un’associazione che ha a che fare con l’arrampicata",
+ "hu": "Mászással foglalkozó civil szervezet"
+ }
+ }
+ ],
+ "mapRendering": [
+ {
+ "icon": {
+ "render": "./assets/themes/climbing/club.svg"
+ },
+ "iconBadges": [
+ {
+ "if": "opening_hours~*",
+ "then": "isOpen"
+ }
+ ],
+ "iconSize": {
+ "render": "40,40,center"
+ },
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "label": {
+ "mappings": [
+ {
+ "if": "name~*",
+ "then": "{name}
"
+ }
+ ]
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/assets/layers/climbing_gym/climbing_gym.json b/assets/layers/climbing_gym/climbing_gym.json
new file mode 100644
index 000000000..d93037ae6
--- /dev/null
+++ b/assets/layers/climbing_gym/climbing_gym.json
@@ -0,0 +1,114 @@
+{
+ "id": "climbing_gym",
+ "name": {
+ "de": "Kletterhallen",
+ "en": "Climbing gyms",
+ "nl": "Klimzalen",
+ "ja": "クライミングジム",
+ "fr": "Salle d’escalade",
+ "it": "Palestre di arrampicata",
+ "ru": "Комплексы скалолазания"
+ },
+ "minzoom": 10,
+ "source": {
+ "osmTags": {
+ "and": [
+ "sport=climbing",
+ "leisure=sports_centre"
+ ]
+ }
+ },
+ "title": {
+ "render": {
+ "nl": "Klimzaal",
+ "de": "Kletterhalle",
+ "en": "Climbing gym",
+ "ja": "クライミングジム",
+ "fr": "Salle d’escalade",
+ "it": "Palestra di arrampicata",
+ "ru": "Комплекс скалолазания"
+ },
+ "mappings": [
+ {
+ "if": "name~*",
+ "then": {
+ "nl": "Klimzaal {name}",
+ "de": "Kletterhalle {name}",
+ "en": "Climbing gym {name}",
+ "ja": "クライミングジム{name}",
+ "fr": "Salle d’escalade {name}",
+ "it": "Palestra di arrampicata {name}"
+ }
+ }
+ ]
+ },
+ "description": {
+ "de": "Eine Kletterhalle",
+ "en": "A climbing gym",
+ "ja": "クライミングジム",
+ "nl": "Een klimzaal",
+ "fr": "Une salle d’escalade",
+ "it": "Una palestra di arrampicata",
+ "ru": "Комплекс скалолазания"
+ },
+ "tagRenderings": [
+ "images",
+ {
+ "render": {
+ "en": "{name}",
+ "nl": "{name}",
+ "de": "{name}",
+ "ca": "{name}",
+ "fr": "{name}",
+ "id": "{name}",
+ "ru": "{name}",
+ "ja": "{name}",
+ "it": "{name}"
+ },
+ "question": {
+ "en": "What is the name of this climbing gym?",
+ "nl": "Wat is de naam van dit Klimzaal?",
+ "de": "Wie heißt diese Kletterhalle?",
+ "ja": "このクライミングジムは何という名前ですか?",
+ "fr": "Quel est le nom de la salle d’escalade ?",
+ "it": "Qual è il nome di questa palestra di arrampicata?"
+ },
+ "freeform": {
+ "key": "name"
+ },
+ "id": "name"
+ },
+ "website",
+ "phone",
+ "email",
+ "opening_hours"
+ ],
+ "mapRendering": [
+ {
+ "icon": {
+ "render": "./assets/themes/climbing/climbing_gym.svg"
+ },
+ "iconBadges": [
+ {
+ "if": "opening_hours~*",
+ "then": "isOpen"
+ }
+ ],
+ "iconSize": {
+ "render": "40,40,center"
+ },
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "label": {
+ "mappings": [
+ {
+ "if": "name~*",
+ "then": "{name}
"
+ }
+ ]
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/assets/layers/climbing_opportunity/climbing_opportunity.json b/assets/layers/climbing_opportunity/climbing_opportunity.json
new file mode 100644
index 000000000..c9afa69f0
--- /dev/null
+++ b/assets/layers/climbing_opportunity/climbing_opportunity.json
@@ -0,0 +1,142 @@
+{
+ "id": "climbing_opportunity",
+ "name": {
+ "nl": "Klimgelegenheiden?",
+ "de": "Klettermöglichkeiten?",
+ "en": "Climbing opportunities?",
+ "ja": "登坂教室?",
+ "nb_NO": "Klatremuligheter?",
+ "fr": "Opportunités d’escalade ?",
+ "it": "Opportunità di arrampicata?"
+ },
+ "minzoom": 19,
+ "source": {
+ "osmTags": {
+ "and": [
+ {
+ "or": [
+ "leisure=sports_centre",
+ "barrier=wall",
+ "barrier=retaining_wall",
+ "natural=cliff",
+ "natural=rock",
+ "natural=stone"
+ ]
+ },
+ "climbing="
+ ]
+ }
+ },
+ "title": {
+ "render": {
+ "en": "Climbing opportunity?",
+ "nl": "Klimgelegenheid?",
+ "de": "Klettermöglichkeit?",
+ "ja": "登坂教室?",
+ "nb_NO": "Klatremulighet?",
+ "fr": "Opportunité d’escalade ?",
+ "it": "Opportunità di arrampicata?"
+ }
+ },
+ "description": {
+ "nl": "Een klimgelegenheid?",
+ "de": "Eine Klettergelegenheit?",
+ "en": "A climbing opportunity?",
+ "ja": "登坂教室?",
+ "nb_NO": "En klatremulighet?",
+ "fr": "Opportunité d’escalade ?",
+ "it": "Un’opportunità di arrampicata?"
+ },
+ "tagRenderings": [
+ {
+ "id": "climbing-opportunity-name",
+ "render": {
+ "en": "{name}",
+ "de": "{name}",
+ "ca": "{name}",
+ "fr": "{name}",
+ "id": "{name}",
+ "ru": "{name}",
+ "ja": "{name}",
+ "nl": "{name}",
+ "it": "{name}"
+ },
+ "condition": "name~*"
+ },
+ {
+ "id": "climbing-possible",
+ "question": {
+ "en": "Is climbing possible here?",
+ "de": "Kann hier geklettert werden?",
+ "ja": "ここで登坂はできますか?",
+ "nb_NO": "Er klatring mulig her?",
+ "fr": "Est-il possible d’escalader ici ?",
+ "it": "È possibile arrampicarsi qua?"
+ },
+ "mappings": [
+ {
+ "if": {
+ "and": [
+ "sport=climbing"
+ ]
+ },
+ "then": {
+ "en": "Climbing is possible here",
+ "de": "Hier kann geklettert werden",
+ "ja": "ここでは登ることができる",
+ "nb_NO": "Klatring er mulig her",
+ "nl": "Klimmen is hier niet toegelaten",
+ "fr": "Escalader est possible",
+ "it": "È possibile arrampicarsi qua"
+ }
+ },
+ {
+ "if": "climbing=no",
+ "then": {
+ "en": "Climbing is not possible here",
+ "de": "Hier kann nicht geklettert werden",
+ "ja": "ここでは登ることができない",
+ "nb_NO": "Klatring er ikke mulig her",
+ "nl": "Klimmen is hier niet toegelaten",
+ "fr": "Escalader n’est pas possible",
+ "it": "Non è possibile arrampicarsi qua"
+ }
+ },
+ {
+ "if": {
+ "and": [
+ "sport!~climbing"
+ ]
+ },
+ "then": {
+ "en": "Climbing is not possible here",
+ "de": "Hier kann nicht geklettert werden",
+ "ja": "ここでは登ることができない",
+ "nb_NO": "Klatring er ikke mulig her",
+ "nl": "Klimmen is hier niet mogelijk",
+ "fr": "Escalader n’est pas possible",
+ "it": "Non è possibile arrampicarsi qua"
+ },
+ "hideInAnswer": true
+ }
+ ]
+ }
+ ],
+ "mapRendering": [
+ {
+ "icon": "./assets/themes/climbing/climbing_unknown.svg",
+ "location": [
+ "point",
+ "centroid"
+ ]
+ },
+ {
+ "color": {
+ "render": "#ddff55AA"
+ },
+ "width": {
+ "render": "2"
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/assets/layers/climbing_route/climbing_route.json b/assets/layers/climbing_route/climbing_route.json
new file mode 100644
index 000000000..faba96032
--- /dev/null
+++ b/assets/layers/climbing_route/climbing_route.json
@@ -0,0 +1,246 @@
+{
+ "id": "climbing_route",
+ "name": {
+ "en": "Climbing routes",
+ "de": "Kletterrouten",
+ "nl": "Klimroute",
+ "ja": "登坂ルート",
+ "nb_NO": "Klatreruter",
+ "fr": "Voies d’escalade",
+ "it": "Vie di arrampicata"
+ },
+ "minzoom": 18,
+ "source": {
+ "osmTags": {
+ "and": [
+ "climbing=route"
+ ]
+ }
+ },
+ "title": {
+ "render": {
+ "de": "Kleterroute",
+ "en": "Climbing route",
+ "nl": "Klimroute",
+ "ja": "登坂ルート",
+ "nb_NO": "Klatrerute",
+ "it": "Via di arrampicata",
+ "fr": "Voie d’escalade"
+ },
+ "mappings": [
+ {
+ "if": "name~*",
+ "then": {
+ "de": "Kleterroute {name}",
+ "en": "Climbing route {name}",
+ "nl": "Klimroute {name}",
+ "ja": "登坂ルート{name}",
+ "it": "Via di arrampicata {name}",
+ "fr": "Voie d’escalade {name}"
+ }
+ }
+ ]
+ },
+ "tagRenderings": [
+ "images",
+ {
+ "render": {
+ "en": "{name}",
+ "nl": "{name}",
+ "de": "{name}",
+ "ca": "{name}",
+ "fr": "{name}",
+ "id": "{name}",
+ "ru": "{name}",
+ "ja": "{name}",
+ "it": "{name}",
+ "nb_NO": "{name}"
+ },
+ "question": {
+ "en": "What is the name of this climbing route?",
+ "de": "Wie heißt diese Kletterroute?",
+ "nl": "Hoe heet deze klimroute?",
+ "ja": "この登坂ルートの名前は何ですか?",
+ "it": "Come si chiama questa via di arrampicata?",
+ "fr": "Quel est le nom de cette voie d’escalade ?",
+ "nb_NO": "Hva er navnet på denne klatreruten?"
+ },
+ "freeform": {
+ "key": "name"
+ },
+ "mappings": [
+ {
+ "if": {
+ "and": [
+ "noname=yes",
+ "name="
+ ]
+ },
+ "then": {
+ "en": "This climbing route doesn't have a name",
+ "de": "Diese Kletterroute hat keinen Namen",
+ "nl": "Deze klimroute heeft geen naam",
+ "ja": "この登坂ルートには名前がありません",
+ "it": "Questa via di arrampicata non ha un nome",
+ "fr": "Cette voie n’a pas de nom",
+ "nb_NO": "Denne klatreruten har ikke noe navn"
+ }
+ }
+ ],
+ "id": "Name"
+ },
+ {
+ "question": {
+ "en": "How long is this climbing route (in meters)?",
+ "nl": "Hoe lang is deze klimroute (in meters)?",
+ "it": "Quanto è lunga questa via di arrampicata (in metri)?",
+ "fr": "Quelle est la longueur de cette voie (en mètres) ?",
+ "de": "Wie lang ist diese Kletterroute (in Metern)?",
+ "nb_NO": "Hvor mange meter er klatreruten?"
+ },
+ "render": {
+ "de": "Diese Route ist {canonical(climbing:length)} lang",
+ "en": "This route is {canonical(climbing:length)} long",
+ "nl": "Deze klimroute is {canonical(climbing:length)} lang",
+ "ja": "このルート長は、 {canonical(climbing:length)} メーターです",
+ "nb_NO": "Denne ruten er {canonical(climbing:length)} lang",
+ "it": "Questo percorso è lungo {canonical(climbing:length)}",
+ "fr": "Cette voie fait {canonical(climbing:length)} de long"
+ },
+ "freeform": {
+ "key": "climbing:length",
+ "type": "pnat"
+ },
+ "id": "Length"
+ },
+ {
+ "question": {
+ "en": "What is the grade of this climbing route according to the french/belgian system?",
+ "nl": "Hoe moeilijk is deze klimroute volgens het Franse/Belgische systeem?",
+ "it": "Qual è la difficoltà di questa via di arrampicata nel sistema francese/belga?",
+ "fr": "Quelle est la difficulté de cette voie selon le système franco-belge ?",
+ "de": "Wie hoch ist der Schwierigkeitsgrad dieser Kletterroute nach dem französisch/belgischen System?"
+ },
+ "render": {
+ "de": "Die Schwierigkeit ist {climbing:grade:french} entsprechend des französisch/belgischen Systems",
+ "en": "The grade is {climbing:grade:french} according to the french/belgian system",
+ "nl": "De klimmoeilijkheid is {climbing:grade:french} volgens het Franse/Belgische systeem",
+ "ja": "フランス/ベルギーのランク評価システムによると、{climbing:grade:french}の困難度です",
+ "it": "Il grado di difficoltà è {climbing:grade:french} nel sistema francese/belga",
+ "fr": "Selon le système franco-belge, la difficulté de cette voie est de {climbing:grade:french}"
+ },
+ "freeform": {
+ "key": "climbing:grade:french"
+ },
+ "id": "Difficulty"
+ },
+ {
+ "question": {
+ "en": "How many bolts does this route have before reaching the anchor?",
+ "fr": "Combien de prises cette voie possède avant d’atteindre la moulinette ?",
+ "de": "Wie viele Haken gibt es auf dieser Kletterroute bevor der Umlenker bzw. Standhaken erreicht ist?",
+ "it": "Quanti bulloni sono presenti in questo percorso prima di arrivare alla moulinette?"
+ },
+ "render": {
+ "en": "This route has {climbing:bolts} bolts",
+ "fr": "Cette voie a {climbing:bolts} prises",
+ "de": "Diese Kletterroute hat {climbing:bolts} Haken",
+ "it": "Questo percorso ha {climbing:bolts} bulloni"
+ },
+ "freeform": {
+ "key": "climbing:bolts",
+ "type": "pnat",
+ "addExtraTag": [
+ "climbing:bolted=yes"
+ ]
+ },
+ "mappings": [
+ {
+ "if": "climbing:bolted=no",
+ "then": {
+ "en": "This route is not bolted",
+ "fr": "Cette voie n’a pas de prises",
+ "de": "Auf dieser Kletterroute sind keine Haken vorhanden",
+ "it": "In questo percorso non sono presenti bulloni"
+ },
+ "hideInAnswer": true
+ },
+ {
+ "if": "climbing:bolted=no&climbing:bolts=",
+ "then": {
+ "en": "This route is not bolted",
+ "fr": "Cette voie n’a pas de prises",
+ "de": "Auf dieser Kletterroute sind keine Haken vorhanden",
+ "it": "In questo percorso non sono presenti bulloni"
+ }
+ }
+ ],
+ "id": "Bolts"
+ },
+ {
+ "question": "Is there other relevant info?",
+ "render": "Description
{description}",
+ "freeform": {
+ "key": "description"
+ },
+ "id": "Description"
+ },
+ {
+ "render": {
+ "en": "The rock type is {_embedding_features_with_rock:rock} as stated on the surrounding crag",
+ "fr": "Le type de roche est {_embedding_features_with_rock:rock} selon le mur",
+ "it": "Il tipo di roccia è {_embedding_features_with_rock:rock} come dichiarato sul muro circostante",
+ "de": "Der Gesteinstyp ist {_embedding_features_with_rock:rock}, wie auf dem umgebenden Felsen angegeben"
+ },
+ "freeform": {
+ "key": "_embedding_features_with_rock:rock"
+ },
+ "id": "Rock type"
+ }
+ ],
+ "presets": [
+ {
+ "title": {
+ "en": "a climbing route",
+ "nl": "een klimroute",
+ "fr": "une voie d’escalade",
+ "de": "eine kletterroute",
+ "it": "una via di arrampicata"
+ },
+ "tags": [
+ "sport=climbing",
+ "climbing=route"
+ ]
+ }
+ ],
+ "mapRendering": [
+ {
+ "icon": {
+ "render": "circle:white;./assets/themes/climbing/climbing_route.svg"
+ },
+ "iconSize": {
+ "render": "28,28,center"
+ },
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "label": {
+ "mappings": [
+ {
+ "if": "name~*",
+ "then": "{name}
"
+ }
+ ]
+ }
+ },
+ {
+ "color": {
+ "render": "#0f0"
+ },
+ "width": {
+ "render": "4"
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/assets/layers/hackerspace/hackerspace.json b/assets/layers/hackerspace/hackerspace.json
new file mode 100644
index 000000000..3a360fbbb
--- /dev/null
+++ b/assets/layers/hackerspace/hackerspace.json
@@ -0,0 +1,258 @@
+{
+ "id": "hackerspace",
+ "name": {
+ "en": "Hackerspace",
+ "de": "Hackerspaces",
+ "ru": "Хакерспейс",
+ "zh_Hant": "駭客空間",
+ "hu": "Hackerspace"
+ },
+ "minzoom": 8,
+ "title": {
+ "render": {
+ "en": "Hackerspace",
+ "de": "Hackerspace",
+ "ru": "Хакерспейс",
+ "zh_Hant": "駭客空間",
+ "hu": "Hackerspace"
+ },
+ "mappings": [
+ {
+ "if": {
+ "and": [
+ "name~*"
+ ]
+ },
+ "then": {
+ "en": " {name}",
+ "de": " {name}",
+ "ru": " {name}",
+ "zh_Hant": " {name}",
+ "hu": " {name}",
+ "ca": " {name}"
+ }
+ }
+ ]
+ },
+ "description": {
+ "en": "Hackerspace",
+ "de": "Hackerspace",
+ "ru": "Хакерспейс",
+ "zh_Hant": "駭客空間",
+ "hu": "Hackerspace"
+ },
+ "tagRenderings": [
+ {
+ "id": "is_makerspace",
+ "question": {
+ "en": "Is this a hackerspace or a makerspace?",
+ "de": "Ist dies ein Hackerspace oder ein Makerspace?",
+ "zh_Hant": "這邊是駭客空間還是創客空間?",
+ "hu": "Ez hackerspace vagy makerspace?"
+ },
+ "mappings": [
+ {
+ "if": "hackerspace=makerspace",
+ "then": {
+ "en": "This is a makerspace",
+ "de": "Dies ist ein Makerspace",
+ "zh_Hant": "這是創客空間",
+ "hu": "Ez egy makerspace"
+ }
+ },
+ {
+ "if": "hackerspace=",
+ "then": {
+ "en": "This is a traditional (software oriented) hackerspace",
+ "de": "Dies ist ein traditioneller (softwareorientierter) Hackerspace",
+ "zh_Hant": "這是傳統的 (軟體導向) 駭客空間",
+ "hu": "Ez egy hagyományos (szoftverekkel foglalkozó) hackerspace"
+ }
+ }
+ ]
+ },
+ {
+ "question": {
+ "en": "What is the name of this hackerspace?",
+ "de": "Wie lautet der Name dieses Hackerspace?",
+ "zh_Hant": "這個駭客空間的名稱是?"
+ },
+ "render": {
+ "en": "This hackerspace is named {name}",
+ "de": "Dieser Hackerspace heißt {name}",
+ "zh_Hant": "這個駭客空間叫 {name}"
+ },
+ "freeform": {
+ "key": "name"
+ },
+ "id": "hackerspaces-name"
+ },
+ "website",
+ "email",
+ "phone",
+ {
+ "question": {
+ "en": "When is this hackerspace opened?",
+ "de": "Wann hat dieser Hackerspace geöffnet?",
+ "zh_Hant": "這個駭客空間的營業時間?"
+ },
+ "freeform": {
+ "key": "opening_hours",
+ "type": "opening_hours"
+ },
+ "render": {
+ "en": "{opening_hours_table()}",
+ "de": "{opening_hours_table()}",
+ "ru": "{opening_hours_table()}",
+ "zh_Hant": "{opening_hours_table()}",
+ "ca": "{opening_hours_table()}"
+ },
+ "mappings": [
+ {
+ "if": {
+ "and": [
+ "opening_hours=24/7"
+ ]
+ },
+ "then": {
+ "en": "Opened 24/7",
+ "de": "durchgehend geöffnet",
+ "ru": "Открыто 24/7",
+ "zh_Hant": "24/7 營業",
+ "ca": "Obert 24/7"
+ }
+ }
+ ],
+ "id": "hackerspaces-opening_hours"
+ },
+ "wheelchair-access",
+ {
+ "id": "hs-club-mate",
+ "question": {
+ "en": "Does this hackerspace serve Club Mate?",
+ "de": "Gibt es in diesem Hackerspace Club Mate?",
+ "zh_Hant": "這個駭客空間是否服務俱樂部伙伴?"
+ },
+ "mappings": [
+ {
+ "if": {
+ "and": [
+ "drink:club-mate=yes"
+ ]
+ },
+ "then": {
+ "en": "This hackerspace serves club mate",
+ "de": "In diesem Hackerspace gibt es Club Mate",
+ "zh_Hant": "這個駭客空間服務俱樂部伙伴"
+ }
+ },
+ {
+ "if": {
+ "and": [
+ "drink:club-mate=no"
+ ]
+ },
+ "then": {
+ "en": "This hackerspace does not serve club mate",
+ "de": "In diesem Hackerspace gibt es kein Club Mate",
+ "zh_Hant": "這個駭客空間沒有服務俱樂部伙伴"
+ }
+ }
+ ]
+ },
+ {
+ "render": {
+ "en": "This hackerspace was founded at {start_date}",
+ "de": "Dieser Hackerspace wurde gegründet am {start_date}",
+ "zh_Hant": "這駭客空間是 {start_date} 成立的"
+ },
+ "question": {
+ "en": "When was this hackerspace founded?",
+ "de": "Wann wurde dieser Hackerspace gegründet?",
+ "zh_Hant": "這個駭客空間何時成立的?"
+ },
+ "freeform": {
+ "key": "start_date",
+ "type": "date"
+ },
+ "id": "hackerspaces-start_date"
+ }
+ ],
+ "presets": [
+ {
+ "tags": [
+ "leisure=hackerspace"
+ ],
+ "title": {
+ "en": "a hackerspace",
+ "de": "eine hackerspace",
+ "ru": "Хакерспейс",
+ "zh_Hant": "駭客空間",
+ "hu": "Hackerspace"
+ },
+ "description": {
+ "en": "A hackerspace is an area where people interested in software gather",
+ "de": "Ein Hackerspace ist ein Ort, an dem sich Menschen treffen, die sich für Software interessieren",
+ "zh_Hant": "駭客空間是對軟體有興趣的人聚集的地方",
+ "hu": "A hackerspace egy olyan hely, ahol szoftverek iránt érdeklő emberek találkoznak"
+ }
+ },
+ {
+ "tags": [
+ "leisure=hackerspace",
+ "hackerspace=makerspace"
+ ],
+ "title": {
+ "en": "a makerspace",
+ "de": "eine makerspace",
+ "zh_Hant": "創客空間",
+ "hu": "Makerspace"
+ },
+ "description": {
+ "en": "A makerspace is a place where DIY-enthusiasts gather to experiment with electronics such as arduino, LEDstrips, ...",
+ "de": "Ein Makerspace ist ein Ort, an dem Heimwerker-Enthusiasten zusammenkommen, um mit Elektronik zu experimentieren, wie Arduino, LED-Strips, ...",
+ "zh_Hant": "創客空間是 DIY 愛好者聚集在一起弄電子零件實驗,例如用 arduino、LEDstrips 等...",
+ "hu": "A makerspace olyan hely, ahol a barkácsolás szerelmesei találkoznak, hogy olyan elektronikai eszközökkel kísérletezzenek, mint például az Arduino vagy a LEDstrips."
+ }
+ }
+ ],
+ "source": {
+ "osmTags": {
+ "and": [
+ "leisure=hackerspace"
+ ]
+ }
+ },
+ "mapRendering": [
+ {
+ "icon": {
+ "render": "./assets/themes/hackerspaces/glider.svg",
+ "mappings": [
+ {
+ "if": {
+ "and": [
+ "hackerspace=makerspace"
+ ]
+ },
+ "then": "./assets/themes/hackerspaces/led.png"
+ }
+ ]
+ },
+ "iconSize": {
+ "render": "40,40,center"
+ },
+ "location": [
+ "point",
+ "centroid"
+ ]
+ },
+ {
+ "color": {
+ "render": "#00f"
+ },
+ "width": {
+ "render": "8"
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/assets/layers/windturbine/windturbine.json b/assets/layers/windturbine/windturbine.json
new file mode 100644
index 000000000..334d611c8
--- /dev/null
+++ b/assets/layers/windturbine/windturbine.json
@@ -0,0 +1,319 @@
+{
+ "id": "windturbine",
+ "name": {
+ "en": "wind turbine",
+ "nl": "windturbine",
+ "fr": "Éolienne",
+ "de": "Windräder",
+ "it": "pala eolica",
+ "zh_Hant": "風機",
+ "hu": "Szélerőmű"
+ },
+ "source": {
+ "osmTags": "generator:source=wind"
+ },
+ "minzoom": 10,
+ "title": {
+ "render": {
+ "en": "wind turbine",
+ "nl": "windturbine",
+ "fr": "éolienne",
+ "de": "Windrad",
+ "it": "pala eolica",
+ "zh_Hant": "風機",
+ "id": "turbin angin",
+ "hu": "szélerőmű"
+ },
+ "mappings": [
+ {
+ "if": "name~*",
+ "then": {
+ "en": "{name}",
+ "fr": "{name}",
+ "eo": "{name}",
+ "it": "{name}",
+ "ru": "{name}",
+ "zh_Hant": "{name}",
+ "id": "{name}",
+ "de": "{name}",
+ "ca": "{name}"
+ }
+ }
+ ]
+ },
+ "tagRenderings": [
+ {
+ "id": "turbine-output",
+ "render": {
+ "en": "The power output of this wind turbine is {generator:output:electricity}.",
+ "fr": "La puissance générée par cette éolienne est de {generator:output:electricity}.",
+ "it": "La potenza generata da questa pala eolica è {generator:output:electricity}.",
+ "zh_Hant": "這個風機的電力輸出是 {generator:output:electricity}。",
+ "id": "Output daya dari turbin angin ini adalah {generator:output:electricity}.",
+ "hu": "A szélerőmű teljesítménye: {generator:output:electricity}.",
+ "de": "Das Windrad erzeugt {generator:output:electricity} Strom."
+ },
+ "question": {
+ "en": "What is the power output of this wind turbine? (e.g. 2.3 MW)",
+ "fr": "Quel est la puissance générée par cette éolienne ?",
+ "it": "Quant’è la potenza generata da questa pala eolica? (ad es. 2.3 MW)",
+ "zh_Hant": "這個風機的電力輸出是多少?(例如 2.3 MW)",
+ "id": "Berapa output daya dari turbin angin ini? (misalnya 2,3 MW)",
+ "hu": "Mekkora a teljesítménye ennek a szélturbinának? (pl. 2.3 MW)",
+ "de": "Wieviel Strom erzeugt das Windrad? (z.B. 2.3MW)"
+ },
+ "freeform": {
+ "key": "generator:output:electricity",
+ "type": "pfloat"
+ }
+ },
+ {
+ "id": "turbine-operator",
+ "render": {
+ "en": "This wind turbine is operated by {operator}.",
+ "fr": "Cette éolienne est opérée par {operator}.",
+ "it": "Questa pala eolica è gestita da {operator}.",
+ "zh_Hant": "這個風機營業商是 {operator}。",
+ "id": "Turbin angin ini dioperasikan oleh {operator}.",
+ "hu": "Ennek a szélerőműnek az üzemeltetője: {operator}.",
+ "de": "Die Windturbine wird betrieben von {operator}."
+ },
+ "question": {
+ "en": "Who operates this wind turbine?",
+ "fr": "Qui est l’exploitant de cette éolienne ?",
+ "it": "Chi gestisce questa pala eolica?",
+ "zh_Hant": "這個風機營業商是?",
+ "hu": "Ki üzemelteti ezt a szélturbinát?",
+ "de": "Wer betreibt das Windrads?"
+ },
+ "freeform": {
+ "key": "operator"
+ }
+ },
+ {
+ "id": "turbine-height",
+ "render": {
+ "en": "The total height (including rotor radius) of this wind turbine is {height} metres.",
+ "fr": "La hauteur totale, incluant les pales, est de {height} mètres.",
+ "it": "L’altezza totale (raggio del rotore incluso) di questa pala eolica è di {height} metri.",
+ "zh_Hant": "這風機的總高度 (包括風葉直徑) 是 {height} 公尺。",
+ "hu": "A szélerőmű teljes (rotor sugarával együtt számított) magassága: {height} méter.",
+ "de": "Die Gesamthöhe dieses Windrads beträgt (einschließlich Rotorradius) {height} Meter."
+ },
+ "question": {
+ "en": "What is the total height of this wind turbine (including rotor radius), in metres?",
+ "fr": "Quelle est la hauteur totale de l’éolienne en mètres, pales incluses ?",
+ "it": "Qual è l’altezza (in metri e raggio del rotore incluso) di questa pala eolica?",
+ "zh_Hant": "這個風機的總高度是多少 (包括風葉大小) 公尺?",
+ "hu": "Hány méter a szélerőmű teljes magassága (a rotor sugarával együtt)?",
+ "de": "Wie hoch ist dieses Windrad (inklusive Rotorradius) in Metern?"
+ },
+ "freeform": {
+ "key": "height",
+ "type": "pfloat"
+ }
+ },
+ {
+ "id": "turbine-diameter",
+ "render": {
+ "en": "The rotor diameter of this wind turbine is {rotor:diameter} metres.",
+ "fr": "Le diamètre du rotor est de {rotor:diameter} mètres.",
+ "it": "Il diametro del rotore di questa pala eolica è di {rotor:diameter} metri.",
+ "zh_Hant": "這個風力渦輪機的風葉直徑是 {rotor:diameter} 公尺。",
+ "hu": "A szélturbina rotorátmérője: {rotor:diameter} méter.",
+ "de": "Der Rotordurchmesser der Windturbine ist {rotor:diameter} Meter."
+ },
+ "question": {
+ "en": "What is the rotor diameter of this wind turbine, in metres?",
+ "fr": "Quel est le diamètre du rotor en mètres ?",
+ "it": "Qual è il diametro (in metri) del rotore di questa pala eolica?",
+ "zh_Hant": "這個風力渦輪機的風葉直徑是多少公尺?",
+ "hu": "Hány méter a rotorátmérője ennek a szélturbinának?",
+ "de": "Wie groß ist der Rotordurchmesser der Windturbine in Meter?"
+ },
+ "freeform": {
+ "key": "rotor:diameter",
+ "type": "float"
+ }
+ },
+ {
+ "id": "turbine-start-date",
+ "render": {
+ "en": "This wind turbine went into operation on/in {start_date}.",
+ "fr": "L’éolienne est active depuis {start_date}.",
+ "it": "Questa pala eolica è entrata in funzione in data {start_date}.",
+ "zh_Hant": "這個風機從 {start_date} 開始運轉。",
+ "id": "Turbin angin ini mulai beroperasi pada/dalam {start_date}.",
+ "hu": "A szélerőmű üzembe helyezése: {start_date}.",
+ "de": "Das Windrad wurde am {start_date} in Betrieb genommen."
+ },
+ "question": {
+ "en": "When did this wind turbine go into operation?",
+ "fr": "Depuis quand l’éolienne est-elle en fonctionnement ?",
+ "it": "Quando è entrata in funzione questa pala eolica?",
+ "zh_Hant": "這個風機何時開始營運?",
+ "id": "Kapan turbin angin ini mulai beroperasi?",
+ "hu": "Mikor helyezték üzembe ezt a szélerőművet?",
+ "de": "Wann wurde das Windrad in Betrieb genommen?"
+ },
+ "freeform": {
+ "key": "start_date",
+ "type": "date"
+ }
+ },
+ "images"
+ ],
+ "presets": [
+ {
+ "tags": [
+ "power=generator",
+ "generator:source=wind"
+ ],
+ "title": {
+ "en": "a wind turbine",
+ "nl": "een windturbine",
+ "fr": "une éolienne",
+ "de": "ein Windrad",
+ "it": "una pala eolica",
+ "zh_Hant": "風機",
+ "hu": "Szélerőmű"
+ }
+ }
+ ],
+ "units": [
+ {
+ "appliesToKey": [
+ "generator:output:electricity"
+ ],
+ "applicableUnits": [
+ {
+ "canonicalDenomination": "MW",
+ "alternativeDenomination": [
+ "megawatts",
+ "megawatt"
+ ],
+ "human": {
+ "en": " megawatts",
+ "nl": " megawatt",
+ "fr": " megawatts",
+ "de": " Megawatt",
+ "eo": " megavatoj",
+ "it": " megawatt",
+ "ru": " мегаватт",
+ "zh_Hant": " 百萬瓦",
+ "id": " megawat",
+ "hu": " megawatt",
+ "ca": " megavats"
+ }
+ },
+ {
+ "canonicalDenomination": "kW",
+ "alternativeDenomination": [
+ "kilowatts",
+ "kilowatt"
+ ],
+ "human": {
+ "en": " kilowatts",
+ "nl": " kilowatt",
+ "fr": " kilowatts",
+ "de": " Kilowatt",
+ "eo": " kilovatoj",
+ "it": " kilowatt",
+ "nb_NO": " kilowatt",
+ "ru": " киловатт",
+ "zh_Hant": " 千瓦",
+ "id": " kilowat",
+ "hu": " kilowatt",
+ "ca": " quilovats"
+ }
+ },
+ {
+ "canonicalDenomination": "W",
+ "alternativeDenomination": [
+ "watts",
+ "watt"
+ ],
+ "human": {
+ "en": " watts",
+ "nl": " watt",
+ "fr": " watts",
+ "de": " Watt",
+ "eo": " vatoj",
+ "it": " watt",
+ "ru": " ватт",
+ "zh_Hant": " 瓦",
+ "id": " watt",
+ "hu": " watt",
+ "ca": " vats"
+ }
+ },
+ {
+ "canonicalDenomination": "GW",
+ "alternativeDenomination": [
+ "gigawatts",
+ "gigawatt"
+ ],
+ "human": {
+ "en": " gigawatts",
+ "nl": " gigawatt",
+ "fr": " gigawatts",
+ "de": " Gigawatt",
+ "eo": " gigavatoj",
+ "it": " gigawatt",
+ "ru": " гигаватт",
+ "zh_Hant": " 千兆瓦",
+ "id": " gigawatt",
+ "hu": " gigawatt",
+ "ca": " gigavats"
+ }
+ }
+ ],
+ "eraseInvalidValues": true
+ },
+ {
+ "appliesToKey": [
+ "height",
+ "rotor:diameter"
+ ],
+ "applicableUnits": [
+ {
+ "canonicalDenomination": "m",
+ "alternativeDenomination": [
+ "meter"
+ ],
+ "human": {
+ "en": " meter",
+ "nl": " meter",
+ "fr": " mètres",
+ "de": " Meter",
+ "eo": " metro",
+ "it": " metri",
+ "ru": " метр",
+ "zh_Hant": " 公尺",
+ "id": " meter",
+ "hu": " méter",
+ "ca": " metre"
+ }
+ }
+ ]
+ }
+ ],
+ "mapRendering": [
+ {
+ "icon": "./assets/themes/openwindpowermap/wind_turbine.svg",
+ "label": {
+ "mappings": [
+ {
+ "if": "generator:output:electricity~^[0-9]+.*[W]$",
+ "then": "{generator:output:electricity}
"
+ }
+ ]
+ },
+ "iconSize": "40, 40, bottom",
+ "location": [
+ "point",
+ "centroid"
+ ]
+ }
+ ]
+}
\ No newline at end of file
diff --git a/assets/themes/climbing/climbing.json b/assets/themes/climbing/climbing.json
index 93225e802..44eb22556 100644
--- a/assets/themes/climbing/climbing.json
+++ b/assets/themes/climbing/climbing.json
@@ -43,997 +43,11 @@
"startZoom": 1,
"widenFactor": 1.5,
"layers": [
- {
- "id": "climbing_club",
- "name": {
- "de": "Klettervereine",
- "nl": "Klimclub",
- "en": "Climbing club",
- "ru": "Клуб скалолазания",
- "ja": "クライミングクラブ",
- "zh_Hant": "攀岩社團",
- "nb_NO": "Klatreklubb",
- "fr": "Club d’escalade",
- "it": "Club di arrampicata",
- "hu": "Mászóegyesület"
- },
- "minzoom": 10,
- "source": {
- "osmTags": {
- "or": [
- "club=climbing",
- {
- "and": [
- "sport=climbing",
- {
- "or": [
- "office~*",
- "club~*"
- ]
- }
- ]
- }
- ]
- }
- },
- "title": {
- "render": {
- "en": "Climbing club",
- "nl": "Klimclub",
- "de": "Kletterverein",
- "ru": "Клуб скалолазания",
- "ja": "クライミングクラブ",
- "zh_Hant": "攀岩社團",
- "nb_NO": "Klatreklubb",
- "fr": "Club d’escalade",
- "it": "Club di arrampicata"
- },
- "mappings": [
- {
- "if": "office~*",
- "then": {
- "nl": "Klimorganisatie",
- "en": "Climbing NGO",
- "de": "Kletter-Organisation",
- "ja": "クライミングNGO",
- "zh_Hant": "攀岩 NGO",
- "fr": "Association d’escalade",
- "it": "Associazione di arrampicata",
- "hu": "Mászószervezet"
- }
- }
- ]
- },
- "description": {
- "de": "Ein Kletterverein oder -organisation",
- "nl": "Een klimclub of organisatie",
- "en": "A climbing club or organisation",
- "ja": "クライミングクラブや団体",
- "zh_Hant": "攀岩社團或組織",
- "nb_NO": "En klatreklubb eller organisasjoner",
- "fr": "Club ou association d’escalade",
- "it": "Un club o associazione di arrampacata",
- "hu": "Mászóegyesület vagy -szervezet"
- },
- "tagRenderings": [
- {
- "render": {
- "en": "{name}",
- "nl": "{name}",
- "de": "{name}",
- "ca": "{name}",
- "fr": "{name}",
- "id": "{name}",
- "ru": "{name}",
- "ja": "{name}",
- "zh_Hant": "{name}",
- "it": "{name}",
- "hu": "{name}"
- },
- "question": {
- "en": "What is the name of this climbing club or NGO?",
- "de": "Wie lautet der Name dieses Vereins oder Organisation?",
- "nl": "Wat is de naam van deze klimclub?",
- "ja": "この登山クラブやNGOの名前は何ですか?",
- "fr": "Quel est le nom du club ou de l’association ?",
- "it": "Qual è il nome di questo club o associazione di arrampicata?",
- "hu": "Mi a neve ennek a mászóegyesületnek vagy szervezetnek?"
- },
- "freeform": {
- "key": "name"
- },
- "id": "climbing_club-name"
- },
- "website",
- "email",
- "phone",
- "opening_hours"
- ],
- "presets": [
- {
- "tags": [
- "club=sport",
- "sport=climbing"
- ],
- "title": {
- "de": "eine kletterverein",
- "en": "a climbing club",
- "nl": "een klimclub",
- "ja": "クライミングクラブ",
- "nb_NO": "en klatreklubb",
- "ru": "Клуб скалолазания",
- "fr": "une club d’escalade",
- "it": "una club di arrampicata",
- "hu": "Mászóegyesület"
- },
- "description": {
- "de": "Ein Kletterverein",
- "nl": "Een klimclub",
- "en": "A climbing club",
- "ja": "クライミングクラブ",
- "nb_NO": "En klatreklubb",
- "ru": "Клуб скалолазания",
- "fr": "Un club d’escalade",
- "it": "Un club di arrampicata",
- "hu": "Egy mászóegyesület"
- }
- },
- {
- "tags": [
- "office=ngo",
- "sport=climbing"
- ],
- "title": {
- "de": "Eine Kletterorganisation",
- "en": "a climbing ngo",
- "nl": "een een klimorganisatie",
- "ja": "クライミングNGO",
- "fr": "une association d’escalade",
- "it": "una associazione di arrampicata",
- "hu": "Mászószervezet"
- },
- "description": {
- "de": "Eine Organisation, die sich mit dem Klettern beschäftigt",
- "nl": "Een VZW die werkt rond klimmen",
- "en": "An NGO working around climbing",
- "ja": "登山に関わるNGO",
- "fr": "Une association d’escalade",
- "it": "Un’associazione che ha a che fare con l’arrampicata",
- "hu": "Mászással foglalkozó civil szervezet"
- }
- }
- ],
- "mapRendering": [
- {
- "icon": {
- "render": "./assets/themes/climbing/club.svg"
- },
- "iconBadges": [
- {
- "if": "opening_hours~*",
- "then": "isOpen"
- }
- ],
- "iconSize": {
- "render": "40,40,center"
- },
- "location": [
- "point",
- "centroid"
- ],
- "label": {
- "mappings": [
- {
- "if": "name~*",
- "then": "{name}
"
- }
- ]
- }
- }
- ]
- },
- {
- "id": "climbing_gym",
- "name": {
- "de": "Kletterhallen",
- "en": "Climbing gyms",
- "nl": "Klimzalen",
- "ja": "クライミングジム",
- "fr": "Salle d’escalade",
- "it": "Palestre di arrampicata",
- "ru": "Комплексы скалолазания"
- },
- "minzoom": 10,
- "source": {
- "osmTags": {
- "and": [
- "sport=climbing",
- "leisure=sports_centre"
- ]
- }
- },
- "title": {
- "render": {
- "nl": "Klimzaal",
- "de": "Kletterhalle",
- "en": "Climbing gym",
- "ja": "クライミングジム",
- "fr": "Salle d’escalade",
- "it": "Palestra di arrampicata",
- "ru": "Комплекс скалолазания"
- },
- "mappings": [
- {
- "if": "name~*",
- "then": {
- "nl": "Klimzaal {name}",
- "de": "Kletterhalle {name}",
- "en": "Climbing gym {name}",
- "ja": "クライミングジム{name}",
- "fr": "Salle d’escalade {name}",
- "it": "Palestra di arrampicata {name}"
- }
- }
- ]
- },
- "description": {
- "de": "Eine Kletterhalle",
- "en": "A climbing gym",
- "ja": "クライミングジム",
- "nl": "Een klimzaal",
- "fr": "Une salle d’escalade",
- "it": "Una palestra di arrampicata",
- "ru": "Комплекс скалолазания"
- },
- "tagRenderings": [
- "images",
- {
- "render": {
- "en": "{name}",
- "nl": "{name}",
- "de": "{name}",
- "ca": "{name}",
- "fr": "{name}",
- "id": "{name}",
- "ru": "{name}",
- "ja": "{name}",
- "it": "{name}"
- },
- "question": {
- "en": "What is the name of this climbing gym?",
- "nl": "Wat is de naam van dit Klimzaal?",
- "de": "Wie heißt diese Kletterhalle?",
- "ja": "このクライミングジムは何という名前ですか?",
- "fr": "Quel est le nom de la salle d’escalade ?",
- "it": "Qual è il nome di questa palestra di arrampicata?"
- },
- "freeform": {
- "key": "name"
- },
- "id": "name"
- },
- "website",
- "phone",
- "email",
- "opening_hours"
- ],
- "mapRendering": [
- {
- "icon": {
- "render": "./assets/themes/climbing/climbing_gym.svg"
- },
- "iconBadges": [
- {
- "if": "opening_hours~*",
- "then": "isOpen"
- }
- ],
- "iconSize": {
- "render": "40,40,center"
- },
- "location": [
- "point",
- "centroid"
- ],
- "label": {
- "mappings": [
- {
- "if": "name~*",
- "then": "{name}
"
- }
- ]
- }
- }
- ]
- },
- {
- "id": "climbing_route",
- "name": {
- "en": "Climbing routes",
- "de": "Kletterrouten",
- "nl": "Klimroute",
- "ja": "登坂ルート",
- "nb_NO": "Klatreruter",
- "fr": "Voies d’escalade",
- "it": "Vie di arrampicata"
- },
- "minzoom": 18,
- "source": {
- "osmTags": {
- "and": [
- "climbing=route"
- ]
- }
- },
- "title": {
- "render": {
- "de": "Kleterroute",
- "en": "Climbing route",
- "nl": "Klimroute",
- "ja": "登坂ルート",
- "nb_NO": "Klatrerute",
- "it": "Via di arrampicata",
- "fr": "Voie d’escalade"
- },
- "mappings": [
- {
- "if": "name~*",
- "then": {
- "de": "Kleterroute {name}",
- "en": "Climbing route {name}",
- "nl": "Klimroute {name}",
- "ja": "登坂ルート{name}",
- "it": "Via di arrampicata {name}",
- "fr": "Voie d’escalade {name}"
- }
- }
- ]
- },
- "tagRenderings": [
- "images",
- {
- "render": {
- "en": "{name}",
- "nl": "{name}",
- "de": "{name}",
- "ca": "{name}",
- "fr": "{name}",
- "id": "{name}",
- "ru": "{name}",
- "ja": "{name}",
- "it": "{name}",
- "nb_NO": "{name}"
- },
- "question": {
- "en": "What is the name of this climbing route?",
- "de": "Wie heißt diese Kletterroute?",
- "nl": "Hoe heet deze klimroute?",
- "ja": "この登坂ルートの名前は何ですか?",
- "it": "Come si chiama questa via di arrampicata?",
- "fr": "Quel est le nom de cette voie d’escalade ?",
- "nb_NO": "Hva er navnet på denne klatreruten?"
- },
- "freeform": {
- "key": "name"
- },
- "mappings": [
- {
- "if": {
- "and": [
- "noname=yes",
- "name="
- ]
- },
- "then": {
- "en": "This climbing route doesn't have a name",
- "de": "Diese Kletterroute hat keinen Namen",
- "nl": "Deze klimroute heeft geen naam",
- "ja": "この登坂ルートには名前がありません",
- "it": "Questa via di arrampicata non ha un nome",
- "fr": "Cette voie n’a pas de nom",
- "nb_NO": "Denne klatreruten har ikke noe navn"
- }
- }
- ],
- "id": "Name"
- },
- {
- "question": {
- "en": "How long is this climbing route (in meters)?",
- "nl": "Hoe lang is deze klimroute (in meters)?",
- "it": "Quanto è lunga questa via di arrampicata (in metri)?",
- "fr": "Quelle est la longueur de cette voie (en mètres) ?",
- "de": "Wie lang ist diese Kletterroute (in Metern)?",
- "nb_NO": "Hvor mange meter er klatreruten?"
- },
- "render": {
- "de": "Diese Route ist {canonical(climbing:length)} lang",
- "en": "This route is {canonical(climbing:length)} long",
- "nl": "Deze klimroute is {canonical(climbing:length)} lang",
- "ja": "このルート長は、 {canonical(climbing:length)} メーターです",
- "nb_NO": "Denne ruten er {canonical(climbing:length)} lang",
- "it": "Questo percorso è lungo {canonical(climbing:length)}",
- "fr": "Cette voie fait {canonical(climbing:length)} de long"
- },
- "freeform": {
- "key": "climbing:length",
- "type": "pnat"
- },
- "id": "Length"
- },
- {
- "question": {
- "en": "What is the grade of this climbing route according to the french/belgian system?",
- "nl": "Hoe moeilijk is deze klimroute volgens het Franse/Belgische systeem?",
- "it": "Qual è la difficoltà di questa via di arrampicata nel sistema francese/belga?",
- "fr": "Quelle est la difficulté de cette voie selon le système franco-belge ?",
- "de": "Wie hoch ist der Schwierigkeitsgrad dieser Kletterroute nach dem französisch/belgischen System?"
- },
- "render": {
- "de": "Die Schwierigkeit ist {climbing:grade:french} entsprechend des französisch/belgischen Systems",
- "en": "The grade is {climbing:grade:french} according to the french/belgian system",
- "nl": "De klimmoeilijkheid is {climbing:grade:french} volgens het Franse/Belgische systeem",
- "ja": "フランス/ベルギーのランク評価システムによると、{climbing:grade:french}の困難度です",
- "it": "Il grado di difficoltà è {climbing:grade:french} nel sistema francese/belga",
- "fr": "Selon le système franco-belge, la difficulté de cette voie est de {climbing:grade:french}"
- },
- "freeform": {
- "key": "climbing:grade:french"
- },
- "id": "Difficulty"
- },
- {
- "question": {
- "en": "How many bolts does this route have before reaching the anchor?",
- "fr": "Combien de prises cette voie possède avant d’atteindre la moulinette ?",
- "de": "Wie viele Haken gibt es auf dieser Kletterroute bevor der Umlenker bzw. Standhaken erreicht ist?",
- "it": "Quanti bulloni sono presenti in questo percorso prima di arrivare alla moulinette?"
- },
- "render": {
- "en": "This route has {climbing:bolts} bolts",
- "fr": "Cette voie a {climbing:bolts} prises",
- "de": "Diese Kletterroute hat {climbing:bolts} Haken",
- "it": "Questo percorso ha {climbing:bolts} bulloni"
- },
- "freeform": {
- "key": "climbing:bolts",
- "type": "pnat",
- "addExtraTag": [
- "climbing:bolted=yes"
- ]
- },
- "mappings": [
- {
- "if": "climbing:bolted=no",
- "then": {
- "en": "This route is not bolted",
- "fr": "Cette voie n’a pas de prises",
- "de": "Auf dieser Kletterroute sind keine Haken vorhanden",
- "it": "In questo percorso non sono presenti bulloni"
- },
- "hideInAnswer": true
- },
- {
- "if": "climbing:bolted=no&climbing:bolts=",
- "then": {
- "en": "This route is not bolted",
- "fr": "Cette voie n’a pas de prises",
- "de": "Auf dieser Kletterroute sind keine Haken vorhanden",
- "it": "In questo percorso non sono presenti bulloni"
- }
- }
- ],
- "id": "Bolts"
- },
- {
- "question": "Is there other relevant info?",
- "render": "Description
{description}",
- "freeform": {
- "key": "description"
- },
- "id": "Description"
- },
- {
- "render": {
- "en": "The rock type is {_embedding_features_with_rock:rock} as stated on the surrounding crag",
- "fr": "Le type de roche est {_embedding_features_with_rock:rock} selon le mur",
- "it": "Il tipo di roccia è {_embedding_features_with_rock:rock} come dichiarato sul muro circostante",
- "de": "Der Gesteinstyp ist {_embedding_features_with_rock:rock}, wie auf dem umgebenden Felsen angegeben"
- },
- "freeform": {
- "key": "_embedding_features_with_rock:rock"
- },
- "id": "Rock type"
- }
- ],
- "presets": [
- {
- "title": {
- "en": "a climbing route",
- "nl": "een klimroute",
- "fr": "une voie d’escalade",
- "de": "eine kletterroute",
- "it": "una via di arrampicata"
- },
- "tags": [
- "sport=climbing",
- "climbing=route"
- ]
- }
- ],
- "mapRendering": [
- {
- "icon": {
- "render": "circle:white;./assets/themes/climbing/climbing_route.svg"
- },
- "iconSize": {
- "render": "28,28,center"
- },
- "location": [
- "point",
- "centroid"
- ],
- "label": {
- "mappings": [
- {
- "if": "name~*",
- "then": "{name}
"
- }
- ]
- }
- },
- {
- "color": {
- "render": "#0f0"
- },
- "width": {
- "render": "4"
- }
- }
- ]
- },
- {
- "id": "climbing",
- "name": {
- "nl": "Klimgelegenheden",
- "de": "Klettermöglichkeiten",
- "en": "Climbing opportunities",
- "ja": "登坂教室",
- "fr": "Opportunité d’escalade",
- "it": "Opportunità di arrampicata"
- },
- "minzoom": 10,
- "source": {
- "osmTags": {
- "and": [
- "sport=climbing",
- "climbing!~route",
- "leisure!~sports_centre",
- "climbing!=route_top",
- "climbing!=route_bottom"
- ]
- }
- },
- "title": {
- "render": {
- "en": "Climbing opportunity",
- "nl": "Klimgelegenheid",
- "de": "Klettermöglichkeit",
- "ja": "登坂教室",
- "nb_NO": "Klatremulighet",
- "fr": "Opportunité d’escalade",
- "it": "Opportunità di arrampicata"
- },
- "mappings": [
- {
- "if": "climbing=crag",
- "then": {
- "en": "Climbing crag {name}",
- "fr": "Mur d’escalade {name}",
- "it": "Muro da arrampicata {name}",
- "de": "Klettergarten {name}"
- }
- },
- {
- "if": {
- "and": [
- {
- "or": [
- "climbing=area",
- "climbing=site"
- ]
- },
- "name~*"
- ]
- },
- "then": {
- "en": "Climbing area {name}",
- "nl": "Klimsite {name}",
- "fr": "Zone d’escalade {name}",
- "de": "Klettergebiet {name}",
- "it": "Area di arrampicata {name}"
- }
- },
- {
- "if": {
- "or": [
- "climbing=site",
- "climbing=area"
- ]
- },
- "then": {
- "en": "Climbing site",
- "nl": "Klimsite",
- "fr": "Site d’escalade",
- "de": "Klettergebiet",
- "it": "Sito di arrampicata",
- "ca": "Llocs d'escalada"
- }
- },
- {
- "if": "name~*",
- "then": {
- "nl": "Klimgelegenheid {name}",
- "en": "Climbing opportunity {name}",
- "fr": "Opportunité d’escalade {name}",
- "de": "Klettermöglichkeit {name}",
- "it": "Opportunità di arrampicata {name}"
- }
- }
- ]
- },
- "description": {
- "nl": "Een klimgelegenheid",
- "de": "Eine Klettergelegenheit",
- "en": "A climbing opportunity",
- "ja": "登坂教室",
- "nb_NO": "En klatremulighet",
- "fr": "Opportunité d’escalade",
- "it": "Un’opportunità di arrampicata"
- },
- "tagRenderings": [
- "images",
- {
- "id": "minimap",
- "render": "{minimap(18, id, _contained_climbing_route_ids): height: 9rem; overflow: hidden; border-radius:3rem; }"
- },
- {
- "render": {
- "en": "Length overview
{histogram(_length_hist)}",
- "fr": "Résumé de longueur
{histogram(_length_hist)}",
- "de": "Längenübersicht
{histogram(_length_hist)}",
- "it": "Riassunto della lunghezza
{histogram(_length_hist)}"
- },
- "condition": "_length_hist!~\\[\\]",
- "id": "Contained routes length hist"
- },
- {
- "render": {
- "en": "Grades overview
{histogram(_difficulty_hist)}",
- "fr": "Résumé des difficultés
{histogram(_difficulty_hist)}",
- "de": "Schwierigkeitsübersicht
{histogram(_difficulty_hist)}",
- "it": "Riassunto delle difficoltà
{histogram(_difficulty_hist)}"
- },
- "condition": "_difficulty_hist!~\\[\\]",
- "id": "Contained routes hist"
- },
- {
- "render": {
- "en": "Contains {_contained_climbing_routes_count} routes
{_contained_climbing_routes}
",
- "fr": "Contient {_contained_climbing_routes_count} voies
{_contained_climbing_routes}
",
- "it": "Contiene {_contained_climbing_routes_count} vie
{_contained_climbing_routes}
",
- "de": " Enthält {_contained_climbing_routes_count} Routen
{_contained_climbing_routes}
"
- },
- "condition": "_contained_climbing_routes~*",
- "id": "Contained_climbing_routes"
- },
- {
- "render": {
- "en": "{name}",
- "nl": "{name}",
- "de": "{name}",
- "ca": "{name}",
- "fr": "{name}",
- "id": "{name}",
- "ru": "{name}",
- "ja": "{name}",
- "it": "{name}"
- },
- "question": {
- "en": "What is the name of this climbing opportunity?",
- "nl": "Wat is de naam van dit Klimgelegenheid?",
- "de": "Wie heißt diese Klettergelegenheit?",
- "ja": "この登坂教室の名前は何ですか?",
- "fr": "Quel est le nom de ce site ?",
- "it": "Qual è il nome di questa opportunità di arrampicata?"
- },
- "freeform": {
- "key": "name"
- },
- "mappings": [
- {
- "if": {
- "and": [
- "noname=yes",
- "name="
- ]
- },
- "then": {
- "en": "This climbing opportunity doesn't have a name",
- "nl": "Dit Klimgelegenheid heeft geen naam",
- "de": "Diese Klettergelegenheit hat keinen Namen",
- "ja": "この登坂教室には名前がついていない",
- "fr": "Ce site n’a pas de nom",
- "it": "Questa opportunità di arrampicata non ha un nome"
- }
- }
- ],
- "id": "name"
- },
- {
- "question": "What kind of climbing opportunity is this?",
- "mappings": [
- {
- "if": "climbing=boulder",
- "then": {
- "en": "A climbing boulder - a single rock or cliff with one or a few climbing routes which can be climbed safely without rope",
- "fr": "Rocher d’escalade, rocher avec une ou peu de voie permettant d’escalader sans corde",
- "de": "Ein Kletterfelsen - ein einzelner Felsen oder eine Klippe mit einer oder wenigen Kletterrouten, die ohne Seil sicher bestiegen werden können",
- "it": "Un masso per arrampicata (una singola roccia o falesia con una o poche vie di arrampicata che possono essere scalate in sicurezza senza una corda)"
- }
- },
- {
- "if": "climbing=crag",
- "then": {
- "en": "A climbing crag - a single rock or cliff with at least a few climbing routes",
- "fr": "Mur d’escalade, rocher avec plusieurs voies d’escalades",
- "it": "Un muro da arrampicata (un singolo masso o falesia con almeno qualche via per arrampicata)",
- "de": "Ein Kletterfelsen - ein einzelner Fels oder eine Klippe mit mindestens einigen Kletterrouten"
- }
- },
- {
- "if": "climbing=area",
- "then": "A climbing area with one or more climbing crags and/or boulders"
- }
- ],
- "id": "Type"
- },
- {
- "question": {
- "en": "What is the rock type here?",
- "fr": "Quel est le type de roche ?",
- "de": "Welchen Gesteinstyp gibt es hier?",
- "it": "Qual è il tipo di roccia qua?"
- },
- "render": {
- "en": "The rock type is {rock}",
- "fr": "La roche est du {rock}",
- "de": "Der Gesteinstyp ist {rock}",
- "it": "Il tipo di roccia è {rock}"
- },
- "freeform": {
- "key": "rock"
- },
- "mappings": [
- {
- "if": "rock=limestone",
- "then": {
- "en": "Limestone",
- "nl": "Kalksteen",
- "fr": "Calcaire",
- "de": "Kalkstein",
- "it": "Calcare"
- }
- }
- ],
- "condition": {
- "or": [
- "climbing=crag",
- "natural=cliff",
- "natural=bare_rock"
- ]
- },
- "id": "Rock type (crag/rock/cliff only)"
- }
- ],
- "presets": [
- {
- "tags": [
- "sport=climbing"
- ],
- "title": {
- "en": "a climbing opportunity",
- "nl": "een klimgelegenheid",
- "de": "eine klettermöglichkeit",
- "ja": "登坂教室",
- "nb_NO": "en klatremulighet",
- "fr": "une opportunité d’escalade",
- "it": "una opportunità di arrampicata"
- },
- "description": {
- "nl": "Een klimgelegenheid",
- "de": "Eine Klettergelegenheit",
- "en": "A climbing opportunity",
- "ja": "登坂教室",
- "nb_NO": "En klatremulighet",
- "fr": "Opportunité d’escalade",
- "it": "Un’opportunità di arrampicata"
- }
- }
- ],
- "calculatedTags": [
- "_contained_climbing_routes_properties=feat.overlapWith('climbing_route').map(f => f.feat.properties).map(p => {return {id: p.id, name: p.name, 'climbing:grade:french': p['climbing:grade:french'], 'climbing:length': p['climbing:length']} })",
- "_contained_climbing_routes=JSON.parse(feat.properties._contained_climbing_routes_properties ?? '[]').map(p => `${p.name ?? 'climbing route'} (${p['climbing:grade:french'] ?? 'unknown difficulty'}, ${p['climbing:length'] ?? 'unkown length'} meter)`).join('')",
- "_contained_climbing_route_ids=JSON.parse(feat.properties._contained_climbing_routes_properties ?? '[]').map(p => p.id)",
- "_difficulty_hist=JSON.parse(feat.properties._contained_climbing_routes_properties ?? '[]').map(p => p['climbing:grade:french'])",
- "_length_hist=JSON.parse(feat.properties._contained_climbing_routes_properties ?? '[]').map(p => p['climbing:length'])",
- "_contained_climbing_routes_count=JSON.parse(feat.properties._contained_climbing_routes_properties ?? '[]').length"
- ],
- "mapRendering": [
- {
- "icon": {
- "render": "./assets/themes/climbing/climbing_no_rope.svg"
- },
- "iconSize": {
- "render": "40,40,center"
- },
- "location": [
- "point",
- "centroid"
- ]
- },
- {
- "color": {
- "render": "#d38d5fAA"
- },
- "width": {
- "render": "8"
- }
- }
- ]
- },
- {
- "id": "maybe_climbing",
- "name": {
- "nl": "Klimgelegenheiden?",
- "de": "Klettermöglichkeiten?",
- "en": "Climbing opportunities?",
- "ja": "登坂教室?",
- "nb_NO": "Klatremuligheter?",
- "fr": "Opportunités d’escalade ?",
- "it": "Opportunità di arrampicata?"
- },
- "minzoom": 19,
- "source": {
- "osmTags": {
- "and": [
- {
- "or": [
- "leisure=sports_centre",
- "barrier=wall",
- "barrier=retaining_wall",
- "natural=cliff",
- "natural=rock",
- "natural=stone"
- ]
- },
- "climbing="
- ]
- }
- },
- "title": {
- "render": {
- "en": "Climbing opportunity?",
- "nl": "Klimgelegenheid?",
- "de": "Klettermöglichkeit?",
- "ja": "登坂教室?",
- "nb_NO": "Klatremulighet?",
- "fr": "Opportunité d’escalade ?",
- "it": "Opportunità di arrampicata?"
- }
- },
- "description": {
- "nl": "Een klimgelegenheid?",
- "de": "Eine Klettergelegenheit?",
- "en": "A climbing opportunity?",
- "ja": "登坂教室?",
- "nb_NO": "En klatremulighet?",
- "fr": "Opportunité d’escalade ?",
- "it": "Un’opportunità di arrampicata?"
- },
- "tagRenderings": [
- {
- "id": "climbing-opportunity-name",
- "render": {
- "en": "{name}",
- "de": "{name}",
- "ca": "{name}",
- "fr": "{name}",
- "id": "{name}",
- "ru": "{name}",
- "ja": "{name}",
- "nl": "{name}",
- "it": "{name}"
- },
- "condition": "name~*"
- },
- {
- "id": "climbing-possible",
- "question": {
- "en": "Is climbing possible here?",
- "de": "Kann hier geklettert werden?",
- "ja": "ここで登坂はできますか?",
- "nb_NO": "Er klatring mulig her?",
- "fr": "Est-il possible d’escalader ici ?",
- "it": "È possibile arrampicarsi qua?"
- },
- "mappings": [
- {
- "if": {
- "and": [
- "sport=climbing"
- ]
- },
- "then": {
- "en": "Climbing is possible here",
- "de": "Hier kann geklettert werden",
- "ja": "ここでは登ることができる",
- "nb_NO": "Klatring er mulig her",
- "nl": "Klimmen is hier niet toegelaten",
- "fr": "Escalader est possible",
- "it": "È possibile arrampicarsi qua"
- }
- },
- {
- "if": "climbing=no",
- "then": {
- "en": "Climbing is not possible here",
- "de": "Hier kann nicht geklettert werden",
- "ja": "ここでは登ることができない",
- "nb_NO": "Klatring er ikke mulig her",
- "nl": "Klimmen is hier niet toegelaten",
- "fr": "Escalader n’est pas possible",
- "it": "Non è possibile arrampicarsi qua"
- }
- },
- {
- "if": {
- "and": [
- "sport!~climbing"
- ]
- },
- "then": {
- "en": "Climbing is not possible here",
- "de": "Hier kann nicht geklettert werden",
- "ja": "ここでは登ることができない",
- "nb_NO": "Klatring er ikke mulig her",
- "nl": "Klimmen is hier niet mogelijk",
- "fr": "Escalader n’est pas possible",
- "it": "Non è possibile arrampicarsi qua"
- },
- "hideInAnswer": true
- }
- ]
- }
- ],
- "mapRendering": [
- {
- "icon": "./assets/themes/climbing/climbing_unknown.svg",
- "location": [
- "point",
- "centroid"
- ]
- },
- {
- "color": {
- "render": "#ddff55AA"
- },
- "width": {
- "render": "2"
- }
- }
- ]
- }
+ "climbing_club",
+ "climbing_gym",
+ "climbing_route",
+ "climbing",
+ "climbing_opportunity"
],
"overrideAll": {
"allowMove": {
diff --git a/assets/themes/hackerspaces/hackerspaces.json b/assets/themes/hackerspaces/hackerspaces.json
index f5099cbae..0bc66064f 100644
--- a/assets/themes/hackerspaces/hackerspaces.json
+++ b/assets/themes/hackerspaces/hackerspaces.json
@@ -31,263 +31,6 @@
"startZoom": 1,
"widenFactor": 5,
"layers": [
- {
- "id": "hackerspaces",
- "name": {
- "en": "Hackerspace",
- "de": "Hackerspaces",
- "ru": "Хакерспейс",
- "zh_Hant": "駭客空間",
- "hu": "Hackerspace"
- },
- "minzoom": 8,
- "title": {
- "render": {
- "en": "Hackerspace",
- "de": "Hackerspace",
- "ru": "Хакерспейс",
- "zh_Hant": "駭客空間",
- "hu": "Hackerspace"
- },
- "mappings": [
- {
- "if": {
- "and": [
- "name~*"
- ]
- },
- "then": {
- "en": " {name}",
- "de": " {name}",
- "ru": " {name}",
- "zh_Hant": " {name}",
- "hu": " {name}",
- "ca": " {name}"
- }
- }
- ]
- },
- "description": {
- "en": "Hackerspace",
- "de": "Hackerspace",
- "ru": "Хакерспейс",
- "zh_Hant": "駭客空間",
- "hu": "Hackerspace"
- },
- "tagRenderings": [
- {
- "id": "is_makerspace",
- "question": {
- "en": "Is this a hackerspace or a makerspace?",
- "de": "Ist dies ein Hackerspace oder ein Makerspace?",
- "zh_Hant": "這邊是駭客空間還是創客空間?",
- "hu": "Ez hackerspace vagy makerspace?"
- },
- "mappings": [
- {
- "if": "hackerspace=makerspace",
- "then": {
- "en": "This is a makerspace",
- "de": "Dies ist ein Makerspace",
- "zh_Hant": "這是創客空間",
- "hu": "Ez egy makerspace"
- }
- },
- {
- "if": "hackerspace=",
- "then": {
- "en": "This is a traditional (software oriented) hackerspace",
- "de": "Dies ist ein traditioneller (softwareorientierter) Hackerspace",
- "zh_Hant": "這是傳統的 (軟體導向) 駭客空間",
- "hu": "Ez egy hagyományos (szoftverekkel foglalkozó) hackerspace"
- }
- }
- ]
- },
- {
- "question": {
- "en": "What is the name of this hackerspace?",
- "de": "Wie lautet der Name dieses Hackerspace?",
- "zh_Hant": "這個駭客空間的名稱是?"
- },
- "render": {
- "en": "This hackerspace is named {name}",
- "de": "Dieser Hackerspace heißt {name}",
- "zh_Hant": "這個駭客空間叫 {name}"
- },
- "freeform": {
- "key": "name"
- },
- "id": "hackerspaces-name"
- },
- "website",
- "email",
- "phone",
- {
- "question": {
- "en": "When is this hackerspace opened?",
- "de": "Wann hat dieser Hackerspace geöffnet?",
- "zh_Hant": "這個駭客空間的營業時間?"
- },
- "freeform": {
- "key": "opening_hours",
- "type": "opening_hours"
- },
- "render": {
- "en": "{opening_hours_table()}",
- "de": "{opening_hours_table()}",
- "ru": "{opening_hours_table()}",
- "zh_Hant": "{opening_hours_table()}",
- "ca": "{opening_hours_table()}"
- },
- "mappings": [
- {
- "if": {
- "and": [
- "opening_hours=24/7"
- ]
- },
- "then": {
- "en": "Opened 24/7",
- "de": "durchgehend geöffnet",
- "ru": "Открыто 24/7",
- "zh_Hant": "24/7 營業",
- "ca": "Obert 24/7"
- }
- }
- ],
- "id": "hackerspaces-opening_hours"
- },
- "wheelchair-access",
- {
- "id": "hs-club-mate",
- "question": {
- "en": "Does this hackerspace serve Club Mate?",
- "de": "Gibt es in diesem Hackerspace Club Mate?",
- "zh_Hant": "這個駭客空間是否服務俱樂部伙伴?"
- },
- "mappings": [
- {
- "if": {
- "and": [
- "drink:club-mate=yes"
- ]
- },
- "then": {
- "en": "This hackerspace serves club mate",
- "de": "In diesem Hackerspace gibt es Club Mate",
- "zh_Hant": "這個駭客空間服務俱樂部伙伴"
- }
- },
- {
- "if": {
- "and": [
- "drink:club-mate=no"
- ]
- },
- "then": {
- "en": "This hackerspace does not serve club mate",
- "de": "In diesem Hackerspace gibt es kein Club Mate",
- "zh_Hant": "這個駭客空間沒有服務俱樂部伙伴"
- }
- }
- ]
- },
- {
- "render": {
- "en": "This hackerspace was founded at {start_date}",
- "de": "Dieser Hackerspace wurde gegründet am {start_date}",
- "zh_Hant": "這駭客空間是 {start_date} 成立的"
- },
- "question": {
- "en": "When was this hackerspace founded?",
- "de": "Wann wurde dieser Hackerspace gegründet?",
- "zh_Hant": "這個駭客空間何時成立的?"
- },
- "freeform": {
- "key": "start_date",
- "type": "date"
- },
- "id": "hackerspaces-start_date"
- }
- ],
- "presets": [
- {
- "tags": [
- "leisure=hackerspace"
- ],
- "title": {
- "en": "a hackerspace",
- "de": "eine hackerspace",
- "ru": "Хакерспейс",
- "zh_Hant": "駭客空間",
- "hu": "Hackerspace"
- },
- "description": {
- "en": "A hackerspace is an area where people interested in software gather",
- "de": "Ein Hackerspace ist ein Ort, an dem sich Menschen treffen, die sich für Software interessieren",
- "zh_Hant": "駭客空間是對軟體有興趣的人聚集的地方",
- "hu": "A hackerspace egy olyan hely, ahol szoftverek iránt érdeklő emberek találkoznak"
- }
- },
- {
- "tags": [
- "leisure=hackerspace",
- "hackerspace=makerspace"
- ],
- "title": {
- "en": "a makerspace",
- "de": "eine makerspace",
- "zh_Hant": "創客空間",
- "hu": "Makerspace"
- },
- "description": {
- "en": "A makerspace is a place where DIY-enthusiasts gather to experiment with electronics such as arduino, LEDstrips, ...",
- "de": "Ein Makerspace ist ein Ort, an dem Heimwerker-Enthusiasten zusammenkommen, um mit Elektronik zu experimentieren, wie Arduino, LED-Strips, ...",
- "zh_Hant": "創客空間是 DIY 愛好者聚集在一起弄電子零件實驗,例如用 arduino、LEDstrips 等...",
- "hu": "A makerspace olyan hely, ahol a barkácsolás szerelmesei találkoznak, hogy olyan elektronikai eszközökkel kísérletezzenek, mint például az Arduino vagy a LEDstrips."
- }
- }
- ],
- "source": {
- "osmTags": {
- "and": [
- "leisure=hackerspace"
- ]
- }
- },
- "mapRendering": [
- {
- "icon": {
- "render": "./assets/themes/hackerspaces/glider.svg",
- "mappings": [
- {
- "if": {
- "and": [
- "hackerspace=makerspace"
- ]
- },
- "then": "./assets/themes/hackerspaces/led.png"
- }
- ]
- },
- "iconSize": {
- "render": "40,40,center"
- },
- "location": [
- "point",
- "centroid"
- ]
- },
- {
- "color": {
- "render": "#00f"
- },
- "width": {
- "render": "8"
- }
- }
- ]
- }
+ "hackerspace"
]
}
\ No newline at end of file
diff --git a/assets/themes/openwindpowermap/openwindpowermap.json b/assets/themes/openwindpowermap/openwindpowermap.json
index ae44e3ac8..f19f16b18 100644
--- a/assets/themes/openwindpowermap/openwindpowermap.json
+++ b/assets/themes/openwindpowermap/openwindpowermap.json
@@ -30,325 +30,7 @@
"maxZoom": 8
},
"layers": [
- {
- "id": "windturbine",
- "name": {
- "en": "wind turbine",
- "nl": "windturbine",
- "fr": "Éolienne",
- "de": "Windräder",
- "it": "pala eolica",
- "zh_Hant": "風機",
- "hu": "Szélerőmű"
- },
- "source": {
- "osmTags": "generator:source=wind"
- },
- "minzoom": 10,
- "title": {
- "render": {
- "en": "wind turbine",
- "nl": "windturbine",
- "fr": "éolienne",
- "de": "Windrad",
- "it": "pala eolica",
- "zh_Hant": "風機",
- "id": "turbin angin",
- "hu": "szélerőmű"
- },
- "mappings": [
- {
- "if": "name~*",
- "then": {
- "en": "{name}",
- "fr": "{name}",
- "eo": "{name}",
- "it": "{name}",
- "ru": "{name}",
- "zh_Hant": "{name}",
- "id": "{name}",
- "de": "{name}",
- "ca": "{name}"
- }
- }
- ]
- },
- "tagRenderings": [
- {
- "id": "turbine-output",
- "render": {
- "en": "The power output of this wind turbine is {generator:output:electricity}.",
- "fr": "La puissance générée par cette éolienne est de {generator:output:electricity}.",
- "it": "La potenza generata da questa pala eolica è {generator:output:electricity}.",
- "zh_Hant": "這個風機的電力輸出是 {generator:output:electricity}。",
- "id": "Output daya dari turbin angin ini adalah {generator:output:electricity}.",
- "hu": "A szélerőmű teljesítménye: {generator:output:electricity}.",
- "de": "Das Windrad erzeugt {generator:output:electricity} Strom."
- },
- "question": {
- "en": "What is the power output of this wind turbine? (e.g. 2.3 MW)",
- "fr": "Quel est la puissance générée par cette éolienne ?",
- "it": "Quant’è la potenza generata da questa pala eolica? (ad es. 2.3 MW)",
- "zh_Hant": "這個風機的電力輸出是多少?(例如 2.3 MW)",
- "id": "Berapa output daya dari turbin angin ini? (misalnya 2,3 MW)",
- "hu": "Mekkora a teljesítménye ennek a szélturbinának? (pl. 2.3 MW)",
- "de": "Wieviel Strom erzeugt das Windrad? (z.B. 2.3MW)"
- },
- "freeform": {
- "key": "generator:output:electricity",
- "type": "pfloat"
- }
- },
- {
- "id": "turbine-operator",
- "render": {
- "en": "This wind turbine is operated by {operator}.",
- "fr": "Cette éolienne est opérée par {operator}.",
- "it": "Questa pala eolica è gestita da {operator}.",
- "zh_Hant": "這個風機營業商是 {operator}。",
- "id": "Turbin angin ini dioperasikan oleh {operator}.",
- "hu": "Ennek a szélerőműnek az üzemeltetője: {operator}.",
- "de": "Die Windturbine wird betrieben von {operator}."
- },
- "question": {
- "en": "Who operates this wind turbine?",
- "fr": "Qui est l’exploitant de cette éolienne ?",
- "it": "Chi gestisce questa pala eolica?",
- "zh_Hant": "這個風機營業商是?",
- "hu": "Ki üzemelteti ezt a szélturbinát?",
- "de": "Wer betreibt das Windrads?"
- },
- "freeform": {
- "key": "operator"
- }
- },
- {
- "id": "turbine-height",
- "render": {
- "en": "The total height (including rotor radius) of this wind turbine is {height} metres.",
- "fr": "La hauteur totale, incluant les pales, est de {height} mètres.",
- "it": "L’altezza totale (raggio del rotore incluso) di questa pala eolica è di {height} metri.",
- "zh_Hant": "這風機的總高度 (包括風葉直徑) 是 {height} 公尺。",
- "hu": "A szélerőmű teljes (rotor sugarával együtt számított) magassága: {height} méter.",
- "de": "Die Gesamthöhe dieses Windrads beträgt (einschließlich Rotorradius) {height} Meter."
- },
- "question": {
- "en": "What is the total height of this wind turbine (including rotor radius), in metres?",
- "fr": "Quelle est la hauteur totale de l’éolienne en mètres, pales incluses ?",
- "it": "Qual è l’altezza (in metri e raggio del rotore incluso) di questa pala eolica?",
- "zh_Hant": "這個風機的總高度是多少 (包括風葉大小) 公尺?",
- "hu": "Hány méter a szélerőmű teljes magassága (a rotor sugarával együtt)?",
- "de": "Wie hoch ist dieses Windrad (inklusive Rotorradius) in Metern?"
- },
- "freeform": {
- "key": "height",
- "type": "pfloat"
- }
- },
- {
- "id": "turbine-diameter",
- "render": {
- "en": "The rotor diameter of this wind turbine is {rotor:diameter} metres.",
- "fr": "Le diamètre du rotor est de {rotor:diameter} mètres.",
- "it": "Il diametro del rotore di questa pala eolica è di {rotor:diameter} metri.",
- "zh_Hant": "這個風力渦輪機的風葉直徑是 {rotor:diameter} 公尺。",
- "hu": "A szélturbina rotorátmérője: {rotor:diameter} méter.",
- "de": "Der Rotordurchmesser der Windturbine ist {rotor:diameter} Meter."
- },
- "question": {
- "en": "What is the rotor diameter of this wind turbine, in metres?",
- "fr": "Quel est le diamètre du rotor en mètres ?",
- "it": "Qual è il diametro (in metri) del rotore di questa pala eolica?",
- "zh_Hant": "這個風力渦輪機的風葉直徑是多少公尺?",
- "hu": "Hány méter a rotorátmérője ennek a szélturbinának?",
- "de": "Wie groß ist der Rotordurchmesser der Windturbine in Meter?"
- },
- "freeform": {
- "key": "rotor:diameter",
- "type": "float"
- }
- },
- {
- "id": "turbine-start-date",
- "render": {
- "en": "This wind turbine went into operation on/in {start_date}.",
- "fr": "L’éolienne est active depuis {start_date}.",
- "it": "Questa pala eolica è entrata in funzione in data {start_date}.",
- "zh_Hant": "這個風機從 {start_date} 開始運轉。",
- "id": "Turbin angin ini mulai beroperasi pada/dalam {start_date}.",
- "hu": "A szélerőmű üzembe helyezése: {start_date}.",
- "de": "Das Windrad wurde am {start_date} in Betrieb genommen."
- },
- "question": {
- "en": "When did this wind turbine go into operation?",
- "fr": "Depuis quand l’éolienne est-elle en fonctionnement ?",
- "it": "Quando è entrata in funzione questa pala eolica?",
- "zh_Hant": "這個風機何時開始營運?",
- "id": "Kapan turbin angin ini mulai beroperasi?",
- "hu": "Mikor helyezték üzembe ezt a szélerőművet?",
- "de": "Wann wurde das Windrad in Betrieb genommen?"
- },
- "freeform": {
- "key": "start_date",
- "type": "date"
- }
- },
- "images"
- ],
- "presets": [
- {
- "tags": [
- "power=generator",
- "generator:source=wind"
- ],
- "title": {
- "en": "a wind turbine",
- "nl": "een windturbine",
- "fr": "une éolienne",
- "de": "ein Windrad",
- "it": "una pala eolica",
- "zh_Hant": "風機",
- "hu": "Szélerőmű"
- }
- }
- ],
- "units": [
- {
- "appliesToKey": [
- "generator:output:electricity"
- ],
- "applicableUnits": [
- {
- "canonicalDenomination": "MW",
- "alternativeDenomination": [
- "megawatts",
- "megawatt"
- ],
- "human": {
- "en": " megawatts",
- "nl": " megawatt",
- "fr": " megawatts",
- "de": " Megawatt",
- "eo": " megavatoj",
- "it": " megawatt",
- "ru": " мегаватт",
- "zh_Hant": " 百萬瓦",
- "id": " megawat",
- "hu": " megawatt",
- "ca": " megavats"
- }
- },
- {
- "canonicalDenomination": "kW",
- "alternativeDenomination": [
- "kilowatts",
- "kilowatt"
- ],
- "human": {
- "en": " kilowatts",
- "nl": " kilowatt",
- "fr": " kilowatts",
- "de": " Kilowatt",
- "eo": " kilovatoj",
- "it": " kilowatt",
- "nb_NO": " kilowatt",
- "ru": " киловатт",
- "zh_Hant": " 千瓦",
- "id": " kilowat",
- "hu": " kilowatt",
- "ca": " quilovats"
- }
- },
- {
- "canonicalDenomination": "W",
- "alternativeDenomination": [
- "watts",
- "watt"
- ],
- "human": {
- "en": " watts",
- "nl": " watt",
- "fr": " watts",
- "de": " Watt",
- "eo": " vatoj",
- "it": " watt",
- "ru": " ватт",
- "zh_Hant": " 瓦",
- "id": " watt",
- "hu": " watt",
- "ca": " vats"
- }
- },
- {
- "canonicalDenomination": "GW",
- "alternativeDenomination": [
- "gigawatts",
- "gigawatt"
- ],
- "human": {
- "en": " gigawatts",
- "nl": " gigawatt",
- "fr": " gigawatts",
- "de": " Gigawatt",
- "eo": " gigavatoj",
- "it": " gigawatt",
- "ru": " гигаватт",
- "zh_Hant": " 千兆瓦",
- "id": " gigawatt",
- "hu": " gigawatt",
- "ca": " gigavats"
- }
- }
- ],
- "eraseInvalidValues": true
- },
- {
- "appliesToKey": [
- "height",
- "rotor:diameter"
- ],
- "applicableUnits": [
- {
- "canonicalDenomination": "m",
- "alternativeDenomination": [
- "meter"
- ],
- "human": {
- "en": " meter",
- "nl": " meter",
- "fr": " mètres",
- "de": " Meter",
- "eo": " metro",
- "it": " metri",
- "ru": " метр",
- "zh_Hant": " 公尺",
- "id": " meter",
- "hu": " méter",
- "ca": " metre"
- }
- }
- ]
- }
- ],
- "mapRendering": [
- {
- "icon": "./assets/themes/openwindpowermap/wind_turbine.svg",
- "label": {
- "mappings": [
- {
- "if": "generator:output:electricity~^[0-9]+.*[W]$",
- "then": "{generator:output:electricity}
"
- }
- ]
- },
- "iconSize": "40, 40, bottom",
- "location": [
- "point",
- "centroid"
- ]
- }
- ]
- }
+ "windturbine"
],
"defaultBackgroundId": "CartoDB.Voyager"
}
\ No newline at end of file
diff --git a/langs/layers/ca.json b/langs/layers/ca.json
index fcb856805..15daa3a58 100644
--- a/langs/layers/ca.json
+++ b/langs/layers/ca.json
@@ -420,6 +420,48 @@
}
}
},
+ "climbing": {
+ "tagRenderings": {
+ "name": {
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "2": {
+ "then": "Llocs d'escalada"
+ }
+ }
+ }
+ },
+ "climbing_club": {
+ "tagRenderings": {
+ "climbing_club-name": {
+ "render": "{name}"
+ }
+ }
+ },
+ "climbing_gym": {
+ "tagRenderings": {
+ "name": {
+ "render": "{name}"
+ }
+ }
+ },
+ "climbing_opportunity": {
+ "tagRenderings": {
+ "climbing-opportunity-name": {
+ "render": "{name}"
+ }
+ }
+ },
+ "climbing_route": {
+ "tagRenderings": {
+ "Name": {
+ "render": "{name}"
+ }
+ }
+ },
"crossings": {
"name": "Encreuaments",
"presets": {
@@ -624,6 +666,25 @@
"render": "Bicicleta blanca"
}
},
+ "hackerspace": {
+ "tagRenderings": {
+ "hackerspaces-opening_hours": {
+ "mappings": {
+ "0": {
+ "then": "Obert 24/7"
+ }
+ },
+ "render": "{opening_hours_table()}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": " {name}"
+ }
+ }
+ }
+ },
"hydrant": {
"title": {
"render": "Hidrant"
@@ -863,5 +924,39 @@
},
"watermill": {
"name": "Molí d'aigua"
+ },
+ "windturbine": {
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "{name}"
+ }
+ }
+ },
+ "units": {
+ "0": {
+ "applicableUnits": {
+ "0": {
+ "human": " megavats"
+ },
+ "1": {
+ "human": " quilovats"
+ },
+ "2": {
+ "human": " vats"
+ },
+ "3": {
+ "human": " gigavats"
+ }
+ }
+ },
+ "1": {
+ "applicableUnits": {
+ "0": {
+ "human": " metre"
+ }
+ }
+ }
+ }
}
}
\ No newline at end of file
diff --git a/langs/layers/de.json b/langs/layers/de.json
index ef26fe98b..172d00545 100644
--- a/langs/layers/de.json
+++ b/langs/layers/de.json
@@ -1394,6 +1394,194 @@
}
}
},
+ "climbing": {
+ "description": "Eine Klettergelegenheit",
+ "name": "Klettermöglichkeiten",
+ "presets": {
+ "0": {
+ "description": "Eine Klettergelegenheit",
+ "title": "eine klettermöglichkeit"
+ }
+ },
+ "tagRenderings": {
+ "Contained routes hist": {
+ "render": "Schwierigkeitsübersicht
{histogram(_difficulty_hist)}"
+ },
+ "Contained routes length hist": {
+ "render": "Längenübersicht
{histogram(_length_hist)}"
+ },
+ "Contained_climbing_routes": {
+ "render": " Enthält {_contained_climbing_routes_count} Routen
{_contained_climbing_routes}
"
+ },
+ "Rock type (crag/rock/cliff only)": {
+ "mappings": {
+ "0": {
+ "then": "Kalkstein"
+ }
+ },
+ "question": "Welchen Gesteinstyp gibt es hier?",
+ "render": "Der Gesteinstyp ist {rock}"
+ },
+ "Type": {
+ "mappings": {
+ "0": {
+ "then": "Ein Kletterfelsen - ein einzelner Felsen oder eine Klippe mit einer oder wenigen Kletterrouten, die ohne Seil sicher bestiegen werden können"
+ },
+ "1": {
+ "then": "Ein Kletterfelsen - ein einzelner Fels oder eine Klippe mit mindestens einigen Kletterrouten"
+ }
+ }
+ },
+ "name": {
+ "mappings": {
+ "0": {
+ "then": "Diese Klettergelegenheit hat keinen Namen"
+ }
+ },
+ "question": "Wie heißt diese Klettergelegenheit?",
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "Klettergarten {name}"
+ },
+ "1": {
+ "then": "Klettergebiet {name}"
+ },
+ "2": {
+ "then": "Klettergebiet"
+ },
+ "3": {
+ "then": "Klettermöglichkeit {name}"
+ }
+ },
+ "render": "Klettermöglichkeit"
+ }
+ },
+ "climbing_club": {
+ "description": "Ein Kletterverein oder -organisation",
+ "name": "Klettervereine",
+ "presets": {
+ "0": {
+ "description": "Ein Kletterverein",
+ "title": "eine kletterverein"
+ },
+ "1": {
+ "description": "Eine Organisation, die sich mit dem Klettern beschäftigt",
+ "title": "Eine Kletterorganisation"
+ }
+ },
+ "tagRenderings": {
+ "climbing_club-name": {
+ "question": "Wie lautet der Name dieses Vereins oder Organisation?",
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "Kletter-Organisation"
+ }
+ },
+ "render": "Kletterverein"
+ }
+ },
+ "climbing_gym": {
+ "description": "Eine Kletterhalle",
+ "name": "Kletterhallen",
+ "tagRenderings": {
+ "name": {
+ "question": "Wie heißt diese Kletterhalle?",
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "Kletterhalle {name}"
+ }
+ },
+ "render": "Kletterhalle"
+ }
+ },
+ "climbing_opportunity": {
+ "description": "Eine Klettergelegenheit?",
+ "name": "Klettermöglichkeiten?",
+ "tagRenderings": {
+ "climbing-opportunity-name": {
+ "render": "{name}"
+ },
+ "climbing-possible": {
+ "mappings": {
+ "0": {
+ "then": "Hier kann geklettert werden"
+ },
+ "1": {
+ "then": "Hier kann nicht geklettert werden"
+ },
+ "2": {
+ "then": "Hier kann nicht geklettert werden"
+ }
+ },
+ "question": "Kann hier geklettert werden?"
+ }
+ },
+ "title": {
+ "render": "Klettermöglichkeit?"
+ }
+ },
+ "climbing_route": {
+ "name": "Kletterrouten",
+ "presets": {
+ "0": {
+ "title": "eine kletterroute"
+ }
+ },
+ "tagRenderings": {
+ "Bolts": {
+ "mappings": {
+ "0": {
+ "then": "Auf dieser Kletterroute sind keine Haken vorhanden"
+ },
+ "1": {
+ "then": "Auf dieser Kletterroute sind keine Haken vorhanden"
+ }
+ },
+ "question": "Wie viele Haken gibt es auf dieser Kletterroute bevor der Umlenker bzw. Standhaken erreicht ist?",
+ "render": "Diese Kletterroute hat {climbing:bolts} Haken"
+ },
+ "Difficulty": {
+ "question": "Wie hoch ist der Schwierigkeitsgrad dieser Kletterroute nach dem französisch/belgischen System?",
+ "render": "Die Schwierigkeit ist {climbing:grade:french} entsprechend des französisch/belgischen Systems"
+ },
+ "Length": {
+ "question": "Wie lang ist diese Kletterroute (in Metern)?",
+ "render": "Diese Route ist {canonical(climbing:length)} lang"
+ },
+ "Name": {
+ "mappings": {
+ "0": {
+ "then": "Diese Kletterroute hat keinen Namen"
+ }
+ },
+ "question": "Wie heißt diese Kletterroute?",
+ "render": "{name}"
+ },
+ "Rock type": {
+ "render": "Der Gesteinstyp ist {_embedding_features_with_rock:rock}, wie auf dem umgebenden Felsen angegeben"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "Kleterroute {name}"
+ }
+ },
+ "render": "Kleterroute"
+ }
+ },
"crossings": {
"description": "Übergänge für Fußgänger und Radfahrer",
"name": "Kreuzungen",
@@ -2281,6 +2469,69 @@
}
}
},
+ "hackerspace": {
+ "description": "Hackerspace",
+ "name": "Hackerspaces",
+ "presets": {
+ "0": {
+ "description": "Ein Hackerspace ist ein Ort, an dem sich Menschen treffen, die sich für Software interessieren",
+ "title": "eine hackerspace"
+ },
+ "1": {
+ "description": "Ein Makerspace ist ein Ort, an dem Heimwerker-Enthusiasten zusammenkommen, um mit Elektronik zu experimentieren, wie Arduino, LED-Strips, ...",
+ "title": "eine makerspace"
+ }
+ },
+ "tagRenderings": {
+ "hackerspaces-name": {
+ "question": "Wie lautet der Name dieses Hackerspace?",
+ "render": "Dieser Hackerspace heißt {name}"
+ },
+ "hackerspaces-opening_hours": {
+ "mappings": {
+ "0": {
+ "then": "durchgehend geöffnet"
+ }
+ },
+ "question": "Wann hat dieser Hackerspace geöffnet?",
+ "render": "{opening_hours_table()}"
+ },
+ "hackerspaces-start_date": {
+ "question": "Wann wurde dieser Hackerspace gegründet?",
+ "render": "Dieser Hackerspace wurde gegründet am {start_date}"
+ },
+ "hs-club-mate": {
+ "mappings": {
+ "0": {
+ "then": "In diesem Hackerspace gibt es Club Mate"
+ },
+ "1": {
+ "then": "In diesem Hackerspace gibt es kein Club Mate"
+ }
+ },
+ "question": "Gibt es in diesem Hackerspace Club Mate?"
+ },
+ "is_makerspace": {
+ "mappings": {
+ "0": {
+ "then": "Dies ist ein Makerspace"
+ },
+ "1": {
+ "then": "Dies ist ein traditioneller (softwareorientierter) Hackerspace"
+ }
+ },
+ "question": "Ist dies ein Hackerspace oder ein Makerspace?"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": " {name}"
+ }
+ },
+ "render": "Hackerspace"
+ }
+ },
"hydrant": {
"description": "Kartenebene zur Anzeige von Hydranten.",
"name": "Hydranten anzeigen",
@@ -3543,5 +3794,68 @@
},
"watermill": {
"name": "Wassermühle"
+ },
+ "windturbine": {
+ "name": "Windräder",
+ "presets": {
+ "0": {
+ "title": "ein Windrad"
+ }
+ },
+ "tagRenderings": {
+ "turbine-diameter": {
+ "question": "Wie groß ist der Rotordurchmesser der Windturbine in Meter?",
+ "render": "Der Rotordurchmesser der Windturbine ist {rotor:diameter} Meter."
+ },
+ "turbine-height": {
+ "question": "Wie hoch ist dieses Windrad (inklusive Rotorradius) in Metern?",
+ "render": "Die Gesamthöhe dieses Windrads beträgt (einschließlich Rotorradius) {height} Meter."
+ },
+ "turbine-operator": {
+ "question": "Wer betreibt das Windrads?",
+ "render": "Die Windturbine wird betrieben von {operator}."
+ },
+ "turbine-output": {
+ "question": "Wieviel Strom erzeugt das Windrad? (z.B. 2.3MW)",
+ "render": "Das Windrad erzeugt {generator:output:electricity} Strom."
+ },
+ "turbine-start-date": {
+ "question": "Wann wurde das Windrad in Betrieb genommen?",
+ "render": "Das Windrad wurde am {start_date} in Betrieb genommen."
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "{name}"
+ }
+ },
+ "render": "Windrad"
+ },
+ "units": {
+ "0": {
+ "applicableUnits": {
+ "0": {
+ "human": " Megawatt"
+ },
+ "1": {
+ "human": " Kilowatt"
+ },
+ "2": {
+ "human": " Watt"
+ },
+ "3": {
+ "human": " Gigawatt"
+ }
+ }
+ },
+ "1": {
+ "applicableUnits": {
+ "0": {
+ "human": " Meter"
+ }
+ }
+ }
+ }
}
}
\ No newline at end of file
diff --git a/langs/layers/en.json b/langs/layers/en.json
index 65e2b5200..f66ce48fe 100644
--- a/langs/layers/en.json
+++ b/langs/layers/en.json
@@ -2302,6 +2302,194 @@
}
}
},
+ "climbing": {
+ "description": "A climbing opportunity",
+ "name": "Climbing opportunities",
+ "presets": {
+ "0": {
+ "description": "A climbing opportunity",
+ "title": "a climbing opportunity"
+ }
+ },
+ "tagRenderings": {
+ "Contained routes hist": {
+ "render": "Grades overview
{histogram(_difficulty_hist)}"
+ },
+ "Contained routes length hist": {
+ "render": "Length overview
{histogram(_length_hist)}"
+ },
+ "Contained_climbing_routes": {
+ "render": "Contains {_contained_climbing_routes_count} routes
{_contained_climbing_routes}
"
+ },
+ "Rock type (crag/rock/cliff only)": {
+ "mappings": {
+ "0": {
+ "then": "Limestone"
+ }
+ },
+ "question": "What is the rock type here?",
+ "render": "The rock type is {rock}"
+ },
+ "Type": {
+ "mappings": {
+ "0": {
+ "then": "A climbing boulder - a single rock or cliff with one or a few climbing routes which can be climbed safely without rope"
+ },
+ "1": {
+ "then": "A climbing crag - a single rock or cliff with at least a few climbing routes"
+ }
+ }
+ },
+ "name": {
+ "mappings": {
+ "0": {
+ "then": "This climbing opportunity doesn't have a name"
+ }
+ },
+ "question": "What is the name of this climbing opportunity?",
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "Climbing crag {name}"
+ },
+ "1": {
+ "then": "Climbing area {name}"
+ },
+ "2": {
+ "then": "Climbing site"
+ },
+ "3": {
+ "then": "Climbing opportunity {name}"
+ }
+ },
+ "render": "Climbing opportunity"
+ }
+ },
+ "climbing_club": {
+ "description": "A climbing club or organisation",
+ "name": "Climbing club",
+ "presets": {
+ "0": {
+ "description": "A climbing club",
+ "title": "a climbing club"
+ },
+ "1": {
+ "description": "An NGO working around climbing",
+ "title": "a climbing ngo"
+ }
+ },
+ "tagRenderings": {
+ "climbing_club-name": {
+ "question": "What is the name of this climbing club or NGO?",
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "Climbing NGO"
+ }
+ },
+ "render": "Climbing club"
+ }
+ },
+ "climbing_gym": {
+ "description": "A climbing gym",
+ "name": "Climbing gyms",
+ "tagRenderings": {
+ "name": {
+ "question": "What is the name of this climbing gym?",
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "Climbing gym {name}"
+ }
+ },
+ "render": "Climbing gym"
+ }
+ },
+ "climbing_opportunity": {
+ "description": "A climbing opportunity?",
+ "name": "Climbing opportunities?",
+ "tagRenderings": {
+ "climbing-opportunity-name": {
+ "render": "{name}"
+ },
+ "climbing-possible": {
+ "mappings": {
+ "0": {
+ "then": "Climbing is possible here"
+ },
+ "1": {
+ "then": "Climbing is not possible here"
+ },
+ "2": {
+ "then": "Climbing is not possible here"
+ }
+ },
+ "question": "Is climbing possible here?"
+ }
+ },
+ "title": {
+ "render": "Climbing opportunity?"
+ }
+ },
+ "climbing_route": {
+ "name": "Climbing routes",
+ "presets": {
+ "0": {
+ "title": "a climbing route"
+ }
+ },
+ "tagRenderings": {
+ "Bolts": {
+ "mappings": {
+ "0": {
+ "then": "This route is not bolted"
+ },
+ "1": {
+ "then": "This route is not bolted"
+ }
+ },
+ "question": "How many bolts does this route have before reaching the anchor?",
+ "render": "This route has {climbing:bolts} bolts"
+ },
+ "Difficulty": {
+ "question": "What is the grade of this climbing route according to the french/belgian system?",
+ "render": "The grade is {climbing:grade:french} according to the french/belgian system"
+ },
+ "Length": {
+ "question": "How long is this climbing route (in meters)?",
+ "render": "This route is {canonical(climbing:length)} long"
+ },
+ "Name": {
+ "mappings": {
+ "0": {
+ "then": "This climbing route doesn't have a name"
+ }
+ },
+ "question": "What is the name of this climbing route?",
+ "render": "{name}"
+ },
+ "Rock type": {
+ "render": "The rock type is {_embedding_features_with_rock:rock} as stated on the surrounding crag"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "Climbing route {name}"
+ }
+ },
+ "render": "Climbing route"
+ }
+ },
"crossings": {
"description": "Crossings for pedestrians and cyclists",
"name": "Crossings",
@@ -3493,6 +3681,69 @@
"grass_in_parks": {
"description": "Searches for all accessible grass patches within public parks - these are 'groenzones'\""
},
+ "hackerspace": {
+ "description": "Hackerspace",
+ "name": "Hackerspace",
+ "presets": {
+ "0": {
+ "description": "A hackerspace is an area where people interested in software gather",
+ "title": "a hackerspace"
+ },
+ "1": {
+ "description": "A makerspace is a place where DIY-enthusiasts gather to experiment with electronics such as arduino, LEDstrips, ...",
+ "title": "a makerspace"
+ }
+ },
+ "tagRenderings": {
+ "hackerspaces-name": {
+ "question": "What is the name of this hackerspace?",
+ "render": "This hackerspace is named {name}"
+ },
+ "hackerspaces-opening_hours": {
+ "mappings": {
+ "0": {
+ "then": "Opened 24/7"
+ }
+ },
+ "question": "When is this hackerspace opened?",
+ "render": "{opening_hours_table()}"
+ },
+ "hackerspaces-start_date": {
+ "question": "When was this hackerspace founded?",
+ "render": "This hackerspace was founded at {start_date}"
+ },
+ "hs-club-mate": {
+ "mappings": {
+ "0": {
+ "then": "This hackerspace serves club mate"
+ },
+ "1": {
+ "then": "This hackerspace does not serve club mate"
+ }
+ },
+ "question": "Does this hackerspace serve Club Mate?"
+ },
+ "is_makerspace": {
+ "mappings": {
+ "0": {
+ "then": "This is a makerspace"
+ },
+ "1": {
+ "then": "This is a traditional (software oriented) hackerspace"
+ }
+ },
+ "question": "Is this a hackerspace or a makerspace?"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": " {name}"
+ }
+ },
+ "render": "Hackerspace"
+ }
+ },
"hydrant": {
"description": "Map layer to show fire hydrants.",
"name": "Map of hydrants",
@@ -5417,5 +5668,68 @@
},
"watermill": {
"name": "Watermill"
+ },
+ "windturbine": {
+ "name": "wind turbine",
+ "presets": {
+ "0": {
+ "title": "a wind turbine"
+ }
+ },
+ "tagRenderings": {
+ "turbine-diameter": {
+ "question": "What is the rotor diameter of this wind turbine, in metres?",
+ "render": "The rotor diameter of this wind turbine is {rotor:diameter} metres."
+ },
+ "turbine-height": {
+ "question": "What is the total height of this wind turbine (including rotor radius), in metres?",
+ "render": "The total height (including rotor radius) of this wind turbine is {height} metres."
+ },
+ "turbine-operator": {
+ "question": "Who operates this wind turbine?",
+ "render": "This wind turbine is operated by {operator}."
+ },
+ "turbine-output": {
+ "question": "What is the power output of this wind turbine? (e.g. 2.3 MW)",
+ "render": "The power output of this wind turbine is {generator:output:electricity}."
+ },
+ "turbine-start-date": {
+ "question": "When did this wind turbine go into operation?",
+ "render": "This wind turbine went into operation on/in {start_date}."
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "{name}"
+ }
+ },
+ "render": "wind turbine"
+ },
+ "units": {
+ "0": {
+ "applicableUnits": {
+ "0": {
+ "human": " megawatts"
+ },
+ "1": {
+ "human": " kilowatts"
+ },
+ "2": {
+ "human": " watts"
+ },
+ "3": {
+ "human": " gigawatts"
+ }
+ }
+ },
+ "1": {
+ "applicableUnits": {
+ "0": {
+ "human": " meter"
+ }
+ }
+ }
+ }
}
}
\ No newline at end of file
diff --git a/langs/layers/eo.json b/langs/layers/eo.json
index 63d58d4a4..be60b846f 100644
--- a/langs/layers/eo.json
+++ b/langs/layers/eo.json
@@ -188,5 +188,39 @@
"title": "Rubujo"
}
}
+ },
+ "windturbine": {
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "{name}"
+ }
+ }
+ },
+ "units": {
+ "0": {
+ "applicableUnits": {
+ "0": {
+ "human": " megavatoj"
+ },
+ "1": {
+ "human": " kilovatoj"
+ },
+ "2": {
+ "human": " vatoj"
+ },
+ "3": {
+ "human": " gigavatoj"
+ }
+ }
+ },
+ "1": {
+ "applicableUnits": {
+ "0": {
+ "human": " metro"
+ }
+ }
+ }
+ }
}
}
\ No newline at end of file
diff --git a/langs/layers/fr.json b/langs/layers/fr.json
index 044aac4ae..702021fff 100644
--- a/langs/layers/fr.json
+++ b/langs/layers/fr.json
@@ -1035,6 +1035,194 @@
}
}
},
+ "climbing": {
+ "description": "Opportunité d’escalade",
+ "name": "Opportunité d’escalade",
+ "presets": {
+ "0": {
+ "description": "Opportunité d’escalade",
+ "title": "une opportunité d’escalade"
+ }
+ },
+ "tagRenderings": {
+ "Contained routes hist": {
+ "render": "Résumé des difficultés
{histogram(_difficulty_hist)}"
+ },
+ "Contained routes length hist": {
+ "render": "Résumé de longueur
{histogram(_length_hist)}"
+ },
+ "Contained_climbing_routes": {
+ "render": "Contient {_contained_climbing_routes_count} voies
{_contained_climbing_routes}
"
+ },
+ "Rock type (crag/rock/cliff only)": {
+ "mappings": {
+ "0": {
+ "then": "Calcaire"
+ }
+ },
+ "question": "Quel est le type de roche ?",
+ "render": "La roche est du {rock}"
+ },
+ "Type": {
+ "mappings": {
+ "0": {
+ "then": "Rocher d’escalade, rocher avec une ou peu de voie permettant d’escalader sans corde"
+ },
+ "1": {
+ "then": "Mur d’escalade, rocher avec plusieurs voies d’escalades"
+ }
+ }
+ },
+ "name": {
+ "mappings": {
+ "0": {
+ "then": "Ce site n’a pas de nom"
+ }
+ },
+ "question": "Quel est le nom de ce site ?",
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "Mur d’escalade {name}"
+ },
+ "1": {
+ "then": "Zone d’escalade {name}"
+ },
+ "2": {
+ "then": "Site d’escalade"
+ },
+ "3": {
+ "then": "Opportunité d’escalade {name}"
+ }
+ },
+ "render": "Opportunité d’escalade"
+ }
+ },
+ "climbing_club": {
+ "description": "Club ou association d’escalade",
+ "name": "Club d’escalade",
+ "presets": {
+ "0": {
+ "description": "Un club d’escalade",
+ "title": "une club d’escalade"
+ },
+ "1": {
+ "description": "Une association d’escalade",
+ "title": "une association d’escalade"
+ }
+ },
+ "tagRenderings": {
+ "climbing_club-name": {
+ "question": "Quel est le nom du club ou de l’association ?",
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "Association d’escalade"
+ }
+ },
+ "render": "Club d’escalade"
+ }
+ },
+ "climbing_gym": {
+ "description": "Une salle d’escalade",
+ "name": "Salle d’escalade",
+ "tagRenderings": {
+ "name": {
+ "question": "Quel est le nom de la salle d’escalade ?",
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "Salle d’escalade {name}"
+ }
+ },
+ "render": "Salle d’escalade"
+ }
+ },
+ "climbing_opportunity": {
+ "description": "Opportunité d’escalade ?",
+ "name": "Opportunités d’escalade ?",
+ "tagRenderings": {
+ "climbing-opportunity-name": {
+ "render": "{name}"
+ },
+ "climbing-possible": {
+ "mappings": {
+ "0": {
+ "then": "Escalader est possible"
+ },
+ "1": {
+ "then": "Escalader n’est pas possible"
+ },
+ "2": {
+ "then": "Escalader n’est pas possible"
+ }
+ },
+ "question": "Est-il possible d’escalader ici ?"
+ }
+ },
+ "title": {
+ "render": "Opportunité d’escalade ?"
+ }
+ },
+ "climbing_route": {
+ "name": "Voies d’escalade",
+ "presets": {
+ "0": {
+ "title": "une voie d’escalade"
+ }
+ },
+ "tagRenderings": {
+ "Bolts": {
+ "mappings": {
+ "0": {
+ "then": "Cette voie n’a pas de prises"
+ },
+ "1": {
+ "then": "Cette voie n’a pas de prises"
+ }
+ },
+ "question": "Combien de prises cette voie possède avant d’atteindre la moulinette ?",
+ "render": "Cette voie a {climbing:bolts} prises"
+ },
+ "Difficulty": {
+ "question": "Quelle est la difficulté de cette voie selon le système franco-belge ?",
+ "render": "Selon le système franco-belge, la difficulté de cette voie est de {climbing:grade:french}"
+ },
+ "Length": {
+ "question": "Quelle est la longueur de cette voie (en mètres) ?",
+ "render": "Cette voie fait {canonical(climbing:length)} de long"
+ },
+ "Name": {
+ "mappings": {
+ "0": {
+ "then": "Cette voie n’a pas de nom"
+ }
+ },
+ "question": "Quel est le nom de cette voie d’escalade ?",
+ "render": "{name}"
+ },
+ "Rock type": {
+ "render": "Le type de roche est {_embedding_features_with_rock:rock} selon le mur"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "Voie d’escalade {name}"
+ }
+ },
+ "render": "Voie d’escalade"
+ }
+ },
"crossings": {
"description": "Traversée pour piétons et cyclistes",
"name": "Traversée",
@@ -2418,5 +2606,68 @@
},
"watermill": {
"name": "Moulin à eau"
+ },
+ "windturbine": {
+ "name": "Éolienne",
+ "presets": {
+ "0": {
+ "title": "une éolienne"
+ }
+ },
+ "tagRenderings": {
+ "turbine-diameter": {
+ "question": "Quel est le diamètre du rotor en mètres ?",
+ "render": "Le diamètre du rotor est de {rotor:diameter} mètres."
+ },
+ "turbine-height": {
+ "question": "Quelle est la hauteur totale de l’éolienne en mètres, pales incluses ?",
+ "render": "La hauteur totale, incluant les pales, est de {height} mètres."
+ },
+ "turbine-operator": {
+ "question": "Qui est l’exploitant de cette éolienne ?",
+ "render": "Cette éolienne est opérée par {operator}."
+ },
+ "turbine-output": {
+ "question": "Quel est la puissance générée par cette éolienne ?",
+ "render": "La puissance générée par cette éolienne est de {generator:output:electricity}."
+ },
+ "turbine-start-date": {
+ "question": "Depuis quand l’éolienne est-elle en fonctionnement ?",
+ "render": "L’éolienne est active depuis {start_date}."
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "{name}"
+ }
+ },
+ "render": "éolienne"
+ },
+ "units": {
+ "0": {
+ "applicableUnits": {
+ "0": {
+ "human": " megawatts"
+ },
+ "1": {
+ "human": " kilowatts"
+ },
+ "2": {
+ "human": " watts"
+ },
+ "3": {
+ "human": " gigawatts"
+ }
+ }
+ },
+ "1": {
+ "applicableUnits": {
+ "0": {
+ "human": " mètres"
+ }
+ }
+ }
+ }
}
}
\ No newline at end of file
diff --git a/langs/layers/hu.json b/langs/layers/hu.json
index 4ca5c93e3..5bed8bef6 100644
--- a/langs/layers/hu.json
+++ b/langs/layers/hu.json
@@ -474,6 +474,33 @@
}
}
},
+ "climbing_club": {
+ "description": "Mászóegyesület vagy -szervezet",
+ "name": "Mászóegyesület",
+ "presets": {
+ "0": {
+ "description": "Egy mászóegyesület",
+ "title": "Mászóegyesület"
+ },
+ "1": {
+ "description": "Mászással foglalkozó civil szervezet",
+ "title": "Mászószervezet"
+ }
+ },
+ "tagRenderings": {
+ "climbing_club-name": {
+ "question": "Mi a neve ennek a mászóegyesületnek vagy szervezetnek?",
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "Mászószervezet"
+ }
+ }
+ }
+ },
"drinking_water": {
"description": "Ivóvizet adó kutakat megjelenítő réteg",
"name": "Ivóvíz",
@@ -528,6 +555,41 @@
"render": "Emlékkerékpár"
}
},
+ "hackerspace": {
+ "description": "Hackerspace",
+ "name": "Hackerspace",
+ "presets": {
+ "0": {
+ "description": "A hackerspace egy olyan hely, ahol szoftverek iránt érdeklő emberek találkoznak",
+ "title": "Hackerspace"
+ },
+ "1": {
+ "description": "A makerspace olyan hely, ahol a barkácsolás szerelmesei találkoznak, hogy olyan elektronikai eszközökkel kísérletezzenek, mint például az Arduino vagy a LEDstrips.",
+ "title": "Makerspace"
+ }
+ },
+ "tagRenderings": {
+ "is_makerspace": {
+ "mappings": {
+ "0": {
+ "then": "Ez egy makerspace"
+ },
+ "1": {
+ "then": "Ez egy hagyományos (szoftverekkel foglalkozó) hackerspace"
+ }
+ },
+ "question": "Ez hackerspace vagy makerspace?"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": " {name}"
+ }
+ },
+ "render": "Hackerspace"
+ }
+ },
"public_bookcase": {
"description": "Egy utcai szekrény könyvekkel, amelyet bárki használhat",
"filter": {
@@ -651,5 +713,63 @@
}
}
}
+ },
+ "windturbine": {
+ "name": "Szélerőmű",
+ "presets": {
+ "0": {
+ "title": "Szélerőmű"
+ }
+ },
+ "tagRenderings": {
+ "turbine-diameter": {
+ "question": "Hány méter a rotorátmérője ennek a szélturbinának?",
+ "render": "A szélturbina rotorátmérője: {rotor:diameter} méter."
+ },
+ "turbine-height": {
+ "question": "Hány méter a szélerőmű teljes magassága (a rotor sugarával együtt)?",
+ "render": "A szélerőmű teljes (rotor sugarával együtt számított) magassága: {height} méter."
+ },
+ "turbine-operator": {
+ "question": "Ki üzemelteti ezt a szélturbinát?",
+ "render": "Ennek a szélerőműnek az üzemeltetője: {operator}."
+ },
+ "turbine-output": {
+ "question": "Mekkora a teljesítménye ennek a szélturbinának? (pl. 2.3 MW)",
+ "render": "A szélerőmű teljesítménye: {generator:output:electricity}."
+ },
+ "turbine-start-date": {
+ "question": "Mikor helyezték üzembe ezt a szélerőművet?",
+ "render": "A szélerőmű üzembe helyezése: {start_date}."
+ }
+ },
+ "title": {
+ "render": "szélerőmű"
+ },
+ "units": {
+ "0": {
+ "applicableUnits": {
+ "0": {
+ "human": " megawatt"
+ },
+ "1": {
+ "human": " kilowatt"
+ },
+ "2": {
+ "human": " watt"
+ },
+ "3": {
+ "human": " gigawatt"
+ }
+ }
+ },
+ "1": {
+ "applicableUnits": {
+ "0": {
+ "human": " méter"
+ }
+ }
+ }
+ }
}
}
\ No newline at end of file
diff --git a/langs/layers/id.json b/langs/layers/id.json
index 70a2e3f55..12c017556 100644
--- a/langs/layers/id.json
+++ b/langs/layers/id.json
@@ -151,6 +151,41 @@
}
}
},
+ "climbing": {
+ "tagRenderings": {
+ "name": {
+ "render": "{name}"
+ }
+ }
+ },
+ "climbing_club": {
+ "tagRenderings": {
+ "climbing_club-name": {
+ "render": "{name}"
+ }
+ }
+ },
+ "climbing_gym": {
+ "tagRenderings": {
+ "name": {
+ "render": "{name}"
+ }
+ }
+ },
+ "climbing_opportunity": {
+ "tagRenderings": {
+ "climbing-opportunity-name": {
+ "render": "{name}"
+ }
+ }
+ },
+ "climbing_route": {
+ "tagRenderings": {
+ "Name": {
+ "render": "{name}"
+ }
+ }
+ },
"cycleways_and_roads": {
"tagRenderings": {
"Maxspeed (for road)": {
@@ -395,5 +430,53 @@
},
"watermill": {
"name": "Kincir Air"
+ },
+ "windturbine": {
+ "tagRenderings": {
+ "turbine-operator": {
+ "render": "Turbin angin ini dioperasikan oleh {operator}."
+ },
+ "turbine-output": {
+ "question": "Berapa output daya dari turbin angin ini? (misalnya 2,3 MW)",
+ "render": "Output daya dari turbin angin ini adalah {generator:output:electricity}."
+ },
+ "turbine-start-date": {
+ "question": "Kapan turbin angin ini mulai beroperasi?",
+ "render": "Turbin angin ini mulai beroperasi pada/dalam {start_date}."
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "{name}"
+ }
+ },
+ "render": "turbin angin"
+ },
+ "units": {
+ "0": {
+ "applicableUnits": {
+ "0": {
+ "human": " megawat"
+ },
+ "1": {
+ "human": " kilowat"
+ },
+ "2": {
+ "human": " watt"
+ },
+ "3": {
+ "human": " gigawatt"
+ }
+ }
+ },
+ "1": {
+ "applicableUnits": {
+ "0": {
+ "human": " meter"
+ }
+ }
+ }
+ }
}
}
\ No newline at end of file
diff --git a/langs/layers/it.json b/langs/layers/it.json
index 333ed0f47..859806f3a 100644
--- a/langs/layers/it.json
+++ b/langs/layers/it.json
@@ -791,6 +791,194 @@
"render": "Oggetto relativo alle bici"
}
},
+ "climbing": {
+ "description": "Un’opportunità di arrampicata",
+ "name": "Opportunità di arrampicata",
+ "presets": {
+ "0": {
+ "description": "Un’opportunità di arrampicata",
+ "title": "una opportunità di arrampicata"
+ }
+ },
+ "tagRenderings": {
+ "Contained routes hist": {
+ "render": "Riassunto delle difficoltà
{histogram(_difficulty_hist)}"
+ },
+ "Contained routes length hist": {
+ "render": "Riassunto della lunghezza
{histogram(_length_hist)}"
+ },
+ "Contained_climbing_routes": {
+ "render": "Contiene {_contained_climbing_routes_count} vie
{_contained_climbing_routes}
"
+ },
+ "Rock type (crag/rock/cliff only)": {
+ "mappings": {
+ "0": {
+ "then": "Calcare"
+ }
+ },
+ "question": "Qual è il tipo di roccia qua?",
+ "render": "Il tipo di roccia è {rock}"
+ },
+ "Type": {
+ "mappings": {
+ "0": {
+ "then": "Un masso per arrampicata (una singola roccia o falesia con una o poche vie di arrampicata che possono essere scalate in sicurezza senza una corda)"
+ },
+ "1": {
+ "then": "Un muro da arrampicata (un singolo masso o falesia con almeno qualche via per arrampicata)"
+ }
+ }
+ },
+ "name": {
+ "mappings": {
+ "0": {
+ "then": "Questa opportunità di arrampicata non ha un nome"
+ }
+ },
+ "question": "Qual è il nome di questa opportunità di arrampicata?",
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "Muro da arrampicata {name}"
+ },
+ "1": {
+ "then": "Area di arrampicata {name}"
+ },
+ "2": {
+ "then": "Sito di arrampicata"
+ },
+ "3": {
+ "then": "Opportunità di arrampicata {name}"
+ }
+ },
+ "render": "Opportunità di arrampicata"
+ }
+ },
+ "climbing_club": {
+ "description": "Un club o associazione di arrampacata",
+ "name": "Club di arrampicata",
+ "presets": {
+ "0": {
+ "description": "Un club di arrampicata",
+ "title": "una club di arrampicata"
+ },
+ "1": {
+ "description": "Un’associazione che ha a che fare con l’arrampicata",
+ "title": "una associazione di arrampicata"
+ }
+ },
+ "tagRenderings": {
+ "climbing_club-name": {
+ "question": "Qual è il nome di questo club o associazione di arrampicata?",
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "Associazione di arrampicata"
+ }
+ },
+ "render": "Club di arrampicata"
+ }
+ },
+ "climbing_gym": {
+ "description": "Una palestra di arrampicata",
+ "name": "Palestre di arrampicata",
+ "tagRenderings": {
+ "name": {
+ "question": "Qual è il nome di questa palestra di arrampicata?",
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "Palestra di arrampicata {name}"
+ }
+ },
+ "render": "Palestra di arrampicata"
+ }
+ },
+ "climbing_opportunity": {
+ "description": "Un’opportunità di arrampicata?",
+ "name": "Opportunità di arrampicata?",
+ "tagRenderings": {
+ "climbing-opportunity-name": {
+ "render": "{name}"
+ },
+ "climbing-possible": {
+ "mappings": {
+ "0": {
+ "then": "È possibile arrampicarsi qua"
+ },
+ "1": {
+ "then": "Non è possibile arrampicarsi qua"
+ },
+ "2": {
+ "then": "Non è possibile arrampicarsi qua"
+ }
+ },
+ "question": "È possibile arrampicarsi qua?"
+ }
+ },
+ "title": {
+ "render": "Opportunità di arrampicata?"
+ }
+ },
+ "climbing_route": {
+ "name": "Vie di arrampicata",
+ "presets": {
+ "0": {
+ "title": "una via di arrampicata"
+ }
+ },
+ "tagRenderings": {
+ "Bolts": {
+ "mappings": {
+ "0": {
+ "then": "In questo percorso non sono presenti bulloni"
+ },
+ "1": {
+ "then": "In questo percorso non sono presenti bulloni"
+ }
+ },
+ "question": "Quanti bulloni sono presenti in questo percorso prima di arrivare alla moulinette?",
+ "render": "Questo percorso ha {climbing:bolts} bulloni"
+ },
+ "Difficulty": {
+ "question": "Qual è la difficoltà di questa via di arrampicata nel sistema francese/belga?",
+ "render": "Il grado di difficoltà è {climbing:grade:french} nel sistema francese/belga"
+ },
+ "Length": {
+ "question": "Quanto è lunga questa via di arrampicata (in metri)?",
+ "render": "Questo percorso è lungo {canonical(climbing:length)}"
+ },
+ "Name": {
+ "mappings": {
+ "0": {
+ "then": "Questa via di arrampicata non ha un nome"
+ }
+ },
+ "question": "Come si chiama questa via di arrampicata?",
+ "render": "{name}"
+ },
+ "Rock type": {
+ "render": "Il tipo di roccia è {_embedding_features_with_rock:rock} come dichiarato sul muro circostante"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "Via di arrampicata {name}"
+ }
+ },
+ "render": "Via di arrampicata"
+ }
+ },
"defibrillator": {
"name": "Defibrillatori",
"presets": {
@@ -1992,5 +2180,68 @@
"title": {
"render": "Punto panoramico"
}
+ },
+ "windturbine": {
+ "name": "pala eolica",
+ "presets": {
+ "0": {
+ "title": "una pala eolica"
+ }
+ },
+ "tagRenderings": {
+ "turbine-diameter": {
+ "question": "Qual è il diametro (in metri) del rotore di questa pala eolica?",
+ "render": "Il diametro del rotore di questa pala eolica è di {rotor:diameter} metri."
+ },
+ "turbine-height": {
+ "question": "Qual è l’altezza (in metri e raggio del rotore incluso) di questa pala eolica?",
+ "render": "L’altezza totale (raggio del rotore incluso) di questa pala eolica è di {height} metri."
+ },
+ "turbine-operator": {
+ "question": "Chi gestisce questa pala eolica?",
+ "render": "Questa pala eolica è gestita da {operator}."
+ },
+ "turbine-output": {
+ "question": "Quant’è la potenza generata da questa pala eolica? (ad es. 2.3 MW)",
+ "render": "La potenza generata da questa pala eolica è {generator:output:electricity}."
+ },
+ "turbine-start-date": {
+ "question": "Quando è entrata in funzione questa pala eolica?",
+ "render": "Questa pala eolica è entrata in funzione in data {start_date}."
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "{name}"
+ }
+ },
+ "render": "pala eolica"
+ },
+ "units": {
+ "0": {
+ "applicableUnits": {
+ "0": {
+ "human": " megawatt"
+ },
+ "1": {
+ "human": " kilowatt"
+ },
+ "2": {
+ "human": " watt"
+ },
+ "3": {
+ "human": " gigawatt"
+ }
+ }
+ },
+ "1": {
+ "applicableUnits": {
+ "0": {
+ "human": " metri"
+ }
+ }
+ }
+ }
}
}
\ No newline at end of file
diff --git a/langs/layers/ja.json b/langs/layers/ja.json
index a81b39656..b8075b171 100644
--- a/langs/layers/ja.json
+++ b/langs/layers/ja.json
@@ -121,6 +121,130 @@
"render": "アートワーク"
}
},
+ "climbing": {
+ "description": "登坂教室",
+ "name": "登坂教室",
+ "presets": {
+ "0": {
+ "description": "登坂教室",
+ "title": "登坂教室"
+ }
+ },
+ "tagRenderings": {
+ "name": {
+ "mappings": {
+ "0": {
+ "then": "この登坂教室には名前がついていない"
+ }
+ },
+ "question": "この登坂教室の名前は何ですか?",
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "render": "登坂教室"
+ }
+ },
+ "climbing_club": {
+ "description": "クライミングクラブや団体",
+ "name": "クライミングクラブ",
+ "presets": {
+ "0": {
+ "description": "クライミングクラブ",
+ "title": "クライミングクラブ"
+ },
+ "1": {
+ "description": "登山に関わるNGO",
+ "title": "クライミングNGO"
+ }
+ },
+ "tagRenderings": {
+ "climbing_club-name": {
+ "question": "この登山クラブやNGOの名前は何ですか?",
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "クライミングNGO"
+ }
+ },
+ "render": "クライミングクラブ"
+ }
+ },
+ "climbing_gym": {
+ "description": "クライミングジム",
+ "name": "クライミングジム",
+ "tagRenderings": {
+ "name": {
+ "question": "このクライミングジムは何という名前ですか?",
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "クライミングジム{name}"
+ }
+ },
+ "render": "クライミングジム"
+ }
+ },
+ "climbing_opportunity": {
+ "description": "登坂教室?",
+ "name": "登坂教室?",
+ "tagRenderings": {
+ "climbing-opportunity-name": {
+ "render": "{name}"
+ },
+ "climbing-possible": {
+ "mappings": {
+ "0": {
+ "then": "ここでは登ることができる"
+ },
+ "1": {
+ "then": "ここでは登ることができない"
+ },
+ "2": {
+ "then": "ここでは登ることができない"
+ }
+ },
+ "question": "ここで登坂はできますか?"
+ }
+ },
+ "title": {
+ "render": "登坂教室?"
+ }
+ },
+ "climbing_route": {
+ "name": "登坂ルート",
+ "tagRenderings": {
+ "Difficulty": {
+ "render": "フランス/ベルギーのランク評価システムによると、{climbing:grade:french}の困難度です"
+ },
+ "Length": {
+ "render": "このルート長は、 {canonical(climbing:length)} メーターです"
+ },
+ "Name": {
+ "mappings": {
+ "0": {
+ "then": "この登坂ルートには名前がありません"
+ }
+ },
+ "question": "この登坂ルートの名前は何ですか?",
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "登坂ルート{name}"
+ }
+ },
+ "render": "登坂ルート"
+ }
+ },
"extinguisher": {
"description": "消火栓を表示するマップレイヤ。",
"name": "消火器の地図です。",
diff --git a/langs/layers/nb_NO.json b/langs/layers/nb_NO.json
index 41892f31d..cb4dce0ae 100644
--- a/langs/layers/nb_NO.json
+++ b/langs/layers/nb_NO.json
@@ -174,6 +174,75 @@
}
}
},
+ "climbing": {
+ "description": "En klatremulighet",
+ "presets": {
+ "0": {
+ "description": "En klatremulighet",
+ "title": "en klatremulighet"
+ }
+ },
+ "title": {
+ "render": "Klatremulighet"
+ }
+ },
+ "climbing_club": {
+ "description": "En klatreklubb eller organisasjoner",
+ "name": "Klatreklubb",
+ "presets": {
+ "0": {
+ "description": "En klatreklubb",
+ "title": "en klatreklubb"
+ }
+ },
+ "title": {
+ "render": "Klatreklubb"
+ }
+ },
+ "climbing_opportunity": {
+ "description": "En klatremulighet?",
+ "name": "Klatremuligheter?",
+ "tagRenderings": {
+ "climbing-possible": {
+ "mappings": {
+ "0": {
+ "then": "Klatring er mulig her"
+ },
+ "1": {
+ "then": "Klatring er ikke mulig her"
+ },
+ "2": {
+ "then": "Klatring er ikke mulig her"
+ }
+ },
+ "question": "Er klatring mulig her?"
+ }
+ },
+ "title": {
+ "render": "Klatremulighet?"
+ }
+ },
+ "climbing_route": {
+ "name": "Klatreruter",
+ "tagRenderings": {
+ "Length": {
+ "question": "Hvor mange meter er klatreruten?",
+ "render": "Denne ruten er {canonical(climbing:length)} lang"
+ },
+ "Name": {
+ "mappings": {
+ "0": {
+ "then": "Denne klatreruten har ikke noe navn"
+ }
+ },
+ "question": "Hva er navnet på denne klatreruten?",
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "render": "Klatrerute"
+ }
+ },
"extinguisher": {
"description": "Kartlag for å vise brannslokkere.",
"name": "Kart over brannhydranter",
@@ -248,5 +317,16 @@
}
}
}
+ },
+ "windturbine": {
+ "units": {
+ "0": {
+ "applicableUnits": {
+ "1": {
+ "human": " kilowatt"
+ }
+ }
+ }
+ }
}
}
\ No newline at end of file
diff --git a/langs/layers/nl.json b/langs/layers/nl.json
index 2d0e34be2..fd581e459 100644
--- a/langs/layers/nl.json
+++ b/langs/layers/nl.json
@@ -2311,6 +2311,154 @@
}
}
},
+ "climbing": {
+ "description": "Een klimgelegenheid",
+ "name": "Klimgelegenheden",
+ "presets": {
+ "0": {
+ "description": "Een klimgelegenheid",
+ "title": "een klimgelegenheid"
+ }
+ },
+ "tagRenderings": {
+ "Rock type (crag/rock/cliff only)": {
+ "mappings": {
+ "0": {
+ "then": "Kalksteen"
+ }
+ }
+ },
+ "name": {
+ "mappings": {
+ "0": {
+ "then": "Dit Klimgelegenheid heeft geen naam"
+ }
+ },
+ "question": "Wat is de naam van dit Klimgelegenheid?",
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "1": {
+ "then": "Klimsite {name}"
+ },
+ "2": {
+ "then": "Klimsite"
+ },
+ "3": {
+ "then": "Klimgelegenheid {name}"
+ }
+ },
+ "render": "Klimgelegenheid"
+ }
+ },
+ "climbing_club": {
+ "description": "Een klimclub of organisatie",
+ "name": "Klimclub",
+ "presets": {
+ "0": {
+ "description": "Een klimclub",
+ "title": "een klimclub"
+ },
+ "1": {
+ "description": "Een VZW die werkt rond klimmen",
+ "title": "een een klimorganisatie"
+ }
+ },
+ "tagRenderings": {
+ "climbing_club-name": {
+ "question": "Wat is de naam van deze klimclub?",
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "Klimorganisatie"
+ }
+ },
+ "render": "Klimclub"
+ }
+ },
+ "climbing_gym": {
+ "description": "Een klimzaal",
+ "name": "Klimzalen",
+ "tagRenderings": {
+ "name": {
+ "question": "Wat is de naam van dit Klimzaal?",
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "Klimzaal {name}"
+ }
+ },
+ "render": "Klimzaal"
+ }
+ },
+ "climbing_opportunity": {
+ "description": "Een klimgelegenheid?",
+ "name": "Klimgelegenheiden?",
+ "tagRenderings": {
+ "climbing-opportunity-name": {
+ "render": "{name}"
+ },
+ "climbing-possible": {
+ "mappings": {
+ "0": {
+ "then": "Klimmen is hier niet toegelaten"
+ },
+ "1": {
+ "then": "Klimmen is hier niet toegelaten"
+ },
+ "2": {
+ "then": "Klimmen is hier niet mogelijk"
+ }
+ }
+ }
+ },
+ "title": {
+ "render": "Klimgelegenheid?"
+ }
+ },
+ "climbing_route": {
+ "name": "Klimroute",
+ "presets": {
+ "0": {
+ "title": "een klimroute"
+ }
+ },
+ "tagRenderings": {
+ "Difficulty": {
+ "question": "Hoe moeilijk is deze klimroute volgens het Franse/Belgische systeem?",
+ "render": "De klimmoeilijkheid is {climbing:grade:french} volgens het Franse/Belgische systeem"
+ },
+ "Length": {
+ "question": "Hoe lang is deze klimroute (in meters)?",
+ "render": "Deze klimroute is {canonical(climbing:length)} lang"
+ },
+ "Name": {
+ "mappings": {
+ "0": {
+ "then": "Deze klimroute heeft geen naam"
+ }
+ },
+ "question": "Hoe heet deze klimroute?",
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "Klimroute {name}"
+ }
+ },
+ "render": "Klimroute"
+ }
+ },
"crab_address": {
"tagRenderings": {
"render_crab": {
@@ -5606,5 +5754,41 @@
},
"render": "Watermolens"
}
+ },
+ "windturbine": {
+ "name": "windturbine",
+ "presets": {
+ "0": {
+ "title": "een windturbine"
+ }
+ },
+ "title": {
+ "render": "windturbine"
+ },
+ "units": {
+ "0": {
+ "applicableUnits": {
+ "0": {
+ "human": " megawatt"
+ },
+ "1": {
+ "human": " kilowatt"
+ },
+ "2": {
+ "human": " watt"
+ },
+ "3": {
+ "human": " gigawatt"
+ }
+ }
+ },
+ "1": {
+ "applicableUnits": {
+ "0": {
+ "human": " meter"
+ }
+ }
+ }
+ }
}
}
\ No newline at end of file
diff --git a/langs/layers/ru.json b/langs/layers/ru.json
index 5377904ba..fca36af7e 100644
--- a/langs/layers/ru.json
+++ b/langs/layers/ru.json
@@ -763,6 +763,56 @@
}
}
},
+ "climbing": {
+ "tagRenderings": {
+ "name": {
+ "render": "{name}"
+ }
+ }
+ },
+ "climbing_club": {
+ "name": "Клуб скалолазания",
+ "presets": {
+ "0": {
+ "description": "Клуб скалолазания",
+ "title": "Клуб скалолазания"
+ }
+ },
+ "tagRenderings": {
+ "climbing_club-name": {
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "render": "Клуб скалолазания"
+ }
+ },
+ "climbing_gym": {
+ "description": "Комплекс скалолазания",
+ "name": "Комплексы скалолазания",
+ "tagRenderings": {
+ "name": {
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "render": "Комплекс скалолазания"
+ }
+ },
+ "climbing_opportunity": {
+ "tagRenderings": {
+ "climbing-opportunity-name": {
+ "render": "{name}"
+ }
+ }
+ },
+ "climbing_route": {
+ "tagRenderings": {
+ "Name": {
+ "render": "{name}"
+ }
+ }
+ },
"crossings": {
"presets": {
"1": {
@@ -949,6 +999,33 @@
"render": "Велосипед Ghost"
}
},
+ "hackerspace": {
+ "description": "Хакерспейс",
+ "name": "Хакерспейс",
+ "presets": {
+ "0": {
+ "title": "Хакерспейс"
+ }
+ },
+ "tagRenderings": {
+ "hackerspaces-opening_hours": {
+ "mappings": {
+ "0": {
+ "then": "Открыто 24/7"
+ }
+ },
+ "render": "{opening_hours_table()}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": " {name}"
+ }
+ },
+ "render": "Хакерспейс"
+ }
+ },
"hydrant": {
"description": "Слой карты, отображающий пожарные гидранты.",
"name": "Карта пожарных гидрантов",
@@ -1625,5 +1702,39 @@
},
"watermill": {
"name": "Водяная мельница"
+ },
+ "windturbine": {
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "{name}"
+ }
+ }
+ },
+ "units": {
+ "0": {
+ "applicableUnits": {
+ "0": {
+ "human": " мегаватт"
+ },
+ "1": {
+ "human": " киловатт"
+ },
+ "2": {
+ "human": " ватт"
+ },
+ "3": {
+ "human": " гигаватт"
+ }
+ }
+ },
+ "1": {
+ "applicableUnits": {
+ "0": {
+ "human": " метр"
+ }
+ }
+ }
+ }
}
}
\ No newline at end of file
diff --git a/langs/layers/zh_Hant.json b/langs/layers/zh_Hant.json
index f1e931d5d..6a0ea50c1 100644
--- a/langs/layers/zh_Hant.json
+++ b/langs/layers/zh_Hant.json
@@ -457,6 +457,23 @@
"cafe_pub": {
"name": "咖啡廳與酒吧"
},
+ "climbing_club": {
+ "description": "攀岩社團或組織",
+ "name": "攀岩社團",
+ "tagRenderings": {
+ "climbing_club-name": {
+ "render": "{name}"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "攀岩 NGO"
+ }
+ },
+ "render": "攀岩社團"
+ }
+ },
"extinguisher": {
"description": "顯示消防栓的地圖圖層。"
},
@@ -471,8 +488,134 @@
"render": "幽靈單車"
}
},
+ "hackerspace": {
+ "description": "駭客空間",
+ "name": "駭客空間",
+ "presets": {
+ "0": {
+ "description": "駭客空間是對軟體有興趣的人聚集的地方",
+ "title": "駭客空間"
+ },
+ "1": {
+ "description": "創客空間是 DIY 愛好者聚集在一起弄電子零件實驗,例如用 arduino、LEDstrips 等...",
+ "title": "創客空間"
+ }
+ },
+ "tagRenderings": {
+ "hackerspaces-name": {
+ "question": "這個駭客空間的名稱是?",
+ "render": "這個駭客空間叫 {name}"
+ },
+ "hackerspaces-opening_hours": {
+ "mappings": {
+ "0": {
+ "then": "24/7 營業"
+ }
+ },
+ "question": "這個駭客空間的營業時間?",
+ "render": "{opening_hours_table()}"
+ },
+ "hackerspaces-start_date": {
+ "question": "這個駭客空間何時成立的?",
+ "render": "這駭客空間是 {start_date} 成立的"
+ },
+ "hs-club-mate": {
+ "mappings": {
+ "0": {
+ "then": "這個駭客空間服務俱樂部伙伴"
+ },
+ "1": {
+ "then": "這個駭客空間沒有服務俱樂部伙伴"
+ }
+ },
+ "question": "這個駭客空間是否服務俱樂部伙伴?"
+ },
+ "is_makerspace": {
+ "mappings": {
+ "0": {
+ "then": "這是創客空間"
+ },
+ "1": {
+ "then": "這是傳統的 (軟體導向) 駭客空間"
+ }
+ },
+ "question": "這邊是駭客空間還是創客空間?"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": " {name}"
+ }
+ },
+ "render": "駭客空間"
+ }
+ },
"hydrant": {
"description": "顯示消防栓的地圖圖層。",
"name": "消防栓地圖"
+ },
+ "windturbine": {
+ "name": "風機",
+ "presets": {
+ "0": {
+ "title": "風機"
+ }
+ },
+ "tagRenderings": {
+ "turbine-diameter": {
+ "question": "這個風力渦輪機的風葉直徑是多少公尺?",
+ "render": "這個風力渦輪機的風葉直徑是 {rotor:diameter} 公尺。"
+ },
+ "turbine-height": {
+ "question": "這個風機的總高度是多少 (包括風葉大小) 公尺?",
+ "render": "這風機的總高度 (包括風葉直徑) 是 {height} 公尺。"
+ },
+ "turbine-operator": {
+ "question": "這個風機營業商是?",
+ "render": "這個風機營業商是 {operator}。"
+ },
+ "turbine-output": {
+ "question": "這個風機的電力輸出是多少?(例如 2.3 MW)",
+ "render": "這個風機的電力輸出是 {generator:output:electricity}。"
+ },
+ "turbine-start-date": {
+ "question": "這個風機何時開始營運?",
+ "render": "這個風機從 {start_date} 開始運轉。"
+ }
+ },
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "{name}"
+ }
+ },
+ "render": "風機"
+ },
+ "units": {
+ "0": {
+ "applicableUnits": {
+ "0": {
+ "human": " 百萬瓦"
+ },
+ "1": {
+ "human": " 千瓦"
+ },
+ "2": {
+ "human": " 瓦"
+ },
+ "3": {
+ "human": " 千兆瓦"
+ }
+ }
+ },
+ "1": {
+ "applicableUnits": {
+ "0": {
+ "human": " 公尺"
+ }
+ }
+ }
+ }
}
}
\ No newline at end of file
diff --git a/langs/themes/ca.json b/langs/themes/ca.json
index 27dafa021..4fe033415 100644
--- a/langs/themes/ca.json
+++ b/langs/themes/ca.json
@@ -49,50 +49,6 @@
"title": "Estacions de càrrega"
},
"climbing": {
- "layers": {
- "0": {
- "tagRenderings": {
- "climbing_club-name": {
- "render": "{name}"
- }
- }
- },
- "1": {
- "tagRenderings": {
- "name": {
- "render": "{name}"
- }
- }
- },
- "2": {
- "tagRenderings": {
- "Name": {
- "render": "{name}"
- }
- }
- },
- "3": {
- "tagRenderings": {
- "name": {
- "render": "{name}"
- }
- },
- "title": {
- "mappings": {
- "2": {
- "then": "Llocs d'escalada"
- }
- }
- }
- },
- "4": {
- "tagRenderings": {
- "climbing-opportunity-name": {
- "render": "{name}"
- }
- }
- }
- },
"overrideAll": {
"tagRenderings+": {
"2": {
@@ -203,29 +159,6 @@
},
"title": "Botigues de patates"
},
- "hackerspaces": {
- "layers": {
- "0": {
- "tagRenderings": {
- "hackerspaces-opening_hours": {
- "mappings": {
- "0": {
- "then": "Obert 24/7"
- }
- },
- "render": "{opening_hours_table()}"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": " {name}"
- }
- }
- }
- }
- }
- },
"maps": {
"title": "Un mapa de mapes"
},
@@ -239,42 +172,6 @@
"title": "Torres d'observació"
},
"openwindpowermap": {
- "layers": {
- "0": {
- "title": {
- "mappings": {
- "0": {
- "then": "{name}"
- }
- }
- },
- "units": {
- "0": {
- "applicableUnits": {
- "0": {
- "human": " megavats"
- },
- "1": {
- "human": " quilovats"
- },
- "2": {
- "human": " vats"
- },
- "3": {
- "human": " gigavats"
- }
- }
- },
- "1": {
- "applicableUnits": {
- "0": {
- "human": " metre"
- }
- }
- }
- }
- }
- },
"title": "OpenWindPowerMap"
},
"personal": {
diff --git a/langs/themes/de.json b/langs/themes/de.json
index 25b9cc7e1..98f62021a 100644
--- a/langs/themes/de.json
+++ b/langs/themes/de.json
@@ -269,196 +269,6 @@
"climbing": {
"description": "Eine Karte mit Klettermöglichkeiten wie Kletterhallen, Kletterparks oder Felsen.",
"descriptionTail": "kletterspots.de wird betrieben von Christian Neumann. Bitte melden Sie sich, wenn Sie Feedback oder Fragen haben.
Das Projekt nutzt OpenStreetMap Daten und basiert auf der freien Software MapComplete.
",
- "layers": {
- "0": {
- "description": "Ein Kletterverein oder -organisation",
- "name": "Klettervereine",
- "presets": {
- "0": {
- "description": "Ein Kletterverein",
- "title": "eine kletterverein"
- },
- "1": {
- "description": "Eine Organisation, die sich mit dem Klettern beschäftigt",
- "title": "Eine Kletterorganisation"
- }
- },
- "tagRenderings": {
- "climbing_club-name": {
- "question": "Wie lautet der Name dieses Vereins oder Organisation?",
- "render": "{name}"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "Kletter-Organisation"
- }
- },
- "render": "Kletterverein"
- }
- },
- "1": {
- "description": "Eine Kletterhalle",
- "name": "Kletterhallen",
- "tagRenderings": {
- "name": {
- "question": "Wie heißt diese Kletterhalle?",
- "render": "{name}"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "Kletterhalle {name}"
- }
- },
- "render": "Kletterhalle"
- }
- },
- "2": {
- "name": "Kletterrouten",
- "presets": {
- "0": {
- "title": "eine kletterroute"
- }
- },
- "tagRenderings": {
- "Bolts": {
- "mappings": {
- "0": {
- "then": "Auf dieser Kletterroute sind keine Haken vorhanden"
- },
- "1": {
- "then": "Auf dieser Kletterroute sind keine Haken vorhanden"
- }
- },
- "question": "Wie viele Haken gibt es auf dieser Kletterroute bevor der Umlenker bzw. Standhaken erreicht ist?",
- "render": "Diese Kletterroute hat {climbing:bolts} Haken"
- },
- "Difficulty": {
- "question": "Wie hoch ist der Schwierigkeitsgrad dieser Kletterroute nach dem französisch/belgischen System?",
- "render": "Die Schwierigkeit ist {climbing:grade:french} entsprechend des französisch/belgischen Systems"
- },
- "Length": {
- "question": "Wie lang ist diese Kletterroute (in Metern)?",
- "render": "Diese Route ist {canonical(climbing:length)} lang"
- },
- "Name": {
- "mappings": {
- "0": {
- "then": "Diese Kletterroute hat keinen Namen"
- }
- },
- "question": "Wie heißt diese Kletterroute?",
- "render": "{name}"
- },
- "Rock type": {
- "render": "Der Gesteinstyp ist {_embedding_features_with_rock:rock}, wie auf dem umgebenden Felsen angegeben"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "Kleterroute {name}"
- }
- },
- "render": "Kleterroute"
- }
- },
- "3": {
- "description": "Eine Klettergelegenheit",
- "name": "Klettermöglichkeiten",
- "presets": {
- "0": {
- "description": "Eine Klettergelegenheit",
- "title": "eine klettermöglichkeit"
- }
- },
- "tagRenderings": {
- "Contained routes hist": {
- "render": "Schwierigkeitsübersicht
{histogram(_difficulty_hist)}"
- },
- "Contained routes length hist": {
- "render": "Längenübersicht
{histogram(_length_hist)}"
- },
- "Contained_climbing_routes": {
- "render": " Enthält {_contained_climbing_routes_count} Routen
{_contained_climbing_routes}
"
- },
- "Rock type (crag/rock/cliff only)": {
- "mappings": {
- "0": {
- "then": "Kalkstein"
- }
- },
- "question": "Welchen Gesteinstyp gibt es hier?",
- "render": "Der Gesteinstyp ist {rock}"
- },
- "Type": {
- "mappings": {
- "0": {
- "then": "Ein Kletterfelsen - ein einzelner Felsen oder eine Klippe mit einer oder wenigen Kletterrouten, die ohne Seil sicher bestiegen werden können"
- },
- "1": {
- "then": "Ein Kletterfelsen - ein einzelner Fels oder eine Klippe mit mindestens einigen Kletterrouten"
- }
- }
- },
- "name": {
- "mappings": {
- "0": {
- "then": "Diese Klettergelegenheit hat keinen Namen"
- }
- },
- "question": "Wie heißt diese Klettergelegenheit?",
- "render": "{name}"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "Klettergarten {name}"
- },
- "1": {
- "then": "Klettergebiet {name}"
- },
- "2": {
- "then": "Klettergebiet"
- },
- "3": {
- "then": "Klettermöglichkeit {name}"
- }
- },
- "render": "Klettermöglichkeit"
- }
- },
- "4": {
- "description": "Eine Klettergelegenheit?",
- "name": "Klettermöglichkeiten?",
- "tagRenderings": {
- "climbing-opportunity-name": {
- "render": "{name}"
- },
- "climbing-possible": {
- "mappings": {
- "0": {
- "then": "Hier kann geklettert werden"
- },
- "1": {
- "then": "Hier kann nicht geklettert werden"
- },
- "2": {
- "then": "Hier kann nicht geklettert werden"
- }
- },
- "question": "Kann hier geklettert werden?"
- }
- },
- "title": {
- "render": "Klettermöglichkeit?"
- }
- }
- },
"overrideAll": {
"tagRenderings+": {
"0": {
@@ -906,71 +716,6 @@
},
"hackerspaces": {
"description": "Auf dieser Karte können Sie Hackerspaces sehen, einen neuen Hackerspace hinzufügen oder Daten direkt aktualisieren",
- "layers": {
- "0": {
- "description": "Hackerspace",
- "name": "Hackerspaces",
- "presets": {
- "0": {
- "description": "Ein Hackerspace ist ein Ort, an dem sich Menschen treffen, die sich für Software interessieren",
- "title": "eine hackerspace"
- },
- "1": {
- "description": "Ein Makerspace ist ein Ort, an dem Heimwerker-Enthusiasten zusammenkommen, um mit Elektronik zu experimentieren, wie Arduino, LED-Strips, ...",
- "title": "eine makerspace"
- }
- },
- "tagRenderings": {
- "hackerspaces-name": {
- "question": "Wie lautet der Name dieses Hackerspace?",
- "render": "Dieser Hackerspace heißt {name}"
- },
- "hackerspaces-opening_hours": {
- "mappings": {
- "0": {
- "then": "durchgehend geöffnet"
- }
- },
- "question": "Wann hat dieser Hackerspace geöffnet?",
- "render": "{opening_hours_table()}"
- },
- "hackerspaces-start_date": {
- "question": "Wann wurde dieser Hackerspace gegründet?",
- "render": "Dieser Hackerspace wurde gegründet am {start_date}"
- },
- "hs-club-mate": {
- "mappings": {
- "0": {
- "then": "In diesem Hackerspace gibt es Club Mate"
- },
- "1": {
- "then": "In diesem Hackerspace gibt es kein Club Mate"
- }
- },
- "question": "Gibt es in diesem Hackerspace Club Mate?"
- },
- "is_makerspace": {
- "mappings": {
- "0": {
- "then": "Dies ist ein Makerspace"
- },
- "1": {
- "then": "Dies ist ein traditioneller (softwareorientierter) Hackerspace"
- }
- },
- "question": "Ist dies ein Hackerspace oder ein Makerspace?"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": " {name}"
- }
- },
- "render": "Hackerspace"
- }
- }
- },
"shortDescription": "Eine Karte von Hackerspaces",
"title": "Hackerspaces"
},
@@ -1062,71 +807,6 @@
},
"openwindpowermap": {
"description": "Eine Karte zum Anzeigen und Bearbeiten von Windkraftanlagen.",
- "layers": {
- "0": {
- "name": "Windräder",
- "presets": {
- "0": {
- "title": "ein Windrad"
- }
- },
- "tagRenderings": {
- "turbine-diameter": {
- "question": "Wie groß ist der Rotordurchmesser der Windturbine in Meter?",
- "render": "Der Rotordurchmesser der Windturbine ist {rotor:diameter} Meter."
- },
- "turbine-height": {
- "question": "Wie hoch ist dieses Windrad (inklusive Rotorradius) in Metern?",
- "render": "Die Gesamthöhe dieses Windrads beträgt (einschließlich Rotorradius) {height} Meter."
- },
- "turbine-operator": {
- "question": "Wer betreibt das Windrads?",
- "render": "Die Windturbine wird betrieben von {operator}."
- },
- "turbine-output": {
- "question": "Wieviel Strom erzeugt das Windrad? (z.B. 2.3MW)",
- "render": "Das Windrad erzeugt {generator:output:electricity} Strom."
- },
- "turbine-start-date": {
- "question": "Wann wurde das Windrad in Betrieb genommen?",
- "render": "Das Windrad wurde am {start_date} in Betrieb genommen."
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "{name}"
- }
- },
- "render": "Windrad"
- },
- "units": {
- "0": {
- "applicableUnits": {
- "0": {
- "human": " Megawatt"
- },
- "1": {
- "human": " Kilowatt"
- },
- "2": {
- "human": " Watt"
- },
- "3": {
- "human": " Gigawatt"
- }
- }
- },
- "1": {
- "applicableUnits": {
- "0": {
- "human": " Meter"
- }
- }
- }
- }
- }
- },
"title": "Freie Windenergie-Karte"
},
"parkings": {
diff --git a/langs/themes/en.json b/langs/themes/en.json
index 80a08d43f..58279b6f6 100644
--- a/langs/themes/en.json
+++ b/langs/themes/en.json
@@ -269,196 +269,6 @@
"climbing": {
"description": "On this map you will find various climbing opportunities such as climbing gyms, bouldering halls and rocks in nature.",
"descriptionTail": "The climbing map was originally made by Christian Neumann. Please get in touch if you have feedback or questions.The project uses data of the OpenStreetMap project.
",
- "layers": {
- "0": {
- "description": "A climbing club or organisation",
- "name": "Climbing club",
- "presets": {
- "0": {
- "description": "A climbing club",
- "title": "a climbing club"
- },
- "1": {
- "description": "An NGO working around climbing",
- "title": "a climbing ngo"
- }
- },
- "tagRenderings": {
- "climbing_club-name": {
- "question": "What is the name of this climbing club or NGO?",
- "render": "{name}"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "Climbing NGO"
- }
- },
- "render": "Climbing club"
- }
- },
- "1": {
- "description": "A climbing gym",
- "name": "Climbing gyms",
- "tagRenderings": {
- "name": {
- "question": "What is the name of this climbing gym?",
- "render": "{name}"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "Climbing gym {name}"
- }
- },
- "render": "Climbing gym"
- }
- },
- "2": {
- "name": "Climbing routes",
- "presets": {
- "0": {
- "title": "a climbing route"
- }
- },
- "tagRenderings": {
- "Bolts": {
- "mappings": {
- "0": {
- "then": "This route is not bolted"
- },
- "1": {
- "then": "This route is not bolted"
- }
- },
- "question": "How many bolts does this route have before reaching the anchor?",
- "render": "This route has {climbing:bolts} bolts"
- },
- "Difficulty": {
- "question": "What is the grade of this climbing route according to the french/belgian system?",
- "render": "The grade is {climbing:grade:french} according to the french/belgian system"
- },
- "Length": {
- "question": "How long is this climbing route (in meters)?",
- "render": "This route is {canonical(climbing:length)} long"
- },
- "Name": {
- "mappings": {
- "0": {
- "then": "This climbing route doesn't have a name"
- }
- },
- "question": "What is the name of this climbing route?",
- "render": "{name}"
- },
- "Rock type": {
- "render": "The rock type is {_embedding_features_with_rock:rock} as stated on the surrounding crag"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "Climbing route {name}"
- }
- },
- "render": "Climbing route"
- }
- },
- "3": {
- "description": "A climbing opportunity",
- "name": "Climbing opportunities",
- "presets": {
- "0": {
- "description": "A climbing opportunity",
- "title": "a climbing opportunity"
- }
- },
- "tagRenderings": {
- "Contained routes hist": {
- "render": "Grades overview
{histogram(_difficulty_hist)}"
- },
- "Contained routes length hist": {
- "render": "Length overview
{histogram(_length_hist)}"
- },
- "Contained_climbing_routes": {
- "render": "Contains {_contained_climbing_routes_count} routes
{_contained_climbing_routes}
"
- },
- "Rock type (crag/rock/cliff only)": {
- "mappings": {
- "0": {
- "then": "Limestone"
- }
- },
- "question": "What is the rock type here?",
- "render": "The rock type is {rock}"
- },
- "Type": {
- "mappings": {
- "0": {
- "then": "A climbing boulder - a single rock or cliff with one or a few climbing routes which can be climbed safely without rope"
- },
- "1": {
- "then": "A climbing crag - a single rock or cliff with at least a few climbing routes"
- }
- }
- },
- "name": {
- "mappings": {
- "0": {
- "then": "This climbing opportunity doesn't have a name"
- }
- },
- "question": "What is the name of this climbing opportunity?",
- "render": "{name}"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "Climbing crag {name}"
- },
- "1": {
- "then": "Climbing area {name}"
- },
- "2": {
- "then": "Climbing site"
- },
- "3": {
- "then": "Climbing opportunity {name}"
- }
- },
- "render": "Climbing opportunity"
- }
- },
- "4": {
- "description": "A climbing opportunity?",
- "name": "Climbing opportunities?",
- "tagRenderings": {
- "climbing-opportunity-name": {
- "render": "{name}"
- },
- "climbing-possible": {
- "mappings": {
- "0": {
- "then": "Climbing is possible here"
- },
- "1": {
- "then": "Climbing is not possible here"
- },
- "2": {
- "then": "Climbing is not possible here"
- }
- },
- "question": "Is climbing possible here?"
- }
- },
- "title": {
- "render": "Climbing opportunity?"
- }
- }
- },
"overrideAll": {
"tagRenderings+": {
"0": {
@@ -906,71 +716,6 @@
},
"hackerspaces": {
"description": "On this map you can see hackerspaces, add a new hackerspace or update data directly",
- "layers": {
- "0": {
- "description": "Hackerspace",
- "name": "Hackerspace",
- "presets": {
- "0": {
- "description": "A hackerspace is an area where people interested in software gather",
- "title": "a hackerspace"
- },
- "1": {
- "description": "A makerspace is a place where DIY-enthusiasts gather to experiment with electronics such as arduino, LEDstrips, ...",
- "title": "a makerspace"
- }
- },
- "tagRenderings": {
- "hackerspaces-name": {
- "question": "What is the name of this hackerspace?",
- "render": "This hackerspace is named {name}"
- },
- "hackerspaces-opening_hours": {
- "mappings": {
- "0": {
- "then": "Opened 24/7"
- }
- },
- "question": "When is this hackerspace opened?",
- "render": "{opening_hours_table()}"
- },
- "hackerspaces-start_date": {
- "question": "When was this hackerspace founded?",
- "render": "This hackerspace was founded at {start_date}"
- },
- "hs-club-mate": {
- "mappings": {
- "0": {
- "then": "This hackerspace serves club mate"
- },
- "1": {
- "then": "This hackerspace does not serve club mate"
- }
- },
- "question": "Does this hackerspace serve Club Mate?"
- },
- "is_makerspace": {
- "mappings": {
- "0": {
- "then": "This is a makerspace"
- },
- "1": {
- "then": "This is a traditional (software oriented) hackerspace"
- }
- },
- "question": "Is this a hackerspace or a makerspace?"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": " {name}"
- }
- },
- "render": "Hackerspace"
- }
- }
- },
"shortDescription": "A map of hackerspaces",
"title": "Hackerspaces"
},
@@ -1062,71 +807,6 @@
},
"openwindpowermap": {
"description": "A map for showing and editing wind turbines.",
- "layers": {
- "0": {
- "name": "wind turbine",
- "presets": {
- "0": {
- "title": "a wind turbine"
- }
- },
- "tagRenderings": {
- "turbine-diameter": {
- "question": "What is the rotor diameter of this wind turbine, in metres?",
- "render": "The rotor diameter of this wind turbine is {rotor:diameter} metres."
- },
- "turbine-height": {
- "question": "What is the total height of this wind turbine (including rotor radius), in metres?",
- "render": "The total height (including rotor radius) of this wind turbine is {height} metres."
- },
- "turbine-operator": {
- "question": "Who operates this wind turbine?",
- "render": "This wind turbine is operated by {operator}."
- },
- "turbine-output": {
- "question": "What is the power output of this wind turbine? (e.g. 2.3 MW)",
- "render": "The power output of this wind turbine is {generator:output:electricity}."
- },
- "turbine-start-date": {
- "question": "When did this wind turbine go into operation?",
- "render": "This wind turbine went into operation on/in {start_date}."
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "{name}"
- }
- },
- "render": "wind turbine"
- },
- "units": {
- "0": {
- "applicableUnits": {
- "0": {
- "human": " megawatts"
- },
- "1": {
- "human": " kilowatts"
- },
- "2": {
- "human": " watts"
- },
- "3": {
- "human": " gigawatts"
- }
- }
- },
- "1": {
- "applicableUnits": {
- "0": {
- "human": " meter"
- }
- }
- }
- }
- }
- },
"title": "OpenWindPowerMap"
},
"parkings": {
diff --git a/langs/themes/eo.json b/langs/themes/eo.json
index 04e1e7d6f..4912597b3 100644
--- a/langs/themes/eo.json
+++ b/langs/themes/eo.json
@@ -41,43 +41,5 @@
},
"maps": {
"title": "Mapo de mapoj"
- },
- "openwindpowermap": {
- "layers": {
- "0": {
- "title": {
- "mappings": {
- "0": {
- "then": "{name}"
- }
- }
- },
- "units": {
- "0": {
- "applicableUnits": {
- "0": {
- "human": " megavatoj"
- },
- "1": {
- "human": " kilovatoj"
- },
- "2": {
- "human": " vatoj"
- },
- "3": {
- "human": " gigavatoj"
- }
- }
- },
- "1": {
- "applicableUnits": {
- "0": {
- "human": " metro"
- }
- }
- }
- }
- }
- }
}
}
\ No newline at end of file
diff --git a/langs/themes/fr.json b/langs/themes/fr.json
index aa6d33211..c87ff74c5 100644
--- a/langs/themes/fr.json
+++ b/langs/themes/fr.json
@@ -255,196 +255,6 @@
"climbing": {
"description": "Cette carte indique les sites d’escalades comme les salles d’escalade ou les sites naturels.",
"descriptionTail": "La carte des sites d'escalade a été créée par Christian Neumann. Merci de le contacter pour des avis ou des questions.Ce projet utilise les données OpenStreetMap.
",
- "layers": {
- "0": {
- "description": "Club ou association d’escalade",
- "name": "Club d’escalade",
- "presets": {
- "0": {
- "description": "Un club d’escalade",
- "title": "une club d’escalade"
- },
- "1": {
- "description": "Une association d’escalade",
- "title": "une association d’escalade"
- }
- },
- "tagRenderings": {
- "climbing_club-name": {
- "question": "Quel est le nom du club ou de l’association ?",
- "render": "{name}"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "Association d’escalade"
- }
- },
- "render": "Club d’escalade"
- }
- },
- "1": {
- "description": "Une salle d’escalade",
- "name": "Salle d’escalade",
- "tagRenderings": {
- "name": {
- "question": "Quel est le nom de la salle d’escalade ?",
- "render": "{name}"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "Salle d’escalade {name}"
- }
- },
- "render": "Salle d’escalade"
- }
- },
- "2": {
- "name": "Voies d’escalade",
- "presets": {
- "0": {
- "title": "une voie d’escalade"
- }
- },
- "tagRenderings": {
- "Bolts": {
- "mappings": {
- "0": {
- "then": "Cette voie n’a pas de prises"
- },
- "1": {
- "then": "Cette voie n’a pas de prises"
- }
- },
- "question": "Combien de prises cette voie possède avant d’atteindre la moulinette ?",
- "render": "Cette voie a {climbing:bolts} prises"
- },
- "Difficulty": {
- "question": "Quelle est la difficulté de cette voie selon le système franco-belge ?",
- "render": "Selon le système franco-belge, la difficulté de cette voie est de {climbing:grade:french}"
- },
- "Length": {
- "question": "Quelle est la longueur de cette voie (en mètres) ?",
- "render": "Cette voie fait {canonical(climbing:length)} de long"
- },
- "Name": {
- "mappings": {
- "0": {
- "then": "Cette voie n’a pas de nom"
- }
- },
- "question": "Quel est le nom de cette voie d’escalade ?",
- "render": "{name}"
- },
- "Rock type": {
- "render": "Le type de roche est {_embedding_features_with_rock:rock} selon le mur"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "Voie d’escalade {name}"
- }
- },
- "render": "Voie d’escalade"
- }
- },
- "3": {
- "description": "Opportunité d’escalade",
- "name": "Opportunité d’escalade",
- "presets": {
- "0": {
- "description": "Opportunité d’escalade",
- "title": "une opportunité d’escalade"
- }
- },
- "tagRenderings": {
- "Contained routes hist": {
- "render": "Résumé des difficultés
{histogram(_difficulty_hist)}"
- },
- "Contained routes length hist": {
- "render": "Résumé de longueur
{histogram(_length_hist)}"
- },
- "Contained_climbing_routes": {
- "render": "Contient {_contained_climbing_routes_count} voies
{_contained_climbing_routes}
"
- },
- "Rock type (crag/rock/cliff only)": {
- "mappings": {
- "0": {
- "then": "Calcaire"
- }
- },
- "question": "Quel est le type de roche ?",
- "render": "La roche est du {rock}"
- },
- "Type": {
- "mappings": {
- "0": {
- "then": "Rocher d’escalade, rocher avec une ou peu de voie permettant d’escalader sans corde"
- },
- "1": {
- "then": "Mur d’escalade, rocher avec plusieurs voies d’escalades"
- }
- }
- },
- "name": {
- "mappings": {
- "0": {
- "then": "Ce site n’a pas de nom"
- }
- },
- "question": "Quel est le nom de ce site ?",
- "render": "{name}"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "Mur d’escalade {name}"
- },
- "1": {
- "then": "Zone d’escalade {name}"
- },
- "2": {
- "then": "Site d’escalade"
- },
- "3": {
- "then": "Opportunité d’escalade {name}"
- }
- },
- "render": "Opportunité d’escalade"
- }
- },
- "4": {
- "description": "Opportunité d’escalade ?",
- "name": "Opportunités d’escalade ?",
- "tagRenderings": {
- "climbing-opportunity-name": {
- "render": "{name}"
- },
- "climbing-possible": {
- "mappings": {
- "0": {
- "then": "Escalader est possible"
- },
- "1": {
- "then": "Escalader n’est pas possible"
- },
- "2": {
- "then": "Escalader n’est pas possible"
- }
- },
- "question": "Est-il possible d’escalader ici ?"
- }
- },
- "title": {
- "render": "Opportunité d’escalade ?"
- }
- }
- },
"overrideAll": {
"tagRenderings+": {
"0": {
@@ -704,71 +514,6 @@
},
"openwindpowermap": {
"description": "Une carte indiquant les éoliennes et permettant leur édition.",
- "layers": {
- "0": {
- "name": "Éolienne",
- "presets": {
- "0": {
- "title": "une éolienne"
- }
- },
- "tagRenderings": {
- "turbine-diameter": {
- "question": "Quel est le diamètre du rotor en mètres ?",
- "render": "Le diamètre du rotor est de {rotor:diameter} mètres."
- },
- "turbine-height": {
- "question": "Quelle est la hauteur totale de l’éolienne en mètres, pales incluses ?",
- "render": "La hauteur totale, incluant les pales, est de {height} mètres."
- },
- "turbine-operator": {
- "question": "Qui est l’exploitant de cette éolienne ?",
- "render": "Cette éolienne est opérée par {operator}."
- },
- "turbine-output": {
- "question": "Quel est la puissance générée par cette éolienne ?",
- "render": "La puissance générée par cette éolienne est de {generator:output:electricity}."
- },
- "turbine-start-date": {
- "question": "Depuis quand l’éolienne est-elle en fonctionnement ?",
- "render": "L’éolienne est active depuis {start_date}."
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "{name}"
- }
- },
- "render": "éolienne"
- },
- "units": {
- "0": {
- "applicableUnits": {
- "0": {
- "human": " megawatts"
- },
- "1": {
- "human": " kilowatts"
- },
- "2": {
- "human": " watts"
- },
- "3": {
- "human": " gigawatts"
- }
- }
- },
- "1": {
- "applicableUnits": {
- "0": {
- "human": " mètres"
- }
- }
- }
- }
- }
- },
"title": "OpenWindPowerMap"
},
"personal": {
diff --git a/langs/themes/hu.json b/langs/themes/hu.json
index 67e3d2e82..c7e3fc42d 100644
--- a/langs/themes/hu.json
+++ b/langs/themes/hu.json
@@ -93,35 +93,6 @@
"climbing": {
"description": "Ezen a térképen különböző mászási lehetőségeket talál, például falmászótermeket, bouldertermeket és sziklákat a természetben.",
"descriptionTail": "A mászótérképet eredetileg Christian Neumann készítette. Ha észrevétele vagy kérdése van, kérjük, vele lépjen kapcsolatba. A projekt az OpenStreetMap adatait használja
",
- "layers": {
- "0": {
- "description": "Mászóegyesület vagy -szervezet",
- "name": "Mászóegyesület",
- "presets": {
- "0": {
- "description": "Egy mászóegyesület",
- "title": "Mászóegyesület"
- },
- "1": {
- "description": "Mászással foglalkozó civil szervezet",
- "title": "Mászószervezet"
- }
- },
- "tagRenderings": {
- "climbing_club-name": {
- "question": "Mi a neve ennek a mászóegyesületnek vagy szervezetnek?",
- "render": "{name}"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "Mászószervezet"
- }
- }
- }
- }
- },
"overrideAll": {
"tagRenderings+": {
"9": {
@@ -336,43 +307,6 @@
},
"hackerspaces": {
"description": "Ezen a térképen hackerspace-ek láthatók, új hackerspace-eket lehet fölrajzolni vagy meglévők adatait frissíteni",
- "layers": {
- "0": {
- "description": "Hackerspace",
- "name": "Hackerspace",
- "presets": {
- "0": {
- "description": "A hackerspace egy olyan hely, ahol szoftverek iránt érdeklő emberek találkoznak",
- "title": "Hackerspace"
- },
- "1": {
- "description": "A makerspace olyan hely, ahol a barkácsolás szerelmesei találkoznak, hogy olyan elektronikai eszközökkel kísérletezzenek, mint például az Arduino vagy a LEDstrips.",
- "title": "Makerspace"
- }
- },
- "tagRenderings": {
- "is_makerspace": {
- "mappings": {
- "0": {
- "then": "Ez egy makerspace"
- },
- "1": {
- "then": "Ez egy hagyományos (szoftverekkel foglalkozó) hackerspace"
- }
- },
- "question": "Ez hackerspace vagy makerspace?"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": " {name}"
- }
- },
- "render": "Hackerspace"
- }
- }
- },
"shortDescription": "Hackerspace-ek térképe",
"title": "Hackerspace-ek"
},
@@ -392,66 +326,6 @@
},
"openwindpowermap": {
"description": "Szélerőművek megjelenítésére és szerkesztésére szolgáló térkép.",
- "layers": {
- "0": {
- "name": "Szélerőmű",
- "presets": {
- "0": {
- "title": "Szélerőmű"
- }
- },
- "tagRenderings": {
- "turbine-diameter": {
- "question": "Hány méter a rotorátmérője ennek a szélturbinának?",
- "render": "A szélturbina rotorátmérője: {rotor:diameter} méter."
- },
- "turbine-height": {
- "question": "Hány méter a szélerőmű teljes magassága (a rotor sugarával együtt)?",
- "render": "A szélerőmű teljes (rotor sugarával együtt számított) magassága: {height} méter."
- },
- "turbine-operator": {
- "question": "Ki üzemelteti ezt a szélturbinát?",
- "render": "Ennek a szélerőműnek az üzemeltetője: {operator}."
- },
- "turbine-output": {
- "question": "Mekkora a teljesítménye ennek a szélturbinának? (pl. 2.3 MW)",
- "render": "A szélerőmű teljesítménye: {generator:output:electricity}."
- },
- "turbine-start-date": {
- "question": "Mikor helyezték üzembe ezt a szélerőművet?",
- "render": "A szélerőmű üzembe helyezése: {start_date}."
- }
- },
- "title": {
- "render": "szélerőmű"
- },
- "units": {
- "0": {
- "applicableUnits": {
- "0": {
- "human": " megawatt"
- },
- "1": {
- "human": " kilowatt"
- },
- "2": {
- "human": " watt"
- },
- "3": {
- "human": " gigawatt"
- }
- }
- },
- "1": {
- "applicableUnits": {
- "0": {
- "human": " méter"
- }
- }
- }
- }
- }
- },
"title": "OpenWindPowerMap"
},
"parkings": {
diff --git a/langs/themes/id.json b/langs/themes/id.json
index f78f2a16e..addb20850 100644
--- a/langs/themes/id.json
+++ b/langs/themes/id.json
@@ -108,96 +108,7 @@
"charging_stations": {
"title": "Stasiun pengisian daya"
},
- "climbing": {
- "layers": {
- "0": {
- "tagRenderings": {
- "climbing_club-name": {
- "render": "{name}"
- }
- }
- },
- "1": {
- "tagRenderings": {
- "name": {
- "render": "{name}"
- }
- }
- },
- "2": {
- "tagRenderings": {
- "Name": {
- "render": "{name}"
- }
- }
- },
- "3": {
- "tagRenderings": {
- "name": {
- "render": "{name}"
- }
- }
- },
- "4": {
- "tagRenderings": {
- "climbing-opportunity-name": {
- "render": "{name}"
- }
- }
- }
- }
- },
"openwindpowermap": {
- "layers": {
- "0": {
- "tagRenderings": {
- "turbine-operator": {
- "render": "Turbin angin ini dioperasikan oleh {operator}."
- },
- "turbine-output": {
- "question": "Berapa output daya dari turbin angin ini? (misalnya 2,3 MW)",
- "render": "Output daya dari turbin angin ini adalah {generator:output:electricity}."
- },
- "turbine-start-date": {
- "question": "Kapan turbin angin ini mulai beroperasi?",
- "render": "Turbin angin ini mulai beroperasi pada/dalam {start_date}."
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "{name}"
- }
- },
- "render": "turbin angin"
- },
- "units": {
- "0": {
- "applicableUnits": {
- "0": {
- "human": " megawat"
- },
- "1": {
- "human": " kilowat"
- },
- "2": {
- "human": " watt"
- },
- "3": {
- "human": " gigawatt"
- }
- }
- },
- "1": {
- "applicableUnits": {
- "0": {
- "human": " meter"
- }
- }
- }
- }
- }
- },
"title": "OpenWindPowerMap"
},
"parkings": {
diff --git a/langs/themes/it.json b/langs/themes/it.json
index c1bd03d8e..b39d5b450 100644
--- a/langs/themes/it.json
+++ b/langs/themes/it.json
@@ -263,196 +263,6 @@
"climbing": {
"description": "In questa cartina puoi trovare vari luoghi per arrampicata come ad esempio palestre di arrampicata, sale di pratica e rocce naturali.",
"descriptionTail": "La cartina di arrampicata è stata originariamente creata da Christian Neumann. Si prega di scrivere qua se si hanno commenti o domande da fare.Il progetto usa i dati del progetto OpenStreetMap.
",
- "layers": {
- "0": {
- "description": "Un club o associazione di arrampacata",
- "name": "Club di arrampicata",
- "presets": {
- "0": {
- "description": "Un club di arrampicata",
- "title": "una club di arrampicata"
- },
- "1": {
- "description": "Un’associazione che ha a che fare con l’arrampicata",
- "title": "una associazione di arrampicata"
- }
- },
- "tagRenderings": {
- "climbing_club-name": {
- "question": "Qual è il nome di questo club o associazione di arrampicata?",
- "render": "{name}"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "Associazione di arrampicata"
- }
- },
- "render": "Club di arrampicata"
- }
- },
- "1": {
- "description": "Una palestra di arrampicata",
- "name": "Palestre di arrampicata",
- "tagRenderings": {
- "name": {
- "question": "Qual è il nome di questa palestra di arrampicata?",
- "render": "{name}"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "Palestra di arrampicata {name}"
- }
- },
- "render": "Palestra di arrampicata"
- }
- },
- "2": {
- "name": "Vie di arrampicata",
- "presets": {
- "0": {
- "title": "una via di arrampicata"
- }
- },
- "tagRenderings": {
- "Bolts": {
- "mappings": {
- "0": {
- "then": "In questo percorso non sono presenti bulloni"
- },
- "1": {
- "then": "In questo percorso non sono presenti bulloni"
- }
- },
- "question": "Quanti bulloni sono presenti in questo percorso prima di arrivare alla moulinette?",
- "render": "Questo percorso ha {climbing:bolts} bulloni"
- },
- "Difficulty": {
- "question": "Qual è la difficoltà di questa via di arrampicata nel sistema francese/belga?",
- "render": "Il grado di difficoltà è {climbing:grade:french} nel sistema francese/belga"
- },
- "Length": {
- "question": "Quanto è lunga questa via di arrampicata (in metri)?",
- "render": "Questo percorso è lungo {canonical(climbing:length)}"
- },
- "Name": {
- "mappings": {
- "0": {
- "then": "Questa via di arrampicata non ha un nome"
- }
- },
- "question": "Come si chiama questa via di arrampicata?",
- "render": "{name}"
- },
- "Rock type": {
- "render": "Il tipo di roccia è {_embedding_features_with_rock:rock} come dichiarato sul muro circostante"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "Via di arrampicata {name}"
- }
- },
- "render": "Via di arrampicata"
- }
- },
- "3": {
- "description": "Un’opportunità di arrampicata",
- "name": "Opportunità di arrampicata",
- "presets": {
- "0": {
- "description": "Un’opportunità di arrampicata",
- "title": "una opportunità di arrampicata"
- }
- },
- "tagRenderings": {
- "Contained routes hist": {
- "render": "Riassunto delle difficoltà
{histogram(_difficulty_hist)}"
- },
- "Contained routes length hist": {
- "render": "Riassunto della lunghezza
{histogram(_length_hist)}"
- },
- "Contained_climbing_routes": {
- "render": "Contiene {_contained_climbing_routes_count} vie
{_contained_climbing_routes}
"
- },
- "Rock type (crag/rock/cliff only)": {
- "mappings": {
- "0": {
- "then": "Calcare"
- }
- },
- "question": "Qual è il tipo di roccia qua?",
- "render": "Il tipo di roccia è {rock}"
- },
- "Type": {
- "mappings": {
- "0": {
- "then": "Un masso per arrampicata (una singola roccia o falesia con una o poche vie di arrampicata che possono essere scalate in sicurezza senza una corda)"
- },
- "1": {
- "then": "Un muro da arrampicata (un singolo masso o falesia con almeno qualche via per arrampicata)"
- }
- }
- },
- "name": {
- "mappings": {
- "0": {
- "then": "Questa opportunità di arrampicata non ha un nome"
- }
- },
- "question": "Qual è il nome di questa opportunità di arrampicata?",
- "render": "{name}"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "Muro da arrampicata {name}"
- },
- "1": {
- "then": "Area di arrampicata {name}"
- },
- "2": {
- "then": "Sito di arrampicata"
- },
- "3": {
- "then": "Opportunità di arrampicata {name}"
- }
- },
- "render": "Opportunità di arrampicata"
- }
- },
- "4": {
- "description": "Un’opportunità di arrampicata?",
- "name": "Opportunità di arrampicata?",
- "tagRenderings": {
- "climbing-opportunity-name": {
- "render": "{name}"
- },
- "climbing-possible": {
- "mappings": {
- "0": {
- "then": "È possibile arrampicarsi qua"
- },
- "1": {
- "then": "Non è possibile arrampicarsi qua"
- },
- "2": {
- "then": "Non è possibile arrampicarsi qua"
- }
- },
- "question": "È possibile arrampicarsi qua?"
- }
- },
- "title": {
- "render": "Opportunità di arrampicata?"
- }
- }
- },
"overrideAll": {
"tagRenderings+": {
"0": {
@@ -806,71 +616,6 @@
},
"openwindpowermap": {
"description": "Una cartina per la visione e la modifica delle turbine eoliche.",
- "layers": {
- "0": {
- "name": "pala eolica",
- "presets": {
- "0": {
- "title": "una pala eolica"
- }
- },
- "tagRenderings": {
- "turbine-diameter": {
- "question": "Qual è il diametro (in metri) del rotore di questa pala eolica?",
- "render": "Il diametro del rotore di questa pala eolica è di {rotor:diameter} metri."
- },
- "turbine-height": {
- "question": "Qual è l’altezza (in metri e raggio del rotore incluso) di questa pala eolica?",
- "render": "L’altezza totale (raggio del rotore incluso) di questa pala eolica è di {height} metri."
- },
- "turbine-operator": {
- "question": "Chi gestisce questa pala eolica?",
- "render": "Questa pala eolica è gestita da {operator}."
- },
- "turbine-output": {
- "question": "Quant’è la potenza generata da questa pala eolica? (ad es. 2.3 MW)",
- "render": "La potenza generata da questa pala eolica è {generator:output:electricity}."
- },
- "turbine-start-date": {
- "question": "Quando è entrata in funzione questa pala eolica?",
- "render": "Questa pala eolica è entrata in funzione in data {start_date}."
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "{name}"
- }
- },
- "render": "pala eolica"
- },
- "units": {
- "0": {
- "applicableUnits": {
- "0": {
- "human": " megawatt"
- },
- "1": {
- "human": " kilowatt"
- },
- "2": {
- "human": " watt"
- },
- "3": {
- "human": " gigawatt"
- }
- }
- },
- "1": {
- "applicableUnits": {
- "0": {
- "human": " metri"
- }
- }
- }
- }
- }
- },
"title": "OpenWindPowerMap"
},
"parkings": {
diff --git a/langs/themes/ja.json b/langs/themes/ja.json
index f0a7a60c0..35b0d41ef 100644
--- a/langs/themes/ja.json
+++ b/langs/themes/ja.json
@@ -255,132 +255,6 @@
"climbing": {
"description": "この地図には、自然の中のクライミングジム、ボルダリングホール、岩など、さまざまなクライミングの機会があります。",
"descriptionTail": "登山地図はもともと Christian Neumann によって作成されたものです。フィードバックや質問がありましたら、ご連絡ください。このプロジェクトでは、OpenStreetMapプロジェクトのデータを使用します。
",
- "layers": {
- "0": {
- "description": "クライミングクラブや団体",
- "name": "クライミングクラブ",
- "presets": {
- "0": {
- "description": "クライミングクラブ",
- "title": "クライミングクラブ"
- },
- "1": {
- "description": "登山に関わるNGO",
- "title": "クライミングNGO"
- }
- },
- "tagRenderings": {
- "climbing_club-name": {
- "question": "この登山クラブやNGOの名前は何ですか?",
- "render": "{name}"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "クライミングNGO"
- }
- },
- "render": "クライミングクラブ"
- }
- },
- "1": {
- "description": "クライミングジム",
- "name": "クライミングジム",
- "tagRenderings": {
- "name": {
- "question": "このクライミングジムは何という名前ですか?",
- "render": "{name}"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "クライミングジム{name}"
- }
- },
- "render": "クライミングジム"
- }
- },
- "2": {
- "name": "登坂ルート",
- "tagRenderings": {
- "Difficulty": {
- "render": "フランス/ベルギーのランク評価システムによると、{climbing:grade:french}の困難度です"
- },
- "Length": {
- "render": "このルート長は、 {canonical(climbing:length)} メーターです"
- },
- "Name": {
- "mappings": {
- "0": {
- "then": "この登坂ルートには名前がありません"
- }
- },
- "question": "この登坂ルートの名前は何ですか?",
- "render": "{name}"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "登坂ルート{name}"
- }
- },
- "render": "登坂ルート"
- }
- },
- "3": {
- "description": "登坂教室",
- "name": "登坂教室",
- "presets": {
- "0": {
- "description": "登坂教室",
- "title": "登坂教室"
- }
- },
- "tagRenderings": {
- "name": {
- "mappings": {
- "0": {
- "then": "この登坂教室には名前がついていない"
- }
- },
- "question": "この登坂教室の名前は何ですか?",
- "render": "{name}"
- }
- },
- "title": {
- "render": "登坂教室"
- }
- },
- "4": {
- "description": "登坂教室?",
- "name": "登坂教室?",
- "tagRenderings": {
- "climbing-opportunity-name": {
- "render": "{name}"
- },
- "climbing-possible": {
- "mappings": {
- "0": {
- "then": "ここでは登ることができる"
- },
- "1": {
- "then": "ここでは登ることができない"
- },
- "2": {
- "then": "ここでは登ることができない"
- }
- },
- "question": "ここで登坂はできますか?"
- }
- },
- "title": {
- "render": "登坂教室?"
- }
- }
- },
"overrideAll": {
"tagRenderings+": {
"0": {
diff --git a/langs/themes/nb_NO.json b/langs/themes/nb_NO.json
index 57c11dd8a..1d541c65a 100644
--- a/langs/themes/nb_NO.json
+++ b/langs/themes/nb_NO.json
@@ -66,77 +66,6 @@
"title": "Ladestasjoner"
},
"climbing": {
- "layers": {
- "0": {
- "description": "En klatreklubb eller organisasjoner",
- "name": "Klatreklubb",
- "presets": {
- "0": {
- "description": "En klatreklubb",
- "title": "en klatreklubb"
- }
- },
- "title": {
- "render": "Klatreklubb"
- }
- },
- "2": {
- "name": "Klatreruter",
- "tagRenderings": {
- "Length": {
- "question": "Hvor mange meter er klatreruten?",
- "render": "Denne ruten er {canonical(climbing:length)} lang"
- },
- "Name": {
- "mappings": {
- "0": {
- "then": "Denne klatreruten har ikke noe navn"
- }
- },
- "question": "Hva er navnet på denne klatreruten?",
- "render": "{name}"
- }
- },
- "title": {
- "render": "Klatrerute"
- }
- },
- "3": {
- "description": "En klatremulighet",
- "presets": {
- "0": {
- "description": "En klatremulighet",
- "title": "en klatremulighet"
- }
- },
- "title": {
- "render": "Klatremulighet"
- }
- },
- "4": {
- "description": "En klatremulighet?",
- "name": "Klatremuligheter?",
- "tagRenderings": {
- "climbing-possible": {
- "mappings": {
- "0": {
- "then": "Klatring er mulig her"
- },
- "1": {
- "then": "Klatring er ikke mulig her"
- },
- "2": {
- "then": "Klatring er ikke mulig her"
- }
- },
- "question": "Er klatring mulig her?"
- }
- },
- "title": {
- "render": "Klatremulighet?"
- }
- }
- },
"overrideAll": {
"tagRenderings+": {
"7": {
@@ -240,21 +169,6 @@
"maps": {
"title": "Et kart over kart"
},
- "openwindpowermap": {
- "layers": {
- "0": {
- "units": {
- "0": {
- "applicableUnits": {
- "1": {
- "human": " kilowatt"
- }
- }
- }
- }
- }
- }
- },
"parkings": {
"shortDescription": "Dette kartet viser forskjellige parkeringsplasser",
"title": "Parkering"
diff --git a/langs/themes/nl.json b/langs/themes/nl.json
index 3b2d09d06..deab1b60c 100644
--- a/langs/themes/nl.json
+++ b/langs/themes/nl.json
@@ -275,156 +275,6 @@
"climbing": {
"description": "Op deze kaart vind je verschillende klimgelegenheden, zoals klimzalen, bolderzalen en klimmen in de natuur",
"descriptionTail": "De klimkaart is oorspronkelijk gemaakt door Christian Neumann op kletterspots.de.",
- "layers": {
- "0": {
- "description": "Een klimclub of organisatie",
- "name": "Klimclub",
- "presets": {
- "0": {
- "description": "Een klimclub",
- "title": "een klimclub"
- },
- "1": {
- "description": "Een VZW die werkt rond klimmen",
- "title": "een een klimorganisatie"
- }
- },
- "tagRenderings": {
- "climbing_club-name": {
- "question": "Wat is de naam van deze klimclub?",
- "render": "{name}"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "Klimorganisatie"
- }
- },
- "render": "Klimclub"
- }
- },
- "1": {
- "description": "Een klimzaal",
- "name": "Klimzalen",
- "tagRenderings": {
- "name": {
- "question": "Wat is de naam van dit Klimzaal?",
- "render": "{name}"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "Klimzaal {name}"
- }
- },
- "render": "Klimzaal"
- }
- },
- "2": {
- "name": "Klimroute",
- "presets": {
- "0": {
- "title": "een klimroute"
- }
- },
- "tagRenderings": {
- "Difficulty": {
- "question": "Hoe moeilijk is deze klimroute volgens het Franse/Belgische systeem?",
- "render": "De klimmoeilijkheid is {climbing:grade:french} volgens het Franse/Belgische systeem"
- },
- "Length": {
- "question": "Hoe lang is deze klimroute (in meters)?",
- "render": "Deze klimroute is {canonical(climbing:length)} lang"
- },
- "Name": {
- "mappings": {
- "0": {
- "then": "Deze klimroute heeft geen naam"
- }
- },
- "question": "Hoe heet deze klimroute?",
- "render": "{name}"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "Klimroute {name}"
- }
- },
- "render": "Klimroute"
- }
- },
- "3": {
- "description": "Een klimgelegenheid",
- "name": "Klimgelegenheden",
- "presets": {
- "0": {
- "description": "Een klimgelegenheid",
- "title": "een klimgelegenheid"
- }
- },
- "tagRenderings": {
- "Rock type (crag/rock/cliff only)": {
- "mappings": {
- "0": {
- "then": "Kalksteen"
- }
- }
- },
- "name": {
- "mappings": {
- "0": {
- "then": "Dit Klimgelegenheid heeft geen naam"
- }
- },
- "question": "Wat is de naam van dit Klimgelegenheid?",
- "render": "{name}"
- }
- },
- "title": {
- "mappings": {
- "1": {
- "then": "Klimsite {name}"
- },
- "2": {
- "then": "Klimsite"
- },
- "3": {
- "then": "Klimgelegenheid {name}"
- }
- },
- "render": "Klimgelegenheid"
- }
- },
- "4": {
- "description": "Een klimgelegenheid?",
- "name": "Klimgelegenheiden?",
- "tagRenderings": {
- "climbing-opportunity-name": {
- "render": "{name}"
- },
- "climbing-possible": {
- "mappings": {
- "0": {
- "then": "Klimmen is hier niet toegelaten"
- },
- "1": {
- "then": "Klimmen is hier niet toegelaten"
- },
- "2": {
- "then": "Klimmen is hier niet mogelijk"
- }
- }
- }
- },
- "title": {
- "render": "Klimgelegenheid?"
- }
- }
- },
"overrideAll": {
"tagRenderings+": {
"0": {
@@ -921,44 +771,6 @@
"title": "Uitkijktorens"
},
"openwindpowermap": {
- "layers": {
- "0": {
- "name": "windturbine",
- "presets": {
- "0": {
- "title": "een windturbine"
- }
- },
- "title": {
- "render": "windturbine"
- },
- "units": {
- "0": {
- "applicableUnits": {
- "0": {
- "human": " megawatt"
- },
- "1": {
- "human": " kilowatt"
- },
- "2": {
- "human": " watt"
- },
- "3": {
- "human": " gigawatt"
- }
- }
- },
- "1": {
- "applicableUnits": {
- "0": {
- "human": " meter"
- }
- }
- }
- }
- }
- },
"title": "Windmolens"
},
"parkings": {
diff --git a/langs/themes/ru.json b/langs/themes/ru.json
index 6e5ea55e0..07e2e7290 100644
--- a/langs/themes/ru.json
+++ b/langs/themes/ru.json
@@ -227,58 +227,6 @@
"climbing": {
"description": "На этой карте вы найдете различные возможности для скалолазания, такие как скалодромы, залы для боулдеринга и скалы на природе.",
"descriptionTail": "Создатель карты скалолазания — Christian Neumann. Пожалуйста, пишите если у вас есть отзыв или вопросы.Проект использует данные OpenStreetMap.
",
- "layers": {
- "0": {
- "name": "Клуб скалолазания",
- "presets": {
- "0": {
- "description": "Клуб скалолазания",
- "title": "Клуб скалолазания"
- }
- },
- "tagRenderings": {
- "climbing_club-name": {
- "render": "{name}"
- }
- },
- "title": {
- "render": "Клуб скалолазания"
- }
- },
- "1": {
- "description": "Комплекс скалолазания",
- "name": "Комплексы скалолазания",
- "tagRenderings": {
- "name": {
- "render": "{name}"
- }
- },
- "title": {
- "render": "Комплекс скалолазания"
- }
- },
- "2": {
- "tagRenderings": {
- "Name": {
- "render": "{name}"
- }
- }
- },
- "3": {
- "tagRenderings": {
- "name": {
- "render": "{name}"
- }
- }
- },
- "4": {
- "tagRenderings": {
- "climbing-opportunity-name": {
- "render": "{name}"
- }
- }
- }
- },
"overrideAll": {
"tagRenderings+": {
"0": {
@@ -375,35 +323,6 @@
"title": "Велосипед Ghost"
},
"hackerspaces": {
- "layers": {
- "0": {
- "description": "Хакерспейс",
- "name": "Хакерспейс",
- "presets": {
- "0": {
- "title": "Хакерспейс"
- }
- },
- "tagRenderings": {
- "hackerspaces-opening_hours": {
- "mappings": {
- "0": {
- "then": "Открыто 24/7"
- }
- },
- "render": "{opening_hours_table()}"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": " {name}"
- }
- },
- "render": "Хакерспейс"
- }
- }
- },
"title": "Хакерспейсы"
},
"hailhydrant": {
@@ -418,42 +337,6 @@
"title": "Смотровые башни"
},
"openwindpowermap": {
- "layers": {
- "0": {
- "title": {
- "mappings": {
- "0": {
- "then": "{name}"
- }
- }
- },
- "units": {
- "0": {
- "applicableUnits": {
- "0": {
- "human": " мегаватт"
- },
- "1": {
- "human": " киловатт"
- },
- "2": {
- "human": " ватт"
- },
- "3": {
- "human": " гигаватт"
- }
- }
- },
- "1": {
- "applicableUnits": {
- "0": {
- "human": " метр"
- }
- }
- }
- }
- }
- },
"title": "Открытая карта ветроэнергетики"
},
"parkings": {
diff --git a/langs/themes/zh_Hant.json b/langs/themes/zh_Hant.json
index 055ce0e79..a87f75a98 100644
--- a/langs/themes/zh_Hant.json
+++ b/langs/themes/zh_Hant.json
@@ -252,25 +252,6 @@
"climbing": {
"description": "在這份地圖上你會發現能夠攀爬機會,像是攀岩體育館、抱石大廳以及大自然當中的巨石。",
"descriptionTail": "攀爬地圖最初由 Christian Neumann 製作。如果你有回饋意見或問題請到Please 這邊反應。這專案使用來自開放街圖專案的資料。
",
- "layers": {
- "0": {
- "description": "攀岩社團或組織",
- "name": "攀岩社團",
- "tagRenderings": {
- "climbing_club-name": {
- "render": "{name}"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "攀岩 NGO"
- }
- },
- "render": "攀岩社團"
- }
- }
- },
"title": "開放攀爬地圖"
},
"cycle_infra": {
@@ -356,71 +337,6 @@
},
"hackerspaces": {
"description": "在這份地圖上你可以看到駭客空間,新增或直接更新資料",
- "layers": {
- "0": {
- "description": "駭客空間",
- "name": "駭客空間",
- "presets": {
- "0": {
- "description": "駭客空間是對軟體有興趣的人聚集的地方",
- "title": "駭客空間"
- },
- "1": {
- "description": "創客空間是 DIY 愛好者聚集在一起弄電子零件實驗,例如用 arduino、LEDstrips 等...",
- "title": "創客空間"
- }
- },
- "tagRenderings": {
- "hackerspaces-name": {
- "question": "這個駭客空間的名稱是?",
- "render": "這個駭客空間叫 {name}"
- },
- "hackerspaces-opening_hours": {
- "mappings": {
- "0": {
- "then": "24/7 營業"
- }
- },
- "question": "這個駭客空間的營業時間?",
- "render": "{opening_hours_table()}"
- },
- "hackerspaces-start_date": {
- "question": "這個駭客空間何時成立的?",
- "render": "這駭客空間是 {start_date} 成立的"
- },
- "hs-club-mate": {
- "mappings": {
- "0": {
- "then": "這個駭客空間服務俱樂部伙伴"
- },
- "1": {
- "then": "這個駭客空間沒有服務俱樂部伙伴"
- }
- },
- "question": "這個駭客空間是否服務俱樂部伙伴?"
- },
- "is_makerspace": {
- "mappings": {
- "0": {
- "then": "這是創客空間"
- },
- "1": {
- "then": "這是傳統的 (軟體導向) 駭客空間"
- }
- },
- "question": "這邊是駭客空間還是創客空間?"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": " {name}"
- }
- },
- "render": "駭客空間"
- }
- }
- },
"shortDescription": "駭客空間的地圖",
"title": "駭客空間"
},
@@ -441,71 +357,6 @@
},
"openwindpowermap": {
"description": "顯示與編輯風機的地圖。",
- "layers": {
- "0": {
- "name": "風機",
- "presets": {
- "0": {
- "title": "風機"
- }
- },
- "tagRenderings": {
- "turbine-diameter": {
- "question": "這個風力渦輪機的風葉直徑是多少公尺?",
- "render": "這個風力渦輪機的風葉直徑是 {rotor:diameter} 公尺。"
- },
- "turbine-height": {
- "question": "這個風機的總高度是多少 (包括風葉大小) 公尺?",
- "render": "這風機的總高度 (包括風葉直徑) 是 {height} 公尺。"
- },
- "turbine-operator": {
- "question": "這個風機營業商是?",
- "render": "這個風機營業商是 {operator}。"
- },
- "turbine-output": {
- "question": "這個風機的電力輸出是多少?(例如 2.3 MW)",
- "render": "這個風機的電力輸出是 {generator:output:electricity}。"
- },
- "turbine-start-date": {
- "question": "這個風機何時開始營運?",
- "render": "這個風機從 {start_date} 開始運轉。"
- }
- },
- "title": {
- "mappings": {
- "0": {
- "then": "{name}"
- }
- },
- "render": "風機"
- },
- "units": {
- "0": {
- "applicableUnits": {
- "0": {
- "human": " 百萬瓦"
- },
- "1": {
- "human": " 千瓦"
- },
- "2": {
- "human": " 瓦"
- },
- "3": {
- "human": " 千兆瓦"
- }
- }
- },
- "1": {
- "applicableUnits": {
- "0": {
- "human": " 公尺"
- }
- }
- }
- }
- }
- },
"title": "開放風力地圖"
},
"parkings": {
diff --git a/scripts/extractLayer.ts b/scripts/extractLayer.ts
index e8600d6ae..827642a69 100644
--- a/scripts/extractLayer.ts
+++ b/scripts/extractLayer.ts
@@ -7,6 +7,7 @@ function main(args: string[]){
console.log("Extracts an inline layer from a theme and places it in it's own layer directory.")
console.log("USAGE: ts-node scripts/extractLayerFromTheme.ts ")
console.log("(Invoke with only the themename to see which layers can be extracted)")
+ return
}
const themeId = args[0]
const layerId = args[1]
@@ -30,7 +31,7 @@ function main(args: string[]){
const layerConfig = layers.find(l => l.id === layerId)
if(layerId === undefined || layerConfig === undefined){
- if(layerConfig === undefined){
+ if(layerId !== undefined){
console.error( "Layer "+layerId+" not found as inline layer")
}
console.log("Layers available for extraction are:")