457 lines
No EOL
12 KiB
JSON
457 lines
No EOL
12 KiB
JSON
{
|
|
"id": "onwheels",
|
|
"title": {
|
|
"en": "OnWheels",
|
|
"de": "Auf Rädern",
|
|
"fr": "OnWheels"
|
|
},
|
|
"description": {
|
|
"en": "On this map, publicly weelchair accessible places are shown and can be easily added",
|
|
"de": "Auf dieser Karte werden öffentlich zugängliche Orte für Rollstuhlfahrer angezeigt und können leicht hinzugefügt werden",
|
|
"fr": "Sur cette carte nous pouvons voir et ajouter les différents endroits publiques accessibles aux chaises roulantes"
|
|
},
|
|
"maintainer": "MapComplete",
|
|
"icon": "./assets/themes/onwheels/crest.svg",
|
|
"version": "0",
|
|
"startLat": 50.86622,
|
|
"defaultBackgroundId": "CartoDB.Voyager",
|
|
"startLon": 4.350103,
|
|
"startZoom": 17,
|
|
"widenFactor": 2,
|
|
"hideFromOverview": false,
|
|
"layers": [
|
|
{
|
|
"builtin": "indoors",
|
|
"override": {
|
|
"minzoom": 19,
|
|
"name": null,
|
|
"passAllFeatures": true
|
|
}
|
|
},
|
|
{
|
|
"builtin": "bike_repair_station",
|
|
"override": {
|
|
"minzoom": 15,
|
|
"shownByDefault": false,
|
|
"mapRendering": [
|
|
{
|
|
"icon": {
|
|
"render": "./assets/themes/onwheels/repair.svg",
|
|
"mappings": [
|
|
{
|
|
"if": "service:bicycle:pump=yes",
|
|
"then": "./assets/themes/onwheels/bicycle_pump.svg"
|
|
}
|
|
]
|
|
},
|
|
"iconSize": "40,40,bottom"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"builtin": "bike_shop",
|
|
"override": {
|
|
"shownByDefault": false
|
|
}
|
|
},
|
|
{
|
|
"builtin": "pedestrian_path",
|
|
"override": {
|
|
"title": {
|
|
"en": "Pedestrian path",
|
|
"de": "Fußgängerweg"
|
|
},
|
|
"name": null,
|
|
"shownByDefault": false
|
|
}
|
|
},
|
|
{
|
|
"builtin": "cycleways_and_roads",
|
|
"override": {
|
|
"name": null,
|
|
"shownByDefault": false
|
|
}
|
|
},
|
|
{
|
|
"builtin": "cafe_pub",
|
|
"override": {
|
|
"minzoom": 15,
|
|
"mapRendering": [
|
|
{
|
|
"icon": "./assets/themes/onwheels/cafe.svg",
|
|
"iconSize": "40,40,bottom",
|
|
"label": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"builtin": "entrance",
|
|
"override": {
|
|
"minzoom": 19,
|
|
"mapRendering": [
|
|
{
|
|
"icon": "./assets/themes/onwheels/entrance.svg",
|
|
"iconSize": "40,40,center"
|
|
}
|
|
],
|
|
"syncSelection": "theme-only",
|
|
"filter": [
|
|
{
|
|
"id": "width",
|
|
"options": [
|
|
{
|
|
"question": {
|
|
"en": "Any/No width info",
|
|
"de": "Beliebig/Keine Breiteninformationen"
|
|
}
|
|
},
|
|
{
|
|
"osmTags": "width=",
|
|
"question": {
|
|
"en": "Any width info",
|
|
"de": "Beliebige Breiteninformationen"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"builtin": "food",
|
|
"override": {
|
|
"minzoom": 15,
|
|
"mapRendering": [
|
|
{
|
|
"icon": "./assets/themes/onwheels/restaurant.svg",
|
|
"iconSize": "40,40,bottom",
|
|
"label": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"builtin": "kerbs",
|
|
"override": {
|
|
"minzoom": 19,
|
|
"syncSelection": "theme-only",
|
|
"mapRendering": [
|
|
{
|
|
"icon": {
|
|
"render": "./assets/themes/onwheels/cone.svg"
|
|
}
|
|
}
|
|
],
|
|
"filter": [
|
|
{
|
|
"id": "kerb-type",
|
|
"options": [
|
|
{
|
|
"question": {
|
|
"en": "All types of kerbs",
|
|
"nl": "Alle typen stoepranden",
|
|
"de": "Alle Arten von Bordsteinen"
|
|
}
|
|
},
|
|
{
|
|
"osmTags": "kerb=raised",
|
|
"question": {
|
|
"en": "Raised kerb (>3 cm)",
|
|
"nl": "Hoge stoeprand (>3 cm)",
|
|
"de": "Erhöhter Bordstein (>3 cm)"
|
|
}
|
|
},
|
|
{
|
|
"osmTags": "kerb=lowered",
|
|
"question": {
|
|
"en": "Lowered kerb (~3 cm)",
|
|
"nl": "Verlaagde stoeprand (~3 cm)",
|
|
"de": "Abgesenkter Bordstein (~3 cm)"
|
|
}
|
|
},
|
|
{
|
|
"osmTags": "kerb=flush",
|
|
"question": {
|
|
"en": "Flush kerb (~0cm)",
|
|
"nl": "Vlakke stoeprand (~0cm)",
|
|
"de": "Bündiger Bordstein (~0cm)"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"builtin": "parking",
|
|
"override": {
|
|
"minzoom": 15,
|
|
"mapRendering": [
|
|
{
|
|
"icon": "./assets/themes/onwheels/parking.svg",
|
|
"iconSize": "40,40,bottom"
|
|
},
|
|
{
|
|
"color": "#225f92"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"builtin": "picnic_table",
|
|
"override": {
|
|
"shownByDefault": false
|
|
}
|
|
},
|
|
{
|
|
"builtin": "school",
|
|
"override": {
|
|
"shownByDefault": false,
|
|
"mapRendering": [
|
|
{
|
|
"label": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"builtin": "shops",
|
|
"override": {
|
|
"minzoom": 15,
|
|
"mapRendering": [
|
|
{
|
|
"icon": "./assets/themes/onwheels/shop.svg",
|
|
"iconSize": "40,40,bottom",
|
|
"label": null
|
|
},
|
|
{
|
|
"color": "#ea4a94"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"builtin": "toilet",
|
|
"override": {
|
|
"minzoom": 19,
|
|
"syncSelection": "theme-only",
|
|
"mapRendering": [
|
|
{
|
|
"icon": "./assets/themes/onwheels/toilet.svg",
|
|
"iconSize": "40,40,bottom"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"viewpoint",
|
|
{
|
|
"builtin": "pharmacy",
|
|
"override": {
|
|
"minzoom": 15,
|
|
"shownByDefault": false,
|
|
"mapRendering": [
|
|
{
|
|
"icon": "./assets/themes/onwheels/pharmacy.svg",
|
|
"iconSize": "40,40,bottom",
|
|
"label": null
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"builtin": "doctors",
|
|
"shownByDefault": false,
|
|
"override": {
|
|
"minzoom": 15,
|
|
"mapRendering": [
|
|
{
|
|
"icon": "./assets/themes/onwheels/doctor.svg",
|
|
"iconSize": "40,40,bottom"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"builtin": "hospital",
|
|
"override": {
|
|
"minzoom": 15,
|
|
"shownByDefault": false,
|
|
"mapRendering": [
|
|
{
|
|
"icon": "./assets/themes/onwheels/hospital.svg",
|
|
"iconSize": "40,40,bottom"
|
|
},
|
|
{
|
|
"color": "#dd463b"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"builtin": "reception_desk",
|
|
"override": {
|
|
"minzoom": 19,
|
|
"syncSelection": "theme-only",
|
|
"mapRendering": [
|
|
{
|
|
"icon": "./assets/themes/onwheels/reception.svg",
|
|
"iconSize": "40,40,bottom"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"walls_and_buildings",
|
|
{
|
|
"builtin": "elevator",
|
|
"override": {
|
|
"minzoom": 19,
|
|
"syncSelection": "theme-only",
|
|
"mapRendering": [
|
|
{
|
|
"icon": "./assets/themes/onwheels/elevator.svg",
|
|
"iconSize": "40,40,bottom"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"builtin": "hotel",
|
|
"override": {
|
|
"minzoom": 15,
|
|
"shownByDefault": false,
|
|
"mapRendering": [
|
|
{
|
|
"icon": "./assets/themes/onwheels/hotel.svg",
|
|
"iconSize": "40,40,bottom"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"builtin": "maproulette_challenge",
|
|
"override": {
|
|
"source": {
|
|
"geoJson": "https://maproulette.org/api/v2/challenge/view/28012"
|
|
},
|
|
"calculatedTags": [
|
|
"_closest_osm_hotel=feat.closest('hotel')?.properties?.id",
|
|
"_closest_osm_hotel_distance=feat.distanceTo(feat.properties._closest_osm_hotel)",
|
|
"_has_closeby_feature=Number(feat.properties._closest_osm_hotel_distance) < 50 ? 'yes' : 'no'"
|
|
],
|
|
"+tagRenderings": [
|
|
{
|
|
"id": "import-button",
|
|
"condition": "_has_closeby_feature=no",
|
|
"render": {
|
|
"special": {
|
|
"type": "import_button",
|
|
"targetLayer": "hotel",
|
|
"tags": "tags",
|
|
"text": {
|
|
"en": "Import"
|
|
},
|
|
"icon": "./assets/svg/addSmall.svg",
|
|
"location_picker": "photo",
|
|
"maproulette_id": "mr_taskId"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "tag-apply-button",
|
|
"condition": "_has_closeby_feature=yes",
|
|
"render": {
|
|
"special": {
|
|
"type": "tag_apply",
|
|
"tags_to_apply": "$tags",
|
|
"message": {
|
|
"en": "Add all the suggested tags"
|
|
},
|
|
"image": "./assets/svg/addSmall.svg",
|
|
"id_of_object_to_apply_this_one": "_closest_osm_hotel"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"builtin": "governments",
|
|
"override": {
|
|
"minzoom": 15,
|
|
"mapRendering": [
|
|
{
|
|
"icon": "./assets/themes/onwheels/government.svg",
|
|
"iconSize": "40,40,bottom"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"builtin": "current_view",
|
|
"override": {
|
|
"+mapRendering": [
|
|
{
|
|
"location": [
|
|
"point",
|
|
"centroid"
|
|
],
|
|
"icon": "statistics"
|
|
}
|
|
],
|
|
"=title": {
|
|
"render": {
|
|
"en": "Statistics",
|
|
"de": "Statistik"
|
|
}
|
|
},
|
|
"tagRenderings": [
|
|
{
|
|
"id": "stats",
|
|
"render": "{statistics()}"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
],
|
|
"overrideAll": {
|
|
"+calculatedTags": [
|
|
"_poi_walls_and_buildings_entrance_properties=feat.closestn('walls_and_buildings', 1, undefined, 1000).map(w => ({id: w.feat.properties.id, width: w.feat.properties['_entrance:width']}))[0]",
|
|
"_poi_entrance:id=JSON.parce(feat.properties._poi_walls_and_buildings_entrance_properteis)?.id",
|
|
"_poi_entrance:width=JSON.parse(feat.properties._poi_walls_and_buildings_entrance_properties)?.width"
|
|
],
|
|
"+tagRenderings": [
|
|
{
|
|
"id": "_containing_poi_entrance:width",
|
|
"condition": {
|
|
"and": [
|
|
"entrance=",
|
|
"kerb=",
|
|
"current_view!=yes",
|
|
"door="
|
|
]
|
|
},
|
|
"render": {
|
|
"en": "The containing building can be entered via <a href='#{_poi_entrance:id}'>a door of {canonical(_poi_entrance:width)}</a>",
|
|
"fr": "On peut entrer dans ce batiment via <a href='#{_poi_entrance:id}'>une porte de {canonical(_poi_entrance:width)}</a>",
|
|
"de": "Das Gebäude kann über <a href='#{_poi_entrance:id}'>durch eine Tür von {canonical(_poi_entrance:width)} betreten werden.</a>"
|
|
},
|
|
"freeform": {
|
|
"key": "_poi_entrance:width",
|
|
"type": "distance"
|
|
},
|
|
"mappings": [
|
|
{
|
|
"if": "_poi_entrance:width=",
|
|
"then": {
|
|
"en": "The containing building has no information on door widths. Add a door and measure the width to get information",
|
|
"fr": "Ce bâtiment n'a aucune information sur les largeurs de portes. Ajoutez une porte et mesurez la largeur pour obtenir des informations",
|
|
"de": "Das Gebäude hat keine Informationen über Türbreiten. Fügen Sie eine Tür hinzu und messen Sie die Breite, um Informationen zu erhalten"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
} |