forked from MapComplete/MapComplete
chore: automated housekeeping...
This commit is contained in:
parent
a2dd79c4ec
commit
7b792af261
101 changed files with 2196 additions and 22043 deletions
|
@ -40,6 +40,7 @@
|
||||||
- clock
|
- clock
|
||||||
- crossings
|
- crossings
|
||||||
- cycleways_and_roads
|
- cycleways_and_roads
|
||||||
|
- cyclist_waiting_aid
|
||||||
- defibrillator
|
- defibrillator
|
||||||
- dentist
|
- dentist
|
||||||
- disaster_response
|
- disaster_response
|
||||||
|
@ -94,6 +95,7 @@
|
||||||
- reception_desk
|
- reception_desk
|
||||||
- recycling
|
- recycling
|
||||||
- route_marker
|
- route_marker
|
||||||
|
- school
|
||||||
- shelter
|
- shelter
|
||||||
- shops
|
- shops
|
||||||
- shower
|
- shower
|
||||||
|
@ -108,6 +110,8 @@
|
||||||
- street_lamps
|
- street_lamps
|
||||||
- stripclub
|
- stripclub
|
||||||
- surveillance_camera
|
- surveillance_camera
|
||||||
|
- tactile_map
|
||||||
|
- tactile_model
|
||||||
- ticket_machine
|
- ticket_machine
|
||||||
- ticket_validator
|
- ticket_validator
|
||||||
- toilet
|
- toilet
|
||||||
|
@ -211,11 +215,12 @@
|
||||||
- physiotherapist
|
- physiotherapist
|
||||||
- playground
|
- playground
|
||||||
- recycling
|
- recycling
|
||||||
- school
|
|
||||||
- shops
|
- shops
|
||||||
- souvenir_coin
|
- souvenir_coin
|
||||||
- souvenir_note
|
- souvenir_note
|
||||||
- sports_centre
|
- sports_centre
|
||||||
|
- tactile_map
|
||||||
|
- tactile_model
|
||||||
- tertiary_education
|
- tertiary_education
|
||||||
- vending_machine
|
- vending_machine
|
||||||
- veterinary
|
- veterinary
|
||||||
|
@ -241,7 +246,6 @@
|
||||||
- kindergarten_childcare
|
- kindergarten_childcare
|
||||||
- physiotherapist
|
- physiotherapist
|
||||||
- recycling
|
- recycling
|
||||||
- school
|
|
||||||
- shops
|
- shops
|
||||||
- sports_centre
|
- sports_centre
|
||||||
- tertiary_education
|
- tertiary_education
|
||||||
|
@ -268,7 +272,6 @@
|
||||||
- kindergarten_childcare
|
- kindergarten_childcare
|
||||||
- physiotherapist
|
- physiotherapist
|
||||||
- recycling
|
- recycling
|
||||||
- school
|
|
||||||
- shops
|
- shops
|
||||||
- sports_centre
|
- sports_centre
|
||||||
- tertiary_education
|
- tertiary_education
|
||||||
|
@ -319,6 +322,8 @@
|
||||||
- love_hotel
|
- love_hotel
|
||||||
- pharmacy
|
- pharmacy
|
||||||
- police
|
- police
|
||||||
|
- postoffices
|
||||||
|
- school
|
||||||
- stripclub
|
- stripclub
|
||||||
- tool_library
|
- tool_library
|
||||||
- tourism_accomodation
|
- tourism_accomodation
|
||||||
|
@ -527,6 +532,10 @@
|
||||||
|
|
||||||
- climbing_gym
|
- climbing_gym
|
||||||
|
|
||||||
|
### indoor
|
||||||
|
|
||||||
|
- clock
|
||||||
|
|
||||||
### all_tags
|
### all_tags
|
||||||
|
|
||||||
- cycle_highways
|
- cycle_highways
|
||||||
|
|
|
@ -67,6 +67,7 @@ This is a special layer - data is not sourced from OpenStreetMap
|
||||||
- [shower](#shower)
|
- [shower](#shower)
|
||||||
- [preset_description](#preset_description)
|
- [preset_description](#preset_description)
|
||||||
- [brand](#brand)
|
- [brand](#brand)
|
||||||
|
- [indoor](#indoor)
|
||||||
2. [Filters](#filters)
|
2. [Filters](#filters)
|
||||||
|
|
||||||
## Supported attributes
|
## Supported attributes
|
||||||
|
@ -107,6 +108,7 @@ This is a special layer - data is not sourced from OpenStreetMap
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/seasonal#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/seasonal/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [seasonal](https://wiki.openstreetmap.org/wiki/Key:seasonal) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:seasonal%3Dno) [summer](https://wiki.openstreetmap.org/wiki/Tag:seasonal%3Dsummer) [spring;summer;autumn](https://wiki.openstreetmap.org/wiki/Tag:seasonal%3Dspring;summer;autumn) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/seasonal#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/seasonal/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [seasonal](https://wiki.openstreetmap.org/wiki/Key:seasonal) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:seasonal%3Dno) [summer](https://wiki.openstreetmap.org/wiki/Tag:seasonal%3Dsummer) [spring;summer;autumn](https://wiki.openstreetmap.org/wiki/Tag:seasonal%3Dspring;summer;autumn) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/shower#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/shower/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [shower](https://wiki.openstreetmap.org/wiki/Key:shower) | Multiple choice | [hot](https://wiki.openstreetmap.org/wiki/Tag:shower%3Dhot) [cold](https://wiki.openstreetmap.org/wiki/Tag:shower%3Dcold) [yes](https://wiki.openstreetmap.org/wiki/Tag:shower%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:shower%3Dno) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/shower#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/shower/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [shower](https://wiki.openstreetmap.org/wiki/Key:shower) | Multiple choice | [hot](https://wiki.openstreetmap.org/wiki/Tag:shower%3Dhot) [cold](https://wiki.openstreetmap.org/wiki/Tag:shower%3Dcold) [yes](https://wiki.openstreetmap.org/wiki/Tag:shower%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:shower%3Dno) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/brand#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/brand/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [brand](https://wiki.openstreetmap.org/wiki/Key:brand) | [string](../SpecialInputElements.md#string) | |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/brand#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/brand/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [brand](https://wiki.openstreetmap.org/wiki/Key:brand) | [string](../SpecialInputElements.md#string) | |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/indoor#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/indoor/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [indoor](https://wiki.openstreetmap.org/wiki/Key:indoor) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:indoor%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:indoor%3Dno) |
|
||||||
|
|
||||||
### questions
|
### questions
|
||||||
Show the questions block at this location
|
Show the questions block at this location
|
||||||
|
@ -540,6 +542,13 @@ The question is `Is {title()} part of a bigger brand?`
|
||||||
|
|
||||||
- *Not part of a bigger brand* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:nobrand' target='_blank'>nobrand</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:nobrand%3Dyes' target='_blank'>yes</a>
|
- *Not part of a bigger brand* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:nobrand' target='_blank'>nobrand</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:nobrand%3Dyes' target='_blank'>yes</a>
|
||||||
|
|
||||||
|
### indoor
|
||||||
|
|
||||||
|
The question is `Is this object located indoors?`
|
||||||
|
|
||||||
|
- *This object is located indoors* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:indoor' target='_blank'>indoor</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:indoor%3Dyes' target='_blank'>yes</a>
|
||||||
|
- *This object is located outdoors* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:indoor' target='_blank'>indoor</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:indoor%3Dno' target='_blank'>no</a>
|
||||||
|
|
||||||
## Filters
|
## Filters
|
||||||
|
|
||||||
| id | question | osmTags |
|
| id | question | osmTags |
|
||||||
|
|
|
@ -538,7 +538,8 @@ This table gives a summary of ids, names and other metainformation. [See the onl
|
||||||
| CBJ_Aerial_20230516 | CBJ Aerial Imagery (May 2023) | photo | ⭐ | City and Borough of Juneau |
|
| CBJ_Aerial_20230516 | CBJ Aerial Imagery (May 2023) | photo | ⭐ | City and Borough of Juneau |
|
||||||
| CBJ_Aerial_20230618 | CBJ Aerial Imagery (June 2023) | photo | | City and Borough of Juneau |
|
| CBJ_Aerial_20230618 | CBJ Aerial Imagery (June 2023) | photo | | City and Borough of Juneau |
|
||||||
| FNSB_Aerial_2023 | FNSB Aerial Imagery (2023) | photo | ⭐ | Fairbanks North Star Borough |
|
| FNSB_Aerial_2023 | FNSB Aerial Imagery (2023) | photo | ⭐ | Fairbanks North Star Borough |
|
||||||
| MOA_Aerial_2021 | MOA Aerial Imagery (2021) | photo | | Municipality of Anchorage GIS |
|
| MOA_Aerial_2021 | MOA Aerial Imagery (2021) | historicphoto | | Municipality of Anchorage GIS |
|
||||||
|
| MOA_Aerial_2024 | MOA Aerial Imagery (2024) | photo | ⭐ | Municipality of Anchorage GIS |
|
||||||
| MSB_Aerial_2019 | MSB Aerial Imagery - Area 1(2019) | historicphoto | | Matanuska-Susitna Borough GIS Division |
|
| MSB_Aerial_2019 | MSB Aerial Imagery - Area 1(2019) | historicphoto | | Matanuska-Susitna Borough GIS Division |
|
||||||
| MSB_Aerial_2020 | MSB Aerial Imagery - Area 2 (2020) | historicphoto | | Matanuska-Susitna Borough GIS Division |
|
| MSB_Aerial_2020 | MSB Aerial Imagery - Area 2 (2020) | historicphoto | | Matanuska-Susitna Borough GIS Division |
|
||||||
| MSB_Aerial_2021 | MSB Aerial Imagery - Area 3 (2021) | historicphoto | | Matanuska-Susitna Borough GIS Division |
|
| MSB_Aerial_2021 | MSB Aerial Imagery - Area 3 (2021) | historicphoto | | Matanuska-Susitna Borough GIS Division |
|
||||||
|
@ -558,20 +559,27 @@ This table gives a summary of ids, names and other metainformation. [See the onl
|
||||||
| LA_County_Basemap | LA County Basemap | map | | Los Angeles County |
|
| LA_County_Basemap | LA County Basemap | map | | Los Angeles County |
|
||||||
| Manhattan_Beach_CA_2023 | City of Manhattan Beach Orthoimagery (2023) | photo | | City of Manhattan Beach |
|
| Manhattan_Beach_CA_2023 | City of Manhattan Beach Orthoimagery (2023) | photo | | City of Manhattan Beach |
|
||||||
| Manteca_CA_2022 | City of Manteca Orthoimagery (2022) | photo | | City of Manteca |
|
| Manteca_CA_2022 | City of Manteca Orthoimagery (2022) | photo | | City of Manteca |
|
||||||
| Modesto_CA_2023 | City of Modesto Orthoimagery (2023) | photo | | City of Modesto |
|
| Modesto_CA_2023 | City of Modesto Orthoimagery (2023) | historicphoto | | City of Modesto |
|
||||||
|
| Modesto_CA_2024 | City of Modesto Orthoimagery (2024) | photo | | City of Modesto |
|
||||||
| Orange_CA_2022 | Orange County Orthoimagery (2022) | photo | | Orange County |
|
| Orange_CA_2022 | Orange County Orthoimagery (2022) | photo | | Orange County |
|
||||||
| Roseville_CA_2023 | City of Roseville Orthoimagery (2023) | historicphoto | | City of Roseville |
|
| Roseville_CA_2023 | City of Roseville Orthoimagery (2023) | historicphoto | | City of Roseville |
|
||||||
| Roseville_CA_2024 | City of Roseville Orthoimagery (2024) | photo | | City of Roseville |
|
| Roseville_CA_2024 | City of Roseville Orthoimagery (2024) | photo | | City of Roseville |
|
||||||
| Sacramento_CA_2022 | Sacramento County Orthoimagery (2022) | photo | | Sacramento County |
|
| Sacramento_CA_2022 | Sacramento County Orthoimagery (2022) | photo | | Sacramento County |
|
||||||
| San_Bernardino_CA_2023 | San Bernardino County Orthoimagery (2023) | photo | | San Bernardino County |
|
| San_Bernardino_CA_2023 | San Bernardino County Orthoimagery (2023) | historicphoto | | San Bernardino County |
|
||||||
| San_Francisco_CA_2022 | San Francisco Orthoimagery (2022) | historicphoto | | City and County of San Francisco |
|
| San_Bernardino_CA_2024 | San Bernardino County Orthoimagery (2024) | photo | | San Bernardino County |
|
||||||
| San_Francisco_CA_2022_CIR | San Francisco Orthoimagery CIR (2022) | historicphoto | | City and County of San Francisco |
|
| San_Francisco_2022 | San Francisco Orthoimagery (2022) | historicphoto | | City and County of San Francisco |
|
||||||
| San_Francisco_Ortho_2023 | San Francisco Orthoimagery (2023) | photo | | City and County of San Francisco |
|
| San_Francisco_2022_CIR | San Francisco Orthoimagery CIR (2022) | historicphoto | | City and County of San Francisco |
|
||||||
|
| San_Francisco_2023 | San Francisco Orthoimagery (2023) | historicphoto | | City and County of San Francisco |
|
||||||
|
| San_Francisco_2023_CIR | San Francisco Orthoimagery CIR (2023) | historicphoto | | City and County of San Francisco |
|
||||||
|
| San_Francisco_2024 | San Francisco Orthoimagery (2024) | photo | | City and County of San Francisco |
|
||||||
|
| San_Francisco_2024_CIR | San Francisco Orthoimagery CIR (2024) | photo | | City and County of San Francisco |
|
||||||
| San_Mateo_CA_2022 | San Mateo County Orthoimagery (2022) | photo | | San Mateo County |
|
| San_Mateo_CA_2022 | San Mateo County Orthoimagery (2022) | photo | | San Mateo County |
|
||||||
| Santa_Clara_CA_2022 | Santa Clara County Orthoimagery (2022) | photo | | County of Santa Clara |
|
| Santa_Clara_CA_2022 | Santa Clara County Orthoimagery (2022) | photo | | County of Santa Clara |
|
||||||
| Santa_Clara_CA_2023 | Santa Clara County Orthoimagery (2023) | photo | | County of Santa Clara |
|
| Santa_Clara_CA_2023 | Santa Clara County Orthoimagery (2023) | photo | | County of Santa Clara |
|
||||||
| Santa_Rosa_CA_2022 | City of Santa Rosa Orthoimagery (2022) | photo | | City of Santa Rosa |
|
| Santa_Rosa_CA_2022 | City of Santa Rosa Orthoimagery (2022) | photo | | City of Santa Rosa |
|
||||||
| Solano_CA_2022 | Solano County Orthoimagery (2022) | photo | | Solano County |
|
| Solano_CA_2022 | Solano County Orthoimagery (2022) | historicphoto | | Solano County |
|
||||||
|
| Solano_CA_2023 | Solano County Orthoimagery (2023) | historicphoto | | Solano County |
|
||||||
|
| Solano_CA_2024 | Solano County Orthoimagery (2024) | photo | | Solano County |
|
||||||
| Stockton_CA_2023 | City of Stockton Orthoimagery (2023) | photo | | City of Stockton |
|
| Stockton_CA_2023 | City of Stockton Orthoimagery (2023) | photo | | City of Stockton |
|
||||||
| Arapahoe-County-Aerials-Latest | Arapahoe County Aerials Latest | photo | | Arapahoe County GIS |
|
| Arapahoe-County-Aerials-Latest | Arapahoe County Aerials Latest | photo | | Arapahoe County GIS |
|
||||||
| MCGIS-County-NAIP-Imagery-2015 | Mesa County GIS NAIP 2015 | historicphoto | | Mesa County GIS |
|
| MCGIS-County-NAIP-Imagery-2015 | Mesa County GIS NAIP 2015 | historicphoto | | Mesa County GIS |
|
||||||
|
@ -579,7 +587,8 @@ This table gives a summary of ids, names and other metainformation. [See the onl
|
||||||
| MCGIS-County-Valleywide-Imagery-2020 | Mesa County GIS Valleywide 2020 | historicphoto | | Mesa County GIS |
|
| MCGIS-County-Valleywide-Imagery-2020 | Mesa County GIS Valleywide 2020 | historicphoto | | Mesa County GIS |
|
||||||
| MCGIS-County-Valleywide-Imagery-2022 | Mesa County GIS Valleywide 2022 | photo | | Mesa County GIS |
|
| MCGIS-County-Valleywide-Imagery-2022 | Mesa County GIS Valleywide 2022 | photo | | Mesa County GIS |
|
||||||
| MCGIS-County-Valleywide-Imagery-2024 | Mesa County GIS Valleywide 2024 | photo | | Mesa County GIS |
|
| MCGIS-County-Valleywide-Imagery-2024 | Mesa County GIS Valleywide 2024 | photo | | Mesa County GIS |
|
||||||
| CT_ECO_Ortho_2019_RGB | CT ECO Orthoimagery (2019) | photo | | Connecticut Environmental Conditions Online |
|
| CT_ECO_Ortho_2019_RGB | CT ECO Orthoimagery (2019) | historicphoto | | Connecticut Environmental Conditions Online |
|
||||||
|
| CT_ECO_Ortho_2023_RGB | CT ECO Orthoimagery (2023) | photo | | Connecticut Environmental Conditions Online |
|
||||||
| CT_ECO_Shaded_relief_2016 | CT ECO Shaded Relief | elevation | | Connecticut Environmental Conditions Online |
|
| CT_ECO_Shaded_relief_2016 | CT ECO Shaded Relief | elevation | | Connecticut Environmental Conditions Online |
|
||||||
| MetroCOG_Ortho_2020 | MetroCOG Orthoimagery (2020) | photo | | Connecticut Metropolitan Council of Governments |
|
| MetroCOG_Ortho_2020 | MetroCOG Orthoimagery (2020) | photo | | Connecticut Metropolitan Council of Governments |
|
||||||
| DC_From_Above_Ortho_2019 | DC From Above Orthophoto 2019 | historicphoto | | OCTO, DCGIS |
|
| DC_From_Above_Ortho_2019 | DC From Above Orthophoto 2019 | historicphoto | | OCTO, DCGIS |
|
||||||
|
@ -818,7 +827,8 @@ This table gives a summary of ids, names and other metainformation. [See the onl
|
||||||
| Suan_Juan_WA_2023 | Suan Juan County Aerials (2023) | photo | ⭐ | San Juan County GIS |
|
| Suan_Juan_WA_2023 | Suan Juan County Aerials (2023) | photo | ⭐ | San Juan County GIS |
|
||||||
| Suan_Juan_WA_Basemap | Suan Juan County Basemap | map | | San Juan County GIS |
|
| Suan_Juan_WA_Basemap | Suan Juan County Basemap | map | | San Juan County GIS |
|
||||||
| Snohomish_WA_2020 | Snohomish County Orthoimagery (2020) | historicphoto | | Snohomish County GIS |
|
| Snohomish_WA_2020 | Snohomish County Orthoimagery (2020) | historicphoto | | Snohomish County GIS |
|
||||||
| Snohomish_WA_2022 | Snohomish County Orthoimagery (2022) | photo | | Snohomish County GIS |
|
| Snohomish_WA_2022 | Snohomish County Orthoimagery (2022) | historicphoto | | Snohomish County GIS |
|
||||||
|
| Snohomish_WA_2024 | Snohomish County Orthoimagery (2024) | photo | | Snohomish County GIS |
|
||||||
| WISC_DNR_Ortho_Composite | Wisconsin Leaf-Off Orthophotography (DNR) | photo | | Wisconsin Regional Orthoimagery Consortium, Southeastern Wisconsin Regional Planning Commission, Wisconsin Department of Natural Resources |
|
| WISC_DNR_Ortho_Composite | Wisconsin Leaf-Off Orthophotography (DNR) | photo | | Wisconsin Regional Orthoimagery Consortium, Southeastern Wisconsin Regional Planning Commission, Wisconsin Department of Natural Resources |
|
||||||
| Monongalia_WV_2022 | Monongalia County 2022 Aerial Imagery | historicphoto | | Monongalia Morgantown Area Geospatial Information Consortium |
|
| Monongalia_WV_2022 | Monongalia County 2022 Aerial Imagery | historicphoto | | Monongalia Morgantown Area Geospatial Information Consortium |
|
||||||
| Monongalia_WV_2023 | Monongalia County 2023 Aerial Imagery | photo | ⭐ | Monongalia Morgantown Area Geospatial Information Consortium |
|
| Monongalia_WV_2023 | Monongalia County 2023 Aerial Imagery | photo | ⭐ | Monongalia Morgantown Area Geospatial Information Consortium |
|
||||||
|
|
|
@ -362,6 +362,25 @@ This tagrendering has labels
|
||||||
| artwork-artwork_type.12 | Tilework | artwork_type=tilework |
|
| artwork-artwork_type.12 | Tilework | artwork_type=tilework |
|
||||||
| artwork-artwork_type.13 | Woodcarving | artwork_type=woodcarving |
|
| artwork-artwork_type.13 | Woodcarving | artwork_type=woodcarving |
|
||||||
|
|
||||||
|
| id | question | osmTags |
|
||||||
|
-----|-----|----- |
|
||||||
|
| memorial-type.0 | *What type of memorial is this?* (default) | |
|
||||||
|
| memorial-type.1 | This is a statue | memorial=statue |
|
||||||
|
| memorial-type.2 | This is a plaque | memorial=plaque |
|
||||||
|
| memorial-type.3 | This is a commemorative bench | memorial=bench |
|
||||||
|
| memorial-type.4 | This is a ghost bike - a bicycle painted white to remember a cyclist whom deceased because of a car crash | memorial=ghost_bike |
|
||||||
|
| memorial-type.5 | This is a stolperstein (stumbing stone) | memorial=stolperstein |
|
||||||
|
| memorial-type.6 | This is a stele | memorial=stele |
|
||||||
|
| memorial-type.7 | This is a memorial stone | memorial=stone |
|
||||||
|
| memorial-type.8 | This is a bust | memorial=bust |
|
||||||
|
| memorial-type.9 | This is a sculpture | memorial=sculpture |
|
||||||
|
| memorial-type.10 | This is an obelisk | memorial=obelisk |
|
||||||
|
| memorial-type.11 | This is a cross | memorial=cross |
|
||||||
|
| memorial-type.12 | This is a blue plaque | memorial=blue_plaque |
|
||||||
|
| memorial-type.13 | This is a historic tank, permanently placed in public space as memorial | memorial=tank |
|
||||||
|
| memorial-type.14 | This is a memorial tree | memorial=tree |
|
||||||
|
| memorial-type.15 | This is a gravestone; the person is buried here | historic=tomb |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
This document is autogenerated from [assets/layers/artwork/artwork.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/layers/artwork/artwork.json)
|
This document is autogenerated from [assets/layers/artwork/artwork.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/layers/artwork/artwork.json)
|
||||||
|
|
|
@ -365,6 +365,25 @@ This tagrendering has labels
|
||||||
| artwork-artwork_type.12 | Tilework | artwork_type=tilework |
|
| artwork-artwork_type.12 | Tilework | artwork_type=tilework |
|
||||||
| artwork-artwork_type.13 | Woodcarving | artwork_type=woodcarving |
|
| artwork-artwork_type.13 | Woodcarving | artwork_type=woodcarving |
|
||||||
|
|
||||||
|
| id | question | osmTags |
|
||||||
|
-----|-----|----- |
|
||||||
|
| memorial-type.0 | *What type of memorial is this?* (default) | |
|
||||||
|
| memorial-type.1 | This is a statue | memorial=statue |
|
||||||
|
| memorial-type.2 | This is a plaque | memorial=plaque |
|
||||||
|
| memorial-type.3 | This is a commemorative bench | memorial=bench |
|
||||||
|
| memorial-type.4 | This is a ghost bike - a bicycle painted white to remember a cyclist whom deceased because of a car crash | memorial=ghost_bike |
|
||||||
|
| memorial-type.5 | This is a stolperstein (stumbing stone) | memorial=stolperstein |
|
||||||
|
| memorial-type.6 | This is a stele | memorial=stele |
|
||||||
|
| memorial-type.7 | This is a memorial stone | memorial=stone |
|
||||||
|
| memorial-type.8 | This is a bust | memorial=bust |
|
||||||
|
| memorial-type.9 | This is a sculpture | memorial=sculpture |
|
||||||
|
| memorial-type.10 | This is an obelisk | memorial=obelisk |
|
||||||
|
| memorial-type.11 | This is a cross | memorial=cross |
|
||||||
|
| memorial-type.12 | This is a blue plaque | memorial=blue_plaque |
|
||||||
|
| memorial-type.13 | This is a historic tank, permanently placed in public space as memorial | memorial=tank |
|
||||||
|
| memorial-type.14 | This is a memorial tree | memorial=tree |
|
||||||
|
| memorial-type.15 | This is a gravestone; the person is buried here | historic=tomb |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
This document is autogenerated from [assets/themes/ghostsigns/ghostsigns.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/themes/ghostsigns/ghostsigns.json)
|
This document is autogenerated from [assets/themes/ghostsigns/ghostsigns.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/themes/ghostsigns/ghostsigns.json)
|
||||||
|
|
|
@ -15,6 +15,8 @@ A layer showing facilities where one can clean their bike
|
||||||
- [images](#images)
|
- [images](#images)
|
||||||
- [bike_cleaning-service_bicycle_cleaning_charge](#bike_cleaning-service_bicycle_cleaning_charge)
|
- [bike_cleaning-service_bicycle_cleaning_charge](#bike_cleaning-service_bicycle_cleaning_charge)
|
||||||
- [bike_cleaning-charge](#bike_cleaning-charge)
|
- [bike_cleaning-charge](#bike_cleaning-charge)
|
||||||
|
- [automated](#automated)
|
||||||
|
- [self_service](#self_service)
|
||||||
- [leftover-questions](#leftover-questions)
|
- [leftover-questions](#leftover-questions)
|
||||||
- [move-button](#move-button)
|
- [move-button](#move-button)
|
||||||
- [delete-button](#delete-button)
|
- [delete-button](#delete-button)
|
||||||
|
@ -36,11 +38,10 @@ The following options to create new points are included:
|
||||||
Elements must match **any** of the following expressions:
|
Elements must match **any** of the following expressions:
|
||||||
|
|
||||||
- <a href='https://wiki.openstreetmap.org/wiki/Key:amenity' target='_blank'>amenity</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:amenity%3Dbicycle_wash' target='_blank'>bicycle_wash</a>
|
- <a href='https://wiki.openstreetmap.org/wiki/Key:amenity' target='_blank'>amenity</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:amenity%3Dbicycle_wash' target='_blank'>bicycle_wash</a>
|
||||||
- <a href='https://wiki.openstreetmap.org/wiki/Key:amenity' target='_blank'>amenity</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:amenity%3Dbike_wash' target='_blank'>bike_wash</a>
|
|
||||||
- <a href='https://wiki.openstreetmap.org/wiki/Key:service:bicycle:cleaning' target='_blank'>service:bicycle:cleaning</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:cleaning%3Dyes' target='_blank'>yes</a>
|
- <a href='https://wiki.openstreetmap.org/wiki/Key:service:bicycle:cleaning' target='_blank'>service:bicycle:cleaning</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:cleaning%3Dyes' target='_blank'>yes</a>
|
||||||
- <a href='https://wiki.openstreetmap.org/wiki/Key:service:bicycle:cleaning' target='_blank'>service:bicycle:cleaning</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:cleaning%3Ddiy' target='_blank'>diy</a>
|
- <a href='https://wiki.openstreetmap.org/wiki/Key:service:bicycle:cleaning' target='_blank'>service:bicycle:cleaning</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:cleaning%3Ddiy' target='_blank'>diy</a>
|
||||||
|
|
||||||
[Execute on overpass](http://overpass-turbo.eu/?Q=%5Bout%3Ajson%5D%5Btimeout%3A90%5D%3B%28%20%20%20%20nwr%5B%22amenity%22%3D%22bicycle_wash%22%5D%28%7B%7Bbbox%7D%7D%29%3B%0A%20%20%20%20nwr%5B%22amenity%22%3D%22bike_wash%22%5D%28%7B%7Bbbox%7D%7D%29%3B%0A%20%20%20%20nwr%5B%22service%3Abicycle%3Acleaning%22%3D%22yes%22%5D%28%7B%7Bbbox%7D%7D%29%3B%0A%20%20%20%20nwr%5B%22service%3Abicycle%3Acleaning%22%3D%22diy%22%5D%28%7B%7Bbbox%7D%7D%29%3B%0A%29%3Bout%20body%3B%3E%3Bout%20skel%20qt%3B)
|
[Execute on overpass](http://overpass-turbo.eu/?Q=%5Bout%3Ajson%5D%5Btimeout%3A90%5D%3B%28%20%20%20%20nwr%5B%22amenity%22%3D%22bicycle_wash%22%5D%28%7B%7Bbbox%7D%7D%29%3B%0A%20%20%20%20nwr%5B%22service%3Abicycle%3Acleaning%22%3D%22yes%22%5D%28%7B%7Bbbox%7D%7D%29%3B%0A%20%20%20%20nwr%5B%22service%3Abicycle%3Acleaning%22%3D%22diy%22%5D%28%7B%7Bbbox%7D%7D%29%3B%0A%29%3Bout%20body%3B%3E%3Bout%20skel%20qt%3B)
|
||||||
|
|
||||||
## Supported attributes
|
## Supported attributes
|
||||||
|
|
||||||
|
@ -50,6 +51,8 @@ Elements must match **any** of the following expressions:
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/service:bicycle:cleaning:charge#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/service%3Abicycle%3Acleaning%3Acharge/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [service:bicycle:cleaning:charge](https://wiki.openstreetmap.org/wiki/Key:service:bicycle:cleaning:charge) | [string](../SpecialInputElements.md#string) | |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/service:bicycle:cleaning:charge#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/service%3Abicycle%3Acleaning%3Acharge/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [service:bicycle:cleaning:charge](https://wiki.openstreetmap.org/wiki/Key:service:bicycle:cleaning:charge) | [string](../SpecialInputElements.md#string) | |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/charge#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/charge/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [charge](https://wiki.openstreetmap.org/wiki/Key:charge) | [string](../SpecialInputElements.md#string) | |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/charge#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/charge/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [charge](https://wiki.openstreetmap.org/wiki/Key:charge) | [string](../SpecialInputElements.md#string) | |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/automated#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/automated/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [automated](https://wiki.openstreetmap.org/wiki/Key:automated) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:automated%3Dno) [yes](https://wiki.openstreetmap.org/wiki/Tag:automated%3Dyes) |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/self_service#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/self_service/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [self_service](https://wiki.openstreetmap.org/wiki/Key:self_service) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:self_service%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:self_service%3Dno) |
|
||||||
|
|
||||||
### images
|
### images
|
||||||
This block shows the known images which are linked with the `image`-keys, but also via `mapillary` and `wikidata` and shows the button to upload new images
|
This block shows the known images which are linked with the `image`-keys, but also via `mapillary` and `wikidata` and shows the button to upload new images
|
||||||
|
@ -64,7 +67,7 @@ The question is `How much does it cost to use the cleaning service?`
|
||||||
- *The cleaning service is free to use* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:service:bicycle:cleaning:fee' target='_blank'>service:bicycle:cleaning:fee</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:cleaning:fee%3Dno' target='_blank'>no</a>
|
- *The cleaning service is free to use* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:service:bicycle:cleaning:fee' target='_blank'>service:bicycle:cleaning:fee</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:cleaning:fee%3Dno' target='_blank'>no</a>
|
||||||
- *Free to use* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:service:bicycle:cleaning:fee' target='_blank'>service:bicycle:cleaning:fee</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:cleaning:fee%3Dyes' target='_blank'>yes</a> & service:bicycle:cleaning:charge=. _This option cannot be chosen as answer_
|
- *Free to use* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:service:bicycle:cleaning:fee' target='_blank'>service:bicycle:cleaning:fee</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:cleaning:fee%3Dyes' target='_blank'>yes</a> & service:bicycle:cleaning:charge=. _This option cannot be chosen as answer_
|
||||||
|
|
||||||
This tagrendering is only visible in the popup if the following condition is met: amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+
|
This tagrendering is only visible in the popup if the following condition is met: amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+
|
||||||
|
|
||||||
### bike_cleaning-charge
|
### bike_cleaning-charge
|
||||||
|
|
||||||
|
@ -74,7 +77,25 @@ The question is `How much does it cost to use the cleaning service?`
|
||||||
- *This cleaning service is free to use* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:fee' target='_blank'>fee</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:fee%3Dno' target='_blank'>no</a>
|
- *This cleaning service is free to use* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:fee' target='_blank'>fee</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:fee%3Dno' target='_blank'>no</a>
|
||||||
- *There is a fee to use this cleaning service* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:fee' target='_blank'>fee</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:fee%3Dyes' target='_blank'>yes</a>
|
- *There is a fee to use this cleaning service* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:fee' target='_blank'>fee</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:fee%3Dyes' target='_blank'>yes</a>
|
||||||
|
|
||||||
This tagrendering is only visible in the popup if the following condition is met: <a href='https://wiki.openstreetmap.org/wiki/Key:amenity' target='_blank'>amenity</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:amenity%3Dbike_wash' target='_blank'>bike_wash</a> | <a href='https://wiki.openstreetmap.org/wiki/Key:amenity' target='_blank'>amenity</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:amenity%3Dbicycle_wash' target='_blank'>bicycle_wash</a>
|
This tagrendering is only visible in the popup if the following condition is met: <a href='https://wiki.openstreetmap.org/wiki/Key:amenity' target='_blank'>amenity</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:amenity%3Dbicycle_wash' target='_blank'>bicycle_wash</a>
|
||||||
|
|
||||||
|
### automated
|
||||||
|
|
||||||
|
The question is `Is this bicycle cleaning service automated?`
|
||||||
|
|
||||||
|
- *This is a manual bike washing station* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:automated' target='_blank'>automated</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:automated%3Dno' target='_blank'>no</a>
|
||||||
|
- *This is an automated bike wash* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:automated' target='_blank'>automated</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:automated%3Dyes' target='_blank'>yes</a>
|
||||||
|
|
||||||
|
This tagrendering is only visible in the popup if the following condition is met: <a href='https://wiki.openstreetmap.org/wiki/Key:amenity' target='_blank'>amenity</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:amenity%3Dbicycle_wash' target='_blank'>bicycle_wash</a>
|
||||||
|
|
||||||
|
### self_service
|
||||||
|
|
||||||
|
The question is `Is this cleaning service self-service?`
|
||||||
|
|
||||||
|
- *This cleaning service is self-service* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:self_service' target='_blank'>self_service</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:self_service%3Dyes' target='_blank'>yes</a>
|
||||||
|
- *This cleaning service is operated by an employee* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:self_service' target='_blank'>self_service</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:self_service%3Dno' target='_blank'>no</a>
|
||||||
|
|
||||||
|
This tagrendering is only visible in the popup if the following condition is met: <a href='https://wiki.openstreetmap.org/wiki/Key:amenity' target='_blank'>amenity</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:amenity%3Dbicycle_wash' target='_blank'>bicycle_wash</a>
|
||||||
|
|
||||||
### leftover-questions
|
### leftover-questions
|
||||||
|
|
||||||
|
|
|
@ -6,6 +6,7 @@ Layer with public clocks
|
||||||
|
|
||||||
- This layer is shown at zoomlevel **8** and higher
|
- This layer is shown at zoomlevel **8** and higher
|
||||||
- This layer will automatically load [walls_and_buildings](./walls_and_buildings.md) into the layout as it depends on it: preset `a wall-mounted clock` snaps to this layer (clock.presets[1])
|
- This layer will automatically load [walls_and_buildings](./walls_and_buildings.md) into the layout as it depends on it: preset `a wall-mounted clock` snaps to this layer (clock.presets[1])
|
||||||
|
- This layer will automatically load [walls_and_buildings](./walls_and_buildings.md) into the layout as it depends on it: preset `a wall-mounted clock, mounted directly on a wall` snaps to this layer (clock.presets[2])
|
||||||
|
|
||||||
## Table of contents
|
## Table of contents
|
||||||
|
|
||||||
|
@ -16,6 +17,7 @@ Layer with public clocks
|
||||||
- [images](#images)
|
- [images](#images)
|
||||||
- [support](#support)
|
- [support](#support)
|
||||||
- [display](#display)
|
- [display](#display)
|
||||||
|
- [indoor](#indoor)
|
||||||
- [visibility](#visibility)
|
- [visibility](#visibility)
|
||||||
- [date](#date)
|
- [date](#date)
|
||||||
- [thermometer](#thermometer)
|
- [thermometer](#thermometer)
|
||||||
|
@ -40,6 +42,7 @@ The following options to create new points are included:
|
||||||
|
|
||||||
- **a clock** which has the following tags:<a href='https://wiki.openstreetmap.org/wiki/Key:amenity' target='_blank'>amenity</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:amenity%3Dclock' target='_blank'>clock</a>
|
- **a clock** which has the following tags:<a href='https://wiki.openstreetmap.org/wiki/Key:amenity' target='_blank'>amenity</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:amenity%3Dclock' target='_blank'>clock</a>
|
||||||
- **a wall-mounted clock** which has the following tags:<a href='https://wiki.openstreetmap.org/wiki/Key:amenity' target='_blank'>amenity</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:amenity%3Dclock' target='_blank'>clock</a> & <a href='https://wiki.openstreetmap.org/wiki/Key:support' target='_blank'>support</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:support%3Dwall_mounted' target='_blank'>wall_mounted</a> (snaps to layers `walls_and_buildings`)
|
- **a wall-mounted clock** which has the following tags:<a href='https://wiki.openstreetmap.org/wiki/Key:amenity' target='_blank'>amenity</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:amenity%3Dclock' target='_blank'>clock</a> & <a href='https://wiki.openstreetmap.org/wiki/Key:support' target='_blank'>support</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:support%3Dwall_mounted' target='_blank'>wall_mounted</a> (snaps to layers `walls_and_buildings`)
|
||||||
|
- **a wall-mounted clock, mounted directly on a wall** which has the following tags:<a href='https://wiki.openstreetmap.org/wiki/Key:amenity' target='_blank'>amenity</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:amenity%3Dclock' target='_blank'>clock</a> & <a href='https://wiki.openstreetmap.org/wiki/Key:support' target='_blank'>support</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:support%3Dwall' target='_blank'>wall</a> (snaps to layers `walls_and_buildings`)
|
||||||
|
|
||||||
## Basic tags for this layer
|
## Basic tags for this layer
|
||||||
|
|
||||||
|
@ -53,8 +56,9 @@ Elements must match the expression **<a href='https://wiki.openstreetmap.org/wik
|
||||||
|
|
||||||
| attribute | type | values which are supported by this layer |
|
| attribute | type | values which are supported by this layer |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/support#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/support/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [support](https://wiki.openstreetmap.org/wiki/Key:support) | Multiple choice | [pole](https://wiki.openstreetmap.org/wiki/Tag:support%3Dpole) [wall_mounted](https://wiki.openstreetmap.org/wiki/Tag:support%3Dwall_mounted) [billboard](https://wiki.openstreetmap.org/wiki/Tag:support%3Dbillboard) [ground](https://wiki.openstreetmap.org/wiki/Tag:support%3Dground) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/support#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/support/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [support](https://wiki.openstreetmap.org/wiki/Key:support) | Multiple choice | [pole](https://wiki.openstreetmap.org/wiki/Tag:support%3Dpole) [wall_mounted](https://wiki.openstreetmap.org/wiki/Tag:support%3Dwall_mounted) [wall](https://wiki.openstreetmap.org/wiki/Tag:support%3Dwall) [billboard](https://wiki.openstreetmap.org/wiki/Tag:support%3Dbillboard) [ground](https://wiki.openstreetmap.org/wiki/Tag:support%3Dground) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/display#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/display/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [display](https://wiki.openstreetmap.org/wiki/Key:display) | Multiple choice | [analog](https://wiki.openstreetmap.org/wiki/Tag:display%3Danalog) [digital](https://wiki.openstreetmap.org/wiki/Tag:display%3Ddigital) [sundial](https://wiki.openstreetmap.org/wiki/Tag:display%3Dsundial) [unorthodox](https://wiki.openstreetmap.org/wiki/Tag:display%3Dunorthodox) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/display#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/display/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [display](https://wiki.openstreetmap.org/wiki/Key:display) | Multiple choice | [analog](https://wiki.openstreetmap.org/wiki/Tag:display%3Danalog) [digital](https://wiki.openstreetmap.org/wiki/Tag:display%3Ddigital) [sundial](https://wiki.openstreetmap.org/wiki/Tag:display%3Dsundial) [unorthodox](https://wiki.openstreetmap.org/wiki/Tag:display%3Dunorthodox) |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/indoor#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/indoor/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [indoor](https://wiki.openstreetmap.org/wiki/Key:indoor) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:indoor%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:indoor%3Dno) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/visibility#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/visibility/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [visibility](https://wiki.openstreetmap.org/wiki/Key:visibility) | Multiple choice | [house](https://wiki.openstreetmap.org/wiki/Tag:visibility%3Dhouse) [street](https://wiki.openstreetmap.org/wiki/Tag:visibility%3Dstreet) [area](https://wiki.openstreetmap.org/wiki/Tag:visibility%3Darea) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/visibility#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/visibility/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [visibility](https://wiki.openstreetmap.org/wiki/Key:visibility) | Multiple choice | [house](https://wiki.openstreetmap.org/wiki/Tag:visibility%3Dhouse) [street](https://wiki.openstreetmap.org/wiki/Tag:visibility%3Dstreet) [area](https://wiki.openstreetmap.org/wiki/Tag:visibility%3Darea) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/date#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/date/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [date](https://wiki.openstreetmap.org/wiki/Key:date) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:date%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:date%3Dno) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/date#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/date/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [date](https://wiki.openstreetmap.org/wiki/Key:date) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:date%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:date%3Dno) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/thermometer#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/thermometer/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [thermometer](https://wiki.openstreetmap.org/wiki/Key:thermometer) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:thermometer%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:thermometer%3Dno) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/thermometer#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/thermometer/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [thermometer](https://wiki.openstreetmap.org/wiki/Key:thermometer) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:thermometer%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:thermometer%3Dno) |
|
||||||
|
@ -72,7 +76,8 @@ _This tagrendering has no question and is thus read-only_
|
||||||
The question is `In what way is the clock mounted?`
|
The question is `In what way is the clock mounted?`
|
||||||
|
|
||||||
- *This clock is mounted on a pole* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:support' target='_blank'>support</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:support%3Dpole' target='_blank'>pole</a>
|
- *This clock is mounted on a pole* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:support' target='_blank'>support</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:support%3Dpole' target='_blank'>pole</a>
|
||||||
- *This clock is mounted on a wall* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:support' target='_blank'>support</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:support%3Dwall_mounted' target='_blank'>wall_mounted</a>
|
- *This clock is mounted on a wall, usually through a support perpendicular to the wall* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:support' target='_blank'>support</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:support%3Dwall_mounted' target='_blank'>wall_mounted</a>
|
||||||
|
- *This clock is mounted directly on a wall* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:support' target='_blank'>support</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:support%3Dwall' target='_blank'>wall</a>
|
||||||
- *This clock is part of a billboard* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:support' target='_blank'>support</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:support%3Dbillboard' target='_blank'>billboard</a>
|
- *This clock is part of a billboard* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:support' target='_blank'>support</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:support%3Dbillboard' target='_blank'>billboard</a>
|
||||||
- *This clock is on the ground* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:support' target='_blank'>support</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:support%3Dground' target='_blank'>ground</a>
|
- *This clock is on the ground* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:support' target='_blank'>support</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:support%3Dground' target='_blank'>ground</a>
|
||||||
|
|
||||||
|
@ -85,6 +90,13 @@ The question is `How does this clock display the time?`
|
||||||
- *This clock displays the time with a sundial* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:display' target='_blank'>display</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:display%3Dsundial' target='_blank'>sundial</a>
|
- *This clock displays the time with a sundial* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:display' target='_blank'>display</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:display%3Dsundial' target='_blank'>sundial</a>
|
||||||
- *This clock displays the time in a non-standard way, e.g using binary, water or something else* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:display' target='_blank'>display</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:display%3Dunorthodox' target='_blank'>unorthodox</a>
|
- *This clock displays the time in a non-standard way, e.g using binary, water or something else* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:display' target='_blank'>display</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:display%3Dunorthodox' target='_blank'>unorthodox</a>
|
||||||
|
|
||||||
|
### indoor
|
||||||
|
|
||||||
|
The question is `Is this clock indoors?`
|
||||||
|
|
||||||
|
- *This clock is indoors* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:indoor' target='_blank'>indoor</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:indoor%3Dyes' target='_blank'>yes</a>
|
||||||
|
- *This clock is outdoors* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:indoor' target='_blank'>indoor</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:indoor%3Dno' target='_blank'>no</a>
|
||||||
|
|
||||||
### visibility
|
### visibility
|
||||||
|
|
||||||
The question is `How visible is this clock?`
|
The question is `How visible is this clock?`
|
||||||
|
|
|
@ -16,7 +16,7 @@ Crossings for pedestrians and cyclists
|
||||||
4. [Supported attributes](#supported-attributes)
|
4. [Supported attributes](#supported-attributes)
|
||||||
- [images](#images)
|
- [images](#images)
|
||||||
- [crossing-type](#crossing-type)
|
- [crossing-type](#crossing-type)
|
||||||
- [crossing-is-zebra](#crossing-is-zebra)
|
- [markings](#markings)
|
||||||
- [crossing-bicycle-allowed](#crossing-bicycle-allowed)
|
- [crossing-bicycle-allowed](#crossing-bicycle-allowed)
|
||||||
- [crossing-has-island](#crossing-has-island)
|
- [crossing-has-island](#crossing-has-island)
|
||||||
- [crossing-tactile](#crossing-tactile)
|
- [crossing-tactile](#crossing-tactile)
|
||||||
|
@ -60,8 +60,8 @@ Elements must match **any** of the following expressions:
|
||||||
|
|
||||||
| attribute | type | values which are supported by this layer |
|
| attribute | type | values which are supported by this layer |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/crossing#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/crossing/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [crossing](https://wiki.openstreetmap.org/wiki/Key:crossing) | Multiple choice | [uncontrolled](https://wiki.openstreetmap.org/wiki/Tag:crossing%3Duncontrolled) [traffic_signals](https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dtraffic_signals) [unmarked](https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dunmarked) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/crossing#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/crossing/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [crossing](https://wiki.openstreetmap.org/wiki/Key:crossing) | Multiple choice | [uncontrolled](https://wiki.openstreetmap.org/wiki/Tag:crossing%3Duncontrolled) [traffic_signals](https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dtraffic_signals) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/crossing_ref#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/crossing_ref/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [crossing_ref](https://wiki.openstreetmap.org/wiki/Key:crossing_ref) | Multiple choice | [zebra](https://wiki.openstreetmap.org/wiki/Tag:crossing_ref%3Dzebra) [](https://wiki.openstreetmap.org/wiki/Tag:crossing_ref%3D) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/crossing:markings#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/crossing%3Amarkings/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [crossing:markings](https://wiki.openstreetmap.org/wiki/Key:crossing:markings) | [string](../SpecialInputElements.md#string) | [no](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dno) [zebra](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra) [lines](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dlines) [ladder](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dladder) [dashes](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Ddashes) [dots](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Ddots) [surface](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dsurface) [ladder:skewed](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dladder:skewed) [zebra:paired](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra:paired) [zebra:bicolour](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra:bicolour) [zebra:double](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra:double) [pictograms](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dpictograms) [ladder:paired](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dladder:paired) [lines:paired](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dlines:paired) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/bicycle#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/bicycle/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [bicycle](https://wiki.openstreetmap.org/wiki/Key:bicycle) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:bicycle%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:bicycle%3Dno) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/bicycle#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/bicycle/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [bicycle](https://wiki.openstreetmap.org/wiki/Key:bicycle) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:bicycle%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:bicycle%3Dno) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/crossing:island#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/crossing%3Aisland/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [crossing:island](https://wiki.openstreetmap.org/wiki/Key:crossing:island) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:crossing:island%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:crossing:island%3Dno) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/crossing:island#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/crossing%3Aisland/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [crossing:island](https://wiki.openstreetmap.org/wiki/Key:crossing:island) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:crossing:island%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:crossing:island%3Dno) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/tactile_paving#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/tactile_paving/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [tactile_paving](https://wiki.openstreetmap.org/wiki/Key:tactile_paving) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:tactile_paving%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:tactile_paving%3Dno) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/tactile_paving#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/tactile_paving/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [tactile_paving](https://wiki.openstreetmap.org/wiki/Key:tactile_paving) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:tactile_paving%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:tactile_paving%3Dno) |
|
||||||
|
@ -85,18 +85,30 @@ The question is `What kind of crossing is this?`
|
||||||
- *Crossing, without traffic lights* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Duncontrolled' target='_blank'>uncontrolled</a>
|
- *Crossing, without traffic lights* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Duncontrolled' target='_blank'>uncontrolled</a>
|
||||||
- *Crossing with traffic signals* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dtraffic_signals' target='_blank'>traffic_signals</a>
|
- *Crossing with traffic signals* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dtraffic_signals' target='_blank'>traffic_signals</a>
|
||||||
- *Zebra crossing* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dzebra' target='_blank'>zebra</a>. _This option cannot be chosen as answer_
|
- *Zebra crossing* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dzebra' target='_blank'>zebra</a>. _This option cannot be chosen as answer_
|
||||||
- *Crossing without crossing markings* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dunmarked' target='_blank'>unmarked</a>
|
- *Crossing without crossing markings* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dunmarked' target='_blank'>unmarked</a>. _This option cannot be chosen as answer_
|
||||||
|
|
||||||
This tagrendering is only visible in the popup if the following condition is met: <a href='https://wiki.openstreetmap.org/wiki/Key:highway' target='_blank'>highway</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:highway%3Dcrossing' target='_blank'>crossing</a>
|
This tagrendering is only visible in the popup if the following condition is met: <a href='https://wiki.openstreetmap.org/wiki/Key:highway' target='_blank'>highway</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:highway%3Dcrossing' target='_blank'>crossing</a>
|
||||||
|
|
||||||
### crossing-is-zebra
|
### markings
|
||||||
|
|
||||||
The question is `Is this is a zebra crossing?`
|
The question is `What kind of markings does this crossing have?`
|
||||||
|
*This crossing has {crossing:markings} markings* is shown if `crossing:markings` is set
|
||||||
|
|
||||||
- *This is a zebra crossing* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing_ref' target='_blank'>crossing_ref</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing_ref%3Dzebra' target='_blank'>zebra</a>
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/crossing_unmarked.png' style='width: 3rem; height: 3rem'> *This crossing has no markings* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dno' target='_blank'>no</a>
|
||||||
- *This is not a zebra crossing* is shown if with crossing_ref=
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_zebra.png' style='width: 3rem; height: 3rem'> *This crossing has zebra markings* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra' target='_blank'>zebra</a>
|
||||||
|
- *This crossing has markings of an unknown type* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dyes' target='_blank'>yes</a>. _This option cannot be chosen as answer_
|
||||||
This tagrendering is only visible in the popup if the following condition is met: <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Duncontrolled' target='_blank'>uncontrolled</a>
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_lines.png' style='width: 3rem; height: 3rem'> *This crossings has lines on either side of the crossing* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dlines' target='_blank'>lines</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_ladder.png' style='width: 3rem; height: 3rem'> *This crossing has lines on either side of the crossing, along with bars connecting them* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dladder' target='_blank'>ladder</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_dashes.png' style='width: 3rem; height: 3rem'> *This crossing has dashed lines on either sides of the crossing* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Ddashes' target='_blank'>dashes</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_dots.png' style='width: 3rem; height: 3rem'> *This crossing has dotted lines on either sides of the crossing* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Ddots' target='_blank'>dots</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_surface.png' style='width: 3rem; height: 3rem'> *This crossing is marked by using a different coloured surface* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dsurface' target='_blank'>surface</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_ladder_skewed.png' style='width: 3rem; height: 3rem'> *This crossing has lines on either side of the crossing, along with angled bars connecting them* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dladder:skewed' target='_blank'>ladder:skewed</a>
|
||||||
|
- *This crossing has zebra markings with an interruption in every bar* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra:paired' target='_blank'>zebra:paired</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_zebra_bicolour.png' style='width: 3rem; height: 3rem'> *This crossing has zebra markings in alternating colours* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra:bicolour' target='_blank'>zebra:bicolour</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_zebra_double.png' style='width: 3rem; height: 3rem'> *This crossing has double zebra markings* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra:double' target='_blank'>zebra:double</a>
|
||||||
|
- *This crossing has pictograms on the road* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dpictograms' target='_blank'>pictograms</a>
|
||||||
|
- *This crossing has lines on either side of the crossing, along with bars connecting them, with an interruption in every bar* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dladder:paired' target='_blank'>ladder:paired</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_lines_paired.png' style='width: 3rem; height: 3rem'> *This crossing has double lines on either side of the crossing* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dlines:paired' target='_blank'>lines:paired</a>
|
||||||
|
|
||||||
### crossing-bicycle-allowed
|
### crossing-bicycle-allowed
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,7 @@ Crossings for pedestrians and cyclists
|
||||||
4. [Supported attributes](#supported-attributes)
|
4. [Supported attributes](#supported-attributes)
|
||||||
- [images](#images)
|
- [images](#images)
|
||||||
- [crossing-type](#crossing-type)
|
- [crossing-type](#crossing-type)
|
||||||
- [crossing-is-zebra](#crossing-is-zebra)
|
- [markings](#markings)
|
||||||
- [crossing-bicycle-allowed](#crossing-bicycle-allowed)
|
- [crossing-bicycle-allowed](#crossing-bicycle-allowed)
|
||||||
- [crossing-has-island](#crossing-has-island)
|
- [crossing-has-island](#crossing-has-island)
|
||||||
- [crossing-tactile](#crossing-tactile)
|
- [crossing-tactile](#crossing-tactile)
|
||||||
|
@ -55,8 +55,8 @@ Elements must match the expression **<a href='https://wiki.openstreetmap.org/wik
|
||||||
|
|
||||||
| attribute | type | values which are supported by this layer |
|
| attribute | type | values which are supported by this layer |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/crossing#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/crossing/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [crossing](https://wiki.openstreetmap.org/wiki/Key:crossing) | Multiple choice | [uncontrolled](https://wiki.openstreetmap.org/wiki/Tag:crossing%3Duncontrolled) [traffic_signals](https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dtraffic_signals) [unmarked](https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dunmarked) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/crossing#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/crossing/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [crossing](https://wiki.openstreetmap.org/wiki/Key:crossing) | Multiple choice | [uncontrolled](https://wiki.openstreetmap.org/wiki/Tag:crossing%3Duncontrolled) [traffic_signals](https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dtraffic_signals) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/crossing_ref#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/crossing_ref/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [crossing_ref](https://wiki.openstreetmap.org/wiki/Key:crossing_ref) | Multiple choice | [zebra](https://wiki.openstreetmap.org/wiki/Tag:crossing_ref%3Dzebra) [](https://wiki.openstreetmap.org/wiki/Tag:crossing_ref%3D) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/crossing:markings#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/crossing%3Amarkings/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [crossing:markings](https://wiki.openstreetmap.org/wiki/Key:crossing:markings) | [string](../SpecialInputElements.md#string) | [no](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dno) [zebra](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra) [lines](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dlines) [ladder](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dladder) [dashes](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Ddashes) [dots](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Ddots) [surface](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dsurface) [ladder:skewed](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dladder:skewed) [zebra:paired](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra:paired) [zebra:bicolour](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra:bicolour) [zebra:double](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra:double) [pictograms](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dpictograms) [ladder:paired](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dladder:paired) [lines:paired](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dlines:paired) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/bicycle#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/bicycle/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [bicycle](https://wiki.openstreetmap.org/wiki/Key:bicycle) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:bicycle%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:bicycle%3Dno) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/bicycle#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/bicycle/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [bicycle](https://wiki.openstreetmap.org/wiki/Key:bicycle) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:bicycle%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:bicycle%3Dno) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/crossing:island#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/crossing%3Aisland/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [crossing:island](https://wiki.openstreetmap.org/wiki/Key:crossing:island) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:crossing:island%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:crossing:island%3Dno) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/crossing:island#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/crossing%3Aisland/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [crossing:island](https://wiki.openstreetmap.org/wiki/Key:crossing:island) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:crossing:island%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:crossing:island%3Dno) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/tactile_paving#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/tactile_paving/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [tactile_paving](https://wiki.openstreetmap.org/wiki/Key:tactile_paving) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:tactile_paving%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:tactile_paving%3Dno) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/tactile_paving#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/tactile_paving/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [tactile_paving](https://wiki.openstreetmap.org/wiki/Key:tactile_paving) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:tactile_paving%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:tactile_paving%3Dno) |
|
||||||
|
@ -80,18 +80,30 @@ The question is `What kind of crossing is this?`
|
||||||
- *Crossing, without traffic lights* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Duncontrolled' target='_blank'>uncontrolled</a>
|
- *Crossing, without traffic lights* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Duncontrolled' target='_blank'>uncontrolled</a>
|
||||||
- *Crossing with traffic signals* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dtraffic_signals' target='_blank'>traffic_signals</a>
|
- *Crossing with traffic signals* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dtraffic_signals' target='_blank'>traffic_signals</a>
|
||||||
- *Zebra crossing* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dzebra' target='_blank'>zebra</a>. _This option cannot be chosen as answer_
|
- *Zebra crossing* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dzebra' target='_blank'>zebra</a>. _This option cannot be chosen as answer_
|
||||||
- *Crossing without crossing markings* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dunmarked' target='_blank'>unmarked</a>
|
- *Crossing without crossing markings* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dunmarked' target='_blank'>unmarked</a>. _This option cannot be chosen as answer_
|
||||||
|
|
||||||
This tagrendering is only visible in the popup if the following condition is met: <a href='https://wiki.openstreetmap.org/wiki/Key:highway' target='_blank'>highway</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:highway%3Dcrossing' target='_blank'>crossing</a>
|
This tagrendering is only visible in the popup if the following condition is met: <a href='https://wiki.openstreetmap.org/wiki/Key:highway' target='_blank'>highway</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:highway%3Dcrossing' target='_blank'>crossing</a>
|
||||||
|
|
||||||
### crossing-is-zebra
|
### markings
|
||||||
|
|
||||||
The question is `Is this is a zebra crossing?`
|
The question is `What kind of markings does this crossing have?`
|
||||||
|
*This crossing has {crossing:markings} markings* is shown if `crossing:markings` is set
|
||||||
|
|
||||||
- *This is a zebra crossing* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing_ref' target='_blank'>crossing_ref</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing_ref%3Dzebra' target='_blank'>zebra</a>
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/crossing_unmarked.png' style='width: 3rem; height: 3rem'> *This crossing has no markings* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dno' target='_blank'>no</a>
|
||||||
- *This is not a zebra crossing* is shown if with crossing_ref=
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_zebra.png' style='width: 3rem; height: 3rem'> *This crossing has zebra markings* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra' target='_blank'>zebra</a>
|
||||||
|
- *This crossing has markings of an unknown type* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dyes' target='_blank'>yes</a>. _This option cannot be chosen as answer_
|
||||||
This tagrendering is only visible in the popup if the following condition is met: <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Duncontrolled' target='_blank'>uncontrolled</a>
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_lines.png' style='width: 3rem; height: 3rem'> *This crossings has lines on either side of the crossing* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dlines' target='_blank'>lines</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_ladder.png' style='width: 3rem; height: 3rem'> *This crossing has lines on either side of the crossing, along with bars connecting them* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dladder' target='_blank'>ladder</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_dashes.png' style='width: 3rem; height: 3rem'> *This crossing has dashed lines on either sides of the crossing* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Ddashes' target='_blank'>dashes</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_dots.png' style='width: 3rem; height: 3rem'> *This crossing has dotted lines on either sides of the crossing* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Ddots' target='_blank'>dots</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_surface.png' style='width: 3rem; height: 3rem'> *This crossing is marked by using a different coloured surface* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dsurface' target='_blank'>surface</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_ladder_skewed.png' style='width: 3rem; height: 3rem'> *This crossing has lines on either side of the crossing, along with angled bars connecting them* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dladder:skewed' target='_blank'>ladder:skewed</a>
|
||||||
|
- *This crossing has zebra markings with an interruption in every bar* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra:paired' target='_blank'>zebra:paired</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_zebra_bicolour.png' style='width: 3rem; height: 3rem'> *This crossing has zebra markings in alternating colours* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra:bicolour' target='_blank'>zebra:bicolour</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_zebra_double.png' style='width: 3rem; height: 3rem'> *This crossing has double zebra markings* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra:double' target='_blank'>zebra:double</a>
|
||||||
|
- *This crossing has pictograms on the road* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dpictograms' target='_blank'>pictograms</a>
|
||||||
|
- *This crossing has lines on either side of the crossing, along with bars connecting them, with an interruption in every bar* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dladder:paired' target='_blank'>ladder:paired</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_lines_paired.png' style='width: 3rem; height: 3rem'> *This crossing has double lines on either side of the crossing* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dlines:paired' target='_blank'>lines:paired</a>
|
||||||
|
|
||||||
### crossing-bicycle-allowed
|
### crossing-bicycle-allowed
|
||||||
|
|
||||||
|
|
|
@ -7,6 +7,7 @@ All infrastructure that someone can cycle over, accompanied with questions about
|
||||||
- This layer is shown at zoomlevel **16** and higher
|
- This layer is shown at zoomlevel **16** and higher
|
||||||
- This layer is needed as dependency for layer [barrier](#barrier)
|
- This layer is needed as dependency for layer [barrier](#barrier)
|
||||||
- This layer is needed as dependency for layer [crossings](#crossings)
|
- This layer is needed as dependency for layer [crossings](#crossings)
|
||||||
|
- This layer is needed as dependency for layer [cyclist_waiting_aid](#cyclist_waiting_aid)
|
||||||
- This layer is needed as dependency for layer [kerbs](#kerbs)
|
- This layer is needed as dependency for layer [kerbs](#kerbs)
|
||||||
- This layer is needed as dependency for layer [rainbow_crossings](#rainbow_crossings)
|
- This layer is needed as dependency for layer [rainbow_crossings](#rainbow_crossings)
|
||||||
- This layer is needed as dependency for layer [crossings_no_traffic_lights](#crossings_no_traffic_lights)
|
- This layer is needed as dependency for layer [crossings_no_traffic_lights](#crossings_no_traffic_lights)
|
||||||
|
|
99
Docs/Layers/cyclist_waiting_aid.md
Normal file
99
Docs/Layers/cyclist_waiting_aid.md
Normal file
|
@ -0,0 +1,99 @@
|
||||||
|
[//]: # (WARNING: this file is automatically generated. Please find the sources at the bottom and edit those sources)
|
||||||
|
|
||||||
|
# cyclist_waiting_aid
|
||||||
|
|
||||||
|
Various pieces of infrastructure that aid cyclists while they wait at a traffic light.
|
||||||
|
|
||||||
|
- This layer is shown at zoomlevel **0** and higher
|
||||||
|
- This layer will automatically load [cycleways_and_roads](./cycleways_and_roads.md) into the layout as it depends on it: preset `a cyclist waiting aid` snaps to this layer (cyclist_waiting_aid.presets[0])
|
||||||
|
|
||||||
|
## Table of contents
|
||||||
|
|
||||||
|
1. [Themes using this layer](#themes-using-this-layer)
|
||||||
|
2. [Presets](#presets)
|
||||||
|
3. [Basic tags for this layer](#basic-tags-for-this-layer)
|
||||||
|
4. [Supported attributes](#supported-attributes)
|
||||||
|
- [images](#images)
|
||||||
|
- [type](#type)
|
||||||
|
- [side](#side)
|
||||||
|
- [direction](#direction)
|
||||||
|
- [leftover-questions](#leftover-questions)
|
||||||
|
- [delete-button](#delete-button)
|
||||||
|
- [lod](#lod)
|
||||||
|
|
||||||
|
## Themes using this layer
|
||||||
|
|
||||||
|
- [cycle_infra](https://mapcomplete.org/cycle_infra)
|
||||||
|
- [personal](https://mapcomplete.org/personal)
|
||||||
|
|
||||||
|
## Presets
|
||||||
|
|
||||||
|
The following options to create new points are included:
|
||||||
|
|
||||||
|
- **a cyclist waiting aid** which has the following tags:<a href='https://wiki.openstreetmap.org/wiki/Key:highway' target='_blank'>highway</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:highway%3Dcyclist_waiting_aid' target='_blank'>cyclist_waiting_aid</a> (snaps to layers `cycleways_and_roads`)
|
||||||
|
|
||||||
|
## Basic tags for this layer
|
||||||
|
|
||||||
|
Elements must match the expression **<a href='https://wiki.openstreetmap.org/wiki/Key:highway' target='_blank'>highway</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:highway%3Dcyclist_waiting_aid' target='_blank'>cyclist_waiting_aid</a>**
|
||||||
|
|
||||||
|
[Execute on overpass](http://overpass-turbo.eu/?Q=%5Bout%3Ajson%5D%5Btimeout%3A90%5D%3B%28%20%20%20%20nwr%5B%22highway%22%3D%22cyclist_waiting_aid%22%5D%28%7B%7Bbbox%7D%7D%29%3B%0A%29%3Bout%20body%3B%3E%3Bout%20skel%20qt%3B)
|
||||||
|
|
||||||
|
## Supported attributes
|
||||||
|
|
||||||
|
**Warning:**,this quick overview is incomplete,
|
||||||
|
|
||||||
|
| attribute | type | values which are supported by this layer |
|
||||||
|
-----|-----|----- |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/side#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/side/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [side](https://wiki.openstreetmap.org/wiki/Key:side) | Multiple choice | [left](https://wiki.openstreetmap.org/wiki/Tag:side%3Dleft) [right](https://wiki.openstreetmap.org/wiki/Tag:side%3Dright) [both](https://wiki.openstreetmap.org/wiki/Tag:side%3Dboth) |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/direction#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/direction/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [direction](https://wiki.openstreetmap.org/wiki/Key:direction) | Multiple choice | [forward](https://wiki.openstreetmap.org/wiki/Tag:direction%3Dforward) [backward](https://wiki.openstreetmap.org/wiki/Tag:direction%3Dbackward) |
|
||||||
|
|
||||||
|
### images
|
||||||
|
This block shows the known images which are linked with the `image`-keys, but also via `mapillary` and `wikidata` and shows the button to upload new images
|
||||||
|
_This tagrendering has no question and is thus read-only_
|
||||||
|
*{image_carousel()}{image_upload()}*
|
||||||
|
|
||||||
|
### type
|
||||||
|
|
||||||
|
The question is `What kind of components does this waiting aid have?`
|
||||||
|
|
||||||
|
- *There is a board or peg to rest your foot on here* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:footrest' target='_blank'>footrest</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:footrest%3Dyes' target='_blank'>yes</a>. Unselecting this answer will add footrest=
|
||||||
|
- *There is a rail or a handle to hold on to here* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:handrest' target='_blank'>handrest</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:handrest%3Dyes' target='_blank'>yes</a>. Unselecting this answer will add handrest=
|
||||||
|
|
||||||
|
### side
|
||||||
|
|
||||||
|
The question is `On what side of the road is this located?`
|
||||||
|
|
||||||
|
- *This waiting aid is located on the left side* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:side' target='_blank'>side</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:side%3Dleft' target='_blank'>left</a>
|
||||||
|
- *This waiting aid is located on the right side* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:side' target='_blank'>side</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:side%3Dright' target='_blank'>right</a>
|
||||||
|
- *There are waiting aids on both sides of the road* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:side' target='_blank'>side</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:side%3Dboth' target='_blank'>both</a>
|
||||||
|
|
||||||
|
### direction
|
||||||
|
|
||||||
|
_This tagrendering has no question and is thus read-only_
|
||||||
|
*This waiting aid can be used when going in {direction} direction*
|
||||||
|
|
||||||
|
- *This waiting aid can be used when going forward on this way* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:direction' target='_blank'>direction</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:direction%3Dforward' target='_blank'>forward</a>
|
||||||
|
- *This waiting aid can be used when going backward on this way* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:direction' target='_blank'>direction</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:direction%3Dbackward' target='_blank'>backward</a>
|
||||||
|
|
||||||
|
This tagrendering is only visible in the popup if the following condition is met: direction~.+
|
||||||
|
|
||||||
|
### leftover-questions
|
||||||
|
|
||||||
|
_This tagrendering has no question and is thus read-only_
|
||||||
|
*{questions( ,)}*
|
||||||
|
|
||||||
|
### delete-button
|
||||||
|
|
||||||
|
_This tagrendering has no question and is thus read-only_
|
||||||
|
*{delete_button()}*
|
||||||
|
|
||||||
|
### lod
|
||||||
|
|
||||||
|
_This tagrendering has no question and is thus read-only_
|
||||||
|
*{linked_data_from_website()}*
|
||||||
|
|
||||||
|
This tagrendering has labels
|
||||||
|
`added_by_default`
|
||||||
|
|
||||||
|
|
||||||
|
This document is autogenerated from [assets/layers/cyclist_waiting_aid/cyclist_waiting_aid.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/layers/cyclist_waiting_aid/cyclist_waiting_aid.json)
|
|
@ -150,10 +150,10 @@ This tagrendering has labels
|
||||||
| id | question | osmTags |
|
| id | question | osmTags |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| specialty.0 | *What is this doctor specialized in?* (default) | |
|
| specialty.0 | *What is this doctor specialized in?* (default) | |
|
||||||
| specialty.1 | This is a general practitioner | healthcare:speciality=general |
|
| specialty.1 | This is a general practitioner | healthcare:speciality~^(.+;)?general(;.+)$ |
|
||||||
| specialty.2 | This is a gynaecologist | healthcare:speciality=gynaecology |
|
| specialty.2 | This is a gynaecologist | healthcare:speciality~^(.+;)?gynaecology(;.+)$ |
|
||||||
| specialty.3 | This is a psychiatrist | healthcare:speciality=psychiatry |
|
| specialty.3 | This is a psychiatrist | healthcare:speciality~^(.+;)?psychiatry(;.+)$ |
|
||||||
| specialty.4 | This is a paediatrician | healthcare:speciality=paediatrics |
|
| specialty.4 | This is a paediatrician | healthcare:speciality~^(.+;)?paediatrics(;.+)$ |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -707,7 +707,7 @@ This tagrendering has labels
|
||||||
| id | question | osmTags |
|
| id | question | osmTags |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| shop_types.0 | *What kind of shop is this?* (default) | |
|
| shop_types.0 | *What kind of shop is this?* (default) | |
|
||||||
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental |
|
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental | ((shop=rental & amenity=bicycle_rental)) |
|
||||||
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
||||||
| shop_types.3 | Liquor Store | shop=alcohol |
|
| shop_types.3 | Liquor Store | shop=alcohol |
|
||||||
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
||||||
|
|
|
@ -720,7 +720,7 @@ This tagrendering has labels
|
||||||
| id | question | osmTags |
|
| id | question | osmTags |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| shop_types.0 | *What kind of shop is this?* (default) | |
|
| shop_types.0 | *What kind of shop is this?* (default) | |
|
||||||
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental |
|
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental | ((shop=rental & amenity=bicycle_rental)) |
|
||||||
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
||||||
| shop_types.3 | Liquor Store | shop=alcohol |
|
| shop_types.3 | Liquor Store | shop=alcohol |
|
||||||
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
||||||
|
|
|
@ -33,6 +33,7 @@ Layer showing memorial plaques, based upon a unofficial theme. Can be expanded t
|
||||||
- [move-button](#move-button)
|
- [move-button](#move-button)
|
||||||
- [delete-button](#delete-button)
|
- [delete-button](#delete-button)
|
||||||
- [lod](#lod)
|
- [lod](#lod)
|
||||||
|
5. [Filters](#filters)
|
||||||
|
|
||||||
## Themes using this layer
|
## Themes using this layer
|
||||||
|
|
||||||
|
@ -264,5 +265,27 @@ _This tagrendering has no question and is thus read-only_
|
||||||
This tagrendering has labels
|
This tagrendering has labels
|
||||||
`added_by_default`
|
`added_by_default`
|
||||||
|
|
||||||
|
## Filters
|
||||||
|
|
||||||
|
| id | question | osmTags |
|
||||||
|
-----|-----|----- |
|
||||||
|
| memorial-type.0 | *What type of memorial is this?* (default) | |
|
||||||
|
| memorial-type.1 | This is a statue | memorial=statue |
|
||||||
|
| memorial-type.2 | This is a plaque | memorial=plaque |
|
||||||
|
| memorial-type.3 | This is a commemorative bench | memorial=bench |
|
||||||
|
| memorial-type.4 | This is a ghost bike - a bicycle painted white to remember a cyclist whom deceased because of a car crash | memorial=ghost_bike |
|
||||||
|
| memorial-type.5 | This is a stolperstein (stumbing stone) | memorial=stolperstein |
|
||||||
|
| memorial-type.6 | This is a stele | memorial=stele |
|
||||||
|
| memorial-type.7 | This is a memorial stone | memorial=stone |
|
||||||
|
| memorial-type.8 | This is a bust | memorial=bust |
|
||||||
|
| memorial-type.9 | This is a sculpture | memorial=sculpture |
|
||||||
|
| memorial-type.10 | This is an obelisk | memorial=obelisk |
|
||||||
|
| memorial-type.11 | This is a cross | memorial=cross |
|
||||||
|
| memorial-type.12 | This is a blue plaque | memorial=blue_plaque |
|
||||||
|
| memorial-type.13 | This is a historic tank, permanently placed in public space as memorial | memorial=tank |
|
||||||
|
| memorial-type.14 | This is a memorial tree | memorial=tree |
|
||||||
|
| memorial-type.15 | This is a gravestone; the person is buried here | historic=tomb |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
This document is autogenerated from [assets/layers/memorial/memorial.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/layers/memorial/memorial.json)
|
This document is autogenerated from [assets/layers/memorial/memorial.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/layers/memorial/memorial.json)
|
||||||
|
|
|
@ -227,7 +227,7 @@ This tagrendering has labels
|
||||||
| id | question | osmTags |
|
| id | question | osmTags |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| fee.0 | *Does one have to pay to use this playground?* (default) | |
|
| fee.0 | *Does one have to pay to use this playground?* (default) | |
|
||||||
| fee.1 | Free to use | fee=no |
|
| fee.1 | Free to use | fee=no | fee= |
|
||||||
| fee.2 | Paid playground | fee=yes |
|
| fee.2 | Paid playground | fee=yes |
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -14,7 +14,9 @@ A layer showing post offices.
|
||||||
2. [Basic tags for this layer](#basic-tags-for-this-layer)
|
2. [Basic tags for this layer](#basic-tags-for-this-layer)
|
||||||
3. [Supported attributes](#supported-attributes)
|
3. [Supported attributes](#supported-attributes)
|
||||||
- [images](#images)
|
- [images](#images)
|
||||||
- [minimap](#minimap)
|
- [phone](#phone)
|
||||||
|
- [email](#email)
|
||||||
|
- [website](#website)
|
||||||
- [opening_hours](#opening_hours)
|
- [opening_hours](#opening_hours)
|
||||||
- [Opening hours](#opening-hours)
|
- [Opening hours](#opening-hours)
|
||||||
- [post_partner](#post_partner)
|
- [post_partner](#post_partner)
|
||||||
|
@ -50,6 +52,9 @@ Elements must match **all** of the following expressions:
|
||||||
|
|
||||||
| attribute | type | values which are supported by this layer |
|
| attribute | type | values which are supported by this layer |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/phone#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/phone/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [phone](https://wiki.openstreetmap.org/wiki/Key:phone) | [phone](../SpecialInputElements.md#phone) | |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/email#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/email/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [email](https://wiki.openstreetmap.org/wiki/Key:email) | [email](../SpecialInputElements.md#email) | |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/website#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/website/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [website](https://wiki.openstreetmap.org/wiki/Key:website) | [url](../SpecialInputElements.md#url) | |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/opening_hours#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/opening_hours/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [opening_hours](https://wiki.openstreetmap.org/wiki/Key:opening_hours) | [opening_hours](../SpecialInputElements.md#opening_hours) | |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/opening_hours#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/opening_hours/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [opening_hours](https://wiki.openstreetmap.org/wiki/Key:opening_hours) | [opening_hours](../SpecialInputElements.md#opening_hours) | |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/post_office#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/post_office/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [post_office](https://wiki.openstreetmap.org/wiki/Key:post_office) | Multiple choice | [post_partner](https://wiki.openstreetmap.org/wiki/Tag:post_office%3Dpost_partner) [](https://wiki.openstreetmap.org/wiki/Tag:post_office%3D) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/post_office#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/post_office/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [post_office](https://wiki.openstreetmap.org/wiki/Key:post_office) | Multiple choice | [post_partner](https://wiki.openstreetmap.org/wiki/Tag:post_office%3Dpost_partner) [](https://wiki.openstreetmap.org/wiki/Tag:post_office%3D) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/brand#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/brand/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [brand](https://wiki.openstreetmap.org/wiki/Key:brand) | [nsi](../SpecialInputElements.md#nsi) | |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/brand#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/brand/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [brand](https://wiki.openstreetmap.org/wiki/Key:brand) | [nsi](../SpecialInputElements.md#nsi) | |
|
||||||
|
@ -66,10 +71,36 @@ This block shows the known images which are linked with the `image`-keys, but al
|
||||||
_This tagrendering has no question and is thus read-only_
|
_This tagrendering has no question and is thus read-only_
|
||||||
*{image_carousel()}{image_upload()}*
|
*{image_carousel()}{image_upload()}*
|
||||||
|
|
||||||
### minimap
|
### phone
|
||||||
|
|
||||||
_This tagrendering has no question and is thus read-only_
|
The question is `What is the phone number of {title()}?`
|
||||||
*{minimap(18): height: 5rem; overflow: hidden; border-radius:3rem; }*
|
*{link(&LBRACEphone&RBRACE,tel:&LBRACEphone&RBRACE,,,,)}* is shown if `phone` is set
|
||||||
|
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/questions/phone.svg' style='width: 3rem; height: 3rem'> *{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}* is shown if with contact:phone~.+. _This option cannot be chosen as answer_
|
||||||
|
|
||||||
|
This tagrendering has labels
|
||||||
|
`contact`
|
||||||
|
|
||||||
|
### email
|
||||||
|
|
||||||
|
The question is `What is the email address of {title()}?`
|
||||||
|
*<a href='mailto:{email}' target='_blank' rel='noopener'>{email}</a>* is shown if `email` is set
|
||||||
|
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/svg/envelope.svg' style='width: 3rem; height: 3rem'> *<a href='mailto:{contact:email}' target='_blank' rel='noopener'>{contact:email}</a>* is shown if with contact:email~.+. _This option cannot be chosen as answer_
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/svg/envelope.svg' style='width: 3rem; height: 3rem'> *<a href='mailto:{operator:email}' target='_blank' rel='noopener'>{operator:email}</a>* is shown if with operator:email~.+. _This option cannot be chosen as answer_
|
||||||
|
|
||||||
|
This tagrendering has labels
|
||||||
|
`contact`
|
||||||
|
|
||||||
|
### website
|
||||||
|
|
||||||
|
The question is `What is the website of {title()}?`
|
||||||
|
*<a href='{website}' rel='nofollow noopener noreferrer' target='_blank'>{website}</a>* is shown if `website` is set
|
||||||
|
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/icons/website.svg' style='width: 3rem; height: 3rem'> *<a href='{contact:website}' rel='nofollow noopener noreferrer' target='_blank'>{contact:website}</a>* is shown if with contact:website~.+. _This option cannot be chosen as answer_
|
||||||
|
|
||||||
|
This tagrendering has labels
|
||||||
|
`contact`
|
||||||
|
|
||||||
### opening_hours
|
### opening_hours
|
||||||
|
|
||||||
|
|
|
@ -5,6 +5,7 @@
|
||||||
The layer showing postboxes.
|
The layer showing postboxes.
|
||||||
|
|
||||||
- This layer is shown at zoomlevel **12** and higher
|
- This layer is shown at zoomlevel **12** and higher
|
||||||
|
- This layer will automatically load [walls_and_buildings](./walls_and_buildings.md) into the layout as it depends on it: preset `a postbox on a wall` snaps to this layer (postboxes.presets[1])
|
||||||
|
|
||||||
## Table of contents
|
## Table of contents
|
||||||
|
|
||||||
|
@ -14,6 +15,7 @@ The layer showing postboxes.
|
||||||
4. [Supported attributes](#supported-attributes)
|
4. [Supported attributes](#supported-attributes)
|
||||||
- [images](#images)
|
- [images](#images)
|
||||||
- [minimap](#minimap)
|
- [minimap](#minimap)
|
||||||
|
- [operator](#operator)
|
||||||
- [leftover-questions](#leftover-questions)
|
- [leftover-questions](#leftover-questions)
|
||||||
- [move-button](#move-button)
|
- [move-button](#move-button)
|
||||||
- [delete-button](#delete-button)
|
- [delete-button](#delete-button)
|
||||||
|
@ -29,6 +31,7 @@ The layer showing postboxes.
|
||||||
The following options to create new points are included:
|
The following options to create new points are included:
|
||||||
|
|
||||||
- **a postbox** which has the following tags:<a href='https://wiki.openstreetmap.org/wiki/Key:amenity' target='_blank'>amenity</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:amenity%3Dpost_box' target='_blank'>post_box</a>
|
- **a postbox** which has the following tags:<a href='https://wiki.openstreetmap.org/wiki/Key:amenity' target='_blank'>amenity</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:amenity%3Dpost_box' target='_blank'>post_box</a>
|
||||||
|
- **a postbox on a wall** which has the following tags:<a href='https://wiki.openstreetmap.org/wiki/Key:amenity' target='_blank'>amenity</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:amenity%3Dpost_box' target='_blank'>post_box</a> (snaps to layers `walls_and_buildings`)
|
||||||
|
|
||||||
## Basic tags for this layer
|
## Basic tags for this layer
|
||||||
|
|
||||||
|
@ -38,6 +41,12 @@ Elements must match the expression **<a href='https://wiki.openstreetmap.org/wik
|
||||||
|
|
||||||
## Supported attributes
|
## Supported attributes
|
||||||
|
|
||||||
|
**Warning:**,this quick overview is incomplete,
|
||||||
|
|
||||||
|
| attribute | type | values which are supported by this layer |
|
||||||
|
-----|-----|----- |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/operator#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/operator/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [operator](https://wiki.openstreetmap.org/wiki/Key:operator) | [string](../SpecialInputElements.md#string) | |
|
||||||
|
|
||||||
### images
|
### images
|
||||||
This block shows the known images which are linked with the `image`-keys, but also via `mapillary` and `wikidata` and shows the button to upload new images
|
This block shows the known images which are linked with the `image`-keys, but also via `mapillary` and `wikidata` and shows the button to upload new images
|
||||||
_This tagrendering has no question and is thus read-only_
|
_This tagrendering has no question and is thus read-only_
|
||||||
|
@ -48,6 +57,11 @@ _This tagrendering has no question and is thus read-only_
|
||||||
_This tagrendering has no question and is thus read-only_
|
_This tagrendering has no question and is thus read-only_
|
||||||
*{minimap(18): height: 5rem; overflow: hidden; border-radius:3rem; }*
|
*{minimap(18): height: 5rem; overflow: hidden; border-radius:3rem; }*
|
||||||
|
|
||||||
|
### operator
|
||||||
|
|
||||||
|
The question is `Who operates this postbox?`
|
||||||
|
*This postbox is operated by <b>{operator}</b>* is shown if `operator` is set
|
||||||
|
|
||||||
### leftover-questions
|
### leftover-questions
|
||||||
|
|
||||||
_This tagrendering has no question and is thus read-only_
|
_This tagrendering has no question and is thus read-only_
|
||||||
|
|
|
@ -13,7 +13,9 @@ A layer showing post offices.
|
||||||
3. [Basic tags for this layer](#basic-tags-for-this-layer)
|
3. [Basic tags for this layer](#basic-tags-for-this-layer)
|
||||||
4. [Supported attributes](#supported-attributes)
|
4. [Supported attributes](#supported-attributes)
|
||||||
- [images](#images)
|
- [images](#images)
|
||||||
- [minimap](#minimap)
|
- [phone](#phone)
|
||||||
|
- [email](#email)
|
||||||
|
- [website](#website)
|
||||||
- [opening_hours](#opening_hours)
|
- [opening_hours](#opening_hours)
|
||||||
- [Opening hours](#opening-hours)
|
- [Opening hours](#opening-hours)
|
||||||
- [post_partner](#post_partner)
|
- [post_partner](#post_partner)
|
||||||
|
@ -57,6 +59,9 @@ Elements must match **any** of the following expressions:
|
||||||
|
|
||||||
| attribute | type | values which are supported by this layer |
|
| attribute | type | values which are supported by this layer |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/phone#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/phone/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [phone](https://wiki.openstreetmap.org/wiki/Key:phone) | [phone](../SpecialInputElements.md#phone) | |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/email#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/email/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [email](https://wiki.openstreetmap.org/wiki/Key:email) | [email](../SpecialInputElements.md#email) | |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/website#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/website/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [website](https://wiki.openstreetmap.org/wiki/Key:website) | [url](../SpecialInputElements.md#url) | |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/opening_hours#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/opening_hours/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [opening_hours](https://wiki.openstreetmap.org/wiki/Key:opening_hours) | [opening_hours](../SpecialInputElements.md#opening_hours) | |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/opening_hours#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/opening_hours/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [opening_hours](https://wiki.openstreetmap.org/wiki/Key:opening_hours) | [opening_hours](../SpecialInputElements.md#opening_hours) | |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/post_office#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/post_office/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [post_office](https://wiki.openstreetmap.org/wiki/Key:post_office) | Multiple choice | [post_partner](https://wiki.openstreetmap.org/wiki/Tag:post_office%3Dpost_partner) [](https://wiki.openstreetmap.org/wiki/Tag:post_office%3D) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/post_office#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/post_office/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [post_office](https://wiki.openstreetmap.org/wiki/Key:post_office) | Multiple choice | [post_partner](https://wiki.openstreetmap.org/wiki/Tag:post_office%3Dpost_partner) [](https://wiki.openstreetmap.org/wiki/Tag:post_office%3D) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/brand#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/brand/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [brand](https://wiki.openstreetmap.org/wiki/Key:brand) | [nsi](../SpecialInputElements.md#nsi) | |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/brand#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/brand/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [brand](https://wiki.openstreetmap.org/wiki/Key:brand) | [nsi](../SpecialInputElements.md#nsi) | |
|
||||||
|
@ -73,10 +78,36 @@ This block shows the known images which are linked with the `image`-keys, but al
|
||||||
_This tagrendering has no question and is thus read-only_
|
_This tagrendering has no question and is thus read-only_
|
||||||
*{image_carousel()}{image_upload()}*
|
*{image_carousel()}{image_upload()}*
|
||||||
|
|
||||||
### minimap
|
### phone
|
||||||
|
|
||||||
_This tagrendering has no question and is thus read-only_
|
The question is `What is the phone number of {title()}?`
|
||||||
*{minimap(18): height: 5rem; overflow: hidden; border-radius:3rem; }*
|
*{link(&LBRACEphone&RBRACE,tel:&LBRACEphone&RBRACE,,,,)}* is shown if `phone` is set
|
||||||
|
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/questions/phone.svg' style='width: 3rem; height: 3rem'> *{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}* is shown if with contact:phone~.+. _This option cannot be chosen as answer_
|
||||||
|
|
||||||
|
This tagrendering has labels
|
||||||
|
`contact`
|
||||||
|
|
||||||
|
### email
|
||||||
|
|
||||||
|
The question is `What is the email address of {title()}?`
|
||||||
|
*<a href='mailto:{email}' target='_blank' rel='noopener'>{email}</a>* is shown if `email` is set
|
||||||
|
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/svg/envelope.svg' style='width: 3rem; height: 3rem'> *<a href='mailto:{contact:email}' target='_blank' rel='noopener'>{contact:email}</a>* is shown if with contact:email~.+. _This option cannot be chosen as answer_
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/svg/envelope.svg' style='width: 3rem; height: 3rem'> *<a href='mailto:{operator:email}' target='_blank' rel='noopener'>{operator:email}</a>* is shown if with operator:email~.+. _This option cannot be chosen as answer_
|
||||||
|
|
||||||
|
This tagrendering has labels
|
||||||
|
`contact`
|
||||||
|
|
||||||
|
### website
|
||||||
|
|
||||||
|
The question is `What is the website of {title()}?`
|
||||||
|
*<a href='{website}' rel='nofollow noopener noreferrer' target='_blank'>{website}</a>* is shown if `website` is set
|
||||||
|
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/icons/website.svg' style='width: 3rem; height: 3rem'> *<a href='{contact:website}' rel='nofollow noopener noreferrer' target='_blank'>{contact:website}</a>* is shown if with contact:website~.+. _This option cannot be chosen as answer_
|
||||||
|
|
||||||
|
This tagrendering has labels
|
||||||
|
`contact`
|
||||||
|
|
||||||
### opening_hours
|
### opening_hours
|
||||||
|
|
||||||
|
|
|
@ -14,15 +14,16 @@ Schools giving primary and secondary education and post-secondary, non-tertiary
|
||||||
2. [Presets](#presets)
|
2. [Presets](#presets)
|
||||||
3. [Basic tags for this layer](#basic-tags-for-this-layer)
|
3. [Basic tags for this layer](#basic-tags-for-this-layer)
|
||||||
4. [Supported attributes](#supported-attributes)
|
4. [Supported attributes](#supported-attributes)
|
||||||
|
- [images](#images)
|
||||||
- [school-name](#school-name)
|
- [school-name](#school-name)
|
||||||
|
- [phone](#phone)
|
||||||
|
- [email](#email)
|
||||||
|
- [website](#website)
|
||||||
- [capacity](#capacity)
|
- [capacity](#capacity)
|
||||||
- [education-level-belgium](#education-level-belgium)
|
- [education-level-belgium](#education-level-belgium)
|
||||||
- [gender](#gender)
|
- [gender](#gender)
|
||||||
- [pedagogy](#pedagogy)
|
- [pedagogy](#pedagogy)
|
||||||
- [target-audience](#target-audience)
|
- [target-audience](#target-audience)
|
||||||
- [website](#website)
|
|
||||||
- [phone](#phone)
|
|
||||||
- [email](#email)
|
|
||||||
- [school-language](#school-language)
|
- [school-language](#school-language)
|
||||||
- [leftover-questions](#leftover-questions)
|
- [leftover-questions](#leftover-questions)
|
||||||
- [move-button](#move-button)
|
- [move-button](#move-button)
|
||||||
|
@ -53,20 +54,56 @@ Elements must match the expression **<a href='https://wiki.openstreetmap.org/wik
|
||||||
| attribute | type | values which are supported by this layer |
|
| attribute | type | values which are supported by this layer |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/name#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/name/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [name](https://wiki.openstreetmap.org/wiki/Key:name) | [string](../SpecialInputElements.md#string) | |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/name#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/name/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [name](https://wiki.openstreetmap.org/wiki/Key:name) | [string](../SpecialInputElements.md#string) | |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/phone#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/phone/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [phone](https://wiki.openstreetmap.org/wiki/Key:phone) | [phone](../SpecialInputElements.md#phone) | |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/email#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/email/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [email](https://wiki.openstreetmap.org/wiki/Key:email) | [email](../SpecialInputElements.md#email) | |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/website#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/website/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [website](https://wiki.openstreetmap.org/wiki/Key:website) | [url](../SpecialInputElements.md#url) | |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/capacity#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/capacity/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [capacity](https://wiki.openstreetmap.org/wiki/Key:capacity) | [pnat](../SpecialInputElements.md#pnat) | |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/capacity#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/capacity/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [capacity](https://wiki.openstreetmap.org/wiki/Key:capacity) | [pnat](../SpecialInputElements.md#pnat) | |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/school#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/school/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [school](https://wiki.openstreetmap.org/wiki/Key:school) | Multiple choice | [kindergarten](https://wiki.openstreetmap.org/wiki/Tag:school%3Dkindergarten) [primary](https://wiki.openstreetmap.org/wiki/Tag:school%3Dprimary) [secondary](https://wiki.openstreetmap.org/wiki/Tag:school%3Dsecondary) [lower_secondary](https://wiki.openstreetmap.org/wiki/Tag:school%3Dlower_secondary) [middle_secondary](https://wiki.openstreetmap.org/wiki/Tag:school%3Dmiddle_secondary) [upper_secondary](https://wiki.openstreetmap.org/wiki/Tag:school%3Dupper_secondary) [post_secondary](https://wiki.openstreetmap.org/wiki/Tag:school%3Dpost_secondary) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/school#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/school/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [school](https://wiki.openstreetmap.org/wiki/Key:school) | Multiple choice | [kindergarten](https://wiki.openstreetmap.org/wiki/Tag:school%3Dkindergarten) [primary](https://wiki.openstreetmap.org/wiki/Tag:school%3Dprimary) [secondary](https://wiki.openstreetmap.org/wiki/Tag:school%3Dsecondary) [lower_secondary](https://wiki.openstreetmap.org/wiki/Tag:school%3Dlower_secondary) [middle_secondary](https://wiki.openstreetmap.org/wiki/Tag:school%3Dmiddle_secondary) [upper_secondary](https://wiki.openstreetmap.org/wiki/Tag:school%3Dupper_secondary) [post_secondary](https://wiki.openstreetmap.org/wiki/Tag:school%3Dpost_secondary) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/school:gender#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/school%3Agender/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [school:gender](https://wiki.openstreetmap.org/wiki/Key:school:gender) | Multiple choice | [mixed](https://wiki.openstreetmap.org/wiki/Tag:school:gender%3Dmixed) [separated](https://wiki.openstreetmap.org/wiki/Tag:school:gender%3Dseparated) [male](https://wiki.openstreetmap.org/wiki/Tag:school:gender%3Dmale) [female](https://wiki.openstreetmap.org/wiki/Tag:school:gender%3Dfemale) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/school:gender#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/school%3Agender/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [school:gender](https://wiki.openstreetmap.org/wiki/Key:school:gender) | Multiple choice | [mixed](https://wiki.openstreetmap.org/wiki/Tag:school:gender%3Dmixed) [separated](https://wiki.openstreetmap.org/wiki/Tag:school:gender%3Dseparated) [male](https://wiki.openstreetmap.org/wiki/Tag:school:gender%3Dmale) [female](https://wiki.openstreetmap.org/wiki/Tag:school:gender%3Dfemale) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/pedagogy#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/pedagogy/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [pedagogy](https://wiki.openstreetmap.org/wiki/Key:pedagogy) | [string](../SpecialInputElements.md#string) | [mainstream](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Dmainstream) [montessori](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Dmontessori) [freinet](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Dfreinet) [jenaplan](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Djenaplan) [waldorf](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Dwaldorf) [dalton](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Ddalton) [outdoor](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Doutdoor) [reggio_emilia](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Dreggio_emilia) [sudbury](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Dsudbury) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/pedagogy#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/pedagogy/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [pedagogy](https://wiki.openstreetmap.org/wiki/Key:pedagogy) | [string](../SpecialInputElements.md#string) | [mainstream](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Dmainstream) [montessori](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Dmontessori) [freinet](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Dfreinet) [jenaplan](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Djenaplan) [waldorf](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Dwaldorf) [dalton](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Ddalton) [outdoor](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Doutdoor) [reggio_emilia](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Dreggio_emilia) [sudbury](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Dsudbury) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/school:for#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/school%3Afor/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [school:for](https://wiki.openstreetmap.org/wiki/Key:school:for) | [string](../SpecialInputElements.md#string) | [mainstream](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Dmainstream) [adults](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Dadults) [autism](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Dautism) [learning_disabilities](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Dlearning_disabilities) [blind](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Dblind) [deaf](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Ddeaf) [disabilities](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Ddisabilities) [special_needs](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Dspecial_needs) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/school:for#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/school%3Afor/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [school:for](https://wiki.openstreetmap.org/wiki/Key:school:for) | [string](../SpecialInputElements.md#string) | [mainstream](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Dmainstream) [adults](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Dadults) [autism](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Dautism) [learning_disabilities](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Dlearning_disabilities) [blind](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Dblind) [deaf](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Ddeaf) [disabilities](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Ddisabilities) [special_needs](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Dspecial_needs) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/website#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/website/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [website](https://wiki.openstreetmap.org/wiki/Key:website) | [url](../SpecialInputElements.md#url) | |
|
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/phone#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/phone/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [phone](https://wiki.openstreetmap.org/wiki/Key:phone) | [phone](../SpecialInputElements.md#phone) | |
|
### images
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/email#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/email/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [email](https://wiki.openstreetmap.org/wiki/Key:email) | [email](../SpecialInputElements.md#email) | |
|
This block shows the known images which are linked with the `image`-keys, but also via `mapillary` and `wikidata` and shows the button to upload new images
|
||||||
|
_This tagrendering has no question and is thus read-only_
|
||||||
|
*{image_carousel()}{image_upload()}*
|
||||||
|
|
||||||
### school-name
|
### school-name
|
||||||
|
|
||||||
The question is `What is the name of this school?`
|
The question is `What is the name of this school?`
|
||||||
*This school is named {name}* is shown if `name` is set
|
*This school is named {name}* is shown if `name` is set
|
||||||
|
|
||||||
|
### phone
|
||||||
|
|
||||||
|
The question is `What is the phone number of {title()}?`
|
||||||
|
*{link(&LBRACEphone&RBRACE,tel:&LBRACEphone&RBRACE,,,,)}* is shown if `phone` is set
|
||||||
|
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/questions/phone.svg' style='width: 3rem; height: 3rem'> *{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}* is shown if with contact:phone~.+. _This option cannot be chosen as answer_
|
||||||
|
|
||||||
|
This tagrendering has labels
|
||||||
|
`contact`
|
||||||
|
|
||||||
|
### email
|
||||||
|
|
||||||
|
The question is `What is the email address of {title()}?`
|
||||||
|
*<a href='mailto:{email}' target='_blank' rel='noopener'>{email}</a>* is shown if `email` is set
|
||||||
|
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/svg/envelope.svg' style='width: 3rem; height: 3rem'> *<a href='mailto:{contact:email}' target='_blank' rel='noopener'>{contact:email}</a>* is shown if with contact:email~.+. _This option cannot be chosen as answer_
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/svg/envelope.svg' style='width: 3rem; height: 3rem'> *<a href='mailto:{operator:email}' target='_blank' rel='noopener'>{operator:email}</a>* is shown if with operator:email~.+. _This option cannot be chosen as answer_
|
||||||
|
|
||||||
|
This tagrendering has labels
|
||||||
|
`contact`
|
||||||
|
|
||||||
|
### website
|
||||||
|
|
||||||
|
The question is `What is the website of {title()}?`
|
||||||
|
*<a href='{website}' rel='nofollow noopener noreferrer' target='_blank'>{website}</a>* is shown if `website` is set
|
||||||
|
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/icons/website.svg' style='width: 3rem; height: 3rem'> *<a href='{contact:website}' rel='nofollow noopener noreferrer' target='_blank'>{contact:website}</a>* is shown if with contact:website~.+. _This option cannot be chosen as answer_
|
||||||
|
|
||||||
|
This tagrendering has labels
|
||||||
|
`contact`
|
||||||
|
|
||||||
### capacity
|
### capacity
|
||||||
|
|
||||||
The question is `How much students can at most enroll in this school?`
|
The question is `How much students can at most enroll in this school?`
|
||||||
|
@ -127,37 +164,6 @@ The question is `Does this school target students with a special need? Which str
|
||||||
|
|
||||||
This tagrendering is only visible in the popup if the following condition is met: school:for~.+
|
This tagrendering is only visible in the popup if the following condition is met: school:for~.+
|
||||||
|
|
||||||
### website
|
|
||||||
|
|
||||||
The question is `What is the website of {title()}?`
|
|
||||||
*<a href='{website}' rel='nofollow noopener noreferrer' target='_blank'>{website}</a>* is shown if `website` is set
|
|
||||||
|
|
||||||
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/icons/website.svg' style='width: 3rem; height: 3rem'> *<a href='{contact:website}' rel='nofollow noopener noreferrer' target='_blank'>{contact:website}</a>* is shown if with contact:website~.+. _This option cannot be chosen as answer_
|
|
||||||
|
|
||||||
This tagrendering has labels
|
|
||||||
`contact`
|
|
||||||
|
|
||||||
### phone
|
|
||||||
|
|
||||||
The question is `What is the phone number of {title()}?`
|
|
||||||
*{link(&LBRACEphone&RBRACE,tel:&LBRACEphone&RBRACE,,,,)}* is shown if `phone` is set
|
|
||||||
|
|
||||||
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/questions/phone.svg' style='width: 3rem; height: 3rem'> *{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}* is shown if with contact:phone~.+. _This option cannot be chosen as answer_
|
|
||||||
|
|
||||||
This tagrendering has labels
|
|
||||||
`contact`
|
|
||||||
|
|
||||||
### email
|
|
||||||
|
|
||||||
The question is `What is the email address of {title()}?`
|
|
||||||
*<a href='mailto:{email}' target='_blank' rel='noopener'>{email}</a>* is shown if `email` is set
|
|
||||||
|
|
||||||
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/svg/envelope.svg' style='width: 3rem; height: 3rem'> *<a href='mailto:{contact:email}' target='_blank' rel='noopener'>{contact:email}</a>* is shown if with contact:email~.+. _This option cannot be chosen as answer_
|
|
||||||
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/svg/envelope.svg' style='width: 3rem; height: 3rem'> *<a href='mailto:{operator:email}' target='_blank' rel='noopener'>{operator:email}</a>* is shown if with operator:email~.+. _This option cannot be chosen as answer_
|
|
||||||
|
|
||||||
This tagrendering has labels
|
|
||||||
`contact`
|
|
||||||
|
|
||||||
### school-language
|
### school-language
|
||||||
|
|
||||||
_This tagrendering has no question and is thus read-only_
|
_This tagrendering has no question and is thus read-only_
|
||||||
|
@ -196,6 +202,17 @@ This tagrendering has labels
|
||||||
| pedagogy.8 | This school uses the Reggio Emilia approach | pedagogy=reggio_emilia |
|
| pedagogy.8 | This school uses the Reggio Emilia approach | pedagogy=reggio_emilia |
|
||||||
| pedagogy.9 | This school uses the Sudbury system | pedagogy=sudbury |
|
| pedagogy.9 | This school uses the Sudbury system | pedagogy=sudbury |
|
||||||
|
|
||||||
|
| id | question | osmTags |
|
||||||
|
-----|-----|----- |
|
||||||
|
| education-level-belgium.0 | *What level of education is given on this school?* (default) | |
|
||||||
|
| education-level-belgium.1 | This is a school with a kindergarten section where young kids receive some education which prepares reading and writing. | school~^(.+;)?kindergarten(;.+)$ |
|
||||||
|
| education-level-belgium.2 | This is a school where one learns primary skills such as basic literacy and numerical skills. <div class='subtle'>Pupils typically enroll from 6 years old till 12 years old</div> | school~^(.+;)?primary(;.+)$ |
|
||||||
|
| education-level-belgium.3 | This is a secondary school which offers all grades | school~^(.+;)?secondary(;.+)$ |
|
||||||
|
| education-level-belgium.4 | This is a secondary school which does <i>not</i> have all grades, but offers <b>first and second</b> grade | school~^(.+;)?lower_secondary(;.+)$ |
|
||||||
|
| education-level-belgium.5 | This is a secondary school which does <i>not</i> have all grades, but offers <b>third and fourth</b> grade | school~^(.+;)?middle_secondary(;.+)$ |
|
||||||
|
| education-level-belgium.6 | This is a secondary school which does <i>not</i> have all grades, but offers <b>fifth and sixth</b> grade | school~^(.+;)?upper_secondary(;.+)$ |
|
||||||
|
| education-level-belgium.7 | This school offers post-secondary education (e.g. a seventh or eight specialisation year) | school~^(.+;)?post_secondary(;.+)$ |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
This document is autogenerated from [assets/layers/school/school.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/layers/school/school.json)
|
This document is autogenerated from [assets/layers/school/school.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/layers/school/school.json)
|
||||||
|
|
|
@ -724,7 +724,7 @@ This tagrendering has labels
|
||||||
| id | question | osmTags |
|
| id | question | osmTags |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| shop_types.0 | *What kind of shop is this?* (default) | |
|
| shop_types.0 | *What kind of shop is this?* (default) | |
|
||||||
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental |
|
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental | ((shop=rental & amenity=bicycle_rental)) |
|
||||||
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
||||||
| shop_types.3 | Liquor Store | shop=alcohol |
|
| shop_types.3 | Liquor Store | shop=alcohol |
|
||||||
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
||||||
|
|
|
@ -708,7 +708,7 @@ This tagrendering has labels
|
||||||
| id | question | osmTags |
|
| id | question | osmTags |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| shop_types.0 | *What kind of shop is this?* (default) | |
|
| shop_types.0 | *What kind of shop is this?* (default) | |
|
||||||
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental |
|
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental | ((shop=rental & amenity=bicycle_rental)) |
|
||||||
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
||||||
| shop_types.3 | Liquor Store | shop=alcohol |
|
| shop_types.3 | Liquor Store | shop=alcohol |
|
||||||
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
||||||
|
|
|
@ -708,7 +708,7 @@ This tagrendering has labels
|
||||||
| id | question | osmTags |
|
| id | question | osmTags |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| shop_types.0 | *What kind of shop is this?* (default) | |
|
| shop_types.0 | *What kind of shop is this?* (default) | |
|
||||||
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental |
|
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental | ((shop=rental & amenity=bicycle_rental)) |
|
||||||
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
||||||
| shop_types.3 | Liquor Store | shop=alcohol |
|
| shop_types.3 | Liquor Store | shop=alcohol |
|
||||||
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
||||||
|
|
|
@ -699,7 +699,7 @@ This tagrendering has labels
|
||||||
| id | question | osmTags |
|
| id | question | osmTags |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| shop_types.0 | *What kind of shop is this?* (default) | |
|
| shop_types.0 | *What kind of shop is this?* (default) | |
|
||||||
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental |
|
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental | ((shop=rental & amenity=bicycle_rental)) |
|
||||||
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
||||||
| shop_types.3 | Liquor Store | shop=alcohol |
|
| shop_types.3 | Liquor Store | shop=alcohol |
|
||||||
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
||||||
|
|
|
@ -716,7 +716,7 @@ This tagrendering has labels
|
||||||
| id | question | osmTags |
|
| id | question | osmTags |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| shop_types.0 | *What kind of shop is this?* (default) | |
|
| shop_types.0 | *What kind of shop is this?* (default) | |
|
||||||
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental |
|
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental | ((shop=rental & amenity=bicycle_rental)) |
|
||||||
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
||||||
| shop_types.3 | Liquor Store | shop=alcohol |
|
| shop_types.3 | Liquor Store | shop=alcohol |
|
||||||
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
||||||
|
|
|
@ -185,7 +185,7 @@ This tagrendering has labels
|
||||||
| sport_pitch-sport.4 | Tennis is played here | sport=tennis |
|
| sport_pitch-sport.4 | Tennis is played here | sport=tennis |
|
||||||
| sport_pitch-sport.5 | Korfball is played here | sport=korfball |
|
| sport_pitch-sport.5 | Korfball is played here | sport=korfball |
|
||||||
| sport_pitch-sport.6 | Basketball is played here | sport=basket |
|
| sport_pitch-sport.6 | Basketball is played here | sport=basket |
|
||||||
| sport_pitch-sport.7 | This is a skatepark | sport=skateboard |
|
| sport_pitch-sport.7 | This is a skatepark | sport~^(.+;)?skateboard(;.+)$ |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -711,7 +711,7 @@ This tagrendering has labels
|
||||||
| id | question | osmTags |
|
| id | question | osmTags |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| shop_types.0 | *What kind of shop is this?* (default) | |
|
| shop_types.0 | *What kind of shop is this?* (default) | |
|
||||||
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental |
|
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental | ((shop=rental & amenity=bicycle_rental)) |
|
||||||
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
||||||
| shop_types.3 | Liquor Store | shop=alcohol |
|
| shop_types.3 | Liquor Store | shop=alcohol |
|
||||||
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
||||||
|
|
127
Docs/Layers/tactile_map.md
Normal file
127
Docs/Layers/tactile_map.md
Normal file
|
@ -0,0 +1,127 @@
|
||||||
|
[//]: # (WARNING: this file is automatically generated. Please find the sources at the bottom and edit those sources)
|
||||||
|
|
||||||
|
# tactile_map
|
||||||
|
|
||||||
|
Layer showing tactile maps, which can be used by visually impaired people to navigate the city.
|
||||||
|
|
||||||
|
- This layer is shown at zoomlevel **10** and higher
|
||||||
|
|
||||||
|
## Table of contents
|
||||||
|
|
||||||
|
1. [Themes using this layer](#themes-using-this-layer)
|
||||||
|
2. [Presets](#presets)
|
||||||
|
3. [Basic tags for this layer](#basic-tags-for-this-layer)
|
||||||
|
4. [Supported attributes](#supported-attributes)
|
||||||
|
- [images](#images)
|
||||||
|
- [description](#description)
|
||||||
|
- [braille](#braille)
|
||||||
|
- [braille_languages](#braille_languages)
|
||||||
|
- [embossed_letters](#embossed_letters)
|
||||||
|
- [embossed_letters_languages](#embossed_letters_languages)
|
||||||
|
- [website](#website)
|
||||||
|
- [leftover-questions](#leftover-questions)
|
||||||
|
- [move-button](#move-button)
|
||||||
|
- [delete-button](#delete-button)
|
||||||
|
- [lod](#lod)
|
||||||
|
|
||||||
|
## Themes using this layer
|
||||||
|
|
||||||
|
- [blind_osm](https://mapcomplete.org/blind_osm)
|
||||||
|
- [personal](https://mapcomplete.org/personal)
|
||||||
|
|
||||||
|
## Presets
|
||||||
|
|
||||||
|
The following options to create new points are included:
|
||||||
|
|
||||||
|
- **a tactile map** which has the following tags:<a href='https://wiki.openstreetmap.org/wiki/Key:tourism' target='_blank'>tourism</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:tourism%3Dinformation' target='_blank'>information</a> & <a href='https://wiki.openstreetmap.org/wiki/Key:information' target='_blank'>information</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:information%3Dtactile_map' target='_blank'>tactile_map</a>
|
||||||
|
|
||||||
|
## Basic tags for this layer
|
||||||
|
|
||||||
|
Elements must match the expression **<a href='https://wiki.openstreetmap.org/wiki/Key:information' target='_blank'>information</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:information%3Dtactile_map' target='_blank'>tactile_map</a>**
|
||||||
|
|
||||||
|
[Execute on overpass](http://overpass-turbo.eu/?Q=%5Bout%3Ajson%5D%5Btimeout%3A90%5D%3B%28%20%20%20%20nwr%5B%22information%22%3D%22tactile_map%22%5D%28%7B%7Bbbox%7D%7D%29%3B%0A%29%3Bout%20body%3B%3E%3Bout%20skel%20qt%3B)
|
||||||
|
|
||||||
|
## Supported attributes
|
||||||
|
|
||||||
|
**Warning:**,this quick overview is incomplete,
|
||||||
|
|
||||||
|
| attribute | type | values which are supported by this layer |
|
||||||
|
-----|-----|----- |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/blind:description:en#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/blind%3Adescription%3Aen/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [blind:description:en](https://wiki.openstreetmap.org/wiki/Key:blind:description:en) | [string](../SpecialInputElements.md#string) | |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/braille#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/braille/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [braille](https://wiki.openstreetmap.org/wiki/Key:braille) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:braille%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:braille%3Dno) |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/embossed_letters#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/embossed_letters/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [embossed_letters](https://wiki.openstreetmap.org/wiki/Key:embossed_letters) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:embossed_letters%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:embossed_letters%3Dno) |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/website#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/website/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [website](https://wiki.openstreetmap.org/wiki/Key:website) | [url](../SpecialInputElements.md#url) | |
|
||||||
|
|
||||||
|
### images
|
||||||
|
This block shows the known images which are linked with the `image`-keys, but also via `mapillary` and `wikidata` and shows the button to upload new images
|
||||||
|
_This tagrendering has no question and is thus read-only_
|
||||||
|
*{image_carousel()}{image_upload()}*
|
||||||
|
|
||||||
|
### description
|
||||||
|
|
||||||
|
The question is `What does this tactile map show?`
|
||||||
|
*Description: {blind:description:en}.* is shown if `blind:description:en` is set
|
||||||
|
|
||||||
|
### braille
|
||||||
|
|
||||||
|
The question is `Is there braille text on this tactile map?`
|
||||||
|
|
||||||
|
- *This tactile map has braille text.* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:braille' target='_blank'>braille</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:braille%3Dyes' target='_blank'>yes</a>
|
||||||
|
- *This tactile map does not have braille text.* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:braille' target='_blank'>braille</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:braille%3Dno' target='_blank'>no</a>
|
||||||
|
|
||||||
|
### braille_languages
|
||||||
|
|
||||||
|
_This tagrendering has no question and is thus read-only_
|
||||||
|
*{language_chooser(tactile_writing:braille,In which languages is the braille text on this tactile map?,This map has braille text in &LBRACElanguage&RBRACE,This map has braille text in &LBRACElanguage&RBRACE,,)}*
|
||||||
|
|
||||||
|
This tagrendering is only visible in the popup if the following condition is met: <a href='https://wiki.openstreetmap.org/wiki/Key:braille' target='_blank'>braille</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:braille%3Dyes' target='_blank'>yes</a>
|
||||||
|
|
||||||
|
### embossed_letters
|
||||||
|
|
||||||
|
The question is `Are there embossed letters on this tactile map?`
|
||||||
|
|
||||||
|
- *This tactile map has embossed letters.* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:embossed_letters' target='_blank'>embossed_letters</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:embossed_letters%3Dyes' target='_blank'>yes</a>
|
||||||
|
- *This tactile map does not have embossed letters.* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:embossed_letters' target='_blank'>embossed_letters</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:embossed_letters%3Dno' target='_blank'>no</a>
|
||||||
|
|
||||||
|
### embossed_letters_languages
|
||||||
|
|
||||||
|
_This tagrendering has no question and is thus read-only_
|
||||||
|
*{language_chooser(tactile_writing:embossed,In which languages are the embossed letters on this tactile map?,This map has embossed letters in &LBRACElanguage&RBRACE,This map has embossed letters in &LBRACElanguage&RBRACE,,)}*
|
||||||
|
|
||||||
|
This tagrendering is only visible in the popup if the following condition is met: <a href='https://wiki.openstreetmap.org/wiki/Key:embossed_letters' target='_blank'>embossed_letters</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:embossed_letters%3Dyes' target='_blank'>yes</a>
|
||||||
|
|
||||||
|
### website
|
||||||
|
|
||||||
|
The question is `What is the website of {title()}?`
|
||||||
|
*<a href='{website}' rel='nofollow noopener noreferrer' target='_blank'>{website}</a>* is shown if `website` is set
|
||||||
|
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/icons/website.svg' style='width: 3rem; height: 3rem'> *<a href='{contact:website}' rel='nofollow noopener noreferrer' target='_blank'>{contact:website}</a>* is shown if with contact:website~.+. _This option cannot be chosen as answer_
|
||||||
|
|
||||||
|
This tagrendering has labels
|
||||||
|
`contact`
|
||||||
|
|
||||||
|
### leftover-questions
|
||||||
|
|
||||||
|
_This tagrendering has no question and is thus read-only_
|
||||||
|
*{questions( ,)}*
|
||||||
|
|
||||||
|
### move-button
|
||||||
|
|
||||||
|
_This tagrendering has no question and is thus read-only_
|
||||||
|
*{move_button()}*
|
||||||
|
|
||||||
|
### delete-button
|
||||||
|
|
||||||
|
_This tagrendering has no question and is thus read-only_
|
||||||
|
*{delete_button()}*
|
||||||
|
|
||||||
|
### lod
|
||||||
|
|
||||||
|
_This tagrendering has no question and is thus read-only_
|
||||||
|
*{linked_data_from_website()}*
|
||||||
|
|
||||||
|
This tagrendering has labels
|
||||||
|
`added_by_default`
|
||||||
|
|
||||||
|
|
||||||
|
This document is autogenerated from [assets/layers/tactile_map/tactile_map.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/layers/tactile_map/tactile_map.json)
|
134
Docs/Layers/tactile_model.md
Normal file
134
Docs/Layers/tactile_model.md
Normal file
|
@ -0,0 +1,134 @@
|
||||||
|
[//]: # (WARNING: this file is automatically generated. Please find the sources at the bottom and edit those sources)
|
||||||
|
|
||||||
|
# tactile_model
|
||||||
|
|
||||||
|
Layer showing tactile models, three-dimensional models of the surrounding area.
|
||||||
|
|
||||||
|
- This layer is shown at zoomlevel **10** and higher
|
||||||
|
|
||||||
|
## Table of contents
|
||||||
|
|
||||||
|
1. [Themes using this layer](#themes-using-this-layer)
|
||||||
|
2. [Presets](#presets)
|
||||||
|
3. [Basic tags for this layer](#basic-tags-for-this-layer)
|
||||||
|
4. [Supported attributes](#supported-attributes)
|
||||||
|
- [images](#images)
|
||||||
|
- [description](#description)
|
||||||
|
- [braille](#braille)
|
||||||
|
- [braille_languages](#braille_languages)
|
||||||
|
- [embossed_letters](#embossed_letters)
|
||||||
|
- [embossed_letters_languages](#embossed_letters_languages)
|
||||||
|
- [scale](#scale)
|
||||||
|
- [website](#website)
|
||||||
|
- [leftover-questions](#leftover-questions)
|
||||||
|
- [move-button](#move-button)
|
||||||
|
- [delete-button](#delete-button)
|
||||||
|
- [lod](#lod)
|
||||||
|
|
||||||
|
## Themes using this layer
|
||||||
|
|
||||||
|
- [blind_osm](https://mapcomplete.org/blind_osm)
|
||||||
|
- [personal](https://mapcomplete.org/personal)
|
||||||
|
|
||||||
|
## Presets
|
||||||
|
|
||||||
|
The following options to create new points are included:
|
||||||
|
|
||||||
|
- **a tactile model** which has the following tags:<a href='https://wiki.openstreetmap.org/wiki/Key:tourism' target='_blank'>tourism</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:tourism%3Dinformation' target='_blank'>information</a> & <a href='https://wiki.openstreetmap.org/wiki/Key:information' target='_blank'>information</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:information%3Dtactile_model' target='_blank'>tactile_model</a>
|
||||||
|
|
||||||
|
## Basic tags for this layer
|
||||||
|
|
||||||
|
Elements must match the expression **<a href='https://wiki.openstreetmap.org/wiki/Key:information' target='_blank'>information</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:information%3Dtactile_model' target='_blank'>tactile_model</a>**
|
||||||
|
|
||||||
|
[Execute on overpass](http://overpass-turbo.eu/?Q=%5Bout%3Ajson%5D%5Btimeout%3A90%5D%3B%28%20%20%20%20nwr%5B%22information%22%3D%22tactile_model%22%5D%28%7B%7Bbbox%7D%7D%29%3B%0A%29%3Bout%20body%3B%3E%3Bout%20skel%20qt%3B)
|
||||||
|
|
||||||
|
## Supported attributes
|
||||||
|
|
||||||
|
**Warning:**,this quick overview is incomplete,
|
||||||
|
|
||||||
|
| attribute | type | values which are supported by this layer |
|
||||||
|
-----|-----|----- |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/blind:description:en#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/blind%3Adescription%3Aen/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [blind:description:en](https://wiki.openstreetmap.org/wiki/Key:blind:description:en) | [string](../SpecialInputElements.md#string) | |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/braille#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/braille/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [braille](https://wiki.openstreetmap.org/wiki/Key:braille) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:braille%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:braille%3Dno) |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/embossed_letters#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/embossed_letters/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [embossed_letters](https://wiki.openstreetmap.org/wiki/Key:embossed_letters) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:embossed_letters%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:embossed_letters%3Dno) |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/scale#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/scale/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [scale](https://wiki.openstreetmap.org/wiki/Key:scale) | [string](../SpecialInputElements.md#string) | |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/website#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/website/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [website](https://wiki.openstreetmap.org/wiki/Key:website) | [url](../SpecialInputElements.md#url) | |
|
||||||
|
|
||||||
|
### images
|
||||||
|
This block shows the known images which are linked with the `image`-keys, but also via `mapillary` and `wikidata` and shows the button to upload new images
|
||||||
|
_This tagrendering has no question and is thus read-only_
|
||||||
|
*{image_carousel()}{image_upload()}*
|
||||||
|
|
||||||
|
### description
|
||||||
|
|
||||||
|
The question is `What does this tactile model show?`
|
||||||
|
*Description: {blind:description:en}.* is shown if `blind:description:en` is set
|
||||||
|
|
||||||
|
### braille
|
||||||
|
|
||||||
|
The question is `Is there a braille description?`
|
||||||
|
|
||||||
|
- *There is a braille description.* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:braille' target='_blank'>braille</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:braille%3Dyes' target='_blank'>yes</a>
|
||||||
|
- *There is no braille description.* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:braille' target='_blank'>braille</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:braille%3Dno' target='_blank'>no</a>
|
||||||
|
|
||||||
|
### braille_languages
|
||||||
|
|
||||||
|
_This tagrendering has no question and is thus read-only_
|
||||||
|
*{language_chooser(tactile_writing:braille,In which languages is there a braille description?,This model has a braille description in &LBRACElanguage&LPARENS&RPARENS&RBRACE,This model has a braille description in &LBRACElanguage&RBRACE,,)}*
|
||||||
|
|
||||||
|
This tagrendering is only visible in the popup if the following condition is met: <a href='https://wiki.openstreetmap.org/wiki/Key:braille' target='_blank'>braille</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:braille%3Dyes' target='_blank'>yes</a>
|
||||||
|
|
||||||
|
### embossed_letters
|
||||||
|
|
||||||
|
The question is `Are there embossed letters describing the model?`
|
||||||
|
|
||||||
|
- *There are embossed letters describing the model.* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:embossed_letters' target='_blank'>embossed_letters</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:embossed_letters%3Dyes' target='_blank'>yes</a>
|
||||||
|
- *There are no embossed letters describing the model.* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:embossed_letters' target='_blank'>embossed_letters</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:embossed_letters%3Dno' target='_blank'>no</a>
|
||||||
|
|
||||||
|
### embossed_letters_languages
|
||||||
|
|
||||||
|
_This tagrendering has no question and is thus read-only_
|
||||||
|
*{language_chooser(tactile_writing:embossed_letters,In which languages are there embossed letters?,This model has embossed letters in &LBRACElanguage&LPARENS&RPARENS&RBRACE,This model has embossed letters in &LBRACElanguage&RBRACE,,)}*
|
||||||
|
|
||||||
|
This tagrendering is only visible in the popup if the following condition is met: <a href='https://wiki.openstreetmap.org/wiki/Key:embossed_letters' target='_blank'>embossed_letters</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:embossed_letters%3Dyes' target='_blank'>yes</a>
|
||||||
|
|
||||||
|
### scale
|
||||||
|
|
||||||
|
The question is `What scale is the model?`
|
||||||
|
*The scale of this model is {scale}.* is shown if `scale` is set
|
||||||
|
|
||||||
|
### website
|
||||||
|
|
||||||
|
The question is `What is the website of {title()}?`
|
||||||
|
*<a href='{website}' rel='nofollow noopener noreferrer' target='_blank'>{website}</a>* is shown if `website` is set
|
||||||
|
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/icons/website.svg' style='width: 3rem; height: 3rem'> *<a href='{contact:website}' rel='nofollow noopener noreferrer' target='_blank'>{contact:website}</a>* is shown if with contact:website~.+. _This option cannot be chosen as answer_
|
||||||
|
|
||||||
|
This tagrendering has labels
|
||||||
|
`contact`
|
||||||
|
|
||||||
|
### leftover-questions
|
||||||
|
|
||||||
|
_This tagrendering has no question and is thus read-only_
|
||||||
|
*{questions( ,)}*
|
||||||
|
|
||||||
|
### move-button
|
||||||
|
|
||||||
|
_This tagrendering has no question and is thus read-only_
|
||||||
|
*{move_button()}*
|
||||||
|
|
||||||
|
### delete-button
|
||||||
|
|
||||||
|
_This tagrendering has no question and is thus read-only_
|
||||||
|
*{delete_button()}*
|
||||||
|
|
||||||
|
### lod
|
||||||
|
|
||||||
|
_This tagrendering has no question and is thus read-only_
|
||||||
|
*{linked_data_from_website()}*
|
||||||
|
|
||||||
|
This tagrendering has labels
|
||||||
|
`added_by_default`
|
||||||
|
|
||||||
|
|
||||||
|
This document is autogenerated from [assets/layers/tactile_model/tactile_model.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/layers/tactile_model/tactile_model.json)
|
|
@ -16,6 +16,7 @@ Special builtin layer providing all walls and buildings. This layer is useful in
|
||||||
- This layer is needed as dependency for layer [defibrillator](#defibrillator)
|
- This layer is needed as dependency for layer [defibrillator](#defibrillator)
|
||||||
- This layer is needed as dependency for layer [entrance](#entrance)
|
- This layer is needed as dependency for layer [entrance](#entrance)
|
||||||
- This layer is needed as dependency for layer [ghostsign](#ghostsign)
|
- This layer is needed as dependency for layer [ghostsign](#ghostsign)
|
||||||
|
- This layer is needed as dependency for layer [postboxes](#postboxes)
|
||||||
- This layer is needed as dependency for layer [surveillance_camera](#surveillance_camera)
|
- This layer is needed as dependency for layer [surveillance_camera](#surveillance_camera)
|
||||||
- This layer is needed as dependency for layer [facadegardens](#facadegardens)
|
- This layer is needed as dependency for layer [facadegardens](#facadegardens)
|
||||||
- This layer is needed as dependency for layer [parking_spaces_disabled](#parking_spaces_disabled)
|
- This layer is needed as dependency for layer [parking_spaces_disabled](#parking_spaces_disabled)
|
||||||
|
@ -44,6 +45,7 @@ Special builtin layer providing all walls and buildings. This layer is useful in
|
||||||
- [memorials](https://mapcomplete.org/memorials)
|
- [memorials](https://mapcomplete.org/memorials)
|
||||||
- [onwheels](https://mapcomplete.org/onwheels)
|
- [onwheels](https://mapcomplete.org/onwheels)
|
||||||
- [personal](https://mapcomplete.org/personal)
|
- [personal](https://mapcomplete.org/personal)
|
||||||
|
- [postboxes](https://mapcomplete.org/postboxes)
|
||||||
- [stations](https://mapcomplete.org/stations)
|
- [stations](https://mapcomplete.org/stations)
|
||||||
- [surveillance](https://mapcomplete.org/surveillance)
|
- [surveillance](https://mapcomplete.org/surveillance)
|
||||||
- [walls_and_buildings](https://mapcomplete.org/walls_and_buildings)
|
- [walls_and_buildings](https://mapcomplete.org/walls_and_buildings)
|
||||||
|
|
|
@ -662,18 +662,87 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "crossing",
|
"key": "crossing",
|
||||||
"description": "Layer 'Crossings' shows crossing=unmarked with a fixed text, namely 'Crossing without crossing markings' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind') (This is only shown if highway=crossing)",
|
"description": "Layer 'Crossings' shows crossing=unmarked with a fixed text, namely 'Crossing without crossing markings' (in the mapcomplete.org theme 'OSM for the blind') (This is only shown if highway=crossing)",
|
||||||
"value": "unmarked"
|
"value": "unmarked"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "crossing_ref",
|
"key": "crossing:markings",
|
||||||
"description": "Layer 'Crossings' shows crossing_ref=zebra with a fixed text, namely 'This is a zebra crossing' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind') (This is only shown if crossing=uncontrolled)",
|
"description": "Layer 'Crossings' shows and asks freeform values for key 'crossing:markings' (in the mapcomplete.org theme 'OSM for the blind')"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=no with a fixed text, namely 'This crossing has no markings' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
|
"value": "no"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=zebra with a fixed text, namely 'This crossing has zebra markings' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
"value": "zebra"
|
"value": "zebra"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "crossing_ref",
|
"key": "crossing:markings",
|
||||||
"description": "Layer 'Crossings' shows crossing_ref= with a fixed text, namely 'This is not a zebra crossing' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind') Picking this answer will delete the key crossing_ref. (This is only shown if crossing=uncontrolled)",
|
"description": "Layer 'Crossings' shows crossing:markings=yes with a fixed text, namely 'This crossing has markings of an unknown type' (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
"value": ""
|
"value": "yes"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=lines with a fixed text, namely 'This crossings has lines on either side of the crossing' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
|
"value": "lines"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=ladder with a fixed text, namely 'This crossing has lines on either side of the crossing, along with bars connecting them' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
|
"value": "ladder"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=dashes with a fixed text, namely 'This crossing has dashed lines on either sides of the crossing' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
|
"value": "dashes"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=dots with a fixed text, namely 'This crossing has dotted lines on either sides of the crossing' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
|
"value": "dots"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=surface with a fixed text, namely 'This crossing is marked by using a different coloured surface' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
|
"value": "surface"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=ladder:skewed with a fixed text, namely 'This crossing has lines on either side of the crossing, along with angled bars connecting them' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
|
"value": "ladder:skewed"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=zebra:paired with a fixed text, namely 'This crossing has zebra markings with an interruption in every bar' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
|
"value": "zebra:paired"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=zebra:bicolour with a fixed text, namely 'This crossing has zebra markings in alternating colours' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
|
"value": "zebra:bicolour"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=zebra:double with a fixed text, namely 'This crossing has double zebra markings' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
|
"value": "zebra:double"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=pictograms with a fixed text, namely 'This crossing has pictograms on the road' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
|
"value": "pictograms"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=ladder:paired with a fixed text, namely 'This crossing has lines on either side of the crossing, along with bars connecting them, with an interruption in every bar' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
|
"value": "ladder:paired"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=lines:paired with a fixed text, namely 'This crossing has double lines on either side of the crossing' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
|
"value": "lines:paired"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "crossing:island",
|
"key": "crossing:island",
|
||||||
|
@ -1291,6 +1360,132 @@
|
||||||
"key": "incline",
|
"key": "incline",
|
||||||
"description": "Layer 'Stairs' shows incline=down with a fixed text, namely 'The downward direction is {direction_absolute()}' (in the mapcomplete.org theme 'OSM for the blind')",
|
"description": "Layer 'Stairs' shows incline=down with a fixed text, namely 'The downward direction is {direction_absolute()}' (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
"value": "down"
|
"value": "down"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "information",
|
||||||
|
"description": "The MapComplete theme OSM for the blind has a layer Tactile Maps showing features with this tag",
|
||||||
|
"value": "tactile_map"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "id",
|
||||||
|
"description": "Layer 'Tactile Maps' shows id~.+ with a fixed text, namely 'You just created this element! Thanks for sharing this info with the world and helping people worldwide.' (in the mapcomplete.org theme 'OSM for the blind') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "image",
|
||||||
|
"description": "The layer 'Tactile Maps allows to upload images and adds them under the 'panoramax'-tag (and panoramax:0, panoramax:1, ... for multiple images). Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "panoramax",
|
||||||
|
"description": "The layer 'Tactile Maps allows to upload images and adds them under the 'panoramax'-tag (and panoramax:0, panoramax:1, ... for multiple images). Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "mapillary",
|
||||||
|
"description": "The layer 'Tactile Maps allows to upload images and adds them under the 'panoramax'-tag (and panoramax:0, panoramax:1, ... for multiple images). Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "wikidata",
|
||||||
|
"description": "The layer 'Tactile Maps allows to upload images and adds them under the 'panoramax'-tag (and panoramax:0, panoramax:1, ... for multiple images). Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "wikipedia",
|
||||||
|
"description": "The layer 'Tactile Maps allows to upload images and adds them under the 'panoramax'-tag (and panoramax:0, panoramax:1, ... for multiple images). Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "blind:description:en",
|
||||||
|
"description": "Layer 'Tactile Maps' shows and asks freeform values for key 'blind:description:en' (in the mapcomplete.org theme 'OSM for the blind')"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "braille",
|
||||||
|
"description": "Layer 'Tactile Maps' shows braille=yes with a fixed text, namely 'This tactile map has braille text.' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
|
"value": "yes"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "braille",
|
||||||
|
"description": "Layer 'Tactile Maps' shows braille=no with a fixed text, namely 'This tactile map does not have braille text.' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
|
"value": "no"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "embossed_letters",
|
||||||
|
"description": "Layer 'Tactile Maps' shows embossed_letters=yes with a fixed text, namely 'This tactile map has embossed letters.' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
|
"value": "yes"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "embossed_letters",
|
||||||
|
"description": "Layer 'Tactile Maps' shows embossed_letters=no with a fixed text, namely 'This tactile map does not have embossed letters.' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
|
"value": "no"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "website",
|
||||||
|
"description": "Layer 'Tactile Maps' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'OSM for the blind')"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "contact:website",
|
||||||
|
"description": "Layer 'Tactile Maps' shows contact:website~.+ with a fixed text, namely '<a href='{contact:website}' rel='nofollow noopener noreferrer' target='_blank'>{contact:website}</a>' (in the mapcomplete.org theme 'OSM for the blind')"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "information",
|
||||||
|
"description": "The MapComplete theme OSM for the blind has a layer Tactile Models showing features with this tag",
|
||||||
|
"value": "tactile_model"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "id",
|
||||||
|
"description": "Layer 'Tactile Models' shows id~.+ with a fixed text, namely 'You just created this element! Thanks for sharing this info with the world and helping people worldwide.' (in the mapcomplete.org theme 'OSM for the blind') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "image",
|
||||||
|
"description": "The layer 'Tactile Models allows to upload images and adds them under the 'panoramax'-tag (and panoramax:0, panoramax:1, ... for multiple images). Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "panoramax",
|
||||||
|
"description": "The layer 'Tactile Models allows to upload images and adds them under the 'panoramax'-tag (and panoramax:0, panoramax:1, ... for multiple images). Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "mapillary",
|
||||||
|
"description": "The layer 'Tactile Models allows to upload images and adds them under the 'panoramax'-tag (and panoramax:0, panoramax:1, ... for multiple images). Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "wikidata",
|
||||||
|
"description": "The layer 'Tactile Models allows to upload images and adds them under the 'panoramax'-tag (and panoramax:0, panoramax:1, ... for multiple images). Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "wikipedia",
|
||||||
|
"description": "The layer 'Tactile Models allows to upload images and adds them under the 'panoramax'-tag (and panoramax:0, panoramax:1, ... for multiple images). Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "blind:description:en",
|
||||||
|
"description": "Layer 'Tactile Models' shows and asks freeform values for key 'blind:description:en' (in the mapcomplete.org theme 'OSM for the blind')"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "braille",
|
||||||
|
"description": "Layer 'Tactile Models' shows braille=yes with a fixed text, namely 'There is a braille description.' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
|
"value": "yes"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "braille",
|
||||||
|
"description": "Layer 'Tactile Models' shows braille=no with a fixed text, namely 'There is no braille description.' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
|
"value": "no"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "embossed_letters",
|
||||||
|
"description": "Layer 'Tactile Models' shows embossed_letters=yes with a fixed text, namely 'There are embossed letters describing the model.' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
|
"value": "yes"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "embossed_letters",
|
||||||
|
"description": "Layer 'Tactile Models' shows embossed_letters=no with a fixed text, namely 'There are no embossed letters describing the model.' and allows to pick this as a default answer (in the mapcomplete.org theme 'OSM for the blind')",
|
||||||
|
"value": "no"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "scale",
|
||||||
|
"description": "Layer 'Tactile Models' shows and asks freeform values for key 'scale' (in the mapcomplete.org theme 'OSM for the blind')"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "website",
|
||||||
|
"description": "Layer 'Tactile Models' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'OSM for the blind')"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "contact:website",
|
||||||
|
"description": "Layer 'Tactile Models' shows contact:website~.+ with a fixed text, namely '<a href='{contact:website}' rel='nofollow noopener noreferrer' target='_blank'>{contact:website}</a>' (in the mapcomplete.org theme 'OSM for the blind')"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
|
@ -46,9 +46,14 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "support",
|
"key": "support",
|
||||||
"description": "Layer 'Clocks' shows support=wall_mounted with a fixed text, namely 'This clock is mounted on a wall' and allows to pick this as a default answer (in the mapcomplete.org theme 'Clocks')",
|
"description": "Layer 'Clocks' shows support=wall_mounted with a fixed text, namely 'This clock is mounted on a wall, usually through a support perpendicular to the wall' and allows to pick this as a default answer (in the mapcomplete.org theme 'Clocks')",
|
||||||
"value": "wall_mounted"
|
"value": "wall_mounted"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"key": "support",
|
||||||
|
"description": "Layer 'Clocks' shows support=wall with a fixed text, namely 'This clock is mounted directly on a wall' and allows to pick this as a default answer (in the mapcomplete.org theme 'Clocks')",
|
||||||
|
"value": "wall"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"key": "support",
|
"key": "support",
|
||||||
"description": "Layer 'Clocks' shows support=billboard with a fixed text, namely 'This clock is part of a billboard' and allows to pick this as a default answer (in the mapcomplete.org theme 'Clocks')",
|
"description": "Layer 'Clocks' shows support=billboard with a fixed text, namely 'This clock is part of a billboard' and allows to pick this as a default answer (in the mapcomplete.org theme 'Clocks')",
|
||||||
|
@ -79,19 +84,29 @@
|
||||||
"description": "Layer 'Clocks' shows display=unorthodox with a fixed text, namely 'This clock displays the time in a non-standard way, e.g using binary, water or something else' and allows to pick this as a default answer (in the mapcomplete.org theme 'Clocks')",
|
"description": "Layer 'Clocks' shows display=unorthodox with a fixed text, namely 'This clock displays the time in a non-standard way, e.g using binary, water or something else' and allows to pick this as a default answer (in the mapcomplete.org theme 'Clocks')",
|
||||||
"value": "unorthodox"
|
"value": "unorthodox"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"key": "indoor",
|
||||||
|
"description": "Layer 'Clocks' shows indoor=yes with a fixed text, namely 'This clock is indoors' and allows to pick this as a default answer (in the mapcomplete.org theme 'Clocks')",
|
||||||
|
"value": "yes"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "indoor",
|
||||||
|
"description": "Layer 'Clocks' shows indoor=no with a fixed text, namely 'This clock is outdoors' and allows to pick this as a default answer (in the mapcomplete.org theme 'Clocks')",
|
||||||
|
"value": "no"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"key": "visibility",
|
"key": "visibility",
|
||||||
"description": "Layer 'Clocks' shows visibility=house with a fixed text, namely 'This clock is visible from about 5 meters away (small wall-mounted clock)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Clocks')",
|
"description": "Layer 'Clocks' shows visibility=house with a fixed text, namely 'This clock is visible from about 5 meters away (small wall-mounted clock)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Clocks') (This is only shown if indoor!=yes)",
|
||||||
"value": "house"
|
"value": "house"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "visibility",
|
"key": "visibility",
|
||||||
"description": "Layer 'Clocks' shows visibility=street with a fixed text, namely 'This clock is visible from about 20 meters away (medium size billboard clock)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Clocks')",
|
"description": "Layer 'Clocks' shows visibility=street with a fixed text, namely 'This clock is visible from about 20 meters away (medium size billboard clock)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Clocks') (This is only shown if indoor!=yes)",
|
||||||
"value": "street"
|
"value": "street"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "visibility",
|
"key": "visibility",
|
||||||
"description": "Layer 'Clocks' shows visibility=area with a fixed text, namely 'This clock is visible from more than 20 meters away (e.g. a church clock or station clock)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Clocks')",
|
"description": "Layer 'Clocks' shows visibility=area with a fixed text, namely 'This clock is visible from more than 20 meters away (e.g. a church clock or station clock)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Clocks') (This is only shown if indoor!=yes)",
|
||||||
"value": "area"
|
"value": "area"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
|
@ -777,18 +777,87 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "crossing",
|
"key": "crossing",
|
||||||
"description": "Layer 'Crossings' shows crossing=unmarked with a fixed text, namely 'Crossing without crossing markings' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle infrastructure') (This is only shown if highway=crossing)",
|
"description": "Layer 'Crossings' shows crossing=unmarked with a fixed text, namely 'Crossing without crossing markings' (in the mapcomplete.org theme 'Bicycle infrastructure') (This is only shown if highway=crossing)",
|
||||||
"value": "unmarked"
|
"value": "unmarked"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "crossing_ref",
|
"key": "crossing:markings",
|
||||||
"description": "Layer 'Crossings' shows crossing_ref=zebra with a fixed text, namely 'This is a zebra crossing' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle infrastructure') (This is only shown if crossing=uncontrolled)",
|
"description": "Layer 'Crossings' shows and asks freeform values for key 'crossing:markings' (in the mapcomplete.org theme 'Bicycle infrastructure')"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=no with a fixed text, namely 'This crossing has no markings' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle infrastructure')",
|
||||||
|
"value": "no"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=zebra with a fixed text, namely 'This crossing has zebra markings' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle infrastructure')",
|
||||||
"value": "zebra"
|
"value": "zebra"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "crossing_ref",
|
"key": "crossing:markings",
|
||||||
"description": "Layer 'Crossings' shows crossing_ref= with a fixed text, namely 'This is not a zebra crossing' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle infrastructure') Picking this answer will delete the key crossing_ref. (This is only shown if crossing=uncontrolled)",
|
"description": "Layer 'Crossings' shows crossing:markings=yes with a fixed text, namely 'This crossing has markings of an unknown type' (in the mapcomplete.org theme 'Bicycle infrastructure')",
|
||||||
"value": ""
|
"value": "yes"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=lines with a fixed text, namely 'This crossings has lines on either side of the crossing' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle infrastructure')",
|
||||||
|
"value": "lines"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=ladder with a fixed text, namely 'This crossing has lines on either side of the crossing, along with bars connecting them' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle infrastructure')",
|
||||||
|
"value": "ladder"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=dashes with a fixed text, namely 'This crossing has dashed lines on either sides of the crossing' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle infrastructure')",
|
||||||
|
"value": "dashes"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=dots with a fixed text, namely 'This crossing has dotted lines on either sides of the crossing' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle infrastructure')",
|
||||||
|
"value": "dots"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=surface with a fixed text, namely 'This crossing is marked by using a different coloured surface' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle infrastructure')",
|
||||||
|
"value": "surface"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=ladder:skewed with a fixed text, namely 'This crossing has lines on either side of the crossing, along with angled bars connecting them' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle infrastructure')",
|
||||||
|
"value": "ladder:skewed"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=zebra:paired with a fixed text, namely 'This crossing has zebra markings with an interruption in every bar' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle infrastructure')",
|
||||||
|
"value": "zebra:paired"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=zebra:bicolour with a fixed text, namely 'This crossing has zebra markings in alternating colours' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle infrastructure')",
|
||||||
|
"value": "zebra:bicolour"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=zebra:double with a fixed text, namely 'This crossing has double zebra markings' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle infrastructure')",
|
||||||
|
"value": "zebra:double"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=pictograms with a fixed text, namely 'This crossing has pictograms on the road' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle infrastructure')",
|
||||||
|
"value": "pictograms"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=ladder:paired with a fixed text, namely 'This crossing has lines on either side of the crossing, along with bars connecting them, with an interruption in every bar' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle infrastructure')",
|
||||||
|
"value": "ladder:paired"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=lines:paired with a fixed text, namely 'This crossing has double lines on either side of the crossing' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle infrastructure')",
|
||||||
|
"value": "lines:paired"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "bicycle",
|
"key": "bicycle",
|
||||||
|
@ -994,6 +1063,70 @@
|
||||||
{
|
{
|
||||||
"key": "website",
|
"key": "website",
|
||||||
"description": "Layer 'Bicycle counters' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Bicycle infrastructure')"
|
"description": "Layer 'Bicycle counters' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Bicycle infrastructure')"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "highway",
|
||||||
|
"description": "The MapComplete theme Bicycle infrastructure has a layer Cyclist Waiting Aids showing features with this tag",
|
||||||
|
"value": "cyclist_waiting_aid"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "id",
|
||||||
|
"description": "Layer 'Cyclist Waiting Aids' shows id~.+ with a fixed text, namely 'You just created this element! Thanks for sharing this info with the world and helping people worldwide.' (in the mapcomplete.org theme 'Bicycle infrastructure') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "image",
|
||||||
|
"description": "The layer 'Cyclist Waiting Aids allows to upload images and adds them under the 'panoramax'-tag (and panoramax:0, panoramax:1, ... for multiple images). Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "panoramax",
|
||||||
|
"description": "The layer 'Cyclist Waiting Aids allows to upload images and adds them under the 'panoramax'-tag (and panoramax:0, panoramax:1, ... for multiple images). Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "mapillary",
|
||||||
|
"description": "The layer 'Cyclist Waiting Aids allows to upload images and adds them under the 'panoramax'-tag (and panoramax:0, panoramax:1, ... for multiple images). Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "wikidata",
|
||||||
|
"description": "The layer 'Cyclist Waiting Aids allows to upload images and adds them under the 'panoramax'-tag (and panoramax:0, panoramax:1, ... for multiple images). Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "wikipedia",
|
||||||
|
"description": "The layer 'Cyclist Waiting Aids allows to upload images and adds them under the 'panoramax'-tag (and panoramax:0, panoramax:1, ... for multiple images). Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "footrest",
|
||||||
|
"description": "Layer 'Cyclist Waiting Aids' shows footrest=yes with a fixed text, namely 'There is a board or peg to rest your foot on here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle infrastructure')",
|
||||||
|
"value": "yes"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "handrest",
|
||||||
|
"description": "Layer 'Cyclist Waiting Aids' shows handrest=yes with a fixed text, namely 'There is a rail or a handle to hold on to here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle infrastructure')",
|
||||||
|
"value": "yes"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "side",
|
||||||
|
"description": "Layer 'Cyclist Waiting Aids' shows side=left with a fixed text, namely 'This waiting aid is located on the left side' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle infrastructure')",
|
||||||
|
"value": "left"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "side",
|
||||||
|
"description": "Layer 'Cyclist Waiting Aids' shows side=right with a fixed text, namely 'This waiting aid is located on the right side' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle infrastructure')",
|
||||||
|
"value": "right"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "side",
|
||||||
|
"description": "Layer 'Cyclist Waiting Aids' shows side=both with a fixed text, namely 'There are waiting aids on both sides of the road' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle infrastructure')",
|
||||||
|
"value": "both"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "direction",
|
||||||
|
"description": "Layer 'Cyclist Waiting Aids' shows direction=forward with a fixed text, namely 'This waiting aid can be used when going forward on this way' (in the mapcomplete.org theme 'Bicycle infrastructure') (This is only shown if direction~.+)",
|
||||||
|
"value": "forward"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "direction",
|
||||||
|
"description": "Layer 'Cyclist Waiting Aids' shows direction=backward with a fixed text, namely 'This waiting aid can be used when going backward on this way' (in the mapcomplete.org theme 'Bicycle infrastructure') (This is only shown if direction~.+)",
|
||||||
|
"value": "backward"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
|
@ -2222,11 +2222,6 @@
|
||||||
"description": "The MapComplete theme Cyclofix - a map for cyclists has a layer Bike cleaning service showing features with this tag",
|
"description": "The MapComplete theme Cyclofix - a map for cyclists has a layer Bike cleaning service showing features with this tag",
|
||||||
"value": "bicycle_wash"
|
"value": "bicycle_wash"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"key": "amenity",
|
|
||||||
"description": "The MapComplete theme Cyclofix - a map for cyclists has a layer Bike cleaning service showing features with this tag",
|
|
||||||
"value": "bike_wash"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"key": "id",
|
"key": "id",
|
||||||
"description": "Layer 'Bike cleaning service' shows id~.+ with a fixed text, namely 'You just created this element! Thanks for sharing this info with the world and helping people worldwide.' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))"
|
"description": "Layer 'Bike cleaning service' shows id~.+ with a fixed text, namely 'You just created this element! Thanks for sharing this info with the world and helping people worldwide.' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))"
|
||||||
|
@ -2253,37 +2248,57 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "service:bicycle:cleaning:charge",
|
"key": "service:bicycle:cleaning:charge",
|
||||||
"description": "Layer 'Bike cleaning service' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)"
|
"description": "Layer 'Bike cleaning service' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "service:bicycle:cleaning:fee",
|
"key": "service:bicycle:cleaning:fee",
|
||||||
"description": "Layer 'Bike cleaning service' shows service:bicycle:cleaning:fee=no with a fixed text, namely 'The cleaning service is free to use' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)",
|
"description": "Layer 'Bike cleaning service' shows service:bicycle:cleaning:fee=no with a fixed text, namely 'The cleaning service is free to use' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)",
|
||||||
"value": "no"
|
"value": "no"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "service:bicycle:cleaning:fee",
|
"key": "service:bicycle:cleaning:fee",
|
||||||
"description": "Layer 'Bike cleaning service' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)",
|
"description": "Layer 'Bike cleaning service' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)",
|
||||||
"value": "yes"
|
"value": "yes"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "service:bicycle:cleaning:charge",
|
"key": "service:bicycle:cleaning:charge",
|
||||||
"description": "Layer 'Bike cleaning service' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') Picking this answer will delete the key service:bicycle:cleaning:charge. (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)",
|
"description": "Layer 'Bike cleaning service' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') Picking this answer will delete the key service:bicycle:cleaning:charge. (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)",
|
||||||
"value": ""
|
"value": ""
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "charge",
|
"key": "charge",
|
||||||
"description": "Layer 'Bike cleaning service' shows and asks freeform values for key 'charge' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if amenity=bike_wash | amenity=bicycle_wash)"
|
"description": "Layer 'Bike cleaning service' shows and asks freeform values for key 'charge' (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if amenity=bicycle_wash)"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "fee",
|
"key": "fee",
|
||||||
"description": "Layer 'Bike cleaning service' shows fee=no with a fixed text, namely 'This cleaning service is free to use' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if amenity=bike_wash | amenity=bicycle_wash)",
|
"description": "Layer 'Bike cleaning service' shows fee=no with a fixed text, namely 'This cleaning service is free to use' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if amenity=bicycle_wash)",
|
||||||
"value": "no"
|
"value": "no"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "fee",
|
"key": "fee",
|
||||||
"description": "Layer 'Bike cleaning service' shows fee=yes with a fixed text, namely 'There is a fee to use this cleaning service' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if amenity=bike_wash | amenity=bicycle_wash)",
|
"description": "Layer 'Bike cleaning service' shows fee=yes with a fixed text, namely 'There is a fee to use this cleaning service' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if amenity=bicycle_wash)",
|
||||||
"value": "yes"
|
"value": "yes"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"key": "automated",
|
||||||
|
"description": "Layer 'Bike cleaning service' shows automated=no with a fixed text, namely 'This is a manual bike washing station' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if amenity=bicycle_wash)",
|
||||||
|
"value": "no"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "automated",
|
||||||
|
"description": "Layer 'Bike cleaning service' shows automated=yes with a fixed text, namely 'This is an automated bike wash' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if amenity=bicycle_wash)",
|
||||||
|
"value": "yes"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "self_service",
|
||||||
|
"description": "Layer 'Bike cleaning service' shows self_service=yes with a fixed text, namely 'This cleaning service is self-service' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if amenity=bicycle_wash)",
|
||||||
|
"value": "yes"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "self_service",
|
||||||
|
"description": "Layer 'Bike cleaning service' shows self_service=no with a fixed text, namely 'This cleaning service is operated by an employee' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if amenity=bicycle_wash)",
|
||||||
|
"value": "no"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"key": "amenity",
|
"key": "amenity",
|
||||||
"description": "The MapComplete theme Cyclofix - a map for cyclists has a layer Bicycle rental showing features with this tag",
|
"description": "The MapComplete theme Cyclofix - a map for cyclists has a layer Bicycle rental showing features with this tag",
|
||||||
|
|
|
@ -657,18 +657,87 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "crossing",
|
"key": "crossing",
|
||||||
"description": "Layer 'Crossings' shows crossing=unmarked with a fixed text, namely 'Crossing without crossing markings' and allows to pick this as a default answer (in the mapcomplete.org theme 'Kerbs and crossings') (This is only shown if highway=crossing)",
|
"description": "Layer 'Crossings' shows crossing=unmarked with a fixed text, namely 'Crossing without crossing markings' (in the mapcomplete.org theme 'Kerbs and crossings') (This is only shown if highway=crossing)",
|
||||||
"value": "unmarked"
|
"value": "unmarked"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "crossing_ref",
|
"key": "crossing:markings",
|
||||||
"description": "Layer 'Crossings' shows crossing_ref=zebra with a fixed text, namely 'This is a zebra crossing' and allows to pick this as a default answer (in the mapcomplete.org theme 'Kerbs and crossings') (This is only shown if crossing=uncontrolled)",
|
"description": "Layer 'Crossings' shows and asks freeform values for key 'crossing:markings' (in the mapcomplete.org theme 'Kerbs and crossings')"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=no with a fixed text, namely 'This crossing has no markings' and allows to pick this as a default answer (in the mapcomplete.org theme 'Kerbs and crossings')",
|
||||||
|
"value": "no"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=zebra with a fixed text, namely 'This crossing has zebra markings' and allows to pick this as a default answer (in the mapcomplete.org theme 'Kerbs and crossings')",
|
||||||
"value": "zebra"
|
"value": "zebra"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "crossing_ref",
|
"key": "crossing:markings",
|
||||||
"description": "Layer 'Crossings' shows crossing_ref= with a fixed text, namely 'This is not a zebra crossing' and allows to pick this as a default answer (in the mapcomplete.org theme 'Kerbs and crossings') Picking this answer will delete the key crossing_ref. (This is only shown if crossing=uncontrolled)",
|
"description": "Layer 'Crossings' shows crossing:markings=yes with a fixed text, namely 'This crossing has markings of an unknown type' (in the mapcomplete.org theme 'Kerbs and crossings')",
|
||||||
"value": ""
|
"value": "yes"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=lines with a fixed text, namely 'This crossings has lines on either side of the crossing' and allows to pick this as a default answer (in the mapcomplete.org theme 'Kerbs and crossings')",
|
||||||
|
"value": "lines"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=ladder with a fixed text, namely 'This crossing has lines on either side of the crossing, along with bars connecting them' and allows to pick this as a default answer (in the mapcomplete.org theme 'Kerbs and crossings')",
|
||||||
|
"value": "ladder"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=dashes with a fixed text, namely 'This crossing has dashed lines on either sides of the crossing' and allows to pick this as a default answer (in the mapcomplete.org theme 'Kerbs and crossings')",
|
||||||
|
"value": "dashes"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=dots with a fixed text, namely 'This crossing has dotted lines on either sides of the crossing' and allows to pick this as a default answer (in the mapcomplete.org theme 'Kerbs and crossings')",
|
||||||
|
"value": "dots"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=surface with a fixed text, namely 'This crossing is marked by using a different coloured surface' and allows to pick this as a default answer (in the mapcomplete.org theme 'Kerbs and crossings')",
|
||||||
|
"value": "surface"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=ladder:skewed with a fixed text, namely 'This crossing has lines on either side of the crossing, along with angled bars connecting them' and allows to pick this as a default answer (in the mapcomplete.org theme 'Kerbs and crossings')",
|
||||||
|
"value": "ladder:skewed"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=zebra:paired with a fixed text, namely 'This crossing has zebra markings with an interruption in every bar' and allows to pick this as a default answer (in the mapcomplete.org theme 'Kerbs and crossings')",
|
||||||
|
"value": "zebra:paired"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=zebra:bicolour with a fixed text, namely 'This crossing has zebra markings in alternating colours' and allows to pick this as a default answer (in the mapcomplete.org theme 'Kerbs and crossings')",
|
||||||
|
"value": "zebra:bicolour"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=zebra:double with a fixed text, namely 'This crossing has double zebra markings' and allows to pick this as a default answer (in the mapcomplete.org theme 'Kerbs and crossings')",
|
||||||
|
"value": "zebra:double"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=pictograms with a fixed text, namely 'This crossing has pictograms on the road' and allows to pick this as a default answer (in the mapcomplete.org theme 'Kerbs and crossings')",
|
||||||
|
"value": "pictograms"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=ladder:paired with a fixed text, namely 'This crossing has lines on either side of the crossing, along with bars connecting them, with an interruption in every bar' and allows to pick this as a default answer (in the mapcomplete.org theme 'Kerbs and crossings')",
|
||||||
|
"value": "ladder:paired"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "crossing:markings",
|
||||||
|
"description": "Layer 'Crossings' shows crossing:markings=lines:paired with a fixed text, namely 'This crossing has double lines on either side of the crossing' and allows to pick this as a default answer (in the mapcomplete.org theme 'Kerbs and crossings')",
|
||||||
|
"value": "lines:paired"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"key": "bicycle",
|
"key": "bicycle",
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -39,6 +39,10 @@
|
||||||
"key": "wikipedia",
|
"key": "wikipedia",
|
||||||
"description": "The layer 'Postboxes allows to upload images and adds them under the 'panoramax'-tag (and panoramax:0, panoramax:1, ... for multiple images). Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary"
|
"description": "The layer 'Postboxes allows to upload images and adds them under the 'panoramax'-tag (and panoramax:0, panoramax:1, ... for multiple images). Furthermore, this layer shows images based on the keys panoramax, image, wikidata, wikipedia, wikimedia_commons and mapillary"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"key": "operator",
|
||||||
|
"description": "Layer 'Postboxes' shows and asks freeform values for key 'operator' (in the mapcomplete.org theme 'Postbox and Post Office Map')"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"key": "amenity",
|
"key": "amenity",
|
||||||
"description": "The MapComplete theme Postbox and Post Office Map has a layer Post offices showing features with this tag",
|
"description": "The MapComplete theme Postbox and Post Office Map has a layer Post offices showing features with this tag",
|
||||||
|
|
|
@ -26,10 +26,12 @@ you are building your theme.
|
||||||
6. [!~ Value should not match regex](#!~-value-should-not-match-regex)
|
6. [!~ Value should not match regex](#!~-value-should-not-match-regex)
|
||||||
7. [!~i~ Value does not match case-invariant regex](#!~i~-value-does-not-match-case-invariant-regex)
|
7. [!~i~ Value does not match case-invariant regex](#!~i~-value-does-not-match-case-invariant-regex)
|
||||||
8. [~~ Key and value should match given regex](#~~-key-and-value-should-match-given-regex)
|
8. [~~ Key and value should match given regex](#~~-key-and-value-should-match-given-regex)
|
||||||
9. [:= Substitute ... {some_key} ... and match key](#=-substitute-...-{some_key}-...-and-match-key)
|
9. [~i~~ Key and value should match a given regex; value is case-invariant](#~i~~-key-and-value-should-match-a-given-regex-value-is-case-invariant)
|
||||||
10. [!:= Substitute {some_key} should not match key](#!=-substitute-{some_key}-should-not-match-key)
|
10. [!~i~~ Key and value should match a given regex; value is case-invariant](#!~i~~-key-and-value-should-match-a-given-regex-value-is-case-invariant)
|
||||||
11. [<= >= < > Logical comparators](#<=->=-<->-logical-comparators)
|
11. [:= Substitute ... {some_key} ... and match key](#=-substitute-...-{some_key}-...-and-match-key)
|
||||||
12. [Logical operators](#logical-operators)
|
12. [!:= Substitute {some_key} should not match key](#!=-substitute-{some_key}-should-not-match-key)
|
||||||
|
13. [<= >= < > Logical comparators](#<=->=-<->-logical-comparators)
|
||||||
|
14. [Logical operators](#logical-operators)
|
||||||
|
|
||||||
Example
|
Example
|
||||||
-------
|
-------
|
||||||
|
@ -112,6 +114,14 @@ A tag can also be tested against a regex with `key~i~regex`, where the case of t
|
||||||
|
|
||||||
Both the `key` and `value` part of this specification are interpreted as regexes, both the key and value musth completely match their respective regexes
|
Both the `key` and `value` part of this specification are interpreted as regexes, both the key and value musth completely match their respective regexes
|
||||||
|
|
||||||
|
## `~i~~` Key and value should match a given regex; value is case-invariant
|
||||||
|
|
||||||
|
Similar to ~~, except that the value is case-invariant
|
||||||
|
|
||||||
|
## `!~i~~` Key and value should match a given regex; value is case-invariant
|
||||||
|
|
||||||
|
Similar to !~~, except that the value is case-invariant
|
||||||
|
|
||||||
## `:=` Substitute `... {some_key} ...` and match `key`
|
## `:=` Substitute `... {some_key} ...` and match `key`
|
||||||
|
|
||||||
**This is an advanced feature - use with caution**
|
**This is an advanced feature - use with caution**
|
||||||
|
|
|
@ -54,7 +54,9 @@ Available languages:
|
||||||
- [Basic tags for this layer](#basic-tags-for-this-layer)
|
- [Basic tags for this layer](#basic-tags-for-this-layer)
|
||||||
- [Supported attributes](#supported-attributes)
|
- [Supported attributes](#supported-attributes)
|
||||||
+ [images](#images)
|
+ [images](#images)
|
||||||
+ [minimap](#minimap)
|
+ [phone](#phone)
|
||||||
|
+ [email](#email)
|
||||||
|
+ [website](#website)
|
||||||
+ [opening_hours](#opening_hours)
|
+ [opening_hours](#opening_hours)
|
||||||
+ [Opening hours](#opening-hours)
|
+ [Opening hours](#opening-hours)
|
||||||
+ [post_partner](#post_partner)
|
+ [post_partner](#post_partner)
|
||||||
|
@ -171,6 +173,9 @@ Elements must match **all** of the following expressions:
|
||||||
|
|
||||||
| attribute | type | values which are supported by this layer |
|
| attribute | type | values which are supported by this layer |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/phone#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/phone/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [phone](https://wiki.openstreetmap.org/wiki/Key:phone) | [phone](../SpecialInputElements.md#phone) | |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/email#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/email/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [email](https://wiki.openstreetmap.org/wiki/Key:email) | [email](../SpecialInputElements.md#email) | |
|
||||||
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/website#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/website/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [website](https://wiki.openstreetmap.org/wiki/Key:website) | [url](../SpecialInputElements.md#url) | |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/opening_hours#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/opening_hours/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [opening_hours](https://wiki.openstreetmap.org/wiki/Key:opening_hours) | [opening_hours](../SpecialInputElements.md#opening_hours) | |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/opening_hours#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/opening_hours/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [opening_hours](https://wiki.openstreetmap.org/wiki/Key:opening_hours) | [opening_hours](../SpecialInputElements.md#opening_hours) | |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/post_office#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/post_office/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [post_office](https://wiki.openstreetmap.org/wiki/Key:post_office) | Multiple choice | [post_partner](https://wiki.openstreetmap.org/wiki/Tag:post_office%3Dpost_partner) [](https://wiki.openstreetmap.org/wiki/Tag:post_office%3D) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/post_office#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/post_office/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [post_office](https://wiki.openstreetmap.org/wiki/Key:post_office) | Multiple choice | [post_partner](https://wiki.openstreetmap.org/wiki/Tag:post_office%3Dpost_partner) [](https://wiki.openstreetmap.org/wiki/Tag:post_office%3D) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/brand#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/brand/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [brand](https://wiki.openstreetmap.org/wiki/Key:brand) | [nsi](../SpecialInputElements.md#nsi) | |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/brand#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/brand/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [brand](https://wiki.openstreetmap.org/wiki/Key:brand) | [nsi](../SpecialInputElements.md#nsi) | |
|
||||||
|
@ -187,10 +192,36 @@ This block shows the known images which are linked with the `image`-keys, but al
|
||||||
_This tagrendering has no question and is thus read-only_
|
_This tagrendering has no question and is thus read-only_
|
||||||
*{image_carousel()}{image_upload()}*
|
*{image_carousel()}{image_upload()}*
|
||||||
|
|
||||||
### minimap
|
### phone
|
||||||
|
|
||||||
_This tagrendering has no question and is thus read-only_
|
The question is `What is the phone number of {title()}?`
|
||||||
*{minimap(18): height: 5rem; overflow: hidden; border-radius:3rem; }*
|
*{link(&LBRACEphone&RBRACE,tel:&LBRACEphone&RBRACE,,,,)}* is shown if `phone` is set
|
||||||
|
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/questions/phone.svg' style='width: 3rem; height: 3rem'> *{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}* is shown if with contact:phone~.+. _This option cannot be chosen as answer_
|
||||||
|
|
||||||
|
This tagrendering has labels
|
||||||
|
`contact`
|
||||||
|
|
||||||
|
### email
|
||||||
|
|
||||||
|
The question is `What is the email address of {title()}?`
|
||||||
|
*<a href='mailto:{email}' target='_blank' rel='noopener'>{email}</a>* is shown if `email` is set
|
||||||
|
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/svg/envelope.svg' style='width: 3rem; height: 3rem'> *<a href='mailto:{contact:email}' target='_blank' rel='noopener'>{contact:email}</a>* is shown if with contact:email~.+. _This option cannot be chosen as answer_
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/svg/envelope.svg' style='width: 3rem; height: 3rem'> *<a href='mailto:{operator:email}' target='_blank' rel='noopener'>{operator:email}</a>* is shown if with operator:email~.+. _This option cannot be chosen as answer_
|
||||||
|
|
||||||
|
This tagrendering has labels
|
||||||
|
`contact`
|
||||||
|
|
||||||
|
### website
|
||||||
|
|
||||||
|
The question is `What is the website of {title()}?`
|
||||||
|
*<a href='{website}' rel='nofollow noopener noreferrer' target='_blank'>{website}</a>* is shown if `website` is set
|
||||||
|
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/icons/website.svg' style='width: 3rem; height: 3rem'> *<a href='{contact:website}' rel='nofollow noopener noreferrer' target='_blank'>{contact:website}</a>* is shown if with contact:website~.+. _This option cannot be chosen as answer_
|
||||||
|
|
||||||
|
This tagrendering has labels
|
||||||
|
`contact`
|
||||||
|
|
||||||
### opening_hours
|
### opening_hours
|
||||||
|
|
||||||
|
|
|
@ -14,6 +14,8 @@ This theme contains the following layers:
|
||||||
- [transit_stops](../Layers/transit_stops.md)
|
- [transit_stops](../Layers/transit_stops.md)
|
||||||
- [elevator](../Layers/elevator.md)
|
- [elevator](../Layers/elevator.md)
|
||||||
- [stairs](../Layers/stairs.md)
|
- [stairs](../Layers/stairs.md)
|
||||||
|
- [tactile_map](../Layers/tactile_map.md)
|
||||||
|
- [tactile_model](../Layers/tactile_model.md)
|
||||||
|
|
||||||
Available languages:
|
Available languages:
|
||||||
|
|
||||||
|
|
|
@ -728,7 +728,7 @@ This tagrendering has labels
|
||||||
| id | question | osmTags |
|
| id | question | osmTags |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| shop_types.0 | *What kind of shop is this?* (default) | |
|
| shop_types.0 | *What kind of shop is this?* (default) | |
|
||||||
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental |
|
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental | ((shop=rental & amenity=bicycle_rental)) |
|
||||||
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
||||||
| shop_types.3 | Liquor Store | shop=alcohol |
|
| shop_types.3 | Liquor Store | shop=alcohol |
|
||||||
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
||||||
|
|
|
@ -756,7 +756,7 @@ This tagrendering has labels
|
||||||
| id | question | osmTags |
|
| id | question | osmTags |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| shop_types.0 | *What kind of shop is this?* (default) | |
|
| shop_types.0 | *What kind of shop is this?* (default) | |
|
||||||
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental |
|
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental | ((shop=rental & amenity=bicycle_rental)) |
|
||||||
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
||||||
| shop_types.3 | Liquor Store | shop=alcohol |
|
| shop_types.3 | Liquor Store | shop=alcohol |
|
||||||
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
||||||
|
|
|
@ -12,6 +12,7 @@ This theme contains the following layers:
|
||||||
- [barrier](../Layers/barrier.md)
|
- [barrier](../Layers/barrier.md)
|
||||||
- [crossings](../Layers/crossings.md)
|
- [crossings](../Layers/crossings.md)
|
||||||
- [bicycle_counter](../Layers/bicycle_counter.md)
|
- [bicycle_counter](../Layers/bicycle_counter.md)
|
||||||
|
- [cyclist_waiting_aid](../Layers/cyclist_waiting_aid.md)
|
||||||
|
|
||||||
Available languages:
|
Available languages:
|
||||||
|
|
||||||
|
|
|
@ -33,6 +33,7 @@ Available languages:
|
||||||
- ca
|
- ca
|
||||||
- cs
|
- cs
|
||||||
- pt
|
- pt
|
||||||
|
- uk
|
||||||
|
|
||||||
# Layers defined in this theme configuration file
|
# Layers defined in this theme configuration file
|
||||||
These layers can not be reused in different themes.
|
These layers can not be reused in different themes.
|
||||||
|
|
|
@ -543,6 +543,25 @@ This tagrendering has labels
|
||||||
| artwork-artwork_type.12 | Tilework | artwork_type=tilework |
|
| artwork-artwork_type.12 | Tilework | artwork_type=tilework |
|
||||||
| artwork-artwork_type.13 | Woodcarving | artwork_type=woodcarving |
|
| artwork-artwork_type.13 | Woodcarving | artwork_type=woodcarving |
|
||||||
|
|
||||||
|
| id | question | osmTags |
|
||||||
|
-----|-----|----- |
|
||||||
|
| memorial-type.0 | *What type of memorial is this?* (default) | |
|
||||||
|
| memorial-type.1 | This is a statue | memorial=statue |
|
||||||
|
| memorial-type.2 | This is a plaque | memorial=plaque |
|
||||||
|
| memorial-type.3 | This is a commemorative bench | memorial=bench |
|
||||||
|
| memorial-type.4 | This is a ghost bike - a bicycle painted white to remember a cyclist whom deceased because of a car crash | memorial=ghost_bike |
|
||||||
|
| memorial-type.5 | This is a stolperstein (stumbing stone) | memorial=stolperstein |
|
||||||
|
| memorial-type.6 | This is a stele | memorial=stele |
|
||||||
|
| memorial-type.7 | This is a memorial stone | memorial=stone |
|
||||||
|
| memorial-type.8 | This is a bust | memorial=bust |
|
||||||
|
| memorial-type.9 | This is a sculpture | memorial=sculpture |
|
||||||
|
| memorial-type.10 | This is an obelisk | memorial=obelisk |
|
||||||
|
| memorial-type.11 | This is a cross | memorial=cross |
|
||||||
|
| memorial-type.12 | This is a blue plaque | memorial=blue_plaque |
|
||||||
|
| memorial-type.13 | This is a historic tank, permanently placed in public space as memorial | memorial=tank |
|
||||||
|
| memorial-type.14 | This is a memorial tree | memorial=tree |
|
||||||
|
| memorial-type.15 | This is a gravestone; the person is buried here | historic=tomb |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
This document is autogenerated from [assets/themes/ghostsigns/ghostsigns.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/themes/ghostsigns/ghostsigns.json)
|
This document is autogenerated from [assets/themes/ghostsigns/ghostsigns.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/themes/ghostsigns/ghostsigns.json)
|
||||||
|
|
|
@ -1521,7 +1521,7 @@ This tagrendering has labels
|
||||||
| id | question | osmTags |
|
| id | question | osmTags |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| shop_types.0 | *What kind of shop is this?* (default) | |
|
| shop_types.0 | *What kind of shop is this?* (default) | |
|
||||||
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental |
|
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental | ((shop=rental & amenity=bicycle_rental)) |
|
||||||
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
||||||
| shop_types.3 | Liquor Store | shop=alcohol |
|
| shop_types.3 | Liquor Store | shop=alcohol |
|
||||||
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
||||||
|
|
|
@ -758,7 +758,7 @@ This tagrendering has labels
|
||||||
| id | question | osmTags |
|
| id | question | osmTags |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| shop_types.0 | *What kind of shop is this?* (default) | |
|
| shop_types.0 | *What kind of shop is this?* (default) | |
|
||||||
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental |
|
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental | ((shop=rental & amenity=bicycle_rental)) |
|
||||||
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
||||||
| shop_types.3 | Liquor Store | shop=alcohol |
|
| shop_types.3 | Liquor Store | shop=alcohol |
|
||||||
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
||||||
|
|
|
@ -38,7 +38,7 @@ Available languages:
|
||||||
- [Supported attributes](#supported-attributes)
|
- [Supported attributes](#supported-attributes)
|
||||||
+ [images](#images)
|
+ [images](#images)
|
||||||
+ [crossing-type](#crossing-type)
|
+ [crossing-type](#crossing-type)
|
||||||
+ [crossing-is-zebra](#crossing-is-zebra)
|
+ [markings](#markings)
|
||||||
+ [crossing-bicycle-allowed](#crossing-bicycle-allowed)
|
+ [crossing-bicycle-allowed](#crossing-bicycle-allowed)
|
||||||
+ [crossing-has-island](#crossing-has-island)
|
+ [crossing-has-island](#crossing-has-island)
|
||||||
+ [crossing-tactile](#crossing-tactile)
|
+ [crossing-tactile](#crossing-tactile)
|
||||||
|
@ -84,8 +84,8 @@ Elements must match the expression **<a href='https://wiki.openstreetmap.org/wik
|
||||||
|
|
||||||
| attribute | type | values which are supported by this layer |
|
| attribute | type | values which are supported by this layer |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/crossing#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/crossing/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [crossing](https://wiki.openstreetmap.org/wiki/Key:crossing) | Multiple choice | [uncontrolled](https://wiki.openstreetmap.org/wiki/Tag:crossing%3Duncontrolled) [traffic_signals](https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dtraffic_signals) [unmarked](https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dunmarked) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/crossing#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/crossing/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [crossing](https://wiki.openstreetmap.org/wiki/Key:crossing) | Multiple choice | [uncontrolled](https://wiki.openstreetmap.org/wiki/Tag:crossing%3Duncontrolled) [traffic_signals](https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dtraffic_signals) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/crossing_ref#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/crossing_ref/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [crossing_ref](https://wiki.openstreetmap.org/wiki/Key:crossing_ref) | Multiple choice | [zebra](https://wiki.openstreetmap.org/wiki/Tag:crossing_ref%3Dzebra) [](https://wiki.openstreetmap.org/wiki/Tag:crossing_ref%3D) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/crossing:markings#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/crossing%3Amarkings/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [crossing:markings](https://wiki.openstreetmap.org/wiki/Key:crossing:markings) | [string](../SpecialInputElements.md#string) | [no](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dno) [zebra](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra) [lines](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dlines) [ladder](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dladder) [dashes](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Ddashes) [dots](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Ddots) [surface](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dsurface) [ladder:skewed](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dladder:skewed) [zebra:paired](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra:paired) [zebra:bicolour](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra:bicolour) [zebra:double](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra:double) [pictograms](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dpictograms) [ladder:paired](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dladder:paired) [lines:paired](https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dlines:paired) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/bicycle#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/bicycle/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [bicycle](https://wiki.openstreetmap.org/wiki/Key:bicycle) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:bicycle%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:bicycle%3Dno) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/bicycle#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/bicycle/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [bicycle](https://wiki.openstreetmap.org/wiki/Key:bicycle) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:bicycle%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:bicycle%3Dno) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/crossing:island#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/crossing%3Aisland/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [crossing:island](https://wiki.openstreetmap.org/wiki/Key:crossing:island) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:crossing:island%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:crossing:island%3Dno) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/crossing:island#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/crossing%3Aisland/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [crossing:island](https://wiki.openstreetmap.org/wiki/Key:crossing:island) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:crossing:island%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:crossing:island%3Dno) |
|
||||||
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/tactile_paving#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/tactile_paving/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [tactile_paving](https://wiki.openstreetmap.org/wiki/Key:tactile_paving) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:tactile_paving%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:tactile_paving%3Dno) |
|
| <a target="_blank" href='https://taginfo.openstreetmap.org/keys/tactile_paving#values'><img src='https://mapcomplete.org/assets/svg/search.svg' height='18px'></a> <a target="_blank" href='https://taghistory.raifer.tech/?#***/tactile_paving/'><img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'></a> [tactile_paving](https://wiki.openstreetmap.org/wiki/Key:tactile_paving) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:tactile_paving%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:tactile_paving%3Dno) |
|
||||||
|
@ -109,18 +109,30 @@ The question is `What kind of crossing is this?`
|
||||||
- *Crossing, without traffic lights* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Duncontrolled' target='_blank'>uncontrolled</a>
|
- *Crossing, without traffic lights* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Duncontrolled' target='_blank'>uncontrolled</a>
|
||||||
- *Crossing with traffic signals* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dtraffic_signals' target='_blank'>traffic_signals</a>
|
- *Crossing with traffic signals* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dtraffic_signals' target='_blank'>traffic_signals</a>
|
||||||
- *Zebra crossing* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dzebra' target='_blank'>zebra</a>. _This option cannot be chosen as answer_
|
- *Zebra crossing* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dzebra' target='_blank'>zebra</a>. _This option cannot be chosen as answer_
|
||||||
- *Crossing without crossing markings* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dunmarked' target='_blank'>unmarked</a>
|
- *Crossing without crossing markings* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Dunmarked' target='_blank'>unmarked</a>. _This option cannot be chosen as answer_
|
||||||
|
|
||||||
This tagrendering is only visible in the popup if the following condition is met: <a href='https://wiki.openstreetmap.org/wiki/Key:highway' target='_blank'>highway</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:highway%3Dcrossing' target='_blank'>crossing</a>
|
This tagrendering is only visible in the popup if the following condition is met: <a href='https://wiki.openstreetmap.org/wiki/Key:highway' target='_blank'>highway</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:highway%3Dcrossing' target='_blank'>crossing</a>
|
||||||
|
|
||||||
### crossing-is-zebra
|
### markings
|
||||||
|
|
||||||
The question is `Is this is a zebra crossing?`
|
The question is `What kind of markings does this crossing have?`
|
||||||
|
*This crossing has {crossing:markings} markings* is shown if `crossing:markings` is set
|
||||||
|
|
||||||
- *This is a zebra crossing* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing_ref' target='_blank'>crossing_ref</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing_ref%3Dzebra' target='_blank'>zebra</a>
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/crossing_unmarked.png' style='width: 3rem; height: 3rem'> *This crossing has no markings* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dno' target='_blank'>no</a>
|
||||||
- *This is not a zebra crossing* is shown if with crossing_ref=
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_zebra.png' style='width: 3rem; height: 3rem'> *This crossing has zebra markings* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra' target='_blank'>zebra</a>
|
||||||
|
- *This crossing has markings of an unknown type* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dyes' target='_blank'>yes</a>. _This option cannot be chosen as answer_
|
||||||
This tagrendering is only visible in the popup if the following condition is met: <a href='https://wiki.openstreetmap.org/wiki/Key:crossing' target='_blank'>crossing</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing%3Duncontrolled' target='_blank'>uncontrolled</a>
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_lines.png' style='width: 3rem; height: 3rem'> *This crossings has lines on either side of the crossing* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dlines' target='_blank'>lines</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_ladder.png' style='width: 3rem; height: 3rem'> *This crossing has lines on either side of the crossing, along with bars connecting them* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dladder' target='_blank'>ladder</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_dashes.png' style='width: 3rem; height: 3rem'> *This crossing has dashed lines on either sides of the crossing* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Ddashes' target='_blank'>dashes</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_dots.png' style='width: 3rem; height: 3rem'> *This crossing has dotted lines on either sides of the crossing* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Ddots' target='_blank'>dots</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_surface.png' style='width: 3rem; height: 3rem'> *This crossing is marked by using a different coloured surface* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dsurface' target='_blank'>surface</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_ladder_skewed.png' style='width: 3rem; height: 3rem'> *This crossing has lines on either side of the crossing, along with angled bars connecting them* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dladder:skewed' target='_blank'>ladder:skewed</a>
|
||||||
|
- *This crossing has zebra markings with an interruption in every bar* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra:paired' target='_blank'>zebra:paired</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_zebra_bicolour.png' style='width: 3rem; height: 3rem'> *This crossing has zebra markings in alternating colours* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra:bicolour' target='_blank'>zebra:bicolour</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_zebra_double.png' style='width: 3rem; height: 3rem'> *This crossing has double zebra markings* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dzebra:double' target='_blank'>zebra:double</a>
|
||||||
|
- *This crossing has pictograms on the road* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dpictograms' target='_blank'>pictograms</a>
|
||||||
|
- *This crossing has lines on either side of the crossing, along with bars connecting them, with an interruption in every bar* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dladder:paired' target='_blank'>ladder:paired</a>
|
||||||
|
- <img src='https://raw.githubusercontent.com/pietervdvn/MapComplete/develop/./assets/layers/crossings/markings_lines_paired.png' style='width: 3rem; height: 3rem'> *This crossing has double lines on either side of the crossing* is shown if with <a href='https://wiki.openstreetmap.org/wiki/Key:crossing:markings' target='_blank'>crossing:markings</a>=<a href='https://wiki.openstreetmap.org/wiki/Tag:crossing:markings%3Dlines:paired' target='_blank'>lines:paired</a>
|
||||||
|
|
||||||
### crossing-bicycle-allowed
|
### crossing-bicycle-allowed
|
||||||
|
|
||||||
|
|
|
@ -1519,7 +1519,7 @@ This tagrendering has labels
|
||||||
| id | question | osmTags |
|
| id | question | osmTags |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| shop_types.0 | *What kind of shop is this?* (default) | |
|
| shop_types.0 | *What kind of shop is this?* (default) | |
|
||||||
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental |
|
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental | ((shop=rental & amenity=bicycle_rental)) |
|
||||||
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
||||||
| shop_types.3 | Liquor Store | shop=alcohol |
|
| shop_types.3 | Liquor Store | shop=alcohol |
|
||||||
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
||||||
|
|
|
@ -801,11 +801,11 @@ This tagrendering has labels
|
||||||
| id | question | osmTags |
|
| id | question | osmTags |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| fetish.0 | *Does this shop offer fetish gear?* (default) | |
|
| fetish.0 | *Does this shop offer fetish gear?* (default) | |
|
||||||
| fetish.1 | This shop offers <b>soft BDSM-gear</b>, such as fluffy handcuffs, a 'fifty-shade-of-grey'-starterset, ... | fetish:bdsm:soft=yes |
|
| fetish.1 | This shop offers <b>soft BDSM-gear</b>, such as fluffy handcuffs, a 'fifty-shade-of-grey'-starterset, ... | fetish:bdsm:soft~^(.+;)?yes(;.+)$ |
|
||||||
| fetish.2 | This shop offers <b>specialized BDSM-gear</b>, such as spreader bars, supplies for needle play, medical bondage supplies, impact tools, shackles, metal colors, cuffs, nipple clamps, shibari accessories, ... | fetish:bdsm:specialized=yes |
|
| fetish.2 | This shop offers <b>specialized BDSM-gear</b>, such as spreader bars, supplies for needle play, medical bondage supplies, impact tools, shackles, metal colors, cuffs, nipple clamps, shibari accessories, ... | fetish:bdsm:specialized~^(.+;)?yes(;.+)$ |
|
||||||
| fetish.3 | This shop offers <b>pet play</b> accessories, such as puppy masks, animal masks, pony play, tails, hoof shoes, ... | fetish:pet_play=yes |
|
| fetish.3 | This shop offers <b>pet play</b> accessories, such as puppy masks, animal masks, pony play, tails, hoof shoes, ... | fetish:pet_play~^(.+;)?yes(;.+)$ |
|
||||||
| fetish.4 | This shop offers <b>leather gear</b>, including pants and shirts usable in daily life up till leather harnesses | fetish:leather=yes |
|
| fetish.4 | This shop offers <b>leather gear</b>, including pants and shirts usable in daily life up till leather harnesses | fetish:leather~^(.+;)?yes(;.+)$ |
|
||||||
| fetish.5 | This shop offers <b>uniforms</b> for roleplay, such nurse uniforms, military uniforms, police, school girl, french maid, ... | fetish:uniform=yes |
|
| fetish.5 | This shop offers <b>uniforms</b> for roleplay, such nurse uniforms, military uniforms, police, school girl, french maid, ... | fetish:uniform~^(.+;)?yes(;.+)$ |
|
||||||
|
|
||||||
| id | question | osmTags |
|
| id | question | osmTags |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
|
@ -818,7 +818,7 @@ This tagrendering has labels
|
||||||
| id | question | osmTags |
|
| id | question | osmTags |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| shop_types.0 | *What kind of shop is this?* (default) | |
|
| shop_types.0 | *What kind of shop is this?* (default) | |
|
||||||
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental |
|
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental | ((shop=rental & amenity=bicycle_rental)) |
|
||||||
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
||||||
| shop_types.3 | Liquor Store | shop=alcohol |
|
| shop_types.3 | Liquor Store | shop=alcohol |
|
||||||
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
||||||
|
|
|
@ -44,6 +44,7 @@ This theme contains the following layers:
|
||||||
- [crossings](../Layers/crossings.md)
|
- [crossings](../Layers/crossings.md)
|
||||||
- [current_view](../Layers/current_view.md)
|
- [current_view](../Layers/current_view.md)
|
||||||
- [cycleways_and_roads](../Layers/cycleways_and_roads.md)
|
- [cycleways_and_roads](../Layers/cycleways_and_roads.md)
|
||||||
|
- [cyclist_waiting_aid](../Layers/cyclist_waiting_aid.md)
|
||||||
- [defibrillator](../Layers/defibrillator.md)
|
- [defibrillator](../Layers/defibrillator.md)
|
||||||
- [dentist](../Layers/dentist.md)
|
- [dentist](../Layers/dentist.md)
|
||||||
- [disaster_response](../Layers/disaster_response.md)
|
- [disaster_response](../Layers/disaster_response.md)
|
||||||
|
@ -119,6 +120,8 @@ This theme contains the following layers:
|
||||||
- [stairs](../Layers/stairs.md)
|
- [stairs](../Layers/stairs.md)
|
||||||
- [street_lamps](../Layers/street_lamps.md)
|
- [street_lamps](../Layers/street_lamps.md)
|
||||||
- [surveillance_camera](../Layers/surveillance_camera.md)
|
- [surveillance_camera](../Layers/surveillance_camera.md)
|
||||||
|
- [tactile_map](../Layers/tactile_map.md)
|
||||||
|
- [tactile_model](../Layers/tactile_model.md)
|
||||||
- [tertiary_education](../Layers/tertiary_education.md)
|
- [tertiary_education](../Layers/tertiary_education.md)
|
||||||
- [ticket_machine](../Layers/ticket_machine.md)
|
- [ticket_machine](../Layers/ticket_machine.md)
|
||||||
- [toilet](../Layers/toilet.md)
|
- [toilet](../Layers/toilet.md)
|
||||||
|
|
|
@ -1306,7 +1306,7 @@ This tagrendering has labels
|
||||||
| id | question | osmTags |
|
| id | question | osmTags |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| shop_types.0 | *What kind of shop is this?* (default) | |
|
| shop_types.0 | *What kind of shop is this?* (default) | |
|
||||||
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental |
|
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental | ((shop=rental & amenity=bicycle_rental)) |
|
||||||
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
||||||
| shop_types.3 | Liquor Store | shop=alcohol |
|
| shop_types.3 | Liquor Store | shop=alcohol |
|
||||||
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
||||||
|
|
|
@ -12,6 +12,7 @@ This theme contains the following layers:
|
||||||
- [postoffices](../Layers/postoffices.md)
|
- [postoffices](../Layers/postoffices.md)
|
||||||
- [parcel_lockers](../Layers/parcel_lockers.md)
|
- [parcel_lockers](../Layers/parcel_lockers.md)
|
||||||
- [shops](../Layers/shops.md)
|
- [shops](../Layers/shops.md)
|
||||||
|
- [walls_and_buildings](../Layers/walls_and_buildings.md)
|
||||||
|
|
||||||
Available languages:
|
Available languages:
|
||||||
|
|
||||||
|
|
|
@ -745,7 +745,7 @@ This tagrendering has labels
|
||||||
| id | question | osmTags |
|
| id | question | osmTags |
|
||||||
-----|-----|----- |
|
-----|-----|----- |
|
||||||
| shop_types.0 | *What kind of shop is this?* (default) | |
|
| shop_types.0 | *What kind of shop is this?* (default) | |
|
||||||
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental |
|
| shop_types.1 | Bicycle rental shop | shop=bicycle_rental | ((shop=rental & amenity=bicycle_rental)) |
|
||||||
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
| shop_types.2 | Farm Supply Shop | shop=agrarian |
|
||||||
| shop_types.3 | Liquor Store | shop=alcohol |
|
| shop_types.3 | Liquor Store | shop=alcohol |
|
||||||
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
| shop_types.4 | Anime / Manga Shop | shop=anime |
|
||||||
|
|
|
@ -364,7 +364,7 @@ The default value is _0_
|
||||||
|
|
||||||
Used to complete the login
|
Used to complete the login
|
||||||
|
|
||||||
This documentation is defined in the source code at [ThemeViewState.ts](/src/Models/ThemeViewState.ts#L188)
|
This documentation is defined in the source code at [ThemeViewState.ts](/src/Models/ThemeViewState.ts#L189)
|
||||||
|
|
||||||
No default value set
|
No default value set
|
||||||
|
|
||||||
|
|
|
@ -75,8 +75,8 @@
|
||||||
"nl": "Oplaadpunten",
|
"nl": "Oplaadpunten",
|
||||||
"ca": "Una estació de càrrega",
|
"ca": "Una estació de càrrega",
|
||||||
"de": "Eine Ladestation",
|
"de": "Eine Ladestation",
|
||||||
"fr": "Une station de recharge",
|
"es": "Un punto de carga",
|
||||||
"es": "Un punto de carga"
|
"fr": "Une station de recharge"
|
||||||
},
|
},
|
||||||
"#": "no-question-hint-check",
|
"#": "no-question-hint-check",
|
||||||
"tagRenderings": [
|
"tagRenderings": [
|
||||||
|
@ -89,8 +89,8 @@
|
||||||
"nl": "Welke voertuigen kunnen hier opgeladen worden?",
|
"nl": "Welke voertuigen kunnen hier opgeladen worden?",
|
||||||
"ca": "Quins vehicles tenen permesa la càrrega aquí?",
|
"ca": "Quins vehicles tenen permesa la càrrega aquí?",
|
||||||
"de": "Welche Fahrzeuge können hier laden?",
|
"de": "Welche Fahrzeuge können hier laden?",
|
||||||
"pl": "Jakie pojazdy mogą być tutaj ładowane?",
|
"es": "¿Qué vehículos pueden cargar aquí?",
|
||||||
"es": "¿Qué vehículos pueden cargar aquí?"
|
"pl": "Jakie pojazdy mogą być tutaj ładowane?"
|
||||||
},
|
},
|
||||||
"multiAnswer": true,
|
"multiAnswer": true,
|
||||||
"mappings": [
|
"mappings": [
|
||||||
|
@ -102,8 +102,8 @@
|
||||||
"nl": "<b>Elektrische fietsen</b> kunnen hier opgeladen worden",
|
"nl": "<b>Elektrische fietsen</b> kunnen hier opgeladen worden",
|
||||||
"ca": "Aquí es poden carregar <b>bicicletes</b>",
|
"ca": "Aquí es poden carregar <b>bicicletes</b>",
|
||||||
"de": "Hier können <b>Fahrräder</b> laden",
|
"de": "Hier können <b>Fahrräder</b> laden",
|
||||||
"pl": "Mogą tutaj być ładowane <b>rowery</b>",
|
"es": "Aquí se pueden cargar <b>bicicletas</b>",
|
||||||
"es": "Aquí se pueden cargar <b>bicicletas</b>"
|
"pl": "Mogą tutaj być ładowane <b>rowery</b>"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -114,8 +114,8 @@
|
||||||
"nl": "<b>Elektrische auto's</b> kunnen hier opgeladen worden",
|
"nl": "<b>Elektrische auto's</b> kunnen hier opgeladen worden",
|
||||||
"ca": "Aquí es poden carregar <b>cotxes</b>",
|
"ca": "Aquí es poden carregar <b>cotxes</b>",
|
||||||
"de": "Hier können <b>Autos</b> laden",
|
"de": "Hier können <b>Autos</b> laden",
|
||||||
"pl": "Mogą tutaj być ładowane <b>samochody</b>",
|
"es": "Aquí se pueden cargar <b>coches</b>",
|
||||||
"es": "Aquí se pueden cargar <b>coches</b>"
|
"pl": "Mogą tutaj być ładowane <b>samochody</b>"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -126,8 +126,8 @@
|
||||||
"nl": "<b>Elektrische scooters</b> (snorfiets of bromfiets) kunnen hier opgeladen worden",
|
"nl": "<b>Elektrische scooters</b> (snorfiets of bromfiets) kunnen hier opgeladen worden",
|
||||||
"ca": "Aquí es poden carregar <b>Scooters</b>",
|
"ca": "Aquí es poden carregar <b>Scooters</b>",
|
||||||
"de": "Hier können <b>Roller</b> laden",
|
"de": "Hier können <b>Roller</b> laden",
|
||||||
"pl": "Mogą być tutaj ładowane <b>hulajnogi<b>",
|
"es": "Aquí se pueden cargar <b>patinetes</b>",
|
||||||
"es": "Aquí se pueden cargar <b>patinetes</b>"
|
"pl": "Mogą być tutaj ładowane <b>hulajnogi<b>"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -149,8 +149,8 @@
|
||||||
"nl": "<b>Bussen</b> kunnen hier opgeladen worden",
|
"nl": "<b>Bussen</b> kunnen hier opgeladen worden",
|
||||||
"ca": "Aquí es poden carregar <b>autobusos</b>",
|
"ca": "Aquí es poden carregar <b>autobusos</b>",
|
||||||
"de": "Hier können <b>Busse</b> laden",
|
"de": "Hier können <b>Busse</b> laden",
|
||||||
"pl": "Mogą być tutaj ładowane <b>autobusy</b>",
|
"es": "Aquí se pueden cargar <b>autobuses</b>",
|
||||||
"es": "Aquí se pueden cargar <b>autobuses</b>"
|
"pl": "Mogą być tutaj ładowane <b>autobusy</b>"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -162,8 +162,8 @@
|
||||||
"nl": "Wie mag er dit oplaadpunt gebruiken?",
|
"nl": "Wie mag er dit oplaadpunt gebruiken?",
|
||||||
"ca": "Qui pot utilitzar aquesta estació de càrrega?",
|
"ca": "Qui pot utilitzar aquesta estació de càrrega?",
|
||||||
"de": "Wer darf diese Ladestation benutzen?",
|
"de": "Wer darf diese Ladestation benutzen?",
|
||||||
"pl": "Kto może używać tej stacji ładowania?",
|
"es": "¿Quién puede usar este punto de carga?",
|
||||||
"es": "¿Quién puede usar este punto de carga?"
|
"pl": "Kto może używać tej stacji ładowania?"
|
||||||
},
|
},
|
||||||
"render": {
|
"render": {
|
||||||
"en": "Access is {access}",
|
"en": "Access is {access}",
|
||||||
|
@ -187,8 +187,8 @@
|
||||||
"nl": "Toegankelijk voor iedereen (mogelijks met aanmelden en/of te betalen)",
|
"nl": "Toegankelijk voor iedereen (mogelijks met aanmelden en/of te betalen)",
|
||||||
"ca": "Qualsevol persona pot utilitzar aquesta estació de recàrrega (pot ser calgui un pagament)",
|
"ca": "Qualsevol persona pot utilitzar aquesta estació de recàrrega (pot ser calgui un pagament)",
|
||||||
"de": "Jeder kann die Station nutzen (eventuell gegen Bezahlung)",
|
"de": "Jeder kann die Station nutzen (eventuell gegen Bezahlung)",
|
||||||
"pl": "Każdy może używać tej stacji ładowania (opłata może być wymagana)",
|
"es": "Cualquiera puede usar este punto de carga (puede ser necesario el pago)",
|
||||||
"es": "Cualquiera puede usar este punto de carga (puede ser necesario el pago)"
|
"pl": "Każdy może używać tej stacji ładowania (opłata może być wymagana)"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -198,8 +198,8 @@
|
||||||
"nl": "Toegankelijk voor iedereen (mogelijks met aanmelden en/of te betalen)",
|
"nl": "Toegankelijk voor iedereen (mogelijks met aanmelden en/of te betalen)",
|
||||||
"ca": "Qualsevol persona pot utilitzar aquesta estació de recàrrega (pot ser calgui un pagament)",
|
"ca": "Qualsevol persona pot utilitzar aquesta estació de recàrrega (pot ser calgui un pagament)",
|
||||||
"de": "Jeder kann diese Ladestation nutzen (eventuell gegen Bezahlung)",
|
"de": "Jeder kann diese Ladestation nutzen (eventuell gegen Bezahlung)",
|
||||||
"pl": "Każdy może używać tej stacji ładowania (opłata może być wymagana)",
|
"es": "Cualquiera puede usar este punto de carga (puede ser necesario el pago)",
|
||||||
"es": "Cualquiera puede usar este punto de carga (puede ser necesario el pago)"
|
"pl": "Każdy może używać tej stacji ładowania (opłata może być wymagana)"
|
||||||
},
|
},
|
||||||
"hideInAnswer": true
|
"hideInAnswer": true
|
||||||
},
|
},
|
||||||
|
@ -252,16 +252,16 @@
|
||||||
"nl": "{capacity} voertuigen kunnen hier op hetzelfde moment opgeladen worden",
|
"nl": "{capacity} voertuigen kunnen hier op hetzelfde moment opgeladen worden",
|
||||||
"ca": "Aquí poden carregar {capacity} vehicles a l'hora",
|
"ca": "Aquí poden carregar {capacity} vehicles a l'hora",
|
||||||
"de": "Hier können {capacity} Fahrzeuge gleichzeitig laden",
|
"de": "Hier können {capacity} Fahrzeuge gleichzeitig laden",
|
||||||
"pl": "{capacity} pojazdów może być tutaj ładowanych jednocześnie",
|
"es": "{capacity} vehículos se pueden cargar aquí al mismo tiempo",
|
||||||
"es": "{capacity} vehículos se pueden cargar aquí al mismo tiempo"
|
"pl": "{capacity} pojazdów może być tutaj ładowanych jednocześnie"
|
||||||
},
|
},
|
||||||
"question": {
|
"question": {
|
||||||
"en": "How much vehicles can be charged here at the same time?",
|
"en": "How much vehicles can be charged here at the same time?",
|
||||||
"nl": "Hoeveel voertuigen kunnen hier opgeladen worden?",
|
"nl": "Hoeveel voertuigen kunnen hier opgeladen worden?",
|
||||||
"ca": "Quants vehicles poden carregar a la vegada?",
|
"ca": "Quants vehicles poden carregar a la vegada?",
|
||||||
"de": "Wie viele Fahrzeuge können hier gleichzeitig laden?",
|
"de": "Wie viele Fahrzeuge können hier gleichzeitig laden?",
|
||||||
"pl": "Ile pojazdów może być tutaj ładowanych jednocześnie?",
|
"es": "¿Cuántos vehículos se pueden cargar aquí al mismo tiempo?",
|
||||||
"es": "¿Cuántos vehículos se pueden cargar aquí al mismo tiempo?"
|
"pl": "Ile pojazdów może być tutaj ładowanych jednocześnie?"
|
||||||
},
|
},
|
||||||
"freeform": {
|
"freeform": {
|
||||||
"key": "capacity",
|
"key": "capacity",
|
||||||
|
@ -2252,8 +2252,8 @@
|
||||||
"nl": "Wanneer is dit oplaadpunt beschikbaar??",
|
"nl": "Wanneer is dit oplaadpunt beschikbaar??",
|
||||||
"ca": "Quan està oberta aquesta estació de càrrega?",
|
"ca": "Quan està oberta aquesta estació de càrrega?",
|
||||||
"de": "Wann ist die Ladestation geöffnet?",
|
"de": "Wann ist die Ladestation geöffnet?",
|
||||||
"pl": "Kiedy jest otwarta ta stacja ładowania?",
|
"es": "¿Cuándo está abierto este punto de carga?",
|
||||||
"es": "¿Cuándo está abierto este punto de carga?"
|
"pl": "Kiedy jest otwarta ta stacja ładowania?"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"id": "OH"
|
"id": "OH"
|
||||||
|
@ -2313,8 +2313,8 @@
|
||||||
"en": "Free to use",
|
"en": "Free to use",
|
||||||
"ca": "Ús gratuït",
|
"ca": "Ús gratuït",
|
||||||
"de": "Kostenlose Nutzung",
|
"de": "Kostenlose Nutzung",
|
||||||
"pl": "Darmowa",
|
"es": "De uso gratuito",
|
||||||
"es": "De uso gratuito"
|
"pl": "Darmowa"
|
||||||
},
|
},
|
||||||
"hideInAnswer": true
|
"hideInAnswer": true
|
||||||
},
|
},
|
||||||
|
@ -2403,8 +2403,8 @@
|
||||||
"nl": "Aanmelden met een lidkaart is mogelijk",
|
"nl": "Aanmelden met een lidkaart is mogelijk",
|
||||||
"ca": "Autenticació mitjançant una targeta de soci",
|
"ca": "Autenticació mitjançant una targeta de soci",
|
||||||
"de": "Authentifizierung durch eine Mitgliedskarte",
|
"de": "Authentifizierung durch eine Mitgliedskarte",
|
||||||
"fr": "Authentification par carte de membre",
|
"es": "Autenticación mediante tarjeta de socio",
|
||||||
"es": "Autenticación mediante tarjeta de socio"
|
"fr": "Authentification par carte de membre"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -2415,8 +2415,8 @@
|
||||||
"nl": "Aanmelden via een applicatie is mogelijk",
|
"nl": "Aanmelden via een applicatie is mogelijk",
|
||||||
"ca": "Autenticació mitjançant una aplicació",
|
"ca": "Autenticació mitjançant una aplicació",
|
||||||
"de": "Authentifizierung per App",
|
"de": "Authentifizierung per App",
|
||||||
"fr": "Authentification par une application",
|
"es": "Autenticación mediante una aplicación",
|
||||||
"es": "Autenticación mediante una aplicación"
|
"fr": "Authentification par une application"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -2426,8 +2426,8 @@
|
||||||
"en": "Authentication via phone call is available",
|
"en": "Authentication via phone call is available",
|
||||||
"nl": "Aanmelden door te bellen naar een telefoonnummer is mogelijk",
|
"nl": "Aanmelden door te bellen naar een telefoonnummer is mogelijk",
|
||||||
"de": "Authentifizierung per Anruf ist möglich",
|
"de": "Authentifizierung per Anruf ist möglich",
|
||||||
"fr": "Authentification possible par appel téléphonique",
|
"es": "Hay disponible autenticación por llamada telefónica",
|
||||||
"es": "Hay disponible autenticación por llamada telefónica"
|
"fr": "Authentification possible par appel téléphonique"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -2437,8 +2437,8 @@
|
||||||
"en": "Authentication via SMS is available",
|
"en": "Authentication via SMS is available",
|
||||||
"nl": "Aanmelden via SMS is mogelijk",
|
"nl": "Aanmelden via SMS is mogelijk",
|
||||||
"de": "Authentifizierung per SMS ist möglich",
|
"de": "Authentifizierung per SMS ist möglich",
|
||||||
"fr": "Authentification possible par SMS",
|
"es": "Hay disponible autenticación por SMS",
|
||||||
"es": "Hay disponible autenticación por SMS"
|
"fr": "Authentification possible par SMS"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -2568,18 +2568,18 @@
|
||||||
"nl": "Maakt deel uit van het <b>{network}</b>-netwerk",
|
"nl": "Maakt deel uit van het <b>{network}</b>-netwerk",
|
||||||
"ca": "Part de la xarxa <b>{network}</b>",
|
"ca": "Part de la xarxa <b>{network}</b>",
|
||||||
"de": "Teil des Netzwerks <b>{network}</b>",
|
"de": "Teil des Netzwerks <b>{network}</b>",
|
||||||
|
"es": "Parte de la red <b>{network}</b>",
|
||||||
"pl": "Część sieci <b>{network}</b>",
|
"pl": "Część sieci <b>{network}</b>",
|
||||||
"uk": "Частина мережі <b>{network}</b>",
|
"uk": "Частина мережі <b>{network}</b>"
|
||||||
"es": "Parte de la red <b>{network}</b>"
|
|
||||||
},
|
},
|
||||||
"question": {
|
"question": {
|
||||||
"en": "Is this charging station part of a network?",
|
"en": "Is this charging station part of a network?",
|
||||||
"nl": "Is dit oplaadpunt deel van een groter netwerk?",
|
"nl": "Is dit oplaadpunt deel van een groter netwerk?",
|
||||||
"ca": "Aquesta estació de càrrega forma part d'una xarxa?",
|
"ca": "Aquesta estació de càrrega forma part d'una xarxa?",
|
||||||
"de": "Ist diese Ladestation Teil eines Netzwerks?",
|
"de": "Ist diese Ladestation Teil eines Netzwerks?",
|
||||||
|
"es": "¿Este punto de carga forma parte de una red?",
|
||||||
"pl": "Czy ta stacja ładowania jest częścią sieci?",
|
"pl": "Czy ta stacja ładowania jest częścią sieci?",
|
||||||
"uk": "Чи є ця зарядна станція частиною мережі?",
|
"uk": "Чи є ця зарядна станція частиною мережі?"
|
||||||
"es": "¿Este punto de carga forma parte de una red?"
|
|
||||||
},
|
},
|
||||||
"freeform": {
|
"freeform": {
|
||||||
"key": "network"
|
"key": "network"
|
||||||
|
@ -2591,8 +2591,8 @@
|
||||||
"en": "Not part of a bigger network, e.g. because the charging station is maintained by a local business",
|
"en": "Not part of a bigger network, e.g. because the charging station is maintained by a local business",
|
||||||
"nl": "Maakt geen deel uit van een groter netwerk, een lokale zaak of organisatie beheert dit oplaadpunt",
|
"nl": "Maakt geen deel uit van een groter netwerk, een lokale zaak of organisatie beheert dit oplaadpunt",
|
||||||
"de": "Nicht Teil eines größeren Netzwerks, z. B. weil die Ladestation von einem lokalen Unternehmen betrieben wird",
|
"de": "Nicht Teil eines größeren Netzwerks, z. B. weil die Ladestation von einem lokalen Unternehmen betrieben wird",
|
||||||
"uk": "Не є частиною більшої мережі, наприклад, тому що зарядна станція обслуговується місцевим підприємством",
|
"es": "No forma parte de una red mayor, por ejemplo, porque el punto de carga es mantenido por un negocio local",
|
||||||
"es": "No forma parte de una red mayor, por ejemplo, porque el punto de carga es mantenido por un negocio local"
|
"uk": "Не є частиною більшої мережі, наприклад, тому що зарядна станція обслуговується місцевим підприємством"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -2601,9 +2601,9 @@
|
||||||
"en": "Not part of a bigger network",
|
"en": "Not part of a bigger network",
|
||||||
"nl": "Maakt geen deel uit van een groter netwerk",
|
"nl": "Maakt geen deel uit van een groter netwerk",
|
||||||
"de": "Nicht Teil eines größeren Netzwerks",
|
"de": "Nicht Teil eines größeren Netzwerks",
|
||||||
|
"es": "No forma parte de una red mayor",
|
||||||
"pl": "Nie jest częścią większej sieci",
|
"pl": "Nie jest częścią większej sieci",
|
||||||
"uk": "Не є частиною великої мережі",
|
"uk": "Не є частиною великої мережі"
|
||||||
"es": "No forma parte de una red mayor"
|
|
||||||
},
|
},
|
||||||
"hideInAnswer": true
|
"hideInAnswer": true
|
||||||
},
|
},
|
||||||
|
@ -2659,8 +2659,8 @@
|
||||||
"nl": "Wordt beheerd door {operator}",
|
"nl": "Wordt beheerd door {operator}",
|
||||||
"ca": "Aquesta estació de càrrega l'opera {operator}",
|
"ca": "Aquesta estació de càrrega l'opera {operator}",
|
||||||
"de": "Die Station wird betrieben von {operator}",
|
"de": "Die Station wird betrieben von {operator}",
|
||||||
"pl": "Ta stacja ładowania jest obsługiwana przez {operator}",
|
"es": "Este punto de carga es operado por {operator}",
|
||||||
"es": "Este punto de carga es operado por {operator}"
|
"pl": "Ta stacja ładowania jest obsługiwana przez {operator}"
|
||||||
},
|
},
|
||||||
"freeform": {
|
"freeform": {
|
||||||
"key": "operator"
|
"key": "operator"
|
||||||
|
@ -2694,16 +2694,16 @@
|
||||||
"nl": "Wat is het telefoonnummer van de beheerder van dit oplaadpunt?",
|
"nl": "Wat is het telefoonnummer van de beheerder van dit oplaadpunt?",
|
||||||
"ca": "A quin número es pot cridar si hi ha algun problema amb aquest punt de càrrega?",
|
"ca": "A quin número es pot cridar si hi ha algun problema amb aquest punt de càrrega?",
|
||||||
"de": "Welche Nummer kann man anrufen, wenn es ein Problem mit dieser Ladestation gibt?",
|
"de": "Welche Nummer kann man anrufen, wenn es ein Problem mit dieser Ladestation gibt?",
|
||||||
"pl": "Na jaki numer można zadzwonić w przypadku problemów z tą stacją ładowania?",
|
"es": "¿A qué número se puede llamar si hay un problema con este punto de carga?",
|
||||||
"es": "¿A qué número se puede llamar si hay un problema con este punto de carga?"
|
"pl": "Na jaki numer można zadzwonić w przypadku problemów z tą stacją ładowania?"
|
||||||
},
|
},
|
||||||
"render": {
|
"render": {
|
||||||
"en": "In case of problems, call <a href='tel:{phone}'>{phone}</a>",
|
"en": "In case of problems, call <a href='tel:{phone}'>{phone}</a>",
|
||||||
"nl": "Bij problemen, bel naar <a href='tel:{phone}'>{phone}</a>",
|
"nl": "Bij problemen, bel naar <a href='tel:{phone}'>{phone}</a>",
|
||||||
"ca": "En cas de problemes, truqueu a <a href='tel:{phone}'>{phone}</a>",
|
"ca": "En cas de problemes, truqueu a <a href='tel:{phone}'>{phone}</a>",
|
||||||
"de": "Bei Problemen, anrufen unter <a href='tel:{phone}'>{phone}</a>",
|
"de": "Bei Problemen, anrufen unter <a href='tel:{phone}'>{phone}</a>",
|
||||||
"pl": "W przypadku problemów zadzwoń na <a href='tel:{phone}'>{phone}</a>",
|
"es": "En caso de problemas, llama a <a href='tel:{phone}'>{phone}</a>",
|
||||||
"es": "En caso de problemas, llama a <a href='tel:{phone}'>{phone}</a>"
|
"pl": "W przypadku problemów zadzwoń na <a href='tel:{phone}'>{phone}</a>"
|
||||||
},
|
},
|
||||||
"freeform": {
|
"freeform": {
|
||||||
"key": "phone",
|
"key": "phone",
|
||||||
|
@ -2725,8 +2725,8 @@
|
||||||
"nl": "Bij problemen, email naar <a href='mailto:{email}'>{email}</a>",
|
"nl": "Bij problemen, email naar <a href='mailto:{email}'>{email}</a>",
|
||||||
"ca": "En cas de problemes, envia un email a <a href='mailto:{email}'>{email}</a>",
|
"ca": "En cas de problemes, envia un email a <a href='mailto:{email}'>{email}</a>",
|
||||||
"de": "Bei Problemen senden Sie bitte eine E-Mail an <a href='mailto:{email}'>{email}</a>",
|
"de": "Bei Problemen senden Sie bitte eine E-Mail an <a href='mailto:{email}'>{email}</a>",
|
||||||
"pl": "W przypadku problemów, wyślij emaila do <a href='mailto:{email}'>{email}</a>",
|
"es": "En caso de problemas, envía un correo electrónico a <a href='mailto:{email}'>{email}</a>",
|
||||||
"es": "En caso de problemas, envía un correo electrónico a <a href='mailto:{email}'>{email}</a>"
|
"pl": "W przypadku problemów, wyślij emaila do <a href='mailto:{email}'>{email}</a>"
|
||||||
},
|
},
|
||||||
"freeform": {
|
"freeform": {
|
||||||
"key": "email",
|
"key": "email",
|
||||||
|
@ -2759,15 +2759,15 @@
|
||||||
"en": "What is the reference number of this charging station?",
|
"en": "What is the reference number of this charging station?",
|
||||||
"nl": "Wat is het referentienummer van dit oplaadstation?",
|
"nl": "Wat is het referentienummer van dit oplaadstation?",
|
||||||
"de": "Welche Kennnummer hat die Ladestation?",
|
"de": "Welche Kennnummer hat die Ladestation?",
|
||||||
"pl": "Jaki jest numer referencyjny tej stacji ładowania?",
|
"es": "¿Cuál es el número de referencia de este punto de carga?",
|
||||||
"es": "¿Cuál es el número de referencia de este punto de carga?"
|
"pl": "Jaki jest numer referencyjny tej stacji ładowania?"
|
||||||
},
|
},
|
||||||
"render": {
|
"render": {
|
||||||
"en": "Reference number is <b>{ref}</b>",
|
"en": "Reference number is <b>{ref}</b>",
|
||||||
"nl": "Het referentienummer van dit oplaadpunt is <b>{ref}</b>",
|
"nl": "Het referentienummer van dit oplaadpunt is <b>{ref}</b>",
|
||||||
"de": "Die Kennziffer ist <b>{ref}</b>",
|
"de": "Die Kennziffer ist <b>{ref}</b>",
|
||||||
"pl": "Numer referencyjny to <b>{ref}</b>",
|
"es": "El número de referencia es <b>{ref}</b>",
|
||||||
"es": "El número de referencia es <b>{ref}</b>"
|
"pl": "Numer referencyjny to <b>{ref}</b>"
|
||||||
},
|
},
|
||||||
"freeform": {
|
"freeform": {
|
||||||
"key": "ref"
|
"key": "ref"
|
||||||
|
@ -2800,9 +2800,9 @@
|
||||||
"nl": "Dit oplaadpunt werkt",
|
"nl": "Dit oplaadpunt werkt",
|
||||||
"ca": "Aquesta estació de càrrega funciona",
|
"ca": "Aquesta estació de càrrega funciona",
|
||||||
"de": "Die Station ist in Betrieb",
|
"de": "Die Station ist in Betrieb",
|
||||||
|
"es": "Este punto de carga funciona",
|
||||||
"fr": "Cette station de recharge fonctionne",
|
"fr": "Cette station de recharge fonctionne",
|
||||||
"pl": "Ta stacja ładowania działa",
|
"pl": "Ta stacja ładowania działa"
|
||||||
"es": "Este punto de carga funciona"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -2820,8 +2820,8 @@
|
||||||
"nl": "Dit oplaadpunt is kapot",
|
"nl": "Dit oplaadpunt is kapot",
|
||||||
"ca": "Aquesta estació de carrega està trencada",
|
"ca": "Aquesta estació de carrega està trencada",
|
||||||
"de": "Die Station ist defekt",
|
"de": "Die Station ist defekt",
|
||||||
"pl": "Ta stacja ładowania jest zepsuta",
|
"es": "Este punto de carga está roto",
|
||||||
"es": "Este punto de carga está roto"
|
"pl": "Ta stacja ładowania jest zepsuta"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -2839,8 +2839,8 @@
|
||||||
"nl": "Hier zal binnenkort een oplaadpunt gebouwd worden",
|
"nl": "Hier zal binnenkort een oplaadpunt gebouwd worden",
|
||||||
"ca": "Aquí està prevista una estació de recàrrega",
|
"ca": "Aquí està prevista una estació de recàrrega",
|
||||||
"de": "Die Station ist erst in Planung",
|
"de": "Die Station ist erst in Planung",
|
||||||
"pl": "Planowana jest tutaj stacja ładowania",
|
"es": "Aquí se planea un punto de carga",
|
||||||
"es": "Aquí se planea un punto de carga"
|
"pl": "Planowana jest tutaj stacja ładowania"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -2857,8 +2857,8 @@
|
||||||
"en": "A charging station is constructed here",
|
"en": "A charging station is constructed here",
|
||||||
"nl": "Hier wordt op dit moment een oplaadpunt gebouwd",
|
"nl": "Hier wordt op dit moment een oplaadpunt gebouwd",
|
||||||
"de": "Die Station ist aktuell im Bau",
|
"de": "Die Station ist aktuell im Bau",
|
||||||
"pl": "Budowana jest tutaj stacja ładowania",
|
"es": "Aquí se está construyendo un punto de carga",
|
||||||
"es": "Aquí se está construyendo un punto de carga"
|
"pl": "Budowana jest tutaj stacja ładowania"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -3049,9 +3049,9 @@
|
||||||
"nl": "Alle voertuigen",
|
"nl": "Alle voertuigen",
|
||||||
"ca": "Tots els tipus de vehicles",
|
"ca": "Tots els tipus de vehicles",
|
||||||
"de": "Ladestationen für alle Fahrzeugtypen",
|
"de": "Ladestationen für alle Fahrzeugtypen",
|
||||||
|
"es": "Todos los tipos de vehículos",
|
||||||
"fr": "Tous les types de véhicules",
|
"fr": "Tous les types de véhicules",
|
||||||
"it": "Tutti i tipi di veicoli",
|
"it": "Tutti i tipi di veicoli"
|
||||||
"es": "Todos los tipos de vehículos"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -3060,9 +3060,9 @@
|
||||||
"nl": "Oplaadpunten voor fietsen",
|
"nl": "Oplaadpunten voor fietsen",
|
||||||
"ca": "Punt de recàrrega per a bicicletes",
|
"ca": "Punt de recàrrega per a bicicletes",
|
||||||
"de": "Ladestationen für Fahrräder",
|
"de": "Ladestationen für Fahrräder",
|
||||||
|
"es": "Punto de carga para bicicletas",
|
||||||
"fr": "Station de recharge pour vélos",
|
"fr": "Station de recharge pour vélos",
|
||||||
"it": "Stazione di ricarica per biciclette",
|
"it": "Stazione di ricarica per biciclette"
|
||||||
"es": "Punto de carga para bicicletas"
|
|
||||||
},
|
},
|
||||||
"osmTags": "bicycle=yes"
|
"osmTags": "bicycle=yes"
|
||||||
},
|
},
|
||||||
|
@ -3072,9 +3072,9 @@
|
||||||
"nl": "Oplaadpunten voor auto's",
|
"nl": "Oplaadpunten voor auto's",
|
||||||
"ca": "Estació de càrrega per a cotxes",
|
"ca": "Estació de càrrega per a cotxes",
|
||||||
"de": "Ladestationen für Autos",
|
"de": "Ladestationen für Autos",
|
||||||
|
"es": "Punto de carga para coches",
|
||||||
"fr": "Station de recharge pour voitures",
|
"fr": "Station de recharge pour voitures",
|
||||||
"it": "Stazione di ricarica per auto",
|
"it": "Stazione di ricarica per auto"
|
||||||
"es": "Punto de carga para coches"
|
|
||||||
},
|
},
|
||||||
"osmTags": {
|
"osmTags": {
|
||||||
"or": [
|
"or": [
|
||||||
|
@ -3094,9 +3094,9 @@
|
||||||
"nl": "Enkel werkende oplaadpunten",
|
"nl": "Enkel werkende oplaadpunten",
|
||||||
"ca": "Només estacions de recàrrega en funcionament",
|
"ca": "Només estacions de recàrrega en funcionament",
|
||||||
"de": "Nur Ladestationen in Betrieb",
|
"de": "Nur Ladestationen in Betrieb",
|
||||||
|
"es": "Solo puntos de carga en funcionamiento",
|
||||||
"fr": "Seulement les stations de recharge qui fonctionnent",
|
"fr": "Seulement les stations de recharge qui fonctionnent",
|
||||||
"it": "Solo stazioni di ricarica funzionanti",
|
"it": "Solo stazioni di ricarica funzionanti"
|
||||||
"es": "Solo puntos de carga en funcionamiento"
|
|
||||||
},
|
},
|
||||||
"osmTags": {
|
"osmTags": {
|
||||||
"and": [
|
"and": [
|
||||||
|
@ -3116,8 +3116,8 @@
|
||||||
"nl": "Alle types",
|
"nl": "Alle types",
|
||||||
"ca": "Tots els connectors",
|
"ca": "Tots els connectors",
|
||||||
"de": "Alle Anschlüsse",
|
"de": "Alle Anschlüsse",
|
||||||
"it": "Tutti i connettori",
|
"es": "Todos los conectores",
|
||||||
"es": "Todos los conectores"
|
"it": "Tutti i connettori"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
|
@ -101,8 +101,8 @@
|
||||||
"support=wall_mounted"
|
"support=wall_mounted"
|
||||||
],
|
],
|
||||||
"title": {
|
"title": {
|
||||||
"en": "a wall-mounted clock, mounted using a support perpendicular to the wall",
|
"en": "a wall-mounted clock",
|
||||||
"nl": "een klok aan een muur, bevestigd met een steun loodrecht op de muur",
|
"nl": "een klok aan een muur",
|
||||||
"de": "eine an der Wand montierte Uhr",
|
"de": "eine an der Wand montierte Uhr",
|
||||||
"ca": "un rellotge muntat en un paret",
|
"ca": "un rellotge muntat en un paret",
|
||||||
"fr": "une horloge fixée au mur",
|
"fr": "une horloge fixée au mur",
|
||||||
|
@ -187,7 +187,8 @@
|
||||||
"if": "support=wall",
|
"if": "support=wall",
|
||||||
"then": {
|
"then": {
|
||||||
"en": "This clock is mounted directly on a wall",
|
"en": "This clock is mounted directly on a wall",
|
||||||
"nl": "Deze klok is rechtstreeks aan een muur bevestigd"
|
"nl": "Deze klok is rechtstreeks aan een muur bevestigd",
|
||||||
|
"es": "Este reloj forma parte de una cartelera"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -201,7 +202,7 @@
|
||||||
"pl": "Ten zegar jest częścią bilbordu",
|
"pl": "Ten zegar jest częścią bilbordu",
|
||||||
"cs": "Tyto hodiny jsou součástí billboardu",
|
"cs": "Tyto hodiny jsou součástí billboardu",
|
||||||
"uk": "Цей годинник є частиною білборду",
|
"uk": "Цей годинник є частиною білборду",
|
||||||
"es": "Este reloj forma parte de una cartelera"
|
"es": "Este reloj está en el suelo"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
"fr": "Traversée",
|
"fr": "Traversée",
|
||||||
"ca": "Encreuaments",
|
"ca": "Encreuaments",
|
||||||
"da": "Overgange",
|
"da": "Overgange",
|
||||||
"es": "Pasos",
|
"es": "Cruces",
|
||||||
"pa_PK": "کراسنگاں",
|
"pa_PK": "کراسنگاں",
|
||||||
"cs": "Přechody"
|
"cs": "Přechody"
|
||||||
},
|
},
|
||||||
|
@ -17,7 +17,7 @@
|
||||||
"de": "Übergänge für Fußgänger und Radfahrer",
|
"de": "Übergänge für Fußgänger und Radfahrer",
|
||||||
"fr": "Traversée pour piétons et cyclistes",
|
"fr": "Traversée pour piétons et cyclistes",
|
||||||
"da": "Overgange for fodgængere og cyklister",
|
"da": "Overgange for fodgængere og cyklister",
|
||||||
"es": "Pasos para peatones y ciclistas",
|
"es": "Cruces para peatones y ciclistas",
|
||||||
"ca": "Creuaments per a vianants i ciclistes",
|
"ca": "Creuaments per a vianants i ciclistes",
|
||||||
"cs": "Přechody pro chodce a cyklisty"
|
"cs": "Přechody pro chodce a cyklisty"
|
||||||
},
|
},
|
||||||
|
@ -194,7 +194,7 @@
|
||||||
"en": "Crossing with traffic signals",
|
"en": "Crossing with traffic signals",
|
||||||
"nl": "Oversteekplaats met verkeerslichten",
|
"nl": "Oversteekplaats met verkeerslichten",
|
||||||
"de": "Kreuzungen mit Ampeln",
|
"de": "Kreuzungen mit Ampeln",
|
||||||
"es": "Cruce con semáforo",
|
"es": "Cruce con semáforos",
|
||||||
"fr": "Passage piéton avec des feux de signalisation",
|
"fr": "Passage piéton avec des feux de signalisation",
|
||||||
"ca": "Creuament amb semàfors",
|
"ca": "Creuament amb semàfors",
|
||||||
"cs": "Přechod se světelnou signalizací"
|
"cs": "Přechod se světelnou signalizací"
|
||||||
|
@ -207,7 +207,7 @@
|
||||||
"nl": "Zebrapad",
|
"nl": "Zebrapad",
|
||||||
"de": "Zebrastreifen",
|
"de": "Zebrastreifen",
|
||||||
"ca": "Pas de zebra",
|
"ca": "Pas de zebra",
|
||||||
"es": "Paso de cebra",
|
"es": "Paso de peatones",
|
||||||
"fr": "Passage piéton",
|
"fr": "Passage piéton",
|
||||||
"cs": "Zebra přechod"
|
"cs": "Zebra přechod"
|
||||||
},
|
},
|
||||||
|
@ -219,7 +219,7 @@
|
||||||
"en": "Crossing without crossing markings",
|
"en": "Crossing without crossing markings",
|
||||||
"nl": "Oversteekplaats zonder kruispuntmarkeringen",
|
"nl": "Oversteekplaats zonder kruispuntmarkeringen",
|
||||||
"de": "Kreuzung ohne Kreuzungsmarkierungen",
|
"de": "Kreuzung ohne Kreuzungsmarkierungen",
|
||||||
"es": "Cruce sin señalizar",
|
"es": "Cruce sin marcas de cruce",
|
||||||
"fr": "Passage piéton sans marquages",
|
"fr": "Passage piéton sans marquages",
|
||||||
"ca": "Creuament sense senyalitzar",
|
"ca": "Creuament sense senyalitzar",
|
||||||
"cs": "Přechod bez označení přechodu"
|
"cs": "Přechod bez označení přechodu"
|
||||||
|
@ -406,7 +406,7 @@
|
||||||
"nl": "Is deze oversteekplaats ook voor fietsers",
|
"nl": "Is deze oversteekplaats ook voor fietsers",
|
||||||
"de": "Können Radfahrer diese Kreuzung nutzen?",
|
"de": "Können Radfahrer diese Kreuzung nutzen?",
|
||||||
"da": "Er denne overgang også for cykler?",
|
"da": "Er denne overgang også for cykler?",
|
||||||
"es": "¿Este cruce también es para ciclistas?",
|
"es": "¿Este cruce también es para bicicletas?",
|
||||||
"ca": "Aquest creuament també és per a ciclistes?",
|
"ca": "Aquest creuament també és per a ciclistes?",
|
||||||
"fr": "Est-ce que ce passage est également pour les vélos ?",
|
"fr": "Est-ce que ce passage est également pour les vélos ?",
|
||||||
"cs": "Je tento přechod i pro kola?"
|
"cs": "Je tento přechod i pro kola?"
|
||||||
|
@ -420,7 +420,7 @@
|
||||||
"nl": "Een fietser kan deze oversteekplaats gebruiken",
|
"nl": "Een fietser kan deze oversteekplaats gebruiken",
|
||||||
"de": "Radfahrer können diese Kreuzung nutzen",
|
"de": "Radfahrer können diese Kreuzung nutzen",
|
||||||
"da": "En cyklist kan benytte denne overgang",
|
"da": "En cyklist kan benytte denne overgang",
|
||||||
"es": "Un ciclista puede utilizar este cruce",
|
"es": "Un ciclista puede usar este cruce",
|
||||||
"ca": "Un ciclista pot utilitzar aquest creuament",
|
"ca": "Un ciclista pot utilitzar aquest creuament",
|
||||||
"fr": "Un cycliste peut utiliser ce passage",
|
"fr": "Un cycliste peut utiliser ce passage",
|
||||||
"cs": "Cyklista může tento přechod využít"
|
"cs": "Cyklista může tento přechod využít"
|
||||||
|
@ -433,7 +433,7 @@
|
||||||
"nl": "Een fietser kan deze oversteekplaats niet gebruiken",
|
"nl": "Een fietser kan deze oversteekplaats niet gebruiken",
|
||||||
"de": "Radfahrer können diese Kreuzung nicht nutzen",
|
"de": "Radfahrer können diese Kreuzung nicht nutzen",
|
||||||
"da": "En cyklist kan ikke benytte denne overgang",
|
"da": "En cyklist kan ikke benytte denne overgang",
|
||||||
"es": "Un ciclista no puede utilizar este cruce",
|
"es": "Un ciclista no puede usar este cruce",
|
||||||
"ca": "Un ciclista no pot utilitzar aquest creuament",
|
"ca": "Un ciclista no pot utilitzar aquest creuament",
|
||||||
"fr": "Un cycliste ne peut pas utiliser ce passage",
|
"fr": "Un cycliste ne peut pas utiliser ce passage",
|
||||||
"cs": "Cyklista nemůže tento přechod použít"
|
"cs": "Cyklista nemůže tento přechod použít"
|
||||||
|
@ -447,7 +447,7 @@
|
||||||
"en": "Does this crossing have an island in the middle?",
|
"en": "Does this crossing have an island in the middle?",
|
||||||
"nl": "Heeft deze oversteekplaats een verkeerseiland in het midden?",
|
"nl": "Heeft deze oversteekplaats een verkeerseiland in het midden?",
|
||||||
"de": "Gibt es an diesem Übergang eine Verkehrsinsel?",
|
"de": "Gibt es an diesem Übergang eine Verkehrsinsel?",
|
||||||
"es": "¿Tiene una isla en el medio este cruce?",
|
"es": "¿Este cruce tiene una isla en el medio?",
|
||||||
"fr": "Est-ce que ce passage a un refuge au milieu ?",
|
"fr": "Est-ce que ce passage a un refuge au milieu ?",
|
||||||
"ca": "Aquest creuament té una illa al mig?",
|
"ca": "Aquest creuament té una illa al mig?",
|
||||||
"cs": "Má tento přechod uprostřed ostrůvek?"
|
"cs": "Má tento přechod uprostřed ostrůvek?"
|
||||||
|
@ -486,7 +486,7 @@
|
||||||
"en": "Does this crossing have tactile paving?",
|
"en": "Does this crossing have tactile paving?",
|
||||||
"nl": "Heeft deze oversteekplaats een geleidelijn?",
|
"nl": "Heeft deze oversteekplaats een geleidelijn?",
|
||||||
"de": "Gibt es an dieser Kreuzung ein Blindenleitsystem?",
|
"de": "Gibt es an dieser Kreuzung ein Blindenleitsystem?",
|
||||||
"es": "¿Este cruce tiene pavimento podotáctil?",
|
"es": "¿Este cruce tiene pavimento táctil?",
|
||||||
"fr": "Est-ce que ce passage piéton a une surface podotactile ?",
|
"fr": "Est-ce que ce passage piéton a une surface podotactile ?",
|
||||||
"ca": "Aquest creuament té superfície podotàctil?",
|
"ca": "Aquest creuament té superfície podotàctil?",
|
||||||
"cs": "Má tento přechod hmatovou dlažbu?"
|
"cs": "Má tento přechod hmatovou dlažbu?"
|
||||||
|
@ -499,7 +499,7 @@
|
||||||
"en": "This crossing has tactile paving",
|
"en": "This crossing has tactile paving",
|
||||||
"nl": "Deze oversteekplaats heeft een geleidelijn",
|
"nl": "Deze oversteekplaats heeft een geleidelijn",
|
||||||
"de": "An dieser Kreuzung gibt es ein Blindenleitsystem",
|
"de": "An dieser Kreuzung gibt es ein Blindenleitsystem",
|
||||||
"es": "Este cruce tiene superficie podotáctil",
|
"es": "Este cruce tiene pavimento táctil",
|
||||||
"fr": "Ce passage piéton a une surface podotactile",
|
"fr": "Ce passage piéton a une surface podotactile",
|
||||||
"ca": "Este creuament té superfície podotàctil",
|
"ca": "Este creuament té superfície podotàctil",
|
||||||
"cs": "Tento přechod má hmatovou dlažbu"
|
"cs": "Tento přechod má hmatovou dlažbu"
|
||||||
|
@ -511,7 +511,7 @@
|
||||||
"en": "This crossing does not have tactile paving",
|
"en": "This crossing does not have tactile paving",
|
||||||
"nl": "Deze oversteekplaats heeft geen geleidelijn",
|
"nl": "Deze oversteekplaats heeft geen geleidelijn",
|
||||||
"de": "Diese Kreuzung hat kein Blindenleitsystem",
|
"de": "Diese Kreuzung hat kein Blindenleitsystem",
|
||||||
"es": "Este cruce no tiene superficie podotáctil",
|
"es": "Este cruce no tiene pavimento táctil",
|
||||||
"fr": "Ce passage piéton n'a pas de surface podotactile",
|
"fr": "Ce passage piéton n'a pas de surface podotactile",
|
||||||
"ca": "Este creuament no té superfície podotàctil",
|
"ca": "Este creuament no té superfície podotàctil",
|
||||||
"cs": "Tento přechod nemá hmatovou dlažbu"
|
"cs": "Tento přechod nemá hmatovou dlažbu"
|
||||||
|
@ -523,7 +523,7 @@
|
||||||
"en": "This crossing has tactile paving, but is not correct",
|
"en": "This crossing has tactile paving, but is not correct",
|
||||||
"nl": "Deze oversteekplaats heeft een geleidelijn, die incorrect is.",
|
"nl": "Deze oversteekplaats heeft een geleidelijn, die incorrect is.",
|
||||||
"de": "Diese Kreuzung hat taktile Pflasterung, ist aber nicht korrekt",
|
"de": "Diese Kreuzung hat taktile Pflasterung, ist aber nicht korrekt",
|
||||||
"es": "Este cruce tiene superficie podotáctil, pero no correctamente",
|
"es": "Este cruce tiene pavimento táctil, pero no es correcto",
|
||||||
"fr": "Ce passage piéton a une surface podotactile, mais elle n'est pas adéquate",
|
"fr": "Ce passage piéton a une surface podotactile, mais elle n'est pas adéquate",
|
||||||
"ca": "Este creuament té superfície podotàctil, però no correctament",
|
"ca": "Este creuament té superfície podotàctil, però no correctament",
|
||||||
"cs": "Tento přechod má hmatovou dlažbu, ale ne správně"
|
"cs": "Tento přechod má hmatovou dlažbu, ale ne správně"
|
||||||
|
@ -538,7 +538,7 @@
|
||||||
"en": "Does this traffic light have a button to request green light?",
|
"en": "Does this traffic light have a button to request green light?",
|
||||||
"nl": "Heeft dit verkeerslicht een knop voor groen licht?",
|
"nl": "Heeft dit verkeerslicht een knop voor groen licht?",
|
||||||
"de": "Hat diese Ampel eine Taste, um ein grünes Signal anzufordern?",
|
"de": "Hat diese Ampel eine Taste, um ein grünes Signal anzufordern?",
|
||||||
"es": "¿Este semáforo tiene un botón para pedir luz verde?",
|
"es": "¿Este semáforo tiene un botón para solicitar luz verde?",
|
||||||
"ca": "Aquest semàfor té un botó per a demanar la llum verda?",
|
"ca": "Aquest semàfor té un botó per a demanar la llum verda?",
|
||||||
"fr": "Est-ce que ce feu a un bouton pour demander le passage au vert ?",
|
"fr": "Est-ce que ce feu a un bouton pour demander le passage au vert ?",
|
||||||
"cs": "Má tento semafor tlačítko pro vyžádání zeleného světla?"
|
"cs": "Má tento semafor tlačítko pro vyžádání zeleného světla?"
|
||||||
|
@ -556,7 +556,7 @@
|
||||||
"en": "This traffic light has a button to request green light",
|
"en": "This traffic light has a button to request green light",
|
||||||
"nl": "Dit verkeerslicht heeft een knop voor groen licht",
|
"nl": "Dit verkeerslicht heeft een knop voor groen licht",
|
||||||
"de": "Diese Ampel hat eine Taste, um ein grünes Signal anzufordern",
|
"de": "Diese Ampel hat eine Taste, um ein grünes Signal anzufordern",
|
||||||
"es": "Este semáforo tiene un botón para pedir luz verde",
|
"es": "Este semáforo tiene un botón para solicitar luz verde",
|
||||||
"ca": "Aquest semàfor té un botó per a demanar la llum verda",
|
"ca": "Aquest semàfor té un botó per a demanar la llum verda",
|
||||||
"fr": "Ce feu a un bouton pour demander le vert",
|
"fr": "Ce feu a un bouton pour demander le vert",
|
||||||
"cs": "Tento semafor má tlačítko pro vyžádání zeleného světla"
|
"cs": "Tento semafor má tlačítko pro vyžádání zeleného světla"
|
||||||
|
@ -568,7 +568,7 @@
|
||||||
"en": "This traffic light does not have a button to request green light",
|
"en": "This traffic light does not have a button to request green light",
|
||||||
"nl": "Dit verkeerlicht heeft geen knop voor groen licht",
|
"nl": "Dit verkeerlicht heeft geen knop voor groen licht",
|
||||||
"de": "Diese Ampel hat keine Taste, um ein grünes Signal anzufordern",
|
"de": "Diese Ampel hat keine Taste, um ein grünes Signal anzufordern",
|
||||||
"es": "Este semáforo no tiene un botón para pedir luz verde",
|
"es": "Este semáforo no tiene un botón para solicitar luz verde",
|
||||||
"ca": "Aquest semàfor no té un botó per a demanar la llum verda",
|
"ca": "Aquest semàfor no té un botó per a demanar la llum verda",
|
||||||
"fr": "Ce feu n'a pas de bouton pour demander le vert",
|
"fr": "Ce feu n'a pas de bouton pour demander le vert",
|
||||||
"cs": "Tento semafor nemá tlačítko pro vyžádání zeleného světla"
|
"cs": "Tento semafor nemá tlačítko pro vyžádání zeleného světla"
|
||||||
|
@ -584,7 +584,8 @@
|
||||||
"fr": "Est-ce que le feu de signalisation a une signalisation sonore pour aider à traverser ?",
|
"fr": "Est-ce que le feu de signalisation a une signalisation sonore pour aider à traverser ?",
|
||||||
"nl": "Heeft dit verkeerslicht geluidssignalen om te helpen bij het oversteken?",
|
"nl": "Heeft dit verkeerslicht geluidssignalen om te helpen bij het oversteken?",
|
||||||
"ca": "Aquest semàfor té senyals sonors per facilitar el pas?",
|
"ca": "Aquest semàfor té senyals sonors per facilitar el pas?",
|
||||||
"cs": "Má tento semafor zvukové signály pro usnadnění přecházení?"
|
"cs": "Má tento semafor zvukové signály pro usnadnění přecházení?",
|
||||||
|
"es": "¿Este semáforo tiene señales sonoras para ayudar a cruzar?"
|
||||||
},
|
},
|
||||||
"condition": "crossing=traffic_signals",
|
"condition": "crossing=traffic_signals",
|
||||||
"mappings": [
|
"mappings": [
|
||||||
|
@ -596,7 +597,8 @@
|
||||||
"fr": "Ce feu de signalisation a une alarme sonore pour aider à traverser, à la fois pour trouver le passage piéton, et pour traverser.",
|
"fr": "Ce feu de signalisation a une alarme sonore pour aider à traverser, à la fois pour trouver le passage piéton, et pour traverser.",
|
||||||
"nl": "Dit verkeerslicht heeft geluidssignalen om te helpen bij het oversteken, zowel voor het vinden van de oversteekplaats als voor het oversteken.",
|
"nl": "Dit verkeerslicht heeft geluidssignalen om te helpen bij het oversteken, zowel voor het vinden van de oversteekplaats als voor het oversteken.",
|
||||||
"ca": "Aquest semàfor disposa de senyals sonors per ajudar a creuar, tant per trobar l'encreuament com per creuar.",
|
"ca": "Aquest semàfor disposa de senyals sonors per ajudar a creuar, tant per trobar l'encreuament com per creuar.",
|
||||||
"cs": "Tento semafor je vybaven zvukovými signály pro usnadnění přecházení, a to jak pro vyhledání přechodu, tak pro přecházení."
|
"cs": "Tento semafor je vybaven zvukovými signály pro usnadnění přecházení, a to jak pro vyhledání přechodu, tak pro přecházení.",
|
||||||
|
"es": "Este semáforo tiene señales sonoras para ayudar a cruzar, tanto para encontrar el cruce como para cruzar"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -607,7 +609,8 @@
|
||||||
"fr": "Ce feu de signalisation n'a pas de signal sonore pour aider à traverser.",
|
"fr": "Ce feu de signalisation n'a pas de signal sonore pour aider à traverser.",
|
||||||
"nl": "Dit verkeerslicht heeft geen geluidssignalen om te helpen bij het oversteken.",
|
"nl": "Dit verkeerslicht heeft geen geluidssignalen om te helpen bij het oversteken.",
|
||||||
"ca": "Aquest semàfor no té senyals sonores per ajudar a creuar.",
|
"ca": "Aquest semàfor no té senyals sonores per ajudar a creuar.",
|
||||||
"cs": "Tento semafor není vybaven zvukovými signály pro usnadnění přecházení."
|
"cs": "Tento semafor není vybaven zvukovými signály pro usnadnění přecházení.",
|
||||||
|
"es": "Este semáforo no tiene señales sonoras para ayudar a cruzar"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -618,7 +621,8 @@
|
||||||
"nl": "Dit verkeerslicht heeft een geluidssignaal om de paal te vinden, maar niet om aan te geven dat oversteken veilig kan.",
|
"nl": "Dit verkeerslicht heeft een geluidssignaal om de paal te vinden, maar niet om aan te geven dat oversteken veilig kan.",
|
||||||
"ca": "Aquest semàfor té un senyal sonor per ajudar a localitzar el pal, però cap senyal que indique que és segur creuar.",
|
"ca": "Aquest semàfor té un senyal sonor per ajudar a localitzar el pal, però cap senyal que indique que és segur creuar.",
|
||||||
"fr": "Ce feu a un signal sonore pour aider à situer les poteaux, mais pas de signal pour indiquer qu'on peut traverser en sécurité.",
|
"fr": "Ce feu a un signal sonore pour aider à situer les poteaux, mais pas de signal pour indiquer qu'on peut traverser en sécurité.",
|
||||||
"cs": "Tento semafor má zvukový signál, který pomáhá lokalizovat sloup, ale žádný signál, který by signalizoval, že je bezpečné přejít."
|
"cs": "Tento semafor má zvukový signál, který pomáhá lokalizovat sloup, ale žádný signál, který by signalizoval, že je bezpečné přejít.",
|
||||||
|
"es": "Este semáforo tiene una señal sonora para ayudar a localizar el poste, pero ninguna señal para indicar que es seguro cruzar"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -629,7 +633,8 @@
|
||||||
"nl": "Dit verkeerslicht heeft een geluidssignaal om aan te geven dat oversteken veilig kan, maar geen signaal om de paal te vinden.",
|
"nl": "Dit verkeerslicht heeft een geluidssignaal om aan te geven dat oversteken veilig kan, maar geen signaal om de paal te vinden.",
|
||||||
"ca": "Aquest semàfor té un senyal sonor per indicar que és segur creuar, però cap senyal que ajude a localitzar el pal.",
|
"ca": "Aquest semàfor té un senyal sonor per indicar que és segur creuar, però cap senyal que ajude a localitzar el pal.",
|
||||||
"fr": "Cet feu a un signal sonore pour indiquer qu'on peut traverser en sécurité, mais pas de signal pour localiser les poteaux.",
|
"fr": "Cet feu a un signal sonore pour indiquer qu'on peut traverser en sécurité, mais pas de signal pour localiser les poteaux.",
|
||||||
"cs": "Tento semafor má zvukový signál, který signalizuje, že je bezpečné přejít, ale nemá žádný signál, který by pomohl lokalizovat sloup."
|
"cs": "Tento semafor má zvukový signál, který signalizuje, že je bezpečné přejít, ale nemá žádný signál, který by pomohl lokalizovat sloup.",
|
||||||
|
"es": "Este semáforo tiene una señal sonora para indicar que es seguro cruzar, pero ninguna señal para ayudar a localizar el poste"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -643,7 +648,8 @@
|
||||||
"fr": "Est-ce que ce feu a un signal vibrant pour aider à traverser ? (habituellement situé sous le bouton)",
|
"fr": "Est-ce que ce feu a un signal vibrant pour aider à traverser ? (habituellement situé sous le bouton)",
|
||||||
"ca": "Aquest semàfor té senyals de vibració per facilitar el pas? (normalment es troba a la part inferior del botó d'encreuament)",
|
"ca": "Aquest semàfor té senyals de vibració per facilitar el pas? (normalment es troba a la part inferior del botó d'encreuament)",
|
||||||
"cs": "Má tento semafor vibrační signály pro usnadnění přecházení? (obvykle se nachází ve spodní části tlačítka pro přecházení)",
|
"cs": "Má tento semafor vibrační signály pro usnadnění přecházení? (obvykle se nachází ve spodní části tlačítka pro přecházení)",
|
||||||
"uk": "Чи має цей світлофор вібраційні сигнали для полегшення переходу? (зазвичай розташовані внизу кнопки переходу)"
|
"uk": "Чи має цей світлофор вібраційні сигнали для полегшення переходу? (зазвичай розташовані внизу кнопки переходу)",
|
||||||
|
"es": "¿Este semáforo tiene señales de vibración para ayudar a cruzar? (normalmente ubicado en la parte inferior del botón de cruce)"
|
||||||
},
|
},
|
||||||
"condition": {
|
"condition": {
|
||||||
"and": [
|
"and": [
|
||||||
|
@ -660,7 +666,8 @@
|
||||||
"nl": "De knop bij dit verkeerslicht trilt om aan te geven dat men veilig kan oversteken.",
|
"nl": "De knop bij dit verkeerslicht trilt om aan te geven dat men veilig kan oversteken.",
|
||||||
"fr": "Le bouton de ce feu vibre pour indiquer qu'on peut traverser en sécurité.",
|
"fr": "Le bouton de ce feu vibre pour indiquer qu'on peut traverser en sécurité.",
|
||||||
"ca": "El botó d'aquest semàfor té un senyal de vibració per indicar que és segur creuar.",
|
"ca": "El botó d'aquest semàfor té un senyal de vibració per indicar que és segur creuar.",
|
||||||
"cs": "Tlačítko tohoto semaforu má vibrační signál, který signalizuje, že je bezpečné přejít."
|
"cs": "Tlačítko tohoto semaforu má vibrační signál, který signalizuje, že je bezpečné přejít.",
|
||||||
|
"es": "El botón de este semáforo tiene una señal de vibración para indicar que es seguro cruzar"
|
||||||
},
|
},
|
||||||
"icon": {
|
"icon": {
|
||||||
"path": "./assets/layers/crossings/Vibrating_button_illustration.jpg",
|
"path": "./assets/layers/crossings/Vibrating_button_illustration.jpg",
|
||||||
|
@ -675,7 +682,8 @@
|
||||||
"nl": "De knop bij dit verkeerslicht kan <b>niet</b> trillen om aan te geven dat men veilig kan oversteken.",
|
"nl": "De knop bij dit verkeerslicht kan <b>niet</b> trillen om aan te geven dat men veilig kan oversteken.",
|
||||||
"fr": "Le bouton de ce feu ne vibre pas pour indiquer qu'on peut traverser en sécurité.",
|
"fr": "Le bouton de ce feu ne vibre pas pour indiquer qu'on peut traverser en sécurité.",
|
||||||
"ca": "El botó d'aquest semàfor no té cap senyal de vibració que indiqui que és segur creuar.",
|
"ca": "El botó d'aquest semàfor no té cap senyal de vibració que indiqui que és segur creuar.",
|
||||||
"cs": "Tlačítko tohoto semaforu nemá vibrační signál, který by signalizoval, že je bezpečné přejít."
|
"cs": "Tlačítko tohoto semaforu nemá vibrační signál, který by signalizoval, že je bezpečné přejít.",
|
||||||
|
"es": "El botón de este semáforo no tiene una señal de vibración para indicar que es seguro cruzar"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -686,7 +694,8 @@
|
||||||
"en": "Does this traffic light have an arrow pointing in the direction of crossing?",
|
"en": "Does this traffic light have an arrow pointing in the direction of crossing?",
|
||||||
"de": "Hat diese Ampel einen Pfeil, der in Richtung der Kreuzung zeigt?",
|
"de": "Hat diese Ampel einen Pfeil, der in Richtung der Kreuzung zeigt?",
|
||||||
"ca": "Aquest semàfor té una fletxa apuntant en la direcció del creuament?",
|
"ca": "Aquest semàfor té una fletxa apuntant en la direcció del creuament?",
|
||||||
"cs": "Má tento semafor šipku ve směru přecházení?"
|
"cs": "Má tento semafor šipku ve směru přecházení?",
|
||||||
|
"es": "¿Este semáforo tiene una flecha que apunta en la dirección del cruce?"
|
||||||
},
|
},
|
||||||
"condition": "crossing=traffic_signals",
|
"condition": "crossing=traffic_signals",
|
||||||
"mappings": [
|
"mappings": [
|
||||||
|
@ -696,7 +705,8 @@
|
||||||
"en": "This traffic light has an arrow pointing in the direction of crossing.",
|
"en": "This traffic light has an arrow pointing in the direction of crossing.",
|
||||||
"de": "Diese Ampel hat einen Pfeil, der in Richtung der Kreuzung zeigt.",
|
"de": "Diese Ampel hat einen Pfeil, der in Richtung der Kreuzung zeigt.",
|
||||||
"ca": "Aquest semàfor té una fletxa apuntant en la direcció del creuament.",
|
"ca": "Aquest semàfor té una fletxa apuntant en la direcció del creuament.",
|
||||||
"cs": "Tento semafor má šipku ukazující směr přecházení."
|
"cs": "Tento semafor má šipku ukazující směr přecházení.",
|
||||||
|
"es": "Este semáforo tiene una flecha que apunta en la dirección del cruce"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -705,7 +715,8 @@
|
||||||
"en": "This traffic light does <b>not</b> have an arrow pointing in the direction of crossing.",
|
"en": "This traffic light does <b>not</b> have an arrow pointing in the direction of crossing.",
|
||||||
"de": "Diese Ampel hat <b>keinen</b> Pfeil, der in Richtung der Kreuzung zeigt.",
|
"de": "Diese Ampel hat <b>keinen</b> Pfeil, der in Richtung der Kreuzung zeigt.",
|
||||||
"ca": "Aquest semàfor <b>no</b> té una fletxa apuntant en la direcció del creuament.",
|
"ca": "Aquest semàfor <b>no</b> té una fletxa apuntant en la direcció del creuament.",
|
||||||
"cs": "Na tomto semaforu <b>není</b> šipka ukazující směr přecházení."
|
"cs": "Na tomto semaforu <b>není</b> šipka ukazující směr přecházení.",
|
||||||
|
"es": "Este semáforo <b>no</b> tiene una flecha que apunta en la dirección del cruce"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -716,7 +727,8 @@
|
||||||
"en": "Does this traffic light have a tactile map showing the layout of the crossing?",
|
"en": "Does this traffic light have a tactile map showing the layout of the crossing?",
|
||||||
"de": "Hat die Ampel hat eine taktile Karte, die den Verlauf der Kreuzung zeigt?",
|
"de": "Hat die Ampel hat eine taktile Karte, die den Verlauf der Kreuzung zeigt?",
|
||||||
"ca": "Aquest semàfor disposa d'un mapa tàctil que mostra el traçat de l'encreuament?",
|
"ca": "Aquest semàfor disposa d'un mapa tàctil que mostra el traçat de l'encreuament?",
|
||||||
"cs": "Má tento semafor hmatovou mapu s uspořádáním přechodu?"
|
"cs": "Má tento semafor hmatovou mapu s uspořádáním přechodu?",
|
||||||
|
"es": "¿Este semáforo tiene un mapa táctil que muestra el diseño del cruce?"
|
||||||
},
|
},
|
||||||
"condition": "crossing=traffic_signals",
|
"condition": "crossing=traffic_signals",
|
||||||
"mappings": [
|
"mappings": [
|
||||||
|
@ -727,7 +739,8 @@
|
||||||
"de": "Die Ampel hat eine taktile Karte, die den Verlauf der Kreuzung zeigt.",
|
"de": "Die Ampel hat eine taktile Karte, die den Verlauf der Kreuzung zeigt.",
|
||||||
"nl": "Dit verkeerlicht heeft een voelkaart die de indeling van de oversteekplaats laat zien.",
|
"nl": "Dit verkeerlicht heeft een voelkaart die de indeling van de oversteekplaats laat zien.",
|
||||||
"ca": "Aquest semàfor disposa d'un mapa tàctil que mostra el traçat de l'encreuament.",
|
"ca": "Aquest semàfor disposa d'un mapa tàctil que mostra el traçat de l'encreuament.",
|
||||||
"cs": "Tento semafor má hmatovou mapu zobrazující uspořádání přechodu."
|
"cs": "Tento semafor má hmatovou mapu zobrazující uspořádání přechodu.",
|
||||||
|
"es": "Este semáforo tiene un mapa táctil que muestra el diseño del cruce"
|
||||||
},
|
},
|
||||||
"icon": {
|
"icon": {
|
||||||
"path": "./assets/layers/crossings/180px-Trairvoja_mapeto.jpg",
|
"path": "./assets/layers/crossings/180px-Trairvoja_mapeto.jpg",
|
||||||
|
@ -741,7 +754,8 @@
|
||||||
"de": "Die Ampel hat <b>keine</b> taktile Karte, die den Verlauf der Kreuzung zeigt.",
|
"de": "Die Ampel hat <b>keine</b> taktile Karte, die den Verlauf der Kreuzung zeigt.",
|
||||||
"nl": "Dit verkeerlicht heeft <b>geen</b> voelkaart die de indeling van de oversteekplaats laat zien.",
|
"nl": "Dit verkeerlicht heeft <b>geen</b> voelkaart die de indeling van de oversteekplaats laat zien.",
|
||||||
"ca": "Aquest semàfor <b>no</b> disposa d'un mapa tàctil que mostra el traçat del pas.",
|
"ca": "Aquest semàfor <b>no</b> disposa d'un mapa tàctil que mostra el traçat del pas.",
|
||||||
"cs": "Tento semafor <b>nemá</b> hmatovou mapu zobrazující rozložení přechodu."
|
"cs": "Tento semafor <b>nemá</b> hmatovou mapu zobrazující rozložení přechodu.",
|
||||||
|
"es": "Este semáforo <b>no</b> tiene un mapa táctil que muestra el diseño del cruce"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -752,7 +766,7 @@
|
||||||
"en": "Can a cyclist turn right when the light is red?",
|
"en": "Can a cyclist turn right when the light is red?",
|
||||||
"nl": "Mag een fietser rechtsaf slaan als het licht rood is?",
|
"nl": "Mag een fietser rechtsaf slaan als het licht rood is?",
|
||||||
"de": "Dürfen Radfahrer bei roter Ampel rechts abbiegen?",
|
"de": "Dürfen Radfahrer bei roter Ampel rechts abbiegen?",
|
||||||
"es": "¿Puede girar a la derecha un ciclista cuando la luz está roja?",
|
"es": "¿Puede un ciclista girar a la derecha cuando la luz está roja?",
|
||||||
"fr": "Un cycliste peut-il tourner à droite quand le feu est rouge ?",
|
"fr": "Un cycliste peut-il tourner à droite quand le feu est rouge ?",
|
||||||
"ca": "Un ciclista pot girar a la dreta si el semàfor està en roig?",
|
"ca": "Un ciclista pot girar a la dreta si el semàfor està en roig?",
|
||||||
"cs": "Může cyklista odbočit doprava, když svítí červená?"
|
"cs": "Může cyklista odbočit doprava, když svítí červená?"
|
||||||
|
@ -809,7 +823,7 @@
|
||||||
"en": "Can a cyclist go straight on when the light is red?",
|
"en": "Can a cyclist go straight on when the light is red?",
|
||||||
"nl": "Mag een fietser rechtdoor gaan als het licht rood is?",
|
"nl": "Mag een fietser rechtdoor gaan als het licht rood is?",
|
||||||
"de": "Dürfen Radfahrer bei roter Ampel geradeaus fahren?",
|
"de": "Dürfen Radfahrer bei roter Ampel geradeaus fahren?",
|
||||||
"es": "¿Puede ir de frente un ciclista cuando la luz está roja?",
|
"es": "¿Puede un ciclista seguir recto cuando la luz está roja?",
|
||||||
"fr": "Est-ce qu'un cycliste peut aller tout droit quand le feu est rouge ?",
|
"fr": "Est-ce qu'un cycliste peut aller tout droit quand le feu est rouge ?",
|
||||||
"ca": "Un ciclista pot seguir recte si el semàfor està en roig?",
|
"ca": "Un ciclista pot seguir recte si el semàfor està en roig?",
|
||||||
"cs": "Může cyklista jet rovně, když svítí červená?"
|
"cs": "Může cyklista jet rovně, když svítí červená?"
|
||||||
|
@ -822,7 +836,7 @@
|
||||||
"en": "A cyclist can go straight on if the light is red",
|
"en": "A cyclist can go straight on if the light is red",
|
||||||
"nl": "Een fietser mag wel rechtdoor gaan als het licht rood is",
|
"nl": "Een fietser mag wel rechtdoor gaan als het licht rood is",
|
||||||
"de": "Ein Radfahrer kann bei roter Ampel geradeaus fahren",
|
"de": "Ein Radfahrer kann bei roter Ampel geradeaus fahren",
|
||||||
"es": "Un ciclista puede ir de frente si la luz está roja",
|
"es": "Un ciclista puede seguir recto si la luz está roja",
|
||||||
"ca": "Un ciclista pot seguir recte si el semàfor està en roig",
|
"ca": "Un ciclista pot seguir recte si el semàfor està en roig",
|
||||||
"cs": "Cyklista může jet rovně, pokud svítí červená"
|
"cs": "Cyklista může jet rovně, pokud svítí červená"
|
||||||
},
|
},
|
||||||
|
@ -838,7 +852,7 @@
|
||||||
"en": "A cyclist can go straight on if the light is red",
|
"en": "A cyclist can go straight on if the light is red",
|
||||||
"nl": "Een fietser mag wel rechtdoor gaan als het licht rood is",
|
"nl": "Een fietser mag wel rechtdoor gaan als het licht rood is",
|
||||||
"de": "Radfahrer dürfen bei roter Ampel geradeaus fahren",
|
"de": "Radfahrer dürfen bei roter Ampel geradeaus fahren",
|
||||||
"es": "Un ciclista puede ir de frente si la luz está roja",
|
"es": "Un ciclista puede seguir recto si la luz está roja",
|
||||||
"ca": "Un ciclista pot seguir recte si el semàfor està en roig",
|
"ca": "Un ciclista pot seguir recte si el semàfor està en roig",
|
||||||
"cs": "Cyklista může jet rovně, pokud svítí červená"
|
"cs": "Cyklista může jet rovně, pokud svítí červená"
|
||||||
},
|
},
|
||||||
|
@ -850,7 +864,7 @@
|
||||||
"en": "A cyclist can not go straight on if the light is red",
|
"en": "A cyclist can not go straight on if the light is red",
|
||||||
"nl": "Een fietser mag niet rechtdoor gaan als het licht rood is",
|
"nl": "Een fietser mag niet rechtdoor gaan als het licht rood is",
|
||||||
"de": "Radfahrer dürfen bei roter Ampel nicht geradeaus fahren",
|
"de": "Radfahrer dürfen bei roter Ampel nicht geradeaus fahren",
|
||||||
"es": "Un ciclista no puede ir de frente si la luz está roja",
|
"es": "Un ciclista no puede seguir recto si la luz está roja",
|
||||||
"ca": "Un ciclista no pot seguir recte si el semàfor està en roig",
|
"ca": "Un ciclista no pot seguir recte si el semàfor està en roig",
|
||||||
"cs": "Cyklista nemůže jet rovně, pokud svítí červená"
|
"cs": "Cyklista nemůže jet rovně, pokud svítí červená"
|
||||||
}
|
}
|
||||||
|
|
|
@ -470,7 +470,7 @@
|
||||||
"en": "Italian restaurant (which serves more than pasta and pizza)",
|
"en": "Italian restaurant (which serves more than pasta and pizza)",
|
||||||
"nl": "Italiaans restaurant (dat meer dan enkel pasta of pizza verkoopt)",
|
"nl": "Italiaans restaurant (dat meer dan enkel pasta of pizza verkoopt)",
|
||||||
"de": "Dies ist ein italienisches Restaurant (das mehr als nur Pasta und Pizza serviert)",
|
"de": "Dies ist ein italienisches Restaurant (das mehr als nur Pasta und Pizza serviert)",
|
||||||
"es": "Restaurante italiano (que sirve más que pasta y pizza)",
|
"es": "Restaurante italiano (que sirve algo más que pasta y pizza)",
|
||||||
"fr": "C'est un Restaurant Italien (qui sert plus que des pâtes et des pizzas)",
|
"fr": "C'est un Restaurant Italien (qui sert plus que des pâtes et des pizzas)",
|
||||||
"ca": "Restaurant italià (que serveix més que pasta i pizza)",
|
"ca": "Restaurant italià (que serveix més que pasta i pizza)",
|
||||||
"cs": "Toto je italská restaurace (která nabízí více než těstoviny a pizzu)"
|
"cs": "Toto je italská restaurace (která nabízí více než těstoviny a pizzu)"
|
||||||
|
|
|
@ -291,7 +291,6 @@
|
||||||
"key": "memorial"
|
"key": "memorial"
|
||||||
},
|
},
|
||||||
"filter": true
|
"filter": true
|
||||||
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "inscription",
|
"id": "inscription",
|
||||||
|
|
|
@ -49,8 +49,19 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"keywords": {
|
"keywords": {
|
||||||
"en": ["post","post box","letter","letterbox"],
|
"en": [
|
||||||
"nl": ["brieven","post","brief","brievenbus","pakjes"]
|
"post",
|
||||||
|
"post box",
|
||||||
|
"letter",
|
||||||
|
"letterbox"
|
||||||
|
],
|
||||||
|
"nl": [
|
||||||
|
"brieven",
|
||||||
|
"post",
|
||||||
|
"brief",
|
||||||
|
"brievenbus",
|
||||||
|
"pakjes"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"pointRendering": [
|
"pointRendering": [
|
||||||
{
|
{
|
||||||
|
|
|
@ -30,7 +30,7 @@
|
||||||
"name": {
|
"name": {
|
||||||
"en": "Changeset centers",
|
"en": "Changeset centers",
|
||||||
"de": "Changeset-Zentren",
|
"de": "Changeset-Zentren",
|
||||||
"es": "Centro del conjunto de cambios"
|
"es": "Centros de conjuntos de cambios"
|
||||||
},
|
},
|
||||||
"minzoom": 0,
|
"minzoom": 0,
|
||||||
"source": {
|
"source": {
|
||||||
|
@ -86,7 +86,7 @@
|
||||||
"en": "What theme was used to make this change?",
|
"en": "What theme was used to make this change?",
|
||||||
"de": "Welches Thema wurde für diese Änderung verwendet?",
|
"de": "Welches Thema wurde für diese Änderung verwendet?",
|
||||||
"cs": "Jaký motiv byl použit k provedení této změny?",
|
"cs": "Jaký motiv byl použit k provedení této změny?",
|
||||||
"es": "¿Qué tema se utilizó para hacer este cambio?"
|
"es": "¿Qué tema se utilizó para realizar este cambio?"
|
||||||
},
|
},
|
||||||
"freeform": {
|
"freeform": {
|
||||||
"key": "theme"
|
"key": "theme"
|
||||||
|
@ -94,7 +94,7 @@
|
||||||
"render": {
|
"render": {
|
||||||
"en": "Change with theme <a href='https://mapcomplete.org/{theme}'>{theme}</a>",
|
"en": "Change with theme <a href='https://mapcomplete.org/{theme}'>{theme}</a>",
|
||||||
"de": "Änderung mit Thema <a href='https://mapcomplete.org/{theme}'>{theme}</a>",
|
"de": "Änderung mit Thema <a href='https://mapcomplete.org/{theme}'>{theme}</a>",
|
||||||
"es": "Cambiar con el tema <a href='https://mapcomplete.org/{theme}'>{theme}</a>"
|
"es": "Cambio con el tema <a href='https://mapcomplete.org/{theme}'>{theme}</a>"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -106,13 +106,13 @@
|
||||||
"en": "What locale (language) was this change made in?",
|
"en": "What locale (language) was this change made in?",
|
||||||
"de": "In welcher Sprache (Locale) wurde diese Änderung vorgenommen?",
|
"de": "In welcher Sprache (Locale) wurde diese Änderung vorgenommen?",
|
||||||
"cs": "V jakém prostředí (jazyce) byla tato změna provedena?",
|
"cs": "V jakém prostředí (jazyce) byla tato změna provedena?",
|
||||||
"es": "¿En qué idioma (ubicación) se realizó este cambio?"
|
"es": "¿En qué configuración regional (idioma) se realizó este cambio?"
|
||||||
},
|
},
|
||||||
"render": {
|
"render": {
|
||||||
"en": "User locale is {locale}",
|
"en": "User locale is {locale}",
|
||||||
"de": "Die Benutzersprache ist {locale}",
|
"de": "Die Benutzersprache ist {locale}",
|
||||||
"cs": "Uživatelské prostředí je {locale}",
|
"cs": "Uživatelské prostředí je {locale}",
|
||||||
"es": "La configuración local del usuario es {locale}"
|
"es": "Configuración regional del usuario es {locale}"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -121,13 +121,13 @@
|
||||||
"en": "Change with with <a href='{host}'>{host}</a>",
|
"en": "Change with with <a href='{host}'>{host}</a>",
|
||||||
"de": "Änderung mit <a href='{host}'>{host}</a>",
|
"de": "Änderung mit <a href='{host}'>{host}</a>",
|
||||||
"cs": "Změnit pomocí <a href='{host}'>{host}</a>",
|
"cs": "Změnit pomocí <a href='{host}'>{host}</a>",
|
||||||
"es": "Cambiado con <a href='{host}'>{host}</a>"
|
"es": "Cambio realizado con <a href='{host}'>{host}</a>"
|
||||||
},
|
},
|
||||||
"question": {
|
"question": {
|
||||||
"en": "What host (website) was this change made with?",
|
"en": "What host (website) was this change made with?",
|
||||||
"de": "Bei welchem Host (Website) wurde diese Änderung vorgenommen?",
|
"de": "Bei welchem Host (Website) wurde diese Änderung vorgenommen?",
|
||||||
"cs": "U jakého hostitele (webové stránky) byla tato změna provedena?",
|
"cs": "U jakého hostitele (webové stránky) byla tato změna provedena?",
|
||||||
"es": "¿Con qué host (página web) se hizo este cambio?"
|
"es": "¿Con qué anfitrión (sitio web) se realizó este cambio?"
|
||||||
},
|
},
|
||||||
"freeform": {
|
"freeform": {
|
||||||
"key": "host"
|
"key": "host"
|
||||||
|
@ -151,7 +151,7 @@
|
||||||
"en": "What version of MapComplete was used to make this change?",
|
"en": "What version of MapComplete was used to make this change?",
|
||||||
"de": "Welche Version von MapComplete wurde verwendet, um diese Änderung vorzunehmen?",
|
"de": "Welche Version von MapComplete wurde verwendet, um diese Änderung vorzunehmen?",
|
||||||
"cs": "Jaká verze aplikace MapComplete byla použita k provedení této změny?",
|
"cs": "Jaká verze aplikace MapComplete byla použita k provedení této změny?",
|
||||||
"es": "¿Qué versión de MapComplete se utilizó para hacer este cambio?"
|
"es": "¿Qué versión de MapComplete se utilizó para realizar este cambio?"
|
||||||
},
|
},
|
||||||
"render": {
|
"render": {
|
||||||
"en": "Made with {editor}",
|
"en": "Made with {editor}",
|
||||||
|
@ -557,7 +557,7 @@
|
||||||
"question": {
|
"question": {
|
||||||
"en": "Themename contains {search}",
|
"en": "Themename contains {search}",
|
||||||
"de": "Themenname enthält {search}",
|
"de": "Themenname enthält {search}",
|
||||||
"es": "El nombre contiene {search}",
|
"es": "El nombre del tema contiene {search}",
|
||||||
"pl": "Nazwa tematu zawiera {search}",
|
"pl": "Nazwa tematu zawiera {search}",
|
||||||
"cs": "Název obsahuje {search}"
|
"cs": "Název obsahuje {search}"
|
||||||
}
|
}
|
||||||
|
@ -615,7 +615,7 @@
|
||||||
"question": {
|
"question": {
|
||||||
"en": "<b>Not</b> made by contributor {search}",
|
"en": "<b>Not</b> made by contributor {search}",
|
||||||
"de": "<b>Nicht</b> erstellt von Mitwirkendem {search}",
|
"de": "<b>Nicht</b> erstellt von Mitwirkendem {search}",
|
||||||
"es": "<b>No</b> realizado por el colaborador {search}",
|
"es": "<b>No</b> hecho por el colaborador {search}",
|
||||||
"cs": "<b>Nevytvořeno</b> přispěvatelem {search}"
|
"cs": "<b>Nevytvořeno</b> přispěvatelem {search}"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -635,7 +635,7 @@
|
||||||
"question": {
|
"question": {
|
||||||
"en": "Made before {search}",
|
"en": "Made before {search}",
|
||||||
"de": "Erstellt vor {search}",
|
"de": "Erstellt vor {search}",
|
||||||
"es": "Realizado antes de {search}",
|
"es": "Hecho antes de {search}",
|
||||||
"cs": "Vytvořeno před {search}"
|
"cs": "Vytvořeno před {search}"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -655,7 +655,7 @@
|
||||||
"question": {
|
"question": {
|
||||||
"en": "Made after {search}",
|
"en": "Made after {search}",
|
||||||
"de": "Erstellt nach {search}",
|
"de": "Erstellt nach {search}",
|
||||||
"es": "Realizado después de {search}",
|
"es": "Hecho después de {search}",
|
||||||
"cs": "Vytvořeno po {search}"
|
"cs": "Vytvořeno po {search}"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -674,7 +674,7 @@
|
||||||
"question": {
|
"question": {
|
||||||
"en": "User language (iso-code) {search}",
|
"en": "User language (iso-code) {search}",
|
||||||
"de": "Benutzersprache (ISO-Code) {search}",
|
"de": "Benutzersprache (ISO-Code) {search}",
|
||||||
"es": "Idioma del usuario (código iso) {search}",
|
"es": "Idioma del usuario (código ISO) {search}",
|
||||||
"cs": "Jazyk uživatele (iso-kód) {search}"
|
"cs": "Jazyk uživatele (iso-kód) {search}"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -694,7 +694,7 @@
|
||||||
"en": "Made with host {search}",
|
"en": "Made with host {search}",
|
||||||
"de": "Erstellt mit Host {search}",
|
"de": "Erstellt mit Host {search}",
|
||||||
"cs": "Vytvořeno pomocí hostitele {search}",
|
"cs": "Vytvořeno pomocí hostitele {search}",
|
||||||
"es": "Hecho con host {search}"
|
"es": "Hecho con el anfitrión {search}"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -708,7 +708,7 @@
|
||||||
"en": "Changeset added at least one image",
|
"en": "Changeset added at least one image",
|
||||||
"de": "Changeset hat mindestens ein Bild hinzugefügt",
|
"de": "Changeset hat mindestens ein Bild hinzugefügt",
|
||||||
"cs": "Sada změn přidala alespoň jeden obrázek",
|
"cs": "Sada změn přidala alespoň jeden obrázek",
|
||||||
"es": "El conjunto de cambios ha añadido al menos una imagen"
|
"es": "El conjunto de cambios agregó al menos una imagen"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -722,7 +722,7 @@
|
||||||
"en": "Exclude GRB theme",
|
"en": "Exclude GRB theme",
|
||||||
"de": "GRB-Thema ausschließen",
|
"de": "GRB-Thema ausschließen",
|
||||||
"cs": "Vyloučit motiv GRB",
|
"cs": "Vyloučit motiv GRB",
|
||||||
"es": "Excluir tema GRB"
|
"es": "Excluir el tema GRB"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -735,7 +735,7 @@
|
||||||
"question": {
|
"question": {
|
||||||
"en": "Exclude etymology theme",
|
"en": "Exclude etymology theme",
|
||||||
"de": "Etymologie-Thema ausschließen",
|
"de": "Etymologie-Thema ausschließen",
|
||||||
"es": "Excluir el tema de la etimología",
|
"es": "Excluir el tema de etimología",
|
||||||
"cs": "Vyloučit etymologii tématu"
|
"cs": "Vyloučit etymologii tématu"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -754,7 +754,7 @@
|
||||||
"en": "More statistics can be found <a href='https://github.com/pietervdvn/MapComplete/tree/develop/Docs/Tools/graphs' target='_blank'>here</a>",
|
"en": "More statistics can be found <a href='https://github.com/pietervdvn/MapComplete/tree/develop/Docs/Tools/graphs' target='_blank'>here</a>",
|
||||||
"de": "Weitere Statistiken findest du <a href='https://github.com/pietervdvn/MapComplete/tree/develop/Docs/Tools/graphs' target='_blank'>hier</a>",
|
"de": "Weitere Statistiken findest du <a href='https://github.com/pietervdvn/MapComplete/tree/develop/Docs/Tools/graphs' target='_blank'>hier</a>",
|
||||||
"cs": "Další statistiky najdete <a href='https://github.com/pietervdvn/MapComplete/tree/develop/Docs/Tools/graphs' target='_blank'>zde</a>",
|
"cs": "Další statistiky najdete <a href='https://github.com/pietervdvn/MapComplete/tree/develop/Docs/Tools/graphs' target='_blank'>zde</a>",
|
||||||
"es": "Se pueden encontrar más estadísticas <a href='https://github.com/pietervdvn/MapComplete/tree/develop/Docs/Tools/graphs' target='_blank'>aquí</a>"
|
"es": "Puedes encontrar más estadísticas <a href='https://github.com/pietervdvn/MapComplete/tree/develop/Docs/Tools/graphs' target='_blank'>aquí</a>"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
|
@ -2866,17 +2866,6 @@
|
||||||
},
|
},
|
||||||
"question": "Má tento přechod uprostřed ostrůvek?"
|
"question": "Má tento přechod uprostřed ostrůvek?"
|
||||||
},
|
},
|
||||||
"crossing-is-zebra": {
|
|
||||||
"mappings": {
|
|
||||||
"0": {
|
|
||||||
"then": "Toto je zebra přechod"
|
|
||||||
},
|
|
||||||
"1": {
|
|
||||||
"then": "Tohle není zebra přechod"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"question": "Jedná se o zebra přechod?"
|
|
||||||
},
|
|
||||||
"crossing-minimap": {
|
"crossing-minimap": {
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"0": {
|
"0": {
|
||||||
|
|
|
@ -3410,17 +3410,6 @@
|
||||||
},
|
},
|
||||||
"question": "Gibt es an diesem Übergang eine Verkehrsinsel?"
|
"question": "Gibt es an diesem Übergang eine Verkehrsinsel?"
|
||||||
},
|
},
|
||||||
"crossing-is-zebra": {
|
|
||||||
"mappings": {
|
|
||||||
"0": {
|
|
||||||
"then": "Dies ist ein Zebrastreifen"
|
|
||||||
},
|
|
||||||
"1": {
|
|
||||||
"then": "Dies ist kein Zebrastreifen"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"question": "Ist das ein Zebrastreifen?"
|
|
||||||
},
|
|
||||||
"crossing-minimap": {
|
"crossing-minimap": {
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"0": {
|
"0": {
|
||||||
|
|
|
@ -1492,6 +1492,17 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tagRenderings": {
|
"tagRenderings": {
|
||||||
|
"automated": {
|
||||||
|
"mappings": {
|
||||||
|
"0": {
|
||||||
|
"then": "This is a manual bike washing station"
|
||||||
|
},
|
||||||
|
"1": {
|
||||||
|
"then": "This is an automated bike wash"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"question": "Is this bicycle cleaning service automated?"
|
||||||
|
},
|
||||||
"bike_cleaning-charge": {
|
"bike_cleaning-charge": {
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"0": {
|
"0": {
|
||||||
|
@ -1515,6 +1526,17 @@
|
||||||
},
|
},
|
||||||
"question": "How much does it cost to use the cleaning service?",
|
"question": "How much does it cost to use the cleaning service?",
|
||||||
"render": "Using the cleaning service costs {service:bicycle:cleaning:charge}"
|
"render": "Using the cleaning service costs {service:bicycle:cleaning:charge}"
|
||||||
|
},
|
||||||
|
"self_service": {
|
||||||
|
"mappings": {
|
||||||
|
"0": {
|
||||||
|
"then": "This cleaning service is self-service"
|
||||||
|
},
|
||||||
|
"1": {
|
||||||
|
"then": "This cleaning service is operated by an employee"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"question": "Is this cleaning service self-service?"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"title": {
|
"title": {
|
||||||
|
@ -3208,6 +3230,10 @@
|
||||||
"1": {
|
"1": {
|
||||||
"description": "A publicly visible clock mounted on a wall",
|
"description": "A publicly visible clock mounted on a wall",
|
||||||
"title": "a wall-mounted clock"
|
"title": "a wall-mounted clock"
|
||||||
|
},
|
||||||
|
"2": {
|
||||||
|
"description": "A publicly visible clock mounted directly on a wall",
|
||||||
|
"title": "a wall-mounted clock, mounted directly on a wall"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tagRenderings": {
|
"tagRenderings": {
|
||||||
|
@ -3288,6 +3314,19 @@
|
||||||
},
|
},
|
||||||
"question": "Does this clock also display the humidity?"
|
"question": "Does this clock also display the humidity?"
|
||||||
},
|
},
|
||||||
|
"indoor": {
|
||||||
|
"override": {
|
||||||
|
"mappings": {
|
||||||
|
"0": {
|
||||||
|
"then": "This clock is indoors"
|
||||||
|
},
|
||||||
|
"1": {
|
||||||
|
"then": "This clock is outdoors"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"question": "Is this clock indoors?"
|
||||||
|
}
|
||||||
|
},
|
||||||
"support": {
|
"support": {
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"0": {
|
"0": {
|
||||||
|
@ -3413,17 +3452,6 @@
|
||||||
},
|
},
|
||||||
"question": "Does this crossing have an island in the middle?"
|
"question": "Does this crossing have an island in the middle?"
|
||||||
},
|
},
|
||||||
"crossing-is-zebra": {
|
|
||||||
"mappings": {
|
|
||||||
"0": {
|
|
||||||
"then": "This is a zebra crossing"
|
|
||||||
},
|
|
||||||
"1": {
|
|
||||||
"then": "This is not a zebra crossing"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"question": "Is this is a zebra crossing?"
|
|
||||||
},
|
|
||||||
"crossing-minimap": {
|
"crossing-minimap": {
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"0": {
|
"0": {
|
||||||
|
@ -3507,6 +3535,57 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"question": "Does this traffic light have vibration signals to aid crossing? (usually located at the bottom of the crossing button)"
|
"question": "Does this traffic light have vibration signals to aid crossing? (usually located at the bottom of the crossing button)"
|
||||||
|
},
|
||||||
|
"markings": {
|
||||||
|
"mappings": {
|
||||||
|
"0": {
|
||||||
|
"then": "This crossing has no markings"
|
||||||
|
},
|
||||||
|
"1": {
|
||||||
|
"then": "This crossing has zebra markings"
|
||||||
|
},
|
||||||
|
"10": {
|
||||||
|
"then": "This crossing has zebra markings in alternating colours"
|
||||||
|
},
|
||||||
|
"11": {
|
||||||
|
"then": "This crossing has double zebra markings"
|
||||||
|
},
|
||||||
|
"12": {
|
||||||
|
"then": "This crossing has pictograms on the road"
|
||||||
|
},
|
||||||
|
"13": {
|
||||||
|
"then": "This crossing has lines on either side of the crossing, along with bars connecting them, with an interruption in every bar"
|
||||||
|
},
|
||||||
|
"14": {
|
||||||
|
"then": "This crossing has double lines on either side of the crossing"
|
||||||
|
},
|
||||||
|
"2": {
|
||||||
|
"then": "This crossing has markings of an unknown type"
|
||||||
|
},
|
||||||
|
"3": {
|
||||||
|
"then": "This crossings has lines on either side of the crossing"
|
||||||
|
},
|
||||||
|
"4": {
|
||||||
|
"then": "This crossing has lines on either side of the crossing, along with bars connecting them"
|
||||||
|
},
|
||||||
|
"5": {
|
||||||
|
"then": "This crossing has dashed lines on either sides of the crossing"
|
||||||
|
},
|
||||||
|
"6": {
|
||||||
|
"then": "This crossing has dotted lines on either sides of the crossing"
|
||||||
|
},
|
||||||
|
"7": {
|
||||||
|
"then": "This crossing is marked by using a different coloured surface"
|
||||||
|
},
|
||||||
|
"8": {
|
||||||
|
"then": "This crossing has lines on either side of the crossing, along with angled bars connecting them"
|
||||||
|
},
|
||||||
|
"9": {
|
||||||
|
"then": "This crossing has zebra markings with an interruption in every bar"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"question": "What kind of markings does this crossing have?",
|
||||||
|
"render": "This crossing has {crossing:markings} markings"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"title": {
|
"title": {
|
||||||
|
@ -3922,6 +4001,57 @@
|
||||||
"render": "Way"
|
"render": "Way"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"cyclist_waiting_aid": {
|
||||||
|
"description": "Various pieces of infrastructure that aid cyclists while they wait at a traffic light.",
|
||||||
|
"name": "Cyclist Waiting Aids",
|
||||||
|
"presets": {
|
||||||
|
"0": {
|
||||||
|
"description": "A footrest, handrail or other aid, to improve comfort while waiting at traffic lights",
|
||||||
|
"title": "a cyclist waiting aid"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tagRenderings": {
|
||||||
|
"direction": {
|
||||||
|
"mappings": {
|
||||||
|
"0": {
|
||||||
|
"then": "This waiting aid can be used when going forward on this way"
|
||||||
|
},
|
||||||
|
"1": {
|
||||||
|
"then": "This waiting aid can be used when going backward on this way"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"render": "This waiting aid can be used when going in {direction} direction"
|
||||||
|
},
|
||||||
|
"side": {
|
||||||
|
"mappings": {
|
||||||
|
"0": {
|
||||||
|
"then": "This waiting aid is located on the left side"
|
||||||
|
},
|
||||||
|
"1": {
|
||||||
|
"then": "This waiting aid is located on the right side"
|
||||||
|
},
|
||||||
|
"2": {
|
||||||
|
"then": "There are waiting aids on both sides of the road"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"question": "On what side of the road is this located?"
|
||||||
|
},
|
||||||
|
"type": {
|
||||||
|
"mappings": {
|
||||||
|
"0": {
|
||||||
|
"then": "There is a board or peg to rest your foot on here"
|
||||||
|
},
|
||||||
|
"1": {
|
||||||
|
"then": "There is a rail or a handle to hold on to here"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"question": "What kind of components does this waiting aid have?"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"title": {
|
||||||
|
"render": "Cyclist Waiting Aid"
|
||||||
|
}
|
||||||
|
},
|
||||||
"defibrillator": {
|
"defibrillator": {
|
||||||
"description": "A layer showing defibrillators which can be used in case of emergency. This contains public defibrillators, but also defibrillators which might need staff to fetch the actual device",
|
"description": "A layer showing defibrillators which can be used in case of emergency. This contains public defibrillators, but also defibrillators which might need staff to fetch the actual device",
|
||||||
"name": "Defibrillators",
|
"name": "Defibrillators",
|
||||||
|
@ -7905,6 +8035,15 @@
|
||||||
"presets": {
|
"presets": {
|
||||||
"0": {
|
"0": {
|
||||||
"title": "a postbox"
|
"title": "a postbox"
|
||||||
|
},
|
||||||
|
"1": {
|
||||||
|
"title": "a postbox on a wall"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tagRenderings": {
|
||||||
|
"operator": {
|
||||||
|
"question": "Who operates this postbox?",
|
||||||
|
"render": "This postbox is operated by <b>{operator}</b>"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"title": {
|
"title": {
|
||||||
|
@ -8400,6 +8539,17 @@
|
||||||
},
|
},
|
||||||
"question": "Does this shop have a gluten free offering?"
|
"question": "Does this shop have a gluten free offering?"
|
||||||
},
|
},
|
||||||
|
"indoor": {
|
||||||
|
"mappings": {
|
||||||
|
"0": {
|
||||||
|
"then": "This object is located indoors"
|
||||||
|
},
|
||||||
|
"1": {
|
||||||
|
"then": "This object is located outdoors"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"question": "Is this object located indoors?"
|
||||||
|
},
|
||||||
"induction-loop": {
|
"induction-loop": {
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"0": {
|
"0": {
|
||||||
|
@ -10490,6 +10640,133 @@
|
||||||
"render": "Surveillance Camera"
|
"render": "Surveillance Camera"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"tactile_map": {
|
||||||
|
"description": "Layer showing tactile maps, which can be used by visually impaired people to navigate the city.",
|
||||||
|
"name": "Tactile Maps",
|
||||||
|
"presets": {
|
||||||
|
"0": {
|
||||||
|
"description": "A tactile map that can be read using touch. Unlike a tactile model, this is relatively flat and does not feature three-dimensional buildings and such.",
|
||||||
|
"title": "a tactile map"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tagRenderings": {
|
||||||
|
"braille": {
|
||||||
|
"mappings": {
|
||||||
|
"0": {
|
||||||
|
"then": "This tactile map has braille text."
|
||||||
|
},
|
||||||
|
"1": {
|
||||||
|
"then": "This tactile map does not have braille text."
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"question": "Is there braille text on this tactile map?"
|
||||||
|
},
|
||||||
|
"braille_languages": {
|
||||||
|
"render": {
|
||||||
|
"special": {
|
||||||
|
"question": "In which languages is the braille text on this tactile map?",
|
||||||
|
"render_list_item": "This map has braille text in {language}",
|
||||||
|
"render_single_language": "This map has braille text in {language}"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"description": {
|
||||||
|
"freeform": {
|
||||||
|
"placeholder": "e.g. Tactile map of the city center"
|
||||||
|
},
|
||||||
|
"question": "What does this tactile map show?",
|
||||||
|
"render": "Description: {blind:description:en}."
|
||||||
|
},
|
||||||
|
"embossed_letters": {
|
||||||
|
"mappings": {
|
||||||
|
"0": {
|
||||||
|
"then": "This tactile map has embossed letters."
|
||||||
|
},
|
||||||
|
"1": {
|
||||||
|
"then": "This tactile map does not have embossed letters."
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"question": "Are there embossed letters on this tactile map?"
|
||||||
|
},
|
||||||
|
"embossed_letters_languages": {
|
||||||
|
"render": {
|
||||||
|
"special": {
|
||||||
|
"question": "In which languages are the embossed letters on this tactile map?",
|
||||||
|
"render_list_item": "This map has embossed letters in {language}",
|
||||||
|
"render_single_language": "This map has embossed letters in {language}"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"title": "Tactile Map"
|
||||||
|
},
|
||||||
|
"tactile_model": {
|
||||||
|
"description": "Layer showing tactile models, three-dimensional models of the surrounding area.",
|
||||||
|
"name": "Tactile Models",
|
||||||
|
"presets": {
|
||||||
|
"0": {
|
||||||
|
"description": "A tactile model is a three-dimensional model of an area, allowing people to explore/see an area by touch.",
|
||||||
|
"title": "a tactile model"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tagRenderings": {
|
||||||
|
"braille": {
|
||||||
|
"mappings": {
|
||||||
|
"0": {
|
||||||
|
"then": "There is a braille description."
|
||||||
|
},
|
||||||
|
"1": {
|
||||||
|
"then": "There is no braille description."
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"question": "Is there a braille description?"
|
||||||
|
},
|
||||||
|
"braille_languages": {
|
||||||
|
"render": {
|
||||||
|
"special": {
|
||||||
|
"question": "In which languages is there a braille description?",
|
||||||
|
"render_list_item": "This model has a braille description in {language()}",
|
||||||
|
"render_single_language": "This model has a braille description in {language}"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"description": {
|
||||||
|
"freeform": {
|
||||||
|
"placeholder": "e.g. Tactile model of the city center"
|
||||||
|
},
|
||||||
|
"question": "What does this tactile model show?",
|
||||||
|
"render": "Description: {blind:description:en}."
|
||||||
|
},
|
||||||
|
"embossed_letters": {
|
||||||
|
"mappings": {
|
||||||
|
"0": {
|
||||||
|
"then": "There are embossed letters describing the model."
|
||||||
|
},
|
||||||
|
"1": {
|
||||||
|
"then": "There are no embossed letters describing the model."
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"question": "Are there embossed letters describing the model?"
|
||||||
|
},
|
||||||
|
"embossed_letters_languages": {
|
||||||
|
"render": {
|
||||||
|
"special": {
|
||||||
|
"question": "In which languages are there embossed letters?",
|
||||||
|
"render_list_item": "This model has embossed letters in {language()}",
|
||||||
|
"render_single_language": "This model has embossed letters in {language}"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"scale": {
|
||||||
|
"freeform": {
|
||||||
|
"placeholder": "e.g. 1:1000"
|
||||||
|
},
|
||||||
|
"question": "What scale is the model?",
|
||||||
|
"render": "The scale of this model is {scale}."
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"title": "Tactile Model"
|
||||||
|
},
|
||||||
"tertiary_education": {
|
"tertiary_education": {
|
||||||
"name": "Colleges and universities",
|
"name": "Colleges and universities",
|
||||||
"presets": {
|
"presets": {
|
||||||
|
|
|
@ -3301,6 +3301,9 @@
|
||||||
},
|
},
|
||||||
"3": {
|
"3": {
|
||||||
"then": "Este reloj está en el suelo"
|
"then": "Este reloj está en el suelo"
|
||||||
|
},
|
||||||
|
"4": {
|
||||||
|
"then": "Este reloj está en el suelo"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"question": "¿De qué manera está montado el reloj?"
|
"question": "¿De qué manera está montado el reloj?"
|
||||||
|
@ -3410,17 +3413,6 @@
|
||||||
},
|
},
|
||||||
"question": "¿Este cruce tiene una isla en el medio?"
|
"question": "¿Este cruce tiene una isla en el medio?"
|
||||||
},
|
},
|
||||||
"crossing-is-zebra": {
|
|
||||||
"mappings": {
|
|
||||||
"0": {
|
|
||||||
"then": "Este es un paso de peatones"
|
|
||||||
},
|
|
||||||
"1": {
|
|
||||||
"then": "Este no es un paso de peatones"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"question": "¿Es este un paso de peatones?"
|
|
||||||
},
|
|
||||||
"crossing-minimap": {
|
"crossing-minimap": {
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"0": {
|
"0": {
|
||||||
|
|
|
@ -2364,17 +2364,6 @@
|
||||||
},
|
},
|
||||||
"question": "Est-ce que ce passage a un refuge au milieu ?"
|
"question": "Est-ce que ce passage a un refuge au milieu ?"
|
||||||
},
|
},
|
||||||
"crossing-is-zebra": {
|
|
||||||
"mappings": {
|
|
||||||
"0": {
|
|
||||||
"then": "C'est un passage piéton"
|
|
||||||
},
|
|
||||||
"1": {
|
|
||||||
"then": "Ce n'est pas un passage piéton"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"question": "Est-ce un passage piéton ?"
|
|
||||||
},
|
|
||||||
"crossing-right-turn-through-red": {
|
"crossing-right-turn-through-red": {
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"0": {
|
"0": {
|
||||||
|
|
|
@ -994,6 +994,17 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tagRenderings": {
|
"tagRenderings": {
|
||||||
|
"automated": {
|
||||||
|
"mappings": {
|
||||||
|
"0": {
|
||||||
|
"then": "Dit is een handmatig fietsschoonmaakpunt"
|
||||||
|
},
|
||||||
|
"1": {
|
||||||
|
"then": "Dit is een automatisch fietsschoonmaakpunt"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"question": "Is dit fietsschoonmaakpunt geautomatiseerd?"
|
||||||
|
},
|
||||||
"bike_cleaning-charge": {
|
"bike_cleaning-charge": {
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"0": {
|
"0": {
|
||||||
|
@ -1017,6 +1028,17 @@
|
||||||
},
|
},
|
||||||
"question": "Hoeveel kost het gebruik van het fietsschoonmaakpunt?",
|
"question": "Hoeveel kost het gebruik van het fietsschoonmaakpunt?",
|
||||||
"render": "Het gebruik van het fietsschoonmaakpunt kost {service:bicycle:cleaning:charge}"
|
"render": "Het gebruik van het fietsschoonmaakpunt kost {service:bicycle:cleaning:charge}"
|
||||||
|
},
|
||||||
|
"self_service": {
|
||||||
|
"mappings": {
|
||||||
|
"0": {
|
||||||
|
"then": "Dit fietsschoonmaakpunt is zelfbediening"
|
||||||
|
},
|
||||||
|
"1": {
|
||||||
|
"then": "Dit fietsschoonmaakpunt wordt bediend door aanwezig personeel"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"question": "Is dit fietsschoonmaakpunt zelfbediening?"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"title": {
|
"title": {
|
||||||
|
@ -2662,6 +2684,10 @@
|
||||||
"1": {
|
"1": {
|
||||||
"description": "Een publiekelijk zichtbare klok aan een muur",
|
"description": "Een publiekelijk zichtbare klok aan een muur",
|
||||||
"title": "een klok aan een muur"
|
"title": "een klok aan een muur"
|
||||||
|
},
|
||||||
|
"2": {
|
||||||
|
"description": "Een publiekelijk zichtbare klok rechtstreeks bevestigd aan een muur",
|
||||||
|
"title": "een klok aan een muur, rechtstreeks bevestigd aan een muur"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tagRenderings": {
|
"tagRenderings": {
|
||||||
|
@ -2742,6 +2768,19 @@
|
||||||
},
|
},
|
||||||
"question": "Toont deze klok ook de luchtvochtigheid?"
|
"question": "Toont deze klok ook de luchtvochtigheid?"
|
||||||
},
|
},
|
||||||
|
"indoor": {
|
||||||
|
"override": {
|
||||||
|
"mappings": {
|
||||||
|
"0": {
|
||||||
|
"then": "Deze klok is binnen"
|
||||||
|
},
|
||||||
|
"1": {
|
||||||
|
"then": "Deze klok is buiten"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"question": "Is deze klok binnen?"
|
||||||
|
}
|
||||||
|
},
|
||||||
"support": {
|
"support": {
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"0": {
|
"0": {
|
||||||
|
@ -2856,17 +2895,6 @@
|
||||||
},
|
},
|
||||||
"question": "Heeft deze oversteekplaats een verkeerseiland in het midden?"
|
"question": "Heeft deze oversteekplaats een verkeerseiland in het midden?"
|
||||||
},
|
},
|
||||||
"crossing-is-zebra": {
|
|
||||||
"mappings": {
|
|
||||||
"0": {
|
|
||||||
"then": "Dit is een zebrapad"
|
|
||||||
},
|
|
||||||
"1": {
|
|
||||||
"then": "Dit is geen zebrapad"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"question": "Is dit een zebrapad?"
|
|
||||||
},
|
|
||||||
"crossing-minimap": {
|
"crossing-minimap": {
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"0": {
|
"0": {
|
||||||
|
@ -2949,6 +2977,57 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"question": "Heeft dit verkeerslicht een element dat trilt om te helpen bij het oversteken? (meestal onderaan de oversteekknop geplaatst)"
|
"question": "Heeft dit verkeerslicht een element dat trilt om te helpen bij het oversteken? (meestal onderaan de oversteekknop geplaatst)"
|
||||||
|
},
|
||||||
|
"markings": {
|
||||||
|
"mappings": {
|
||||||
|
"0": {
|
||||||
|
"then": "Deze oversteekplaats heeft geen markeringen"
|
||||||
|
},
|
||||||
|
"1": {
|
||||||
|
"then": "Deze oversteekplaats heeft een zebramarkering"
|
||||||
|
},
|
||||||
|
"10": {
|
||||||
|
"then": "Deze oversteekplaats heeft een zebramarkering in afwisselende kleuren"
|
||||||
|
},
|
||||||
|
"11": {
|
||||||
|
"then": "Deze oversteekplaats heeft een dubbele zebramarkering"
|
||||||
|
},
|
||||||
|
"12": {
|
||||||
|
"then": "Deze oversteekplaats heeft pictogrammen op de weg"
|
||||||
|
},
|
||||||
|
"13": {
|
||||||
|
"then": "Deze oversteekplaats heeft lijnen aan beide kanten van de oversteekplaats, met strepen die ze verbinden, met een onderbreking van elke streep"
|
||||||
|
},
|
||||||
|
"14": {
|
||||||
|
"then": "Deze oversteekplaats heeft dubbele lijnen aan beide kanten van de oversteekplaats"
|
||||||
|
},
|
||||||
|
"2": {
|
||||||
|
"then": "Deze oversteekplaats heeft markeringen van een onbekend type"
|
||||||
|
},
|
||||||
|
"3": {
|
||||||
|
"then": "Deze oversteekplaats heeft lijnen aan beide kanten van de oversteekplaats"
|
||||||
|
},
|
||||||
|
"4": {
|
||||||
|
"then": "Deze oversteekplaats heeft lijnen aan beide kanten van de oversteekplaats, met strepen die ze verbinden"
|
||||||
|
},
|
||||||
|
"5": {
|
||||||
|
"then": "Deze oversteekplaats heeft onderbroken lijnen aan beide kanten van de oversteekplaats"
|
||||||
|
},
|
||||||
|
"6": {
|
||||||
|
"then": "Deze oversteekplaats heeft stippellijnen aan beide kanten van de oversteekplaats"
|
||||||
|
},
|
||||||
|
"7": {
|
||||||
|
"then": "Deze oversteekplaats is gemarkeerd door een anders gekleurd wegdek"
|
||||||
|
},
|
||||||
|
"8": {
|
||||||
|
"then": "Deze oversteekplaats heeft lijnen aan beide kanten van de oversteekplaats, met schuine strepen die ze verbinden"
|
||||||
|
},
|
||||||
|
"9": {
|
||||||
|
"then": "Deze oversteekplaats heeft zebramarkeringen met een onderbreking van elke streep"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"question": "Wat voor markering heeft deze oversteekplaats?",
|
||||||
|
"render": "Deze oversteekplaats heeft {crossing:markings} markeringen"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"title": {
|
"title": {
|
||||||
|
@ -6305,6 +6384,9 @@
|
||||||
"presets": {
|
"presets": {
|
||||||
"0": {
|
"0": {
|
||||||
"title": "een brievenbus"
|
"title": "een brievenbus"
|
||||||
|
},
|
||||||
|
"1": {
|
||||||
|
"title": "een brievenbus tegen een muur"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"title": {
|
"title": {
|
||||||
|
@ -6692,6 +6774,17 @@
|
||||||
"editButtonAriaLabel": "Pas emailadres aan",
|
"editButtonAriaLabel": "Pas emailadres aan",
|
||||||
"question": "Wat is het e-mailadres van {title()}?"
|
"question": "Wat is het e-mailadres van {title()}?"
|
||||||
},
|
},
|
||||||
|
"indoor": {
|
||||||
|
"mappings": {
|
||||||
|
"0": {
|
||||||
|
"then": "Dit object bevindt zich binnen"
|
||||||
|
},
|
||||||
|
"1": {
|
||||||
|
"then": "Dit object bevindt zich buiten"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"question": "Bevindt dit object zich binnen?"
|
||||||
|
},
|
||||||
"induction-loop": {
|
"induction-loop": {
|
||||||
"mappings": {
|
"mappings": {
|
||||||
"0": {
|
"0": {
|
||||||
|
|
|
@ -1398,13 +1398,6 @@
|
||||||
"render": "Zegar"
|
"render": "Zegar"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"crossings": {
|
|
||||||
"tagRenderings": {
|
|
||||||
"crossing-is-zebra": {
|
|
||||||
"question": "Czy to jest przejście dla pieszych typu \"zebra\"?"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"cycle_highways": {
|
"cycle_highways": {
|
||||||
"name": "ścieżki rowerowe",
|
"name": "ścieżki rowerowe",
|
||||||
"title": {
|
"title": {
|
||||||
|
|
|
@ -206,7 +206,7 @@ function main() {
|
||||||
if (layout.hideFromOverview) {
|
if (layout.hideFromOverview) {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
if(layout.id === "personal"){
|
if (layout.id === "personal") {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
files.push(generateTagInfoEntry(layout))
|
files.push(generateTagInfoEntry(layout))
|
||||||
|
|
|
@ -78,7 +78,7 @@ export default class AllImageProviders {
|
||||||
return undefined
|
return undefined
|
||||||
}
|
}
|
||||||
const id = tags?.data?.id
|
const id = tags?.data?.id
|
||||||
if(this._cachedImageStores[id]){
|
if (this._cachedImageStores[id]) {
|
||||||
return this._cachedImageStores[id]
|
return this._cachedImageStores[id]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -89,7 +89,7 @@ export default abstract class ImageProvider {
|
||||||
|
|
||||||
public abstract apiUrls(): string[]
|
public abstract apiUrls(): string[]
|
||||||
|
|
||||||
public static async offerImageAsDownload(image: ProvidedImage){
|
public static async offerImageAsDownload(image: ProvidedImage) {
|
||||||
const response = await fetch(image.url_hd ?? image.url)
|
const response = await fetch(image.url_hd ?? image.url)
|
||||||
const blob = await response.blob()
|
const blob = await response.blob()
|
||||||
Utils.offerContentsAsDownloadableFile(blob, new URL(image.url).pathname.split("/").at(-1), {
|
Utils.offerContentsAsDownloadableFile(blob, new URL(image.url).pathname.split("/").at(-1), {
|
||||||
|
|
|
@ -138,12 +138,19 @@ export default class PanoramaxImageProvider extends ImageProvider {
|
||||||
}
|
}
|
||||||
return data?.some(
|
return data?.some(
|
||||||
(img) =>
|
(img) =>
|
||||||
img?.status !== undefined && img?.status !== "ready" && img?.status !== "broken" && img?.status !== "hidden"
|
img?.status !== undefined &&
|
||||||
|
img?.status !== "ready" &&
|
||||||
|
img?.status !== "broken" &&
|
||||||
|
img?.status !== "hidden"
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
Stores.Chronic(1500, () => hasLoading(source.data)).addCallback((_) => {
|
Stores.Chronic(1500, () => hasLoading(source.data)).addCallback((_) => {
|
||||||
console.log("Testing panoramax URLS again as some were loading", source.data, hasLoading(source.data))
|
console.log(
|
||||||
|
"Testing panoramax URLS again as some were loading",
|
||||||
|
source.data,
|
||||||
|
hasLoading(source.data)
|
||||||
|
)
|
||||||
super.getRelevantUrlsFor(tags, prefixes).then((data) => {
|
super.getRelevantUrlsFor(tags, prefixes).then((data) => {
|
||||||
source.set(data)
|
source.set(data)
|
||||||
return !hasLoading(data)
|
return !hasLoading(data)
|
||||||
|
@ -170,12 +177,12 @@ export default class PanoramaxImageProvider extends ImageProvider {
|
||||||
return ["https://panoramax.mapcomplete.org", "https://panoramax.xyz"]
|
return ["https://panoramax.mapcomplete.org", "https://panoramax.xyz"]
|
||||||
}
|
}
|
||||||
|
|
||||||
public static getPanoramaxInstance (host: string){
|
public static getPanoramaxInstance(host: string) {
|
||||||
host = new URL(host).host
|
host = new URL(host).host
|
||||||
if(new URL(this.defaultPanoramax.host).host === host){
|
if (new URL(this.defaultPanoramax.host).host === host) {
|
||||||
return this.defaultPanoramax
|
return this.defaultPanoramax
|
||||||
}
|
}
|
||||||
if(new URL(this.xyz.host).host === host){
|
if (new URL(this.xyz.host).host === host) {
|
||||||
return this.xyz
|
return this.xyz
|
||||||
}
|
}
|
||||||
return new Panoramax(host)
|
return new Panoramax(host)
|
||||||
|
|
|
@ -1,14 +1,42 @@
|
||||||
import { Utils } from "../../Utils"
|
import { Utils } from "../../Utils"
|
||||||
/** This code is autogenerated - do not edit. Edit ./assets/layers/usersettings/usersettings.json instead */
|
/** This code is autogenerated - do not edit. Edit ./assets/layers/usersettings/usersettings.json instead */
|
||||||
export class ThemeMetaTagging {
|
export class ThemeMetaTagging {
|
||||||
public static readonly themeName = "usersettings"
|
public static readonly themeName = "usersettings"
|
||||||
|
|
||||||
public metaTaggging_for_usersettings(feat: {properties: Record<string, string>}) {
|
public metaTaggging_for_usersettings(feat: { properties: Record<string, string> }) {
|
||||||
Utils.AddLazyProperty(feat.properties, '_mastodon_candidate_md', () => feat.properties._description.match(/\[[^\]]*\]\((.*(mastodon|en.osm.town).*)\).*/)?.at(1) )
|
Utils.AddLazyProperty(feat.properties, "_mastodon_candidate_md", () =>
|
||||||
Utils.AddLazyProperty(feat.properties, '_d', () => feat.properties._description?.replace(/</g,'<')?.replace(/>/g,'>') ?? '' )
|
feat.properties._description
|
||||||
Utils.AddLazyProperty(feat.properties, '_mastodon_candidate_a', () => (feat => {const e = document.createElement('div');e.innerHTML = feat.properties._d;return Array.from(e.getElementsByTagName("a")).filter(a => a.href.match(/mastodon|en.osm.town/) !== null)[0]?.href }) (feat) )
|
.match(/\[[^\]]*\]\((.*(mastodon|en.osm.town).*)\).*/)
|
||||||
Utils.AddLazyProperty(feat.properties, '_mastodon_link', () => (feat => {const e = document.createElement('div');e.innerHTML = feat.properties._d;return Array.from(e.getElementsByTagName("a")).filter(a => a.getAttribute("rel")?.indexOf('me') >= 0)[0]?.href})(feat) )
|
?.at(1)
|
||||||
Utils.AddLazyProperty(feat.properties, '_mastodon_candidate', () => feat.properties._mastodon_candidate_md ?? feat.properties._mastodon_candidate_a )
|
)
|
||||||
feat.properties['__current_backgroun'] = 'initial_value'
|
Utils.AddLazyProperty(
|
||||||
}
|
feat.properties,
|
||||||
|
"_d",
|
||||||
|
() => feat.properties._description?.replace(/</g, "<")?.replace(/>/g, ">") ?? ""
|
||||||
|
)
|
||||||
|
Utils.AddLazyProperty(feat.properties, "_mastodon_candidate_a", () =>
|
||||||
|
((feat) => {
|
||||||
|
const e = document.createElement("div")
|
||||||
|
e.innerHTML = feat.properties._d
|
||||||
|
return Array.from(e.getElementsByTagName("a")).filter(
|
||||||
|
(a) => a.href.match(/mastodon|en.osm.town/) !== null
|
||||||
|
)[0]?.href
|
||||||
|
})(feat)
|
||||||
|
)
|
||||||
|
Utils.AddLazyProperty(feat.properties, "_mastodon_link", () =>
|
||||||
|
((feat) => {
|
||||||
|
const e = document.createElement("div")
|
||||||
|
e.innerHTML = feat.properties._d
|
||||||
|
return Array.from(e.getElementsByTagName("a")).filter(
|
||||||
|
(a) => a.getAttribute("rel")?.indexOf("me") >= 0
|
||||||
|
)[0]?.href
|
||||||
|
})(feat)
|
||||||
|
)
|
||||||
|
Utils.AddLazyProperty(
|
||||||
|
feat.properties,
|
||||||
|
"_mastodon_candidate",
|
||||||
|
() => feat.properties._mastodon_candidate_md ?? feat.properties._mastodon_candidate_a
|
||||||
|
)
|
||||||
|
feat.properties["__current_backgroun"] = "initial_value"
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -127,10 +127,9 @@ export class RegexTag extends TagsFilter {
|
||||||
return `${this.key}${invert}~${v}`
|
return `${this.key}${invert}~${v}`
|
||||||
}
|
}
|
||||||
return `${this.key}${invert}~i~${v}`
|
return `${this.key}${invert}~i~${v}`
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const key :string = RegexTag.source(this.key, false)
|
const key: string = RegexTag.source(this.key, false)
|
||||||
return `${key}${invert}~${caseInvariant ? "i~" : ""}~${v}`
|
return `${key}${invert}~${caseInvariant ? "i~" : ""}~${v}`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -102,12 +102,12 @@ export class TagUtils {
|
||||||
"~i~~": {
|
"~i~~": {
|
||||||
name: "Key and value should match a given regex; value is case-invariant",
|
name: "Key and value should match a given regex; value is case-invariant",
|
||||||
overpassSupport: true,
|
overpassSupport: true,
|
||||||
docs: "Similar to ~~, except that the value is case-invariant"
|
docs: "Similar to ~~, except that the value is case-invariant",
|
||||||
},
|
},
|
||||||
"!~i~~": {
|
"!~i~~": {
|
||||||
name: "Key and value should match a given regex; value is case-invariant",
|
name: "Key and value should match a given regex; value is case-invariant",
|
||||||
overpassSupport: true,
|
overpassSupport: true,
|
||||||
docs: "Similar to !~~, except that the value is case-invariant"
|
docs: "Similar to !~~, except that the value is case-invariant",
|
||||||
},
|
},
|
||||||
":=": {
|
":=": {
|
||||||
name: "Substitute `... {some_key} ...` and match `key`",
|
name: "Substitute `... {some_key} ...` and match `key`",
|
||||||
|
@ -802,7 +802,7 @@ export class TagUtils {
|
||||||
|
|
||||||
if (tag.indexOf("~~") >= 0 || tag.indexOf("~i~~") >= 0) {
|
if (tag.indexOf("~~") >= 0 || tag.indexOf("~i~~") >= 0) {
|
||||||
const caseInvariant = tag.indexOf("~i~~") >= 0
|
const caseInvariant = tag.indexOf("~i~~") >= 0
|
||||||
const split = Utils.SplitFirst(tag, caseInvariant ? "~i~~" : "~~")
|
const split = Utils.SplitFirst(tag, caseInvariant ? "~i~~" : "~~")
|
||||||
let keyRegex: RegExp
|
let keyRegex: RegExp
|
||||||
if (split[0] === "*") {
|
if (split[0] === "*") {
|
||||||
keyRegex = new RegExp(".+", "i")
|
keyRegex = new RegExp(".+", "i")
|
||||||
|
@ -813,7 +813,7 @@ export class TagUtils {
|
||||||
if (split[1] === "*") {
|
if (split[1] === "*") {
|
||||||
valueRegex = new RegExp(".+", "s")
|
valueRegex = new RegExp(".+", "s")
|
||||||
} else {
|
} else {
|
||||||
valueRegex = new RegExp("^(" + split[1] + ")$",caseInvariant ? "si": "s" )
|
valueRegex = new RegExp("^(" + split[1] + ")$", caseInvariant ? "si" : "s")
|
||||||
}
|
}
|
||||||
return new RegexTag(keyRegex, valueRegex)
|
return new RegexTag(keyRegex, valueRegex)
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,7 +9,7 @@ export class Stores {
|
||||||
const source = new UIEventSource<Date>(undefined)
|
const source = new UIEventSource<Date>(undefined)
|
||||||
|
|
||||||
function run() {
|
function run() {
|
||||||
if(asLong !== undefined && !asLong()){
|
if (asLong !== undefined && !asLong()) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
source.setData(new Date())
|
source.setData(new Date())
|
||||||
|
|
|
@ -42,7 +42,7 @@ export class LocalStorageSource {
|
||||||
}
|
}
|
||||||
const source = new UIEventSource<string>(saved ?? defaultValue, "localstorage:" + key)
|
const source = new UIEventSource<string>(saved ?? defaultValue, "localstorage:" + key)
|
||||||
|
|
||||||
if(!Utils.runningFromConsole){
|
if (!Utils.runningFromConsole) {
|
||||||
source.addCallback((data) => {
|
source.addCallback((data) => {
|
||||||
if (data === undefined || data === "" || data === null) {
|
if (data === undefined || data === "" || data === null) {
|
||||||
localStorage.removeItem(key)
|
localStorage.removeItem(key)
|
||||||
|
|
|
@ -36,7 +36,7 @@ export default class FilteredLayer {
|
||||||
constructor(
|
constructor(
|
||||||
layer: LayerConfig,
|
layer: LayerConfig,
|
||||||
appliedFilters?: ReadonlyMap<string, UIEventSource<undefined | number | string>>,
|
appliedFilters?: ReadonlyMap<string, UIEventSource<undefined | number | string>>,
|
||||||
isDisplayed?: UIEventSource<boolean>,
|
isDisplayed?: UIEventSource<boolean>
|
||||||
) {
|
) {
|
||||||
this.layerDef = layer
|
this.layerDef = layer
|
||||||
this.isDisplayed = isDisplayed ?? new UIEventSource(true)
|
this.isDisplayed = isDisplayed ?? new UIEventSource(true)
|
||||||
|
@ -82,25 +82,25 @@ export default class FilteredLayer {
|
||||||
layer: LayerConfig,
|
layer: LayerConfig,
|
||||||
context: string,
|
context: string,
|
||||||
osmConnection: OsmConnection,
|
osmConnection: OsmConnection,
|
||||||
enabledByDefault?: Store<boolean>,
|
enabledByDefault?: Store<boolean>
|
||||||
) {
|
) {
|
||||||
let isDisplayed: UIEventSource<boolean>
|
let isDisplayed: UIEventSource<boolean>
|
||||||
if (layer.syncSelection === "local") {
|
if (layer.syncSelection === "local") {
|
||||||
isDisplayed = LocalStorageSource.getParsed(
|
isDisplayed = LocalStorageSource.getParsed(
|
||||||
context + "-layer-" + layer.id + "-enabled",
|
context + "-layer-" + layer.id + "-enabled",
|
||||||
layer.shownByDefault,
|
layer.shownByDefault
|
||||||
)
|
)
|
||||||
} else if (layer.syncSelection === "theme-only") {
|
} else if (layer.syncSelection === "theme-only") {
|
||||||
isDisplayed = FilteredLayer.getPref(
|
isDisplayed = FilteredLayer.getPref(
|
||||||
osmConnection,
|
osmConnection,
|
||||||
context + "-layer-" + layer.id + "-enabled",
|
context + "-layer-" + layer.id + "-enabled",
|
||||||
layer,
|
layer
|
||||||
)
|
)
|
||||||
} else if (layer.syncSelection === "global") {
|
} else if (layer.syncSelection === "global") {
|
||||||
isDisplayed = FilteredLayer.getPref(
|
isDisplayed = FilteredLayer.getPref(
|
||||||
osmConnection,
|
osmConnection,
|
||||||
"layer-" + layer.id + "-enabled",
|
"layer-" + layer.id + "-enabled",
|
||||||
layer,
|
layer
|
||||||
)
|
)
|
||||||
} else {
|
} else {
|
||||||
let isShown = layer.shownByDefault
|
let isShown = layer.shownByDefault
|
||||||
|
@ -110,7 +110,7 @@ export default class FilteredLayer {
|
||||||
isDisplayed = QueryParameters.GetBooleanQueryParameter(
|
isDisplayed = QueryParameters.GetBooleanQueryParameter(
|
||||||
FilteredLayer.queryParameterKey(layer),
|
FilteredLayer.queryParameterKey(layer),
|
||||||
isShown,
|
isShown,
|
||||||
"Whether or not layer " + layer.id + " is shown",
|
"Whether or not layer " + layer.id + " is shown"
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -145,7 +145,7 @@ export default class FilteredLayer {
|
||||||
*/
|
*/
|
||||||
private static fieldsToTags(
|
private static fieldsToTags(
|
||||||
option: FilterConfigOption,
|
option: FilterConfigOption,
|
||||||
fieldstate: string | Record<string, string>,
|
fieldstate: string | Record<string, string>
|
||||||
): TagsFilter | undefined {
|
): TagsFilter | undefined {
|
||||||
let properties: Record<string, string>
|
let properties: Record<string, string>
|
||||||
if (typeof fieldstate === "string") {
|
if (typeof fieldstate === "string") {
|
||||||
|
@ -181,7 +181,7 @@ export default class FilteredLayer {
|
||||||
private static getPref(
|
private static getPref(
|
||||||
osmConnection: OsmConnection,
|
osmConnection: OsmConnection,
|
||||||
key: string,
|
key: string,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): UIEventSource<boolean> {
|
): UIEventSource<boolean> {
|
||||||
return osmConnection.GetPreference(key, layer.shownByDefault + "").sync(
|
return osmConnection.GetPreference(key, layer.shownByDefault + "").sync(
|
||||||
(v) => {
|
(v) => {
|
||||||
|
@ -196,7 +196,7 @@ export default class FilteredLayer {
|
||||||
return undefined
|
return undefined
|
||||||
}
|
}
|
||||||
return "" + b
|
return "" + b
|
||||||
},
|
}
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -7,7 +7,7 @@ export interface GlobalFilter {
|
||||||
/**
|
/**
|
||||||
* If set, this object will be shown instead of hidden, even if the layer is not displayed
|
* If set, this object will be shown instead of hidden, even if the layer is not displayed
|
||||||
*/
|
*/
|
||||||
forceShowOnMatch?: boolean,
|
forceShowOnMatch?: boolean
|
||||||
state: number | string | undefined
|
state: number | string | undefined
|
||||||
id: string
|
id: string
|
||||||
onNewPoint: {
|
onNewPoint: {
|
||||||
|
|
|
@ -141,7 +141,7 @@ class ExpandFilter extends DesugaringStep<LayerConfigJson> {
|
||||||
"Found a matching tagRendering to base a filter on, but this tagRendering does not contain any mappings"
|
"Found a matching tagRendering to base a filter on, but this tagRendering does not contain any mappings"
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
const qtr = (<QuestionableTagRenderingConfigJson>tr)
|
const qtr = <QuestionableTagRenderingConfigJson>tr
|
||||||
const options = qtr.mappings.map((mapping) => {
|
const options = qtr.mappings.map((mapping) => {
|
||||||
let icon: string = mapping.icon?.["path"] ?? mapping.icon
|
let icon: string = mapping.icon?.["path"] ?? mapping.icon
|
||||||
let emoji: string = undefined
|
let emoji: string = undefined
|
||||||
|
@ -149,12 +149,15 @@ class ExpandFilter extends DesugaringStep<LayerConfigJson> {
|
||||||
emoji = icon
|
emoji = icon
|
||||||
icon = undefined
|
icon = undefined
|
||||||
}
|
}
|
||||||
let osmTags = TagUtils.Tag( mapping.if)
|
let osmTags = TagUtils.Tag(mapping.if)
|
||||||
if(qtr.multiAnswer && osmTags instanceof Tag){
|
if (qtr.multiAnswer && osmTags instanceof Tag) {
|
||||||
osmTags = new RegexTag(osmTags.key, new RegExp("^(.+;)?"+osmTags.value+"(;.+)$","is"))
|
osmTags = new RegexTag(
|
||||||
|
osmTags.key,
|
||||||
|
new RegExp("^(.+;)?" + osmTags.value + "(;.+)$", "is")
|
||||||
|
)
|
||||||
}
|
}
|
||||||
if(mapping.alsoShowIf){
|
if (mapping.alsoShowIf) {
|
||||||
osmTags= new Or([osmTags, TagUtils.Tag(mapping.alsoShowIf)])
|
osmTags = new Or([osmTags, TagUtils.Tag(mapping.alsoShowIf)])
|
||||||
}
|
}
|
||||||
|
|
||||||
return <FilterConfigOptionJson>{
|
return <FilterConfigOptionJson>{
|
||||||
|
|
|
@ -58,7 +58,7 @@ export default class DeleteConfig {
|
||||||
} else if (json.omitDefaultDeleteReasons) {
|
} else if (json.omitDefaultDeleteReasons) {
|
||||||
const forbidden = <string[]>json.omitDefaultDeleteReasons
|
const forbidden = <string[]>json.omitDefaultDeleteReasons
|
||||||
deleteReasons = deleteReasons.filter(
|
deleteReasons = deleteReasons.filter(
|
||||||
(dl) => forbidden.indexOf(dl.changesetMessage) < 0,
|
(dl) => forbidden.indexOf(dl.changesetMessage) < 0
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
for (const defaultDeleteReason of deleteReasons) {
|
for (const defaultDeleteReason of deleteReasons) {
|
||||||
|
@ -90,7 +90,7 @@ export default class DeleteConfig {
|
||||||
if (json.softDeletionTags !== undefined) {
|
if (json.softDeletionTags !== undefined) {
|
||||||
this.softDeletionTags = TagUtils.Tag(
|
this.softDeletionTags = TagUtils.Tag(
|
||||||
json.softDeletionTags,
|
json.softDeletionTags,
|
||||||
`${context}.softDeletionTags`,
|
`${context}.softDeletionTags`
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -445,10 +445,13 @@ export default class ThemeViewState implements SpecialVisualizationState {
|
||||||
this.perLayer.forEach((fs, layerName) => {
|
this.perLayer.forEach((fs, layerName) => {
|
||||||
const doShowLayer = this.mapProperties.zoom.map(
|
const doShowLayer = this.mapProperties.zoom.map(
|
||||||
(z) => {
|
(z) => {
|
||||||
if ((fs.layer.isDisplayed?.data ?? true) && z >= (fs.layer.layerDef?.minzoom ?? 0)){
|
if (
|
||||||
|
(fs.layer.isDisplayed?.data ?? true) &&
|
||||||
|
z >= (fs.layer.layerDef?.minzoom ?? 0)
|
||||||
|
) {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
if(this.layerState.globalFilters.data.some(f => f.forceShowOnMatch)){
|
if (this.layerState.globalFilters.data.some((f) => f.forceShowOnMatch)) {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
return false
|
return false
|
||||||
|
@ -993,22 +996,26 @@ export default class ThemeViewState implements SpecialVisualizationState {
|
||||||
this.mapProperties.showScale.set(showScale)
|
this.mapProperties.showScale.set(showScale)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
this.layerState.filteredLayers
|
||||||
this.layerState.filteredLayers.get("favourite")?.isDisplayed?.addCallbackAndRunD(favouritesShown => {
|
.get("favourite")
|
||||||
const oldGlobal = this.layerState.globalFilters.data
|
?.isDisplayed?.addCallbackAndRunD((favouritesShown) => {
|
||||||
const key = "show-favourite"
|
const oldGlobal = this.layerState.globalFilters.data
|
||||||
if(favouritesShown){
|
const key = "show-favourite"
|
||||||
this.layerState.globalFilters.set([...oldGlobal, {
|
if (favouritesShown) {
|
||||||
forceShowOnMatch: true,
|
this.layerState.globalFilters.set([
|
||||||
id:key,
|
...oldGlobal,
|
||||||
osmTags: new Tag("_favourite","yes"),
|
{
|
||||||
state: 0,
|
forceShowOnMatch: true,
|
||||||
onNewPoint: undefined
|
id: key,
|
||||||
}])
|
osmTags: new Tag("_favourite", "yes"),
|
||||||
}else{
|
state: 0,
|
||||||
this.layerState.globalFilters.set(oldGlobal.filter(gl => gl.id !== key))
|
onNewPoint: undefined,
|
||||||
}
|
},
|
||||||
})
|
])
|
||||||
|
} else {
|
||||||
|
this.layerState.globalFilters.set(oldGlobal.filter((gl) => gl.id !== key))
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
new ThemeViewStateHashActor(this)
|
new ThemeViewStateHashActor(this)
|
||||||
new MetaTagging(this)
|
new MetaTagging(this)
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
/**
|
/**
|
||||||
* Default: 50
|
* Default: 50
|
||||||
*/
|
*/
|
||||||
export let zIndex : string = "z-50"
|
export let zIndex: string = "z-50"
|
||||||
|
|
||||||
const shared =
|
const shared =
|
||||||
"in-page normal-background dark:bg-gray-800 rounded-lg border-gray-200 dark:border-gray-700 border-gray-200 dark:border-gray-700 divide-gray-200 dark:divide-gray-700 shadow-md"
|
"in-page normal-background dark:bg-gray-800 rounded-lg border-gray-200 dark:border-gray-700 border-gray-200 dark:border-gray-700 divide-gray-200 dark:divide-gray-700 shadow-md"
|
||||||
|
@ -21,7 +21,7 @@
|
||||||
if (fullscreen) {
|
if (fullscreen) {
|
||||||
defaultClass = shared
|
defaultClass = shared
|
||||||
}
|
}
|
||||||
let dialogClass = "fixed top-0 start-0 end-0 h-modal inset-0 w-full p-4 flex "+zIndex
|
let dialogClass = "fixed top-0 start-0 end-0 h-modal inset-0 w-full p-4 flex " + zIndex
|
||||||
if (fullscreen) {
|
if (fullscreen) {
|
||||||
dialogClass += " h-full-child"
|
dialogClass += " h-full-child"
|
||||||
}
|
}
|
||||||
|
|
|
@ -47,7 +47,7 @@
|
||||||
{resource.resolved?.description}
|
{resource.resolved?.description}
|
||||||
{#if resource.languageCodes?.indexOf($language) >= 0}
|
{#if resource.languageCodes?.indexOf($language) >= 0}
|
||||||
<div class="thanks w-fit">
|
<div class="thanks w-fit">
|
||||||
<Tr t={availableTranslation}/>
|
<Tr t={availableTranslation} />
|
||||||
</div>
|
</div>
|
||||||
{/if}
|
{/if}
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -23,7 +23,14 @@
|
||||||
let isDisplayed: UIEventSource<boolean> = filteredLayer.isDisplayed
|
let isDisplayed: UIEventSource<boolean> = filteredLayer.isDisplayed
|
||||||
|
|
||||||
let isDebugging = state?.featureSwitches?.featureSwitchIsDebugging ?? new ImmutableStore(false)
|
let isDebugging = state?.featureSwitches?.featureSwitchIsDebugging ?? new ImmutableStore(false)
|
||||||
let showTags = state?.userRelatedState?.showTags?.map(s => (s === "yes" && state?.userRelatedState?.osmConnection?.userDetails?.data?.csCount >= Constants.userJourney.tagsVisibleAt) || s === "always" || s === "full")
|
let showTags = state?.userRelatedState?.showTags?.map(
|
||||||
|
(s) =>
|
||||||
|
(s === "yes" &&
|
||||||
|
state?.userRelatedState?.osmConnection?.userDetails?.data?.csCount >=
|
||||||
|
Constants.userJourney.tagsVisibleAt) ||
|
||||||
|
s === "always" ||
|
||||||
|
s === "full"
|
||||||
|
)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets a UIEventSource as boolean for the given option, to be used with a checkbox
|
* Gets a UIEventSource as boolean for the given option, to be used with a checkbox
|
||||||
|
@ -33,7 +40,7 @@
|
||||||
return state.sync(
|
return state.sync(
|
||||||
(f) => f === 0,
|
(f) => f === 0,
|
||||||
[],
|
[],
|
||||||
(b) => (b ? 0 : undefined),
|
(b) => (b ? 0 : undefined)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -72,7 +79,6 @@
|
||||||
<span class="subtle">
|
<span class="subtle">
|
||||||
{filter.options[0].osmTags.asHumanString()}
|
{filter.options[0].osmTags.asHumanString()}
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
</Checkbox>
|
</Checkbox>
|
||||||
{/if}
|
{/if}
|
||||||
|
|
||||||
|
@ -89,7 +95,7 @@
|
||||||
{/if}
|
{/if}
|
||||||
<Tr t={option.question} />
|
<Tr t={option.question} />
|
||||||
{#if $showTags && option.osmTags !== undefined}
|
{#if $showTags && option.osmTags !== undefined}
|
||||||
({option.osmTags.asHumanString()})
|
({option.osmTags.asHumanString()})
|
||||||
{/if}
|
{/if}
|
||||||
</option>
|
</option>
|
||||||
{/each}
|
{/each}
|
||||||
|
|
|
@ -37,12 +37,12 @@
|
||||||
if (!shown) {
|
if (!shown) {
|
||||||
previewedImage.set(undefined)
|
previewedImage.set(undefined)
|
||||||
}
|
}
|
||||||
}),
|
})
|
||||||
)
|
)
|
||||||
onDestroy(
|
onDestroy(
|
||||||
previewedImage.addCallbackAndRun((previewedImage) => {
|
previewedImage.addCallbackAndRun((previewedImage) => {
|
||||||
showBigPreview.set(previewedImage?.id === image.id)
|
showBigPreview.set(previewedImage?.id === image.id)
|
||||||
}),
|
})
|
||||||
)
|
)
|
||||||
|
|
||||||
function highlight(entered: boolean = true) {
|
function highlight(entered: boolean = true) {
|
||||||
|
@ -129,8 +129,6 @@
|
||||||
<MagnifyingGlassPlusIcon class="h-8 w-8 cursor-zoom-in pl-3 pb-3" color="white" />
|
<MagnifyingGlassPlusIcon class="h-8 w-8 cursor-zoom-in pl-3 pb-3" color="white" />
|
||||||
</div>
|
</div>
|
||||||
{/if}
|
{/if}
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="absolute bottom-0 left-0">
|
<div class="absolute bottom-0 left-0">
|
||||||
<ImageAttribution {image} {attributionFormat} />
|
<ImageAttribution {image} {attributionFormat} />
|
||||||
|
|
|
@ -23,11 +23,13 @@
|
||||||
export let state: SpecialVisualizationState
|
export let state: SpecialVisualizationState
|
||||||
export let tags: UIEventSource<Record<string, string>>
|
export let tags: UIEventSource<Record<string, string>>
|
||||||
let showDeleteDialog = new UIEventSource(false)
|
let showDeleteDialog = new UIEventSource(false)
|
||||||
onDestroy(showDeleteDialog.addCallbackAndRunD(shown => {
|
onDestroy(
|
||||||
if (shown) {
|
showDeleteDialog.addCallbackAndRunD((shown) => {
|
||||||
state.previewedImage.set(undefined)
|
if (shown) {
|
||||||
}
|
state.previewedImage.set(undefined)
|
||||||
}))
|
}
|
||||||
|
})
|
||||||
|
)
|
||||||
|
|
||||||
let reportReason = new UIEventSource<ReportReason>(REPORT_REASONS[0])
|
let reportReason = new UIEventSource<ReportReason>(REPORT_REASONS[0])
|
||||||
let reportFreeText = new UIEventSource<string>(undefined)
|
let reportFreeText = new UIEventSource<string>(undefined)
|
||||||
|
@ -58,12 +60,10 @@
|
||||||
|
|
||||||
async function unlink() {
|
async function unlink() {
|
||||||
await state?.changes?.applyAction(
|
await state?.changes?.applyAction(
|
||||||
new ChangeTagAction(tags.data.id,
|
new ChangeTagAction(tags.data.id, new Tag(image.key, ""), tags.data, {
|
||||||
new Tag(image.key, ""),
|
changeType: "delete-image",
|
||||||
tags.data, {
|
theme: state.theme.id,
|
||||||
changeType: "delete-image",
|
})
|
||||||
theme: state.theme.id,
|
|
||||||
}),
|
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -72,23 +72,21 @@
|
||||||
const placeholder = t.placeholder.current
|
const placeholder = t.placeholder.current
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
<Popup shown={showDeleteDialog}>
|
<Popup shown={showDeleteDialog}>
|
||||||
<Tr slot="header" t={tu.title} />
|
<Tr slot="header" t={tu.title} />
|
||||||
|
|
||||||
<div class="flex flex-col sm:flex-row gap-x-4">
|
<div class="flex flex-col gap-x-4 sm:flex-row">
|
||||||
<img class="w-32 sm:w-64" src={image.url} />
|
<img class="w-32 sm:w-64" src={image.url} />
|
||||||
<div>
|
<div>
|
||||||
<div class="flex flex-col justify-between h-full">
|
<div class="flex h-full flex-col justify-between">
|
||||||
<Tr t={tu.explanation} />
|
<Tr t={tu.explanation} />
|
||||||
{#if $reported}
|
{#if $reported}
|
||||||
<Tr cls="thanks p-2" t={t.deletionRequested} />
|
<Tr cls="thanks p-2" t={t.deletionRequested} />
|
||||||
{:else if image.provider.name === "panoramax"}
|
{:else if image.provider.name === "panoramax"}
|
||||||
<div class="my-4">
|
<div class="my-4">
|
||||||
<AccordionSingle noBorder>
|
<AccordionSingle noBorder>
|
||||||
<div slot="header" class="text-sm flex">Report inappropriate picture</div>
|
<div slot="header" class="flex text-sm">Report inappropriate picture</div>
|
||||||
<div class="interactive p-2 flex flex-col">
|
<div class="interactive flex flex-col p-2">
|
||||||
|
|
||||||
<h3>
|
<h3>
|
||||||
<Tr t={t.title} />
|
<Tr t={t.title} />
|
||||||
</h3>
|
</h3>
|
||||||
|
@ -118,71 +116,57 @@
|
||||||
placeholder={$placeholder}
|
placeholder={$placeholder}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<button class="primary self-end" class:disabled={$reportReason === "other" && !$reportFreeText}
|
<button
|
||||||
on:click={() => requestDeletion()}>
|
class="primary self-end"
|
||||||
|
class:disabled={$reportReason === "other" && !$reportFreeText}
|
||||||
|
on:click={() => requestDeletion()}
|
||||||
|
>
|
||||||
<Tr t={t.requestDeletion} />
|
<Tr t={t.requestDeletion} />
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</AccordionSingle>
|
</AccordionSingle>
|
||||||
</div>
|
</div>
|
||||||
{/if}
|
{/if}
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div slot="footer" class="flex justify-end flex-wrap">
|
<div slot="footer" class="flex flex-wrap justify-end">
|
||||||
<button on:click={() => showDeleteDialog.set(false)}>
|
<button on:click={() => showDeleteDialog.set(false)}>
|
||||||
<Tr t={Translations.t.general.cancel} />
|
<Tr t={Translations.t.general.cancel} />
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
<NextButton clss={"primary "+($reported ? "disabled" : "") } on:click={() => unlink()}>
|
<NextButton clss={"primary " + ($reported ? "disabled" : "")} on:click={() => unlink()}>
|
||||||
<TrashIcon class="w-6 h-6 mr-2" />
|
<TrashIcon class="mr-2 h-6 w-6" />
|
||||||
<Tr t={tu.button} />
|
<Tr t={tu.button} />
|
||||||
</NextButton>
|
</NextButton>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</Popup>
|
</Popup>
|
||||||
|
|
||||||
<div
|
<div class="relative w-fit shrink-0" style="scroll-snap-align: start">
|
||||||
class="w-fit shrink-0 relative"
|
<div class="relative flex max-w-max items-center bg-gray-200">
|
||||||
style="scroll-snap-align: start"
|
|
||||||
>
|
|
||||||
<div class="relative bg-gray-200 max-w-max flex items-center">
|
|
||||||
|
|
||||||
<AttributedImage
|
<AttributedImage
|
||||||
imgClass="carousel-max-height"
|
imgClass="carousel-max-height"
|
||||||
{image}
|
{image}
|
||||||
{state}
|
{state}
|
||||||
previewedImage={state?.previewedImage}
|
previewedImage={state?.previewedImage}
|
||||||
>
|
>
|
||||||
|
|
||||||
<svelte:fragment slot="dot-menu-actions">
|
<svelte:fragment slot="dot-menu-actions">
|
||||||
|
|
||||||
<button on:click={() => ImageProvider.offerImageAsDownload(image)}>
|
<button on:click={() => ImageProvider.offerImageAsDownload(image)}>
|
||||||
<DownloadIcon />
|
<DownloadIcon />
|
||||||
<Tr t={Translations.t.general.download.downloadImage} />
|
<Tr t={Translations.t.general.download.downloadImage} />
|
||||||
</button>
|
</button>
|
||||||
<button
|
<button on:click={() => showDeleteDialog.set(true)} class="flex items-center">
|
||||||
on:click={() => showDeleteDialog.set(true)}
|
|
||||||
class="flex items-center"
|
|
||||||
>
|
|
||||||
<TrashIcon />
|
<TrashIcon />
|
||||||
<Tr t={tu.button} />
|
<Tr t={tu.button} />
|
||||||
</button>
|
</button>
|
||||||
</svelte:fragment>
|
</svelte:fragment>
|
||||||
|
|
||||||
|
|
||||||
</AttributedImage>
|
</AttributedImage>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
:global(.carousel-max-height) {
|
:global(.carousel-max-height) {
|
||||||
max-height: var(--image-carousel-height);
|
max-height: var(--image-carousel-height);
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
|
|
|
@ -7,14 +7,10 @@
|
||||||
export let images: Store<ProvidedImage[]>
|
export let images: Store<ProvidedImage[]>
|
||||||
export let state: SpecialVisualizationState
|
export let state: SpecialVisualizationState
|
||||||
export let tags: Store<Record<string, string>>
|
export let tags: Store<Record<string, string>>
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
<div class="flex w-full space-x-2 overflow-x-auto" style="scroll-snap-type: x proximity">
|
<div class="flex w-full space-x-2 overflow-x-auto" style="scroll-snap-type: x proximity">
|
||||||
{#each $images as image (image.url)}
|
{#each $images as image (image.url)}
|
||||||
<DeletableImage {image} {state} {tags}/>
|
<DeletableImage {image} {state} {tags} />
|
||||||
{/each}
|
{/each}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -19,7 +19,6 @@
|
||||||
export let clss: string = undefined
|
export let clss: string = undefined
|
||||||
|
|
||||||
let isLoaded = new UIEventSource(false)
|
let isLoaded = new UIEventSource(false)
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div class={twMerge("relative h-full w-full", clss)}>
|
<div class={twMerge("relative h-full w-full", clss)}>
|
||||||
|
@ -36,12 +35,11 @@
|
||||||
<slot name="dot-menu-actions">
|
<slot name="dot-menu-actions">
|
||||||
<button
|
<button
|
||||||
class="no-image-background pointer-events-auto flex items-center"
|
class="no-image-background pointer-events-auto flex items-center"
|
||||||
on:click={() => ImageProvider.offerImageAsDownload(image)}
|
on:click={() => ImageProvider.offerImageAsDownload(image)}
|
||||||
>
|
>
|
||||||
<DownloadIcon class="h-6 w-6 px-2 opacity-100" />
|
<DownloadIcon class="h-6 w-6 px-2 opacity-100" />
|
||||||
<Tr t={Translations.t.general.download.downloadImage} />
|
<Tr t={Translations.t.general.download.downloadImage} />
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
</slot>
|
</slot>
|
||||||
</DotMenu>
|
</DotMenu>
|
||||||
<div
|
<div
|
||||||
|
|
|
@ -18,11 +18,11 @@ export default class FediverseValidator extends Validator {
|
||||||
*/
|
*/
|
||||||
public static extractServer(handle: string): { server: string; username: string } {
|
public static extractServer(handle: string): { server: string; username: string } {
|
||||||
const match = handle?.match(this.usernameAtServer)
|
const match = handle?.match(this.usernameAtServer)
|
||||||
if(!match){
|
if (!match) {
|
||||||
return undefined
|
return undefined
|
||||||
}
|
}
|
||||||
const [_, username, server] = match
|
const [_, username, server] = match
|
||||||
return {username, server}
|
return { username, server }
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -36,7 +36,7 @@ export default class FediverseValidator extends Validator {
|
||||||
const url = new URL(s)
|
const url = new URL(s)
|
||||||
const path = url.pathname
|
const path = url.pathname
|
||||||
if (path.match(/^\/@?\w+$/)) {
|
if (path.match(/^\/@?\w+$/)) {
|
||||||
return `${path.substring(1)}@${url.hostname}`;
|
return `${path.substring(1)}@${url.hostname}`
|
||||||
}
|
}
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
// Nothing to do here
|
// Nothing to do here
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
|
|
||||||
import ArrowDownTray from "@babeard/svelte-heroicons/mini/ArrowDownTray"
|
import ArrowDownTray from "@babeard/svelte-heroicons/mini/ArrowDownTray"
|
||||||
import Tr from "../Base/Tr.svelte"
|
import Tr from "../Base/Tr.svelte"
|
||||||
import Translations from "../i18n/Translations"
|
import Translations from "../i18n/Translations"
|
||||||
|
@ -20,23 +19,21 @@
|
||||||
export let extension: string
|
export let extension: string
|
||||||
export let maintext: Translation
|
export let maintext: Translation
|
||||||
export let helpertext: Translation
|
export let helpertext: Translation
|
||||||
export let construct: (feature: Feature, title: string) => (Blob | string)
|
export let construct: (feature: Feature, title: string) => Blob | string
|
||||||
function exportGpx() {
|
function exportGpx() {
|
||||||
console.log("Exporting as GPX!")
|
console.log("Exporting as GPX!")
|
||||||
const tgs = tags.data
|
const tgs = tags.data
|
||||||
const title = layer.title?.GetRenderValue(tgs)?.Subs(tgs)?.txt ?? "gpx_track"
|
const title = layer.title?.GetRenderValue(tgs)?.Subs(tgs)?.txt ?? "gpx_track"
|
||||||
const data = construct(feature, title)
|
const data = construct(feature, title)
|
||||||
Utils.offerContentsAsDownloadableFile(data, title + "_mapcomplete_export."+extension, {
|
Utils.offerContentsAsDownloadableFile(data, title + "_mapcomplete_export." + extension, {
|
||||||
mimetype,
|
mimetype,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
<button class="w-full" on:click={() => exportGpx()}>
|
<button class="w-full" on:click={() => exportGpx()}>
|
||||||
<ArrowDownTray class="w-11 h-11 mr-2"/>
|
<ArrowDownTray class="mr-2 h-11 w-11" />
|
||||||
<div class="flex flex-col items-start w-full">
|
<div class="flex w-full flex-col items-start">
|
||||||
<Tr t={maintext} cls="font-bold text-lg" />
|
<Tr t={maintext} cls="font-bold text-lg" />
|
||||||
<Tr t={helpertext} cls="subtle text-start" />
|
<Tr t={helpertext} cls="subtle text-start" />
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -9,23 +9,25 @@
|
||||||
export let tags: Store<Record<string, string>>
|
export let tags: Store<Record<string, string>>
|
||||||
export let state: SpecialVisualizationState
|
export let state: SpecialVisualizationState
|
||||||
const validator = new FediverseValidator()
|
const validator = new FediverseValidator()
|
||||||
const userinfo = tags.mapD(t => t[key]).mapD(fediAccount => {
|
const userinfo = tags
|
||||||
return FediverseValidator.extractServer(validator.reformat(fediAccount))
|
.mapD((t) => t[key])
|
||||||
})
|
.mapD((fediAccount) => {
|
||||||
const homeLocation: Store<string> = state.userRelatedState?.preferencesAsTags.mapD(prefs => prefs["_mastodon_link"])
|
return FediverseValidator.extractServer(validator.reformat(fediAccount))
|
||||||
.mapD(userhandle => FediverseValidator.extractServer(validator.reformat(userhandle))?.server)
|
})
|
||||||
|
const homeLocation: Store<string> = state.userRelatedState?.preferencesAsTags
|
||||||
|
.mapD((prefs) => prefs["_mastodon_link"])
|
||||||
|
.mapD((userhandle) => FediverseValidator.extractServer(validator.reformat(userhandle))?.server)
|
||||||
</script>
|
</script>
|
||||||
<div class="flex flex-col w-full">
|
|
||||||
|
|
||||||
<a href={ "https://" + $userinfo.server + "/@" + $userinfo.username} target="_blank">@{$userinfo.username}
|
<div class="flex w-full flex-col">
|
||||||
@{$userinfo.server} </a>
|
<a href={"https://" + $userinfo.server + "/@" + $userinfo.username} target="_blank">
|
||||||
|
@{$userinfo.username}
|
||||||
{#if $homeLocation !== undefined}
|
@{$userinfo.server}
|
||||||
|
|
||||||
<a target="_blank" href={"https://"+$homeLocation+"/"}>
|
|
||||||
<Tr t={ Translations.t.validation.fediverse.onYourServer} />
|
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
{/if}
|
{#if $homeLocation !== undefined}
|
||||||
|
<a target="_blank" href={"https://" + $homeLocation + "/"}>
|
||||||
|
<Tr t={Translations.t.validation.fediverse.onYourServer} />
|
||||||
|
</a>
|
||||||
|
{/if}
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -554,10 +554,7 @@
|
||||||
</div>
|
</div>
|
||||||
</Popup>
|
</Popup>
|
||||||
|
|
||||||
<div
|
<div class="sticky bottom-0 flex flex-wrap justify-between" style="z-index: 11">
|
||||||
class="sticky bottom-0 flex flex-wrap justify-between"
|
|
||||||
style="z-index: 11"
|
|
||||||
>
|
|
||||||
{#if $settableKeys && $isKnown && !matchesEmpty}
|
{#if $settableKeys && $isKnown && !matchesEmpty}
|
||||||
<button class="as-link small text-sm" on:click={() => unknownModal.set(true)}>
|
<button class="as-link small text-sm" on:click={() => unknownModal.set(true)}>
|
||||||
<Tr t={Translations.t.unknown.markUnknown} />
|
<Tr t={Translations.t.unknown.markUnknown} />
|
||||||
|
|
|
@ -2,7 +2,11 @@ import Combine from "./Base/Combine"
|
||||||
import { FixedUiElement } from "./Base/FixedUiElement"
|
import { FixedUiElement } from "./Base/FixedUiElement"
|
||||||
import BaseUIElement from "./BaseUIElement"
|
import BaseUIElement from "./BaseUIElement"
|
||||||
import Title from "./Base/Title"
|
import Title from "./Base/Title"
|
||||||
import { RenderingSpecification, SpecialVisualization, SpecialVisualizationState } from "./SpecialVisualization"
|
import {
|
||||||
|
RenderingSpecification,
|
||||||
|
SpecialVisualization,
|
||||||
|
SpecialVisualizationState,
|
||||||
|
} from "./SpecialVisualization"
|
||||||
import { HistogramViz } from "./Popup/HistogramViz"
|
import { HistogramViz } from "./Popup/HistogramViz"
|
||||||
import MinimapViz from "./Popup/MinimapViz.svelte"
|
import MinimapViz from "./Popup/MinimapViz.svelte"
|
||||||
import { ShareLinkViz } from "./Popup/ShareLinkViz"
|
import { ShareLinkViz } from "./Popup/ShareLinkViz"
|
||||||
|
@ -120,7 +124,7 @@ class NearbyImageVis implements SpecialVisualization {
|
||||||
tags: UIEventSource<Record<string, string>>,
|
tags: UIEventSource<Record<string, string>>,
|
||||||
args: string[],
|
args: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): SvelteUIElement {
|
): SvelteUIElement {
|
||||||
const isOpen = args[0] === "open"
|
const isOpen = args[0] === "open"
|
||||||
const readonly = args[1] === "readonly"
|
const readonly = args[1] === "readonly"
|
||||||
|
@ -187,7 +191,7 @@ class StealViz implements SpecialVisualization {
|
||||||
selectedElement: otherFeature,
|
selectedElement: otherFeature,
|
||||||
state,
|
state,
|
||||||
layer,
|
layer,
|
||||||
}),
|
})
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
if (elements.length === 1) {
|
if (elements.length === 1) {
|
||||||
|
@ -195,8 +199,8 @@ class StealViz implements SpecialVisualization {
|
||||||
}
|
}
|
||||||
return new Combine(elements).SetClass("flex flex-col")
|
return new Combine(elements).SetClass("flex flex-col")
|
||||||
},
|
},
|
||||||
[state.indexedFeatures.featuresById],
|
[state.indexedFeatures.featuresById]
|
||||||
),
|
)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -248,11 +252,11 @@ class CloseNoteViz implements SpecialVisualization {
|
||||||
public constr(
|
public constr(
|
||||||
state: SpecialVisualizationState,
|
state: SpecialVisualizationState,
|
||||||
tags: UIEventSource<Record<string, string>>,
|
tags: UIEventSource<Record<string, string>>,
|
||||||
args: string[],
|
args: string[]
|
||||||
): SvelteUIElement {
|
): SvelteUIElement {
|
||||||
const { text, icon, idkey, comment, minZoom, zoomButton } = Utils.ParseVisArgs(
|
const { text, icon, idkey, comment, minZoom, zoomButton } = Utils.ParseVisArgs(
|
||||||
this.args,
|
this.args,
|
||||||
args,
|
args
|
||||||
)
|
)
|
||||||
|
|
||||||
return new SvelteUIElement(CloseNoteButton, {
|
return new SvelteUIElement(CloseNoteButton, {
|
||||||
|
@ -293,7 +297,7 @@ export class QuestionViz implements SpecialVisualization {
|
||||||
tags: UIEventSource<Record<string, string>>,
|
tags: UIEventSource<Record<string, string>>,
|
||||||
args: string[],
|
args: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): SvelteUIElement {
|
): SvelteUIElement {
|
||||||
const labels = args[0]
|
const labels = args[0]
|
||||||
?.split(";")
|
?.split(";")
|
||||||
|
@ -325,7 +329,7 @@ export default class SpecialVisualizations {
|
||||||
for (const specialVisualization of SpecialVisualizations.specialVisualizations) {
|
for (const specialVisualization of SpecialVisualizations.specialVisualizations) {
|
||||||
SpecialVisualizations.specialVisualisationsDict.set(
|
SpecialVisualizations.specialVisualisationsDict.set(
|
||||||
specialVisualization.funcName,
|
specialVisualization.funcName,
|
||||||
specialVisualization,
|
specialVisualization
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -345,15 +349,15 @@ export default class SpecialVisualizations {
|
||||||
viz.docs,
|
viz.docs,
|
||||||
viz.args.length > 0
|
viz.args.length > 0
|
||||||
? MarkdownUtils.table(
|
? MarkdownUtils.table(
|
||||||
["name", "default", "description"],
|
["name", "default", "description"],
|
||||||
viz.args.map((arg) => {
|
viz.args.map((arg) => {
|
||||||
let defaultArg = arg.defaultValue ?? "_undefined_"
|
let defaultArg = arg.defaultValue ?? "_undefined_"
|
||||||
if (defaultArg == "") {
|
if (defaultArg == "") {
|
||||||
defaultArg = "_empty string_"
|
defaultArg = "_empty string_"
|
||||||
}
|
}
|
||||||
return [arg.name, defaultArg, arg.doc]
|
return [arg.name, defaultArg, arg.doc]
|
||||||
}),
|
})
|
||||||
)
|
)
|
||||||
: undefined,
|
: undefined,
|
||||||
"#### Example usage of " + viz.funcName,
|
"#### Example usage of " + viz.funcName,
|
||||||
"<code>" + example + "</code>",
|
"<code>" + example + "</code>",
|
||||||
|
@ -362,18 +366,18 @@ export default class SpecialVisualizations {
|
||||||
|
|
||||||
public static constructSpecification(
|
public static constructSpecification(
|
||||||
template: string,
|
template: string,
|
||||||
extraMappings: SpecialVisualization[] = [],
|
extraMappings: SpecialVisualization[] = []
|
||||||
): RenderingSpecification[] {
|
): RenderingSpecification[] {
|
||||||
return SpecialVisualisationUtils.constructSpecification(
|
return SpecialVisualisationUtils.constructSpecification(
|
||||||
template,
|
template,
|
||||||
SpecialVisualizations.specialVisualisationsDict,
|
SpecialVisualizations.specialVisualisationsDict,
|
||||||
extraMappings,
|
extraMappings
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
public static HelpMessage(): string {
|
public static HelpMessage(): string {
|
||||||
const helpTexts: string[] = SpecialVisualizations.specialVisualizations.map((viz) =>
|
const helpTexts: string[] = SpecialVisualizations.specialVisualizations.map((viz) =>
|
||||||
SpecialVisualizations.DocumentationFor(viz),
|
SpecialVisualizations.DocumentationFor(viz)
|
||||||
)
|
)
|
||||||
|
|
||||||
const firstPart = new Combine([
|
const firstPart = new Combine([
|
||||||
|
@ -406,10 +410,10 @@ export default class SpecialVisualizations {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
null,
|
null,
|
||||||
" ",
|
" "
|
||||||
),
|
)
|
||||||
).SetClass("code"),
|
).SetClass("code"),
|
||||||
"In other words: use `{ \"before\": ..., \"after\": ..., \"special\": {\"type\": ..., \"argname\": ...argvalue...}`. The args are in the `special` block; an argvalue can be a string, a translation or another value. (Refer to class `RewriteSpecial` in case of problems)",
|
'In other words: use `{ "before": ..., "after": ..., "special": {"type": ..., "argname": ...argvalue...}`. The args are in the `special` block; an argvalue can be a string, a translation or another value. (Refer to class `RewriteSpecial` in case of problems)',
|
||||||
])
|
])
|
||||||
.SetClass("flex flex-col")
|
.SetClass("flex flex-col")
|
||||||
.AsMarkdown()
|
.AsMarkdown()
|
||||||
|
@ -447,10 +451,10 @@ export default class SpecialVisualizations {
|
||||||
assignTo: state.userRelatedState.language,
|
assignTo: state.userRelatedState.language,
|
||||||
availableLanguages: languages,
|
availableLanguages: languages,
|
||||||
preferredLanguages: state.osmConnection.userDetails.map(
|
preferredLanguages: state.osmConnection.userDetails.map(
|
||||||
(ud) => ud.languages,
|
(ud) => ud.languages
|
||||||
),
|
),
|
||||||
})
|
})
|
||||||
}),
|
})
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -489,7 +493,7 @@ export default class SpecialVisualizations {
|
||||||
state: SpecialVisualizationState,
|
state: SpecialVisualizationState,
|
||||||
tagSource: UIEventSource<Record<string, string>>,
|
tagSource: UIEventSource<Record<string, string>>,
|
||||||
args: string[],
|
args: string[],
|
||||||
feature: Feature,
|
feature: Feature
|
||||||
): SvelteUIElement {
|
): SvelteUIElement {
|
||||||
return new SvelteUIElement(MinimapViz, { state, args, feature, tagSource })
|
return new SvelteUIElement(MinimapViz, { state, args, feature, tagSource })
|
||||||
},
|
},
|
||||||
|
@ -501,7 +505,7 @@ export default class SpecialVisualizations {
|
||||||
|
|
||||||
constr(
|
constr(
|
||||||
state: SpecialVisualizationState,
|
state: SpecialVisualizationState,
|
||||||
tagSource: UIEventSource<Record<string, string>>,
|
tagSource: UIEventSource<Record<string, string>>
|
||||||
): BaseUIElement {
|
): BaseUIElement {
|
||||||
return new VariableUiElement(
|
return new VariableUiElement(
|
||||||
tagSource
|
tagSource
|
||||||
|
@ -511,7 +515,7 @@ export default class SpecialVisualizations {
|
||||||
return new SvelteUIElement(SplitRoadWizard, { id, state })
|
return new SvelteUIElement(SplitRoadWizard, { id, state })
|
||||||
}
|
}
|
||||||
return undefined
|
return undefined
|
||||||
}),
|
})
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -525,7 +529,7 @@ export default class SpecialVisualizations {
|
||||||
tagSource: UIEventSource<Record<string, string>>,
|
tagSource: UIEventSource<Record<string, string>>,
|
||||||
argument: string[],
|
argument: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): BaseUIElement {
|
): BaseUIElement {
|
||||||
if (feature.geometry.type !== "Point") {
|
if (feature.geometry.type !== "Point") {
|
||||||
return undefined
|
return undefined
|
||||||
|
@ -548,7 +552,7 @@ export default class SpecialVisualizations {
|
||||||
tagSource: UIEventSource<Record<string, string>>,
|
tagSource: UIEventSource<Record<string, string>>,
|
||||||
argument: string[],
|
argument: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): BaseUIElement {
|
): BaseUIElement {
|
||||||
if (!layer.deletion) {
|
if (!layer.deletion) {
|
||||||
return undefined
|
return undefined
|
||||||
|
@ -574,7 +578,7 @@ export default class SpecialVisualizations {
|
||||||
tags: UIEventSource<Record<string, string>>,
|
tags: UIEventSource<Record<string, string>>,
|
||||||
argument: string[],
|
argument: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
) {
|
) {
|
||||||
if (feature.geometry.type !== "LineString") {
|
if (feature.geometry.type !== "LineString") {
|
||||||
return undefined
|
return undefined
|
||||||
|
@ -582,10 +586,13 @@ export default class SpecialVisualizations {
|
||||||
const t = Translations.t.general.download
|
const t = Translations.t.general.download
|
||||||
|
|
||||||
return new SvelteUIElement(ExportFeatureButton, {
|
return new SvelteUIElement(ExportFeatureButton, {
|
||||||
tags, feature, layer,
|
tags,
|
||||||
|
feature,
|
||||||
|
layer,
|
||||||
mimetype: "{gpx=application/gpx+xml}",
|
mimetype: "{gpx=application/gpx+xml}",
|
||||||
extension: "gpx",
|
extension: "gpx",
|
||||||
construct: (feature: Feature<LineString>, title: string) => GeoOperations.toGpx(feature, title),
|
construct: (feature: Feature<LineString>, title: string) =>
|
||||||
|
GeoOperations.toGpx(feature, title),
|
||||||
helpertext: t.downloadGpxHelper,
|
helpertext: t.downloadGpxHelper,
|
||||||
maintext: t.downloadFeatureAsGpx,
|
maintext: t.downloadFeatureAsGpx,
|
||||||
})
|
})
|
||||||
|
@ -603,7 +610,7 @@ export default class SpecialVisualizations {
|
||||||
state: SpecialVisualizationState,
|
state: SpecialVisualizationState,
|
||||||
tagSource: UIEventSource<Record<string, string>>,
|
tagSource: UIEventSource<Record<string, string>>,
|
||||||
argument: string[],
|
argument: string[],
|
||||||
feature: Feature,
|
feature: Feature
|
||||||
): BaseUIElement {
|
): BaseUIElement {
|
||||||
const [lon, lat] = GeoOperations.centerpointCoordinates(feature)
|
const [lon, lat] = GeoOperations.centerpointCoordinates(feature)
|
||||||
return new SvelteUIElement(CreateNewNote, {
|
return new SvelteUIElement(CreateNewNote, {
|
||||||
|
@ -666,7 +673,7 @@ export default class SpecialVisualizations {
|
||||||
.map((tags) => tags[args[0]])
|
.map((tags) => tags[args[0]])
|
||||||
.map((wikidata) => {
|
.map((wikidata) => {
|
||||||
wikidata = Utils.NoEmpty(
|
wikidata = Utils.NoEmpty(
|
||||||
wikidata?.split(";")?.map((wd) => wd.trim()) ?? [],
|
wikidata?.split(";")?.map((wd) => wd.trim()) ?? []
|
||||||
)[0]
|
)[0]
|
||||||
const entry = Wikidata.LoadWikidataEntry(wikidata)
|
const entry = Wikidata.LoadWikidataEntry(wikidata)
|
||||||
return new VariableUiElement(
|
return new VariableUiElement(
|
||||||
|
@ -676,9 +683,9 @@ export default class SpecialVisualizations {
|
||||||
}
|
}
|
||||||
const response = <WikidataResponse>e["success"]
|
const response = <WikidataResponse>e["success"]
|
||||||
return Translation.fromMap(response.labels)
|
return Translation.fromMap(response.labels)
|
||||||
}),
|
})
|
||||||
)
|
)
|
||||||
}),
|
})
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
new MapillaryLinkVis(),
|
new MapillaryLinkVis(),
|
||||||
|
@ -692,7 +699,7 @@ export default class SpecialVisualizations {
|
||||||
tags: UIEventSource<Record<string, string>>,
|
tags: UIEventSource<Record<string, string>>,
|
||||||
_,
|
_,
|
||||||
__,
|
__,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
) => new SvelteUIElement(AllTagsPanel, { tags, layer }),
|
) => new SvelteUIElement(AllTagsPanel, { tags, layer }),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -775,7 +782,7 @@ export default class SpecialVisualizations {
|
||||||
nameKey: nameKey,
|
nameKey: nameKey,
|
||||||
fallbackName,
|
fallbackName,
|
||||||
},
|
},
|
||||||
state.featureSwitchIsTesting,
|
state.featureSwitchIsTesting
|
||||||
)
|
)
|
||||||
return new SvelteUIElement(StarsBarIcon, {
|
return new SvelteUIElement(StarsBarIcon, {
|
||||||
score: reviews.average,
|
score: reviews.average,
|
||||||
|
@ -809,7 +816,7 @@ export default class SpecialVisualizations {
|
||||||
nameKey: nameKey,
|
nameKey: nameKey,
|
||||||
fallbackName,
|
fallbackName,
|
||||||
},
|
},
|
||||||
state.featureSwitchIsTesting,
|
state.featureSwitchIsTesting
|
||||||
)
|
)
|
||||||
return new SvelteUIElement(ReviewForm, { reviews, state, tags, feature, layer })
|
return new SvelteUIElement(ReviewForm, { reviews, state, tags, feature, layer })
|
||||||
},
|
},
|
||||||
|
@ -840,7 +847,7 @@ export default class SpecialVisualizations {
|
||||||
nameKey: nameKey,
|
nameKey: nameKey,
|
||||||
fallbackName,
|
fallbackName,
|
||||||
},
|
},
|
||||||
state.featureSwitchIsTesting,
|
state.featureSwitchIsTesting
|
||||||
)
|
)
|
||||||
return new SvelteUIElement(AllReviews, { reviews, state, tags, feature, layer })
|
return new SvelteUIElement(AllReviews, { reviews, state, tags, feature, layer })
|
||||||
},
|
},
|
||||||
|
@ -866,7 +873,7 @@ export default class SpecialVisualizations {
|
||||||
tagSource: UIEventSource<Record<string, string>>,
|
tagSource: UIEventSource<Record<string, string>>,
|
||||||
args: string[],
|
args: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): BaseUIElement {
|
): BaseUIElement {
|
||||||
return new Combine([
|
return new Combine([
|
||||||
SpecialVisualizations.specialVisualisationsDict["create_review"].constr(
|
SpecialVisualizations.specialVisualisationsDict["create_review"].constr(
|
||||||
|
@ -874,14 +881,14 @@ export default class SpecialVisualizations {
|
||||||
tagSource,
|
tagSource,
|
||||||
args,
|
args,
|
||||||
feature,
|
feature,
|
||||||
layer,
|
layer
|
||||||
),
|
),
|
||||||
SpecialVisualizations.specialVisualisationsDict["list_reviews"].constr(
|
SpecialVisualizations.specialVisualisationsDict["list_reviews"].constr(
|
||||||
state,
|
state,
|
||||||
tagSource,
|
tagSource,
|
||||||
args,
|
args,
|
||||||
feature,
|
feature,
|
||||||
layer,
|
layer
|
||||||
),
|
),
|
||||||
])
|
])
|
||||||
},
|
},
|
||||||
|
@ -899,7 +906,7 @@ export default class SpecialVisualizations {
|
||||||
constr(
|
constr(
|
||||||
state: SpecialVisualizationState,
|
state: SpecialVisualizationState,
|
||||||
_: UIEventSource<Record<string, string>>,
|
_: UIEventSource<Record<string, string>>,
|
||||||
argument: string[],
|
argument: string[]
|
||||||
): BaseUIElement {
|
): BaseUIElement {
|
||||||
const [text] = argument
|
const [text] = argument
|
||||||
return new SvelteUIElement(ImportReviewIdentity, { state, text })
|
return new SvelteUIElement(ImportReviewIdentity, { state, text })
|
||||||
|
@ -956,7 +963,7 @@ export default class SpecialVisualizations {
|
||||||
constr(
|
constr(
|
||||||
state: SpecialVisualizationState,
|
state: SpecialVisualizationState,
|
||||||
tags: UIEventSource<Record<string, string>>,
|
tags: UIEventSource<Record<string, string>>,
|
||||||
args: string[],
|
args: string[]
|
||||||
): SvelteUIElement {
|
): SvelteUIElement {
|
||||||
const keyToUse = args[0]
|
const keyToUse = args[0]
|
||||||
const prefix = args[1]
|
const prefix = args[1]
|
||||||
|
@ -993,17 +1000,17 @@ export default class SpecialVisualizations {
|
||||||
return undefined
|
return undefined
|
||||||
}
|
}
|
||||||
const allUnits: Unit[] = [].concat(
|
const allUnits: Unit[] = [].concat(
|
||||||
...(state?.theme?.layers?.map((lyr) => lyr.units) ?? []),
|
...(state?.theme?.layers?.map((lyr) => lyr.units) ?? [])
|
||||||
)
|
)
|
||||||
const unit = allUnits.filter((unit) =>
|
const unit = allUnits.filter((unit) =>
|
||||||
unit.isApplicableToKey(key),
|
unit.isApplicableToKey(key)
|
||||||
)[0]
|
)[0]
|
||||||
if (unit === undefined) {
|
if (unit === undefined) {
|
||||||
return value
|
return value
|
||||||
}
|
}
|
||||||
const getCountry = () => tagSource.data._country
|
const getCountry = () => tagSource.data._country
|
||||||
return unit.asHumanLongValue(value, getCountry)
|
return unit.asHumanLongValue(value, getCountry)
|
||||||
}),
|
})
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -1015,10 +1022,13 @@ export default class SpecialVisualizations {
|
||||||
constr: (state, tags, args, feature, layer) => {
|
constr: (state, tags, args, feature, layer) => {
|
||||||
const t = Translations.t.general.download
|
const t = Translations.t.general.download
|
||||||
return new SvelteUIElement(ExportFeatureButton, {
|
return new SvelteUIElement(ExportFeatureButton, {
|
||||||
tags, feature, layer,
|
tags,
|
||||||
|
feature,
|
||||||
|
layer,
|
||||||
mimetype: "application/vnd.geo+json",
|
mimetype: "application/vnd.geo+json",
|
||||||
extension: "geojson",
|
extension: "geojson",
|
||||||
construct: (feature: Feature<LineString>) => JSON.stringify(feature, null, " "),
|
construct: (feature: Feature<LineString>) =>
|
||||||
|
JSON.stringify(feature, null, " "),
|
||||||
maintext: t.downloadFeatureAsGeojson,
|
maintext: t.downloadFeatureAsGeojson,
|
||||||
helpertext: t.downloadGeoJsonHelper,
|
helpertext: t.downloadGeoJsonHelper,
|
||||||
})
|
})
|
||||||
|
@ -1054,7 +1064,7 @@ export default class SpecialVisualizations {
|
||||||
constr: (state) => {
|
constr: (state) => {
|
||||||
return new SubtleButton(
|
return new SubtleButton(
|
||||||
new SvelteUIElement(Trash).SetClass("h-6"),
|
new SvelteUIElement(Trash).SetClass("h-6"),
|
||||||
Translations.t.general.removeLocationHistory,
|
Translations.t.general.removeLocationHistory
|
||||||
).onClick(() => {
|
).onClick(() => {
|
||||||
state.historicalUserLocations.features.setData([])
|
state.historicalUserLocations.features.setData([])
|
||||||
state.selectedElement.setData(undefined)
|
state.selectedElement.setData(undefined)
|
||||||
|
@ -1095,10 +1105,10 @@ export default class SpecialVisualizations {
|
||||||
new SvelteUIElement(NoteCommentElement, {
|
new SvelteUIElement(NoteCommentElement, {
|
||||||
comment,
|
comment,
|
||||||
state,
|
state,
|
||||||
}),
|
})
|
||||||
),
|
)
|
||||||
).SetClass("flex flex-col")
|
).SetClass("flex flex-col")
|
||||||
}),
|
})
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -1131,7 +1141,7 @@ export default class SpecialVisualizations {
|
||||||
tagsSource: UIEventSource<Record<string, string>>,
|
tagsSource: UIEventSource<Record<string, string>>,
|
||||||
_: string[],
|
_: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
) =>
|
) =>
|
||||||
new VariableUiElement(
|
new VariableUiElement(
|
||||||
tagsSource.map((tags) => {
|
tagsSource.map((tags) => {
|
||||||
|
@ -1151,7 +1161,7 @@ export default class SpecialVisualizations {
|
||||||
})
|
})
|
||||||
.SetClass("px-1")
|
.SetClass("px-1")
|
||||||
.setSpan()
|
.setSpan()
|
||||||
}),
|
})
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -1167,8 +1177,8 @@ export default class SpecialVisualizations {
|
||||||
const challenge = Stores.FromPromise(
|
const challenge = Stores.FromPromise(
|
||||||
Utils.downloadJsonCached<MaprouletteTask>(
|
Utils.downloadJsonCached<MaprouletteTask>(
|
||||||
`${Maproulette.defaultEndpoint}/challenge/${parentId}`,
|
`${Maproulette.defaultEndpoint}/challenge/${parentId}`,
|
||||||
24 * 60 * 60 * 1000,
|
24 * 60 * 60 * 1000
|
||||||
),
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
return new VariableUiElement(
|
return new VariableUiElement(
|
||||||
|
@ -1193,7 +1203,7 @@ export default class SpecialVisualizations {
|
||||||
} else {
|
} else {
|
||||||
return [title, new List(listItems)]
|
return [title, new List(listItems)]
|
||||||
}
|
}
|
||||||
}),
|
})
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
docs: "Fetches the metadata of MapRoulette campaign that this task is part of and shows those details (namely `title`, `description` and `instruction`).\n\nThis reads the property `mr_challengeId` to detect the parent campaign.",
|
docs: "Fetches the metadata of MapRoulette campaign that this task is part of and shows those details (namely `title`, `description` and `instruction`).\n\nThis reads the property `mr_challengeId` to detect the parent campaign.",
|
||||||
|
@ -1207,15 +1217,15 @@ export default class SpecialVisualizations {
|
||||||
"\n" +
|
"\n" +
|
||||||
"```json\n" +
|
"```json\n" +
|
||||||
"{\n" +
|
"{\n" +
|
||||||
" \"id\": \"mark_duplicate\",\n" +
|
' "id": "mark_duplicate",\n' +
|
||||||
" \"render\": {\n" +
|
' "render": {\n' +
|
||||||
" \"special\": {\n" +
|
' "special": {\n' +
|
||||||
" \"type\": \"maproulette_set_status\",\n" +
|
' "type": "maproulette_set_status",\n' +
|
||||||
" \"message\": {\n" +
|
' "message": {\n' +
|
||||||
" \"en\": \"Mark as not found or false positive\"\n" +
|
' "en": "Mark as not found or false positive"\n' +
|
||||||
" },\n" +
|
" },\n" +
|
||||||
" \"status\": \"2\",\n" +
|
' "status": "2",\n' +
|
||||||
" \"image\": \"close\"\n" +
|
' "image": "close"\n' +
|
||||||
" }\n" +
|
" }\n" +
|
||||||
" }\n" +
|
" }\n" +
|
||||||
"}\n" +
|
"}\n" +
|
||||||
|
@ -1291,7 +1301,7 @@ export default class SpecialVisualizations {
|
||||||
(l) =>
|
(l) =>
|
||||||
l.name !== null &&
|
l.name !== null &&
|
||||||
l.title &&
|
l.title &&
|
||||||
state.perLayer.get(l.id) !== undefined,
|
state.perLayer.get(l.id) !== undefined
|
||||||
)
|
)
|
||||||
.map(
|
.map(
|
||||||
(l) => {
|
(l) => {
|
||||||
|
@ -1301,8 +1311,8 @@ export default class SpecialVisualizations {
|
||||||
const fsBboxed = new BBoxFeatureSourceForLayer(fs, bbox)
|
const fsBboxed = new BBoxFeatureSourceForLayer(fs, bbox)
|
||||||
return new StatisticsPanel(fsBboxed)
|
return new StatisticsPanel(fsBboxed)
|
||||||
},
|
},
|
||||||
[state.mapProperties.bounds],
|
[state.mapProperties.bounds]
|
||||||
),
|
)
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -1372,7 +1382,7 @@ export default class SpecialVisualizations {
|
||||||
constr(
|
constr(
|
||||||
state: SpecialVisualizationState,
|
state: SpecialVisualizationState,
|
||||||
tagSource: UIEventSource<Record<string, string>>,
|
tagSource: UIEventSource<Record<string, string>>,
|
||||||
args: string[],
|
args: string[]
|
||||||
): SvelteUIElement {
|
): SvelteUIElement {
|
||||||
let [text, href, classnames, download, ariaLabel, icon] = args
|
let [text, href, classnames, download, ariaLabel, icon] = args
|
||||||
if (download === "") {
|
if (download === "") {
|
||||||
|
@ -1410,7 +1420,7 @@ export default class SpecialVisualizations {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
null,
|
null,
|
||||||
" ",
|
" "
|
||||||
) +
|
) +
|
||||||
"\n```",
|
"\n```",
|
||||||
args: [
|
args: [
|
||||||
|
@ -1434,7 +1444,7 @@ export default class SpecialVisualizations {
|
||||||
featureTags: UIEventSource<Record<string, string>>,
|
featureTags: UIEventSource<Record<string, string>>,
|
||||||
args: string[],
|
args: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
) {
|
) {
|
||||||
const [key, tr, classesRaw] = args
|
const [key, tr, classesRaw] = args
|
||||||
let classes = classesRaw ?? ""
|
let classes = classesRaw ?? ""
|
||||||
|
@ -1452,7 +1462,7 @@ export default class SpecialVisualizations {
|
||||||
"Could not create a special visualization for multi(",
|
"Could not create a special visualization for multi(",
|
||||||
args.join(", ") + ")",
|
args.join(", ") + ")",
|
||||||
"no properties found for object",
|
"no properties found for object",
|
||||||
feature.properties.id,
|
feature.properties.id
|
||||||
)
|
)
|
||||||
return undefined
|
return undefined
|
||||||
}
|
}
|
||||||
|
@ -1468,7 +1478,7 @@ export default class SpecialVisualizations {
|
||||||
elements.push(subsTr)
|
elements.push(subsTr)
|
||||||
}
|
}
|
||||||
return elements
|
return elements
|
||||||
}),
|
})
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -1488,7 +1498,7 @@ export default class SpecialVisualizations {
|
||||||
tagSource: UIEventSource<Record<string, string>>,
|
tagSource: UIEventSource<Record<string, string>>,
|
||||||
argument: string[],
|
argument: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): BaseUIElement {
|
): BaseUIElement {
|
||||||
return new VariableUiElement(
|
return new VariableUiElement(
|
||||||
tagSource.map((tags) => {
|
tagSource.map((tags) => {
|
||||||
|
@ -1500,7 +1510,7 @@ export default class SpecialVisualizations {
|
||||||
console.error("Cannot create a translation for", v, "due to", e)
|
console.error("Cannot create a translation for", v, "due to", e)
|
||||||
return JSON.stringify(v)
|
return JSON.stringify(v)
|
||||||
}
|
}
|
||||||
}),
|
})
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -1520,11 +1530,10 @@ export default class SpecialVisualizations {
|
||||||
tags: UIEventSource<Record<string, string>>,
|
tags: UIEventSource<Record<string, string>>,
|
||||||
argument: string[],
|
argument: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): BaseUIElement {
|
): BaseUIElement {
|
||||||
const key = argument[0]
|
const key = argument[0]
|
||||||
return new SvelteUIElement(FediverseLink, { key, tags, state })
|
return new SvelteUIElement(FediverseLink, { key, tags, state })
|
||||||
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -1543,7 +1552,7 @@ export default class SpecialVisualizations {
|
||||||
tagSource: UIEventSource<Record<string, string>>,
|
tagSource: UIEventSource<Record<string, string>>,
|
||||||
args: string[],
|
args: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): BaseUIElement {
|
): BaseUIElement {
|
||||||
return new FixedUiElement("{" + args[0] + "}")
|
return new FixedUiElement("{" + args[0] + "}")
|
||||||
},
|
},
|
||||||
|
@ -1564,7 +1573,7 @@ export default class SpecialVisualizations {
|
||||||
tagSource: UIEventSource<Record<string, string>>,
|
tagSource: UIEventSource<Record<string, string>>,
|
||||||
argument: string[],
|
argument: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): BaseUIElement {
|
): BaseUIElement {
|
||||||
const key = argument[0] ?? "value"
|
const key = argument[0] ?? "value"
|
||||||
return new VariableUiElement(
|
return new VariableUiElement(
|
||||||
|
@ -1582,12 +1591,12 @@ export default class SpecialVisualizations {
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
return new FixedUiElement(
|
return new FixedUiElement(
|
||||||
"Could not parse this tag: " +
|
"Could not parse this tag: " +
|
||||||
JSON.stringify(value) +
|
JSON.stringify(value) +
|
||||||
" due to " +
|
" due to " +
|
||||||
e,
|
e
|
||||||
).SetClass("alert")
|
).SetClass("alert")
|
||||||
}
|
}
|
||||||
}),
|
})
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -1608,7 +1617,7 @@ export default class SpecialVisualizations {
|
||||||
tagSource: UIEventSource<Record<string, string>>,
|
tagSource: UIEventSource<Record<string, string>>,
|
||||||
argument: string[],
|
argument: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): BaseUIElement {
|
): BaseUIElement {
|
||||||
const giggityUrl = argument[0]
|
const giggityUrl = argument[0]
|
||||||
return new SvelteUIElement(Giggity, { tags: tagSource, state, giggityUrl })
|
return new SvelteUIElement(Giggity, { tags: tagSource, state, giggityUrl })
|
||||||
|
@ -1624,12 +1633,12 @@ export default class SpecialVisualizations {
|
||||||
_: UIEventSource<Record<string, string>>,
|
_: UIEventSource<Record<string, string>>,
|
||||||
argument: string[],
|
argument: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): BaseUIElement {
|
): BaseUIElement {
|
||||||
const tags = (<ThemeViewState>(
|
const tags = (<ThemeViewState>(
|
||||||
state
|
state
|
||||||
)).geolocation.currentUserLocation.features.map(
|
)).geolocation.currentUserLocation.features.map(
|
||||||
(features) => features[0]?.properties,
|
(features) => features[0]?.properties
|
||||||
)
|
)
|
||||||
return new Combine([
|
return new Combine([
|
||||||
new SvelteUIElement(OrientationDebugPanel, {}),
|
new SvelteUIElement(OrientationDebugPanel, {}),
|
||||||
|
@ -1651,7 +1660,7 @@ export default class SpecialVisualizations {
|
||||||
tagSource: UIEventSource<Record<string, string>>,
|
tagSource: UIEventSource<Record<string, string>>,
|
||||||
argument: string[],
|
argument: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): BaseUIElement {
|
): BaseUIElement {
|
||||||
return new SvelteUIElement(MarkAsFavourite, {
|
return new SvelteUIElement(MarkAsFavourite, {
|
||||||
tags: tagSource,
|
tags: tagSource,
|
||||||
|
@ -1671,7 +1680,7 @@ export default class SpecialVisualizations {
|
||||||
tagSource: UIEventSource<Record<string, string>>,
|
tagSource: UIEventSource<Record<string, string>>,
|
||||||
argument: string[],
|
argument: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): BaseUIElement {
|
): BaseUIElement {
|
||||||
return new SvelteUIElement(MarkAsFavouriteMini, {
|
return new SvelteUIElement(MarkAsFavouriteMini, {
|
||||||
tags: tagSource,
|
tags: tagSource,
|
||||||
|
@ -1691,7 +1700,7 @@ export default class SpecialVisualizations {
|
||||||
tagSource: UIEventSource<Record<string, string>>,
|
tagSource: UIEventSource<Record<string, string>>,
|
||||||
argument: string[],
|
argument: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): BaseUIElement {
|
): BaseUIElement {
|
||||||
return new SvelteUIElement(DirectionIndicator, { state, feature })
|
return new SvelteUIElement(DirectionIndicator, { state, feature })
|
||||||
},
|
},
|
||||||
|
@ -1704,7 +1713,7 @@ export default class SpecialVisualizations {
|
||||||
state: SpecialVisualizationState,
|
state: SpecialVisualizationState,
|
||||||
tags: UIEventSource<Record<string, string>>,
|
tags: UIEventSource<Record<string, string>>,
|
||||||
argument: string[],
|
argument: string[],
|
||||||
feature: Feature,
|
feature: Feature
|
||||||
): SvelteUIElement {
|
): SvelteUIElement {
|
||||||
return new SvelteUIElement(QrCode, { state, tags, feature })
|
return new SvelteUIElement(QrCode, { state, tags, feature })
|
||||||
},
|
},
|
||||||
|
@ -1723,7 +1732,7 @@ export default class SpecialVisualizations {
|
||||||
constr(
|
constr(
|
||||||
state: SpecialVisualizationState,
|
state: SpecialVisualizationState,
|
||||||
tagSource: UIEventSource<Record<string, string>>,
|
tagSource: UIEventSource<Record<string, string>>,
|
||||||
args: string[],
|
args: string[]
|
||||||
): BaseUIElement {
|
): BaseUIElement {
|
||||||
const key = args[0] === "" ? "_direction:centerpoint" : args[0]
|
const key = args[0] === "" ? "_direction:centerpoint" : args[0]
|
||||||
return new VariableUiElement(
|
return new VariableUiElement(
|
||||||
|
@ -1734,11 +1743,11 @@ export default class SpecialVisualizations {
|
||||||
})
|
})
|
||||||
.mapD((value) => {
|
.mapD((value) => {
|
||||||
const dir = GeoOperations.bearingToHuman(
|
const dir = GeoOperations.bearingToHuman(
|
||||||
GeoOperations.parseBearing(value),
|
GeoOperations.parseBearing(value)
|
||||||
)
|
)
|
||||||
console.log("Human dir", dir)
|
console.log("Human dir", dir)
|
||||||
return Translations.t.general.visualFeedback.directionsAbsolute[dir]
|
return Translations.t.general.visualFeedback.directionsAbsolute[dir]
|
||||||
}),
|
})
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -1768,7 +1777,7 @@ export default class SpecialVisualizations {
|
||||||
tagSource: UIEventSource<Record<string, string>>,
|
tagSource: UIEventSource<Record<string, string>>,
|
||||||
args: string[],
|
args: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): BaseUIElement {
|
): BaseUIElement {
|
||||||
const url = args[0]
|
const url = args[0]
|
||||||
const readonly = args[3] === "yes"
|
const readonly = args[3] === "yes"
|
||||||
|
@ -1794,12 +1803,12 @@ export default class SpecialVisualizations {
|
||||||
tagSource: UIEventSource<Record<string, string>>,
|
tagSource: UIEventSource<Record<string, string>>,
|
||||||
args: string[],
|
args: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): BaseUIElement {
|
): BaseUIElement {
|
||||||
return new Toggle(
|
return new Toggle(
|
||||||
undefined,
|
undefined,
|
||||||
new SvelteUIElement(LoginButton, { osmConnection: state.osmConnection }),
|
new SvelteUIElement(LoginButton, { osmConnection: state.osmConnection }),
|
||||||
state.osmConnection.isLoggedIn,
|
state.osmConnection.isLoggedIn
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -1837,7 +1846,7 @@ export default class SpecialVisualizations {
|
||||||
tags: UIEventSource<Record<string, string>>,
|
tags: UIEventSource<Record<string, string>>,
|
||||||
argument: string[],
|
argument: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): BaseUIElement {
|
): BaseUIElement {
|
||||||
const key = argument[0] ?? "website"
|
const key = argument[0] ?? "website"
|
||||||
const useProxy = argument[1] !== "no"
|
const useProxy = argument[1] !== "no"
|
||||||
|
@ -1864,11 +1873,11 @@ export default class SpecialVisualizations {
|
||||||
const features =
|
const features =
|
||||||
await LinkedDataLoader.fetchVeloparkEntry(
|
await LinkedDataLoader.fetchVeloparkEntry(
|
||||||
url,
|
url,
|
||||||
loadAll,
|
loadAll
|
||||||
)
|
)
|
||||||
const feature =
|
const feature =
|
||||||
features.find(
|
features.find(
|
||||||
(f) => f.properties["ref:velopark"] === url,
|
(f) => f.properties["ref:velopark"] === url
|
||||||
) ?? features[0]
|
) ?? features[0]
|
||||||
const properties = feature.properties
|
const properties = feature.properties
|
||||||
properties["ref:velopark"] = url
|
properties["ref:velopark"] = url
|
||||||
|
@ -1878,7 +1887,7 @@ export default class SpecialVisualizations {
|
||||||
console.error(e)
|
console.error(e)
|
||||||
throw e
|
throw e
|
||||||
}
|
}
|
||||||
})(),
|
})()
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
return Stores.FromPromiseWithErr(
|
return Stores.FromPromiseWithErr(
|
||||||
|
@ -1887,27 +1896,27 @@ export default class SpecialVisualizations {
|
||||||
return await LinkedDataLoader.fetchJsonLd(
|
return await LinkedDataLoader.fetchJsonLd(
|
||||||
url,
|
url,
|
||||||
{ country },
|
{ country },
|
||||||
useProxy ? "proxy" : "fetch-lod",
|
useProxy ? "proxy" : "fetch-lod"
|
||||||
)
|
)
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.log(
|
console.log(
|
||||||
"Could not get with proxy/download LOD, attempting to download directly. Error for ",
|
"Could not get with proxy/download LOD, attempting to download directly. Error for ",
|
||||||
url,
|
url,
|
||||||
"is",
|
"is",
|
||||||
e,
|
e
|
||||||
)
|
)
|
||||||
return await LinkedDataLoader.fetchJsonLd(
|
return await LinkedDataLoader.fetchJsonLd(
|
||||||
url,
|
url,
|
||||||
{ country },
|
{ country },
|
||||||
"fetch-raw",
|
"fetch-raw"
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
})(),
|
})()
|
||||||
)
|
)
|
||||||
})
|
})
|
||||||
|
|
||||||
externalData.addCallbackAndRunD((lod) =>
|
externalData.addCallbackAndRunD((lod) =>
|
||||||
console.log("linked_data_from_website received the following data:", lod),
|
console.log("linked_data_from_website received the following data:", lod)
|
||||||
)
|
)
|
||||||
|
|
||||||
return new Toggle(
|
return new Toggle(
|
||||||
|
@ -1922,7 +1931,7 @@ export default class SpecialVisualizations {
|
||||||
collapsed: isClosed,
|
collapsed: isClosed,
|
||||||
}),
|
}),
|
||||||
undefined,
|
undefined,
|
||||||
url.map((url) => !!url),
|
url.map((url) => !!url)
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -1942,7 +1951,7 @@ export default class SpecialVisualizations {
|
||||||
tagSource: UIEventSource<Record<string, string>>,
|
tagSource: UIEventSource<Record<string, string>>,
|
||||||
argument: string[],
|
argument: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): BaseUIElement {
|
): BaseUIElement {
|
||||||
const text = argument[0]
|
const text = argument[0]
|
||||||
const cssClasses = argument[1]
|
const cssClasses = argument[1]
|
||||||
|
@ -1964,7 +1973,7 @@ export default class SpecialVisualizations {
|
||||||
tagSource: UIEventSource<Record<string, string>>,
|
tagSource: UIEventSource<Record<string, string>>,
|
||||||
argument: string[],
|
argument: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): BaseUIElement {
|
): BaseUIElement {
|
||||||
const translation = tagSource.map((tags) => {
|
const translation = tagSource.map((tags) => {
|
||||||
const layer = state.theme.getMatchingLayer(tags)
|
const layer = state.theme.getMatchingLayer(tags)
|
||||||
|
@ -1982,7 +1991,7 @@ export default class SpecialVisualizations {
|
||||||
tagSource: UIEventSource<Record<string, string>>,
|
tagSource: UIEventSource<Record<string, string>>,
|
||||||
argument: string[],
|
argument: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): BaseUIElement {
|
): BaseUIElement {
|
||||||
return new SvelteUIElement(PendingChangesIndicator, { state, compact: false })
|
return new SvelteUIElement(PendingChangesIndicator, { state, compact: false })
|
||||||
},
|
},
|
||||||
|
@ -2002,7 +2011,7 @@ export default class SpecialVisualizations {
|
||||||
tagSource: UIEventSource<Record<string, string>>,
|
tagSource: UIEventSource<Record<string, string>>,
|
||||||
argument: string[],
|
argument: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): SvelteUIElement {
|
): SvelteUIElement {
|
||||||
return new SvelteUIElement<any, any, any>(ClearCaches, {
|
return new SvelteUIElement<any, any, any>(ClearCaches, {
|
||||||
msg: argument[0] ?? "Clear local caches",
|
msg: argument[0] ?? "Clear local caches",
|
||||||
|
@ -2027,7 +2036,7 @@ export default class SpecialVisualizations {
|
||||||
tags: UIEventSource<Record<string, string>>,
|
tags: UIEventSource<Record<string, string>>,
|
||||||
argument: string[],
|
argument: string[],
|
||||||
selectedElement: Feature,
|
selectedElement: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): SvelteUIElement {
|
): SvelteUIElement {
|
||||||
const [header, labelsStr] = argument
|
const [header, labelsStr] = argument
|
||||||
const labels = labelsStr.split(";").map((x) => x.trim())
|
const labels = labelsStr.split(";").map((x) => x.trim())
|
||||||
|
@ -2050,7 +2059,7 @@ export default class SpecialVisualizations {
|
||||||
tags: UIEventSource<Record<string, string>>,
|
tags: UIEventSource<Record<string, string>>,
|
||||||
argument: string[],
|
argument: string[],
|
||||||
selectedElement: Feature,
|
selectedElement: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): SvelteUIElement {
|
): SvelteUIElement {
|
||||||
const t = Translations.t.preset_type
|
const t = Translations.t.preset_type
|
||||||
const question: QuestionableTagRenderingConfigJson = {
|
const question: QuestionableTagRenderingConfigJson = {
|
||||||
|
@ -2090,7 +2099,7 @@ export default class SpecialVisualizations {
|
||||||
tagSource: UIEventSource<Record<string, string>>,
|
tagSource: UIEventSource<Record<string, string>>,
|
||||||
argument: string[],
|
argument: string[],
|
||||||
feature: Feature,
|
feature: Feature,
|
||||||
layer: LayerConfig,
|
layer: LayerConfig
|
||||||
): BaseUIElement {
|
): BaseUIElement {
|
||||||
const text = argument[0]
|
const text = argument[0]
|
||||||
return new SubtleButton(undefined, text).onClick(() => {
|
return new SubtleButton(undefined, text).onClick(() => {
|
||||||
|
@ -2112,7 +2121,7 @@ export default class SpecialVisualizations {
|
||||||
"Invalid special visualisation found: funcName is undefined or doesn't match " +
|
"Invalid special visualisation found: funcName is undefined or doesn't match " +
|
||||||
regex +
|
regex +
|
||||||
invalid.map((sp) => sp.i).join(", ") +
|
invalid.map((sp) => sp.i).join(", ") +
|
||||||
". Did you perhaps type \n funcName: \"funcname\" // type declaration uses COLON\ninstead of:\n funcName = \"funcName\" // value definition uses EQUAL"
|
'. Did you perhaps type \n funcName: "funcname" // type declaration uses COLON\ninstead of:\n funcName = "funcName" // value definition uses EQUAL'
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1534,10 +1534,10 @@ In the case that MapComplete is pointed to the testing grounds, the edit will be
|
||||||
let _: string
|
let _: string
|
||||||
const matchWithFuncName = stackItem.match(regex)
|
const matchWithFuncName = stackItem.match(regex)
|
||||||
if (matchWithFuncName) {
|
if (matchWithFuncName) {
|
||||||
[_, functionName, path, line, column] = matchWithFuncName
|
;[_, functionName, path, line, column] = matchWithFuncName
|
||||||
} else {
|
} else {
|
||||||
const regexNoFuncName: RegExp = new RegExp("at ([a-zA-Z0-9-/.]+):([0-9]+):([0-9]+)");
|
const regexNoFuncName: RegExp = new RegExp("at ([a-zA-Z0-9-/.]+):([0-9]+):([0-9]+)")
|
||||||
[_, path, line, column] = stackItem.match(regexNoFuncName)
|
;[_, path, line, column] = stackItem.match(regexNoFuncName)
|
||||||
}
|
}
|
||||||
|
|
||||||
const markdownLocation = path.substring(path.indexOf("MapComplete/src") + 11) + "#L" + line
|
const markdownLocation = path.substring(path.indexOf("MapComplete/src") + 11) + "#L" + line
|
||||||
|
|
|
@ -915,7 +915,7 @@ export class SvgToPdf {
|
||||||
| "poster_a3"
|
| "poster_a3"
|
||||||
| "poster_a2"
|
| "poster_a2"
|
||||||
| "current_view_a4"
|
| "current_view_a4"
|
||||||
|"current_view_a4_portrait"
|
| "current_view_a4_portrait"
|
||||||
| "current_view_a3_portrait"
|
| "current_view_a3_portrait"
|
||||||
| "current_view_a3_landscape",
|
| "current_view_a3_landscape",
|
||||||
PdfTemplateInfo
|
PdfTemplateInfo
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
{
|
{
|
||||||
"contributors": [
|
"contributors": [
|
||||||
{
|
{
|
||||||
"commits": 8533,
|
"commits": 8576,
|
||||||
"contributor": "Pieter Vander Vennet"
|
"contributor": "Pieter Vander Vennet"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"commits": 483,
|
"commits": 495,
|
||||||
"contributor": "Robin van der Linde"
|
"contributor": "Robin van der Linde"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -13,7 +13,7 @@
|
||||||
"contributor": "Tobias"
|
"contributor": "Tobias"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"commits": 40,
|
"commits": 41,
|
||||||
"contributor": "dependabot[bot]"
|
"contributor": "dependabot[bot]"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
|
@ -10815,6 +10815,10 @@
|
||||||
"if": "value=cycleways_and_roads",
|
"if": "value=cycleways_and_roads",
|
||||||
"then": "cycleways_and_roads - All infrastructure that someone can cycle over, accompanied with questions about this infrastructure"
|
"then": "cycleways_and_roads - All infrastructure that someone can cycle over, accompanied with questions about this infrastructure"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"if": "value=cyclist_waiting_aid",
|
||||||
|
"then": "cyclist_waiting_aid - Various pieces of infrastructure that aid cyclists while they wait at a traffic light."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"if": "value=defibrillator",
|
"if": "value=defibrillator",
|
||||||
"then": "defibrillator - A layer showing defibrillators which can be used in case of emergency. This contains public defibrillators, but also defibrillators which might need staff to fetch the actual device"
|
"then": "defibrillator - A layer showing defibrillators which can be used in case of emergency. This contains public defibrillators, but also defibrillators which might need staff to fetch the actual device"
|
||||||
|
@ -11219,6 +11223,14 @@
|
||||||
"if": "value=surveillance_camera",
|
"if": "value=surveillance_camera",
|
||||||
"then": "surveillance_camera - This layer shows surveillance cameras and allows a contributor to update information and add new cameras"
|
"then": "surveillance_camera - This layer shows surveillance cameras and allows a contributor to update information and add new cameras"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"if": "value=tactile_map",
|
||||||
|
"then": "tactile_map - Layer showing tactile maps, which can be used by visually impaired people to navigate the city."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"if": "value=tactile_model",
|
||||||
|
"then": "tactile_model - Layer showing tactile models, three-dimensional models of the surrounding area."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"if": "value=tertiary_education",
|
"if": "value=tertiary_education",
|
||||||
"then": "tertiary_education - Layer with all tertiary education institutes (ISCED:2011 levels 6,7 and 8)"
|
"then": "tertiary_education - Layer with all tertiary education institutes (ISCED:2011 levels 6,7 and 8)"
|
||||||
|
|
|
@ -767,6 +767,10 @@
|
||||||
"if": "value=cycleways_and_roads",
|
"if": "value=cycleways_and_roads",
|
||||||
"then": "<b>cycleways_and_roads</b> (builtin) - All infrastructure that someone can cycle over, accompanied with questions about this infrastructure"
|
"then": "<b>cycleways_and_roads</b> (builtin) - All infrastructure that someone can cycle over, accompanied with questions about this infrastructure"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"if": "value=cyclist_waiting_aid",
|
||||||
|
"then": "<b>cyclist_waiting_aid</b> (builtin) - Various pieces of infrastructure that aid cyclists while they wait at a traffic light."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"if": "value=defibrillator",
|
"if": "value=defibrillator",
|
||||||
"then": "<b>defibrillator</b> (builtin) - A layer showing defibrillators which can be used in case of emergency. This contains public defibrillators, but also defibrillators which might need staff to fetch the actual device"
|
"then": "<b>defibrillator</b> (builtin) - A layer showing defibrillators which can be used in case of emergency. This contains public defibrillators, but also defibrillators which might need staff to fetch the actual device"
|
||||||
|
@ -1171,6 +1175,14 @@
|
||||||
"if": "value=surveillance_camera",
|
"if": "value=surveillance_camera",
|
||||||
"then": "<b>surveillance_camera</b> (builtin) - This layer shows surveillance cameras and allows a contributor to update information and add new cameras"
|
"then": "<b>surveillance_camera</b> (builtin) - This layer shows surveillance cameras and allows a contributor to update information and add new cameras"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"if": "value=tactile_map",
|
||||||
|
"then": "<b>tactile_map</b> (builtin) - Layer showing tactile maps, which can be used by visually impaired people to navigate the city."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"if": "value=tactile_model",
|
||||||
|
"then": "<b>tactile_model</b> (builtin) - Layer showing tactile models, three-dimensional models of the surrounding area."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"if": "value=tertiary_education",
|
"if": "value=tertiary_education",
|
||||||
"then": "<b>tertiary_education</b> (builtin) - Layer with all tertiary education institutes (ISCED:2011 levels 6,7 and 8)"
|
"then": "<b>tertiary_education</b> (builtin) - Layer with all tertiary education institutes (ISCED:2011 levels 6,7 and 8)"
|
||||||
|
@ -13463,6 +13475,10 @@
|
||||||
"if": "value=cycleways_and_roads",
|
"if": "value=cycleways_and_roads",
|
||||||
"then": "cycleways_and_roads - All infrastructure that someone can cycle over, accompanied with questions about this infrastructure"
|
"then": "cycleways_and_roads - All infrastructure that someone can cycle over, accompanied with questions about this infrastructure"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"if": "value=cyclist_waiting_aid",
|
||||||
|
"then": "cyclist_waiting_aid - Various pieces of infrastructure that aid cyclists while they wait at a traffic light."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"if": "value=defibrillator",
|
"if": "value=defibrillator",
|
||||||
"then": "defibrillator - A layer showing defibrillators which can be used in case of emergency. This contains public defibrillators, but also defibrillators which might need staff to fetch the actual device"
|
"then": "defibrillator - A layer showing defibrillators which can be used in case of emergency. This contains public defibrillators, but also defibrillators which might need staff to fetch the actual device"
|
||||||
|
@ -13867,6 +13883,14 @@
|
||||||
"if": "value=surveillance_camera",
|
"if": "value=surveillance_camera",
|
||||||
"then": "surveillance_camera - This layer shows surveillance cameras and allows a contributor to update information and add new cameras"
|
"then": "surveillance_camera - This layer shows surveillance cameras and allows a contributor to update information and add new cameras"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"if": "value=tactile_map",
|
||||||
|
"then": "tactile_map - Layer showing tactile maps, which can be used by visually impaired people to navigate the city."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"if": "value=tactile_model",
|
||||||
|
"then": "tactile_model - Layer showing tactile models, three-dimensional models of the surrounding area."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"if": "value=tertiary_education",
|
"if": "value=tertiary_education",
|
||||||
"then": "tertiary_education - Layer with all tertiary education institutes (ISCED:2011 levels 6,7 and 8)"
|
"then": "tertiary_education - Layer with all tertiary education institutes (ISCED:2011 levels 6,7 and 8)"
|
||||||
|
@ -35195,6 +35219,10 @@
|
||||||
"if": "value=cycleways_and_roads",
|
"if": "value=cycleways_and_roads",
|
||||||
"then": "cycleways_and_roads - All infrastructure that someone can cycle over, accompanied with questions about this infrastructure"
|
"then": "cycleways_and_roads - All infrastructure that someone can cycle over, accompanied with questions about this infrastructure"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"if": "value=cyclist_waiting_aid",
|
||||||
|
"then": "cyclist_waiting_aid - Various pieces of infrastructure that aid cyclists while they wait at a traffic light."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"if": "value=defibrillator",
|
"if": "value=defibrillator",
|
||||||
"then": "defibrillator - A layer showing defibrillators which can be used in case of emergency. This contains public defibrillators, but also defibrillators which might need staff to fetch the actual device"
|
"then": "defibrillator - A layer showing defibrillators which can be used in case of emergency. This contains public defibrillators, but also defibrillators which might need staff to fetch the actual device"
|
||||||
|
@ -35599,6 +35627,14 @@
|
||||||
"if": "value=surveillance_camera",
|
"if": "value=surveillance_camera",
|
||||||
"then": "surveillance_camera - This layer shows surveillance cameras and allows a contributor to update information and add new cameras"
|
"then": "surveillance_camera - This layer shows surveillance cameras and allows a contributor to update information and add new cameras"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"if": "value=tactile_map",
|
||||||
|
"then": "tactile_map - Layer showing tactile maps, which can be used by visually impaired people to navigate the city."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"if": "value=tactile_model",
|
||||||
|
"then": "tactile_model - Layer showing tactile models, three-dimensional models of the surrounding area."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"if": "value=tertiary_education",
|
"if": "value=tertiary_education",
|
||||||
"then": "tertiary_education - Layer with all tertiary education institutes (ISCED:2011 levels 6,7 and 8)"
|
"then": "tertiary_education - Layer with all tertiary education institutes (ISCED:2011 levels 6,7 and 8)"
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue