diff --git a/assets/layers/cycleways_and_roads/cycleways_and_roads.json b/assets/layers/cycleways_and_roads/cycleways_and_roads.json index c5dd1ea1d..25fe94364 100644 --- a/assets/layers/cycleways_and_roads/cycleways_and_roads.json +++ b/assets/layers/cycleways_and_roads/cycleways_and_roads.json @@ -21,6 +21,13 @@ "highway=unclassified", "highway=primary", "highway=secondary", + "highway=tertiary_link", + "highway=primary_link", + "highway=secondary_link", + "highway=service", + "highway=footway", + "highway=pedestrian", + "highway=living_street", { "and": [ "highway=path", @@ -32,15 +39,23 @@ }, "title": { "render": { - "en": "Cycleways", - "nl": "Fietspaden", - "de": "Radwege", - "ru": "Велосипедные дорожки", - "fr": "Pistes cyclables", - "ca": "Vies ciclistes", - "es": "Ciclovías" + "en": "Way", + "nl": "Weg" }, "mappings": [ + { + "if": { + "and": [ + "highway=cycleway", + "name~*" + ] + }, + "then": { + "nl": "Fietsweg {name}", + "en": "Cycleway {name}", + "de": "Radweg {name}" + } + }, { "if": { "or": [ @@ -56,7 +71,19 @@ "fr": "Piste cyclable", "ca": "Via ciclista", "da": "Cykelsti", - "es": "Carril bici" + "es": "Carril compartido" + } + }, + { + "if": { + "and": [ + "cycleway=shared_lane", + "name~*" + ] + }, + "then": { + "nl": "Weg met fietssugestiestrook {name}", + "en": "Road with shared lane {name}" } }, { @@ -67,7 +94,19 @@ "de": "Gemeinsame Fahrspur", "fr": "Voie partagée", "ca": "Carril compartit", - "es": "Carril compartido" + "es": "Vía ciclista al lado de la carretera" + } + }, + { + "if": { + "and": [ + "cycleway=lane", + "name~*" + ] + }, + "then": { + "nl": "Weg met fietsstrook {name}", + "en": "Road with bike lane {name}" } }, { @@ -81,6 +120,18 @@ "es": "Carril bici" } }, + { + "if": { + "and": [ + "cycleway=track", + "name~*" + ] + }, + "then": { + "nl": "Weg met fietspad naast de weg {name}", + "en": "Road with cycleway next to the road {name}" + } + }, { "if": "cycleway=track", "then": { @@ -92,6 +143,19 @@ "es": "Vía ciclista al lado de la carretera" } }, + { + "if": { + "and": [ + "cyclestreet=yes", + "name~*" + ] + }, + "then": { + "nl": "Fietsstraat {name}", + "en": "Cyclestreet {name}", + "de": "Fahrradstraße {name}" + } + }, { "if": "cyclestreet=yes", "then": { @@ -103,6 +167,10 @@ "da": "Cykelgade", "es": "Ciclocalle" } + }, + { + "if": "name~*", + "then": "{name}" } ] }, @@ -117,7 +185,8 @@ "condition": { "and": [ "highway!=cycleway", - "highway!=path" + "highway!=path", + "highway!=footway" ] }, "mappings": [ @@ -246,7 +315,8 @@ "condition": { "and": [ "highway!=cycleway", - "highway!=path" + "highway!=path", + "highway!=footway" ] }, "mappings": [ @@ -304,7 +374,8 @@ "condition": { "and": [ "highway!=cycleway", - "highway!=path" + "highway!=path", + "highway!=footway" ] }, "mappings": [ @@ -828,7 +899,8 @@ "condition": { "and": [ "highway!=cycleway", - "highway!=path" + "highway!=path", + "highway!=footway" ] }, "render": { diff --git a/assets/layers/kerbs/KerbIcon.svg b/assets/layers/kerbs/KerbIcon.svg new file mode 100644 index 000000000..2e4172e4d --- /dev/null +++ b/assets/layers/kerbs/KerbIcon.svg @@ -0,0 +1,92 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + diff --git a/assets/layers/kerbs/flush.svg b/assets/layers/kerbs/flush.svg new file mode 100644 index 000000000..43068b390 --- /dev/null +++ b/assets/layers/kerbs/flush.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/assets/layers/kerbs/kerbs.json b/assets/layers/kerbs/kerbs.json new file mode 100644 index 000000000..a9f20f6de --- /dev/null +++ b/assets/layers/kerbs/kerbs.json @@ -0,0 +1,305 @@ +{ + "id": "kerbs", + "name": { + "en": "Kerbs", + "nl": "Stoepranden" + }, + "description": { + "en": "A layer showing kerbs.", + "nl": "Een laag met stoepranden." + }, + "source": { + "osmTags": "barrier=kerb" + }, + "minzoom": 13, + "title": { + "render": { + "en": "Kerb", + "nl": "Stoeprand" + } + }, + "mapRendering": [ + { + "location": [ + "point" + ], + "icon": { + "render": "./assets/layers/kerbs/KerbIcon.svg", + "mappings": [ + { + "if": "kerb=raised", + "then": "./assets/layers/kerbs/raised.svg" + }, + { + "if": "kerb=lowered", + "then": "./assets/layers/kerbs/lowered.svg" + }, + { + "if": "kerb=flush", + "then": "./assets/layers/kerbs/flush.svg" + }, + { + "if": "kerb=no", + "then": "./assets/layers/kerbs/no.svg" + } + ] + } + }, + { + "color": "#f44e42", + "fill": "no", + "width": "8" + } + ], + "tagRenderings": [ + { + "id": "kerb-type", + "question": { + "en": "What is the height of this kerb?", + "nl": "Hoe hoog is deze stoeprand?" + }, + "mappings": [ + { + "if": "kerb=raised", + "then": { + "en": "This kerb is raised (>3 cm)", + "nl": "Deze stoeprand is hoog (>3 cm)" + }, + "icon": { + "path": "./assets/layers/kerbs/raised.svg", + "class": "small" + } + }, + { + "if": "kerb=lowered", + "then": { + "en": "This kerb is lowered (~3 cm)", + "nl": "Deze stoeprand is verlaagd (~3 cm)" + }, + "icon": { + "path": "./assets/layers/kerbs/lowered.svg", + "class": "small" + } + }, + { + "if": "kerb=flush", + "then": { + "en": "This kerb is flush (~0cm)", + "nl": "Deze stoeprand is vlak (~0cm)" + }, + "icon": { + "path": "./assets/layers/kerbs/flush.svg", + "class": "small" + } + }, + { + "if": "kerb=no", + "then": { + "en": "There is no kerb here", + "nl": "Er is hier geen stoeprand" + }, + "hideInAnswer": true, + "icon": { + "path": "./assets/layers/kerbs/no.svg", + "class": "small" + } + }, + { + "if": "kerb=yes", + "then": { + "en": "There is a kerb of unknown height", + "nl": "Er is een stoeprand met onbekende hoogte" + }, + "hideInAnswer": true + } + ], + "condition": "_geometry:type=Point" + }, + { + "id": "tactile-paving", + "question": { + "en": "Is there tactile paving at this kerb?" + }, + "mappings": [ + { + "if": "tactile_paving=yes", + "then": { + "en": "This kerb has tactile paving." + } + }, + { + "if": "tactile_paving=no", + "then": { + "en": "This kerb does not have tactile paving." + } + }, + { + "if": "tactile_paving=incorrect", + "then": { + "en": "This kerb has tactile paving, but it is incorrect" + }, + "hideInAnswer": true + } + ], + "condition": "_geometry:type=Point" + }, + { + "id": "kerb-height", + "question": { + "en": "What is the height of this kerb?", + "nl": "Hoe hoog is deze stoeprand?" + }, + "render": { + "en": "Kerb height: {{kerb:height}}", + "nl": "Stoeprandhoogte: {{kerb:height}}" + }, + "freeform": { + "key": "kerb:height", + "placeholder": { + "en": "Height of the kerb", + "nl": "Hoogte van de stoeprand" + }, + "type": "pnat" + } + } + ], + "presets": [ + { + "title": { + "en": "a kerb", + "nl": "een stoeprand" + }, + "tags": [ + "barrier=kerb" + ], + "description": { + "en": "Kerb in a footway", + "nl": "Stoeprand in een voetpad" + }, + "preciseInput": { + "maxSnapDistance": 10, + "preferredBackground": "photo", + "snapToLayer": [ + "cycleways_and_roads", + "kerbs" + ] + } + } + ], + "filter": [ + { + "id": "kerb-type", + "options": [ + { + "question": { + "en": "All types of kerbs", + "nl": "Alle typen stoepranden" + } + }, + { + "osmTags": "kerb=raised", + "question": { + "en": "Raised kerb (>3 cm)", + "nl": "Hoge stoeprand (>3 cm)" + } + }, + { + "osmTags": "kerb=lowered", + "question": { + "en": "Lowered kerb (~3 cm)", + "nl": "Verlaagde stoeprand (~3 cm)" + } + }, + { + "osmTags": "kerb=flush", + "question": { + "en": "Flush kerb (~0cm)", + "nl": "Vlakke stoeprand (~0cm)" + } + }, + { + "osmTags": "kerb=no", + "question": { + "en": "No kerb", + "nl": "Geen stoeprand" + } + }, + { + "osmTags": "kerb=", + "question": { + "en": "Kerb with unknown height", + "nl": "Stoeprand met onbekende hoogte" + } + } + ] + }, + { + "id": "tactile-paving", + "options": [ + { + "question": { + "en": "Kerbs with or without tactile paving" + } + }, + { + "osmTags": "tactile_paving=yes", + "question": { + "en": "Kerb with tactile paving" + } + }, + { + "osmTags": "tactile_paving=no", + "question": { + "en": "Kerb without tactile paving" + } + }, + { + "osmTags": "tactile_paving=", + "question": { + "en": "Kerb wihout information about tactile paving" + } + } + ] + } + ], + "units": [ + { + "applicableUnits": [ + { + "canonicalDenomination": "cm", + "alternativeDenomination": [ + "centimeter", + "centimeters" + ], + "human": { + "en": "centimeters", + "nl": "centimeter" + }, + "humanSingular": { + "en": "centimeter", + "nl": "centimeter" + }, + "default": true + }, + { + "canonicalDenomination": "m", + "alternativeDenomination": [ + "meter", + "meters" + ], + "human": { + "en": "meters", + "nl": "meter" + }, + "humanSingular": { + "en": "meter", + "nl": "meter" + } + } + ], + "appliesToKey": [ + "kerb:height" + ] + } + ] +} \ No newline at end of file diff --git a/assets/layers/kerbs/license_info.json b/assets/layers/kerbs/license_info.json new file mode 100644 index 000000000..61687d833 --- /dev/null +++ b/assets/layers/kerbs/license_info.json @@ -0,0 +1,52 @@ +[ + { + "path": "KerbIcon.svg", + "license": "CC0", + "authors": [ + "Treeem" + ], + "sources": [ + "https://commons.wikimedia.org/wiki/File:KerbIcon.svg" + ] + }, + { + "path": "flush.svg", + "license": "CC0", + "authors": [ + "Jeroen Hoek" + ], + "sources": [ + "https://wiki.openstreetmap.org/wiki/File:Icon_kerb%3Dflush.svg" + ] + }, + { + "path": "lowered.svg", + "license": "CC0", + "authors": [ + "Jeroen Hoek" + ], + "sources": [ + "https://wiki.openstreetmap.org/wiki/File:Icon_kerb%3Dlowered.svg" + ] + }, + { + "path": "no.svg", + "license": "CC0", + "authors": [ + "Jeroen Hoek" + ], + "sources": [ + "https://wiki.openstreetmap.org/wiki/File:Icon_kerb%3Dno.svg" + ] + }, + { + "path": "raised.svg", + "license": "CC0", + "authors": [ + "Jeroen Hoek" + ], + "sources": [ + "https://wiki.openstreetmap.org/wiki/File:Icon_kerb%3Draised.svg" + ] + } +] \ No newline at end of file diff --git a/assets/layers/kerbs/lowered.svg b/assets/layers/kerbs/lowered.svg new file mode 100644 index 000000000..13737e582 --- /dev/null +++ b/assets/layers/kerbs/lowered.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/assets/layers/kerbs/no.svg b/assets/layers/kerbs/no.svg new file mode 100644 index 000000000..e7cc817ff --- /dev/null +++ b/assets/layers/kerbs/no.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/assets/layers/kerbs/raised.svg b/assets/layers/kerbs/raised.svg new file mode 100644 index 000000000..629a32606 --- /dev/null +++ b/assets/layers/kerbs/raised.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/assets/svg/license_info.json b/assets/svg/license_info.json index 133544ecf..58f491f57 100644 --- a/assets/svg/license_info.json +++ b/assets/svg/license_info.json @@ -1247,6 +1247,14 @@ "https://commons.wikimedia.org/wiki/File:OOjs_UI_icon_language-ltr.svg" ] }, + { + "path": "triangle.svg", + "license": "CC0", + "authors": [ + "Robin van der Linde" + ], + "sources": [] + }, { "path": "twitter.svg", "license": "Logo - all rights reserved", diff --git a/assets/svg/triangle.svg b/assets/svg/triangle.svg new file mode 100644 index 000000000..846a32f32 --- /dev/null +++ b/assets/svg/triangle.svg @@ -0,0 +1,9 @@ + + + + diff --git a/assets/themes/kerbs_and_crossings/kerbs_and_crossings.json b/assets/themes/kerbs_and_crossings/kerbs_and_crossings.json new file mode 100644 index 000000000..ddb32ee8d --- /dev/null +++ b/assets/themes/kerbs_and_crossings/kerbs_and_crossings.json @@ -0,0 +1,29 @@ +{ + "id": "kerbs_and_crossings", + "maintainer": "Robin van der Linde", + "version": "20211215", + "title": { + "en": "Kerbs and crossings", + "nl": "Stoepranden en oversteekplaatsen" + }, + "description": { + "en": "A map showing kerbs and crossings.", + "nl": "Een kaart met stoepranden en oversteekplaatsen." + }, + "icon": "./assets/layers/kerbs/KerbIcon.svg", + "startZoom": 19, + "startLat": 53.23776, + "startLon": 6.53812, + "layers": [ + { + "builtin": "crossings", + "override": { + "=presets": [], + "source": { + "osmTags": "highway=crossing" + } + } + }, + "kerbs" + ] +} \ No newline at end of file diff --git a/assets/themes/mapcomplete-changes/mapcomplete-changes.json b/assets/themes/mapcomplete-changes/mapcomplete-changes.json index 996bd4deb..c21ef5df7 100644 --- a/assets/themes/mapcomplete-changes/mapcomplete-changes.json +++ b/assets/themes/mapcomplete-changes/mapcomplete-changes.json @@ -207,6 +207,10 @@ "if": "theme=hailhydrant", "then": "./assets/themes/hailhydrant/logo.svg" }, + { + "if": "theme=kerbs_and_crossings", + "then": "./assets/layers/kerbs/KerbIcon.svg" + }, { "if": "theme=mapcomplete-changes", "then": "./assets/svg/logo.svg" diff --git a/langs/layers/ca.json b/langs/layers/ca.json index 4cef6671c..231cd932e 100644 --- a/langs/layers/ca.json +++ b/langs/layers/ca.json @@ -514,20 +514,19 @@ }, "title": { "mappings": { - "0": { + "1": { "then": "Via ciclista" }, - "1": { + "3": { "then": "Carril compartit" }, - "2": { + "5": { "then": "Carril bici" }, - "4": { + "9": { "then": "Carrer ciclista" } - }, - "render": "Vies ciclistes" + } } }, "defibrillator": { diff --git a/langs/layers/da.json b/langs/layers/da.json index 7b7bd47cb..2e70a0a23 100644 --- a/langs/layers/da.json +++ b/langs/layers/da.json @@ -1190,13 +1190,13 @@ }, "title": { "mappings": { - "0": { + "1": { "then": "Cykelsti" }, - "3": { + "7": { "then": "Cykelsti ved siden af vejen" }, - "4": { + "9": { "then": "Cykelgade" } } diff --git a/langs/layers/de.json b/langs/layers/de.json index 0c4c9dfc0..9d5aa66f5 100644 --- a/langs/layers/de.json +++ b/langs/layers/de.json @@ -3090,22 +3090,27 @@ "title": { "mappings": { "0": { - "then": "Radweg" + "then": "Radweg {name}" }, "1": { - "then": "Gemeinsame Fahrspur" - }, - "2": { - "then": "Fahrradspur" + "then": "Radweg" }, "3": { + "then": "Gemeinsame Fahrspur" + }, + "5": { + "then": "Fahrradspur" + }, + "7": { "then": "Radweg neben der Straße" }, - "4": { + "8": { + "then": "Fahrradstraße {name}" + }, + "9": { "then": "Fahrradstraße" } - }, - "render": "Radwege" + } } }, "defibrillator": { diff --git a/langs/layers/en.json b/langs/layers/en.json index 69bea69b6..01aa1fabb 100644 --- a/langs/layers/en.json +++ b/langs/layers/en.json @@ -3090,22 +3090,37 @@ "title": { "mappings": { "0": { - "then": "Cycleway" + "then": "Cycleway {name}" }, "1": { - "then": "Shared lane" + "then": "Cycleway" }, "2": { - "then": "Bike lane" + "then": "Road with shared lane {name}" }, "3": { - "then": "Cycleway next to the road" + "then": "Shared lane" }, "4": { + "then": "Road with bike lane {name}" + }, + "5": { + "then": "Bike lane" + }, + "6": { + "then": "Road with cycleway next to the road {name}" + }, + "7": { + "then": "Cycleway next to the road" + }, + "8": { + "then": "Cyclestreet {name}" + }, + "9": { "then": "Cyclestreet" } }, - "render": "Cycleways" + "render": "Way" } }, "defibrillator": { @@ -4052,6 +4067,116 @@ "render": "Information board" } }, + "kerbs": { + "description": "A layer showing kerbs.", + "filter": { + "0": { + "options": { + "0": { + "question": "All types of kerbs" + }, + "1": { + "question": "Raised kerb (>3 cm)" + }, + "2": { + "question": "Lowered kerb (~3 cm)" + }, + "3": { + "question": "Flush kerb (~0cm)" + }, + "4": { + "question": "No kerb" + }, + "5": { + "question": "Kerb with unknown height" + } + } + }, + "1": { + "options": { + "0": { + "question": "Kerbs with or without tactile paving" + }, + "1": { + "question": "Kerb with tactile paving" + }, + "2": { + "question": "Kerb without tactile paving" + }, + "3": { + "question": "Kerb wihout information about tactile paving" + } + } + } + }, + "name": "Kerbs", + "presets": { + "0": { + "description": "Kerb in a footway", + "title": "a kerb" + } + }, + "tagRenderings": { + "kerb-height": { + "freeform": { + "placeholder": "Height of the kerb" + }, + "question": "What is the height of this kerb?", + "render": "Kerb height: {{kerb:height}}" + }, + "kerb-type": { + "mappings": { + "0": { + "then": "This kerb is raised (>3 cm)" + }, + "1": { + "then": "This kerb is lowered (~3 cm)" + }, + "2": { + "then": "This kerb is flush (~0cm)" + }, + "3": { + "then": "There is no kerb here" + }, + "4": { + "then": "There is a kerb of unknown height" + } + }, + "question": "What is the height of this kerb?" + }, + "tactile-paving": { + "mappings": { + "0": { + "then": "This kerb has tactile paving." + }, + "1": { + "then": "This kerb does not have tactile paving." + }, + "2": { + "then": "This kerb has tactile paving, but it is incorrect" + } + }, + "question": "Is there tactile paving at this kerb?" + } + }, + "title": { + "render": "Kerb" + }, + "units": { + "0": { + "applicableUnits": { + "0": { + "human": "centimeters", + "humanSingular": "centimeter" + }, + "1": { + "human": "meters", + "humanSingular": "meter" + } + } + } + } + }, "kindergarten_childcare": { "name": "Kindergartens and childcare", "presets": { diff --git a/langs/layers/es.json b/langs/layers/es.json index 1b9751a39..f2b061f1c 100644 --- a/langs/layers/es.json +++ b/langs/layers/es.json @@ -1952,23 +1952,22 @@ }, "title": { "mappings": { - "0": { - "then": "Carril bici" - }, "1": { "then": "Carril compartido" }, - "2": { - "then": "Carril bici" - }, "3": { "then": "Vía ciclista al lado de la carretera" }, - "4": { + "5": { + "then": "Carril bici" + }, + "7": { + "then": "Vía ciclista al lado de la carretera" + }, + "9": { "then": "Ciclocalle" } - }, - "render": "Ciclovías" + } } }, "defibrillator": { diff --git a/langs/layers/fr.json b/langs/layers/fr.json index 9251d26f6..388f83931 100644 --- a/langs/layers/fr.json +++ b/langs/layers/fr.json @@ -1613,23 +1613,22 @@ "name": "Pistes cyclables et routes", "title": { "mappings": { - "0": { + "1": { "then": "Piste cyclable" }, - "1": { + "3": { "then": "Voie partagée" }, - "2": { + "5": { "then": "Bande cyclable" }, - "3": { + "7": { "then": "Piste cyclable séparée de la route" }, - "4": { + "9": { "then": "Vélorue" } - }, - "render": "Pistes cyclables" + } } }, "defibrillator": { diff --git a/langs/layers/nl.json b/langs/layers/nl.json index f0962da5f..96d2abc4f 100644 --- a/langs/layers/nl.json +++ b/langs/layers/nl.json @@ -3075,22 +3075,37 @@ "title": { "mappings": { "0": { - "then": "Fietsweg" + "then": "Fietsweg {name}" }, "1": { - "then": "Fietssuggestiestrook" + "then": "Fietsweg" }, "2": { - "then": "Fietsstrook" + "then": "Weg met fietssugestiestrook {name}" }, "3": { - "then": "Fietsweg naast de weg" + "then": "Fietssuggestiestrook" }, "4": { + "then": "Weg met fietsstrook {name}" + }, + "5": { + "then": "Fietsstrook" + }, + "6": { + "then": "Weg met fietspad naast de weg {name}" + }, + "7": { + "then": "Fietsweg naast de weg" + }, + "8": { + "then": "Fietsstraat {name}" + }, + "9": { "then": "Fietsstraat" } }, - "render": "Fietspaden" + "render": "Weg" } }, "defibrillator": { @@ -3981,6 +3996,86 @@ "render": "Informatiebord" } }, + "kerbs": { + "description": "Een laag met stoepranden.", + "filter": { + "0": { + "options": { + "0": { + "question": "Alle typen stoepranden" + }, + "1": { + "question": "Hoge stoeprand (>3 cm)" + }, + "2": { + "question": "Verlaagde stoeprand (~3 cm)" + }, + "3": { + "question": "Vlakke stoeprand (~0cm)" + }, + "4": { + "question": "Geen stoeprand" + }, + "5": { + "question": "Stoeprand met onbekende hoogte" + } + } + } + }, + "name": "Stoepranden", + "presets": { + "0": { + "description": "Stoeprand in een voetpad", + "title": "een stoeprand" + } + }, + "tagRenderings": { + "kerb-height": { + "freeform": { + "placeholder": "Hoogte van de stoeprand" + }, + "question": "Hoe hoog is deze stoeprand?", + "render": "Stoeprandhoogte: {{kerb:height}}" + }, + "kerb-type": { + "mappings": { + "0": { + "then": "Deze stoeprand is hoog (>3 cm)" + }, + "1": { + "then": "Deze stoeprand is verlaagd (~3 cm)" + }, + "2": { + "then": "Deze stoeprand is vlak (~0cm)" + }, + "3": { + "then": "Er is hier geen stoeprand" + }, + "4": { + "then": "Er is een stoeprand met onbekende hoogte" + } + }, + "question": "Hoe hoog is deze stoeprand?" + } + }, + "title": { + "render": "Stoeprand" + }, + "units": { + "0": { + "applicableUnits": { + "0": { + "human": "centimeter", + "humanSingular": "centimeter" + }, + "1": { + "human": "meter", + "humanSingular": "meter" + } + } + } + } + }, "kindergarten_childcare": { "name": "Kleuterscholen en kinderopvang", "presets": { diff --git a/langs/layers/ru.json b/langs/layers/ru.json index b3912ae5b..ccb05ca70 100644 --- a/langs/layers/ru.json +++ b/langs/layers/ru.json @@ -842,11 +842,10 @@ "cycleways_and_roads": { "title": { "mappings": { - "0": { + "1": { "then": "Велосипедная дорожка" } - }, - "render": "Велосипедные дорожки" + } } }, "defibrillator": { diff --git a/langs/themes/en.json b/langs/themes/en.json index b76a1c16c..fc2a5c198 100644 --- a/langs/themes/en.json +++ b/langs/themes/en.json @@ -647,6 +647,10 @@ "shortDescription": "Map to show hydrants, extinguishers, fire stations, and ambulance stations.", "title": "Hydrants, Extinguishers, Fire stations, and Ambulance stations" }, + "kerbs_and_crossings": { + "description": "A map showing kerbs and crossings.", + "title": "Kerbs and crossings" + }, "mapcomplete-changes": { "description": "This maps shows all the changes made with MapComplete", "layers": { diff --git a/langs/themes/nl.json b/langs/themes/nl.json index 7c0763523..956c45889 100644 --- a/langs/themes/nl.json +++ b/langs/themes/nl.json @@ -922,6 +922,71 @@ "shortDescription": "Kaart om hydranten, brandblussers, brandweerkazernes en ambulanceposten weer te geven.", "title": "Brandkranen, brandblussers, brandweerposten en ambulanceposten" }, + "kerbs_and_crossings": { + "description": "Een kaart met stoepranden en oversteekplaatsen.", + "title": "Stoepranden en oversteekplaatsen" + }, + "mapcomplete-changes": { + "description": "Deze kaart toont alle wijzigingen die met MapComplete werden gemaakt", + "layers": { + "0": { + "description": "Toont alle wijzigingen met MapComplete", + "filter": { + "0": { + "options": { + "0": { + "question": "Themanaam bevat {search}" + } + } + }, + "1": { + "options": { + "0": { + "question": "Gemaakt door bijdrager {search}" + } + } + }, + "2": { + "options": { + "0": { + "question": "Niet gemaakt door bijdrager {search}" + } + } + } + }, + "tagRenderings": { + "contributor": { + "render": "Wijziging gemaakt door {_last_edit:contributor}" + }, + "render_id": { + "render": "Wijzigingset {id}" + }, + "theme": { + "mappings": { + "0": { + "then": "Wijziging met officieus thema {theme}" + } + }, + "render": "Wijziging met thema {theme}" + } + }, + "title": { + "render": "Wijzigingset voor {theme}" + } + }, + "1": { + "override": { + "tagRenderings": { + "link_to_more": { + "render": "Meer statistieken kunnen hier gevonden worden" + } + } + } + } + }, + "shortDescription": "Toont wijzigingen gemaakt met MapComplete", + "title": "Wijzigingen gemaakt met MapComplete" + }, "maps": { "description": "Op deze kaart kan je alle kaarten zien die OpenStreetMap kent.

Ontbreekt er een kaart, dan kan je die kaart hier ook gemakelijk aan deze kaart toevoegen.", "shortDescription": "Dit thema toont alle (toeristische) kaarten die OpenStreetMap kent",