diff --git a/.gitignore b/.gitignore index 073ca9257..d8e8f299c 100644 --- a/.gitignore +++ b/.gitignore @@ -49,3 +49,7 @@ error_changeset_* public/*.webmanifest public/assets/generated/ public/assets/langs/* + +android/ +dist-full/ +public/assets/icons/*.webp diff --git a/CHANGELOG.md b/CHANGELOG.md index da6367a08..7fb8a7df0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,117 @@ All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. +### [0.47.9](https://github.com/pietervdvn/mapcomplete/compare/v0.47.8...v0.47.9) (2024-11-07) + + +### Features + +* **filters:** show tags that are filtered on, deal with multi-answer tags to allow having this option with auto-filters ([69a6ec6](https://github.com/pietervdvn/mapcomplete/commits69a6ec6b0291bf1a5ec0bdcece605c7cf9f6ea0a)) + + +### Bug Fixes + +* better support for complicated regex tags ([b4817f7](https://github.com/pietervdvn/mapcomplete/commitsb4817f7a7faafffe716619a4d6908c013d58efd6)) +* build ([70612f1](https://github.com/pietervdvn/mapcomplete/commits70612f1c12ef69209205a29828694c16a9bbc177)) +* build by fixing licenses ([62936b9](https://github.com/pietervdvn/mapcomplete/commits62936b916b238f7ddf4edb841383d4e2cb1bf3da)) +* deal with dashes in the path ([5127609](https://github.com/pietervdvn/mapcomplete/commits51276091203d48cecb154271e69be0ce784ed01d)) +* fix build by having correct regextag.asJson() ([0dd96f4](https://github.com/pietervdvn/mapcomplete/commits0dd96f469b8ed7fd83da4543998b0b473bcc2206)) +* fix fediverse link ([3683780](https://github.com/pietervdvn/mapcomplete/commits3683780f9d19016ee0972cffb6ee55997a0b60c5)) +* hide items if the layer is disabled and favourites is enabled ([7bdd308](https://github.com/pietervdvn/mapcomplete/commits7bdd30879b870406cf5ebf3a23edfc3fbeb52a47)) +* increase timeout when opening a new POI ([e8e4ae1](https://github.com/pietervdvn/mapcomplete/commitse8e4ae1f47514b1b7769e701bdf5a7581c231aa8)) +* show favourites in loaded layers if favourites are enabled ([e65f61d](https://github.com/pietervdvn/mapcomplete/commitse65f61d2962eba8301afa51e27f0e085e8db2ff7)) +* when using Chronic, check the `aslong` condition before actually running instead of using it to reset the clock. ([10e9416](https://github.com/pietervdvn/mapcomplete/commits10e9416f8f1abe4cda334242821157bd7c486986)) + + +### Theme improvements + +* **education:** add images, move contact information up ([d77bb7e](https://github.com/pietervdvn/mapcomplete/commitsd77bb7e22525aef3b64ce3a9aa57a39351ebb441)) +* **memorial:** add filter on type of memorial, remove obsolete 'memorial:type=stolperstein' ([1415fcd](https://github.com/pietervdvn/mapcomplete/commits1415fcdfecb4be757ea9611b08a1b473e5d50be7)) +* **playgrounds:** don't show counts for small POI, only for playgrounds; make icons smaller ([f3335c9](https://github.com/pietervdvn/mapcomplete/commitsf3335c93711bd224ad3dfa611b95a40039596746)) +* **postboxes:** add contact info, add condition for post partner ([8fcc747](https://github.com/pietervdvn/mapcomplete/commits8fcc747370fab69e93fac2e00c1886261cb6e08f)) +* **postboxes:** add option to snap to wall and rendering, add "operator" to post boxes ([f7b5db9](https://github.com/pietervdvn/mapcomplete/commitsf7b5db9ec34676f834a3b2d8966649f09b34c1b1)) + +### [0.47.8](https://github.com/pietervdvn/mapcomplete/compare/v0.47.7...v0.47.8) (2024-11-01) + + +### Bug Fixes + +* fix uploading images in the 'notes' theme ([5fd0314](https://github.com/pietervdvn/mapcomplete/commits5fd03144080aa32fe500333b64575069e93e8b79)) + +### [0.47.7](https://github.com/pietervdvn/mapcomplete/compare/v0.47.6...v0.47.7) (2024-10-28) + + +### Features + +* add script to upload images to panoramax and remove 'imgur'-links ([4233bd7](https://github.com/pietervdvn/mapcomplete/commits4233bd7618e69e71c00ef027bbb4afc199c29fa9)) +* panoramax uploads in testmode are sent to a different sequence ([834b6b1](https://github.com/pietervdvn/mapcomplete/commits834b6b18ff985cd1a79e725af915e307525d221e)) +* remove possibility to load a custom theme via the hash, no longer necessary with a theme server ([a016a8f](https://github.com/pietervdvn/mapcomplete/commitsa016a8f771ca3cfb210b5f5f92b136a011d08543)) +* update update script ([d27c38d](https://github.com/pietervdvn/mapcomplete/commitsd27c38d0e48d653675ffa44bc3812e6f8e05f5f8)) +* upload to specified panoramax instance ([3df0f9c](https://github.com/pietervdvn/mapcomplete/commits3df0f9ca94f8df6314322359edbfb4276c971419)) + + +### Bug Fixes + +* add missing import ([9bf013c](https://github.com/pietervdvn/mapcomplete/commits9bf013cd47468c88bbc9ad90376f9240d0e921c0)) +* attempt to fix build ([571791d](https://github.com/pietervdvn/mapcomplete/commits571791d06349cc9a409ddede0737f04824186210)) +* attempt to fix panoramax upload, see [#2202](https://github.com/pietervdvn/MapComplete/issues/2202) ([07c1cc0](https://github.com/pietervdvn/mapcomplete/commits07c1cc0beea816d4f328adaa9ac15d32676380c4)) +* bing layer, see [#2222](https://github.com/pietervdvn/MapComplete/issues/2222) ([51608fb](https://github.com/pietervdvn/mapcomplete/commits51608fb22348a79b7459a7d3558202edb68ec773)) +* build ([01c8d63](https://github.com/pietervdvn/mapcomplete/commits01c8d63943c0df74892e2ae02720a469bf3bdb89)) +* don't index 'all_streets' ([c1c2390](https://github.com/pietervdvn/mapcomplete/commitsc1c2390694ab145524dae96cd7dff5a866e4b865)) +* fix [#2212](https://github.com/pietervdvn/MapComplete/issues/2212). ([91f5c8f](https://github.com/pietervdvn/mapcomplete/commits91f5c8f1669a448c36876e0fda374165f5b60886)) +* fix [#2213](https://github.com/pietervdvn/MapComplete/issues/2213), remove image-license from usersettings.json ([90a34ab](https://github.com/pietervdvn/mapcomplete/commits90a34ab31f23be942e27ba4cbcd60528c591f7df)) +* fix [#2222](https://github.com/pietervdvn/MapComplete/issues/2222), restore global background layers which were not included in the connect-src ([905f176](https://github.com/pietervdvn/mapcomplete/commits905f1768f2b994fa83af31224447c96003ab70ce)) +* **panoramax:** stabilize loading images ([8480f94](https://github.com/pietervdvn/mapcomplete/commits8480f9417c6fa11ab21bc06d15e4a5a5baeaa1f4)) +* see [#2212](https://github.com/pietervdvn/MapComplete/issues/2212): actually save custom themes as visited ([9427083](https://github.com/pietervdvn/mapcomplete/commits9427083939bb6958b07e6fd48f5356101f06e681)) +* special quicksearch for osmcha ([01cfc5f](https://github.com/pietervdvn/mapcomplete/commits01cfc5fe4db17362b3e3317f0eba7e0bf954a689)) +* translations ([d10f894](https://github.com/pietervdvn/mapcomplete/commitsd10f89469a7de5e91bc613ae4527054c502b966a)) +* translations ([ab8835b](https://github.com/pietervdvn/mapcomplete/commitsab8835b279a9c3aecf04a367464cc1bde25ac1d8)) +* Use alternative way to read coordinates from exif data ([6257c24](https://github.com/pietervdvn/mapcomplete/commits6257c2415a6fff2859168bb671f54e700f0b3152)) +* use popup when in an iframe ([63162c5](https://github.com/pietervdvn/mapcomplete/commits63162c58e147aaf9c1c4c77d5187b13aaa8cf13a)) + + +### Theme improvements + +* **bike_parking:** add lean_and_stick type ([9e1bd7f](https://github.com/pietervdvn/mapcomplete/commits9e1bd7fa9d9e3b2d5242fbe7b073234b7fa04cbd)) +* **bikeparking:** update text of access=private, sync translation ([4ce5a40](https://github.com/pietervdvn/mapcomplete/commits4ce5a40eb4b3b3d350873ff2bf9a2a7d9b3a5d15)) +* **cycle_infra:** add minzoom for all layers ([94bc478](https://github.com/pietervdvn/mapcomplete/commits94bc478b9e5cfdbbb9e062b3950433984bfd752b)) +* **items_with_image:** include 'panoramax' and 'mapillary' as tags for items with image, fix [#2225](https://github.com/pietervdvn/MapComplete/issues/2225) ([899312b](https://github.com/pietervdvn/mapcomplete/commits899312ba7cb2b9b00fc8c4483ffe57955f08cdf2)) +* **shops:** support `shop=sports` together with 'shop=sport' ([98470ef](https://github.com/pietervdvn/mapcomplete/commits98470ef8ac1c38cb54cdbae1bd07cbab825be795)) +* **velopark:** hide NMBS-maproulette items ([0a0d0a1](https://github.com/pietervdvn/mapcomplete/commits0a0d0a15cb546dd390bd2c388fafb43d13bda327)) +* **velopark:** properly hide NMBS-maproulette items with a filter ([4840816](https://github.com/pietervdvn/mapcomplete/commits4840816b1768cd3c4d43ef01d07c852cd32f1d3e)) + +### [0.47.6](https://github.com/pietervdvn/mapcomplete/compare/v0.47.5...v0.47.6) (2024-10-15) + + +### Features + +* remove 'noteImportLayer', they are not used enough for the big performance and maintenance impact they have ([e35df65](https://github.com/pietervdvn/mapcomplete/commitse35df654d7f2a0ef7c12c0ceef27cb3a1a7a1027)) + + +### Bug Fixes + +* add error reporting when image upload fails, see [#2202](https://github.com/pietervdvn/MapComplete/issues/2202) ([368d785](https://github.com/pietervdvn/mapcomplete/commits368d7857a055c92109ec6d5155078aabaef230ac)) +* add nvm path ([7d83cb1](https://github.com/pietervdvn/mapcomplete/commits7d83cb1a7fdaad23d4a1343edb75145f60bf771f)) +* add spaces to opening hours picker for PH ([8a8b2e2](https://github.com/pietervdvn/mapcomplete/commits8a8b2e20aebe8019af86aca02e6bcc4d90896b4f)) +* attempt to workaround for [#2202](https://github.com/pietervdvn/MapComplete/issues/2202) ([66465fd](https://github.com/pietervdvn/mapcomplete/commits66465fdc9893fa4c3f0c1f5b8279a51c33a1e407)) +* bug in error reporting ([4794032](https://github.com/pietervdvn/mapcomplete/commits4794032e49a4b5b2d3fdceac8a2b8a75994e94ea)) +* build: add generated file which is needed for some steps ([016908f](https://github.com/pietervdvn/mapcomplete/commits016908fb940a65dc863cddca5be8d681b9370c49)) +* explicitly use version number in update script ([977c6ff](https://github.com/pietervdvn/mapcomplete/commits977c6ff9fb30267f47c39aa55fb0a0f2e6028564)) +* fix [#2207](https://github.com/pietervdvn/MapComplete/issues/2207) ([ca17d3d](https://github.com/pietervdvn/mapcomplete/commitsca17d3da1b772e4976414b54406816a68ef0e175)) +* fix [#2209](https://github.com/pietervdvn/MapComplete/issues/2209), remove lingering incorrect translations ([fbcbdc5](https://github.com/pietervdvn/mapcomplete/commitsfbcbdc571edd848106885f9148e473c816990a67)) +* fix loading of preferences ([7060f7c](https://github.com/pietervdvn/mapcomplete/commits7060f7cf6cac807877efb8babc8586eabfc79351)) +* remove truly unrecoverable changes from report logging ([f2b681c](https://github.com/pietervdvn/mapcomplete/commitsf2b681caa59a419c4c217e705ad6d1a7ac271128)) +* reset translations ([6a4166f](https://github.com/pietervdvn/mapcomplete/commits6a4166febb5ce386beac8bbb06cd7527b90c6a12)) +* set max image size (100 MB) ([cc6ce3c](https://github.com/pietervdvn/mapcomplete/commitscc6ce3c271475759a7a2062b1ca7e4668ca4a230)) +* some fixes to studio ([c795e74](https://github.com/pietervdvn/mapcomplete/commitsc795e74037ca1aa222fdba6eb2cc4a32a78a8eb7)) +* tests ([c95999b](https://github.com/pietervdvn/mapcomplete/commitsc95999b50b84d294476783573baf21d46318cb16)) + + +### Theme improvements + +* don't do face blurring for some layers (artwork, memorials, ghost_bikes) ([15176a1](https://github.com/pietervdvn/mapcomplete/commits15176a16825d52e26a52f92567cf3977382ce213)) +* **food:** fix vegan questions, show vegan/vegetarian badge if `=only`, fix shops layer ([f8ef32f](https://github.com/pietervdvn/mapcomplete/commitsf8ef32f123340cb9db0060cdca7f4622cd55c228)) + ### [0.47.5](https://github.com/pietervdvn/mapcomplete/compare/v0.47.4...v0.47.5) (2024-10-08) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 36b4cb00c..14fa619a6 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -9,6 +9,7 @@ There are multiple ways to contribute: on [the Weblate website](https://hosted.weblate.org/projects/mapcomplete/) - If you encounter a bug, the [issue tracker](https://github.com/pietervdvn/MapComplete/issues) is the place to be - A good start to contribute is to create a single map layer showing features which interest you. Read more about [making your own theme](/Docs/Making_Your_Own_Theme.md). +- Feel free to hop in [our chat channel on matrix](https://app.element.io/#/room/#MapComplete:matrix.org) - If you want to improve a theme, create a new theme, spot a typo in the repo... the best way is to open a pull request. People who stick around and contribute in a meaningful way, _might_ be granted write access to the repository (except the branches *master* and *develop*). This is diff --git a/Cleanup.osc b/Cleanup.osc deleted file mode 100644 index 8216e09ff..000000000 --- a/Cleanup.osc +++ /dev/null @@ -1,1122 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Docs/BuiltinIndex.md b/Docs/BuiltinIndex.md index ac37d036a..dff8e2c2a 100644 --- a/Docs/BuiltinIndex.md +++ b/Docs/BuiltinIndex.md @@ -10,7 +10,6 @@ - aerialway - ambulancestation - animal_shelter - - artwork - assembly_point - assisted_repair - atm @@ -41,6 +40,7 @@ - clock - crossings - cycleways_and_roads + - cyclist_waiting_aid - defibrillator - dentist - disaster_response @@ -59,7 +59,6 @@ - fitness_station - food - food_courts - - ghost_bike - ghostsign - governments - grave @@ -74,7 +73,6 @@ - lighthouse - love_hotel - map - - memorial - mountain_rescue - nature_reserve - observation_tower @@ -97,6 +95,7 @@ - reception_desk - recycling - route_marker + - school - shelter - shops - shower @@ -111,6 +110,8 @@ - street_lamps - stripclub - surveillance_camera + - tactile_map + - tactile_model - ticket_machine - ticket_validator - toilet @@ -214,11 +215,12 @@ - physiotherapist - playground - recycling - - school - shops - souvenir_coin - souvenir_note - sports_centre + - tactile_map + - tactile_model - tertiary_education - vending_machine - veterinary @@ -244,7 +246,6 @@ - kindergarten_childcare - physiotherapist - recycling - - school - shops - sports_centre - tertiary_education @@ -271,7 +272,6 @@ - kindergarten_childcare - physiotherapist - recycling - - school - shops - sports_centre - tertiary_education @@ -284,6 +284,12 @@ - physiotherapist - tool_library + ### images_no_blur + + - artwork + - ghost_bike + - memorial + ### wikipedia - artwork @@ -316,6 +322,8 @@ - love_hotel - pharmacy - police + - postoffices + - school - stripclub - tool_library - tourism_accomodation @@ -524,6 +532,10 @@ - climbing_gym + ### indoor + + - clock + ### all_tags - cycle_highways diff --git a/Docs/BuiltinQuestions.md b/Docs/BuiltinQuestions.md index ecb607582..bd5bd9bfc 100644 --- a/Docs/BuiltinQuestions.md +++ b/Docs/BuiltinQuestions.md @@ -16,6 +16,7 @@ This is a special layer - data is not sourced from OpenStreetMap 1. [Supported attributes](#supported-attributes) - [questions](#questions) - [images](#images) + - [images_no_blur](#images_no_blur) - [mapillary](#mapillary) - [export_as_gpx](#export_as_gpx) - [export_as_geojson](#export_as_geojson) @@ -66,6 +67,7 @@ This is a special layer - data is not sourced from OpenStreetMap - [shower](#shower) - [preset_description](#preset_description) - [brand](#brand) + - [indoor](#indoor) 2. [Filters](#filters) ## Supported attributes @@ -106,6 +108,7 @@ This is a special layer - data is not sourced from OpenStreetMap | [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) | | [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) | | [brand](https://wiki.openstreetmap.org/wiki/Key:brand) | [string](../SpecialInputElements.md#string) | | +| [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 Show the questions block at this location @@ -117,6 +120,11 @@ 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_ *{image_carousel()}{image_upload()}* +### images_no_blur +Same as `images`, but uploaded request to disable blurring to the panoramax server +_This tagrendering has no question and is thus read-only_ +*{image_carousel()}{image_upload(,,,true)}* + ### mapillary Shows a button to open Mapillary on this location _This tagrendering has no question and is thus read-only_ @@ -534,6 +542,13 @@ The question is `Is {title()} part of a bigger brand?` - *Not part of a bigger brand* is shown if with nobrand=yes +### indoor + +The question is `Is this object located indoors?` + + - *This object is located indoors* is shown if with indoor=yes + - *This object is located outdoors* is shown if with indoor=no + ## Filters | id | question | osmTags | diff --git a/Docs/ELI-overview.md b/Docs/ELI-overview.md index e9c22322d..0bfae3933 100644 --- a/Docs/ELI-overview.md +++ b/Docs/ELI-overview.md @@ -203,6 +203,7 @@ This table gives a summary of ids, names and other metainformation. [See the onl | nrw_idop_wms | NRW iDOP | photo | | | | nrw_ortho_wms | NRW Orthophoto (RGB) | photo | ⭐ | | | nrw_vdop_wms | NRW vDOP | photo | | | +| Saarland-DOP20 | Saarland DOP20 | photo | ⭐ | © Saarländer Landesamt für Vermessung, Geoinformation und Landentwicklung - dl-de/by-2-0 (https://www.govdata.de/dl-de/by-2-0) | | GEOSN-DOP-RGB | Saxony latest aerial imagery | photo | ⭐ | Staatsbetrieb Geobasisinformation und Vermessung Sachsen | | LSA-DOP20 | © GeoBasis-DE/LVermGeo LSA, DOP20 | photo | ⭐ | © GeoBasis-DE/LVermGeo LSA | | GEOSN-WebAtlas | Saxony WebAtlasSN | map | | Staatsbetrieb Geobasisinformation und Vermessung Sachsen | @@ -212,6 +213,7 @@ This table gives a summary of ids, names and other metainformation. [See the onl | GEOSN-DOP-CIR | Saxony latest aerial imagery infrared | photo | | Staatsbetrieb Geobasisinformation und Vermessung Sachsen | | GEOSN-DTK | Saxony topographic map | map | | Staatsbetrieb Geobasisinformation und Vermessung Sachsen | | Stuttgart-latest | Stuttgart Luftbild Stadtmessungsamt | photo | ⭐ | | +| Thuringia-DOP20 | Thüringen DOP20 | photo | ⭐ | © Thüringer Landesamt für Bodenmanagement und Geoinformation - dl-de/by-2-0 (https://www.govdata.de/dl-de/by-2-0) | | Worms-2003 | Worms 2003 | historicphoto | | © Nibelungenstadt Worms | | Worms-2008 | Worms 2008 | historicphoto | | © Nibelungenstadt Worms | | Worms-2012 | Worms 2012 | historicphoto | | © Nibelungenstadt Worms | @@ -391,7 +393,8 @@ This table gives a summary of ids, names and other metainformation. [See the onl | Surrey-Air_Survey | Surrey Air Survey | photo | | | | dgu-dof-2011 | dgu.hr: Croatia 2011 Aerial imagery | historicphoto | | Sadrži podatke Državne geodetske uprave | | dgu-dof-2014-2016 | dgu.hr: Croatia 2014-2016 Aerial imagery | historicphoto | | Sadrži podatke Državne geodetske uprave | -| dgu-dof-2019-2020 | dgu.hr: Croatia 2019-2020 aerial imagery | photo | ⭐ | Sadrži podatke Državne geodetske uprave | +| dgu-dof-2019-2020 | dgu.hr: Croatia 2019-2020 aerial imagery | historicphoto | | Sadrži podatke Državne geodetske uprave | +| dgu-dof-2021-2022 | dgu.hr: Croatia 2021-2022 aerial imagery | photo | ⭐ | Sadrži podatke Državne geodetske uprave | | dgu-hok | dgu.hr: HOK | map | | Sadrži podatke Državne geodetske uprave | | dgu-topo-100 | dgu.hr: Topo 100 | map | | Sadrži podatke Državne geodetske uprave | | dgu-topo-200 | dgu.hr: Topo 200 | map | | Sadrži podatke Državne geodetske uprave | @@ -439,6 +442,8 @@ This table gives a summary of ids, names and other metainformation. [See the onl | LV_ORTOFOTO_C5 | Orthophoto (2013-2015), 1:5000, Latvia | photo | | LĢIA (Latvian Geospatial Information Agency) provided these open data (CC0). WMS service is provided by LVM (Latvian State Forestry). | | LV_ORTOFOTO_C6 | Orthophoto (2016–2018), 1:5000, Latvia | photo | ⭐ | LĢIA (Latvian Geospatial Information Agency) provided these open data (CC0). WMS service is provided by LVM (Latvian State Forestry). | | LV_TERRAIN_LIDAR_LGIA | Digital terrain model (2013–2019), LĢIA, Latvia | elevation | | LĢIA (Latvian Geospatial Information Agency) provided these open data (CC0). WMS service is provided by LVM (Latvian State Forestry). | +| German-1944_Aerial | German Aerial Imagery (1944) | historicphoto | | © Simpals SRL, Bundesarchiv - Stabsbildabteilung | +| American-1966_Aerial | American Aerial Imagery (1966) | historicphoto | | © Simpals SRL, U.S. Geological Survey | | Actueel_orthoHR_WMTS | PDOK aerial imagery Beeldmateriaal.nl 8cm (WMTS) latest | photo | ⭐ | Kadaster / Beeldmateriaal.nl, CC BY 4.0 | | kartverket-topo4 | Kartverket topo | map | | © Kartverket | | kartverket-ok-1st | Kartverket Economic Maps (historic) | historicmap | | © Kartverket | @@ -485,7 +490,7 @@ This table gives a summary of ids, names and other metainformation. [See the onl | ORTOS_DGT_2018_WMS | Orthophotos of mainland Portugal - 25cm - 2018 (DGT) | photo | ⭐ | Informação geográfica cedida pela Direção-Geral do Território | | ORTOS_DGRF_2004_06 | Orthophotos of mainland Portugal - 50cm - 2004-2006 (DGT) | historicphoto | | Informação geográfica cedida pela Direção-Geral do Território | | ORTOS_DGT_2021_RGB | Orthophotos of the northern portion of mainland Portugal - 25cm - 2021 (DGT) | photo | ⭐ | Informação geográfica cedida pela Direção-Geral do Território | -| ORTOSAT_DGT_2023_RGB | OrtoSat - Portugal Central - 30cm - 2023 (DGT) | photo | ⭐ | Informação geográfica cedida pela Direção-Geral do Território | +| ORTOSAT_DGT_2023_RGB | OrtoSat - Portugal Continental - 30cm - 2023 (DGT) | photo | | Informação geográfica cedida pela Direção-Geral do Território | | rs-osm-official-cyr | Official Serbia OSM (cyr) | osmbasedmap | | openstreetmap.rs | | rs-osm-official-lat | Official Serbia OSM (lat) | osmbasedmap | | openstreetmap.rs | | lantmateriet-orto1960 | Lantmäteriet Historic Orthophoto 1960 | historicphoto | | © Lantmäteriet, CC0 | @@ -533,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_20230618 | CBJ Aerial Imagery (June 2023) | photo | | City and Borough of Juneau | | 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_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 | @@ -553,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 | | 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 | -| 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 | | Roseville_CA_2023 | City of Roseville Orthoimagery (2023) | historicphoto | | 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 | -| San_Bernardino_CA_2023 | San Bernardino County Orthoimagery (2023) | photo | | San Bernardino County | -| San_Francisco_CA_2022 | San Francisco Orthoimagery (2022) | historicphoto | | City and County of San Francisco | -| San_Francisco_CA_2022_CIR | San Francisco Orthoimagery CIR (2022) | historicphoto | | City and County of San Francisco | -| San_Francisco_Ortho_2023 | San Francisco Orthoimagery (2023) | photo | | City and County of San Francisco | +| San_Bernardino_CA_2023 | San Bernardino County Orthoimagery (2023) | historicphoto | | San Bernardino County | +| San_Bernardino_CA_2024 | San Bernardino County Orthoimagery (2024) | photo | | San Bernardino County | +| San_Francisco_2022 | San Francisco Orthoimagery (2022) | historicphoto | | 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 | | 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_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 | | 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 | @@ -574,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-2022 | Mesa County GIS Valleywide 2022 | 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 | | 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 | @@ -749,7 +763,8 @@ This table gives a summary of ids, names and other metainformation. [See the onl | Franklin_OH_2021 | Franklin County Orthoimagery (2021) | photo | | Franklin County Auditor, State of Ohio | | Franklin_OH_2023 | Franklin County Orthoimagery (2023) | photo | | Franklin County Auditor, State of Ohio | | Greene_OH_2022 | Greene County Orthoimagery (2022) | historicphoto | | Greene County, State of Ohio | -| Greene_OH_2023 | Greene County Orthoimagery (2023) | photo | | Greene County, State of Ohio | +| Greene_OH_2023 | Greene County Orthoimagery (2023) | historicphoto | | Greene County, State of Ohio | +| Greene_OH_2024 | Greene County Orthoimagery (2024) | photo | | Greene County, State of Ohio | | Licking_OH_2023 | Licking County Orthoimagery (2023) | photo | | Licking County, State of Ohio | | Lorain_OH_2024 | Lorain County Orthoimagery (2024) | photo | | Lorain County, State of Ohio | | Lucas_OH_2023 | Lucas County Orthoimagery (2023) | photo | | Lucas County, State of Ohio | @@ -812,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_Basemap | Suan Juan County Basemap | map | | San Juan 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 | | 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 | @@ -839,6 +855,7 @@ This table gives a summary of ids, names and other metainformation. [See the onl | LINZ_Cyclone_Gabrielle_Hawkes_Bay | LINZ Cyclone Gabrielle – Hawke's Bay | photo | ⭐ | Sourced from LINZ CC-BY 4.0 | | LINZ_NZ_Aerial_Imagery | LINZ NZ Aerial Imagery | photo | ⭐ | Sourced from LINZ CC-BY 4.0 | | LINZ_Auckland_2010 | LINZ Auckland 2010-2012 | historicphoto | | Sourced from LINZ CC-BY 4.0 | +| LINZ_Auckland_2023 | LINZ Auckland 2023 | photo | ⭐ | Sourced from LINZ CC-BY 4.0 | | LINZ_Bay_of_Plenty_2014 | LINZ Bay of Plenty 2014-2015 | historicphoto | | Sourced from LINZ CC-BY 4.0 | | LINZ_Christchurch_2015 | LINZ Christchurch 2015-2016 | historicphoto | | Sourced from LINZ CC-BY 4.0 | | LINZ_Hamilton_2016 | LINZ Hamilton 2016-2017 | historicphoto | | Sourced from LINZ CC-BY 4.0 | @@ -866,16 +883,7 @@ This table gives a summary of ids, names and other metainformation. [See the onl | rio2019 | Rio Mosaico 2019 | photo | ⭐ | Instituto Pereira Passos - Prefeitura da Cidade do Rio de Janeiro | | rio2022 | Rio Mosaico 2022 | photo | | Instituto Pereira Passos - Prefeitura da Cidade do Rio de Janeiro | | jaragua-do-sul-2020 | Jaraguá do Sul Ortomosaico 2020 | photo | | Prefeitura de Jaraguá do Sul, SC | -| cyclosm | CyclOSM | osmbasedmap | | Rendering: CyclOSM (hosted by OpenStreetMap France) © Map data OpenStreetMap contributors | -| EsriWorldImagery | Esri World Imagery | photo | | Terms & Feedback | -| EsriWorldImageryClarity | Esri World Imagery (Clarity) Beta | photo | | Terms & Feedback | -| Mapbox | Mapbox Satellite | photo | | Terms & Feedback | -| OpenAerialMapMosaic | OpenAerialMap Mosaic, by Kontur.io | photo | | | -| osmfr-basque | OpenStreetMap (Basque Style) | osmbasedmap | | Tiles © OpenStreetMap France, data © OpenStreetMap contributors, ODbL | -| osmfr-breton | OpenStreetMap (Breton Style) | osmbasedmap | | Tiles © OpenStreetMap France, data © OpenStreetMap contributors, ODbL | -| osmfr | OpenStreetMap (French Style) | osmbasedmap | | Tiles © cquest@Openstreetmap France, data © OpenStreetMap contributors, ODBL | -| HDM_HOT | OpenStreetMap (HOT Style) | osmbasedmap | | © OpenStreetMap contributors, tiles courtesy of Humanitarian OpenStreetMap Team | -| osmfr-occitan | OpenStreetMap (Occitan Style) | osmbasedmap | | Tiles © OpenStreetMap France, data © OpenStreetMap contributors, ODbL | +| UY-2019-orthophotos | Uruguay IDE.uy Ortofotos 2019 | photo | ⭐ | AGESIC - Agencia de Gobierno Electrónico y Sociedad de la Información y del Conocimiento | diff --git a/Docs/Layers/artwork.md b/Docs/Layers/artwork.md index 58616f2fd..10471656c 100644 --- a/Docs/Layers/artwork.md +++ b/Docs/Layers/artwork.md @@ -13,7 +13,7 @@ An open map of statues, busts, graffitis and other artwork all over the world 2. [Presets](#presets) 3. [Basic tags for this layer](#basic-tags-for-this-layer) 4. [Supported attributes](#supported-attributes) - - [images](#images) + - [images_no_blur](#images_no_blur) - [artwork-artwork_type](#artwork-artwork_type) - [artwork-artist-wikidata](#artwork-artist-wikidata) - [artwork-artist_name](#artwork-artist_name) @@ -84,10 +84,10 @@ Elements must match the expression ** [inscription](https://wiki.openstreetmap.org/wiki/Key:inscription) | [text](../SpecialInputElements.md#text) | | | [historic](https://wiki.openstreetmap.org/wiki/Key:historic) | Multiple choice | [memorial](https://wiki.openstreetmap.org/wiki/Tag:historic%3Dmemorial) [](https://wiki.openstreetmap.org/wiki/Tag:historic%3D) | -### 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 +### images_no_blur +Same as `images`, but uploaded request to disable blurring to the panoramax server _This tagrendering has no question and is thus read-only_ -*{image_carousel()}{image_upload()}* +*{image_carousel()}{image_upload(,,,true)}* ### artwork-artwork_type @@ -157,7 +157,7 @@ This tagrendering has labels The question is `Does this artwork serve as a memorial?` - *This artwork also serves as a memorial* is shown if with historic=memorial - - *This artwork does not serve as a bench* is shown if with historic= + - *This artwork does not serve as a memorial* is shown if with historic= ### memorial-type @@ -362,6 +362,25 @@ This tagrendering has labels | artwork-artwork_type.12 | Tilework | artwork_type=tilework | | 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) diff --git a/Docs/Layers/artwork_on_wall.md b/Docs/Layers/artwork_on_wall.md index 7a78a168f..25ad7f9a9 100644 --- a/Docs/Layers/artwork_on_wall.md +++ b/Docs/Layers/artwork_on_wall.md @@ -14,7 +14,7 @@ An open map of statues, busts, graffitis and other artwork all over the world 2. [Basic tags for this layer](#basic-tags-for-this-layer) 3. [Supported attributes](#supported-attributes) - [historic_or_not](#historic_or_not) - - [images](#images) + - [images_no_blur](#images_no_blur) - [artwork-artwork_type](#artwork-artwork_type) - [artwork-artist-wikidata](#artwork-artist-wikidata) - [artwork-artist_name](#artwork-artist_name) @@ -87,10 +87,10 @@ The question is `Is this artwork a historic advertisement?` - *This artwork is a historic advertisement* is shown if with historic=advertising - *This artwork is not a historic advertisement* is shown if with historic= -### 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 +### images_no_blur +Same as `images`, but uploaded request to disable blurring to the panoramax server _This tagrendering has no question and is thus read-only_ -*{image_carousel()}{image_upload()}* +*{image_carousel()}{image_upload(,,,true)}* ### artwork-artwork_type @@ -160,7 +160,7 @@ This tagrendering has labels The question is `Does this artwork serve as a memorial?` - *This artwork also serves as a memorial* is shown if with historic=memorial - - *This artwork does not serve as a bench* is shown if with historic= + - *This artwork does not serve as a memorial* is shown if with historic= ### memorial-type @@ -365,6 +365,25 @@ This tagrendering has labels | artwork-artwork_type.12 | Tilework | artwork_type=tilework | | 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) diff --git a/Docs/Layers/bike_cleaning.md b/Docs/Layers/bike_cleaning.md index b8d706d04..b21a901b1 100644 --- a/Docs/Layers/bike_cleaning.md +++ b/Docs/Layers/bike_cleaning.md @@ -15,6 +15,8 @@ A layer showing facilities where one can clean their bike - [images](#images) - [bike_cleaning-service_bicycle_cleaning_charge](#bike_cleaning-service_bicycle_cleaning_charge) - [bike_cleaning-charge](#bike_cleaning-charge) + - [automated](#automated) + - [self_service](#self_service) - [leftover-questions](#leftover-questions) - [move-button](#move-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: - amenity=bicycle_wash - - amenity=bike_wash - service:bicycle:cleaning=yes - service:bicycle:cleaning=diy -[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 @@ -50,6 +51,8 @@ Elements must match **any** of the following expressions: -----|-----|----- | | [service:bicycle:cleaning:charge](https://wiki.openstreetmap.org/wiki/Key:service:bicycle:cleaning:charge) | [string](../SpecialInputElements.md#string) | | | [charge](https://wiki.openstreetmap.org/wiki/Key:charge) | [string](../SpecialInputElements.md#string) | | +| [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) | +| [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 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 service:bicycle:cleaning:fee=no - *Free to use* is shown if with service:bicycle:cleaning:fee=yes & 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 @@ -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 fee=no - *There is a fee to use this cleaning service* is shown if with fee=yes -This tagrendering is only visible in the popup if the following condition is met: amenity=bike_wash | amenity=bicycle_wash +This tagrendering is only visible in the popup if the following condition is met: amenity=bicycle_wash + +### automated + +The question is `Is this bicycle cleaning service automated?` + + - *This is a manual bike washing station* is shown if with automated=no + - *This is an automated bike wash* is shown if with automated=yes + +This tagrendering is only visible in the popup if the following condition is met: amenity=bicycle_wash + +### self_service + +The question is `Is this cleaning service self-service?` + + - *This cleaning service is self-service* is shown if with self_service=yes + - *This cleaning service is operated by an employee* is shown if with self_service=no + +This tagrendering is only visible in the popup if the following condition is met: amenity=bicycle_wash ### leftover-questions diff --git a/Docs/Layers/bike_parking.md b/Docs/Layers/bike_parking.md index 4ed03e6d3..6dc851a3d 100644 --- a/Docs/Layers/bike_parking.md +++ b/Docs/Layers/bike_parking.md @@ -62,7 +62,7 @@ Elements must match the expression ** [bicycle_parking](https://wiki.openstreetmap.org/wiki/Key:bicycle_parking) | [string](../SpecialInputElements.md#string) | [stands](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dstands) [safe_loops](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dsafe_loops) [wall_loops](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dwall_loops) [handlebar_holder](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dhandlebar_holder) [rack](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Drack) [two_tier](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dtwo_tier) [shed](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dshed) [bollard](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dbollard) [floor](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dfloor) [lockers](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dlockers) | +| [bicycle_parking](https://wiki.openstreetmap.org/wiki/Key:bicycle_parking) | [string](../SpecialInputElements.md#string) | [stands](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dstands) [safe_loops](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dsafe_loops) [wall_loops](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dwall_loops) [handlebar_holder](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dhandlebar_holder) [rack](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Drack) [two_tier](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dtwo_tier) [shed](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dshed) [bollard](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dbollard) [floor](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dfloor) [lockers](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dlockers) [lean_and_stick](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dlean_and_stick) | | [location](https://wiki.openstreetmap.org/wiki/Key:location) | Multiple choice | [underground](https://wiki.openstreetmap.org/wiki/Tag:location%3Dunderground) [surface](https://wiki.openstreetmap.org/wiki/Tag:location%3Dsurface) [rooftop](https://wiki.openstreetmap.org/wiki/Tag:location%3Drooftop) | | [covered](https://wiki.openstreetmap.org/wiki/Key:covered) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:covered%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:covered%3Dno) | | [capacity](https://wiki.openstreetmap.org/wiki/Key:capacity) | [nat](../SpecialInputElements.md#nat) | | @@ -98,6 +98,7 @@ The question is `What is the type of this bicycle parking?` - *Bollard* is shown if with bicycle_parking=bollard - *An area on the floor which is marked for bicycle parking* is shown if with bicycle_parking=floor - *A locker - the bicycles are enclosed completely individually or with a few bicycles together. The locker is too small to fit a person standing..* is shown if with bicycle_parking=lockers + - *A lean-to bracket with possibility to use a lock through eyelet. The seat tube can be held by the stand by an anchor* is shown if with bicycle_parking=lean_and_stick ### Underground? @@ -128,7 +129,7 @@ The question is `Who can use this bicycle parking?` - *Publicly accessible* is shown if with access=yes - *Access is primarily for visitors to a business* is shown if with access=customers - *Access is limited to members of a school, company or organisation* is shown if with access=members - - *Access is limited to members of a school, company or organisation* is shown if with access=private + - *Private bicycle parking which is never available to the public, also not via a membership fee* is shown if with access=private ### fee diff --git a/Docs/Layers/bike_shop.md b/Docs/Layers/bike_shop.md index 0d8bff4a7..d6b539c3f 100644 --- a/Docs/Layers/bike_shop.md +++ b/Docs/Layers/bike_shop.md @@ -434,7 +434,7 @@ The question is `Does this shop sell bikes?` - *This shop sells new bikes* is shown if with service:bicycle:retail=yes - *This shop doesn't sell new bikes* is shown if with service:bicycle:retail=no -This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=diy | shop=doityourself | service:bicycle:retail~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself | service:bicycle:retail~.+ ### bike_second_hand @@ -455,7 +455,7 @@ The question is `Does this shop repair bikes?` - *This shop only repairs bikes bought here* is shown if with service:bicycle:repair=only_sold - *This shop only repairs bikes of a certain brand* is shown if with service:bicycle:repair=brand -This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ +This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ ### bicycle_rental @@ -464,7 +464,7 @@ The question is `Does this shop rent out bikes?` - *This shop rents out bikes* is shown if with service:bicycle:rental=yes - *This shop doesn't rent out bikes* is shown if with service:bicycle:rental=no -This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ ### bicycle-types @@ -586,7 +586,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 service:bicycle:cleaning:fee=no - *Free to use* is shown if with service:bicycle:cleaning:fee=yes & 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~.+ ### internet diff --git a/Docs/Layers/clock.md b/Docs/Layers/clock.md index 03bb9a434..fd2b5f496 100644 --- a/Docs/Layers/clock.md +++ b/Docs/Layers/clock.md @@ -6,6 +6,7 @@ Layer with public clocks - 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, mounted directly on a wall` snaps to this layer (clock.presets[2]) ## Table of contents @@ -16,6 +17,7 @@ Layer with public clocks - [images](#images) - [support](#support) - [display](#display) + - [indoor](#indoor) - [visibility](#visibility) - [date](#date) - [thermometer](#thermometer) @@ -40,6 +42,7 @@ The following options to create new points are included: - **a clock** which has the following tags:amenity=clock - **a wall-mounted clock** which has the following tags:amenity=clock & support=wall_mounted (snaps to layers `walls_and_buildings`) + - **a wall-mounted clock, mounted directly on a wall** which has the following tags:amenity=clock & support=wall (snaps to layers `walls_and_buildings`) ## Basic tags for this layer @@ -53,8 +56,9 @@ Elements must match the expression ** [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) | +| [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) | | [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) | +| [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) | | [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) | | [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) | | [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?` - *This clock is mounted on a pole* is shown if with support=pole - - *This clock is mounted on a wall* is shown if with support=wall_mounted + - *This clock is mounted on a wall, usually through a support perpendicular to the wall* is shown if with support=wall_mounted + - *This clock is mounted directly on a wall* is shown if with support=wall - *This clock is part of a billboard* is shown if with support=billboard - *This clock is on the ground* is shown if with support=ground @@ -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 display=sundial - *This clock displays the time in a non-standard way, e.g using binary, water or something else* is shown if with display=unorthodox +### indoor + +The question is `Is this clock indoors?` + + - *This clock is indoors* is shown if with indoor=yes + - *This clock is outdoors* is shown if with indoor=no + ### visibility The question is `How visible is this clock?` diff --git a/Docs/Layers/crossings.md b/Docs/Layers/crossings.md index b5bd10921..7b3165139 100644 --- a/Docs/Layers/crossings.md +++ b/Docs/Layers/crossings.md @@ -16,7 +16,7 @@ Crossings for pedestrians and cyclists 4. [Supported attributes](#supported-attributes) - [images](#images) - [crossing-type](#crossing-type) - - [crossing-is-zebra](#crossing-is-zebra) + - [markings](#markings) - [crossing-bicycle-allowed](#crossing-bicycle-allowed) - [crossing-has-island](#crossing-has-island) - [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 | -----|-----|----- | -| [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) | -| [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) | +| [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) | +| [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) | | [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) | | [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) | | [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 crossing=uncontrolled - *Crossing with traffic signals* is shown if with crossing=traffic_signals - *Zebra crossing* is shown if with crossing=zebra. _This option cannot be chosen as answer_ - - *Crossing without crossing markings* is shown if with crossing=unmarked + - *Crossing without crossing markings* is shown if with crossing=unmarked. _This option cannot be chosen as answer_ This tagrendering is only visible in the popup if the following condition is met: highway=crossing -### 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 crossing_ref=zebra - - *This is not a zebra crossing* is shown if with crossing_ref= - -This tagrendering is only visible in the popup if the following condition is met: crossing=uncontrolled + - *This crossing has no markings* is shown if with crossing:markings=no + - *This crossing has zebra markings* is shown if with crossing:markings=zebra + - *This crossing has markings of an unknown type* is shown if with crossing:markings=yes. _This option cannot be chosen as answer_ + - *This crossings has lines on either side of the crossing* is shown if with crossing:markings=lines + - *This crossing has lines on either side of the crossing, along with bars connecting them* is shown if with crossing:markings=ladder + - *This crossing has dashed lines on either sides of the crossing* is shown if with crossing:markings=dashes + - *This crossing has dotted lines on either sides of the crossing* is shown if with crossing:markings=dots + - *This crossing is marked by using a different coloured surface* is shown if with crossing:markings=surface + - *This crossing has lines on either side of the crossing, along with angled bars connecting them* is shown if with crossing:markings=ladder:skewed + - *This crossing has zebra markings with an interruption in every bar* is shown if with crossing:markings=zebra:paired + - *This crossing has zebra markings in alternating colours* is shown if with crossing:markings=zebra:bicolour + - *This crossing has double zebra markings* is shown if with crossing:markings=zebra:double + - *This crossing has pictograms on the road* is shown if with crossing:markings=pictograms + - *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 crossing:markings=ladder:paired + - *This crossing has double lines on either side of the crossing* is shown if with crossing:markings=lines:paired ### crossing-bicycle-allowed diff --git a/Docs/Layers/crossings_no_traffic_lights.md b/Docs/Layers/crossings_no_traffic_lights.md index 4149b7126..56a1bd215 100644 --- a/Docs/Layers/crossings_no_traffic_lights.md +++ b/Docs/Layers/crossings_no_traffic_lights.md @@ -17,7 +17,7 @@ Crossings for pedestrians and cyclists 4. [Supported attributes](#supported-attributes) - [images](#images) - [crossing-type](#crossing-type) - - [crossing-is-zebra](#crossing-is-zebra) + - [markings](#markings) - [crossing-bicycle-allowed](#crossing-bicycle-allowed) - [crossing-has-island](#crossing-has-island) - [crossing-tactile](#crossing-tactile) @@ -55,8 +55,8 @@ Elements must match the expression ** [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) | -| [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) | +| [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) | +| [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) | | [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) | | [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) | | [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 crossing=uncontrolled - *Crossing with traffic signals* is shown if with crossing=traffic_signals - *Zebra crossing* is shown if with crossing=zebra. _This option cannot be chosen as answer_ - - *Crossing without crossing markings* is shown if with crossing=unmarked + - *Crossing without crossing markings* is shown if with crossing=unmarked. _This option cannot be chosen as answer_ This tagrendering is only visible in the popup if the following condition is met: highway=crossing -### 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 crossing_ref=zebra - - *This is not a zebra crossing* is shown if with crossing_ref= - -This tagrendering is only visible in the popup if the following condition is met: crossing=uncontrolled + - *This crossing has no markings* is shown if with crossing:markings=no + - *This crossing has zebra markings* is shown if with crossing:markings=zebra + - *This crossing has markings of an unknown type* is shown if with crossing:markings=yes. _This option cannot be chosen as answer_ + - *This crossings has lines on either side of the crossing* is shown if with crossing:markings=lines + - *This crossing has lines on either side of the crossing, along with bars connecting them* is shown if with crossing:markings=ladder + - *This crossing has dashed lines on either sides of the crossing* is shown if with crossing:markings=dashes + - *This crossing has dotted lines on either sides of the crossing* is shown if with crossing:markings=dots + - *This crossing is marked by using a different coloured surface* is shown if with crossing:markings=surface + - *This crossing has lines on either side of the crossing, along with angled bars connecting them* is shown if with crossing:markings=ladder:skewed + - *This crossing has zebra markings with an interruption in every bar* is shown if with crossing:markings=zebra:paired + - *This crossing has zebra markings in alternating colours* is shown if with crossing:markings=zebra:bicolour + - *This crossing has double zebra markings* is shown if with crossing:markings=zebra:double + - *This crossing has pictograms on the road* is shown if with crossing:markings=pictograms + - *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 crossing:markings=ladder:paired + - *This crossing has double lines on either side of the crossing* is shown if with crossing:markings=lines:paired ### crossing-bicycle-allowed diff --git a/Docs/Layers/cycleways_and_roads.md b/Docs/Layers/cycleways_and_roads.md index 050be6198..eecab2d26 100644 --- a/Docs/Layers/cycleways_and_roads.md +++ b/Docs/Layers/cycleways_and_roads.md @@ -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 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 [cyclist_waiting_aid](#cyclist_waiting_aid) - 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 [crossings_no_traffic_lights](#crossings_no_traffic_lights) diff --git a/Docs/Layers/cyclist_waiting_aid.md b/Docs/Layers/cyclist_waiting_aid.md new file mode 100644 index 000000000..0f0361511 --- /dev/null +++ b/Docs/Layers/cyclist_waiting_aid.md @@ -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:highway=cyclist_waiting_aid (snaps to layers `cycleways_and_roads`) + +## Basic tags for this layer + +Elements must match the expression **highway=cyclist_waiting_aid** + +[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 | +-----|-----|----- | +| [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) | +| [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 footrest=yes. Unselecting this answer will add footrest= + - *There is a rail or a handle to hold on to here* is shown if with handrest=yes. 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 side=left + - *This waiting aid is located on the right side* is shown if with side=right + - *There are waiting aids on both sides of the road* is shown if with side=both + +### 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 direction=forward + - *This waiting aid can be used when going backward on this way* is shown if with direction=backward + +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) diff --git a/Docs/Layers/doctors.md b/Docs/Layers/doctors.md index 6cb4082a9..828d4ec3c 100644 --- a/Docs/Layers/doctors.md +++ b/Docs/Layers/doctors.md @@ -150,10 +150,10 @@ This tagrendering has labels | id | question | osmTags | -----|-----|----- | | specialty.0 | *What is this doctor specialized in?* (default) | | -| specialty.1 | This is a general practitioner | healthcare:speciality=general | -| specialty.2 | This is a gynaecologist | healthcare:speciality=gynaecology | -| specialty.3 | This is a psychiatrist | healthcare:speciality=psychiatry | -| specialty.4 | This is a paediatrician | healthcare:speciality=paediatrics | +| specialty.1 | This is a general practitioner | healthcare:speciality~^(.+;)?general(;.+)$ | +| specialty.2 | This is a gynaecologist | healthcare:speciality~^(.+;)?gynaecology(;.+)$ | +| specialty.3 | This is a psychiatrist | healthcare:speciality~^(.+;)?psychiatry(;.+)$ | +| specialty.4 | This is a paediatrician | healthcare:speciality~^(.+;)?paediatrics(;.+)$ | diff --git a/Docs/Layers/dogfoodb.md b/Docs/Layers/dogfoodb.md index 4e884080e..20bb59876 100644 --- a/Docs/Layers/dogfoodb.md +++ b/Docs/Layers/dogfoodb.md @@ -36,15 +36,15 @@ A layer showing restaurants and fast-food amenities (with a special rendering fo - [Vegetarian (no friture)](#vegetarian-(no-friture)) - [Vegan (no friture)](#vegan-(no-friture)) - [halal (no friture)](#halal-(no-friture)) - - [sugar_free](#sugar_free) - - [gluten_free](#gluten_free) - - [lactose_free](#lactose_free) - [organic (no friture)](#organic-(no-friture)) - [friture-vegetarian](#friture-vegetarian) - [friture-vegan](#friture-vegan) - [friture-organic](#friture-organic) - [friture-oil](#friture-oil) - [friture-take-your-container](#friture-take-your-container) + - [sugar_free](#sugar_free) + - [gluten_free](#gluten_free) + - [lactose_free](#lactose_free) - [smoking](#smoking) - [service:electricity](#serviceelectricity) - [dog-access](#dog-access) @@ -92,15 +92,15 @@ Elements must match **all** of the following expressions: | [diet:vegetarian](https://wiki.openstreetmap.org/wiki/Key:diet:vegetarian) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Donly) [on_demand](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Don_demand) | | [diet:vegan](https://wiki.openstreetmap.org/wiki/Key:diet:vegan) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Donly) [on_demand](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Don_demand) | | [diet:halal](https://wiki.openstreetmap.org/wiki/Key:diet:halal) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Donly) | -| [diet:sugar_free](https://wiki.openstreetmap.org/wiki/Key:diet:sugar_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dno) | -| [diet:gluten_free](https://wiki.openstreetmap.org/wiki/Key:diet:gluten_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dno) | -| [diet:lactose_free](https://wiki.openstreetmap.org/wiki/Key:diet:lactose_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dno) | | [organic](https://wiki.openstreetmap.org/wiki/Key:organic) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dno) [yes](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:organic%3Donly) | | [diet:vegetarian](https://wiki.openstreetmap.org/wiki/Key:diet:vegetarian) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dno) | | [diet:vegan](https://wiki.openstreetmap.org/wiki/Key:diet:vegan) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dno) | | [organic](https://wiki.openstreetmap.org/wiki/Key:organic) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dno) [only](https://wiki.openstreetmap.org/wiki/Tag:organic%3Donly) | | [friture:oil](https://wiki.openstreetmap.org/wiki/Key:friture:oil) | Multiple choice | [vegetable](https://wiki.openstreetmap.org/wiki/Tag:friture:oil%3Dvegetable) [animal](https://wiki.openstreetmap.org/wiki/Tag:friture:oil%3Danimal) | | [reusable_packaging:accept](https://wiki.openstreetmap.org/wiki/Key:reusable_packaging:accept) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Dno) [only](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Donly) | +| [diet:sugar_free](https://wiki.openstreetmap.org/wiki/Key:diet:sugar_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dno) | +| [diet:gluten_free](https://wiki.openstreetmap.org/wiki/Key:diet:gluten_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dno) | +| [diet:lactose_free](https://wiki.openstreetmap.org/wiki/Key:diet:lactose_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dno) | | [smoking](https://wiki.openstreetmap.org/wiki/Key:smoking) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Dno) [outside](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Doutside) | | [service:electricity](https://wiki.openstreetmap.org/wiki/Key:service:electricity) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dlimited) [ask](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dask) [no](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dno) | | [dog](https://wiki.openstreetmap.org/wiki/Key:dog) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dno) [leashed](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dleashed) [unleashed](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dunleashed) [outside](https://wiki.openstreetmap.org/wiki/Tag:dog%3Doutside) | @@ -241,7 +241,7 @@ _This tagrendering has no question and is thus read-only_ ### add-menu-image _This tagrendering has no question and is thus read-only_ -*{image_upload(image:menu,Add an image from the menu)}* +*{image_upload(image:menu,Add an image from the menu,)}* ### menu-website @@ -269,7 +269,7 @@ The question is `Does this place offer take-away?` The question is `Does {title()} deliver food to your home?` - - *This business does home delivery (eventually via a third party)* is shown if with delivery=yes + - *This business does home delivery (possibly via a third party)* is shown if with delivery=yes - *This business does not deliver at home* is shown if with delivery=no ### Vegetarian (no friture) @@ -301,6 +301,65 @@ The question is `Does this restaurant offer a halal menu?` - *There is a halal menu* is shown if with diet:halal=yes - *Only halal options are available* is shown if with diet:halal=only +### organic (no friture) + +The question is `Does this restaurant offer organic food?` + + - *There are no organic options available* is shown if with organic=no + - *There is an organic menu* is shown if with organic=yes + - *Only organic options are available* is shown if with organic=only + +### friture-vegetarian + +The question is `Does this fries shop have vegetarian snacks?` + + - *Serves only vegetarian snacks and burgers* is shown if with diet:vegetarian=only + - *Vegetarian snacks are available* is shown if with diet:vegetarian=yes + - *Only a small selection of snacks are vegetarian* is shown if with diet:vegetarian=limited + - *No vegetarian snacks are available* is shown if with diet:vegetarian=no + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + +### friture-vegan + +The question is `Does this fries shop have vegan snacks?` + + - *Serves only vegan snacks and burgers* is shown if with diet:vegan=only + - *Vegan snacks are available* is shown if with diet:vegan=yes + - *A small selection of vegan snacks are available* is shown if with diet:vegan=limited + - *No vegan snacks are available* is shown if with diet:vegan=no + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + +### friture-organic + +The question is `Does this fries shop offer organic snacks?` + + - *Organic snacks are available* is shown if with organic=yes + - *No organic snacks are available* is shown if with organic=no + - *Only organic snacks are available* is shown if with organic=only + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + +### friture-oil + +The question is `Does this fries shop use vegetable or animal oil for cooking?` + + - *The frying is done with vegetable oil* is shown if with friture:oil=vegetable + - *The frying is done with animal oil* is shown if with friture:oil=animal + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + +### friture-take-your-container + +The question is `If you bring your own container (such as a cooking pot and small pots), is it used to package your order?` + + - *You can bring your own containers to get your order, saving on single-use packaging material and thus waste* is shown if with reusable_packaging:accept=yes + - *Bringing your own container is not allowed* is shown if with reusable_packaging:accept=no + - *You must bring your own container to order here.* is shown if with reusable_packaging:accept=only + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + ### sugar_free The question is `Does this shop have a sugar free offering?` @@ -337,65 +396,6 @@ The question is `Does {title()} have a lactose-free offering?` This tagrendering has labels `diets` -### organic (no friture) - -The question is `Does this restaurant offer organic food?` - - - *There are no organic options available* is shown if with organic=no - - *There is an organic menu* is shown if with organic=yes - - *Only organic options are available* is shown if with organic=only - -### friture-vegetarian - -The question is `Does this fries shop have vegetarian snacks?` - - - *Serves only vegetarian snacks and burgers* is shown if with diet:vegetarian=only - - *Vegetarian snacks are available* is shown if with diet:vegetarian=yes - - *Only a small selection of snacks are vegetarian* is shown if with diet:vegetarian=limited - - *No vegetarian snacks are available* is shown if with diet:vegetarian=no - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - -### friture-vegan - -The question is `Does this fries shop have vegan snacks?` - - - *Servers only vegan snacks and burgers* is shown if with diet:vegan=only - - *Vegan snacks are available* is shown if with diet:vegan=yes - - *A small selection of vegan snacks are available* is shown if with diet:vegan=limited - - *No vegan snacks are available* is shown if with diet:vegan=no - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - -### friture-organic - -The question is `Does this fries shop offer organic snacks?` - - - *Organic snacks are available* is shown if with organic=yes - - *No organic snacks are available* is shown if with organic=no - - *Only organic snacks are available* is shown if with organic=only - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - -### friture-oil - -The question is `Does this fries shop use vegetable or animal oil for cooking?` - - - *The frying is done with vegetable oil* is shown if with friture:oil=vegetable - - *The frying is done with animal oil* is shown if with friture:oil=animal - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - -### friture-take-your-container - -The question is `If you bring your own container (such as a cooking pot and small pots), is it used to package your order?` - - - *You can bring your own containers to get your order, saving on single-use packaging material and thus waste* is shown if with reusable_packaging:accept=yes - - *Bringing your own container is not allowed* is shown if with reusable_packaging:accept=no - - *You must bring your own container to order here.* is shown if with reusable_packaging:accept=only - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - ### smoking The question is `Is smoking allowed at {title()}?` diff --git a/Docs/Layers/dogshop.md b/Docs/Layers/dogshop.md index 026801f30..2e3d33ed4 100644 --- a/Docs/Layers/dogshop.md +++ b/Docs/Layers/dogshop.md @@ -426,7 +426,7 @@ The question is `Does this shop sell bikes?` - *This shop sells new bikes* is shown if with service:bicycle:retail=yes - *This shop doesn't sell new bikes* is shown if with service:bicycle:retail=no -This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=diy | shop=doityourself | service:bicycle:retail~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself | service:bicycle:retail~.+ ### bike_second_hand @@ -447,7 +447,7 @@ The question is `Does this shop repair bikes?` - *This shop only repairs bikes bought here* is shown if with service:bicycle:repair=only_sold - *This shop only repairs bikes of a certain brand* is shown if with service:bicycle:repair=brand -This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ +This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ ### bicycle_rental @@ -456,7 +456,7 @@ The question is `Does this shop rent out bikes?` - *This shop rents out bikes* is shown if with service:bicycle:rental=yes - *This shop doesn't rent out bikes* is shown if with service:bicycle:rental=no -This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ ### bicycle-types @@ -578,7 +578,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 service:bicycle:cleaning:fee=no - *Free to use* is shown if with service:bicycle:cleaning:fee=yes & 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~.+ ### internet @@ -707,7 +707,7 @@ This tagrendering has labels | id | question | osmTags | -----|-----|----- | | 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.3 | Liquor Store | shop=alcohol | | shop_types.4 | Anime / Manga Shop | shop=anime | diff --git a/Docs/Layers/food.md b/Docs/Layers/food.md index 47f1268fc..26775681d 100644 --- a/Docs/Layers/food.md +++ b/Docs/Layers/food.md @@ -35,15 +35,15 @@ A layer showing restaurants and fast-food amenities (with a special rendering fo - [Vegetarian (no friture)](#vegetarian-(no-friture)) - [Vegan (no friture)](#vegan-(no-friture)) - [halal (no friture)](#halal-(no-friture)) - - [sugar_free](#sugar_free) - - [gluten_free](#gluten_free) - - [lactose_free](#lactose_free) - [organic (no friture)](#organic-(no-friture)) - [friture-vegetarian](#friture-vegetarian) - [friture-vegan](#friture-vegan) - [friture-organic](#friture-organic) - [friture-oil](#friture-oil) - [friture-take-your-container](#friture-take-your-container) + - [sugar_free](#sugar_free) + - [gluten_free](#gluten_free) + - [lactose_free](#lactose_free) - [smoking](#smoking) - [service:electricity](#serviceelectricity) - [dog-access](#dog-access) @@ -107,15 +107,15 @@ Elements must match **any** of the following expressions: | [diet:vegetarian](https://wiki.openstreetmap.org/wiki/Key:diet:vegetarian) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Donly) [on_demand](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Don_demand) | | [diet:vegan](https://wiki.openstreetmap.org/wiki/Key:diet:vegan) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Donly) [on_demand](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Don_demand) | | [diet:halal](https://wiki.openstreetmap.org/wiki/Key:diet:halal) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Donly) | -| [diet:sugar_free](https://wiki.openstreetmap.org/wiki/Key:diet:sugar_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dno) | -| [diet:gluten_free](https://wiki.openstreetmap.org/wiki/Key:diet:gluten_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dno) | -| [diet:lactose_free](https://wiki.openstreetmap.org/wiki/Key:diet:lactose_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dno) | | [organic](https://wiki.openstreetmap.org/wiki/Key:organic) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dno) [yes](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:organic%3Donly) | | [diet:vegetarian](https://wiki.openstreetmap.org/wiki/Key:diet:vegetarian) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dno) | | [diet:vegan](https://wiki.openstreetmap.org/wiki/Key:diet:vegan) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dno) | | [organic](https://wiki.openstreetmap.org/wiki/Key:organic) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dno) [only](https://wiki.openstreetmap.org/wiki/Tag:organic%3Donly) | | [friture:oil](https://wiki.openstreetmap.org/wiki/Key:friture:oil) | Multiple choice | [vegetable](https://wiki.openstreetmap.org/wiki/Tag:friture:oil%3Dvegetable) [animal](https://wiki.openstreetmap.org/wiki/Tag:friture:oil%3Danimal) | | [reusable_packaging:accept](https://wiki.openstreetmap.org/wiki/Key:reusable_packaging:accept) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Dno) [only](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Donly) | +| [diet:sugar_free](https://wiki.openstreetmap.org/wiki/Key:diet:sugar_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dno) | +| [diet:gluten_free](https://wiki.openstreetmap.org/wiki/Key:diet:gluten_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dno) | +| [diet:lactose_free](https://wiki.openstreetmap.org/wiki/Key:diet:lactose_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dno) | | [smoking](https://wiki.openstreetmap.org/wiki/Key:smoking) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Dno) [outside](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Doutside) | | [service:electricity](https://wiki.openstreetmap.org/wiki/Key:service:electricity) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dlimited) [ask](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dask) [no](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dno) | | [dog](https://wiki.openstreetmap.org/wiki/Key:dog) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dno) [leashed](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dleashed) [unleashed](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dunleashed) [outside](https://wiki.openstreetmap.org/wiki/Tag:dog%3Doutside) | @@ -256,7 +256,7 @@ _This tagrendering has no question and is thus read-only_ ### add-menu-image _This tagrendering has no question and is thus read-only_ -*{image_upload(image:menu,Add an image from the menu)}* +*{image_upload(image:menu,Add an image from the menu,)}* ### menu-website @@ -284,7 +284,7 @@ The question is `Does this place offer take-away?` The question is `Does {title()} deliver food to your home?` - - *This business does home delivery (eventually via a third party)* is shown if with delivery=yes + - *This business does home delivery (possibly via a third party)* is shown if with delivery=yes - *This business does not deliver at home* is shown if with delivery=no ### Vegetarian (no friture) @@ -316,6 +316,65 @@ The question is `Does this restaurant offer a halal menu?` - *There is a halal menu* is shown if with diet:halal=yes - *Only halal options are available* is shown if with diet:halal=only +### organic (no friture) + +The question is `Does this restaurant offer organic food?` + + - *There are no organic options available* is shown if with organic=no + - *There is an organic menu* is shown if with organic=yes + - *Only organic options are available* is shown if with organic=only + +### friture-vegetarian + +The question is `Does this fries shop have vegetarian snacks?` + + - *Serves only vegetarian snacks and burgers* is shown if with diet:vegetarian=only + - *Vegetarian snacks are available* is shown if with diet:vegetarian=yes + - *Only a small selection of snacks are vegetarian* is shown if with diet:vegetarian=limited + - *No vegetarian snacks are available* is shown if with diet:vegetarian=no + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + +### friture-vegan + +The question is `Does this fries shop have vegan snacks?` + + - *Serves only vegan snacks and burgers* is shown if with diet:vegan=only + - *Vegan snacks are available* is shown if with diet:vegan=yes + - *A small selection of vegan snacks are available* is shown if with diet:vegan=limited + - *No vegan snacks are available* is shown if with diet:vegan=no + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + +### friture-organic + +The question is `Does this fries shop offer organic snacks?` + + - *Organic snacks are available* is shown if with organic=yes + - *No organic snacks are available* is shown if with organic=no + - *Only organic snacks are available* is shown if with organic=only + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + +### friture-oil + +The question is `Does this fries shop use vegetable or animal oil for cooking?` + + - *The frying is done with vegetable oil* is shown if with friture:oil=vegetable + - *The frying is done with animal oil* is shown if with friture:oil=animal + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + +### friture-take-your-container + +The question is `If you bring your own container (such as a cooking pot and small pots), is it used to package your order?` + + - *You can bring your own containers to get your order, saving on single-use packaging material and thus waste* is shown if with reusable_packaging:accept=yes + - *Bringing your own container is not allowed* is shown if with reusable_packaging:accept=no + - *You must bring your own container to order here.* is shown if with reusable_packaging:accept=only + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + ### sugar_free The question is `Does this shop have a sugar free offering?` @@ -352,65 +411,6 @@ The question is `Does {title()} have a lactose-free offering?` This tagrendering has labels `diets` -### organic (no friture) - -The question is `Does this restaurant offer organic food?` - - - *There are no organic options available* is shown if with organic=no - - *There is an organic menu* is shown if with organic=yes - - *Only organic options are available* is shown if with organic=only - -### friture-vegetarian - -The question is `Does this fries shop have vegetarian snacks?` - - - *Serves only vegetarian snacks and burgers* is shown if with diet:vegetarian=only - - *Vegetarian snacks are available* is shown if with diet:vegetarian=yes - - *Only a small selection of snacks are vegetarian* is shown if with diet:vegetarian=limited - - *No vegetarian snacks are available* is shown if with diet:vegetarian=no - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - -### friture-vegan - -The question is `Does this fries shop have vegan snacks?` - - - *Servers only vegan snacks and burgers* is shown if with diet:vegan=only - - *Vegan snacks are available* is shown if with diet:vegan=yes - - *A small selection of vegan snacks are available* is shown if with diet:vegan=limited - - *No vegan snacks are available* is shown if with diet:vegan=no - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - -### friture-organic - -The question is `Does this fries shop offer organic snacks?` - - - *Organic snacks are available* is shown if with organic=yes - - *No organic snacks are available* is shown if with organic=no - - *Only organic snacks are available* is shown if with organic=only - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - -### friture-oil - -The question is `Does this fries shop use vegetable or animal oil for cooking?` - - - *The frying is done with vegetable oil* is shown if with friture:oil=vegetable - - *The frying is done with animal oil* is shown if with friture:oil=animal - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - -### friture-take-your-container - -The question is `If you bring your own container (such as a cooking pot and small pots), is it used to package your order?` - - - *You can bring your own containers to get your order, saving on single-use packaging material and thus waste* is shown if with reusable_packaging:accept=yes - - *Bringing your own container is not allowed* is shown if with reusable_packaging:accept=no - - *You must bring your own container to order here.* is shown if with reusable_packaging:accept=only - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - ### smoking The question is `Is smoking allowed at {title()}?` diff --git a/Docs/Layers/food_glutenfree.md b/Docs/Layers/food_glutenfree.md index 8972974b7..27a11100d 100644 --- a/Docs/Layers/food_glutenfree.md +++ b/Docs/Layers/food_glutenfree.md @@ -37,14 +37,14 @@ A layer showing restaurants and fast-food amenities (with a special rendering fo - [Vegetarian (no friture)](#vegetarian-(no-friture)) - [Vegan (no friture)](#vegan-(no-friture)) - [halal (no friture)](#halal-(no-friture)) - - [sugar_free](#sugar_free) - - [lactose_free](#lactose_free) - [organic (no friture)](#organic-(no-friture)) - [friture-vegetarian](#friture-vegetarian) - [friture-vegan](#friture-vegan) - [friture-organic](#friture-organic) - [friture-oil](#friture-oil) - [friture-take-your-container](#friture-take-your-container) + - [sugar_free](#sugar_free) + - [lactose_free](#lactose_free) - [smoking](#smoking) - [service:electricity](#serviceelectricity) - [dog-access](#dog-access) @@ -94,14 +94,14 @@ Elements must match **all** of the following expressions: | [diet:vegetarian](https://wiki.openstreetmap.org/wiki/Key:diet:vegetarian) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Donly) [on_demand](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Don_demand) | | [diet:vegan](https://wiki.openstreetmap.org/wiki/Key:diet:vegan) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Donly) [on_demand](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Don_demand) | | [diet:halal](https://wiki.openstreetmap.org/wiki/Key:diet:halal) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Donly) | -| [diet:sugar_free](https://wiki.openstreetmap.org/wiki/Key:diet:sugar_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dno) | -| [diet:lactose_free](https://wiki.openstreetmap.org/wiki/Key:diet:lactose_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dno) | | [organic](https://wiki.openstreetmap.org/wiki/Key:organic) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dno) [yes](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:organic%3Donly) | | [diet:vegetarian](https://wiki.openstreetmap.org/wiki/Key:diet:vegetarian) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dno) | | [diet:vegan](https://wiki.openstreetmap.org/wiki/Key:diet:vegan) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dno) | | [organic](https://wiki.openstreetmap.org/wiki/Key:organic) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dno) [only](https://wiki.openstreetmap.org/wiki/Tag:organic%3Donly) | | [friture:oil](https://wiki.openstreetmap.org/wiki/Key:friture:oil) | Multiple choice | [vegetable](https://wiki.openstreetmap.org/wiki/Tag:friture:oil%3Dvegetable) [animal](https://wiki.openstreetmap.org/wiki/Tag:friture:oil%3Danimal) | | [reusable_packaging:accept](https://wiki.openstreetmap.org/wiki/Key:reusable_packaging:accept) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Dno) [only](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Donly) | +| [diet:sugar_free](https://wiki.openstreetmap.org/wiki/Key:diet:sugar_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dno) | +| [diet:lactose_free](https://wiki.openstreetmap.org/wiki/Key:diet:lactose_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dno) | | [smoking](https://wiki.openstreetmap.org/wiki/Key:smoking) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Dno) [outside](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Doutside) | | [service:electricity](https://wiki.openstreetmap.org/wiki/Key:service:electricity) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dlimited) [ask](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dask) [no](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dno) | | [dog](https://wiki.openstreetmap.org/wiki/Key:dog) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dno) [leashed](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dleashed) [unleashed](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dunleashed) [outside](https://wiki.openstreetmap.org/wiki/Tag:dog%3Doutside) | @@ -254,7 +254,7 @@ _This tagrendering has no question and is thus read-only_ ### add-menu-image _This tagrendering has no question and is thus read-only_ -*{image_upload(image:menu,Add an image from the menu)}* +*{image_upload(image:menu,Add an image from the menu,)}* ### menu-website @@ -282,7 +282,7 @@ The question is `Does this place offer take-away?` The question is `Does {title()} deliver food to your home?` - - *This business does home delivery (eventually via a third party)* is shown if with delivery=yes + - *This business does home delivery (possibly via a third party)* is shown if with delivery=yes - *This business does not deliver at home* is shown if with delivery=no ### Vegetarian (no friture) @@ -314,30 +314,6 @@ The question is `Does this restaurant offer a halal menu?` - *There is a halal menu* is shown if with diet:halal=yes - *Only halal options are available* is shown if with diet:halal=only -### sugar_free - -The question is `Does this shop have a sugar free offering?` - - - *This shop only sells sugar free products* is shown if with diet:sugar_free=only - - *This shop has a big sugar free offering* is shown if with diet:sugar_free=yes - - *This shop has a limited sugar free offering* is shown if with diet:sugar_free=limited - - *This shop has no sugar free offering* is shown if with diet:sugar_free=no - -This tagrendering has labels -`diets` - -### lactose_free - -The question is `Does {title()} have a lactose-free offering?` - - - *Only sells lactose free products* is shown if with diet:lactose_free=only - - *Big lactose free offering* is shown if with diet:lactose_free=yes - - *Limited lactose free offering* is shown if with diet:lactose_free=limited - - *No lactose free offering* is shown if with diet:lactose_free=no - -This tagrendering has labels -`diets` - ### organic (no friture) The question is `Does this restaurant offer organic food?` @@ -361,7 +337,7 @@ This tagrendering is only visible in the popup if the following condition is met The question is `Does this fries shop have vegan snacks?` - - *Servers only vegan snacks and burgers* is shown if with diet:vegan=only + - *Serves only vegan snacks and burgers* is shown if with diet:vegan=only - *Vegan snacks are available* is shown if with diet:vegan=yes - *A small selection of vegan snacks are available* is shown if with diet:vegan=limited - *No vegan snacks are available* is shown if with diet:vegan=no @@ -397,6 +373,30 @@ The question is `If you bring your own container (such as a cooking pot and smal This tagrendering is only visible in the popup if the following condition is met: cuisine=friture +### sugar_free + +The question is `Does this shop have a sugar free offering?` + + - *This shop only sells sugar free products* is shown if with diet:sugar_free=only + - *This shop has a big sugar free offering* is shown if with diet:sugar_free=yes + - *This shop has a limited sugar free offering* is shown if with diet:sugar_free=limited + - *This shop has no sugar free offering* is shown if with diet:sugar_free=no + +This tagrendering has labels +`diets` + +### lactose_free + +The question is `Does {title()} have a lactose-free offering?` + + - *Only sells lactose free products* is shown if with diet:lactose_free=only + - *Big lactose free offering* is shown if with diet:lactose_free=yes + - *Limited lactose free offering* is shown if with diet:lactose_free=limited + - *No lactose free offering* is shown if with diet:lactose_free=no + +This tagrendering has labels +`diets` + ### smoking The question is `Is smoking allowed at {title()}?` diff --git a/Docs/Layers/food_lactosefree.md b/Docs/Layers/food_lactosefree.md index 424c0e736..03886768d 100644 --- a/Docs/Layers/food_lactosefree.md +++ b/Docs/Layers/food_lactosefree.md @@ -37,14 +37,14 @@ A layer showing restaurants and fast-food amenities (with a special rendering fo - [Vegetarian (no friture)](#vegetarian-(no-friture)) - [Vegan (no friture)](#vegan-(no-friture)) - [halal (no friture)](#halal-(no-friture)) - - [sugar_free](#sugar_free) - - [gluten_free](#gluten_free) - [organic (no friture)](#organic-(no-friture)) - [friture-vegetarian](#friture-vegetarian) - [friture-vegan](#friture-vegan) - [friture-organic](#friture-organic) - [friture-oil](#friture-oil) - [friture-take-your-container](#friture-take-your-container) + - [sugar_free](#sugar_free) + - [gluten_free](#gluten_free) - [smoking](#smoking) - [service:electricity](#serviceelectricity) - [dog-access](#dog-access) @@ -94,14 +94,14 @@ Elements must match **all** of the following expressions: | [diet:vegetarian](https://wiki.openstreetmap.org/wiki/Key:diet:vegetarian) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Donly) [on_demand](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Don_demand) | | [diet:vegan](https://wiki.openstreetmap.org/wiki/Key:diet:vegan) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Donly) [on_demand](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Don_demand) | | [diet:halal](https://wiki.openstreetmap.org/wiki/Key:diet:halal) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Donly) | -| [diet:sugar_free](https://wiki.openstreetmap.org/wiki/Key:diet:sugar_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dno) | -| [diet:gluten_free](https://wiki.openstreetmap.org/wiki/Key:diet:gluten_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dno) | | [organic](https://wiki.openstreetmap.org/wiki/Key:organic) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dno) [yes](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:organic%3Donly) | | [diet:vegetarian](https://wiki.openstreetmap.org/wiki/Key:diet:vegetarian) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dno) | | [diet:vegan](https://wiki.openstreetmap.org/wiki/Key:diet:vegan) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dno) | | [organic](https://wiki.openstreetmap.org/wiki/Key:organic) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dno) [only](https://wiki.openstreetmap.org/wiki/Tag:organic%3Donly) | | [friture:oil](https://wiki.openstreetmap.org/wiki/Key:friture:oil) | Multiple choice | [vegetable](https://wiki.openstreetmap.org/wiki/Tag:friture:oil%3Dvegetable) [animal](https://wiki.openstreetmap.org/wiki/Tag:friture:oil%3Danimal) | | [reusable_packaging:accept](https://wiki.openstreetmap.org/wiki/Key:reusable_packaging:accept) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Dno) [only](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Donly) | +| [diet:sugar_free](https://wiki.openstreetmap.org/wiki/Key:diet:sugar_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dno) | +| [diet:gluten_free](https://wiki.openstreetmap.org/wiki/Key:diet:gluten_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dno) | | [smoking](https://wiki.openstreetmap.org/wiki/Key:smoking) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Dno) [outside](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Doutside) | | [service:electricity](https://wiki.openstreetmap.org/wiki/Key:service:electricity) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dlimited) [ask](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dask) [no](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dno) | | [dog](https://wiki.openstreetmap.org/wiki/Key:dog) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dno) [leashed](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dleashed) [unleashed](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dunleashed) [outside](https://wiki.openstreetmap.org/wiki/Tag:dog%3Doutside) | @@ -254,7 +254,7 @@ _This tagrendering has no question and is thus read-only_ ### add-menu-image _This tagrendering has no question and is thus read-only_ -*{image_upload(image:menu,Add an image from the menu)}* +*{image_upload(image:menu,Add an image from the menu,)}* ### menu-website @@ -282,7 +282,7 @@ The question is `Does this place offer take-away?` The question is `Does {title()} deliver food to your home?` - - *This business does home delivery (eventually via a third party)* is shown if with delivery=yes + - *This business does home delivery (possibly via a third party)* is shown if with delivery=yes - *This business does not deliver at home* is shown if with delivery=no ### Vegetarian (no friture) @@ -314,30 +314,6 @@ The question is `Does this restaurant offer a halal menu?` - *There is a halal menu* is shown if with diet:halal=yes - *Only halal options are available* is shown if with diet:halal=only -### sugar_free - -The question is `Does this shop have a sugar free offering?` - - - *This shop only sells sugar free products* is shown if with diet:sugar_free=only - - *This shop has a big sugar free offering* is shown if with diet:sugar_free=yes - - *This shop has a limited sugar free offering* is shown if with diet:sugar_free=limited - - *This shop has no sugar free offering* is shown if with diet:sugar_free=no - -This tagrendering has labels -`diets` - -### gluten_free - -The question is `Does this shop have a gluten free offering?` - - - *This shop only sells gluten free products* is shown if with diet:gluten_free=only - - *This shop has a big gluten free offering* is shown if with diet:gluten_free=yes - - *This shop has a limited gluten free offering* is shown if with diet:gluten_free=limited - - *This shop has no gluten free offering* is shown if with diet:gluten_free=no - -This tagrendering has labels -`diets` - ### organic (no friture) The question is `Does this restaurant offer organic food?` @@ -361,7 +337,7 @@ This tagrendering is only visible in the popup if the following condition is met The question is `Does this fries shop have vegan snacks?` - - *Servers only vegan snacks and burgers* is shown if with diet:vegan=only + - *Serves only vegan snacks and burgers* is shown if with diet:vegan=only - *Vegan snacks are available* is shown if with diet:vegan=yes - *A small selection of vegan snacks are available* is shown if with diet:vegan=limited - *No vegan snacks are available* is shown if with diet:vegan=no @@ -397,6 +373,30 @@ The question is `If you bring your own container (such as a cooking pot and smal This tagrendering is only visible in the popup if the following condition is met: cuisine=friture +### sugar_free + +The question is `Does this shop have a sugar free offering?` + + - *This shop only sells sugar free products* is shown if with diet:sugar_free=only + - *This shop has a big sugar free offering* is shown if with diet:sugar_free=yes + - *This shop has a limited sugar free offering* is shown if with diet:sugar_free=limited + - *This shop has no sugar free offering* is shown if with diet:sugar_free=no + +This tagrendering has labels +`diets` + +### gluten_free + +The question is `Does this shop have a gluten free offering?` + + - *This shop only sells gluten free products* is shown if with diet:gluten_free=only + - *This shop has a big gluten free offering* is shown if with diet:gluten_free=yes + - *This shop has a limited gluten free offering* is shown if with diet:gluten_free=limited + - *This shop has no gluten free offering* is shown if with diet:gluten_free=no + +This tagrendering has labels +`diets` + ### smoking The question is `Is smoking allowed at {title()}?` diff --git a/Docs/Layers/friture.md b/Docs/Layers/friture.md index 7d4afa9c3..a99ab65a6 100644 --- a/Docs/Layers/friture.md +++ b/Docs/Layers/friture.md @@ -36,15 +36,15 @@ A layer showing restaurants and fast-food amenities (with a special rendering fo - [Vegetarian (no friture)](#vegetarian-(no-friture)) - [Vegan (no friture)](#vegan-(no-friture)) - [halal (no friture)](#halal-(no-friture)) - - [sugar_free](#sugar_free) - - [gluten_free](#gluten_free) - - [lactose_free](#lactose_free) - [organic (no friture)](#organic-(no-friture)) - [friture-vegetarian](#friture-vegetarian) - [friture-vegan](#friture-vegan) - [friture-organic](#friture-organic) - [friture-oil](#friture-oil) - [friture-take-your-container](#friture-take-your-container) + - [sugar_free](#sugar_free) + - [gluten_free](#gluten_free) + - [lactose_free](#lactose_free) - [smoking](#smoking) - [service:electricity](#serviceelectricity) - [dog-access](#dog-access) @@ -92,15 +92,15 @@ Elements must match **all** of the following expressions: | [diet:vegetarian](https://wiki.openstreetmap.org/wiki/Key:diet:vegetarian) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Donly) [on_demand](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Don_demand) | | [diet:vegan](https://wiki.openstreetmap.org/wiki/Key:diet:vegan) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Donly) [on_demand](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Don_demand) | | [diet:halal](https://wiki.openstreetmap.org/wiki/Key:diet:halal) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Donly) | -| [diet:sugar_free](https://wiki.openstreetmap.org/wiki/Key:diet:sugar_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dno) | -| [diet:gluten_free](https://wiki.openstreetmap.org/wiki/Key:diet:gluten_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dno) | -| [diet:lactose_free](https://wiki.openstreetmap.org/wiki/Key:diet:lactose_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dno) | | [organic](https://wiki.openstreetmap.org/wiki/Key:organic) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dno) [yes](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:organic%3Donly) | | [diet:vegetarian](https://wiki.openstreetmap.org/wiki/Key:diet:vegetarian) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dno) | | [diet:vegan](https://wiki.openstreetmap.org/wiki/Key:diet:vegan) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dno) | | [organic](https://wiki.openstreetmap.org/wiki/Key:organic) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dno) [only](https://wiki.openstreetmap.org/wiki/Tag:organic%3Donly) | | [friture:oil](https://wiki.openstreetmap.org/wiki/Key:friture:oil) | Multiple choice | [vegetable](https://wiki.openstreetmap.org/wiki/Tag:friture:oil%3Dvegetable) [animal](https://wiki.openstreetmap.org/wiki/Tag:friture:oil%3Danimal) | | [reusable_packaging:accept](https://wiki.openstreetmap.org/wiki/Key:reusable_packaging:accept) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Dno) [only](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Donly) | +| [diet:sugar_free](https://wiki.openstreetmap.org/wiki/Key:diet:sugar_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dno) | +| [diet:gluten_free](https://wiki.openstreetmap.org/wiki/Key:diet:gluten_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dno) | +| [diet:lactose_free](https://wiki.openstreetmap.org/wiki/Key:diet:lactose_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dno) | | [smoking](https://wiki.openstreetmap.org/wiki/Key:smoking) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Dno) [outside](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Doutside) | | [service:electricity](https://wiki.openstreetmap.org/wiki/Key:service:electricity) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dlimited) [ask](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dask) [no](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dno) | | [dog](https://wiki.openstreetmap.org/wiki/Key:dog) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dno) [leashed](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dleashed) [unleashed](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dunleashed) [outside](https://wiki.openstreetmap.org/wiki/Tag:dog%3Doutside) | @@ -241,7 +241,7 @@ _This tagrendering has no question and is thus read-only_ ### add-menu-image _This tagrendering has no question and is thus read-only_ -*{image_upload(image:menu,Add an image from the menu)}* +*{image_upload(image:menu,Add an image from the menu,)}* ### menu-website @@ -269,7 +269,7 @@ The question is `Does this place offer take-away?` The question is `Does {title()} deliver food to your home?` - - *This business does home delivery (eventually via a third party)* is shown if with delivery=yes + - *This business does home delivery (possibly via a third party)* is shown if with delivery=yes - *This business does not deliver at home* is shown if with delivery=no ### Vegetarian (no friture) @@ -301,6 +301,65 @@ The question is `Does this restaurant offer a halal menu?` - *There is a halal menu* is shown if with diet:halal=yes - *Only halal options are available* is shown if with diet:halal=only +### organic (no friture) + +The question is `Does this restaurant offer organic food?` + + - *There are no organic options available* is shown if with organic=no + - *There is an organic menu* is shown if with organic=yes + - *Only organic options are available* is shown if with organic=only + +### friture-vegetarian + +The question is `Does this fries shop have vegetarian snacks?` + + - *Serves only vegetarian snacks and burgers* is shown if with diet:vegetarian=only + - *Vegetarian snacks are available* is shown if with diet:vegetarian=yes + - *Only a small selection of snacks are vegetarian* is shown if with diet:vegetarian=limited + - *No vegetarian snacks are available* is shown if with diet:vegetarian=no + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + +### friture-vegan + +The question is `Does this fries shop have vegan snacks?` + + - *Serves only vegan snacks and burgers* is shown if with diet:vegan=only + - *Vegan snacks are available* is shown if with diet:vegan=yes + - *A small selection of vegan snacks are available* is shown if with diet:vegan=limited + - *No vegan snacks are available* is shown if with diet:vegan=no + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + +### friture-organic + +The question is `Does this fries shop offer organic snacks?` + + - *Organic snacks are available* is shown if with organic=yes + - *No organic snacks are available* is shown if with organic=no + - *Only organic snacks are available* is shown if with organic=only + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + +### friture-oil + +The question is `Does this fries shop use vegetable or animal oil for cooking?` + + - *The frying is done with vegetable oil* is shown if with friture:oil=vegetable + - *The frying is done with animal oil* is shown if with friture:oil=animal + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + +### friture-take-your-container + +The question is `If you bring your own container (such as a cooking pot and small pots), is it used to package your order?` + + - *You can bring your own containers to get your order, saving on single-use packaging material and thus waste* is shown if with reusable_packaging:accept=yes + - *Bringing your own container is not allowed* is shown if with reusable_packaging:accept=no + - *You must bring your own container to order here.* is shown if with reusable_packaging:accept=only + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + ### sugar_free The question is `Does this shop have a sugar free offering?` @@ -337,65 +396,6 @@ The question is `Does {title()} have a lactose-free offering?` This tagrendering has labels `diets` -### organic (no friture) - -The question is `Does this restaurant offer organic food?` - - - *There are no organic options available* is shown if with organic=no - - *There is an organic menu* is shown if with organic=yes - - *Only organic options are available* is shown if with organic=only - -### friture-vegetarian - -The question is `Does this fries shop have vegetarian snacks?` - - - *Serves only vegetarian snacks and burgers* is shown if with diet:vegetarian=only - - *Vegetarian snacks are available* is shown if with diet:vegetarian=yes - - *Only a small selection of snacks are vegetarian* is shown if with diet:vegetarian=limited - - *No vegetarian snacks are available* is shown if with diet:vegetarian=no - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - -### friture-vegan - -The question is `Does this fries shop have vegan snacks?` - - - *Servers only vegan snacks and burgers* is shown if with diet:vegan=only - - *Vegan snacks are available* is shown if with diet:vegan=yes - - *A small selection of vegan snacks are available* is shown if with diet:vegan=limited - - *No vegan snacks are available* is shown if with diet:vegan=no - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - -### friture-organic - -The question is `Does this fries shop offer organic snacks?` - - - *Organic snacks are available* is shown if with organic=yes - - *No organic snacks are available* is shown if with organic=no - - *Only organic snacks are available* is shown if with organic=only - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - -### friture-oil - -The question is `Does this fries shop use vegetable or animal oil for cooking?` - - - *The frying is done with vegetable oil* is shown if with friture:oil=vegetable - - *The frying is done with animal oil* is shown if with friture:oil=animal - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - -### friture-take-your-container - -The question is `If you bring your own container (such as a cooking pot and small pots), is it used to package your order?` - - - *You can bring your own containers to get your order, saving on single-use packaging material and thus waste* is shown if with reusable_packaging:accept=yes - - *Bringing your own container is not allowed* is shown if with reusable_packaging:accept=no - - *You must bring your own container to order here.* is shown if with reusable_packaging:accept=only - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - ### smoking The question is `Is smoking allowed at {title()}?` diff --git a/Docs/Layers/ghost_bike.md b/Docs/Layers/ghost_bike.md index 9e53460b1..d55c063f9 100644 --- a/Docs/Layers/ghost_bike.md +++ b/Docs/Layers/ghost_bike.md @@ -13,7 +13,7 @@ A layer showing memorials for cyclists, killed in road accidents 3. [Basic tags for this layer](#basic-tags-for-this-layer) 4. [Supported attributes](#supported-attributes) - [preset_description](#preset_description) - - [images](#images) + - [images_no_blur](#images_no_blur) - [ghost_bike-name](#ghost_bike-name) - [ghost_bike-source](#ghost_bike-source) - [ghost_bike-inscription](#ghost_bike-inscription) @@ -59,10 +59,10 @@ Elements must match the expression **map_size=building - *A map of special site, like of a historical castle, a park, a campus, a forest, ....* is shown if with map_size=site - *A map showing the village or town* is shown if with map_size=village - - * A map of a city* is shown if with map_size=city + - *A map of a city* is shown if with map_size=city - *The map of an entire region, showing multiple cities and villages* is shown if with map_size=region ### map-map_source diff --git a/Docs/Layers/medical_shops.md b/Docs/Layers/medical_shops.md index 1f905755c..bd6ce185b 100644 --- a/Docs/Layers/medical_shops.md +++ b/Docs/Layers/medical_shops.md @@ -435,7 +435,7 @@ The question is `Does this shop sell bikes?` - *This shop sells new bikes* is shown if with service:bicycle:retail=yes - *This shop doesn't sell new bikes* is shown if with service:bicycle:retail=no -This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=diy | shop=doityourself | service:bicycle:retail~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself | service:bicycle:retail~.+ ### bike_second_hand @@ -456,7 +456,7 @@ The question is `Does this shop repair bikes?` - *This shop only repairs bikes bought here* is shown if with service:bicycle:repair=only_sold - *This shop only repairs bikes of a certain brand* is shown if with service:bicycle:repair=brand -This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ +This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ ### bicycle_rental @@ -465,7 +465,7 @@ The question is `Does this shop rent out bikes?` - *This shop rents out bikes* is shown if with service:bicycle:rental=yes - *This shop doesn't rent out bikes* is shown if with service:bicycle:rental=no -This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ ### bicycle-types @@ -587,7 +587,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 service:bicycle:cleaning:fee=no - *Free to use* is shown if with service:bicycle:cleaning:fee=yes & 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~.+ ### internet @@ -720,7 +720,7 @@ This tagrendering has labels | id | question | osmTags | -----|-----|----- | | 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.3 | Liquor Store | shop=alcohol | | shop_types.4 | Anime / Manga Shop | shop=anime | diff --git a/Docs/Layers/memorial.md b/Docs/Layers/memorial.md index 90d764f2c..6f7f57e52 100644 --- a/Docs/Layers/memorial.md +++ b/Docs/Layers/memorial.md @@ -12,7 +12,7 @@ Layer showing memorial plaques, based upon a unofficial theme. Can be expanded t 2. [Presets](#presets) 3. [Basic tags for this layer](#basic-tags-for-this-layer) 4. [Supported attributes](#supported-attributes) - - [images](#images) + - [images_no_blur](#images_no_blur) - [memorial-type](#memorial-type) - [inscription](#inscription) - [memorial-wikidata](#memorial-wikidata) @@ -33,6 +33,7 @@ Layer showing memorial plaques, based upon a unofficial theme. Can be expanded t - [move-button](#move-button) - [delete-button](#delete-button) - [lod](#lod) +5. [Filters](#filters) ## Themes using this layer @@ -76,10 +77,10 @@ Elements must match **any** of the following expressions: | [inscription](https://wiki.openstreetmap.org/wiki/Key:inscription) | [text](../SpecialInputElements.md#text) | | | [historic](https://wiki.openstreetmap.org/wiki/Key:historic) | Multiple choice | [memorial](https://wiki.openstreetmap.org/wiki/Tag:historic%3Dmemorial) [](https://wiki.openstreetmap.org/wiki/Tag:historic%3D) | -### 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 +### images_no_blur +Same as `images`, but uploaded request to disable blurring to the panoramax server _This tagrendering has no question and is thus read-only_ -*{image_carousel()}{image_upload()}* +*{image_carousel()}{image_upload(,,,true)}* ### memorial-type @@ -264,5 +265,27 @@ _This tagrendering has no question and is thus read-only_ This tagrendering has labels `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) diff --git a/Docs/Layers/playground.md b/Docs/Layers/playground.md index c43849cec..fa1fc0441 100644 --- a/Docs/Layers/playground.md +++ b/Docs/Layers/playground.md @@ -227,7 +227,7 @@ This tagrendering has labels | id | question | osmTags | -----|-----|----- | | 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 | diff --git a/Docs/Layers/post_offices_with_atm.md b/Docs/Layers/post_offices_with_atm.md index 204928767..b84c73704 100644 --- a/Docs/Layers/post_offices_with_atm.md +++ b/Docs/Layers/post_offices_with_atm.md @@ -14,7 +14,9 @@ A layer showing post offices. 2. [Basic tags for this layer](#basic-tags-for-this-layer) 3. [Supported attributes](#supported-attributes) - [images](#images) - - [minimap](#minimap) + - [phone](#phone) + - [email](#email) + - [website](#website) - [opening_hours](#opening_hours) - [Opening hours](#opening-hours) - [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 | -----|-----|----- | +| [phone](https://wiki.openstreetmap.org/wiki/Key:phone) | [phone](../SpecialInputElements.md#phone) | | +| [email](https://wiki.openstreetmap.org/wiki/Key:email) | [email](../SpecialInputElements.md#email) | | +| [website](https://wiki.openstreetmap.org/wiki/Key:website) | [url](../SpecialInputElements.md#url) | | | [opening_hours](https://wiki.openstreetmap.org/wiki/Key:opening_hours) | [opening_hours](../SpecialInputElements.md#opening_hours) | | | [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) | | [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_ *{image_carousel()}{image_upload()}* -### minimap +### phone -_This tagrendering has no question and is thus read-only_ -*{minimap(18): height: 5rem; overflow: hidden; border-radius:3rem; }* +The question is `What is the phone number of {title()}?` +*{link(&LBRACEphone&RBRACE,tel:&LBRACEphone&RBRACE,,,,)}* is shown if `phone` is set + + - *{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()}?` +*{email}* is shown if `email` is set + + - *{contact:email}* is shown if with contact:email~.+. _This option cannot be chosen as answer_ + - *{operator:email}* 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()}?` +*{website}* is shown if `website` is set + + - *{contact:website}* is shown if with contact:website~.+. _This option cannot be chosen as answer_ + +This tagrendering has labels +`contact` ### opening_hours diff --git a/Docs/Layers/postboxes.md b/Docs/Layers/postboxes.md index 0692c219a..a00dd6229 100644 --- a/Docs/Layers/postboxes.md +++ b/Docs/Layers/postboxes.md @@ -5,6 +5,7 @@ The layer showing postboxes. - 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 @@ -14,6 +15,7 @@ The layer showing postboxes. 4. [Supported attributes](#supported-attributes) - [images](#images) - [minimap](#minimap) + - [operator](#operator) - [leftover-questions](#leftover-questions) - [move-button](#move-button) - [delete-button](#delete-button) @@ -29,6 +31,7 @@ The layer showing postboxes. The following options to create new points are included: - **a postbox** which has the following tags:amenity=post_box + - **a postbox on a wall** which has the following tags:amenity=post_box (snaps to layers `walls_and_buildings`) ## Basic tags for this layer @@ -38,6 +41,12 @@ Elements must match the expression ** [operator](https://wiki.openstreetmap.org/wiki/Key:operator) | [string](../SpecialInputElements.md#string) | | + ### 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_ @@ -48,6 +57,11 @@ _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; }* +### operator + +The question is `Who operates this postbox?` +*This postbox is operated by {operator}* is shown if `operator` is set + ### leftover-questions _This tagrendering has no question and is thus read-only_ diff --git a/Docs/Layers/postoffices.md b/Docs/Layers/postoffices.md index cb3b19389..e4553e233 100644 --- a/Docs/Layers/postoffices.md +++ b/Docs/Layers/postoffices.md @@ -13,7 +13,9 @@ A layer showing post offices. 3. [Basic tags for this layer](#basic-tags-for-this-layer) 4. [Supported attributes](#supported-attributes) - [images](#images) - - [minimap](#minimap) + - [phone](#phone) + - [email](#email) + - [website](#website) - [opening_hours](#opening_hours) - [Opening hours](#opening-hours) - [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 | -----|-----|----- | +| [phone](https://wiki.openstreetmap.org/wiki/Key:phone) | [phone](../SpecialInputElements.md#phone) | | +| [email](https://wiki.openstreetmap.org/wiki/Key:email) | [email](../SpecialInputElements.md#email) | | +| [website](https://wiki.openstreetmap.org/wiki/Key:website) | [url](../SpecialInputElements.md#url) | | | [opening_hours](https://wiki.openstreetmap.org/wiki/Key:opening_hours) | [opening_hours](../SpecialInputElements.md#opening_hours) | | | [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) | | [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_ *{image_carousel()}{image_upload()}* -### minimap +### phone -_This tagrendering has no question and is thus read-only_ -*{minimap(18): height: 5rem; overflow: hidden; border-radius:3rem; }* +The question is `What is the phone number of {title()}?` +*{link(&LBRACEphone&RBRACE,tel:&LBRACEphone&RBRACE,,,,)}* is shown if `phone` is set + + - *{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()}?` +*{email}* is shown if `email` is set + + - *{contact:email}* is shown if with contact:email~.+. _This option cannot be chosen as answer_ + - *{operator:email}* 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()}?` +*{website}* is shown if `website` is set + + - *{contact:website}* is shown if with contact:website~.+. _This option cannot be chosen as answer_ + +This tagrendering has labels +`contact` ### opening_hours diff --git a/Docs/Layers/school.md b/Docs/Layers/school.md index 521386864..98a668010 100644 --- a/Docs/Layers/school.md +++ b/Docs/Layers/school.md @@ -14,15 +14,16 @@ Schools giving primary and secondary education and post-secondary, non-tertiary 2. [Presets](#presets) 3. [Basic tags for this layer](#basic-tags-for-this-layer) 4. [Supported attributes](#supported-attributes) + - [images](#images) - [school-name](#school-name) + - [phone](#phone) + - [email](#email) + - [website](#website) - [capacity](#capacity) - [education-level-belgium](#education-level-belgium) - [gender](#gender) - [pedagogy](#pedagogy) - [target-audience](#target-audience) - - [website](#website) - - [phone](#phone) - - [email](#email) - [school-language](#school-language) - [leftover-questions](#leftover-questions) - [move-button](#move-button) @@ -53,20 +54,56 @@ Elements must match the expression ** [name](https://wiki.openstreetmap.org/wiki/Key:name) | [string](../SpecialInputElements.md#string) | | +| [phone](https://wiki.openstreetmap.org/wiki/Key:phone) | [phone](../SpecialInputElements.md#phone) | | +| [email](https://wiki.openstreetmap.org/wiki/Key:email) | [email](../SpecialInputElements.md#email) | | +| [website](https://wiki.openstreetmap.org/wiki/Key:website) | [url](../SpecialInputElements.md#url) | | | [capacity](https://wiki.openstreetmap.org/wiki/Key:capacity) | [pnat](../SpecialInputElements.md#pnat) | | | [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) | | [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) | | [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) | | [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) | -| [website](https://wiki.openstreetmap.org/wiki/Key:website) | [url](../SpecialInputElements.md#url) | | -| [phone](https://wiki.openstreetmap.org/wiki/Key:phone) | [phone](../SpecialInputElements.md#phone) | | -| [email](https://wiki.openstreetmap.org/wiki/Key:email) | [email](../SpecialInputElements.md#email) | | + +### 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()}* ### school-name The question is `What is the name of this school?` *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 + + - *{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()}?` +*{email}* is shown if `email` is set + + - *{contact:email}* is shown if with contact:email~.+. _This option cannot be chosen as answer_ + - *{operator:email}* 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()}?` +*{website}* is shown if `website` is set + + - *{contact:website}* is shown if with contact:website~.+. _This option cannot be chosen as answer_ + +This tagrendering has labels +`contact` + ### capacity 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~.+ -### website - -The question is `What is the website of {title()}?` -*{website}* is shown if `website` is set - - - *{contact:website}* 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 - - - *{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()}?` -*{email}* is shown if `email` is set - - - *{contact:email}* is shown if with contact:email~.+. _This option cannot be chosen as answer_ - - *{operator:email}* is shown if with operator:email~.+. _This option cannot be chosen as answer_ - -This tagrendering has labels -`contact` - ### school-language _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.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.
Pupils typically enroll from 6 years old till 12 years old
| 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 not have all grades, but offers first and second grade | school~^(.+;)?lower_secondary(;.+)$ | +| education-level-belgium.5 | This is a secondary school which does not have all grades, but offers third and fourth grade | school~^(.+;)?middle_secondary(;.+)$ | +| education-level-belgium.6 | This is a secondary school which does not have all grades, but offers fifth and sixth 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) diff --git a/Docs/Layers/shops.md b/Docs/Layers/shops.md index 401f578b3..786574e25 100644 --- a/Docs/Layers/shops.md +++ b/Docs/Layers/shops.md @@ -443,7 +443,7 @@ The question is `Does this shop sell bikes?` - *This shop sells new bikes* is shown if with service:bicycle:retail=yes - *This shop doesn't sell new bikes* is shown if with service:bicycle:retail=no -This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=diy | shop=doityourself | service:bicycle:retail~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself | service:bicycle:retail~.+ ### bike_second_hand @@ -464,7 +464,7 @@ The question is `Does this shop repair bikes?` - *This shop only repairs bikes bought here* is shown if with service:bicycle:repair=only_sold - *This shop only repairs bikes of a certain brand* is shown if with service:bicycle:repair=brand -This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ +This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ ### bicycle_rental @@ -473,7 +473,7 @@ The question is `Does this shop rent out bikes?` - *This shop rents out bikes* is shown if with service:bicycle:rental=yes - *This shop doesn't rent out bikes* is shown if with service:bicycle:rental=no -This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ ### bicycle-types @@ -595,7 +595,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 service:bicycle:cleaning:fee=no - *Free to use* is shown if with service:bicycle:cleaning:fee=yes & 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~.+ ### internet @@ -724,7 +724,7 @@ This tagrendering has labels | id | question | osmTags | -----|-----|----- | | 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.3 | Liquor Store | shop=alcohol | | shop_types.4 | Anime / Manga Shop | shop=anime | diff --git a/Docs/Layers/shops_glutenfree.md b/Docs/Layers/shops_glutenfree.md index 99abdf598..14888a9d1 100644 --- a/Docs/Layers/shops_glutenfree.md +++ b/Docs/Layers/shops_glutenfree.md @@ -440,7 +440,7 @@ The question is `Does this shop sell bikes?` - *This shop sells new bikes* is shown if with service:bicycle:retail=yes - *This shop doesn't sell new bikes* is shown if with service:bicycle:retail=no -This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=diy | shop=doityourself | service:bicycle:retail~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself | service:bicycle:retail~.+ ### bike_second_hand @@ -461,7 +461,7 @@ The question is `Does this shop repair bikes?` - *This shop only repairs bikes bought here* is shown if with service:bicycle:repair=only_sold - *This shop only repairs bikes of a certain brand* is shown if with service:bicycle:repair=brand -This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ +This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ ### bicycle_rental @@ -470,7 +470,7 @@ The question is `Does this shop rent out bikes?` - *This shop rents out bikes* is shown if with service:bicycle:rental=yes - *This shop doesn't rent out bikes* is shown if with service:bicycle:rental=no -This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ ### bicycle-types @@ -592,7 +592,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 service:bicycle:cleaning:fee=no - *Free to use* is shown if with service:bicycle:cleaning:fee=yes & 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~.+ ### internet @@ -708,7 +708,7 @@ This tagrendering has labels | id | question | osmTags | -----|-----|----- | | 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.3 | Liquor Store | shop=alcohol | | shop_types.4 | Anime / Manga Shop | shop=anime | diff --git a/Docs/Layers/shops_lactosefree.md b/Docs/Layers/shops_lactosefree.md index 1cdc41679..3f406d7bf 100644 --- a/Docs/Layers/shops_lactosefree.md +++ b/Docs/Layers/shops_lactosefree.md @@ -440,7 +440,7 @@ The question is `Does this shop sell bikes?` - *This shop sells new bikes* is shown if with service:bicycle:retail=yes - *This shop doesn't sell new bikes* is shown if with service:bicycle:retail=no -This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=diy | shop=doityourself | service:bicycle:retail~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself | service:bicycle:retail~.+ ### bike_second_hand @@ -461,7 +461,7 @@ The question is `Does this shop repair bikes?` - *This shop only repairs bikes bought here* is shown if with service:bicycle:repair=only_sold - *This shop only repairs bikes of a certain brand* is shown if with service:bicycle:repair=brand -This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ +This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ ### bicycle_rental @@ -470,7 +470,7 @@ The question is `Does this shop rent out bikes?` - *This shop rents out bikes* is shown if with service:bicycle:rental=yes - *This shop doesn't rent out bikes* is shown if with service:bicycle:rental=no -This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ ### bicycle-types @@ -592,7 +592,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 service:bicycle:cleaning:fee=no - *Free to use* is shown if with service:bicycle:cleaning:fee=yes & 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~.+ ### internet @@ -708,7 +708,7 @@ This tagrendering has labels | id | question | osmTags | -----|-----|----- | | 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.3 | Liquor Store | shop=alcohol | | shop_types.4 | Anime / Manga Shop | shop=anime | diff --git a/Docs/Layers/shops_second_hand.md b/Docs/Layers/shops_second_hand.md index 9259031e5..95bdbb5ce 100644 --- a/Docs/Layers/shops_second_hand.md +++ b/Docs/Layers/shops_second_hand.md @@ -426,7 +426,7 @@ The question is `Does this shop sell bikes?` - *This shop sells new bikes* is shown if with service:bicycle:retail=yes - *This shop doesn't sell new bikes* is shown if with service:bicycle:retail=no -This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=diy | shop=doityourself | service:bicycle:retail~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself | service:bicycle:retail~.+ ### bike_second_hand @@ -447,7 +447,7 @@ The question is `Does this shop repair bikes?` - *This shop only repairs bikes bought here* is shown if with service:bicycle:repair=only_sold - *This shop only repairs bikes of a certain brand* is shown if with service:bicycle:repair=brand -This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ +This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ ### bicycle_rental @@ -456,7 +456,7 @@ The question is `Does this shop rent out bikes?` - *This shop rents out bikes* is shown if with service:bicycle:rental=yes - *This shop doesn't rent out bikes* is shown if with service:bicycle:rental=no -This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ ### bicycle-types @@ -578,7 +578,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 service:bicycle:cleaning:fee=no - *Free to use* is shown if with service:bicycle:cleaning:fee=yes & 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~.+ ### internet @@ -699,7 +699,7 @@ This tagrendering has labels | id | question | osmTags | -----|-----|----- | | 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.3 | Liquor Store | shop=alcohol | | shop_types.4 | Anime / Manga Shop | shop=anime | diff --git a/Docs/Layers/shops_with_climbing_shoe_repair.md b/Docs/Layers/shops_with_climbing_shoe_repair.md index f783ae36e..acec124a7 100644 --- a/Docs/Layers/shops_with_climbing_shoe_repair.md +++ b/Docs/Layers/shops_with_climbing_shoe_repair.md @@ -435,7 +435,7 @@ The question is `Does this shop sell bikes?` - *This shop sells new bikes* is shown if with service:bicycle:retail=yes - *This shop doesn't sell new bikes* is shown if with service:bicycle:retail=no -This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=diy | shop=doityourself | service:bicycle:retail~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself | service:bicycle:retail~.+ ### bike_second_hand @@ -456,7 +456,7 @@ The question is `Does this shop repair bikes?` - *This shop only repairs bikes bought here* is shown if with service:bicycle:repair=only_sold - *This shop only repairs bikes of a certain brand* is shown if with service:bicycle:repair=brand -This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ +This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ ### bicycle_rental @@ -465,7 +465,7 @@ The question is `Does this shop rent out bikes?` - *This shop rents out bikes* is shown if with service:bicycle:rental=yes - *This shop doesn't rent out bikes* is shown if with service:bicycle:rental=no -This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ ### bicycle-types @@ -587,7 +587,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 service:bicycle:cleaning:fee=no - *Free to use* is shown if with service:bicycle:cleaning:fee=yes & 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~.+ ### internet @@ -716,7 +716,7 @@ This tagrendering has labels | id | question | osmTags | -----|-----|----- | | 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.3 | Liquor Store | shop=alcohol | | shop_types.4 | Anime / Manga Shop | shop=anime | diff --git a/Docs/Layers/sport_pitch.md b/Docs/Layers/sport_pitch.md index c7bdcc747..01cff12b6 100644 --- a/Docs/Layers/sport_pitch.md +++ b/Docs/Layers/sport_pitch.md @@ -185,7 +185,7 @@ This tagrendering has labels | sport_pitch-sport.4 | Tennis is played here | sport=tennis | | sport_pitch-sport.5 | Korfball is played here | sport=korfball | | 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(;.+)$ | diff --git a/Docs/Layers/sport_shops.md b/Docs/Layers/sport_shops.md index e05b0b62e..6266e7476 100644 --- a/Docs/Layers/sport_shops.md +++ b/Docs/Layers/sport_shops.md @@ -430,7 +430,7 @@ The question is `Does this shop sell bikes?` - *This shop sells new bikes* is shown if with service:bicycle:retail=yes - *This shop doesn't sell new bikes* is shown if with service:bicycle:retail=no -This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=diy | shop=doityourself | service:bicycle:retail~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself | service:bicycle:retail~.+ ### bike_second_hand @@ -451,7 +451,7 @@ The question is `Does this shop repair bikes?` - *This shop only repairs bikes bought here* is shown if with service:bicycle:repair=only_sold - *This shop only repairs bikes of a certain brand* is shown if with service:bicycle:repair=brand -This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ +This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ ### bicycle_rental @@ -460,7 +460,7 @@ The question is `Does this shop rent out bikes?` - *This shop rents out bikes* is shown if with service:bicycle:rental=yes - *This shop doesn't rent out bikes* is shown if with service:bicycle:rental=no -This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ ### bicycle-types @@ -582,7 +582,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 service:bicycle:cleaning:fee=no - *Free to use* is shown if with service:bicycle:cleaning:fee=yes & 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~.+ ### internet @@ -711,7 +711,7 @@ This tagrendering has labels | id | question | osmTags | -----|-----|----- | | 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.3 | Liquor Store | shop=alcohol | | shop_types.4 | Anime / Manga Shop | shop=anime | diff --git a/Docs/Layers/tactile_map.md b/Docs/Layers/tactile_map.md new file mode 100644 index 000000000..3e5a0e436 --- /dev/null +++ b/Docs/Layers/tactile_map.md @@ -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:tourism=information & information=tactile_map + +## Basic tags for this layer + +Elements must match the expression **information=tactile_map** + +[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 | +-----|-----|----- | +| [blind:description:en](https://wiki.openstreetmap.org/wiki/Key:blind:description:en) | [string](../SpecialInputElements.md#string) | | +| [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) | +| [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) | +| [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 braille=yes + - *This tactile map does not have braille text.* is shown if with braille=no + +### 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: braille=yes + +### embossed_letters + +The question is `Are there embossed letters on this tactile map?` + + - *This tactile map has embossed letters.* is shown if with embossed_letters=yes + - *This tactile map does not have embossed letters.* is shown if with embossed_letters=no + +### 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: embossed_letters=yes + +### website + +The question is `What is the website of {title()}?` +*{website}* is shown if `website` is set + + - *{contact:website}* 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) diff --git a/Docs/Layers/tactile_model.md b/Docs/Layers/tactile_model.md new file mode 100644 index 000000000..49be18e7a --- /dev/null +++ b/Docs/Layers/tactile_model.md @@ -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:tourism=information & information=tactile_model + +## Basic tags for this layer + +Elements must match the expression **information=tactile_model** + +[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 | +-----|-----|----- | +| [blind:description:en](https://wiki.openstreetmap.org/wiki/Key:blind:description:en) | [string](../SpecialInputElements.md#string) | | +| [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) | +| [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) | +| [scale](https://wiki.openstreetmap.org/wiki/Key:scale) | [string](../SpecialInputElements.md#string) | | +| [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 braille=yes + - *There is no braille description.* is shown if with braille=no + +### 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: braille=yes + +### embossed_letters + +The question is `Are there embossed letters describing the model?` + + - *There are embossed letters describing the model.* is shown if with embossed_letters=yes + - *There are no embossed letters describing the model.* is shown if with embossed_letters=no + +### 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: embossed_letters=yes + +### 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()}?` +*{website}* is shown if `website` is set + + - *{contact:website}* 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) diff --git a/Docs/Layers/walls_and_buildings.md b/Docs/Layers/walls_and_buildings.md index 9ad5d36d4..71e012490 100644 --- a/Docs/Layers/walls_and_buildings.md +++ b/Docs/Layers/walls_and_buildings.md @@ -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 [entrance](#entrance) - 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 [facadegardens](#facadegardens) - 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) - [onwheels](https://mapcomplete.org/onwheels) - [personal](https://mapcomplete.org/personal) + - [postboxes](https://mapcomplete.org/postboxes) - [stations](https://mapcomplete.org/stations) - [surveillance](https://mapcomplete.org/surveillance) - [walls_and_buildings](https://mapcomplete.org/walls_and_buildings) diff --git a/Docs/Making_Your_Own_Theme.md b/Docs/Making_Your_Own_Theme.md index a16889da0..3db8fe6bf 100644 --- a/Docs/Making_Your_Own_Theme.md +++ b/Docs/Making_Your_Own_Theme.md @@ -33,7 +33,7 @@ You can create your own theme at https://mapcomplete.org/studio What is a good theme? --------------------- -A **theme** (or _layout_) is a single map showing one or more layers. +A **theme** is a single map showing one or more layers. The layers should work together in such a way that they serve a certain **audience**. You should be able to state in a few sentences whom would be the user of such a map, e.g. @@ -294,12 +294,12 @@ There are three important levels in the JSON file: Every field is documented in the source code itself - you can find them here: -- [The top level `LayoutConfig`](/src/Models/ThemeConfig/Json/LayoutConfigJson.ts) +- [The top level `ThemeConfig`](/src/Models/ThemeConfig/Json/ThemeConfigJson.ts) - [A layer object `LayerConfig`](/src/Models/ThemeConfig/Json/LayerConfigJson.ts) - [The `TagRendering`](/src/Models/ThemeConfig/Json/TagRenderingConfigJson.ts) - At last, the exact semantics of tags are documented [here](Tags_format.md) -A JSON schema file is available in `Docs/Schemas` - use `LayoutConfig.schema.json` to validate a theme file. +A JSON schema file is available in `Docs/Schemas` - use `ThemeConfig.schema.json` to validate a theme file. ### MetaTags diff --git a/Docs/Reasonings/Android.md b/Docs/Reasonings/Android.md new file mode 100644 index 000000000..a74babd40 --- /dev/null +++ b/Docs/Reasonings/Android.md @@ -0,0 +1,26 @@ +# Android experiments + +This document keeps track of the approaches used to implement https://github.com/pietervdvn/MapComplete/issues/2112 + +It is espacially used to document the dead ends + +## 1. Bubblewrap + +Guide: https://developers.google.com/codelabs/pwa-in-play#1 + +TODO: add "shortcuts" to the web manifest: https://web.dev/articles/app-shortcuts +TODO: add "screenshots" to the web manifest +Keystore: /home/pietervdvn/git/MapComplete-android-bubblewrap/android.keystore + +### To build and deploy the latest version + +bubblewrap build +adb install app-release-signed.apk + +### Results + +Quick to setup, but opens in Fennec/Brave/some default browser... _with_ a UI Element + +Seems to only support chrome + +## 2. Writing our own webview diff --git a/Docs/Schemas/DenominationConfigJson.schema.json b/Docs/Schemas/DenominationConfigJson.schema.json index 5f4f5cc02..a56187795 100644 --- a/Docs/Schemas/DenominationConfigJson.schema.json +++ b/Docs/Schemas/DenominationConfigJson.schema.json @@ -60,6 +60,73 @@ ], "additionalProperties": false }, + "FilterConfigOptionJson": { + "type": "object", + "properties": { + "question": { + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "searchTerms": { + "$ref": "#/definitions/Record" + }, + "emoji": { + "type": "string" + }, + "icon": { + "type": "string" + }, + "osmTags": { + "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "default": { + "type": "boolean" + }, + "fields": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "description": "If name is `search`, use \"_first_comment~.*{search}.*\" as osmTags", + "type": "string" + }, + "type": { + "type": "string" + } + }, + "required": [ + "name" + ] + } + } + }, + "required": [ + "question" + ], + "additionalProperties": false + }, + "Record": { + "type": "object", + "additionalProperties": false + }, "Record>": { "type": "object", "additionalProperties": false diff --git a/Docs/Schemas/FilterConfigJson.schema.json b/Docs/Schemas/FilterConfigJson.schema.json index 24db048c9..208c4ecb4 100644 --- a/Docs/Schemas/FilterConfigJson.schema.json +++ b/Docs/Schemas/FilterConfigJson.schema.json @@ -9,48 +9,7 @@ "description": "The options for a filter\nIf there are multiple options these will be a list of radio buttons\nIf there is only one option this will be a checkbox\nFiltering is done based on the given osmTags that are compared to the objects in that layer.\n\nAn example which searches by name:\n\n```\n{\n \"id\": \"shop-name\",\n \"options\": [\n {\n \"fields\": [\n {\n \"name\": \"search\",\n \"type\": \"string\"\n }\n ],\n \"osmTags\": \"name~i~.*{search}.*\",\n \"question\": {\n \"en\": \"Only show shops with name {search}\",\n }\n }\n ]\n }\n ```", "type": "array", "items": { - "type": "object", - "properties": { - "question": {}, - "osmTags": { - "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag", - "anyOf": [ - { - "$ref": "#/definitions/{and:TagConfigJson[];}" - }, - { - "$ref": "#/definitions/{or:TagConfigJson[];}" - }, - { - "type": "string" - } - ] - }, - "default": { - "type": "boolean" - }, - "fields": { - "type": "array", - "items": { - "type": "object", - "properties": { - "name": { - "description": "If name is `search`, use \"_first_comment~.*{search}.*\" as osmTags", - "type": "string" - }, - "type": { - "type": "string" - } - }, - "required": [ - "name" - ] - } - } - }, - "required": [ - "question" - ] + "$ref": "#/definitions/FilterConfigOptionJson" } }, "#": { @@ -121,6 +80,73 @@ "or" ], "additionalProperties": false + }, + "FilterConfigOptionJson": { + "type": "object", + "properties": { + "question": { + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "searchTerms": { + "$ref": "#/definitions/Record" + }, + "emoji": { + "type": "string" + }, + "icon": { + "type": "string" + }, + "osmTags": { + "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "default": { + "type": "boolean" + }, + "fields": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "description": "If name is `search`, use \"_first_comment~.*{search}.*\" as osmTags", + "type": "string" + }, + "type": { + "type": "string" + } + }, + "required": [ + "name" + ] + } + } + }, + "required": [ + "question" + ], + "additionalProperties": false + }, + "Record": { + "type": "object", + "additionalProperties": false } }, "$schema": "http://json-schema.org/draft-07/schema#", diff --git a/Docs/Schemas/IconConfigJson.schema.json b/Docs/Schemas/IconConfigJson.schema.json index d002c7bc4..144998e53 100644 --- a/Docs/Schemas/IconConfigJson.schema.json +++ b/Docs/Schemas/IconConfigJson.schema.json @@ -113,6 +113,73 @@ ], "additionalProperties": false }, + "FilterConfigOptionJson": { + "type": "object", + "properties": { + "question": { + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "searchTerms": { + "$ref": "#/definitions/Record" + }, + "emoji": { + "type": "string" + }, + "icon": { + "type": "string" + }, + "osmTags": { + "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "default": { + "type": "boolean" + }, + "fields": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "description": "If name is `search`, use \"_first_comment~.*{search}.*\" as osmTags", + "type": "string" + }, + "type": { + "type": "string" + } + }, + "required": [ + "name" + ] + } + } + }, + "required": [ + "question" + ], + "additionalProperties": false + }, + "Record": { + "type": "object", + "additionalProperties": false + }, "Record>": { "type": "object", "additionalProperties": false diff --git a/Docs/Schemas/LayerConfigJson.schema.json b/Docs/Schemas/LayerConfigJson.schema.json index dd88f554c..684e142f1 100644 --- a/Docs/Schemas/LayerConfigJson.schema.json +++ b/Docs/Schemas/LayerConfigJson.schema.json @@ -18,7 +18,7 @@ ] }, "description": { - "description": "A description for the features shown in this layer.\nThis often resembles the introduction of the wiki.osm.org-page for this feature.\n\ngroup: Basic\nquestion: How would you describe the features that are shown on this layer?", + "description": "question: How would you describe the features that are shown on this layer?\n\nA description for the features shown in this layer.\nThis often resembles the introduction of the wiki.osm.org-page for this feature.\n\ngroup: Basic", "anyOf": [ { "$ref": "#/definitions/Record" @@ -28,6 +28,10 @@ } ] }, + "searchTerms": { + "description": "question: What are some other terms used to describe these objects?\n\nThis is used in the search functionality", + "$ref": "#/definitions/Record" + }, "source": { "description": "Question: Where should the data be fetched from?\ntitle: Data Source\n\nThis determines where the data for the layer is fetched: from OSM or from an external geojson dataset.\n\nIf no 'geojson' is defined, data will be fetched from overpass and the OSM-API.\n\nEvery source _must_ define which tags _must_ be present in order to be picked up.\n\nNote: a source must always be defined. 'special' is only allowed if this is a builtin-layer\n\ntypes: Load data with specific tags from OpenStreetMap ; Load data from an external geojson source ;\ntypesdefault: 0\nifunset: Determine the tags automatically based on the presets\ngroup: Basic", "anyOf": [ @@ -324,7 +328,7 @@ } }, "filter": { - "description": "All the extra questions for filtering.\nIf a string is given, mapComplete will search in\n1. The tagrenderings for a match on ID and use the mappings as options\n2. search 'filters.json' for the appropriate filter or\n3. will try to parse it as `layername.filterid` and us that one.\n\n\ngroup: filters", + "description": "All the extra questions for filtering.\nIf a string is given, mapComplete will search in\n1. The tagrenderings for a match on ID and use the mappings as options\n2. search 'filters.json' for the appropriate filter or\n3. will try to parse it as `layername.filterid` and us that one.\n\nNote: adding \"#filter\":\"no-auto\" will disable the filters added by tagRenderings\n\ngroup: filters", "anyOf": [ { "type": "array", @@ -352,6 +356,13 @@ } ] }, + "#filter": { + "description": "Set this to disable the feature that tagRenderings can introduce filters", + "enum": [ + "no-auto" + ], + "type": "string" + }, "deletion": { "description": "This block defines under what circumstances the delete dialog is shown for objects of this layer.\nIf set, a dialog is shown to the user to (soft) delete the point.\nThe dialog is built to be user friendly and to prevent mistakes.\nIf deletion is not possible, the dialog will hide itself and show the reason of non-deletability instead.\n\nTo configure, the following values are possible:\n\n- false: never ever show the delete button\n- true: show the default delete button\n- undefined: use the mapcomplete default to show deletion or not. Currently, this is the same as 'false' but this will change in the future\n- or: a hash with options (see below)\n\n### The delete dialog\n\n\n\n#### Hard deletion if enough experience\n\nA feature can only be deleted from OpenStreetMap by mapcomplete if:\n\n- It is a node\n- No ways or relations use the node\n- The logged-in user has enough experience OR the user is the only one to have edited the point previously\n- The logged-in user has no unread messages (or has a ton of experience)\n- The user did not select one of the 'non-delete-options' (see below)\n\nIn all other cases, a 'soft deletion' is used.\n\n#### Soft deletion\n\nA 'soft deletion' is when the point isn't deleted fromOSM but retagged so that it'll won't how up in the mapcomplete theme anymore.\nThis makes it look like it was deleted, without doing damage. A fixme will be added to the point.\n\nNote that a soft deletion is _only_ possible if these tags are provided by the theme creator, as they'll be different for every theme\n\n##### No-delete options\n\nIn some cases, the contributor might want to delete something for the wrong reason (e.g. someone who wants to have a path removed \"because the path is on their private property\").\nHowever, the path exists in reality and should thus be on OSM - otherwise the next contributor will pass by and notice \"hey, there is a path missing here! Let me redraw it in OSM!)\n\nThe correct approach is to retag the feature in such a way that it is semantically correct *and* that it doesn't show up on the theme anymore.\nA no-delete option is offered as 'reason to delete it', but secretly retags.\n\ngroup: editing\ntypes: Use an advanced delete configuration ; boolean\niftrue: Allow deletion\niffalse: Do not allow deletion\nifunset: Do not allow deletion", "anyOf": [ @@ -413,6 +424,17 @@ "enableMorePrivacy": { "description": "question: Should a theme using this layer leak some location info when making changes?\n\nWhen a changeset is made, a 'distance to object'-class is written to the changeset.\nFor some particular themes and layers, this might leak too much information, and we want to obfuscate this\n\nifunset: Write 'change_within_x_m' as usual and if GPS is enabled\niftrue: Do not write 'change_within_x_m' and do not indicate that this was done by survey", "type": "boolean" + }, + "snapName": { + "description": "question: When a feature is snapped to this name, how should this item be called?\n\nIn the move wizard, the option `snap object onto {snapName}` is shown\n\ngroup: hidden", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] } }, "required": [ @@ -479,6 +501,73 @@ ], "additionalProperties": false }, + "FilterConfigOptionJson": { + "type": "object", + "properties": { + "question": { + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "searchTerms": { + "$ref": "#/definitions/Record" + }, + "emoji": { + "type": "string" + }, + "icon": { + "type": "string" + }, + "osmTags": { + "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "default": { + "type": "boolean" + }, + "fields": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "description": "If name is `search`, use \"_first_comment~.*{search}.*\" as osmTags", + "type": "string" + }, + "type": { + "type": "string" + } + }, + "required": [ + "name" + ] + } + } + }, + "required": [ + "question" + ], + "additionalProperties": false + }, + "Record": { + "type": "object", + "additionalProperties": false + }, "Record>": { "type": "object", "additionalProperties": false @@ -812,18 +901,24 @@ }, "filter": { "description": "This tagRendering can introduce this builtin filter", - "type": "array", - "items": { - "type": "string" - } + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "enum": [ + true + ], + "type": "boolean" + } + ] } }, "additionalProperties": false }, - "Record": { - "type": "object", - "additionalProperties": false - }, "MappingConfigJson": { "type": "object", "properties": { @@ -1333,7 +1428,7 @@ ] }, "labels": { - "description": "A list of labels. These are strings that are used for various purposes, e.g. to only include a subset of the tagRenderings when reusing a layer", + "description": "What labels should be applied on this tagRendering?\n\nA list of labels. These are strings that are used for various purposes, e.g. to only include a subset of the tagRenderings when reusing a layer\n\nSpecial values:\n- \"hidden\": do not show this tagRendering. Useful in it is used by e.g. an accordion\n- \"description\": this label is a description used in the search", "type": "array", "items": { "type": "string" @@ -1445,10 +1540,20 @@ }, "filter": { "description": "This tagRendering can introduce this builtin filter", - "type": "array", - "items": { - "type": "string" - } + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "enum": [ + true + ], + "type": "boolean" + } + ] } }, "required": [ @@ -1571,7 +1676,7 @@ ] }, "labels": { - "description": "A list of labels. These are strings that are used for various purposes, e.g. to only include a subset of the tagRenderings when reusing a layer", + "description": "What labels should be applied on this tagRendering?\n\nA list of labels. These are strings that are used for various purposes, e.g. to only include a subset of the tagRenderings when reusing a layer\n\nSpecial values:\n- \"hidden\": do not show this tagRendering. Useful in it is used by e.g. an accordion\n- \"description\": this label is a description used in the search", "type": "array", "items": { "type": "string" @@ -1683,10 +1788,20 @@ }, "filter": { "description": "This tagRendering can introduce this builtin filter", - "type": "array", - "items": { - "type": "string" - } + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "enum": [ + true + ], + "type": "boolean" + } + ] } }, "additionalProperties": false @@ -1802,48 +1917,7 @@ "description": "The options for a filter\nIf there are multiple options these will be a list of radio buttons\nIf there is only one option this will be a checkbox\nFiltering is done based on the given osmTags that are compared to the objects in that layer.\n\nAn example which searches by name:\n\n```\n{\n \"id\": \"shop-name\",\n \"options\": [\n {\n \"fields\": [\n {\n \"name\": \"search\",\n \"type\": \"string\"\n }\n ],\n \"osmTags\": \"name~i~.*{search}.*\",\n \"question\": {\n \"en\": \"Only show shops with name {search}\",\n }\n }\n ]\n }\n ```", "type": "array", "items": { - "type": "object", - "properties": { - "question": {}, - "osmTags": { - "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag", - "anyOf": [ - { - "$ref": "#/definitions/{and:TagConfigJson[];}" - }, - { - "$ref": "#/definitions/{or:TagConfigJson[];}" - }, - { - "type": "string" - } - ] - }, - "default": { - "type": "boolean" - }, - "fields": { - "type": "array", - "items": { - "type": "object", - "properties": { - "name": { - "description": "If name is `search`, use \"_first_comment~.*{search}.*\" as osmTags", - "type": "string" - }, - "type": { - "type": "string" - } - }, - "required": [ - "name" - ] - } - } - }, - "required": [ - "question" - ] + "$ref": "#/definitions/FilterConfigOptionJson" } }, "#": { diff --git a/Docs/Schemas/LayoutConfigJson.schema.json b/Docs/Schemas/LayoutConfigJson.schema.json index 984b85e37..2dde50d99 100644 --- a/Docs/Schemas/LayoutConfigJson.schema.json +++ b/Docs/Schemas/LayoutConfigJson.schema.json @@ -381,6 +381,73 @@ ], "additionalProperties": false }, + "FilterConfigOptionJson": { + "type": "object", + "properties": { + "question": { + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "searchTerms": { + "$ref": "#/definitions/Record" + }, + "emoji": { + "type": "string" + }, + "icon": { + "type": "string" + }, + "osmTags": { + "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "default": { + "type": "boolean" + }, + "fields": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "description": "If name is `search`, use \"_first_comment~.*{search}.*\" as osmTags", + "type": "string" + }, + "type": { + "type": "string" + } + }, + "required": [ + "name" + ] + } + } + }, + "required": [ + "question" + ], + "additionalProperties": false + }, + "Record": { + "type": "object", + "additionalProperties": false + }, "Record>": { "type": "object", "additionalProperties": false @@ -714,18 +781,24 @@ }, "filter": { "description": "This tagRendering can introduce this builtin filter", - "type": "array", - "items": { - "type": "string" - } + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "enum": [ + true + ], + "type": "boolean" + } + ] } }, "additionalProperties": false }, - "Record": { - "type": "object", - "additionalProperties": false - }, "MappingConfigJson": { "type": "object", "properties": { @@ -1235,7 +1308,7 @@ ] }, "labels": { - "description": "A list of labels. These are strings that are used for various purposes, e.g. to only include a subset of the tagRenderings when reusing a layer", + "description": "What labels should be applied on this tagRendering?\n\nA list of labels. These are strings that are used for various purposes, e.g. to only include a subset of the tagRenderings when reusing a layer\n\nSpecial values:\n- \"hidden\": do not show this tagRendering. Useful in it is used by e.g. an accordion\n- \"description\": this label is a description used in the search", "type": "array", "items": { "type": "string" @@ -1347,10 +1420,20 @@ }, "filter": { "description": "This tagRendering can introduce this builtin filter", - "type": "array", - "items": { - "type": "string" - } + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "enum": [ + true + ], + "type": "boolean" + } + ] } }, "required": [ @@ -1473,7 +1556,7 @@ ] }, "labels": { - "description": "A list of labels. These are strings that are used for various purposes, e.g. to only include a subset of the tagRenderings when reusing a layer", + "description": "What labels should be applied on this tagRendering?\n\nA list of labels. These are strings that are used for various purposes, e.g. to only include a subset of the tagRenderings when reusing a layer\n\nSpecial values:\n- \"hidden\": do not show this tagRendering. Useful in it is used by e.g. an accordion\n- \"description\": this label is a description used in the search", "type": "array", "items": { "type": "string" @@ -1585,10 +1668,20 @@ }, "filter": { "description": "This tagRendering can introduce this builtin filter", - "type": "array", - "items": { - "type": "string" - } + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "enum": [ + true + ], + "type": "boolean" + } + ] } }, "additionalProperties": false @@ -1704,48 +1797,7 @@ "description": "The options for a filter\nIf there are multiple options these will be a list of radio buttons\nIf there is only one option this will be a checkbox\nFiltering is done based on the given osmTags that are compared to the objects in that layer.\n\nAn example which searches by name:\n\n```\n{\n \"id\": \"shop-name\",\n \"options\": [\n {\n \"fields\": [\n {\n \"name\": \"search\",\n \"type\": \"string\"\n }\n ],\n \"osmTags\": \"name~i~.*{search}.*\",\n \"question\": {\n \"en\": \"Only show shops with name {search}\",\n }\n }\n ]\n }\n ```", "type": "array", "items": { - "type": "object", - "properties": { - "question": {}, - "osmTags": { - "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag", - "anyOf": [ - { - "$ref": "#/definitions/{and:TagConfigJson[];}" - }, - { - "$ref": "#/definitions/{or:TagConfigJson[];}" - }, - { - "type": "string" - } - ] - }, - "default": { - "type": "boolean" - }, - "fields": { - "type": "array", - "items": { - "type": "object", - "properties": { - "name": { - "description": "If name is `search`, use \"_first_comment~.*{search}.*\" as osmTags", - "type": "string" - }, - "type": { - "type": "string" - } - }, - "required": [ - "name" - ] - } - } - }, - "required": [ - "question" - ] + "$ref": "#/definitions/FilterConfigOptionJson" } }, "#": { @@ -1964,7 +2016,7 @@ ] }, "description": { - "description": "A description for the features shown in this layer.\nThis often resembles the introduction of the wiki.osm.org-page for this feature.\n\ngroup: Basic\nquestion: How would you describe the features that are shown on this layer?", + "description": "question: How would you describe the features that are shown on this layer?\n\nA description for the features shown in this layer.\nThis often resembles the introduction of the wiki.osm.org-page for this feature.\n\ngroup: Basic", "anyOf": [ { "$ref": "#/definitions/Record" @@ -1974,6 +2026,10 @@ } ] }, + "searchTerms": { + "description": "question: What are some other terms used to describe these objects?\n\nThis is used in the search functionality", + "$ref": "#/definitions/Record" + }, "source": { "description": "Question: Where should the data be fetched from?\ntitle: Data Source\n\nThis determines where the data for the layer is fetched: from OSM or from an external geojson dataset.\n\nIf no 'geojson' is defined, data will be fetched from overpass and the OSM-API.\n\nEvery source _must_ define which tags _must_ be present in order to be picked up.\n\nNote: a source must always be defined. 'special' is only allowed if this is a builtin-layer\n\ntypes: Load data with specific tags from OpenStreetMap ; Load data from an external geojson source ;\ntypesdefault: 0\nifunset: Determine the tags automatically based on the presets\ngroup: Basic", "anyOf": [ @@ -2270,7 +2326,7 @@ } }, "filter": { - "description": "All the extra questions for filtering.\nIf a string is given, mapComplete will search in\n1. The tagrenderings for a match on ID and use the mappings as options\n2. search 'filters.json' for the appropriate filter or\n3. will try to parse it as `layername.filterid` and us that one.\n\n\ngroup: filters", + "description": "All the extra questions for filtering.\nIf a string is given, mapComplete will search in\n1. The tagrenderings for a match on ID and use the mappings as options\n2. search 'filters.json' for the appropriate filter or\n3. will try to parse it as `layername.filterid` and us that one.\n\nNote: adding \"#filter\":\"no-auto\" will disable the filters added by tagRenderings\n\ngroup: filters", "anyOf": [ { "type": "array", @@ -2298,6 +2354,13 @@ } ] }, + "#filter": { + "description": "Set this to disable the feature that tagRenderings can introduce filters", + "enum": [ + "no-auto" + ], + "type": "string" + }, "deletion": { "description": "This block defines under what circumstances the delete dialog is shown for objects of this layer.\nIf set, a dialog is shown to the user to (soft) delete the point.\nThe dialog is built to be user friendly and to prevent mistakes.\nIf deletion is not possible, the dialog will hide itself and show the reason of non-deletability instead.\n\nTo configure, the following values are possible:\n\n- false: never ever show the delete button\n- true: show the default delete button\n- undefined: use the mapcomplete default to show deletion or not. Currently, this is the same as 'false' but this will change in the future\n- or: a hash with options (see below)\n\n### The delete dialog\n\n\n\n#### Hard deletion if enough experience\n\nA feature can only be deleted from OpenStreetMap by mapcomplete if:\n\n- It is a node\n- No ways or relations use the node\n- The logged-in user has enough experience OR the user is the only one to have edited the point previously\n- The logged-in user has no unread messages (or has a ton of experience)\n- The user did not select one of the 'non-delete-options' (see below)\n\nIn all other cases, a 'soft deletion' is used.\n\n#### Soft deletion\n\nA 'soft deletion' is when the point isn't deleted fromOSM but retagged so that it'll won't how up in the mapcomplete theme anymore.\nThis makes it look like it was deleted, without doing damage. A fixme will be added to the point.\n\nNote that a soft deletion is _only_ possible if these tags are provided by the theme creator, as they'll be different for every theme\n\n##### No-delete options\n\nIn some cases, the contributor might want to delete something for the wrong reason (e.g. someone who wants to have a path removed \"because the path is on their private property\").\nHowever, the path exists in reality and should thus be on OSM - otherwise the next contributor will pass by and notice \"hey, there is a path missing here! Let me redraw it in OSM!)\n\nThe correct approach is to retag the feature in such a way that it is semantically correct *and* that it doesn't show up on the theme anymore.\nA no-delete option is offered as 'reason to delete it', but secretly retags.\n\ngroup: editing\ntypes: Use an advanced delete configuration ; boolean\niftrue: Allow deletion\niffalse: Do not allow deletion\nifunset: Do not allow deletion", "anyOf": [ @@ -2359,6 +2422,17 @@ "enableMorePrivacy": { "description": "question: Should a theme using this layer leak some location info when making changes?\n\nWhen a changeset is made, a 'distance to object'-class is written to the changeset.\nFor some particular themes and layers, this might leak too much information, and we want to obfuscate this\n\nifunset: Write 'change_within_x_m' as usual and if GPS is enabled\niftrue: Do not write 'change_within_x_m' and do not indicate that this was done by survey", "type": "boolean" + }, + "snapName": { + "description": "question: When a feature is snapped to this name, how should this item be called?\n\nIn the move wizard, the option `snap object onto {snapName}` is shown\n\ngroup: hidden", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] } }, "required": [ @@ -2386,7 +2460,7 @@ ] }, "description": { - "description": "A description for the features shown in this layer.\nThis often resembles the introduction of the wiki.osm.org-page for this feature.\n\ngroup: Basic\nquestion: How would you describe the features that are shown on this layer?", + "description": "question: How would you describe the features that are shown on this layer?\n\nA description for the features shown in this layer.\nThis often resembles the introduction of the wiki.osm.org-page for this feature.\n\ngroup: Basic", "anyOf": [ { "$ref": "#/definitions/Record" @@ -2396,6 +2470,10 @@ } ] }, + "searchTerms": { + "description": "question: What are some other terms used to describe these objects?\n\nThis is used in the search functionality", + "$ref": "#/definitions/Record" + }, "source": { "description": "Question: Where should the data be fetched from?\ntitle: Data Source\n\nThis determines where the data for the layer is fetched: from OSM or from an external geojson dataset.\n\nIf no 'geojson' is defined, data will be fetched from overpass and the OSM-API.\n\nEvery source _must_ define which tags _must_ be present in order to be picked up.\n\nNote: a source must always be defined. 'special' is only allowed if this is a builtin-layer\n\ntypes: Load data with specific tags from OpenStreetMap ; Load data from an external geojson source ;\ntypesdefault: 0\nifunset: Determine the tags automatically based on the presets\ngroup: Basic", "anyOf": [ @@ -2692,7 +2770,7 @@ } }, "filter": { - "description": "All the extra questions for filtering.\nIf a string is given, mapComplete will search in\n1. The tagrenderings for a match on ID and use the mappings as options\n2. search 'filters.json' for the appropriate filter or\n3. will try to parse it as `layername.filterid` and us that one.\n\n\ngroup: filters", + "description": "All the extra questions for filtering.\nIf a string is given, mapComplete will search in\n1. The tagrenderings for a match on ID and use the mappings as options\n2. search 'filters.json' for the appropriate filter or\n3. will try to parse it as `layername.filterid` and us that one.\n\nNote: adding \"#filter\":\"no-auto\" will disable the filters added by tagRenderings\n\ngroup: filters", "anyOf": [ { "type": "array", @@ -2720,6 +2798,13 @@ } ] }, + "#filter": { + "description": "Set this to disable the feature that tagRenderings can introduce filters", + "enum": [ + "no-auto" + ], + "type": "string" + }, "deletion": { "description": "This block defines under what circumstances the delete dialog is shown for objects of this layer.\nIf set, a dialog is shown to the user to (soft) delete the point.\nThe dialog is built to be user friendly and to prevent mistakes.\nIf deletion is not possible, the dialog will hide itself and show the reason of non-deletability instead.\n\nTo configure, the following values are possible:\n\n- false: never ever show the delete button\n- true: show the default delete button\n- undefined: use the mapcomplete default to show deletion or not. Currently, this is the same as 'false' but this will change in the future\n- or: a hash with options (see below)\n\n### The delete dialog\n\n\n\n#### Hard deletion if enough experience\n\nA feature can only be deleted from OpenStreetMap by mapcomplete if:\n\n- It is a node\n- No ways or relations use the node\n- The logged-in user has enough experience OR the user is the only one to have edited the point previously\n- The logged-in user has no unread messages (or has a ton of experience)\n- The user did not select one of the 'non-delete-options' (see below)\n\nIn all other cases, a 'soft deletion' is used.\n\n#### Soft deletion\n\nA 'soft deletion' is when the point isn't deleted fromOSM but retagged so that it'll won't how up in the mapcomplete theme anymore.\nThis makes it look like it was deleted, without doing damage. A fixme will be added to the point.\n\nNote that a soft deletion is _only_ possible if these tags are provided by the theme creator, as they'll be different for every theme\n\n##### No-delete options\n\nIn some cases, the contributor might want to delete something for the wrong reason (e.g. someone who wants to have a path removed \"because the path is on their private property\").\nHowever, the path exists in reality and should thus be on OSM - otherwise the next contributor will pass by and notice \"hey, there is a path missing here! Let me redraw it in OSM!)\n\nThe correct approach is to retag the feature in such a way that it is semantically correct *and* that it doesn't show up on the theme anymore.\nA no-delete option is offered as 'reason to delete it', but secretly retags.\n\ngroup: editing\ntypes: Use an advanced delete configuration ; boolean\niftrue: Allow deletion\niffalse: Do not allow deletion\nifunset: Do not allow deletion", "anyOf": [ @@ -2781,6 +2866,17 @@ "enableMorePrivacy": { "description": "question: Should a theme using this layer leak some location info when making changes?\n\nWhen a changeset is made, a 'distance to object'-class is written to the changeset.\nFor some particular themes and layers, this might leak too much information, and we want to obfuscate this\n\nifunset: Write 'change_within_x_m' as usual and if GPS is enabled\niftrue: Do not write 'change_within_x_m' and do not indicate that this was done by survey", "type": "boolean" + }, + "snapName": { + "description": "question: When a feature is snapped to this name, how should this item be called?\n\nIn the move wizard, the option `snap object onto {snapName}` is shown\n\ngroup: hidden", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] } }, "additionalProperties": false diff --git a/Docs/Schemas/LineRenderingConfigJson.schema.json b/Docs/Schemas/LineRenderingConfigJson.schema.json index b65b2fdf9..6356b7d70 100644 --- a/Docs/Schemas/LineRenderingConfigJson.schema.json +++ b/Docs/Schemas/LineRenderingConfigJson.schema.json @@ -152,6 +152,73 @@ ], "additionalProperties": false }, + "FilterConfigOptionJson": { + "type": "object", + "properties": { + "question": { + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "searchTerms": { + "$ref": "#/definitions/Record" + }, + "emoji": { + "type": "string" + }, + "icon": { + "type": "string" + }, + "osmTags": { + "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "default": { + "type": "boolean" + }, + "fields": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "description": "If name is `search`, use \"_first_comment~.*{search}.*\" as osmTags", + "type": "string" + }, + "type": { + "type": "string" + } + }, + "required": [ + "name" + ] + } + } + }, + "required": [ + "question" + ], + "additionalProperties": false + }, + "Record": { + "type": "object", + "additionalProperties": false + }, "Record>": { "type": "object", "additionalProperties": false @@ -485,10 +552,20 @@ }, "filter": { "description": "This tagRendering can introduce this builtin filter", - "type": "array", - "items": { - "type": "string" - } + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "enum": [ + true + ], + "type": "boolean" + } + ] } }, "additionalProperties": false diff --git a/Docs/Schemas/MappingConfigJson.schema.json b/Docs/Schemas/MappingConfigJson.schema.json index f6d5ddbc6..0df8a69e9 100644 --- a/Docs/Schemas/MappingConfigJson.schema.json +++ b/Docs/Schemas/MappingConfigJson.schema.json @@ -179,6 +179,73 @@ ], "additionalProperties": false }, + "FilterConfigOptionJson": { + "type": "object", + "properties": { + "question": { + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "searchTerms": { + "$ref": "#/definitions/Record" + }, + "emoji": { + "type": "string" + }, + "icon": { + "type": "string" + }, + "osmTags": { + "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "default": { + "type": "boolean" + }, + "fields": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "description": "If name is `search`, use \"_first_comment~.*{search}.*\" as osmTags", + "type": "string" + }, + "type": { + "type": "string" + } + }, + "required": [ + "name" + ] + } + } + }, + "required": [ + "question" + ], + "additionalProperties": false + }, + "Record": { + "type": "object", + "additionalProperties": false + }, "Record>": { "type": "object", "additionalProperties": false @@ -512,17 +579,23 @@ }, "filter": { "description": "This tagRendering can introduce this builtin filter", - "type": "array", - "items": { - "type": "string" - } + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "enum": [ + true + ], + "type": "boolean" + } + ] } }, "additionalProperties": false - }, - "Record": { - "type": "object", - "additionalProperties": false } }, "$schema": "http://json-schema.org/draft-07/schema#", diff --git a/Docs/Schemas/MinimalTagRenderingConfigJson.schema.json b/Docs/Schemas/MinimalTagRenderingConfigJson.schema.json index 38a9b1ea5..01afd84ce 100644 --- a/Docs/Schemas/MinimalTagRenderingConfigJson.schema.json +++ b/Docs/Schemas/MinimalTagRenderingConfigJson.schema.json @@ -87,6 +87,73 @@ "or" ], "additionalProperties": false + }, + "FilterConfigOptionJson": { + "type": "object", + "properties": { + "question": { + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "searchTerms": { + "$ref": "#/definitions/Record" + }, + "emoji": { + "type": "string" + }, + "icon": { + "type": "string" + }, + "osmTags": { + "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "default": { + "type": "boolean" + }, + "fields": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "description": "If name is `search`, use \"_first_comment~.*{search}.*\" as osmTags", + "type": "string" + }, + "type": { + "type": "string" + } + }, + "required": [ + "name" + ] + } + } + }, + "required": [ + "question" + ], + "additionalProperties": false + }, + "Record": { + "type": "object", + "additionalProperties": false } }, "$schema": "http://json-schema.org/draft-07/schema#", diff --git a/Docs/Schemas/MoveConfigJson.schema.json b/Docs/Schemas/MoveConfigJson.schema.json index 14ffd3768..0dfc010a5 100644 --- a/Docs/Schemas/MoveConfigJson.schema.json +++ b/Docs/Schemas/MoveConfigJson.schema.json @@ -70,6 +70,73 @@ ], "additionalProperties": false }, + "FilterConfigOptionJson": { + "type": "object", + "properties": { + "question": { + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "searchTerms": { + "$ref": "#/definitions/Record" + }, + "emoji": { + "type": "string" + }, + "icon": { + "type": "string" + }, + "osmTags": { + "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "default": { + "type": "boolean" + }, + "fields": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "description": "If name is `search`, use \"_first_comment~.*{search}.*\" as osmTags", + "type": "string" + }, + "type": { + "type": "string" + } + }, + "required": [ + "name" + ] + } + } + }, + "required": [ + "question" + ], + "additionalProperties": false + }, + "Record": { + "type": "object", + "additionalProperties": false + }, "Record>": { "type": "object", "additionalProperties": false diff --git a/Docs/Schemas/PointRenderingConfigJson.schema.json b/Docs/Schemas/PointRenderingConfigJson.schema.json index cc73b530a..70b806ee7 100644 --- a/Docs/Schemas/PointRenderingConfigJson.schema.json +++ b/Docs/Schemas/PointRenderingConfigJson.schema.json @@ -226,6 +226,73 @@ ], "additionalProperties": false }, + "FilterConfigOptionJson": { + "type": "object", + "properties": { + "question": { + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "searchTerms": { + "$ref": "#/definitions/Record" + }, + "emoji": { + "type": "string" + }, + "icon": { + "type": "string" + }, + "osmTags": { + "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "default": { + "type": "boolean" + }, + "fields": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "description": "If name is `search`, use \"_first_comment~.*{search}.*\" as osmTags", + "type": "string" + }, + "type": { + "type": "string" + } + }, + "required": [ + "name" + ] + } + } + }, + "required": [ + "question" + ], + "additionalProperties": false + }, + "Record": { + "type": "object", + "additionalProperties": false + }, "Record>": { "type": "object", "additionalProperties": false @@ -559,10 +626,20 @@ }, "filter": { "description": "This tagRendering can introduce this builtin filter", - "type": "array", - "items": { - "type": "string" - } + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "enum": [ + true + ], + "type": "boolean" + } + ] } }, "additionalProperties": false diff --git a/Docs/Schemas/QuestionableTagRenderingConfigJson.schema.json b/Docs/Schemas/QuestionableTagRenderingConfigJson.schema.json index da24141e2..8c1d81199 100644 --- a/Docs/Schemas/QuestionableTagRenderingConfigJson.schema.json +++ b/Docs/Schemas/QuestionableTagRenderingConfigJson.schema.json @@ -114,7 +114,7 @@ ] }, "labels": { - "description": "A list of labels. These are strings that are used for various purposes, e.g. to only include a subset of the tagRenderings when reusing a layer", + "description": "What labels should be applied on this tagRendering?\n\nA list of labels. These are strings that are used for various purposes, e.g. to only include a subset of the tagRenderings when reusing a layer\n\nSpecial values:\n- \"hidden\": do not show this tagRendering. Useful in it is used by e.g. an accordion\n- \"description\": this label is a description used in the search", "type": "array", "items": { "type": "string" @@ -226,10 +226,20 @@ }, "filter": { "description": "This tagRendering can introduce this builtin filter", - "type": "array", - "items": { - "type": "string" - } + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "enum": [ + true + ], + "type": "boolean" + } + ] } }, "required": [ @@ -295,6 +305,73 @@ ], "additionalProperties": false }, + "FilterConfigOptionJson": { + "type": "object", + "properties": { + "question": { + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "searchTerms": { + "$ref": "#/definitions/Record" + }, + "emoji": { + "type": "string" + }, + "icon": { + "type": "string" + }, + "osmTags": { + "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "default": { + "type": "boolean" + }, + "fields": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "description": "If name is `search`, use \"_first_comment~.*{search}.*\" as osmTags", + "type": "string" + }, + "type": { + "type": "string" + } + }, + "required": [ + "name" + ] + } + } + }, + "required": [ + "question" + ], + "additionalProperties": false + }, + "Record": { + "type": "object", + "additionalProperties": false + }, "Record>": { "type": "object", "additionalProperties": false @@ -628,18 +705,24 @@ }, "filter": { "description": "This tagRendering can introduce this builtin filter", - "type": "array", - "items": { - "type": "string" - } + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "enum": [ + true + ], + "type": "boolean" + } + ] } }, "additionalProperties": false }, - "Record": { - "type": "object", - "additionalProperties": false - }, "MappingConfigJson": { "type": "object", "properties": { diff --git a/Docs/Schemas/RewritableConfigJson.schema.json b/Docs/Schemas/RewritableConfigJson.schema.json index 377170bad..bf0b5a8f9 100644 --- a/Docs/Schemas/RewritableConfigJson.schema.json +++ b/Docs/Schemas/RewritableConfigJson.schema.json @@ -106,6 +106,73 @@ ], "additionalProperties": false }, + "FilterConfigOptionJson": { + "type": "object", + "properties": { + "question": { + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "searchTerms": { + "$ref": "#/definitions/Record" + }, + "emoji": { + "type": "string" + }, + "icon": { + "type": "string" + }, + "osmTags": { + "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "default": { + "type": "boolean" + }, + "fields": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "description": "If name is `search`, use \"_first_comment~.*{search}.*\" as osmTags", + "type": "string" + }, + "type": { + "type": "string" + } + }, + "required": [ + "name" + ] + } + } + }, + "required": [ + "question" + ], + "additionalProperties": false + }, + "Record": { + "type": "object", + "additionalProperties": false + }, "Record>": { "type": "object", "additionalProperties": false @@ -439,18 +506,24 @@ }, "filter": { "description": "This tagRendering can introduce this builtin filter", - "type": "array", - "items": { - "type": "string" - } + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "enum": [ + true + ], + "type": "boolean" + } + ] } }, "additionalProperties": false }, - "Record": { - "type": "object", - "additionalProperties": false - }, "MappingConfigJson": { "type": "object", "properties": { diff --git a/Docs/Schemas/TagRenderingConfigJson.schema.json b/Docs/Schemas/TagRenderingConfigJson.schema.json index f23085548..fd1f1cc5d 100644 --- a/Docs/Schemas/TagRenderingConfigJson.schema.json +++ b/Docs/Schemas/TagRenderingConfigJson.schema.json @@ -170,10 +170,20 @@ }, "filter": { "description": "This tagRendering can introduce this builtin filter", - "type": "array", - "items": { - "type": "string" - } + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "enum": [ + true + ], + "type": "boolean" + } + ] } }, "definitions": { @@ -236,6 +246,73 @@ ], "additionalProperties": false }, + "FilterConfigOptionJson": { + "type": "object", + "properties": { + "question": { + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "searchTerms": { + "$ref": "#/definitions/Record" + }, + "emoji": { + "type": "string" + }, + "icon": { + "type": "string" + }, + "osmTags": { + "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "default": { + "type": "boolean" + }, + "fields": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "description": "If name is `search`, use \"_first_comment~.*{search}.*\" as osmTags", + "type": "string" + }, + "type": { + "type": "string" + } + }, + "required": [ + "name" + ] + } + } + }, + "required": [ + "question" + ], + "additionalProperties": false + }, + "Record": { + "type": "object", + "additionalProperties": false + }, "Record>": { "type": "object", "additionalProperties": false diff --git a/Docs/Schemas/ThemeConfigJson.schema.json b/Docs/Schemas/ThemeConfigJson.schema.json new file mode 100644 index 000000000..2dde50d99 --- /dev/null +++ b/Docs/Schemas/ThemeConfigJson.schema.json @@ -0,0 +1,2958 @@ +{ + "description": "Defines the entire theme.\n\nA theme is the collection of the layers that are shown; the intro text, the icon, ...\nIt more or less defines the entire experience.\n\nMost of the fields defined here are metadata about the theme, such as its name, description, supported languages, default starting location, ...\n\nThe main chunk of the json will however be the 'layers'-array, where the details of your layers are.\n\nGeneral remark: a type (string | any) indicates either a fixed or a translatable string.", + "type": "object", + "properties": { + "id": { + "description": "question: What is the id of this layout?\n\nThe id is a unique string to identify the theme\n\nIt should be\n- in english\n- describe the theme in a single word (or a few words)\n- all lowercase and with only [a-z] or underscores (_)\n\nThis is used as hashtag in the changeset message, which will read something like \"Adding data with #mapcomplete for theme #\"\n\nOn official themes, it'll become the name of the page, e.g.\n'cyclestreets' which become 'cyclestreets.html'\n\ntype: id\ngroup: basic", + "type": "string" + }, + "title": { + "description": "question: What is the title of this theme?\n\nThe human-readable title, as shown in the welcome message and the index page\ngroup: basic", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "mustHaveLanguage": { + "description": "Only used in 'generateLayerOverview': if present, every translation will be checked to make sure it is fully translated.\n\nThis must be a list of two-letter, lowercase codes which identifies the language, e.g. \"en\", \"nl\", ...", + "type": "array", + "items": { + "type": "string" + } + }, + "description": { + "description": "question: How would you describe this theme?\nThe description, as shown in the welcome message and the more-screen\ngroup: basic", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "shortDescription": { + "description": "A short description, showed as social description and in the 'more theme'-buttons.\nNote that if this one is not defined, the first sentence of 'description' is used\ngroup: hidden", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "descriptionTail": { + "description": "A part of the description, shown under the login-button.\ngroup: hidden", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "icon": { + "description": "question: What icon should be used to represent this theme?\n\nUsed as logo in the more-screen and (for official themes) as favicon, webmanifest logo, ...\n\nEither a URL or a base64 encoded value (which should include 'data:image/svg+xml;base64)\n\nType: icon\nsuggestions: return Constants.defaultPinIcons.map(i => ({if: \"value=\"+i, then: i, icon: i}))\ngroup: basic", + "type": "string" + }, + "socialImage": { + "description": "question: What image should be used as social image preview?\nThis is included as og:image-tag on official themes.\n\nSee https://www.h3xed.com/web-and-internet/how-to-use-og-image-meta-tag-facebook-reddit for more information\nifunset: use the default social image of mapcomplete (or generate one based on the icon)\nType: image\ngroup: basic", + "type": "string" + }, + "extraLink": { + "description": "question: should an extra help button be shown in certain circumstances?\nAdds an additional button on the top-left of the application.\nThis can link to an arbitrary location.\n\nFor example {icon: \"./assets/svg/pop-out.svg\", href: 'https://mapcomplete.org/{theme}.html?lat={lat}&lon={lon}&z={zoom}, requirements: [\"iframe\",\"no-welcome-message]},\n\ngroup: advanced\nifunset: show a link to open MapComplete full screen if used in an iframe", + "$ref": "#/definitions/default" + }, + "startZoom": { + "description": "question: At what zoomlevel should this theme open?\nDefault location and zoom to start.\nNote that this is barely used. Once the user has visited mapcomplete at least once, the previous location of the user will be used\nifunset: Use the default startzoom (0)\ntype: float\ngroup: start_location", + "type": "number" + }, + "startLat": { + "description": "question: At what start latitude should this theme open?\nDefault location and zoom to start.\nNote that this is barely used. Once the user has visited mapcomplete at least once, the previous location of the user will be used\nifunset: Use 0 as start latitude\ntype: float\ngroup: start_location", + "type": "number" + }, + "startLon": { + "description": "question: At what start longitude should this theme open?\nDefault location and zoom to start.\nNote that this is barely used. Once the user has visited mapcomplete at least once, the previous location of the user will be used\nifunset: Use 0 as start longitude\ntype: float\ngroup: start_location", + "type": "number" + }, + "defaultBackgroundId": { + "description": "The id of the default background. BY default: vanilla OSM", + "type": "string" + }, + "credits": { + "description": "Who helped to create this theme and should be attributed?", + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "type": "string" + } + ] + }, + "hideFromOverview": { + "description": "If set to true, this layout will not be shown in the overview with more themes", + "type": "boolean" + }, + "layers": { + "description": "question: What layers should this map show?\ntype: layer[]\ntypes: hidden | layer | hidden\ngroup: layers\ntitle: value[\"builtin\"] ?? value[\"id\"] ?? value\nsuggestions: return Array.from(layers.keys()).map(key => ({if: \"value=\"+key, then: \"\"+key+\" (builtin) - \"+layers.get(key).description}))\n\nA theme must contain at least one layer.\n\nA layer contains all features of a single type, for example \"shops\", \"bicycle pumps\", \"benches\".\nNote that every layer contains a specification of attributes that it should match. MapComplete will fetch the relevant data from either overpass, the OSM-API or the cache server.\nIf a feature can match multiple layers, the first matching layer in the list will be used.\nThis implies that the _order_ of the layers is important.\n\n\n
\nNote that builtin layers can be reused. Either put in the name of the layer to reuse, or use {builtin: \"layername\", override: ...}\n\nThe 'override'-object will be copied over the original values of the layer, which allows to change certain aspects of the layer\n\nFor example: If you would like to use layer nature reserves, but only from a specific operator (eg. Natuurpunt) you would use the following in your theme:\n\n```\n\"layer\": {\n \"builtin\": \"nature_reserve\",\n \"override\": {\"source\":\n {\"osmTags\": {\n \"+and\":[\"operator=Natuurpunt\"]\n }\n }\n }\n}\n```\n\nIt's also possible to load multiple layers at once, for example, if you would like for both drinking water and benches to start at the zoomlevel at 12, you would use the following:\n\n```\n\"layer\": {\n \"builtin\": [\"benches\", \"drinking_water\"],\n \"override\": {\"minzoom\": 12}\n}\n```\n
", + "type": "array", + "items": { + "anyOf": [ + { + "$ref": "#/definitions/LayerConfigJson" + }, + { + "type": "object", + "properties": { + "builtin": { + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "type": "string" + } + ] + }, + "override": { + "$ref": "#/definitions/Partial" + }, + "hideTagRenderingsWithLabels": { + "description": "TagRenderings with any of these labels will be removed from the layer.\nNote that the 'id' and 'group' are considered labels too", + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "builtin", + "override" + ] + }, + { + "type": "string" + } + ] + } + }, + "overrideAll": { + "description": "An override applied on all layers of the theme.\n\nE.g.: if there are two layers defined:\n```\n\"layers\":[\n {\"title\": ..., \"tagRenderings\": [...], \"osmSource\":{\"tags\": ...}},\n {\"title\", ..., \"tagRenderings\", [...], \"osmSource\":{\"tags\" ...}}\n]\n```\n\nand overrideAll is specified:\n```\n\"overrideAll\": {\n \"osmSource\":{\"geoJsonSource\":\"xyz\"}\n}\nthen the result will be that all the layers will have these properties applied and result in:\n\"layers\":[\n {\"title\": ..., \"tagRenderings\": [...], \"osmSource\":{\"tags\": ..., \"geoJsonSource\":\"xyz\"}},\n {\"title\", ..., \"tagRenderings\", [...], \"osmSource\":{\"tags\" ..., \"geoJsonSource\":\"xyz\"}}\n]\n```\n\nIf the overrideAll contains a list where the keys starts with a plus, the values will be appended (instead of discarding the old list), for example\n\n\"overrideAll\": {\n \"+tagRenderings\": [ { ... some tagrendering ... }]\n}\n\nIn the above scenario, `sometagrendering` will be added at the beginning of the tagrenderings of every layer", + "$ref": "#/definitions/Partial" + }, + "tileLayerSources": { + "description": "Define some (overlay) slippy map tilesources", + "type": "array", + "items": { + "allOf": [ + { + "$ref": "#/definitions/RasterLayerProperties" + }, + { + "type": "object", + "properties": { + "defaultState": { + "type": "boolean" + } + } + } + ] + } + }, + "customCss": { + "description": "The URL of a custom CSS stylesheet to modify the layout\ngroup: advanced", + "type": "string" + }, + "lockLocation": { + "description": "If set to true, the basemap will not scroll outside of the area visible on initial zoom.\nIf set to [[lon, lat], [lon, lat]], the map will not scroll outside of those bounds.\nOff by default, which will enable panning to the entire world", + "anyOf": [ + { + "type": "array", + "items": [ + { + "type": "array", + "items": [ + { + "type": "number" + }, + { + "type": "number" + } + ], + "minItems": 2, + "maxItems": 2 + }, + { + "type": "array", + "items": [ + { + "type": "number" + }, + { + "type": "number" + } + ], + "minItems": 2, + "maxItems": 2 + } + ], + "minItems": 2, + "maxItems": 2 + }, + { + "type": "array", + "items": { + "type": "array", + "items": { + "type": "number" + } + } + } + ] + }, + "enableUserBadge": { + "description": "question: Should a user be able to login with OpenStreetMap?\n\nIf not logged in, will not show the login buttons and hide all the editable elements.\nAs such, MapComplete will become read-only and a purely visualisation tool.\n\nifunset: Enable the possiblity to login with OpenStreetMap (default)\niffalse: Do not enable to login with OpenStreetMap, have a read-only view of MapComplete.\niftrue: Enable the possiblity to login with OpenStreetMap\ngroup: feature_switches", + "type": "boolean" + }, + "enableShareScreen": { + "description": "question: Should the tab with options to share the current screen be enabled?\n\nOn can get the iFrame embed code here\n\nifunset: Enable the sharescreen (default)\niffalse: Do not enable the share screen\niftrue: Enable the share screen\ngroup: feature_switches", + "type": "boolean" + }, + "enableMoreQuests": { + "description": "question: Should the user be able to switch to different themes?\n\nTypically enabled in iframes and/or on commisioned themes\n\niftrue: enable to go back to the index page showing all themes\niffalse: do not enable to go back to the index page showing all themes; hide the 'more themes' buttons\nifunset: mapcomplete default: enable to go back to the index page showing all themes\ngroup: feature_switches", + "type": "boolean" + }, + "enableLayers": { + "description": "question: Should the user be able to enable/disable layers and to filter the layers?\n\nThe corresponding URL-parameter is 'fs-filters' instead of 'fs-layers'\niftrue: enable the filters/layers pane\niffalse: do not enable to filter or to disable layers; hide the 'filter' tab from the overview and the button at the bottom-left\nifunset: mapcomplete default: enable to filter or to enable/disable layers\ngroup: feature_switches", + "type": "boolean" + }, + "enableSearch": { + "description": "question: Should the user be able to search for locations?\n\nifunset: MapComplete default: allow to search\niftrue: Allow to search\niffalse: Do not allow to search; hide the search-bar\ngroup: feature_switches", + "type": "boolean" + }, + "enableAddNewPoints": { + "description": "question: Should the user be able to add new points?\n\nAdding new points is only possible if the loaded layers have presets set.\nSome layers do not have presets. If the theme only has layers without presets, then adding new points will not be possible.\n\nifunset: MapComplete default: allow to create new points\niftrue: Allow to create new points\niffalse: Do not allow to create new points, even if the layers in this theme support creating new points\ngroup: feature_switches", + "type": "boolean" + }, + "enableGeolocation": { + "description": "question: Should the user be able to use their GPS to geolocate themselfes on the map?\nifunset: MapComplete default: allow to use the GPS\niftrue: Allow to use the GPS\niffalse: Do not allow to use the GPS, hide the geolocation-buttons\ngroup: feature_switches", + "type": "boolean" + }, + "enableBackgroundLayerSelection": { + "description": "Enable switching the backgroundlayer.\nIf false, the quickswitch-buttons are removed (bottom left) and the dropdown in the layer selection is removed as well\n\nquestion: Should the user be able to switch the background layer?\n\niftrue: Allow to switch the background layer\niffalse: Do not allow to switch the background layer\nifunset: MapComplete default: Allow to switch the background layer\ngroup: feature_switches", + "type": "boolean" + }, + "enableShowAllQuestions": { + "description": "question: Should the questions about a feature be presented one by one or all at once?\niftrue: Show all unanswered questions at the same time\niffalse: Show unanswered questions one by one\nifunset: MapComplete default: Use the preference of the user to show questions at the same time or one by one\ngroup: feature_switches", + "type": "boolean" + }, + "enableDownload": { + "description": "question: Should the 'download as CSV'- and 'download as Geojson'-buttons be enabled?\niftrue: Enable the option to download the map as CSV and GeoJson\niffalse: Disable the option to download the map as CSV and GeoJson\nifunset: MapComplete default: Enable the option to download the map as CSV and GeoJson\ngroup: feature_switches", + "type": "boolean" + }, + "enablePdfDownload": { + "description": "question: Should the 'download as PDF'-button be enabled?\niftrue: Enable the option to download the map as PDF\niffalse: Enable the option to download the map as PDF\nifunset: MapComplete default: Enable the option to download the map as PDF\ngroup: feature_switches", + "type": "boolean" + }, + "enableNoteImports": { + "description": "question: Should the 'notes' from OpenStreetMap be loaded and parsed for import helper notes?\nIf true, notes will be loaded and parsed. If a note is an import (as created by the import_helper.html-tool from mapcomplete),\nthese notes will be shown if a relevant layer is present.\n\nifunset: MapComplete default: do not load import notes for sideloaded themes but do load them for official themes\niftrue: Load notes and show import notes\niffalse: Do not load import notes\ngroup: advanced", + "type": "boolean" + }, + "enableTerrain": { + "description": "question: Should the map use elevation data to give a 3D-feel?\n\nThis is especially useful for hiking maps, skiing maps etc...\n\nifunset: MapComplete default: don't use terrain\niftrue: Use elevation and render 3D\niffalse: Do not use terrain\ngroup: advanced", + "type": "boolean" + }, + "overpassUrl": { + "description": "question: What overpass-api instance should be used for this layout?\n\nifunset: Use the default, builtin collection of overpass instances\ngroup: advanced", + "type": "array", + "items": { + "type": "string" + } + }, + "overpassTimeout": { + "description": "question: After how much seconds should the overpass-query stop?\nIf a query takes too long, the overpass-server will abort.\nOnce can set the amount of time before overpass gives up here.\nifunset: use the default amount of 30 seconds as timeout\ntype: pnat\ngroup: advanced", + "type": "number" + }, + "overpassMaxZoom": { + "description": "At low zoom levels, overpass is used to query features.\nAt high zoom level, the OSM api is used to fetch one or more BBOX aligning with a slippy tile.\nThe overpassMaxZoom controls the flipoverpoint: if the zoom is this or lower, overpass is used.", + "type": "number" + }, + "osmApiTileSize": { + "description": "When the OSM-api is used to fetch features, it does so in a tiled fashion.\nThese tiles are using a ceratin zoom level, that can be controlled here\nDefault: overpassMaxZoom + 1", + "type": "number" + }, + "enableNodeDatabase": { + "description": "Enables tracking of all nodes when data is loaded.\nThis is useful for the 'ImportWay' and 'ConflateWay'-buttons who need this database.\n\nNote: this flag will be automatically set and can thus be ignored.\ngroup: hidden", + "type": "boolean" + }, + "enableMorePrivacy": { + "description": "question: Should this theme leak some location info when making changes?\n\nWhen a changeset is made, a 'distance to object'-class is written to the changeset.\nFor some particular themes and layers, this might leak too much information, and we want to obfuscate this\n\nifunset: Write 'change_within_x_m' as usual and if GPS is enabled\niftrue: Do not write 'change_within_x_m' and do not indicate that this was done by survey", + "type": "boolean" + }, + "enableCache": { + "description": "question: Should this theme have the cache enabled?\n\nShould only be dissabled in highly specific cases, such as the GRB-theme\n\nifunset: Cache is enabled\niffalse: Do not cache data\ngroup: hidden", + "type": "boolean" + }, + "_usedImages": { + "description": "Set by the preprocessor\ngroup: hidden", + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "description", + "icon", + "id", + "layers", + "title" + ], + "definitions": { + "TagConfigJson": { + "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "type": "object", + "properties": { + "or": { + "type": "array", + "items": { + "$ref": "#/definitions/TagConfigJson" + } + } + }, + "required": [ + "or" + ] + }, + { + "type": "string" + } + ] + }, + "{and:TagConfigJson[];}": { + "type": "object", + "properties": { + "and": { + "type": "array", + "items": { + "$ref": "#/definitions/TagConfigJson" + } + } + }, + "required": [ + "and" + ], + "additionalProperties": false + }, + "Record": { + "type": "object", + "additionalProperties": false + }, + "{or:TagConfigJson[];}": { + "type": "object", + "properties": { + "or": { + "type": "array", + "items": { + "$ref": "#/definitions/TagConfigJson" + } + } + }, + "required": [ + "or" + ], + "additionalProperties": false + }, + "FilterConfigOptionJson": { + "type": "object", + "properties": { + "question": { + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "searchTerms": { + "$ref": "#/definitions/Record" + }, + "emoji": { + "type": "string" + }, + "icon": { + "type": "string" + }, + "osmTags": { + "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "default": { + "type": "boolean" + }, + "fields": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "description": "If name is `search`, use \"_first_comment~.*{search}.*\" as osmTags", + "type": "string" + }, + "type": { + "type": "string" + } + }, + "required": [ + "name" + ] + } + } + }, + "required": [ + "question" + ], + "additionalProperties": false + }, + "Record": { + "type": "object", + "additionalProperties": false + }, + "Record>": { + "type": "object", + "additionalProperties": false + }, + "DenominationConfigJson": { + "type": "object", + "properties": { + "useIfNoUnitGiven": { + "description": "If this evaluates to true and the value to interpret has _no_ unit given, assumes that this unit is meant.\nAlternatively, a list of country codes can be given where this acts as the default interpretation\n\nE.g., a denomination using \"meter\" would probably set this flag to \"true\";\na denomination for \"mp/h\" will use the condition \"_country=gb\" to indicate that it is the default in the UK.\n\nIf none of the units indicate that they are the default, the first denomination will be used instead", + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "type": "boolean" + } + ] + }, + "canonicalDenomination": { + "description": "The canonical value for this denomination which will be added to the value in OSM.\ne.g. \"m\" for meters\nIf the user inputs '42', the canonical value will be added and it'll become '42m'.\n\nImportant: often, _no_ canonical values are expected, e.g. in the case of 'maxspeed' where 'km/h' is the default.\nIn this case, an empty string should be used", + "type": "string" + }, + "canonicalDenominationSingular": { + "description": "The canonical denomination in the case that the unit is precisely '1'.\nUsed for display purposes only.\n\nE.g.: for duration of something in minutes: `2 minutes` but `1 minute`; the `minute` goes here", + "type": "string" + }, + "alternativeDenomination": { + "description": "A list of alternative values which can occur in the OSM database - used for parsing.\nE.g.: while 'm' is canonical, `meter`, `mtrs`, ... can occur as well", + "type": "array", + "items": { + "type": "string" + } + }, + "human": { + "description": "The value for humans in the dropdown. This should not use abbreviations and should be translated, e.g.\n{\n \"en\": \"meter\",\n \"fr\": \"metre\"\n}", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "humanSingular": { + "description": "The value for humans in the dropdown. This should not use abbreviations and should be translated, e.g.\n{\n \"en\": \"minute\",\n \"nl\": \"minuut\"\n}", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "prefix": { + "description": "If set, then the canonical value will be prefixed instead, e.g. for '€'\nNote that if all values use 'prefix', the dropdown might move to before the text field", + "type": "boolean" + }, + "addSpace": { + "description": "If set, add a space between the quantity and the denomination.\n\nE.g.: `50 mph` instad of `50mph`", + "type": "boolean" + } + }, + "required": [ + "canonicalDenomination" + ], + "additionalProperties": false + }, + "MinimalTagRenderingConfigJson": { + "description": "Mostly used for lineRendering and pointRendering", + "type": "object", + "properties": { + "render": { + "description": "question: What value should be shown (if no predefined option matches)?\n\nThis piece of text will be shown in the infobox.\nNote that \"&LBRACEkey&RBRACE\"-parts are substituted by the corresponding values of the element.\n\nThis value will be used if there is no mapping which matches (or there are no matches)\nNote that this is a HTML-interpreted value, so you can add links as e.g. '<a href='{website}'>{website}</a>' or include images such as `This is of type A <br><img src='typeA-icon.svg' />`", + "type": "string" + }, + "mappings": { + "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes", + "type": "array", + "items": { + "type": "object", + "properties": { + "if": { + "$ref": "#/definitions/TagConfigJson", + "description": "question: When should this single mapping match?\n\nIf this condition is met, then the text under `then` will be shown.\nIf no value matches, and the user selects this mapping as an option, then these tags will be uploaded to OSM.\n\nFor example: {'if': 'diet:vegetarion=yes', 'then':'A vegetarian option is offered here'}\n\nThis can be an substituting-tag as well, e.g. {'if': 'addr:street:={_calculated_nearby_streetname}', 'then': '{_calculated_nearby_streetname}'}" + }, + "then": { + "description": "question: What text should be shown?\n\nIf the condition `if` is met, the text `then` will be rendered.\nIf not known yet, the user will be presented with `then` as an option", + "type": "string" + } + }, + "required": [ + "if", + "then" + ] + } + } + }, + "additionalProperties": false + }, + "IconConfigJson": { + "type": "object", + "properties": { + "icon": { + "description": "question: What icon should be used?\ntypes: Use a different icon depending on the value of some attributes ; icon\nsuggestions: return Constants.defaultPinIcons.map(i => ({if: \"value=\"+i, then: i, icon: i}))", + "anyOf": [ + { + "$ref": "#/definitions/MinimalTagRenderingConfigJson" + }, + { + "type": "object", + "properties": { + "builtin": { + "type": "string" + }, + "override": {} + }, + "required": [ + "builtin", + "override" + ] + }, + { + "type": "string" + } + ] + }, + "color": { + "description": "question: What colour should the icon be?\nThis will only work for the default icons such as `pin`,`circle`,...\ntypes: Use a different color depending on the value of some attributes ; color", + "anyOf": [ + { + "$ref": "#/definitions/MinimalTagRenderingConfigJson" + }, + { + "type": "object", + "properties": { + "builtin": { + "type": "string" + }, + "override": {} + }, + "required": [ + "builtin", + "override" + ] + }, + { + "type": "string" + } + ] + } + }, + "required": [ + "icon" + ], + "additionalProperties": false + }, + "TagRenderingConfigJson": { + "description": "A TagRenderingConfigJson is a single piece of code which converts one ore more tags into a HTML-snippet.\nFor an _editable_ tagRendering, use 'QuestionableTagRenderingConfigJson' instead, which extends this one", + "type": "object", + "properties": { + "render": { + "description": "question: What text should be rendered?\n\nThis piece of text will be shown in the infobox.\nIn this text, values within braces (such as {braced(key)}) are replaced by the corresponding `value` in the object.\nFor example, if the object contains tags `amenity=school; name=Windy Hill School`, the render string `This school is named {name}` will be shown to the user as `This school is named Windy Hill School`\n\nThis text will be shown if:\n- there is no mapping which matches (or there are no matches)\n- no question, no mappings and no 'freeform' is set\n\nNote that this is a HTML-interpreted value, so you can add links as e.g. '<a href='{website}'>{website}</a>' or include images such as `This is of type A <br><img src='typeA-icon.svg' />`\ntype: rendered\nifunset: No text is shown if no predefined options match.", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "object", + "properties": { + "special": { + "allOf": [ + { + "$ref": "#/definitions/Record>" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "required": [ + "type" + ] + } + ] + } + }, + "required": [ + "special" + ] + }, + { + "type": "string" + } + ] + }, + "icon": { + "description": "question: what icon should be shown next to the 'render' value?\nAn icon shown next to the rendering; typically shown pretty small\nThis is only shown next to the \"render\" value\nType: icon\nifunset: No additional icon is shown next to the always shown text", + "anyOf": [ + { + "type": "object", + "properties": { + "path": { + "description": "The path to the icon\nType: icon", + "type": "string" + }, + "class": { + "description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-', so defining your own in combination with a custom CSS is possible (but discouraged)", + "type": "string" + } + }, + "required": [ + "path" + ] + }, + { + "type": "string" + } + ] + }, + "condition": { + "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or show this question if unknown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "metacondition": { + "description": "question: When should this item be shown (including special conditions)?\ntype: tag\nifunset: No specific metacondition set which is evaluated against the usersettings/application state; always show this tagRendering or show this question if unknown\n\nIf set, this tag will be evaluated against the _usersettings/application state_ table.\nEnable 'show debug info' in user settings to see available options (at the settings-tab).\nNote that values with an underscore depicts _application state_ (including metainfo about the user) whereas values without an underscore depict _user settings_", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "freeform": { + "description": "question: Should a freeform text field be shown?\nAllow freeform text input from the user\nifunset: Do not add a freeform text field", + "type": "object", + "properties": { + "key": { + "description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown", + "type": "string" + } + } + }, + "mappings": { + "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes", + "type": "array", + "items": { + "type": "object", + "properties": { + "if": { + "$ref": "#/definitions/TagConfigJson", + "description": "question: When should this single mapping match?\n\nIf this condition is met, then the text under `then` will be shown.\nIf no value matches, and the user selects this mapping as an option, then these tags will be uploaded to OSM.\n\nFor example: {'if': 'diet:vegetarion=yes', 'then':'A vegetarian option is offered here'}\n\nThis can be an substituting-tag as well, e.g. {'if': 'addr:street:={_calculated_nearby_streetname}', 'then': '{_calculated_nearby_streetname}'}" + }, + "then": { + "description": "question: What text should be shown?\n\nIf the condition `if` is met, the text `then` will be rendered.\nIf not known yet, the user will be presented with `then` as an option\nType: rendered", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "icon": { + "description": "question: What icon should be added to this mapping?\nifunset: Do not show an extra icon next to the render value\n\nAn icon supporting this mapping; typically shown pretty small.\nThis can be used to show a e.g. 'phone'-icon next to the phone number\n\nThis supports patterns, you can e.g. have `close:red;some/other/icon.svg`\n\ninline: {icon}\nType: icon", + "anyOf": [ + { + "type": "object", + "properties": { + "path": { + "description": "The path to the icon\nType: icon", + "type": "string" + }, + "class": { + "description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-', so defining your own in combination with a custom CSS is possible (but discouraged)", + "type": "string" + } + }, + "required": [ + "path" + ] + }, + { + "type": "string" + } + ] + } + }, + "required": [ + "if", + "then" + ] + } + }, + "description": { + "description": "A human-readable text explaining what this tagRendering does.\nMostly used for the shared tagrenderings", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "classes": { + "description": "question: What css-classes should be applied to showing this attribute?\n\nA list of css-classes to apply to the entire tagRendering.\nThese classes are applied in 'answer'-mode, not in question mode\nThis is only for advanced users.\n\nValues are split on ` ` (space)", + "type": "string" + }, + "filter": { + "description": "This tagRendering can introduce this builtin filter", + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "enum": [ + true + ], + "type": "boolean" + } + ] + } + }, + "additionalProperties": false + }, + "MappingConfigJson": { + "type": "object", + "properties": { + "if": { + "$ref": "#/definitions/TagConfigJson", + "description": "question: What tags should be matched to show this option?\n\nIf in 'question'-mode and the contributor selects this option, these tags will be applied to the object" + }, + "then": { + "description": "Question: What corresponding text should be shown?\nShown if the `if` is fulfilled\nType: rendered", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "icon": { + "description": "question: What icon should be shown next to this mapping?\n\nThis icon will only be shown if the value is known, it is not displayed in the options (but might be in the future)\n\nifunset: Show no icon\nType: icon", + "anyOf": [ + { + "type": "object", + "properties": { + "path": { + "description": "The path to the icon\nType: icon", + "type": "string" + }, + "class": { + "description": "Size of the image", + "type": "string" + } + }, + "required": [ + "path" + ] + }, + { + "type": "string" + } + ] + }, + "hideInAnswer": { + "description": "question: Under what circumstances should this mapping be hidden from the possibilities a contributor can pick?\niftrue: Never show this mapping as option to pick\nifunset: Always show this mapping as option to pick\ntype: tag\n\nIn some cases, multiple taggings exist (e.g. a default assumption, or a commonly mapped abbreviation and a fully written variation).\n\nIn the latter case, a correct text should be shown, but only a single, canonical tagging should be selectable by the user.\nIn this case, one of the mappings can be hiden by setting this flag.\n\nTo demonstrate an example making a default assumption:\n\nmappings: [\n {\n if: \"access=\", -- no access tag present, we assume accessible\n then: \"Accessible to the general public\",\n hideInAnswer: true\n },\n {\n if: \"access=yes\",\n then: \"Accessible to the general public\", -- the user selected this, we add that to OSM\n },\n {\n if: \"access=no\",\n then: \"Not accessible to the public\"\n }\n]\n\n\nFor example, for an operator, we have `operator=Agentschap Natuur en Bos`, which is often abbreviated to `operator=ANB`.\nThen, we would add two mappings:\n{\n if: \"operator=Agentschap Natuur en Bos\" -- the non-abbreviated version which should be uploaded\n then: \"Maintained by Agentschap Natuur en Bos\"\n},\n{\n if: \"operator=ANB\", -- we don't want to upload abbreviations\n then: \"Maintained by Agentschap Natuur en Bos\"\n hideInAnswer: true\n}\n\nHide in answer can also be a tagsfilter, e.g. to make sure an option is only shown when appropriate.\nKeep in mind that this is reverse logic: it will be hidden in the answer if the condition is true, it will thus only show in the case of a mismatch\n\ne.g., for toilets: if \"wheelchair=no\", we know there is no wheelchair dedicated room.\nFor the location of the changing table, the option \"in the wheelchair accessible toilet is weird\", so we write:\n\n{\n \"question\": \"Where is the changing table located?\"\n \"mappings\": [\n {\"if\":\"changing_table:location=female\",\"then\":\"In the female restroom\"},\n {\"if\":\"changing_table:location=male\",\"then\":\"In the male restroom\"},\n {\"if\":\"changing_table:location=wheelchair\",\"then\":\"In the wheelchair accessible restroom\", \"hideInAnswer\": \"wheelchair=no\"},\n\n ]\n}\n\nAlso have a look for the meta-tags\n{\n if: \"operator=Agentschap Natuur en Bos\",\n then: \"Maintained by Agentschap Natuur en Bos\",\n hideInAnswer: \"_country!=be\"\n}", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": [ + "string", + "boolean" + ] + } + ] + }, + "alsoShowIf": { + "description": "question: In what other cases should this item be rendered?\n\nAlso show this 'then'-option if the feature matches these tags.\nIdeal for outdated tags or default assumptions. The tags from this options will not be set if the option is chosen!\n\nifunset: No other cases when this text is shown", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "ifnot": { + "description": "question: What tags should be applied if this mapping is _not_ chosen?\n\nOnly applicable if 'multiAnswer' is set.\nThis is for situations such as:\n`accepts:coins=no` where one can select all the possible payment methods. However, we want to make explicit that some options _were not_ selected.\nThis can be done with `ifnot`\nNote that we can not explicitly render this negative case to the user, we cannot show `does _not_ accept coins`.\nIf this is important to your usecase, consider using multiple radiobutton-fields without `multiAnswer`\n\nifunset: Do not apply a tag if a different mapping is chosen.", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "addExtraTags": { + "description": "question: What extra tags should be added to the object if this object is chosen?\ntype: simple_tag\n\nIf chosen as answer, these tags will be applied onto the object, together with the tags from the `if`.\nNote that if the contributor picks this mapping, saves and then changes their mind and uses a different mapping,\nthe extraTags will reside.\nE.g. when picking `memorial:type=bench`, then `amenity=bench` will also be applied.\nIf someone later on changes the type to `memorial:statue`, `amenity=bench` will stay onto the object\n(which is the desired behaviour, see e.g. for https://www.openstreetmap.org/node/5620038478)\nUse 'ifNot' to explicitly remove an tag if this is important\n\nIf someone marks the question as 'unknown', the extra tags will not be erased\n\nNot compatible with multiAnswer.\n\nThis can be used e.g. to erase other keys which indicate the 'not' value:\n```json\n{\n \"if\": \"crossing:marking=rainbow\",\n \"then\": \"This is a rainbow crossing\",\n \"addExtraTags\": [\"not:crossing:marking=\"]\n}\n```", + "type": "array", + "items": { + "type": "string" + } + }, + "searchTerms": { + "description": "question: If there are many options, what search terms match too?\nIf there are many options, the mappings-radiobuttons will be replaced by an element with a searchfunction\n\nSearchterms (per language) allow to easily find an option if there are many options\ngroup: hidden", + "$ref": "#/definitions/Record" + }, + "priorityIf": { + "description": "If the searchable selector is picked, mappings with this item will have priority and show up even if the others are hidden\nUse this sparingly\ngroup: hidden", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "#": { + "description": "Used for comments or to disable a validation\n\ngroup: hidden\nignore-image-in-then: normally, a `then`-clause is not allowed to have an `img`-html-element as icons are preferred. In some cases (most notably title-icons), this is allowed", + "type": "string" + } + }, + "required": [ + "if", + "then" + ], + "additionalProperties": false + }, + "T": { + "type": "object", + "additionalProperties": false + }, + "default_4": { + "description": "The PointRenderingConfig gives all details onto how to render a single point of a feature.\n\nThis can be used if:\n\n- The feature is a point\n- To render something at the centroid of an area, or at the start, end or projected centroid of a way", + "type": "object", + "properties": { + "location": { + "description": "question: At what location should this icon be shown?\nmultianswer: true\nsuggestions: return [{if: \"value=point\",then: \"Show an icon for point (node) objects\"},{if: \"value=centroid\",then: \"Show an icon for line or polygon (way) objects at their centroid location\"}, {if: \"value=start\",then: \"Show an icon for line (way) objects at the start\"},{if: \"value=end\",then: \"Show an icon for line (way) object at the end\"},{if: \"value=projected_centerpoint\",then: \"Show an icon for line (way) object near the centroid location, but moved onto the line. Does not show an item on polygons\"}, {if: \"value=polygon_centroid\",then: \"Show an icon at a polygon centroid (but not if it is a way)\"}]", + "type": "array", + "items": { + "type": "string" + } + }, + "marker": { + "description": "The marker for an element.\nNote that this also defines the icon for this layer (rendered with the overpass-tags) and the icon in the presets.\n\nThe result of the icon is rendered as follows:\n- The first icon is rendered on the map\n- The second entry is overlayed on top of it\n- ...\n\nAs a result, on could use a generic icon (`pin`, `circle`, `square`) with a color, then overlay it with a specific icon.\nicon: value\ntitle: value.icon", + "type": "array", + "items": { + "$ref": "#/definitions/IconConfigJson" + } + }, + "iconBadges": { + "description": "A list of extra badges to show next to the icon as small badge\nThey will be added as a 25% height icon at the bottom right of the icon, with all the badges in a flex layout.\n\nNote: strings are interpreted as icons, so layering and substituting is supported. You can use `circle:white;./my_icon.svg` to add a background circle\ngroup: hidden", + "type": "array", + "items": { + "type": "object", + "properties": { + "if": { + "$ref": "#/definitions/TagConfigJson", + "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag" + }, + "then": { + "description": "Badge to show\nType: icon", + "anyOf": [ + { + "$ref": "#/definitions/MinimalTagRenderingConfigJson" + }, + { + "type": "string" + } + ] + } + }, + "required": [ + "if", + "then" + ] + } + }, + "iconSize": { + "description": "question: What size should the marker be on the map?\nA string containing \",\" in pixels\nifunset: Use the default size (40,40 px)", + "anyOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "anchor": { + "description": "question: What is the anchorpoint of the icon?\n\nThis matches the geographical point with a location on the icon.\n\nifunset: Use MapComplete-default (center)\nsuggestions: return [{if: \"value=center\", then: \"Place the center of the icon on the geographical location\"},{if: \"value=top\", then: \"Place the top of the icon on the geographical location\"},{if: \"value=bottom\", then: \"Place the bottom of the icon on the geographical location\"},{if: \"value=left\", then: \"Place the left of the icon on the geographical location\"},{if: \"value=right\", then: \"Place the right of the icon on the geographical location\"}]", + "anyOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "rotation": { + "description": "question: What rotation should be applied on the icon?\nThis is mostly useful for items that face a specific direction, such as surveillance cameras\nThis is interpreted as css property for 'rotate', thus has to end with 'deg', e.g. `90deg`, `{direction}deg`, `calc(90deg - {camera:direction}deg)`\n\nIf the icon is shown on the projected centerpoint of a way, one can also use `_direction:centerpoint`\n\ntypes: Dynamic value ; string\nsuggestions: return [{if: \"value={_direction:centerpoint}deg\", then: \"Point the top of the icon towards the end of the way\"}, {if: \"value=calc( {_direction:centerpoint}deg + 90deg )\", then: \"Point the left of the icon towards the end of the way\"}, {if: \"value=calc( {_direction:centerpoint}deg - 90deg )\", then: \"Point the right of the icon towards the end of the way\"}, {if: \"value=calc( {_direction:centerpoint}deg + 180deg )\", then: \"Point the bottom of the icon towards the end of the way\"}]\nifunset: Do not rotate", + "anyOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "label": { + "description": "question: What label should be shown beneath the marker?\nFor example: `<div style=\"background: white\">{name}</div>`\n\nIf the icon is undefined, then the label is shown in the center of the feature.\ntypes: Dynamic value based on the attributes ; string\ninline: Always show label {value} beneath the marker\nifunset: Do not show a label beneath the marker", + "anyOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "labelCss": { + "description": "question: What CSS should be applied to the label?\nYou can set the css-properties here, e.g. `background: red; font-size: 12px; `\ninline: Apply CSS-style {value} to the label\ntypes: Dynamic value ; string\nifunset: Do not apply extra CSS-labels to the label\ngroup: expert", + "anyOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "labelCssClasses": { + "description": "question: Which CSS-classes should be applied to the label?\n\nThe classes should be separated by a space (` `)\nYou can use most Tailwind-css classes, see https://tailwindcss.com/ for more information\nFor example: `center bg-gray-500 mx-2 my-1 rounded-full`\ninline: Apply CSS-classes {value} to the label\ntypes: Dynamic value ; string\nifunset: Do not apply extra CSS-classes to the label\nsuggestions: return [{if: \"value=bg-white rounded px-2\", then: \"Draw on a white background\"}]", + "anyOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "css": { + "description": "question: What CSS should be applied to the entire marker?\nYou can set the css-properties here, e.g. `background: red; font-size: 12px; `\nThis will be applied to the _container_ containing both the marker and the label\ninline: Apply CSS-style {value} to the _entire marker_\ntypes: Dynamic value ; string\nifunset: Do not apply extra CSS element to the entire marker\ngroup: expert", + "anyOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "cssClasses": { + "description": "question: Which CSS-classes should be applied to the entire marker?\nThis will be applied to the _container_ containing both the marker and the label\n\nThe classes should be separated by a space (` `)\nYou can use most Tailwind-css classes, see https://tailwindcss.com/ for more information\nFor example: `center bg-gray-500 mx-2 my-1 rounded-full`\ninline: Apply CSS-classes {value} to the entire container\ntypes: Dynamic value ; string\nifunset: Do not apply extra CSS-classes to the entire marker\ngroup: expert", + "anyOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "pitchAlignment": { + "description": "question: If the map is pitched, should the icon stay parallel to the screen or to the groundplane?\nsuggestions: return [{if: \"value=canvas\", alsoShowIf: \"value=\", then: \"The icon will stay upward and not be transformed as if it sticks to the screen\"}, {if: \"value=map\", then: \"The icon will be transformed as if it were painted onto the ground. (Automatically sets rotationAlignment)\"}]\ngroup: expert", + "anyOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "enum": [ + "canvas", + "map" + ], + "type": "string" + } + ] + }, + "rotationAlignment": { + "description": "question: Should the icon be rotated if the map is rotated?\nifunset: Do not rotate or tilt icons. Always keep the icons straight\nsuggestions: return [{if: \"value=canvas\", then: \"Never rotate the icon\"}, {if: \"value=map\", then: \"If the map is rotated, rotate the icon as well. This gives the impression of an icon that floats perpendicular above the ground.\"}]\ngroup: expert", + "anyOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "enum": [ + "canvas", + "map" + ], + "type": "string" + } + ] + } + }, + "required": [ + "location" + ], + "additionalProperties": false + }, + "default_5": { + "description": "The LineRenderingConfig gives all details onto how to render a single line of a feature.\n\nThis can be used if:\n\n- The feature is a line\n- The feature is an area", + "type": "object", + "properties": { + "color": { + "description": "question: What color should lines be drawn in?\n\nFor an area, this will be the colour of the outside line.\nIf the value starts with \"--\", the style of the body element will be queried for the corresponding variable instead\n\ntypes: dynamic value ; string\ntitle: Line Colour\ninline: The line colour always is {value}\ntype: color", + "anyOf": [ + { + "$ref": "#/definitions/MinimalTagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "width": { + "description": "question: How wide should the line be?\nThe stroke-width for way-elements\n\ntypes: dynamic value ; string\ntitle: Line width\ninline: The line width is {value} pixels\ntype: pnat\nifunset: Use the default-linewidth of 7 pixels", + "anyOf": [ + { + "$ref": "#/definitions/MinimalTagRenderingConfigJson" + }, + { + "type": [ + "string", + "number" + ] + } + ] + }, + "dashArray": { + "description": "question: Should a dasharray be used to render the lines?\nThe dasharray defines 'pixels of line, pixels of gap, pixels of line, pixels of gap, ...'. For example, `5 6` will be 5 pixels of line followed by a 6 pixel gap.\nCannot be a dynamic property due to a MapLibre limitation (see https://github.com/maplibre/maplibre-gl-js/issues/1235)\nifunset: Ways are rendered with a full line", + "type": "string" + }, + "lineCap": { + "description": "question: What form should the line-ending have?\nsuggestions: return [{if:\"value=round\",then:\"Round endings\"}, {if: \"value=square\", then: \"square endings\"}, {if: \"value=butt\", then: \"no ending (square ending at the end, without padding)\"}]\ntypes: dynamic value ; string\ntitle: Line Cap\nifunset: Use the default value (round ending)", + "anyOf": [ + { + "$ref": "#/definitions/MinimalTagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "fillColor": { + "description": "question: What colour should be used as fill colour for polygons?\nifunset: The polygon fill colour will be a more transparent version of the stroke colour\nsuggestions: return [{if: \"value=#00000000\", then: \"Use a transparent fill (only render the outline)\"}]\ninline: The fill colour is {value}\ntypes: dynamic value ; string\ntype: color", + "anyOf": [ + { + "$ref": "#/definitions/MinimalTagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "offset": { + "description": "question: Should the lines be moved (offsetted) with a number of pixels against the geographical lines?\nThe number of pixels this line should be moved.\nUse a positive number to move to the right in the drawing direction or a negative to move to the left (left/right as defined by the drawing direction of the line).\n\nIMPORTANT: MapComplete will already normalize 'key:both:property' and 'key:both' into the corresponding 'key:left' and 'key:right' tagging (same for 'sidewalk=left/right/both' which is rewritten to 'sidewalk:left' and 'sidewalk:right')\nThis simplifies programming. Refer to the CalculatedTags.md-documentation for more details\nifunset: don't offset lines on the map\ninline: Pixel offset by {value} pixels\ntypes: dynamic value ; number\ntype: int", + "anyOf": [ + { + "$ref": "#/definitions/MinimalTagRenderingConfigJson" + }, + { + "type": "number" + } + ] + }, + "imageAlongWay": { + "description": "question: What PNG-image should be shown along the way?\n\nifunset: no image is shown along the way\nsuggestions: [{if: \"./assets/png/oneway.png\", then: \"Show a oneway error\"}]\ntype: image", + "anyOf": [ + { + "type": "array", + "items": { + "type": "object", + "properties": { + "if": { + "$ref": "#/definitions/TagConfigJson", + "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag" + }, + "then": { + "type": "string" + } + }, + "required": [ + "if", + "then" + ] + } + }, + { + "type": "string" + } + ] + } + }, + "additionalProperties": false + }, + "QuestionableTagRenderingConfigJson": { + "description": "A QuestionableTagRenderingConfigJson is a single piece of code which converts one ore more tags into a HTML-snippet.\nIf the desired tags are missing and a question is defined, a question will be shown instead.", + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "mappings": { + "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes\n\nquestion: What are common options?", + "type": "array", + "items": { + "$ref": "#/definitions/MappingConfigJson" + } + }, + "multiAnswer": { + "description": "question: Should a contributor be allowed to select multiple mappings?\n\nIf true, use checkboxes instead of radio buttons when asking the question.\n\niftrue: allow to select multiple mappings (and show a freeform-value as list if ';'-separated)\niffalse: only allow to select a single mapping\nifunset: only allow to select a single mapping", + "type": "boolean" + }, + "freeform": { + "description": "Allow freeform text input from the user", + "type": "object", + "properties": { + "key": { + "description": "question: What is the name of the attribute that should be written to?\nThis is the OpenStreetMap-key that that value will be written to\nifunset: do not offer a freeform textfield as answer option", + "type": "string" + }, + "type": { + "description": "question: What is the input type?\nThe type of the text-field, e.g. 'string', 'nat', 'float', 'date',...\nSee Docs/SpecialInputElements.md and UI/Input/ValidatedTextField.ts for supported values\nifunset: use an unconstrained string as input (default)\nsuggestions: return validators.AllValidators.filter(type => !type.isMeta).map((type) => ({if: \"value=\"+type.name, then: \"\"+type.name+\" \"+type.explanation.split(\"\\n\")[0]}))", + "type": "string" + }, + "placeholder": { + "description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation\ngroup: expert\nifunset: No specific placeholder is set, show the type of the textfield", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "addExtraTags": { + "description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'\ngroup: expert", + "type": "array", + "items": { + "type": "string" + } + }, + "inline": { + "description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question\ngroup: expert", + "type": "boolean" + }, + "default": { + "description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield\ngroup: expert", + "type": "string" + }, + "invalidValues": { + "description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key\ngroup: expert", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "postfixDistinguished": { + "description": "question: If this key shared and distinguished by a postfix, what is the postfix?\nThis option is used specifically for `charge`, where the cost is indicated with `/item`.\n\nFor example, a vending machine might sell `bicycle_tube`.\nSetting this value to `bicycle_tube`, then answering this question will set `charge= €XX/bicycle_tube`.\nIf charge did already contain another value, e.g. `charge= €YY/some_item; €ZZ/other_item`, then `€XX/bicycle_tube`will be added.\nNote: those values are sorted alphabetically\nNote: no need to add the `/`\n\nifunset: Don't distinguish by postfix\ngroup: expert", + "type": "string" + }, + "helperArgs": { + "description": "Extra arguments to configure the input element\ngroup: hidden" + } + }, + "required": [ + "helperArgs" + ] + }, + "question": { + "description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "questionHint": { + "description": "question: Should some extra information be shown to the contributor, alongside the question?\nThis hint is shown in subtle text under the question.\nThis can give some extra information on what the answer should ook like\nifunset: No extra hint is given", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "editButtonAriaLabel": { + "description": "When using a screenreader and selecting the 'edit' button, the current rendered value is read aloud in normal circumstances.\nIn some rare cases, this is not desirable. For example, if the rendered value is a link to a website, this link can be selected (and will be read aloud).\nIf the user presses _tab_ again, they'll select the button and have the link read aloud a second time.", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "labels": { + "description": "What labels should be applied on this tagRendering?\n\nA list of labels. These are strings that are used for various purposes, e.g. to only include a subset of the tagRenderings when reusing a layer\n\nSpecial values:\n- \"hidden\": do not show this tagRendering. Useful in it is used by e.g. an accordion\n- \"description\": this label is a description used in the search", + "type": "array", + "items": { + "type": "string" + } + }, + "render": { + "description": "question: What text should be rendered?\n\nThis piece of text will be shown in the infobox.\nIn this text, values within braces (such as {braced(key)}) are replaced by the corresponding `value` in the object.\nFor example, if the object contains tags `amenity=school; name=Windy Hill School`, the render string `This school is named {name}` will be shown to the user as `This school is named Windy Hill School`\n\nThis text will be shown if:\n- there is no mapping which matches (or there are no matches)\n- no question, no mappings and no 'freeform' is set\n\nNote that this is a HTML-interpreted value, so you can add links as e.g. '<a href='{website}'>{website}</a>' or include images such as `This is of type A <br><img src='typeA-icon.svg' />`\ntype: rendered\nifunset: No text is shown if no predefined options match.", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "object", + "properties": { + "special": { + "allOf": [ + { + "$ref": "#/definitions/Record>" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "required": [ + "type" + ] + } + ] + } + }, + "required": [ + "special" + ] + }, + { + "type": "string" + } + ] + }, + "icon": { + "description": "question: what icon should be shown next to the 'render' value?\nAn icon shown next to the rendering; typically shown pretty small\nThis is only shown next to the \"render\" value\nType: icon\nifunset: No additional icon is shown next to the always shown text", + "anyOf": [ + { + "type": "object", + "properties": { + "path": { + "description": "The path to the icon\nType: icon", + "type": "string" + }, + "class": { + "description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-', so defining your own in combination with a custom CSS is possible (but discouraged)", + "type": "string" + } + }, + "required": [ + "path" + ] + }, + { + "type": "string" + } + ] + }, + "condition": { + "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or show this question if unknown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "metacondition": { + "description": "question: When should this item be shown (including special conditions)?\ntype: tag\nifunset: No specific metacondition set which is evaluated against the usersettings/application state; always show this tagRendering or show this question if unknown\n\nIf set, this tag will be evaluated against the _usersettings/application state_ table.\nEnable 'show debug info' in user settings to see available options (at the settings-tab).\nNote that values with an underscore depicts _application state_ (including metainfo about the user) whereas values without an underscore depict _user settings_", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "description": { + "description": "A human-readable text explaining what this tagRendering does.\nMostly used for the shared tagrenderings", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "classes": { + "description": "question: What css-classes should be applied to showing this attribute?\n\nA list of css-classes to apply to the entire tagRendering.\nThese classes are applied in 'answer'-mode, not in question mode\nThis is only for advanced users.\n\nValues are split on ` ` (space)", + "type": "string" + }, + "filter": { + "description": "This tagRendering can introduce this builtin filter", + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "enum": [ + true + ], + "type": "boolean" + } + ] + } + }, + "required": [ + "id" + ], + "additionalProperties": false + }, + "Partial": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "mappings": { + "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes\n\nquestion: What are common options?", + "type": "array", + "items": { + "$ref": "#/definitions/MappingConfigJson" + } + }, + "multiAnswer": { + "description": "question: Should a contributor be allowed to select multiple mappings?\n\nIf true, use checkboxes instead of radio buttons when asking the question.\n\niftrue: allow to select multiple mappings (and show a freeform-value as list if ';'-separated)\niffalse: only allow to select a single mapping\nifunset: only allow to select a single mapping", + "type": "boolean" + }, + "freeform": { + "description": "Allow freeform text input from the user", + "type": "object", + "properties": { + "key": { + "description": "question: What is the name of the attribute that should be written to?\nThis is the OpenStreetMap-key that that value will be written to\nifunset: do not offer a freeform textfield as answer option", + "type": "string" + }, + "type": { + "description": "question: What is the input type?\nThe type of the text-field, e.g. 'string', 'nat', 'float', 'date',...\nSee Docs/SpecialInputElements.md and UI/Input/ValidatedTextField.ts for supported values\nifunset: use an unconstrained string as input (default)\nsuggestions: return validators.AllValidators.filter(type => !type.isMeta).map((type) => ({if: \"value=\"+type.name, then: \"\"+type.name+\" \"+type.explanation.split(\"\\n\")[0]}))", + "type": "string" + }, + "placeholder": { + "description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation\ngroup: expert\nifunset: No specific placeholder is set, show the type of the textfield", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "addExtraTags": { + "description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'\ngroup: expert", + "type": "array", + "items": { + "type": "string" + } + }, + "inline": { + "description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question\ngroup: expert", + "type": "boolean" + }, + "default": { + "description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield\ngroup: expert", + "type": "string" + }, + "invalidValues": { + "description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key\ngroup: expert", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "postfixDistinguished": { + "description": "question: If this key shared and distinguished by a postfix, what is the postfix?\nThis option is used specifically for `charge`, where the cost is indicated with `/item`.\n\nFor example, a vending machine might sell `bicycle_tube`.\nSetting this value to `bicycle_tube`, then answering this question will set `charge= €XX/bicycle_tube`.\nIf charge did already contain another value, e.g. `charge= €YY/some_item; €ZZ/other_item`, then `€XX/bicycle_tube`will be added.\nNote: those values are sorted alphabetically\nNote: no need to add the `/`\n\nifunset: Don't distinguish by postfix\ngroup: expert", + "type": "string" + }, + "helperArgs": { + "description": "Extra arguments to configure the input element\ngroup: hidden" + } + }, + "required": [ + "helperArgs" + ] + }, + "question": { + "description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "questionHint": { + "description": "question: Should some extra information be shown to the contributor, alongside the question?\nThis hint is shown in subtle text under the question.\nThis can give some extra information on what the answer should ook like\nifunset: No extra hint is given", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "editButtonAriaLabel": { + "description": "When using a screenreader and selecting the 'edit' button, the current rendered value is read aloud in normal circumstances.\nIn some rare cases, this is not desirable. For example, if the rendered value is a link to a website, this link can be selected (and will be read aloud).\nIf the user presses _tab_ again, they'll select the button and have the link read aloud a second time.", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "labels": { + "description": "What labels should be applied on this tagRendering?\n\nA list of labels. These are strings that are used for various purposes, e.g. to only include a subset of the tagRenderings when reusing a layer\n\nSpecial values:\n- \"hidden\": do not show this tagRendering. Useful in it is used by e.g. an accordion\n- \"description\": this label is a description used in the search", + "type": "array", + "items": { + "type": "string" + } + }, + "render": { + "description": "question: What text should be rendered?\n\nThis piece of text will be shown in the infobox.\nIn this text, values within braces (such as {braced(key)}) are replaced by the corresponding `value` in the object.\nFor example, if the object contains tags `amenity=school; name=Windy Hill School`, the render string `This school is named {name}` will be shown to the user as `This school is named Windy Hill School`\n\nThis text will be shown if:\n- there is no mapping which matches (or there are no matches)\n- no question, no mappings and no 'freeform' is set\n\nNote that this is a HTML-interpreted value, so you can add links as e.g. '<a href='{website}'>{website}</a>' or include images such as `This is of type A <br><img src='typeA-icon.svg' />`\ntype: rendered\nifunset: No text is shown if no predefined options match.", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "object", + "properties": { + "special": { + "allOf": [ + { + "$ref": "#/definitions/Record>" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "required": [ + "type" + ] + } + ] + } + }, + "required": [ + "special" + ] + }, + { + "type": "string" + } + ] + }, + "icon": { + "description": "question: what icon should be shown next to the 'render' value?\nAn icon shown next to the rendering; typically shown pretty small\nThis is only shown next to the \"render\" value\nType: icon\nifunset: No additional icon is shown next to the always shown text", + "anyOf": [ + { + "type": "object", + "properties": { + "path": { + "description": "The path to the icon\nType: icon", + "type": "string" + }, + "class": { + "description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-', so defining your own in combination with a custom CSS is possible (but discouraged)", + "type": "string" + } + }, + "required": [ + "path" + ] + }, + { + "type": "string" + } + ] + }, + "condition": { + "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or show this question if unknown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "metacondition": { + "description": "question: When should this item be shown (including special conditions)?\ntype: tag\nifunset: No specific metacondition set which is evaluated against the usersettings/application state; always show this tagRendering or show this question if unknown\n\nIf set, this tag will be evaluated against the _usersettings/application state_ table.\nEnable 'show debug info' in user settings to see available options (at the settings-tab).\nNote that values with an underscore depicts _application state_ (including metainfo about the user) whereas values without an underscore depict _user settings_", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "description": { + "description": "A human-readable text explaining what this tagRendering does.\nMostly used for the shared tagrenderings", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "classes": { + "description": "question: What css-classes should be applied to showing this attribute?\n\nA list of css-classes to apply to the entire tagRendering.\nThese classes are applied in 'answer'-mode, not in question mode\nThis is only for advanced users.\n\nValues are split on ` ` (space)", + "type": "string" + }, + "filter": { + "description": "This tagRendering can introduce this builtin filter", + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "enum": [ + true + ], + "type": "boolean" + } + ] + } + }, + "additionalProperties": false + }, + "default<(string|QuestionableTagRenderingConfigJson|{builtin:string;override:Partial;})[]>": { + "description": "Rewrites and multiplies the given renderings of type T.\n\nThis can be used for introducing many similar questions automatically,\nwhich also makes translations easier.\n\n(Note that the key does _not_ need to be wrapped in {}.\nHowever, we recommend to use them if the key is used in a translation, as missing keys will be picked up and warned for by the translation scripts)\n\nFor example:\n\n```\n{\n rewrite: {\n sourceString: [\"key\", \"a|b|c\"],\n into: [\n [\"X\", 0]\n [\"Y\", 1],\n [\"Z\", 2]\n ],\n renderings: [{\n \"key\":\"a|b|c\"\n }]\n }\n}\n```\nwill result in _three_ copies (as the values to rewrite into have three values, namely:\n\n[\n {\n # The first pair: key --> X, a|b|c --> 0\n \"X\": 0\n },\n {\n \"Y\": 1\n },\n {\n \"Z\": 2\n }\n\n]", + "type": "object", + "properties": { + "rewrite": { + "type": "object", + "properties": { + "sourceString": { + "type": "array", + "items": { + "type": "string" + } + }, + "into": { + "type": "array", + "items": { + "type": "array", + "items": {} + } + } + }, + "required": [ + "into", + "sourceString" + ] + }, + "subexpand": { + "description": "Used to expand a sublist.\nE.g. a target `rendering` is:\n\ne.g.\n{\n rewrite: [\"{{x}}\", \"{{y}}\"],\n into:[\n [\"{{x}}\": \"some X\"],\n [\"{{y}}\", [\"option 1\", \"option 2\"]]\n ],\n renderings:[\n {\n \"question\":\"Is {{x}}\",\n \"mappings\": [\"if={{y}}\",then: \"...\"]\n }\n ]\n subExpand: {\n // The list with the key\n \"mappings\":\n // will be taken and multiplied by all possible values of\n \"{{y}}\"\n // Note that this implies that `into.[*].[{{y}}]` should be a list of items\n }\n}\n\nExpansion will result in:\n{\n question: \"Is some X\",\n mappings: [{\"if=option 1\", then: \"...\"}, {\"if=option 2\", then: \"...\"}]\n}", + "$ref": "#/definitions/Record" + }, + "renderings": { + "anyOf": [ + { + "type": "array", + "items": { + "anyOf": [ + { + "$ref": "#/definitions/QuestionableTagRenderingConfigJson" + }, + { + "type": "object", + "properties": { + "builtin": { + "type": "string" + }, + "override": { + "$ref": "#/definitions/Partial" + } + }, + "required": [ + "builtin", + "override" + ] + }, + { + "type": "string" + } + ] + } + }, + { + "type": "array", + "items": { + "type": "array", + "items": { + "anyOf": [ + { + "$ref": "#/definitions/QuestionableTagRenderingConfigJson" + }, + { + "type": "object", + "properties": { + "builtin": { + "type": "string" + }, + "override": { + "$ref": "#/definitions/Partial" + } + }, + "required": [ + "builtin", + "override" + ] + }, + { + "type": "string" + } + ] + } + } + } + ] + } + }, + "required": [ + "renderings", + "rewrite" + ], + "additionalProperties": false + }, + "default_1": { + "type": "object", + "properties": { + "id": { + "description": "An id/name for this filter, used to set the URL parameters", + "type": "string" + }, + "options": { + "description": "The options for a filter\nIf there are multiple options these will be a list of radio buttons\nIf there is only one option this will be a checkbox\nFiltering is done based on the given osmTags that are compared to the objects in that layer.\n\nAn example which searches by name:\n\n```\n{\n \"id\": \"shop-name\",\n \"options\": [\n {\n \"fields\": [\n {\n \"name\": \"search\",\n \"type\": \"string\"\n }\n ],\n \"osmTags\": \"name~i~.*{search}.*\",\n \"question\": {\n \"en\": \"Only show shops with name {search}\",\n }\n }\n ]\n }\n ```", + "type": "array", + "items": { + "$ref": "#/definitions/FilterConfigOptionJson" + } + }, + "#": { + "description": "Used for comments or to disable a check\n\n\"ignore-possible-duplicate\": disables a check in `DetectDuplicateFilters` which complains that a filter can be replaced by a filter from the `filters`-library-layer", + "type": "string" + } + }, + "required": [ + "id", + "options" + ], + "additionalProperties": false + }, + "DeleteConfigJson": { + "type": "object", + "properties": { + "neededChangesets": { + "description": "*\nBy default, the contributor needs 20 previous changesets to delete points edited by others.\nFor some small features (e.g. bicycle racks) this is too much and this requirement can be lowered or dropped, which can be done here.\n\ntype: nat\nquestion: How many changesets must a contributor have before being allowed to delete a point?", + "type": "number" + }, + "extraDeleteReasons": { + "description": "*\nBy default, three reasons to delete a point are shown:\n\n- The point does not exist anymore\n- The point was a testing point\n- THe point could not be found\n\nHowever, for some layers, there might be different or more specific reasons for deletion which can be user friendly to set, e.g.:\n\n- the shop has closed\n- the climbing route has been closed of for nature conservation reasons\n- ...\n\nThese reasons can be stated here and will be shown in the list of options the user can choose from", + "type": "array", + "items": { + "type": "object", + "properties": { + "explanation": { + "description": "The text that will be shown to the user as option for why this point does not exist anymore.\nNote that the most common reasons (test point, does not exist anymore, cannot be found) are already offered by default\n\nquestion: For what extra reason might this feature be removed in real-life?" + }, + "changesetMessage": { + "description": "The text that will be uploaded into the changeset or will be used in the fixme in case of a soft deletion\nShould be a few words, in english\n\nquestion: What should be added to the changeset as delete reason?", + "type": "string" + } + }, + "required": [ + "changesetMessage", + "explanation" + ] + } + }, + "nonDeleteMappings": { + "description": "In some cases, a (starting) contributor might wish to delete a feature even though deletion is not appropriate.\n(The most relevant case are small paths running over private property. These should be marked as 'private' instead of deleted, as the community might trace the path again from aerial imagery, gettting us back to the original situation).\n\nBy adding a 'nonDeleteMapping', an option can be added into the list which will retag the feature.\nIt is important that the feature will be retagged in such a way that it won't be picked up by the layer anymore!", + "type": "array", + "items": { + "type": "object", + "properties": { + "if": { + "$ref": "#/definitions/TagConfigJson", + "description": "The tags that will be given to the object.\nThis must remove tags so that the 'source/osmTags' won't match anymore\n\nquestion: What tags should be applied to the object?" + }, + "then": { + "description": "The human explanation for the options\n\nquestion: What text should be shown to the contributor for this reason?", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + } + }, + "required": [ + "if", + "then" + ] + } + }, + "softDeletionTags": { + "description": "In some cases, the contributor is not allowed to delete the current feature (e.g. because it isn't a point, the point is referenced by a relation or the user isn't experienced enough).\nTo still offer the user a 'delete'-option, the feature is retagged with these tags. This is a soft deletion, as the point isn't actually removed from OSM but rather marked as 'disused'\nIt is important that the feature will be retagged in such a way that it won't be picked up by the layer anymore!\n\nExample (note that \"amenity=\" erases the 'amenity'-key alltogether):\n\n```\n{\n \"and\": [\"disussed:amenity=public_bookcase\", \"amenity=\"]\n}\n```\n\nor (notice the use of the ':='-tag to copy the old value of 'shop=*' into 'disused:shop='):\n\n```\n{\n \"and\": [\"disused:shop:={shop}\", \"shop=\"]\n}\n```\n\nquestion: If a hard delete is not possible, what tags should be applied to mark this feature as deleted?\ntype: tag", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "omitDefaultDeleteReasons": { + "description": "Set this flag if the default delete reasons should be omitted from the dialog.\nThis requires at least one extraDeleteReason or nonDeleteMapping\n\nquestion: Should the default delete reasons be hidden?\niftrue: Hide the default delete reasons\niffalse: Show the default delete reasons\nifunset: Show the default delete reasons (default behaviour)", + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "type": "boolean" + } + ] + } + }, + "additionalProperties": false + }, + "default_3": { + "type": "object", + "properties": { + "enableImproveAccuracy": { + "description": "question: Should moving this type of point to improve the accuracy be allowed?\niftrue: This point can be moved to improve the accuracy\nifunset: (default) This point can be moved to improve the accuracy\niffalse: This point cannot be moved to improve the accuracy", + "type": "boolean" + }, + "enableRelocation": { + "description": "question: Should moving this type of point due to a relocation be allowed?\n\nThis will erase the attributes `addr:street`, `addr:housenumber`, `addr:city` and `addr:postcode`\n\niftrue: This type of point can be moved due to a relocation (and will remove address information when this is done)\nifunset: (default) This type of point can be moved due to a relocation (and will remove address information when this is done)\niffalse: This type of point cannot be moved due to a relocation", + "type": "boolean" + } + }, + "additionalProperties": false + }, + "default_2": { + "description": "In some cases, a value is represented in a certain unit (such as meters for heigt/distance/..., km/h for speed, ...)\n\nSometimes, multiple denominations are possible (e.g. km/h vs mile/h; megawatt vs kilowatt vs gigawatt for power generators, ...)\n\nThis brings in some troubles, as there are multiple ways to write it (no denomitation, 'm' vs 'meter' 'metre', ...)\n\nNot only do we want to write consistent data to OSM, we also want to present this consistently to the user.\nThis is handled by defining units.\n\n# Rendering\n\nTo render a value with long (human) denomination, use {canonical(key)}\n\n# Usage\n\nFirst of all, you define which keys have units applied, for example:\n\n```\nunits: [\n appliesTo: [\"maxspeed\", \"maxspeed:hgv\", \"maxspeed:bus\"]\n applicableUnits: [\n ...\n ]\n]\n```\n\nApplicableUnits defines which is the canonical extension, how it is presented to the user, ...:\n\n```\napplicableUnits: [\n{\n canonicalDenomination: \"km/h\",\n alternativeDenomination: [\"km/u\", \"kmh\", \"kph\"]\n default: true,\n human: {\n en: \"kilometer/hour\",\n nl: \"kilometer/uur\"\n },\n humanShort: {\n en: \"km/h\",\n nl: \"km/u\"\n }\n},\n{\n canoncialDenomination: \"mph\",\n ... similar for miles an hour ...\n}\n]\n```\n\n\nIf this is defined, then every key which the denominations apply to (`maxspeed`, `maxspeed:hgv` and `maxspeed:bus`) will be rewritten at the metatagging stage:\nevery value will be parsed and the canonical extension will be added add presented to the other parts of the code.\n\nAlso, if a freeform text field is used, an extra dropdown with applicable denominations will be given", + "type": "object", + "properties": { + "quantity": { + "description": "What is quantified? E.g. 'speed', 'length' (including width, diameter, ...), 'electric tension', 'electric current', 'duration'", + "type": "string" + }, + "appliesToKey": { + "description": "Every key from this list will be normalized.\n\nTo render the value properly (with a human readable denomination), use `{canonical()}`", + "type": "array", + "items": { + "type": "string" + } + }, + "eraseInvalidValues": { + "description": "If set, invalid values will be erased in the MC application (but not in OSM of course!)\nBe careful with setting this", + "type": "boolean" + }, + "applicableUnits": { + "description": "The possible denominations for this unit.\nFor length, denominations could be \"meter\", \"kilometer\", \"miles\", \"foot\"", + "type": "array", + "items": { + "$ref": "#/definitions/DenominationConfigJson" + } + }, + "defaultInput": { + "description": "In some cases, the default denomination is not the most user friendly to input.\nE.g., when measuring kerb heights, it is illogical to ask contributors to input an amount in meters.\n\nWhen a default input method should be used, this can be specified by setting the canonical denomination here, e.g.\n`defaultInput: \"cm\"`. This must be a denomination which appears in the applicableUnits", + "type": "string" + } + }, + "required": [ + "applicableUnits" + ], + "additionalProperties": false + }, + "Record": { + "type": "object", + "additionalProperties": false + }, + "default": { + "type": "object", + "properties": { + "icon": { + "description": "question: What icon should be shown in the link button?\nifunset: do not show an icon\ntype: icon", + "type": "string" + }, + "text": { + "description": "question: What text should be shown in the link icon?\n\nNote that {lat},{lon},{zoom}, {language} and {theme} will be replaced\n\nifunset: do not show a text", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "href": { + "description": "question: if clicked, what webpage should open?\nNote that {lat},{lon},{zoom}, {language} and {theme} will be replaced\n\ntype: url", + "type": "string" + }, + "newTab": { + "description": "question: Should the link open in a new tab?\niftrue: Open in a new tab\niffalse: do not open in a new tab\nifunset: do not open in a new tab", + "type": "boolean" + }, + "requirements": { + "description": "question: When should the extra button be shown?\nsuggestions: return [{if: \"value=iframe\", then: \"When shown in an iframe\"}, {if: \"value=no-iframe\", then: \"When shown as stand-alone webpage\"}, {if: \"value=welcome-message\", then: \"When the welcome messages are enabled\"}, {if: \"value=iframe\", then: \"When the welcome messages are disabled\"}]", + "type": "array", + "items": { + "enum": [ + "iframe", + "no-iframe", + "no-welcome-message", + "welcome-message" + ], + "type": "string" + } + } + }, + "required": [ + "href" + ], + "additionalProperties": false + }, + "LayerConfigJson": { + "description": "Configuration for a single layer", + "type": "object", + "properties": { + "id": { + "description": "question: What is the identifier of this layer?\n\nThis should be a simple, lowercase, human readable string that is used to identify the layer.\n A good ID is:\n - a noun\n - written in singular\n - describes the object\n - in english\n - only has lowercase letters, numbers or underscores. Do not use a space or a dash\n\ntype: id\ngroup: Basic", + "type": "string" + }, + "name": { + "description": "Used in the layer control panel to toggle a layer on and of.\n\nifunset: This will hide the layer in the layer control, making it not filterable and not toggleable\n\ngroup: Basic\nquestion: What is the name of this layer?", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "description": { + "description": "question: How would you describe the features that are shown on this layer?\n\nA description for the features shown in this layer.\nThis often resembles the introduction of the wiki.osm.org-page for this feature.\n\ngroup: Basic", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "searchTerms": { + "description": "question: What are some other terms used to describe these objects?\n\nThis is used in the search functionality", + "$ref": "#/definitions/Record" + }, + "source": { + "description": "Question: Where should the data be fetched from?\ntitle: Data Source\n\nThis determines where the data for the layer is fetched: from OSM or from an external geojson dataset.\n\nIf no 'geojson' is defined, data will be fetched from overpass and the OSM-API.\n\nEvery source _must_ define which tags _must_ be present in order to be picked up.\n\nNote: a source must always be defined. 'special' is only allowed if this is a builtin-layer\n\ntypes: Load data with specific tags from OpenStreetMap ; Load data from an external geojson source ;\ntypesdefault: 0\nifunset: Determine the tags automatically based on the presets\ngroup: Basic", + "anyOf": [ + { + "type": "object", + "properties": { + "osmTags": { + "$ref": "#/definitions/TagConfigJson", + "description": "question: Which tags must be present on the feature to show it in this layer?\nEvery source must set which tags have to be present in order to load the given layer." + } + }, + "required": [ + "osmTags" + ] + }, + { + "type": "object", + "properties": { + "geoJson": { + "description": "The actual source of the data to load, if loaded via geojson.\n\n# A single geojson-file\nsource: {geoJson: \"https://my.source.net/some-geo-data.geojson\"}\n fetches a geojson from a third party source\n\n# A tiled geojson source\nsource: {geoJson: \"https://my.source.net/some-tile-geojson-{layer}-{z}-{x}-{y}.geojson\", geoJsonZoomLevel: 14}\n to use a tiled geojson source. The web server must offer multiple geojsons. {z}, {x} and {y} are substituted by the location; {layer} is substituted with the id of the loaded layer\n\nSome API's use a BBOX instead of a tile, this can be used by specifying {y_min}, {y_max}, {x_min} and {x_max}\n\nquestion: What is the URL of the geojson?\ntype: url", + "type": "string" + }, + "geoJsonZoomLevel": { + "description": "To load a tiled geojson layer, set the zoomlevel of the tiles\n\nquestion: If using a tiled geojson, what is the zoomlevel of the tiles?\nifunset: This is not a tiled geojson", + "type": "number" + }, + "mercatorCrs": { + "description": "Some API's use a mercator-projection (EPSG:900913) instead of WGS84. Set the flag `mercatorCrs: true` in the source for this\n\nquestion: Does this geojson use EPSG:900913 instead of WGS84 as projection?\niftrue: This geojson uses EPSG:900913 instead of WGS84\nifunset: This geojson uses WGS84 just like most geojson (default)", + "type": "boolean" + }, + "idKey": { + "description": "Some API's have an id-field, but give it a different name.\nSetting this key will rename this field into 'id'\n\nifunset: An id with key `id` will be assigned automatically if no attribute `id` is set\ninline: This geojson uses {value} as attribute to set the id\nquestion: What is the name of the attribute containing the ID of the object?", + "type": "string" + } + }, + "required": [ + "geoJson" + ] + }, + { + "enum": [ + "special", + "special:library" + ], + "type": "string" + } + ] + }, + "calculatedTags": { + "description": "A list of extra tags to calculate, specified as \"keyToAssignTo=javascript-expression\".\nThere are a few extra functions available. Refer to Docs/CalculatedTags.md for more information\nThe functions will be run in order, e.g.\n[\n \"_max_overlap_m2=Math.max(...feat.overlapsWith(\"someOtherLayer\").map(o => o.overlap))\n \"_max_overlap_ratio=Number(feat._max_overlap_m2)/feat.area\n]\n\nThe specified tags are evaluated lazily. E.g. if a calculated tag is only used in the popup (e.g. the number of nearby features),\nthe expensive calculation will only be performed then for that feature. This avoids clogging up the contributors PC when all features are loaded.\n\nIf a tag has to be evaluated strictly, use ':=' instead:\n\n[\n\"_some_key:=some_javascript_expression\"\n]\n\nSee the full documentation on [https://github.com/pietervdvn/MapComplete/blob/master/Docs/CalculatedTags.md]\n\ngroup: expert\nquestion: What extra attributes should be calculated with javascript?", + "type": "array", + "items": { + "type": "string" + } + }, + "isShown": { + "description": "If set, only features matching this extra tag will be shown.\nThis is useful to hide certain features from view based on a calculated tag or if the features are provided by a different layer.\n\nquestion: What other tags should features match for being shown?\ngroup: advanced\nifunset: all features which match the 'source'-specification are shown.", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "isCounted": { + "description": "question: should this layer be included in the summary counts?\n\nThe layer server can give summary counts for a tile.\nThis should however be disabled for some layers, e.g. because there are too many features (walls_and_buildings) or because the count is irrelevant.\n\nifunset: Do count\niffalse: Do not include the counts\niftrue: Do include the count", + "type": "boolean" + }, + "minzoom": { + "description": "The minimum needed zoomlevel required to start loading and displaying the data.\nThis can be used to only show common features (e.g. a bicycle parking) only when the map is zoomed in very much (17).\nThis prevents cluttering the map with thousands of parkings if one is looking to an entire city.\n\nDefault: 0\ngroup: Basic\ntype: nat\nquestion: At what zoom level should features of the layer be shown?\nifunset: Always load this layer, even if the entire world is in view.", + "type": "number" + }, + "shownByDefault": { + "description": "Indicates if this layer is shown by default;\ncan be used to hide a layer from start, or to load the layer but only to show it when appropriate (e.g. for advanced users)\n\nquestion: Should this layer be enabled when opening the map for the first time?\niftrue: the layer is enabled when opening the map\niffalse: the layer is hidden until the contributor enables it. (If the filter-popup is disabled, this might never get enabled nor loaded)\ndefault: true\ngroup: advanced", + "type": "boolean" + }, + "minzoomVisible": { + "description": "The zoom level at which point the data is hidden again\nDefault: 100 (thus: always visible\n\ngroup: expert", + "type": "number" + }, + "title": { + "description": "question: Edit the popup title\nThe title shown in a popup for elements of this layer.\n\ngroup: title\ntypes: use a fixed translation ; Use a dynamic tagRendering ; hidden\ntypesdefault: 1\ntype: translation\ninline: {translated{value}}", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "popupInFloatover": { + "description": "Question: Should the information for this layer be shown in the sidebar or in a splash screen?\n\nIf set, open the selectedElementView in a floatOver instead of on the right.\n\niftrue: show the infobox in the splashscreen floating over the entire UI; hide the title bar\niffalse: show the infobox in a sidebar on the right\nsuggestions: return [{if: \"value=title\", then: \"Show in a floatover and show the title bar\"}]\ngroup: advanced\ndefault: sidebar", + "type": [ + "string", + "boolean" + ] + }, + "titleIcons": { + "description": "Small icons shown next to the title.\nIf not specified, the OsmLink and wikipedia links will be used by default.\nUse an empty array to hide them.\nNote that \"defaults\" will insert all the default titleIcons (which are added automatically)\n\nUse `auto:` to automatically create an icon based on a tagRendering which has icons\n\nType: icon[]\ngroup: infobox", + "anyOf": [ + { + "type": "array", + "items": { + "anyOf": [ + { + "allOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "object", + "properties": { + "id": { + "type": "string" + } + } + } + ] + }, + { + "type": "string" + } + ] + } + }, + { + "type": "array", + "items": [ + { + "type": "string", + "enum": [ + "defaults" + ] + } + ], + "minItems": 1, + "maxItems": 1 + } + ] + }, + "pointRendering": { + "description": "Creates points to render on the map.\nThis can render points for point-objects, lineobjects or areaobjects; use 'location' to indicate where it should be rendered.\n\nNote that all attributes - including [the calculated tags](https://github.com/pietervdvn/MapComplete/blob/develop/Docs/CalculatedTags.md) can be used to create the markers and lines\n\ngroup: pointrendering", + "type": "array", + "items": { + "$ref": "#/definitions/default_4" + } + }, + "lineRendering": { + "description": "Creates lines and areas to render on the map\ngroup: linerendering", + "type": "array", + "items": { + "$ref": "#/definitions/default_5" + } + }, + "passAllFeatures": { + "description": "If set, this layer will pass all the features it receives onto the next layer.\nThis is ideal for decoration, e.g. directions on cameras\niftrue: Make the features from this layer also available to the other layer; might result in this object being rendered by multiple layers\niffalse: normal behaviour: don't pass features allong\nquestion: should this layer pass features to the next layers?\ngroup: expert", + "type": "boolean" + }, + "doNotDownload": { + "description": "If set, this layer will not query overpass; but it'll still match the tags above which are by chance returned by other layers.\nWorks well together with 'passAllFeatures', to add decoration\nThe opposite of `forceLoad`\n\niftrue: Do not attempt to query the data for this layer from overpass/the OSM API\niffalse: download the data as usual\ngroup: expert\nquestion: Should this layer be downloaded or is the data provided by a different layer (which has 'passAllFeatures'-set)?\ndefault: false", + "type": "boolean" + }, + "forceLoad": { + "description": "Advanced option - might be set by the theme compiler\n\nIf true, this data will _always_ be loaded, even if the theme is disabled by a filter or hidden.\nThe opposite of `doNotDownload`\n\nquestion: Should this layer be forcibly loaded?\nifftrue: always download this layer, even if it is disabled\niffalse: only download data for this layer when needed (default)\ndefault: false\ngroup: expert", + "type": "boolean" + }, + "presets": { + "description": "
\n
\nPresets for this layer.\n\nA preset consists of one or more attributes (tags), a title and optionally a description and optionally example images.\n\nWhen the contributor wishes to add a point to OpenStreetMap, they'll:\n\n1. Press the 'add new point'-button\n2. Choose a preset from the list of all presets\n3. Confirm the choice. In this step, the `description` (if set) and `exampleImages` (if given) will be shown\n4. Confirm the location\n5. A new point will be created with the attributes that were defined in the preset\n\nIf no presets are defined, the button which invites to add a new preset will not be shown.\n
\n
\n\ngroup: presets\ntitle: value.title", + "type": "array", + "items": { + "type": "object", + "properties": { + "title": { + "description": "The title - shown on the 'add-new'-button.\n\nThis should include the article of the noun, e.g. 'a hydrant', 'a bicycle pump'.\nThis text will be inserted into `Add {category} here`, becoming `Add a hydrant here`.\n\nDo _not_ indicate 'new': 'add a new shop here' is incorrect, as the shop might have existed forever, it could just be unmapped!\n\nquestion: What is the word to describe this object?\ninline: Add {translated(value)::font-bold} here", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "tags": { + "description": "A single tag (encoded as key=value) out of all the tags to add onto the newly created point.\nNote that the icon in the UI will be chosen automatically based on the tags provided here.\n\nquestion: What tag should be added to the new object?\ntype: simple_tag\ntypeHelper: uploadableOnly", + "type": "array", + "items": { + "type": "string" + } + }, + "description": { + "description": "An extra explanation of what the feature is, if it is not immediately clear from the title alone.\n\nThe _first sentence_ of the description is shown on the button of the `add` menu.\nThe full description is shown in the confirmation dialog.\n\n(The first sentence is until the first '.'-character in the description)\n\nquestion: How would you describe this feature?\nifunset: No extra description is given. This can be used to further explain the preset", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "exampleImages": { + "description": "The URL of an example image which shows a real-life example of what such a feature might look like.\n\nType: image\nquestion: What is the URL of an image showing such a feature?", + "type": "array", + "items": { + "type": "string" + } + }, + "snapToLayer": { + "description": "question: Should the created point be snapped to a line layer?\n\nIf specified, these layers will be shown in the precise location picker and the new point will be snapped towards it.\nFor example, this can be used to snap against `walls_and_buildings` (e.g. to attach a defibrillator, an entrance, an artwork, ... to the wall)\nor to snap an obstacle (such as a bollard) to the `cycleways_and_roads`.\n\nsuggestions: return Array.from(layers.keys()).map(key => ({if: \"value=\"+key, then: key+\" - \"+layers.get(key).description}))", + "type": "array", + "items": { + "type": "string" + } + }, + "maxSnapDistance": { + "description": "question: What is the maximum distance in the location-input that a point can be moved to be snapped to a way?\n\ninline: a point is snapped if the location input is at most {value}m away from an object\n\nIf specified, a new point will only be snapped if it is within this range.\nIf further away, it'll be placed in the center of the location input\nDistance in meter\n\nifunset: Do not snap to a layer", + "type": "number" + } + }, + "required": [ + "tags", + "title" + ] + } + }, + "tagRenderings": { + "description": "question: Edit this way this attributed is displayed or queried\n\nA tag rendering is a block that either shows the known value or asks a question.\n\nRefer to the class `TagRenderingConfigJson` to see the possibilities.\n\nNote that we can also use a string here - where the string refers to a tag rendering defined in `assets/questions/questions.json`,\nwhere a few very general questions are defined e.g. website, phone number, ...\nFurthermore, _all_ the questions of another layer can be reused with `otherlayer.*`\nIf you need only a single of the tagRenderings, use `otherlayer.tagrenderingId`\nIf one or more questions have a 'group' or 'label' set, select all the entries with the corresponding group or label with `otherlayer.*group`\nRemark: if a tagRendering is 'lent' from another layer, the 'source'-tags are copied and added as condition.\nIf they are not wanted, remove them with an override\n\nA special value is 'questions', which indicates the location of the questions box. If not specified, it'll be appended to the bottom of the featureInfobox.\n\nAt last, one can define a group of renderings where parts of all strings will be replaced by multiple other strings.\nThis is mainly create questions for a 'left' and a 'right' side of the road.\nThese will be grouped and questions will be asked together\n\ntype: tagrendering[]\ngroup: tagrenderings", + "type": "array", + "items": { + "anyOf": [ + { + "$ref": "#/definitions/QuestionableTagRenderingConfigJson" + }, + { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "builtin": { + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "type": "string" + } + ] + }, + "override": { + "$ref": "#/definitions/Partial" + } + }, + "required": [ + "builtin", + "override" + ] + }, + { + "allOf": [ + { + "$ref": "#/definitions/default<(string|QuestionableTagRenderingConfigJson|{builtin:string;override:Partial;})[]>" + }, + { + "type": "object", + "properties": { + "id": { + "type": "string" + } + }, + "required": [ + "id" + ] + } + ] + }, + { + "type": "string" + } + ] + } + }, + "filter": { + "description": "All the extra questions for filtering.\nIf a string is given, mapComplete will search in\n1. The tagrenderings for a match on ID and use the mappings as options\n2. search 'filters.json' for the appropriate filter or\n3. will try to parse it as `layername.filterid` and us that one.\n\nNote: adding \"#filter\":\"no-auto\" will disable the filters added by tagRenderings\n\ngroup: filters", + "anyOf": [ + { + "type": "array", + "items": { + "anyOf": [ + { + "$ref": "#/definitions/default_1" + }, + { + "type": "string" + } + ] + } + }, + { + "type": "object", + "properties": { + "sameAs": { + "type": "string" + } + }, + "required": [ + "sameAs" + ] + } + ] + }, + "#filter": { + "description": "Set this to disable the feature that tagRenderings can introduce filters", + "enum": [ + "no-auto" + ], + "type": "string" + }, + "deletion": { + "description": "This block defines under what circumstances the delete dialog is shown for objects of this layer.\nIf set, a dialog is shown to the user to (soft) delete the point.\nThe dialog is built to be user friendly and to prevent mistakes.\nIf deletion is not possible, the dialog will hide itself and show the reason of non-deletability instead.\n\nTo configure, the following values are possible:\n\n- false: never ever show the delete button\n- true: show the default delete button\n- undefined: use the mapcomplete default to show deletion or not. Currently, this is the same as 'false' but this will change in the future\n- or: a hash with options (see below)\n\n### The delete dialog\n\n\n\n#### Hard deletion if enough experience\n\nA feature can only be deleted from OpenStreetMap by mapcomplete if:\n\n- It is a node\n- No ways or relations use the node\n- The logged-in user has enough experience OR the user is the only one to have edited the point previously\n- The logged-in user has no unread messages (or has a ton of experience)\n- The user did not select one of the 'non-delete-options' (see below)\n\nIn all other cases, a 'soft deletion' is used.\n\n#### Soft deletion\n\nA 'soft deletion' is when the point isn't deleted fromOSM but retagged so that it'll won't how up in the mapcomplete theme anymore.\nThis makes it look like it was deleted, without doing damage. A fixme will be added to the point.\n\nNote that a soft deletion is _only_ possible if these tags are provided by the theme creator, as they'll be different for every theme\n\n##### No-delete options\n\nIn some cases, the contributor might want to delete something for the wrong reason (e.g. someone who wants to have a path removed \"because the path is on their private property\").\nHowever, the path exists in reality and should thus be on OSM - otherwise the next contributor will pass by and notice \"hey, there is a path missing here! Let me redraw it in OSM!)\n\nThe correct approach is to retag the feature in such a way that it is semantically correct *and* that it doesn't show up on the theme anymore.\nA no-delete option is offered as 'reason to delete it', but secretly retags.\n\ngroup: editing\ntypes: Use an advanced delete configuration ; boolean\niftrue: Allow deletion\niffalse: Do not allow deletion\nifunset: Do not allow deletion", + "anyOf": [ + { + "$ref": "#/definitions/DeleteConfigJson" + }, + { + "type": "boolean" + } + ] + }, + "allowMove": { + "description": "Indicates if a point can be moved and why.\n\nA feature can be moved by MapComplete if:\n\n- It is a point\n- The point is _not_ part of a way or a a relation.\n\ntypes: use an advanced move configuration ; boolean\ngroup: editing\nquestion: Is deleting a point allowed?\niftrue: Allow contributors to move a point (for accuracy or a relocation)\niffalse: Don't allow contributors to move points\nifunset: Don't allow contributors to move points (default)", + "anyOf": [ + { + "$ref": "#/definitions/default_3" + }, + { + "type": "boolean" + } + ] + }, + "allowSplit": { + "description": "If set, a 'split this way' button is shown on objects rendered as LineStrings, e.g. highways.\n\nIf the way is part of a relation, MapComplete will attempt to update this relation as well\nquestion: Should the contributor be able to split ways using this layer?\niftrue: enable the 'split-roads'-component\niffalse: don't enable the split-roads component\nifunset: don't enable the split-roads component\ngroup: editing", + "type": "boolean" + }, + "units": { + "description": "Either a list with [{\"key\": \"unitname\", \"key2\": {\"quantity\": \"unitname\", \"denominations\": [\"denom\", \"denom\"]}}]\n\nUse `\"inverted\": true` if the amount should be _divided_ by the denomination, e.g. for charge over time (`€5/day`)", + "type": "array", + "items": { + "anyOf": [ + { + "$ref": "#/definitions/default_2" + }, + { + "$ref": "#/definitions/Record" + } + ] + } + }, + "syncSelection": { + "description": "If set, synchronizes whether this layer is enabled.\n\ngroup: advanced\nquestion: Should enabling/disabling the layer be saved (locally or in the cloud)?\nsuggestions: return [{if: \"value=no\", then: \"Don't save, always revert to the default\"}, {if: \"value=local\", then: \"Save selection in local storage\"}, {if: \"value=theme-only\", then: \"Save the state in the OSM-usersettings, but apply on this theme only (default)\"}, {if: \"value=global\", then: \"Save in OSM-usersettings and toggle on _all_ themes using this layer\"}]", + "enum": [ + "global", + "local", + "no", + "theme-only" + ], + "type": "string" + }, + "#": { + "description": "Used for comments and/or to disable some checks\n\nno-question-hint-check: disables a check in MiscTagRenderingChecks which complains about 'div', 'span' or 'class=subtle'-HTML elements in the tagRendering\n\ngroup: hidden", + "type": "string" + }, + "fullNodeDatabase": { + "description": "_Set automatically by MapComplete, please ignore_\n\ngroup: hidden", + "type": "boolean" + }, + "enableMorePrivacy": { + "description": "question: Should a theme using this layer leak some location info when making changes?\n\nWhen a changeset is made, a 'distance to object'-class is written to the changeset.\nFor some particular themes and layers, this might leak too much information, and we want to obfuscate this\n\nifunset: Write 'change_within_x_m' as usual and if GPS is enabled\niftrue: Do not write 'change_within_x_m' and do not indicate that this was done by survey", + "type": "boolean" + }, + "snapName": { + "description": "question: When a feature is snapped to this name, how should this item be called?\n\nIn the move wizard, the option `snap object onto {snapName}` is shown\n\ngroup: hidden", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + } + }, + "required": [ + "id", + "pointRendering" + ], + "additionalProperties": false + }, + "Partial": { + "type": "object", + "properties": { + "id": { + "description": "question: What is the identifier of this layer?\n\nThis should be a simple, lowercase, human readable string that is used to identify the layer.\n A good ID is:\n - a noun\n - written in singular\n - describes the object\n - in english\n - only has lowercase letters, numbers or underscores. Do not use a space or a dash\n\ntype: id\ngroup: Basic", + "type": "string" + }, + "name": { + "description": "Used in the layer control panel to toggle a layer on and of.\n\nifunset: This will hide the layer in the layer control, making it not filterable and not toggleable\n\ngroup: Basic\nquestion: What is the name of this layer?", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "description": { + "description": "question: How would you describe the features that are shown on this layer?\n\nA description for the features shown in this layer.\nThis often resembles the introduction of the wiki.osm.org-page for this feature.\n\ngroup: Basic", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "searchTerms": { + "description": "question: What are some other terms used to describe these objects?\n\nThis is used in the search functionality", + "$ref": "#/definitions/Record" + }, + "source": { + "description": "Question: Where should the data be fetched from?\ntitle: Data Source\n\nThis determines where the data for the layer is fetched: from OSM or from an external geojson dataset.\n\nIf no 'geojson' is defined, data will be fetched from overpass and the OSM-API.\n\nEvery source _must_ define which tags _must_ be present in order to be picked up.\n\nNote: a source must always be defined. 'special' is only allowed if this is a builtin-layer\n\ntypes: Load data with specific tags from OpenStreetMap ; Load data from an external geojson source ;\ntypesdefault: 0\nifunset: Determine the tags automatically based on the presets\ngroup: Basic", + "anyOf": [ + { + "type": "object", + "properties": { + "osmTags": { + "$ref": "#/definitions/TagConfigJson", + "description": "question: Which tags must be present on the feature to show it in this layer?\nEvery source must set which tags have to be present in order to load the given layer." + } + }, + "required": [ + "osmTags" + ] + }, + { + "type": "object", + "properties": { + "geoJson": { + "description": "The actual source of the data to load, if loaded via geojson.\n\n# A single geojson-file\nsource: {geoJson: \"https://my.source.net/some-geo-data.geojson\"}\n fetches a geojson from a third party source\n\n# A tiled geojson source\nsource: {geoJson: \"https://my.source.net/some-tile-geojson-{layer}-{z}-{x}-{y}.geojson\", geoJsonZoomLevel: 14}\n to use a tiled geojson source. The web server must offer multiple geojsons. {z}, {x} and {y} are substituted by the location; {layer} is substituted with the id of the loaded layer\n\nSome API's use a BBOX instead of a tile, this can be used by specifying {y_min}, {y_max}, {x_min} and {x_max}\n\nquestion: What is the URL of the geojson?\ntype: url", + "type": "string" + }, + "geoJsonZoomLevel": { + "description": "To load a tiled geojson layer, set the zoomlevel of the tiles\n\nquestion: If using a tiled geojson, what is the zoomlevel of the tiles?\nifunset: This is not a tiled geojson", + "type": "number" + }, + "mercatorCrs": { + "description": "Some API's use a mercator-projection (EPSG:900913) instead of WGS84. Set the flag `mercatorCrs: true` in the source for this\n\nquestion: Does this geojson use EPSG:900913 instead of WGS84 as projection?\niftrue: This geojson uses EPSG:900913 instead of WGS84\nifunset: This geojson uses WGS84 just like most geojson (default)", + "type": "boolean" + }, + "idKey": { + "description": "Some API's have an id-field, but give it a different name.\nSetting this key will rename this field into 'id'\n\nifunset: An id with key `id` will be assigned automatically if no attribute `id` is set\ninline: This geojson uses {value} as attribute to set the id\nquestion: What is the name of the attribute containing the ID of the object?", + "type": "string" + } + }, + "required": [ + "geoJson" + ] + }, + { + "enum": [ + "special", + "special:library" + ], + "type": "string" + } + ] + }, + "calculatedTags": { + "description": "A list of extra tags to calculate, specified as \"keyToAssignTo=javascript-expression\".\nThere are a few extra functions available. Refer to Docs/CalculatedTags.md for more information\nThe functions will be run in order, e.g.\n[\n \"_max_overlap_m2=Math.max(...feat.overlapsWith(\"someOtherLayer\").map(o => o.overlap))\n \"_max_overlap_ratio=Number(feat._max_overlap_m2)/feat.area\n]\n\nThe specified tags are evaluated lazily. E.g. if a calculated tag is only used in the popup (e.g. the number of nearby features),\nthe expensive calculation will only be performed then for that feature. This avoids clogging up the contributors PC when all features are loaded.\n\nIf a tag has to be evaluated strictly, use ':=' instead:\n\n[\n\"_some_key:=some_javascript_expression\"\n]\n\nSee the full documentation on [https://github.com/pietervdvn/MapComplete/blob/master/Docs/CalculatedTags.md]\n\ngroup: expert\nquestion: What extra attributes should be calculated with javascript?", + "type": "array", + "items": { + "type": "string" + } + }, + "isShown": { + "description": "If set, only features matching this extra tag will be shown.\nThis is useful to hide certain features from view based on a calculated tag or if the features are provided by a different layer.\n\nquestion: What other tags should features match for being shown?\ngroup: advanced\nifunset: all features which match the 'source'-specification are shown.", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "isCounted": { + "description": "question: should this layer be included in the summary counts?\n\nThe layer server can give summary counts for a tile.\nThis should however be disabled for some layers, e.g. because there are too many features (walls_and_buildings) or because the count is irrelevant.\n\nifunset: Do count\niffalse: Do not include the counts\niftrue: Do include the count", + "type": "boolean" + }, + "minzoom": { + "description": "The minimum needed zoomlevel required to start loading and displaying the data.\nThis can be used to only show common features (e.g. a bicycle parking) only when the map is zoomed in very much (17).\nThis prevents cluttering the map with thousands of parkings if one is looking to an entire city.\n\nDefault: 0\ngroup: Basic\ntype: nat\nquestion: At what zoom level should features of the layer be shown?\nifunset: Always load this layer, even if the entire world is in view.", + "type": "number" + }, + "shownByDefault": { + "description": "Indicates if this layer is shown by default;\ncan be used to hide a layer from start, or to load the layer but only to show it when appropriate (e.g. for advanced users)\n\nquestion: Should this layer be enabled when opening the map for the first time?\niftrue: the layer is enabled when opening the map\niffalse: the layer is hidden until the contributor enables it. (If the filter-popup is disabled, this might never get enabled nor loaded)\ndefault: true\ngroup: advanced", + "type": "boolean" + }, + "minzoomVisible": { + "description": "The zoom level at which point the data is hidden again\nDefault: 100 (thus: always visible\n\ngroup: expert", + "type": "number" + }, + "title": { + "description": "question: Edit the popup title\nThe title shown in a popup for elements of this layer.\n\ngroup: title\ntypes: use a fixed translation ; Use a dynamic tagRendering ; hidden\ntypesdefault: 1\ntype: translation\ninline: {translated{value}}", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "popupInFloatover": { + "description": "Question: Should the information for this layer be shown in the sidebar or in a splash screen?\n\nIf set, open the selectedElementView in a floatOver instead of on the right.\n\niftrue: show the infobox in the splashscreen floating over the entire UI; hide the title bar\niffalse: show the infobox in a sidebar on the right\nsuggestions: return [{if: \"value=title\", then: \"Show in a floatover and show the title bar\"}]\ngroup: advanced\ndefault: sidebar", + "type": [ + "string", + "boolean" + ] + }, + "titleIcons": { + "description": "Small icons shown next to the title.\nIf not specified, the OsmLink and wikipedia links will be used by default.\nUse an empty array to hide them.\nNote that \"defaults\" will insert all the default titleIcons (which are added automatically)\n\nUse `auto:` to automatically create an icon based on a tagRendering which has icons\n\nType: icon[]\ngroup: infobox", + "anyOf": [ + { + "type": "array", + "items": { + "anyOf": [ + { + "allOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "object", + "properties": { + "id": { + "type": "string" + } + } + } + ] + }, + { + "type": "string" + } + ] + } + }, + { + "type": "array", + "items": [ + { + "type": "string", + "enum": [ + "defaults" + ] + } + ], + "minItems": 1, + "maxItems": 1 + } + ] + }, + "pointRendering": { + "description": "Creates points to render on the map.\nThis can render points for point-objects, lineobjects or areaobjects; use 'location' to indicate where it should be rendered.\n\nNote that all attributes - including [the calculated tags](https://github.com/pietervdvn/MapComplete/blob/develop/Docs/CalculatedTags.md) can be used to create the markers and lines\n\ngroup: pointrendering", + "type": "array", + "items": { + "$ref": "#/definitions/default_4" + } + }, + "lineRendering": { + "description": "Creates lines and areas to render on the map\ngroup: linerendering", + "type": "array", + "items": { + "$ref": "#/definitions/default_5" + } + }, + "passAllFeatures": { + "description": "If set, this layer will pass all the features it receives onto the next layer.\nThis is ideal for decoration, e.g. directions on cameras\niftrue: Make the features from this layer also available to the other layer; might result in this object being rendered by multiple layers\niffalse: normal behaviour: don't pass features allong\nquestion: should this layer pass features to the next layers?\ngroup: expert", + "type": "boolean" + }, + "doNotDownload": { + "description": "If set, this layer will not query overpass; but it'll still match the tags above which are by chance returned by other layers.\nWorks well together with 'passAllFeatures', to add decoration\nThe opposite of `forceLoad`\n\niftrue: Do not attempt to query the data for this layer from overpass/the OSM API\niffalse: download the data as usual\ngroup: expert\nquestion: Should this layer be downloaded or is the data provided by a different layer (which has 'passAllFeatures'-set)?\ndefault: false", + "type": "boolean" + }, + "forceLoad": { + "description": "Advanced option - might be set by the theme compiler\n\nIf true, this data will _always_ be loaded, even if the theme is disabled by a filter or hidden.\nThe opposite of `doNotDownload`\n\nquestion: Should this layer be forcibly loaded?\nifftrue: always download this layer, even if it is disabled\niffalse: only download data for this layer when needed (default)\ndefault: false\ngroup: expert", + "type": "boolean" + }, + "presets": { + "description": "
\n
\nPresets for this layer.\n\nA preset consists of one or more attributes (tags), a title and optionally a description and optionally example images.\n\nWhen the contributor wishes to add a point to OpenStreetMap, they'll:\n\n1. Press the 'add new point'-button\n2. Choose a preset from the list of all presets\n3. Confirm the choice. In this step, the `description` (if set) and `exampleImages` (if given) will be shown\n4. Confirm the location\n5. A new point will be created with the attributes that were defined in the preset\n\nIf no presets are defined, the button which invites to add a new preset will not be shown.\n
\n
\n\ngroup: presets\ntitle: value.title", + "type": "array", + "items": { + "type": "object", + "properties": { + "title": { + "description": "The title - shown on the 'add-new'-button.\n\nThis should include the article of the noun, e.g. 'a hydrant', 'a bicycle pump'.\nThis text will be inserted into `Add {category} here`, becoming `Add a hydrant here`.\n\nDo _not_ indicate 'new': 'add a new shop here' is incorrect, as the shop might have existed forever, it could just be unmapped!\n\nquestion: What is the word to describe this object?\ninline: Add {translated(value)::font-bold} here", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "tags": { + "description": "A single tag (encoded as key=value) out of all the tags to add onto the newly created point.\nNote that the icon in the UI will be chosen automatically based on the tags provided here.\n\nquestion: What tag should be added to the new object?\ntype: simple_tag\ntypeHelper: uploadableOnly", + "type": "array", + "items": { + "type": "string" + } + }, + "description": { + "description": "An extra explanation of what the feature is, if it is not immediately clear from the title alone.\n\nThe _first sentence_ of the description is shown on the button of the `add` menu.\nThe full description is shown in the confirmation dialog.\n\n(The first sentence is until the first '.'-character in the description)\n\nquestion: How would you describe this feature?\nifunset: No extra description is given. This can be used to further explain the preset", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "exampleImages": { + "description": "The URL of an example image which shows a real-life example of what such a feature might look like.\n\nType: image\nquestion: What is the URL of an image showing such a feature?", + "type": "array", + "items": { + "type": "string" + } + }, + "snapToLayer": { + "description": "question: Should the created point be snapped to a line layer?\n\nIf specified, these layers will be shown in the precise location picker and the new point will be snapped towards it.\nFor example, this can be used to snap against `walls_and_buildings` (e.g. to attach a defibrillator, an entrance, an artwork, ... to the wall)\nor to snap an obstacle (such as a bollard) to the `cycleways_and_roads`.\n\nsuggestions: return Array.from(layers.keys()).map(key => ({if: \"value=\"+key, then: key+\" - \"+layers.get(key).description}))", + "type": "array", + "items": { + "type": "string" + } + }, + "maxSnapDistance": { + "description": "question: What is the maximum distance in the location-input that a point can be moved to be snapped to a way?\n\ninline: a point is snapped if the location input is at most {value}m away from an object\n\nIf specified, a new point will only be snapped if it is within this range.\nIf further away, it'll be placed in the center of the location input\nDistance in meter\n\nifunset: Do not snap to a layer", + "type": "number" + } + }, + "required": [ + "tags", + "title" + ] + } + }, + "tagRenderings": { + "description": "question: Edit this way this attributed is displayed or queried\n\nA tag rendering is a block that either shows the known value or asks a question.\n\nRefer to the class `TagRenderingConfigJson` to see the possibilities.\n\nNote that we can also use a string here - where the string refers to a tag rendering defined in `assets/questions/questions.json`,\nwhere a few very general questions are defined e.g. website, phone number, ...\nFurthermore, _all_ the questions of another layer can be reused with `otherlayer.*`\nIf you need only a single of the tagRenderings, use `otherlayer.tagrenderingId`\nIf one or more questions have a 'group' or 'label' set, select all the entries with the corresponding group or label with `otherlayer.*group`\nRemark: if a tagRendering is 'lent' from another layer, the 'source'-tags are copied and added as condition.\nIf they are not wanted, remove them with an override\n\nA special value is 'questions', which indicates the location of the questions box. If not specified, it'll be appended to the bottom of the featureInfobox.\n\nAt last, one can define a group of renderings where parts of all strings will be replaced by multiple other strings.\nThis is mainly create questions for a 'left' and a 'right' side of the road.\nThese will be grouped and questions will be asked together\n\ntype: tagrendering[]\ngroup: tagrenderings", + "type": "array", + "items": { + "anyOf": [ + { + "$ref": "#/definitions/QuestionableTagRenderingConfigJson" + }, + { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "builtin": { + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "type": "string" + } + ] + }, + "override": { + "$ref": "#/definitions/Partial" + } + }, + "required": [ + "builtin", + "override" + ] + }, + { + "allOf": [ + { + "$ref": "#/definitions/default<(string|QuestionableTagRenderingConfigJson|{builtin:string;override:Partial;})[]>" + }, + { + "type": "object", + "properties": { + "id": { + "type": "string" + } + }, + "required": [ + "id" + ] + } + ] + }, + { + "type": "string" + } + ] + } + }, + "filter": { + "description": "All the extra questions for filtering.\nIf a string is given, mapComplete will search in\n1. The tagrenderings for a match on ID and use the mappings as options\n2. search 'filters.json' for the appropriate filter or\n3. will try to parse it as `layername.filterid` and us that one.\n\nNote: adding \"#filter\":\"no-auto\" will disable the filters added by tagRenderings\n\ngroup: filters", + "anyOf": [ + { + "type": "array", + "items": { + "anyOf": [ + { + "$ref": "#/definitions/default_1" + }, + { + "type": "string" + } + ] + } + }, + { + "type": "object", + "properties": { + "sameAs": { + "type": "string" + } + }, + "required": [ + "sameAs" + ] + } + ] + }, + "#filter": { + "description": "Set this to disable the feature that tagRenderings can introduce filters", + "enum": [ + "no-auto" + ], + "type": "string" + }, + "deletion": { + "description": "This block defines under what circumstances the delete dialog is shown for objects of this layer.\nIf set, a dialog is shown to the user to (soft) delete the point.\nThe dialog is built to be user friendly and to prevent mistakes.\nIf deletion is not possible, the dialog will hide itself and show the reason of non-deletability instead.\n\nTo configure, the following values are possible:\n\n- false: never ever show the delete button\n- true: show the default delete button\n- undefined: use the mapcomplete default to show deletion or not. Currently, this is the same as 'false' but this will change in the future\n- or: a hash with options (see below)\n\n### The delete dialog\n\n\n\n#### Hard deletion if enough experience\n\nA feature can only be deleted from OpenStreetMap by mapcomplete if:\n\n- It is a node\n- No ways or relations use the node\n- The logged-in user has enough experience OR the user is the only one to have edited the point previously\n- The logged-in user has no unread messages (or has a ton of experience)\n- The user did not select one of the 'non-delete-options' (see below)\n\nIn all other cases, a 'soft deletion' is used.\n\n#### Soft deletion\n\nA 'soft deletion' is when the point isn't deleted fromOSM but retagged so that it'll won't how up in the mapcomplete theme anymore.\nThis makes it look like it was deleted, without doing damage. A fixme will be added to the point.\n\nNote that a soft deletion is _only_ possible if these tags are provided by the theme creator, as they'll be different for every theme\n\n##### No-delete options\n\nIn some cases, the contributor might want to delete something for the wrong reason (e.g. someone who wants to have a path removed \"because the path is on their private property\").\nHowever, the path exists in reality and should thus be on OSM - otherwise the next contributor will pass by and notice \"hey, there is a path missing here! Let me redraw it in OSM!)\n\nThe correct approach is to retag the feature in such a way that it is semantically correct *and* that it doesn't show up on the theme anymore.\nA no-delete option is offered as 'reason to delete it', but secretly retags.\n\ngroup: editing\ntypes: Use an advanced delete configuration ; boolean\niftrue: Allow deletion\niffalse: Do not allow deletion\nifunset: Do not allow deletion", + "anyOf": [ + { + "$ref": "#/definitions/DeleteConfigJson" + }, + { + "type": "boolean" + } + ] + }, + "allowMove": { + "description": "Indicates if a point can be moved and why.\n\nA feature can be moved by MapComplete if:\n\n- It is a point\n- The point is _not_ part of a way or a a relation.\n\ntypes: use an advanced move configuration ; boolean\ngroup: editing\nquestion: Is deleting a point allowed?\niftrue: Allow contributors to move a point (for accuracy or a relocation)\niffalse: Don't allow contributors to move points\nifunset: Don't allow contributors to move points (default)", + "anyOf": [ + { + "$ref": "#/definitions/default_3" + }, + { + "type": "boolean" + } + ] + }, + "allowSplit": { + "description": "If set, a 'split this way' button is shown on objects rendered as LineStrings, e.g. highways.\n\nIf the way is part of a relation, MapComplete will attempt to update this relation as well\nquestion: Should the contributor be able to split ways using this layer?\niftrue: enable the 'split-roads'-component\niffalse: don't enable the split-roads component\nifunset: don't enable the split-roads component\ngroup: editing", + "type": "boolean" + }, + "units": { + "description": "Either a list with [{\"key\": \"unitname\", \"key2\": {\"quantity\": \"unitname\", \"denominations\": [\"denom\", \"denom\"]}}]\n\nUse `\"inverted\": true` if the amount should be _divided_ by the denomination, e.g. for charge over time (`€5/day`)", + "type": "array", + "items": { + "anyOf": [ + { + "$ref": "#/definitions/default_2" + }, + { + "$ref": "#/definitions/Record" + } + ] + } + }, + "syncSelection": { + "description": "If set, synchronizes whether this layer is enabled.\n\ngroup: advanced\nquestion: Should enabling/disabling the layer be saved (locally or in the cloud)?\nsuggestions: return [{if: \"value=no\", then: \"Don't save, always revert to the default\"}, {if: \"value=local\", then: \"Save selection in local storage\"}, {if: \"value=theme-only\", then: \"Save the state in the OSM-usersettings, but apply on this theme only (default)\"}, {if: \"value=global\", then: \"Save in OSM-usersettings and toggle on _all_ themes using this layer\"}]", + "enum": [ + "global", + "local", + "no", + "theme-only" + ], + "type": "string" + }, + "#": { + "description": "Used for comments and/or to disable some checks\n\nno-question-hint-check: disables a check in MiscTagRenderingChecks which complains about 'div', 'span' or 'class=subtle'-HTML elements in the tagRendering\n\ngroup: hidden", + "type": "string" + }, + "fullNodeDatabase": { + "description": "_Set automatically by MapComplete, please ignore_\n\ngroup: hidden", + "type": "boolean" + }, + "enableMorePrivacy": { + "description": "question: Should a theme using this layer leak some location info when making changes?\n\nWhen a changeset is made, a 'distance to object'-class is written to the changeset.\nFor some particular themes and layers, this might leak too much information, and we want to obfuscate this\n\nifunset: Write 'change_within_x_m' as usual and if GPS is enabled\niftrue: Do not write 'change_within_x_m' and do not indicate that this was done by survey", + "type": "boolean" + }, + "snapName": { + "description": "question: When a feature is snapped to this name, how should this item be called?\n\nIn the move wizard, the option `snap object onto {snapName}` is shown\n\ngroup: hidden", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + } + }, + "additionalProperties": false + }, + "Partial": { + "type": "object", + "additionalProperties": false + }, + "RasterLayerProperties": { + "description": "This class has grown beyond the point of only containing Raster Layers", + "type": "object", + "properties": { + "name": { + "description": "The name of the imagery source", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "isOverlay": { + "type": "boolean" + }, + "id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "category": { + "type": "string" + }, + "type": { + "type": "string" + }, + "style": { + "type": "string" + }, + "attribution": { + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "text": { + "type": "string" + }, + "html": { + "type": "string" + }, + "required": { + "type": "boolean" + } + } + }, + "min_zoom": { + "type": "number" + }, + "max_zoom": { + "type": "number" + }, + "best": { + "type": "boolean" + } + }, + "required": [ + "id", + "name", + "url" + ], + "additionalProperties": false + } + }, + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": false +} \ No newline at end of file diff --git a/Docs/Schemas/ThemeConfigJsonJSC.ts b/Docs/Schemas/ThemeConfigJsonJSC.ts new file mode 100644 index 000000000..ad1a859c5 --- /dev/null +++ b/Docs/Schemas/ThemeConfigJsonJSC.ts @@ -0,0 +1,2930 @@ +export default { + "description": "Defines the entire theme.\n\nA theme is the collection of the layers that are shown; the intro text, the icon, ...\nIt more or less defines the entire experience.\n\nMost of the fields defined here are metadata about the theme, such as its name, description, supported languages, default starting location, ...\n\nThe main chunk of the json will however be the 'layers'-array, where the details of your layers are.\n\nGeneral remark: a type (string | any) indicates either a fixed or a translatable string.", + "type": "object", + "properties": { + "id": { + "description": "question: What is the id of this layout?\n\nThe id is a unique string to identify the theme\n\nIt should be\n- in english\n- describe the theme in a single word (or a few words)\n- all lowercase and with only [a-z] or underscores (_)\n\nThis is used as hashtag in the changeset message, which will read something like \"Adding data with #mapcomplete for theme #\"\n\nOn official themes, it'll become the name of the page, e.g.\n'cyclestreets' which become 'cyclestreets.html'\n\ntype: id\ngroup: basic", + "type": "string" + }, + "title": { + "description": "question: What is the title of this theme?\n\nThe human-readable title, as shown in the welcome message and the index page\ngroup: basic", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "mustHaveLanguage": { + "description": "Only used in 'generateLayerOverview': if present, every translation will be checked to make sure it is fully translated.\n\nThis must be a list of two-letter, lowercase codes which identifies the language, e.g. \"en\", \"nl\", ...", + "type": "array", + "items": { + "type": "string" + } + }, + "description": { + "description": "question: How would you describe this theme?\nThe description, as shown in the welcome message and the more-screen\ngroup: basic", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "shortDescription": { + "description": "A short description, showed as social description and in the 'more theme'-buttons.\nNote that if this one is not defined, the first sentence of 'description' is used\ngroup: hidden", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "descriptionTail": { + "description": "A part of the description, shown under the login-button.\ngroup: hidden", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "icon": { + "description": "question: What icon should be used to represent this theme?\n\nUsed as logo in the more-screen and (for official themes) as favicon, webmanifest logo, ...\n\nEither a URL or a base64 encoded value (which should include 'data:image/svg+xml;base64)\n\nType: icon\nsuggestions: return Constants.defaultPinIcons.map(i => ({if: \"value=\"+i, then: i, icon: i}))\ngroup: basic", + "type": "string" + }, + "socialImage": { + "description": "question: What image should be used as social image preview?\nThis is included as og:image-tag on official themes.\n\nSee https://www.h3xed.com/web-and-internet/how-to-use-og-image-meta-tag-facebook-reddit for more information\nifunset: use the default social image of mapcomplete (or generate one based on the icon)\nType: image\ngroup: basic", + "type": "string" + }, + "extraLink": { + "description": "question: should an extra help button be shown in certain circumstances?\nAdds an additional button on the top-left of the application.\nThis can link to an arbitrary location.\n\nFor example {icon: \"./assets/svg/pop-out.svg\", href: 'https://mapcomplete.org/{theme}.html?lat={lat}&lon={lon}&z={zoom}, requirements: [\"iframe\",\"no-welcome-message]},\n\ngroup: advanced\nifunset: show a link to open MapComplete full screen if used in an iframe", + "$ref": "#/definitions/default" + }, + "startZoom": { + "description": "question: At what zoomlevel should this theme open?\nDefault location and zoom to start.\nNote that this is barely used. Once the user has visited mapcomplete at least once, the previous location of the user will be used\nifunset: Use the default startzoom (0)\ntype: float\ngroup: start_location", + "type": "number" + }, + "startLat": { + "description": "question: At what start latitude should this theme open?\nDefault location and zoom to start.\nNote that this is barely used. Once the user has visited mapcomplete at least once, the previous location of the user will be used\nifunset: Use 0 as start latitude\ntype: float\ngroup: start_location", + "type": "number" + }, + "startLon": { + "description": "question: At what start longitude should this theme open?\nDefault location and zoom to start.\nNote that this is barely used. Once the user has visited mapcomplete at least once, the previous location of the user will be used\nifunset: Use 0 as start longitude\ntype: float\ngroup: start_location", + "type": "number" + }, + "defaultBackgroundId": { + "description": "The id of the default background. BY default: vanilla OSM", + "type": "string" + }, + "credits": { + "description": "Who helped to create this theme and should be attributed?", + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "type": "string" + } + ] + }, + "hideFromOverview": { + "description": "If set to true, this layout will not be shown in the overview with more themes", + "type": "boolean" + }, + "layers": { + "description": "question: What layers should this map show?\ntype: layer[]\ntypes: hidden | layer | hidden\ngroup: layers\ntitle: value[\"builtin\"] ?? value[\"id\"] ?? value\nsuggestions: return Array.from(layers.keys()).map(key => ({if: \"value=\"+key, then: \"\"+key+\" (builtin) - \"+layers.get(key).description}))\n\nA theme must contain at least one layer.\n\nA layer contains all features of a single type, for example \"shops\", \"bicycle pumps\", \"benches\".\nNote that every layer contains a specification of attributes that it should match. MapComplete will fetch the relevant data from either overpass, the OSM-API or the cache server.\nIf a feature can match multiple layers, the first matching layer in the list will be used.\nThis implies that the _order_ of the layers is important.\n\n\n
\nNote that builtin layers can be reused. Either put in the name of the layer to reuse, or use {builtin: \"layername\", override: ...}\n\nThe 'override'-object will be copied over the original values of the layer, which allows to change certain aspects of the layer\n\nFor example: If you would like to use layer nature reserves, but only from a specific operator (eg. Natuurpunt) you would use the following in your theme:\n\n```\n\"layer\": {\n \"builtin\": \"nature_reserve\",\n \"override\": {\"source\":\n {\"osmTags\": {\n \"+and\":[\"operator=Natuurpunt\"]\n }\n }\n }\n}\n```\n\nIt's also possible to load multiple layers at once, for example, if you would like for both drinking water and benches to start at the zoomlevel at 12, you would use the following:\n\n```\n\"layer\": {\n \"builtin\": [\"benches\", \"drinking_water\"],\n \"override\": {\"minzoom\": 12}\n}\n```\n
", + "type": "array", + "items": { + "anyOf": [ + { + "$ref": "#/definitions/LayerConfigJson" + }, + { + "type": "object", + "properties": { + "builtin": { + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "type": "string" + } + ] + }, + "override": { + "$ref": "#/definitions/Partial" + }, + "hideTagRenderingsWithLabels": { + "description": "TagRenderings with any of these labels will be removed from the layer.\nNote that the 'id' and 'group' are considered labels too", + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "builtin", + "override" + ] + }, + { + "type": "string" + } + ] + } + }, + "overrideAll": { + "description": "An override applied on all layers of the theme.\n\nE.g.: if there are two layers defined:\n```\n\"layers\":[\n {\"title\": ..., \"tagRenderings\": [...], \"osmSource\":{\"tags\": ...}},\n {\"title\", ..., \"tagRenderings\", [...], \"osmSource\":{\"tags\" ...}}\n]\n```\n\nand overrideAll is specified:\n```\n\"overrideAll\": {\n \"osmSource\":{\"geoJsonSource\":\"xyz\"}\n}\nthen the result will be that all the layers will have these properties applied and result in:\n\"layers\":[\n {\"title\": ..., \"tagRenderings\": [...], \"osmSource\":{\"tags\": ..., \"geoJsonSource\":\"xyz\"}},\n {\"title\", ..., \"tagRenderings\", [...], \"osmSource\":{\"tags\" ..., \"geoJsonSource\":\"xyz\"}}\n]\n```\n\nIf the overrideAll contains a list where the keys starts with a plus, the values will be appended (instead of discarding the old list), for example\n\n\"overrideAll\": {\n \"+tagRenderings\": [ { ... some tagrendering ... }]\n}\n\nIn the above scenario, `sometagrendering` will be added at the beginning of the tagrenderings of every layer", + "$ref": "#/definitions/Partial" + }, + "tileLayerSources": { + "description": "Define some (overlay) slippy map tilesources", + "type": "array", + "items": { + "allOf": [ + { + "$ref": "#/definitions/RasterLayerProperties" + }, + { + "type": "object", + "properties": { + "defaultState": { + "type": "boolean" + } + } + } + ] + } + }, + "customCss": { + "description": "The URL of a custom CSS stylesheet to modify the layout\ngroup: advanced", + "type": "string" + }, + "lockLocation": { + "description": "If set to true, the basemap will not scroll outside of the area visible on initial zoom.\nIf set to [[lon, lat], [lon, lat]], the map will not scroll outside of those bounds.\nOff by default, which will enable panning to the entire world", + "anyOf": [ + { + "type": "array", + "items": [ + { + "type": "array", + "items": [ + { + "type": "number" + }, + { + "type": "number" + } + ], + "minItems": 2, + "maxItems": 2 + }, + { + "type": "array", + "items": [ + { + "type": "number" + }, + { + "type": "number" + } + ], + "minItems": 2, + "maxItems": 2 + } + ], + "minItems": 2, + "maxItems": 2 + }, + { + "type": "array", + "items": { + "type": "array", + "items": { + "type": "number" + } + } + } + ] + }, + "enableUserBadge": { + "description": "question: Should a user be able to login with OpenStreetMap?\n\nIf not logged in, will not show the login buttons and hide all the editable elements.\nAs such, MapComplete will become read-only and a purely visualisation tool.\n\nifunset: Enable the possiblity to login with OpenStreetMap (default)\niffalse: Do not enable to login with OpenStreetMap, have a read-only view of MapComplete.\niftrue: Enable the possiblity to login with OpenStreetMap\ngroup: feature_switches", + "type": "boolean" + }, + "enableShareScreen": { + "description": "question: Should the tab with options to share the current screen be enabled?\n\nOn can get the iFrame embed code here\n\nifunset: Enable the sharescreen (default)\niffalse: Do not enable the share screen\niftrue: Enable the share screen\ngroup: feature_switches", + "type": "boolean" + }, + "enableMoreQuests": { + "description": "question: Should the user be able to switch to different themes?\n\nTypically enabled in iframes and/or on commisioned themes\n\niftrue: enable to go back to the index page showing all themes\niffalse: do not enable to go back to the index page showing all themes; hide the 'more themes' buttons\nifunset: mapcomplete default: enable to go back to the index page showing all themes\ngroup: feature_switches", + "type": "boolean" + }, + "enableLayers": { + "description": "question: Should the user be able to enable/disable layers and to filter the layers?\n\nThe corresponding URL-parameter is 'fs-filters' instead of 'fs-layers'\niftrue: enable the filters/layers pane\niffalse: do not enable to filter or to disable layers; hide the 'filter' tab from the overview and the button at the bottom-left\nifunset: mapcomplete default: enable to filter or to enable/disable layers\ngroup: feature_switches", + "type": "boolean" + }, + "enableSearch": { + "description": "question: Should the user be able to search for locations?\n\nifunset: MapComplete default: allow to search\niftrue: Allow to search\niffalse: Do not allow to search; hide the search-bar\ngroup: feature_switches", + "type": "boolean" + }, + "enableAddNewPoints": { + "description": "question: Should the user be able to add new points?\n\nAdding new points is only possible if the loaded layers have presets set.\nSome layers do not have presets. If the theme only has layers without presets, then adding new points will not be possible.\n\nifunset: MapComplete default: allow to create new points\niftrue: Allow to create new points\niffalse: Do not allow to create new points, even if the layers in this theme support creating new points\ngroup: feature_switches", + "type": "boolean" + }, + "enableGeolocation": { + "description": "question: Should the user be able to use their GPS to geolocate themselfes on the map?\nifunset: MapComplete default: allow to use the GPS\niftrue: Allow to use the GPS\niffalse: Do not allow to use the GPS, hide the geolocation-buttons\ngroup: feature_switches", + "type": "boolean" + }, + "enableBackgroundLayerSelection": { + "description": "Enable switching the backgroundlayer.\nIf false, the quickswitch-buttons are removed (bottom left) and the dropdown in the layer selection is removed as well\n\nquestion: Should the user be able to switch the background layer?\n\niftrue: Allow to switch the background layer\niffalse: Do not allow to switch the background layer\nifunset: MapComplete default: Allow to switch the background layer\ngroup: feature_switches", + "type": "boolean" + }, + "enableShowAllQuestions": { + "description": "question: Should the questions about a feature be presented one by one or all at once?\niftrue: Show all unanswered questions at the same time\niffalse: Show unanswered questions one by one\nifunset: MapComplete default: Use the preference of the user to show questions at the same time or one by one\ngroup: feature_switches", + "type": "boolean" + }, + "enableDownload": { + "description": "question: Should the 'download as CSV'- and 'download as Geojson'-buttons be enabled?\niftrue: Enable the option to download the map as CSV and GeoJson\niffalse: Disable the option to download the map as CSV and GeoJson\nifunset: MapComplete default: Enable the option to download the map as CSV and GeoJson\ngroup: feature_switches", + "type": "boolean" + }, + "enablePdfDownload": { + "description": "question: Should the 'download as PDF'-button be enabled?\niftrue: Enable the option to download the map as PDF\niffalse: Enable the option to download the map as PDF\nifunset: MapComplete default: Enable the option to download the map as PDF\ngroup: feature_switches", + "type": "boolean" + }, + "enableNoteImports": { + "description": "question: Should the 'notes' from OpenStreetMap be loaded and parsed for import helper notes?\nIf true, notes will be loaded and parsed. If a note is an import (as created by the import_helper.html-tool from mapcomplete),\nthese notes will be shown if a relevant layer is present.\n\nifunset: MapComplete default: do not load import notes for sideloaded themes but do load them for official themes\niftrue: Load notes and show import notes\niffalse: Do not load import notes\ngroup: advanced", + "type": "boolean" + }, + "enableTerrain": { + "description": "question: Should the map use elevation data to give a 3D-feel?\n\nThis is especially useful for hiking maps, skiing maps etc...\n\nifunset: MapComplete default: don't use terrain\niftrue: Use elevation and render 3D\niffalse: Do not use terrain\ngroup: advanced", + "type": "boolean" + }, + "overpassUrl": { + "description": "question: What overpass-api instance should be used for this layout?\n\nifunset: Use the default, builtin collection of overpass instances\ngroup: advanced", + "type": "array", + "items": { + "type": "string" + } + }, + "overpassTimeout": { + "description": "question: After how much seconds should the overpass-query stop?\nIf a query takes too long, the overpass-server will abort.\nOnce can set the amount of time before overpass gives up here.\nifunset: use the default amount of 30 seconds as timeout\ntype: pnat\ngroup: advanced", + "type": "number" + }, + "overpassMaxZoom": { + "description": "At low zoom levels, overpass is used to query features.\nAt high zoom level, the OSM api is used to fetch one or more BBOX aligning with a slippy tile.\nThe overpassMaxZoom controls the flipoverpoint: if the zoom is this or lower, overpass is used.", + "type": "number" + }, + "osmApiTileSize": { + "description": "When the OSM-api is used to fetch features, it does so in a tiled fashion.\nThese tiles are using a ceratin zoom level, that can be controlled here\nDefault: overpassMaxZoom + 1", + "type": "number" + }, + "enableNodeDatabase": { + "description": "Enables tracking of all nodes when data is loaded.\nThis is useful for the 'ImportWay' and 'ConflateWay'-buttons who need this database.\n\nNote: this flag will be automatically set and can thus be ignored.\ngroup: hidden", + "type": "boolean" + }, + "enableMorePrivacy": { + "description": "question: Should this theme leak some location info when making changes?\n\nWhen a changeset is made, a 'distance to object'-class is written to the changeset.\nFor some particular themes and layers, this might leak too much information, and we want to obfuscate this\n\nifunset: Write 'change_within_x_m' as usual and if GPS is enabled\niftrue: Do not write 'change_within_x_m' and do not indicate that this was done by survey", + "type": "boolean" + }, + "enableCache": { + "description": "question: Should this theme have the cache enabled?\n\nShould only be dissabled in highly specific cases, such as the GRB-theme\n\nifunset: Cache is enabled\niffalse: Do not cache data\ngroup: hidden", + "type": "boolean" + }, + "_usedImages": { + "description": "Set by the preprocessor\ngroup: hidden", + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "description", + "icon", + "id", + "layers", + "title" + ], + "definitions": { + "TagConfigJson": { + "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "type": "object", + "properties": { + "or": { + "type": "array", + "items": { + "$ref": "#/definitions/TagConfigJson" + } + } + }, + "required": [ + "or" + ] + }, + { + "type": "string" + } + ] + }, + "{and:TagConfigJson[];}": { + "type": "object", + "properties": { + "and": { + "type": "array", + "items": { + "$ref": "#/definitions/TagConfigJson" + } + } + }, + "required": [ + "and" + ] + }, + "Record": { + "type": "object" + }, + "{or:TagConfigJson[];}": { + "type": "object", + "properties": { + "or": { + "type": "array", + "items": { + "$ref": "#/definitions/TagConfigJson" + } + } + }, + "required": [ + "or" + ] + }, + "FilterConfigOptionJson": { + "type": "object", + "properties": { + "question": { + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "searchTerms": { + "$ref": "#/definitions/Record" + }, + "emoji": { + "type": "string" + }, + "icon": { + "type": "string" + }, + "osmTags": { + "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "default": { + "type": "boolean" + }, + "fields": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "description": "If name is `search`, use \"_first_comment~.*{search}.*\" as osmTags", + "type": "string" + }, + "type": { + "type": "string" + } + }, + "required": [ + "name" + ] + } + } + }, + "required": [ + "question" + ] + }, + "Record": { + "type": "object" + }, + "Record>": { + "type": "object" + }, + "DenominationConfigJson": { + "type": "object", + "properties": { + "useIfNoUnitGiven": { + "description": "If this evaluates to true and the value to interpret has _no_ unit given, assumes that this unit is meant.\nAlternatively, a list of country codes can be given where this acts as the default interpretation\n\nE.g., a denomination using \"meter\" would probably set this flag to \"true\";\na denomination for \"mp/h\" will use the condition \"_country=gb\" to indicate that it is the default in the UK.\n\nIf none of the units indicate that they are the default, the first denomination will be used instead", + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "type": "boolean" + } + ] + }, + "canonicalDenomination": { + "description": "The canonical value for this denomination which will be added to the value in OSM.\ne.g. \"m\" for meters\nIf the user inputs '42', the canonical value will be added and it'll become '42m'.\n\nImportant: often, _no_ canonical values are expected, e.g. in the case of 'maxspeed' where 'km/h' is the default.\nIn this case, an empty string should be used", + "type": "string" + }, + "canonicalDenominationSingular": { + "description": "The canonical denomination in the case that the unit is precisely '1'.\nUsed for display purposes only.\n\nE.g.: for duration of something in minutes: `2 minutes` but `1 minute`; the `minute` goes here", + "type": "string" + }, + "alternativeDenomination": { + "description": "A list of alternative values which can occur in the OSM database - used for parsing.\nE.g.: while 'm' is canonical, `meter`, `mtrs`, ... can occur as well", + "type": "array", + "items": { + "type": "string" + } + }, + "human": { + "description": "The value for humans in the dropdown. This should not use abbreviations and should be translated, e.g.\n{\n \"en\": \"meter\",\n \"fr\": \"metre\"\n}", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "humanSingular": { + "description": "The value for humans in the dropdown. This should not use abbreviations and should be translated, e.g.\n{\n \"en\": \"minute\",\n \"nl\": \"minuut\"\n}", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "prefix": { + "description": "If set, then the canonical value will be prefixed instead, e.g. for '€'\nNote that if all values use 'prefix', the dropdown might move to before the text field", + "type": "boolean" + }, + "addSpace": { + "description": "If set, add a space between the quantity and the denomination.\n\nE.g.: `50 mph` instad of `50mph`", + "type": "boolean" + } + }, + "required": [ + "canonicalDenomination" + ] + }, + "MinimalTagRenderingConfigJson": { + "description": "Mostly used for lineRendering and pointRendering", + "type": "object", + "properties": { + "render": { + "description": "question: What value should be shown (if no predefined option matches)?\n\nThis piece of text will be shown in the infobox.\nNote that \"&LBRACEkey&RBRACE\"-parts are substituted by the corresponding values of the element.\n\nThis value will be used if there is no mapping which matches (or there are no matches)\nNote that this is a HTML-interpreted value, so you can add links as e.g. '<a href='{website}'>{website}</a>' or include images such as `This is of type A <br><img src='typeA-icon.svg' />`", + "type": "string" + }, + "mappings": { + "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes", + "type": "array", + "items": { + "type": "object", + "properties": { + "if": { + "$ref": "#/definitions/TagConfigJson", + "description": "question: When should this single mapping match?\n\nIf this condition is met, then the text under `then` will be shown.\nIf no value matches, and the user selects this mapping as an option, then these tags will be uploaded to OSM.\n\nFor example: {'if': 'diet:vegetarion=yes', 'then':'A vegetarian option is offered here'}\n\nThis can be an substituting-tag as well, e.g. {'if': 'addr:street:={_calculated_nearby_streetname}', 'then': '{_calculated_nearby_streetname}'}" + }, + "then": { + "description": "question: What text should be shown?\n\nIf the condition `if` is met, the text `then` will be rendered.\nIf not known yet, the user will be presented with `then` as an option", + "type": "string" + } + }, + "required": [ + "if", + "then" + ] + } + } + } + }, + "IconConfigJson": { + "type": "object", + "properties": { + "icon": { + "description": "question: What icon should be used?\ntypes: Use a different icon depending on the value of some attributes ; icon\nsuggestions: return Constants.defaultPinIcons.map(i => ({if: \"value=\"+i, then: i, icon: i}))", + "anyOf": [ + { + "$ref": "#/definitions/MinimalTagRenderingConfigJson" + }, + { + "type": "object", + "properties": { + "builtin": { + "type": "string" + }, + "override": {} + }, + "required": [ + "builtin", + "override" + ] + }, + { + "type": "string" + } + ] + }, + "color": { + "description": "question: What colour should the icon be?\nThis will only work for the default icons such as `pin`,`circle`,...\ntypes: Use a different color depending on the value of some attributes ; color", + "anyOf": [ + { + "$ref": "#/definitions/MinimalTagRenderingConfigJson" + }, + { + "type": "object", + "properties": { + "builtin": { + "type": "string" + }, + "override": {} + }, + "required": [ + "builtin", + "override" + ] + }, + { + "type": "string" + } + ] + } + }, + "required": [ + "icon" + ] + }, + "TagRenderingConfigJson": { + "description": "A TagRenderingConfigJson is a single piece of code which converts one ore more tags into a HTML-snippet.\nFor an _editable_ tagRendering, use 'QuestionableTagRenderingConfigJson' instead, which extends this one", + "type": "object", + "properties": { + "render": { + "description": "question: What text should be rendered?\n\nThis piece of text will be shown in the infobox.\nIn this text, values within braces (such as {braced(key)}) are replaced by the corresponding `value` in the object.\nFor example, if the object contains tags `amenity=school; name=Windy Hill School`, the render string `This school is named {name}` will be shown to the user as `This school is named Windy Hill School`\n\nThis text will be shown if:\n- there is no mapping which matches (or there are no matches)\n- no question, no mappings and no 'freeform' is set\n\nNote that this is a HTML-interpreted value, so you can add links as e.g. '<a href='{website}'>{website}</a>' or include images such as `This is of type A <br><img src='typeA-icon.svg' />`\ntype: rendered\nifunset: No text is shown if no predefined options match.", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "object", + "properties": { + "special": { + "allOf": [ + { + "$ref": "#/definitions/Record>" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "required": [ + "type" + ] + } + ] + } + }, + "required": [ + "special" + ] + }, + { + "type": "string" + } + ] + }, + "icon": { + "description": "question: what icon should be shown next to the 'render' value?\nAn icon shown next to the rendering; typically shown pretty small\nThis is only shown next to the \"render\" value\nType: icon\nifunset: No additional icon is shown next to the always shown text", + "anyOf": [ + { + "type": "object", + "properties": { + "path": { + "description": "The path to the icon\nType: icon", + "type": "string" + }, + "class": { + "description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-', so defining your own in combination with a custom CSS is possible (but discouraged)", + "type": "string" + } + }, + "required": [ + "path" + ] + }, + { + "type": "string" + } + ] + }, + "condition": { + "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or show this question if unknown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "metacondition": { + "description": "question: When should this item be shown (including special conditions)?\ntype: tag\nifunset: No specific metacondition set which is evaluated against the usersettings/application state; always show this tagRendering or show this question if unknown\n\nIf set, this tag will be evaluated against the _usersettings/application state_ table.\nEnable 'show debug info' in user settings to see available options (at the settings-tab).\nNote that values with an underscore depicts _application state_ (including metainfo about the user) whereas values without an underscore depict _user settings_", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "freeform": { + "description": "question: Should a freeform text field be shown?\nAllow freeform text input from the user\nifunset: Do not add a freeform text field", + "type": "object", + "properties": { + "key": { + "description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown", + "type": "string" + } + } + }, + "mappings": { + "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes", + "type": "array", + "items": { + "type": "object", + "properties": { + "if": { + "$ref": "#/definitions/TagConfigJson", + "description": "question: When should this single mapping match?\n\nIf this condition is met, then the text under `then` will be shown.\nIf no value matches, and the user selects this mapping as an option, then these tags will be uploaded to OSM.\n\nFor example: {'if': 'diet:vegetarion=yes', 'then':'A vegetarian option is offered here'}\n\nThis can be an substituting-tag as well, e.g. {'if': 'addr:street:={_calculated_nearby_streetname}', 'then': '{_calculated_nearby_streetname}'}" + }, + "then": { + "description": "question: What text should be shown?\n\nIf the condition `if` is met, the text `then` will be rendered.\nIf not known yet, the user will be presented with `then` as an option\nType: rendered", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "icon": { + "description": "question: What icon should be added to this mapping?\nifunset: Do not show an extra icon next to the render value\n\nAn icon supporting this mapping; typically shown pretty small.\nThis can be used to show a e.g. 'phone'-icon next to the phone number\n\nThis supports patterns, you can e.g. have `close:red;some/other/icon.svg`\n\ninline: {icon}\nType: icon", + "anyOf": [ + { + "type": "object", + "properties": { + "path": { + "description": "The path to the icon\nType: icon", + "type": "string" + }, + "class": { + "description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-', so defining your own in combination with a custom CSS is possible (but discouraged)", + "type": "string" + } + }, + "required": [ + "path" + ] + }, + { + "type": "string" + } + ] + } + }, + "required": [ + "if", + "then" + ] + } + }, + "description": { + "description": "A human-readable text explaining what this tagRendering does.\nMostly used for the shared tagrenderings", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "classes": { + "description": "question: What css-classes should be applied to showing this attribute?\n\nA list of css-classes to apply to the entire tagRendering.\nThese classes are applied in 'answer'-mode, not in question mode\nThis is only for advanced users.\n\nValues are split on ` ` (space)", + "type": "string" + }, + "filter": { + "description": "This tagRendering can introduce this builtin filter", + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "enum": [ + true + ], + "type": "boolean" + } + ] + } + } + }, + "MappingConfigJson": { + "type": "object", + "properties": { + "if": { + "$ref": "#/definitions/TagConfigJson", + "description": "question: What tags should be matched to show this option?\n\nIf in 'question'-mode and the contributor selects this option, these tags will be applied to the object" + }, + "then": { + "description": "Question: What corresponding text should be shown?\nShown if the `if` is fulfilled\nType: rendered", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "icon": { + "description": "question: What icon should be shown next to this mapping?\n\nThis icon will only be shown if the value is known, it is not displayed in the options (but might be in the future)\n\nifunset: Show no icon\nType: icon", + "anyOf": [ + { + "type": "object", + "properties": { + "path": { + "description": "The path to the icon\nType: icon", + "type": "string" + }, + "class": { + "description": "Size of the image", + "type": "string" + } + }, + "required": [ + "path" + ] + }, + { + "type": "string" + } + ] + }, + "hideInAnswer": { + "description": "question: Under what circumstances should this mapping be hidden from the possibilities a contributor can pick?\niftrue: Never show this mapping as option to pick\nifunset: Always show this mapping as option to pick\ntype: tag\n\nIn some cases, multiple taggings exist (e.g. a default assumption, or a commonly mapped abbreviation and a fully written variation).\n\nIn the latter case, a correct text should be shown, but only a single, canonical tagging should be selectable by the user.\nIn this case, one of the mappings can be hiden by setting this flag.\n\nTo demonstrate an example making a default assumption:\n\nmappings: [\n {\n if: \"access=\", -- no access tag present, we assume accessible\n then: \"Accessible to the general public\",\n hideInAnswer: true\n },\n {\n if: \"access=yes\",\n then: \"Accessible to the general public\", -- the user selected this, we add that to OSM\n },\n {\n if: \"access=no\",\n then: \"Not accessible to the public\"\n }\n]\n\n\nFor example, for an operator, we have `operator=Agentschap Natuur en Bos`, which is often abbreviated to `operator=ANB`.\nThen, we would add two mappings:\n{\n if: \"operator=Agentschap Natuur en Bos\" -- the non-abbreviated version which should be uploaded\n then: \"Maintained by Agentschap Natuur en Bos\"\n},\n{\n if: \"operator=ANB\", -- we don't want to upload abbreviations\n then: \"Maintained by Agentschap Natuur en Bos\"\n hideInAnswer: true\n}\n\nHide in answer can also be a tagsfilter, e.g. to make sure an option is only shown when appropriate.\nKeep in mind that this is reverse logic: it will be hidden in the answer if the condition is true, it will thus only show in the case of a mismatch\n\ne.g., for toilets: if \"wheelchair=no\", we know there is no wheelchair dedicated room.\nFor the location of the changing table, the option \"in the wheelchair accessible toilet is weird\", so we write:\n\n{\n \"question\": \"Where is the changing table located?\"\n \"mappings\": [\n {\"if\":\"changing_table:location=female\",\"then\":\"In the female restroom\"},\n {\"if\":\"changing_table:location=male\",\"then\":\"In the male restroom\"},\n {\"if\":\"changing_table:location=wheelchair\",\"then\":\"In the wheelchair accessible restroom\", \"hideInAnswer\": \"wheelchair=no\"},\n\n ]\n}\n\nAlso have a look for the meta-tags\n{\n if: \"operator=Agentschap Natuur en Bos\",\n then: \"Maintained by Agentschap Natuur en Bos\",\n hideInAnswer: \"_country!=be\"\n}", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": [ + "string", + "boolean" + ] + } + ] + }, + "alsoShowIf": { + "description": "question: In what other cases should this item be rendered?\n\nAlso show this 'then'-option if the feature matches these tags.\nIdeal for outdated tags or default assumptions. The tags from this options will not be set if the option is chosen!\n\nifunset: No other cases when this text is shown", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "ifnot": { + "description": "question: What tags should be applied if this mapping is _not_ chosen?\n\nOnly applicable if 'multiAnswer' is set.\nThis is for situations such as:\n`accepts:coins=no` where one can select all the possible payment methods. However, we want to make explicit that some options _were not_ selected.\nThis can be done with `ifnot`\nNote that we can not explicitly render this negative case to the user, we cannot show `does _not_ accept coins`.\nIf this is important to your usecase, consider using multiple radiobutton-fields without `multiAnswer`\n\nifunset: Do not apply a tag if a different mapping is chosen.", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "addExtraTags": { + "description": "question: What extra tags should be added to the object if this object is chosen?\ntype: simple_tag\n\nIf chosen as answer, these tags will be applied onto the object, together with the tags from the `if`.\nNote that if the contributor picks this mapping, saves and then changes their mind and uses a different mapping,\nthe extraTags will reside.\nE.g. when picking `memorial:type=bench`, then `amenity=bench` will also be applied.\nIf someone later on changes the type to `memorial:statue`, `amenity=bench` will stay onto the object\n(which is the desired behaviour, see e.g. for https://www.openstreetmap.org/node/5620038478)\nUse 'ifNot' to explicitly remove an tag if this is important\n\nIf someone marks the question as 'unknown', the extra tags will not be erased\n\nNot compatible with multiAnswer.\n\nThis can be used e.g. to erase other keys which indicate the 'not' value:\n```json\n{\n \"if\": \"crossing:marking=rainbow\",\n \"then\": \"This is a rainbow crossing\",\n \"addExtraTags\": [\"not:crossing:marking=\"]\n}\n```", + "type": "array", + "items": { + "type": "string" + } + }, + "searchTerms": { + "description": "question: If there are many options, what search terms match too?\nIf there are many options, the mappings-radiobuttons will be replaced by an element with a searchfunction\n\nSearchterms (per language) allow to easily find an option if there are many options\ngroup: hidden", + "$ref": "#/definitions/Record" + }, + "priorityIf": { + "description": "If the searchable selector is picked, mappings with this item will have priority and show up even if the others are hidden\nUse this sparingly\ngroup: hidden", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "#": { + "description": "Used for comments or to disable a validation\n\ngroup: hidden\nignore-image-in-then: normally, a `then`-clause is not allowed to have an `img`-html-element as icons are preferred. In some cases (most notably title-icons), this is allowed", + "type": "string" + } + }, + "required": [ + "if", + "then" + ] + }, + "T": { + "type": "object" + }, + "default_4": { + "description": "The PointRenderingConfig gives all details onto how to render a single point of a feature.\n\nThis can be used if:\n\n- The feature is a point\n- To render something at the centroid of an area, or at the start, end or projected centroid of a way", + "type": "object", + "properties": { + "location": { + "description": "question: At what location should this icon be shown?\nmultianswer: true\nsuggestions: return [{if: \"value=point\",then: \"Show an icon for point (node) objects\"},{if: \"value=centroid\",then: \"Show an icon for line or polygon (way) objects at their centroid location\"}, {if: \"value=start\",then: \"Show an icon for line (way) objects at the start\"},{if: \"value=end\",then: \"Show an icon for line (way) object at the end\"},{if: \"value=projected_centerpoint\",then: \"Show an icon for line (way) object near the centroid location, but moved onto the line. Does not show an item on polygons\"}, {if: \"value=polygon_centroid\",then: \"Show an icon at a polygon centroid (but not if it is a way)\"}]", + "type": "array", + "items": { + "type": "string" + } + }, + "marker": { + "description": "The marker for an element.\nNote that this also defines the icon for this layer (rendered with the overpass-tags) and the icon in the presets.\n\nThe result of the icon is rendered as follows:\n- The first icon is rendered on the map\n- The second entry is overlayed on top of it\n- ...\n\nAs a result, on could use a generic icon (`pin`, `circle`, `square`) with a color, then overlay it with a specific icon.\nicon: value\ntitle: value.icon", + "type": "array", + "items": { + "$ref": "#/definitions/IconConfigJson" + } + }, + "iconBadges": { + "description": "A list of extra badges to show next to the icon as small badge\nThey will be added as a 25% height icon at the bottom right of the icon, with all the badges in a flex layout.\n\nNote: strings are interpreted as icons, so layering and substituting is supported. You can use `circle:white;./my_icon.svg` to add a background circle\ngroup: hidden", + "type": "array", + "items": { + "type": "object", + "properties": { + "if": { + "$ref": "#/definitions/TagConfigJson", + "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag" + }, + "then": { + "description": "Badge to show\nType: icon", + "anyOf": [ + { + "$ref": "#/definitions/MinimalTagRenderingConfigJson" + }, + { + "type": "string" + } + ] + } + }, + "required": [ + "if", + "then" + ] + } + }, + "iconSize": { + "description": "question: What size should the marker be on the map?\nA string containing \",\" in pixels\nifunset: Use the default size (40,40 px)", + "anyOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "anchor": { + "description": "question: What is the anchorpoint of the icon?\n\nThis matches the geographical point with a location on the icon.\n\nifunset: Use MapComplete-default (center)\nsuggestions: return [{if: \"value=center\", then: \"Place the center of the icon on the geographical location\"},{if: \"value=top\", then: \"Place the top of the icon on the geographical location\"},{if: \"value=bottom\", then: \"Place the bottom of the icon on the geographical location\"},{if: \"value=left\", then: \"Place the left of the icon on the geographical location\"},{if: \"value=right\", then: \"Place the right of the icon on the geographical location\"}]", + "anyOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "rotation": { + "description": "question: What rotation should be applied on the icon?\nThis is mostly useful for items that face a specific direction, such as surveillance cameras\nThis is interpreted as css property for 'rotate', thus has to end with 'deg', e.g. `90deg`, `{direction}deg`, `calc(90deg - {camera:direction}deg)`\n\nIf the icon is shown on the projected centerpoint of a way, one can also use `_direction:centerpoint`\n\ntypes: Dynamic value ; string\nsuggestions: return [{if: \"value={_direction:centerpoint}deg\", then: \"Point the top of the icon towards the end of the way\"}, {if: \"value=calc( {_direction:centerpoint}deg + 90deg )\", then: \"Point the left of the icon towards the end of the way\"}, {if: \"value=calc( {_direction:centerpoint}deg - 90deg )\", then: \"Point the right of the icon towards the end of the way\"}, {if: \"value=calc( {_direction:centerpoint}deg + 180deg )\", then: \"Point the bottom of the icon towards the end of the way\"}]\nifunset: Do not rotate", + "anyOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "label": { + "description": "question: What label should be shown beneath the marker?\nFor example: `<div style=\"background: white\">{name}</div>`\n\nIf the icon is undefined, then the label is shown in the center of the feature.\ntypes: Dynamic value based on the attributes ; string\ninline: Always show label {value} beneath the marker\nifunset: Do not show a label beneath the marker", + "anyOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "labelCss": { + "description": "question: What CSS should be applied to the label?\nYou can set the css-properties here, e.g. `background: red; font-size: 12px; `\ninline: Apply CSS-style {value} to the label\ntypes: Dynamic value ; string\nifunset: Do not apply extra CSS-labels to the label\ngroup: expert", + "anyOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "labelCssClasses": { + "description": "question: Which CSS-classes should be applied to the label?\n\nThe classes should be separated by a space (` `)\nYou can use most Tailwind-css classes, see https://tailwindcss.com/ for more information\nFor example: `center bg-gray-500 mx-2 my-1 rounded-full`\ninline: Apply CSS-classes {value} to the label\ntypes: Dynamic value ; string\nifunset: Do not apply extra CSS-classes to the label\nsuggestions: return [{if: \"value=bg-white rounded px-2\", then: \"Draw on a white background\"}]", + "anyOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "css": { + "description": "question: What CSS should be applied to the entire marker?\nYou can set the css-properties here, e.g. `background: red; font-size: 12px; `\nThis will be applied to the _container_ containing both the marker and the label\ninline: Apply CSS-style {value} to the _entire marker_\ntypes: Dynamic value ; string\nifunset: Do not apply extra CSS element to the entire marker\ngroup: expert", + "anyOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "cssClasses": { + "description": "question: Which CSS-classes should be applied to the entire marker?\nThis will be applied to the _container_ containing both the marker and the label\n\nThe classes should be separated by a space (` `)\nYou can use most Tailwind-css classes, see https://tailwindcss.com/ for more information\nFor example: `center bg-gray-500 mx-2 my-1 rounded-full`\ninline: Apply CSS-classes {value} to the entire container\ntypes: Dynamic value ; string\nifunset: Do not apply extra CSS-classes to the entire marker\ngroup: expert", + "anyOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "pitchAlignment": { + "description": "question: If the map is pitched, should the icon stay parallel to the screen or to the groundplane?\nsuggestions: return [{if: \"value=canvas\", alsoShowIf: \"value=\", then: \"The icon will stay upward and not be transformed as if it sticks to the screen\"}, {if: \"value=map\", then: \"The icon will be transformed as if it were painted onto the ground. (Automatically sets rotationAlignment)\"}]\ngroup: expert", + "anyOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "enum": [ + "canvas", + "map" + ], + "type": "string" + } + ] + }, + "rotationAlignment": { + "description": "question: Should the icon be rotated if the map is rotated?\nifunset: Do not rotate or tilt icons. Always keep the icons straight\nsuggestions: return [{if: \"value=canvas\", then: \"Never rotate the icon\"}, {if: \"value=map\", then: \"If the map is rotated, rotate the icon as well. This gives the impression of an icon that floats perpendicular above the ground.\"}]\ngroup: expert", + "anyOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "enum": [ + "canvas", + "map" + ], + "type": "string" + } + ] + } + }, + "required": [ + "location" + ] + }, + "default_5": { + "description": "The LineRenderingConfig gives all details onto how to render a single line of a feature.\n\nThis can be used if:\n\n- The feature is a line\n- The feature is an area", + "type": "object", + "properties": { + "color": { + "description": "question: What color should lines be drawn in?\n\nFor an area, this will be the colour of the outside line.\nIf the value starts with \"--\", the style of the body element will be queried for the corresponding variable instead\n\ntypes: dynamic value ; string\ntitle: Line Colour\ninline: The line colour always is {value}\ntype: color", + "anyOf": [ + { + "$ref": "#/definitions/MinimalTagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "width": { + "description": "question: How wide should the line be?\nThe stroke-width for way-elements\n\ntypes: dynamic value ; string\ntitle: Line width\ninline: The line width is {value} pixels\ntype: pnat\nifunset: Use the default-linewidth of 7 pixels", + "anyOf": [ + { + "$ref": "#/definitions/MinimalTagRenderingConfigJson" + }, + { + "type": [ + "string", + "number" + ] + } + ] + }, + "dashArray": { + "description": "question: Should a dasharray be used to render the lines?\nThe dasharray defines 'pixels of line, pixels of gap, pixels of line, pixels of gap, ...'. For example, `5 6` will be 5 pixels of line followed by a 6 pixel gap.\nCannot be a dynamic property due to a MapLibre limitation (see https://github.com/maplibre/maplibre-gl-js/issues/1235)\nifunset: Ways are rendered with a full line", + "type": "string" + }, + "lineCap": { + "description": "question: What form should the line-ending have?\nsuggestions: return [{if:\"value=round\",then:\"Round endings\"}, {if: \"value=square\", then: \"square endings\"}, {if: \"value=butt\", then: \"no ending (square ending at the end, without padding)\"}]\ntypes: dynamic value ; string\ntitle: Line Cap\nifunset: Use the default value (round ending)", + "anyOf": [ + { + "$ref": "#/definitions/MinimalTagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "fillColor": { + "description": "question: What colour should be used as fill colour for polygons?\nifunset: The polygon fill colour will be a more transparent version of the stroke colour\nsuggestions: return [{if: \"value=#00000000\", then: \"Use a transparent fill (only render the outline)\"}]\ninline: The fill colour is {value}\ntypes: dynamic value ; string\ntype: color", + "anyOf": [ + { + "$ref": "#/definitions/MinimalTagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "offset": { + "description": "question: Should the lines be moved (offsetted) with a number of pixels against the geographical lines?\nThe number of pixels this line should be moved.\nUse a positive number to move to the right in the drawing direction or a negative to move to the left (left/right as defined by the drawing direction of the line).\n\nIMPORTANT: MapComplete will already normalize 'key:both:property' and 'key:both' into the corresponding 'key:left' and 'key:right' tagging (same for 'sidewalk=left/right/both' which is rewritten to 'sidewalk:left' and 'sidewalk:right')\nThis simplifies programming. Refer to the CalculatedTags.md-documentation for more details\nifunset: don't offset lines on the map\ninline: Pixel offset by {value} pixels\ntypes: dynamic value ; number\ntype: int", + "anyOf": [ + { + "$ref": "#/definitions/MinimalTagRenderingConfigJson" + }, + { + "type": "number" + } + ] + }, + "imageAlongWay": { + "description": "question: What PNG-image should be shown along the way?\n\nifunset: no image is shown along the way\nsuggestions: [{if: \"./assets/png/oneway.png\", then: \"Show a oneway error\"}]\ntype: image", + "anyOf": [ + { + "type": "array", + "items": { + "type": "object", + "properties": { + "if": { + "$ref": "#/definitions/TagConfigJson", + "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag" + }, + "then": { + "type": "string" + } + }, + "required": [ + "if", + "then" + ] + } + }, + { + "type": "string" + } + ] + } + } + }, + "QuestionableTagRenderingConfigJson": { + "description": "A QuestionableTagRenderingConfigJson is a single piece of code which converts one ore more tags into a HTML-snippet.\nIf the desired tags are missing and a question is defined, a question will be shown instead.", + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "mappings": { + "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes\n\nquestion: What are common options?", + "type": "array", + "items": { + "$ref": "#/definitions/MappingConfigJson" + } + }, + "multiAnswer": { + "description": "question: Should a contributor be allowed to select multiple mappings?\n\nIf true, use checkboxes instead of radio buttons when asking the question.\n\niftrue: allow to select multiple mappings (and show a freeform-value as list if ';'-separated)\niffalse: only allow to select a single mapping\nifunset: only allow to select a single mapping", + "type": "boolean" + }, + "freeform": { + "description": "Allow freeform text input from the user", + "type": "object", + "properties": { + "key": { + "description": "question: What is the name of the attribute that should be written to?\nThis is the OpenStreetMap-key that that value will be written to\nifunset: do not offer a freeform textfield as answer option", + "type": "string" + }, + "type": { + "description": "question: What is the input type?\nThe type of the text-field, e.g. 'string', 'nat', 'float', 'date',...\nSee Docs/SpecialInputElements.md and UI/Input/ValidatedTextField.ts for supported values\nifunset: use an unconstrained string as input (default)\nsuggestions: return validators.AllValidators.filter(type => !type.isMeta).map((type) => ({if: \"value=\"+type.name, then: \"\"+type.name+\" \"+type.explanation.split(\"\\n\")[0]}))", + "type": "string" + }, + "placeholder": { + "description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation\ngroup: expert\nifunset: No specific placeholder is set, show the type of the textfield", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "addExtraTags": { + "description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'\ngroup: expert", + "type": "array", + "items": { + "type": "string" + } + }, + "inline": { + "description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question\ngroup: expert", + "type": "boolean" + }, + "default": { + "description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield\ngroup: expert", + "type": "string" + }, + "invalidValues": { + "description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key\ngroup: expert", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "postfixDistinguished": { + "description": "question: If this key shared and distinguished by a postfix, what is the postfix?\nThis option is used specifically for `charge`, where the cost is indicated with `/item`.\n\nFor example, a vending machine might sell `bicycle_tube`.\nSetting this value to `bicycle_tube`, then answering this question will set `charge= €XX/bicycle_tube`.\nIf charge did already contain another value, e.g. `charge= €YY/some_item; €ZZ/other_item`, then `€XX/bicycle_tube`will be added.\nNote: those values are sorted alphabetically\nNote: no need to add the `/`\n\nifunset: Don't distinguish by postfix\ngroup: expert", + "type": "string" + }, + "helperArgs": { + "description": "Extra arguments to configure the input element\ngroup: hidden" + } + }, + "required": [ + "helperArgs" + ] + }, + "question": { + "description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "questionHint": { + "description": "question: Should some extra information be shown to the contributor, alongside the question?\nThis hint is shown in subtle text under the question.\nThis can give some extra information on what the answer should ook like\nifunset: No extra hint is given", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "editButtonAriaLabel": { + "description": "When using a screenreader and selecting the 'edit' button, the current rendered value is read aloud in normal circumstances.\nIn some rare cases, this is not desirable. For example, if the rendered value is a link to a website, this link can be selected (and will be read aloud).\nIf the user presses _tab_ again, they'll select the button and have the link read aloud a second time.", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "labels": { + "description": "What labels should be applied on this tagRendering?\n\nA list of labels. These are strings that are used for various purposes, e.g. to only include a subset of the tagRenderings when reusing a layer\n\nSpecial values:\n- \"hidden\": do not show this tagRendering. Useful in it is used by e.g. an accordion\n- \"description\": this label is a description used in the search", + "type": "array", + "items": { + "type": "string" + } + }, + "render": { + "description": "question: What text should be rendered?\n\nThis piece of text will be shown in the infobox.\nIn this text, values within braces (such as {braced(key)}) are replaced by the corresponding `value` in the object.\nFor example, if the object contains tags `amenity=school; name=Windy Hill School`, the render string `This school is named {name}` will be shown to the user as `This school is named Windy Hill School`\n\nThis text will be shown if:\n- there is no mapping which matches (or there are no matches)\n- no question, no mappings and no 'freeform' is set\n\nNote that this is a HTML-interpreted value, so you can add links as e.g. '<a href='{website}'>{website}</a>' or include images such as `This is of type A <br><img src='typeA-icon.svg' />`\ntype: rendered\nifunset: No text is shown if no predefined options match.", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "object", + "properties": { + "special": { + "allOf": [ + { + "$ref": "#/definitions/Record>" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "required": [ + "type" + ] + } + ] + } + }, + "required": [ + "special" + ] + }, + { + "type": "string" + } + ] + }, + "icon": { + "description": "question: what icon should be shown next to the 'render' value?\nAn icon shown next to the rendering; typically shown pretty small\nThis is only shown next to the \"render\" value\nType: icon\nifunset: No additional icon is shown next to the always shown text", + "anyOf": [ + { + "type": "object", + "properties": { + "path": { + "description": "The path to the icon\nType: icon", + "type": "string" + }, + "class": { + "description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-', so defining your own in combination with a custom CSS is possible (but discouraged)", + "type": "string" + } + }, + "required": [ + "path" + ] + }, + { + "type": "string" + } + ] + }, + "condition": { + "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or show this question if unknown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "metacondition": { + "description": "question: When should this item be shown (including special conditions)?\ntype: tag\nifunset: No specific metacondition set which is evaluated against the usersettings/application state; always show this tagRendering or show this question if unknown\n\nIf set, this tag will be evaluated against the _usersettings/application state_ table.\nEnable 'show debug info' in user settings to see available options (at the settings-tab).\nNote that values with an underscore depicts _application state_ (including metainfo about the user) whereas values without an underscore depict _user settings_", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "description": { + "description": "A human-readable text explaining what this tagRendering does.\nMostly used for the shared tagrenderings", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "classes": { + "description": "question: What css-classes should be applied to showing this attribute?\n\nA list of css-classes to apply to the entire tagRendering.\nThese classes are applied in 'answer'-mode, not in question mode\nThis is only for advanced users.\n\nValues are split on ` ` (space)", + "type": "string" + }, + "filter": { + "description": "This tagRendering can introduce this builtin filter", + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "enum": [ + true + ], + "type": "boolean" + } + ] + } + }, + "required": [ + "id" + ] + }, + "Partial": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "mappings": { + "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes\n\nquestion: What are common options?", + "type": "array", + "items": { + "$ref": "#/definitions/MappingConfigJson" + } + }, + "multiAnswer": { + "description": "question: Should a contributor be allowed to select multiple mappings?\n\nIf true, use checkboxes instead of radio buttons when asking the question.\n\niftrue: allow to select multiple mappings (and show a freeform-value as list if ';'-separated)\niffalse: only allow to select a single mapping\nifunset: only allow to select a single mapping", + "type": "boolean" + }, + "freeform": { + "description": "Allow freeform text input from the user", + "type": "object", + "properties": { + "key": { + "description": "question: What is the name of the attribute that should be written to?\nThis is the OpenStreetMap-key that that value will be written to\nifunset: do not offer a freeform textfield as answer option", + "type": "string" + }, + "type": { + "description": "question: What is the input type?\nThe type of the text-field, e.g. 'string', 'nat', 'float', 'date',...\nSee Docs/SpecialInputElements.md and UI/Input/ValidatedTextField.ts for supported values\nifunset: use an unconstrained string as input (default)\nsuggestions: return validators.AllValidators.filter(type => !type.isMeta).map((type) => ({if: \"value=\"+type.name, then: \"\"+type.name+\" \"+type.explanation.split(\"\\n\")[0]}))", + "type": "string" + }, + "placeholder": { + "description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation\ngroup: expert\nifunset: No specific placeholder is set, show the type of the textfield", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "addExtraTags": { + "description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'\ngroup: expert", + "type": "array", + "items": { + "type": "string" + } + }, + "inline": { + "description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question\ngroup: expert", + "type": "boolean" + }, + "default": { + "description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield\ngroup: expert", + "type": "string" + }, + "invalidValues": { + "description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key\ngroup: expert", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "postfixDistinguished": { + "description": "question: If this key shared and distinguished by a postfix, what is the postfix?\nThis option is used specifically for `charge`, where the cost is indicated with `/item`.\n\nFor example, a vending machine might sell `bicycle_tube`.\nSetting this value to `bicycle_tube`, then answering this question will set `charge= €XX/bicycle_tube`.\nIf charge did already contain another value, e.g. `charge= €YY/some_item; €ZZ/other_item`, then `€XX/bicycle_tube`will be added.\nNote: those values are sorted alphabetically\nNote: no need to add the `/`\n\nifunset: Don't distinguish by postfix\ngroup: expert", + "type": "string" + }, + "helperArgs": { + "description": "Extra arguments to configure the input element\ngroup: hidden" + } + }, + "required": [ + "helperArgs" + ] + }, + "question": { + "description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "questionHint": { + "description": "question: Should some extra information be shown to the contributor, alongside the question?\nThis hint is shown in subtle text under the question.\nThis can give some extra information on what the answer should ook like\nifunset: No extra hint is given", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "editButtonAriaLabel": { + "description": "When using a screenreader and selecting the 'edit' button, the current rendered value is read aloud in normal circumstances.\nIn some rare cases, this is not desirable. For example, if the rendered value is a link to a website, this link can be selected (and will be read aloud).\nIf the user presses _tab_ again, they'll select the button and have the link read aloud a second time.", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "labels": { + "description": "What labels should be applied on this tagRendering?\n\nA list of labels. These are strings that are used for various purposes, e.g. to only include a subset of the tagRenderings when reusing a layer\n\nSpecial values:\n- \"hidden\": do not show this tagRendering. Useful in it is used by e.g. an accordion\n- \"description\": this label is a description used in the search", + "type": "array", + "items": { + "type": "string" + } + }, + "render": { + "description": "question: What text should be rendered?\n\nThis piece of text will be shown in the infobox.\nIn this text, values within braces (such as {braced(key)}) are replaced by the corresponding `value` in the object.\nFor example, if the object contains tags `amenity=school; name=Windy Hill School`, the render string `This school is named {name}` will be shown to the user as `This school is named Windy Hill School`\n\nThis text will be shown if:\n- there is no mapping which matches (or there are no matches)\n- no question, no mappings and no 'freeform' is set\n\nNote that this is a HTML-interpreted value, so you can add links as e.g. '<a href='{website}'>{website}</a>' or include images such as `This is of type A <br><img src='typeA-icon.svg' />`\ntype: rendered\nifunset: No text is shown if no predefined options match.", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "object", + "properties": { + "special": { + "allOf": [ + { + "$ref": "#/definitions/Record>" + }, + { + "type": "object", + "properties": { + "type": { + "type": "string" + } + }, + "required": [ + "type" + ] + } + ] + } + }, + "required": [ + "special" + ] + }, + { + "type": "string" + } + ] + }, + "icon": { + "description": "question: what icon should be shown next to the 'render' value?\nAn icon shown next to the rendering; typically shown pretty small\nThis is only shown next to the \"render\" value\nType: icon\nifunset: No additional icon is shown next to the always shown text", + "anyOf": [ + { + "type": "object", + "properties": { + "path": { + "description": "The path to the icon\nType: icon", + "type": "string" + }, + "class": { + "description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-', so defining your own in combination with a custom CSS is possible (but discouraged)", + "type": "string" + } + }, + "required": [ + "path" + ] + }, + { + "type": "string" + } + ] + }, + "condition": { + "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or show this question if unknown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "metacondition": { + "description": "question: When should this item be shown (including special conditions)?\ntype: tag\nifunset: No specific metacondition set which is evaluated against the usersettings/application state; always show this tagRendering or show this question if unknown\n\nIf set, this tag will be evaluated against the _usersettings/application state_ table.\nEnable 'show debug info' in user settings to see available options (at the settings-tab).\nNote that values with an underscore depicts _application state_ (including metainfo about the user) whereas values without an underscore depict _user settings_", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "description": { + "description": "A human-readable text explaining what this tagRendering does.\nMostly used for the shared tagrenderings", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "classes": { + "description": "question: What css-classes should be applied to showing this attribute?\n\nA list of css-classes to apply to the entire tagRendering.\nThese classes are applied in 'answer'-mode, not in question mode\nThis is only for advanced users.\n\nValues are split on ` ` (space)", + "type": "string" + }, + "filter": { + "description": "This tagRendering can introduce this builtin filter", + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "enum": [ + true + ], + "type": "boolean" + } + ] + } + } + }, + "default<(string|QuestionableTagRenderingConfigJson|{builtin:string;override:Partial;})[]>": { + "description": "Rewrites and multiplies the given renderings of type T.\n\nThis can be used for introducing many similar questions automatically,\nwhich also makes translations easier.\n\n(Note that the key does _not_ need to be wrapped in {}.\nHowever, we recommend to use them if the key is used in a translation, as missing keys will be picked up and warned for by the translation scripts)\n\nFor example:\n\n```\n{\n rewrite: {\n sourceString: [\"key\", \"a|b|c\"],\n into: [\n [\"X\", 0]\n [\"Y\", 1],\n [\"Z\", 2]\n ],\n renderings: [{\n \"key\":\"a|b|c\"\n }]\n }\n}\n```\nwill result in _three_ copies (as the values to rewrite into have three values, namely:\n\n[\n {\n # The first pair: key --> X, a|b|c --> 0\n \"X\": 0\n },\n {\n \"Y\": 1\n },\n {\n \"Z\": 2\n }\n\n]", + "type": "object", + "properties": { + "rewrite": { + "type": "object", + "properties": { + "sourceString": { + "type": "array", + "items": { + "type": "string" + } + }, + "into": { + "type": "array", + "items": { + "type": "array", + "items": {} + } + } + }, + "required": [ + "into", + "sourceString" + ] + }, + "subexpand": { + "description": "Used to expand a sublist.\nE.g. a target `rendering` is:\n\ne.g.\n{\n rewrite: [\"{{x}}\", \"{{y}}\"],\n into:[\n [\"{{x}}\": \"some X\"],\n [\"{{y}}\", [\"option 1\", \"option 2\"]]\n ],\n renderings:[\n {\n \"question\":\"Is {{x}}\",\n \"mappings\": [\"if={{y}}\",then: \"...\"]\n }\n ]\n subExpand: {\n // The list with the key\n \"mappings\":\n // will be taken and multiplied by all possible values of\n \"{{y}}\"\n // Note that this implies that `into.[*].[{{y}}]` should be a list of items\n }\n}\n\nExpansion will result in:\n{\n question: \"Is some X\",\n mappings: [{\"if=option 1\", then: \"...\"}, {\"if=option 2\", then: \"...\"}]\n}", + "$ref": "#/definitions/Record" + }, + "renderings": { + "anyOf": [ + { + "type": "array", + "items": { + "anyOf": [ + { + "$ref": "#/definitions/QuestionableTagRenderingConfigJson" + }, + { + "type": "object", + "properties": { + "builtin": { + "type": "string" + }, + "override": { + "$ref": "#/definitions/Partial" + } + }, + "required": [ + "builtin", + "override" + ] + }, + { + "type": "string" + } + ] + } + }, + { + "type": "array", + "items": { + "type": "array", + "items": { + "anyOf": [ + { + "$ref": "#/definitions/QuestionableTagRenderingConfigJson" + }, + { + "type": "object", + "properties": { + "builtin": { + "type": "string" + }, + "override": { + "$ref": "#/definitions/Partial" + } + }, + "required": [ + "builtin", + "override" + ] + }, + { + "type": "string" + } + ] + } + } + } + ] + } + }, + "required": [ + "renderings", + "rewrite" + ] + }, + "default_1": { + "type": "object", + "properties": { + "id": { + "description": "An id/name for this filter, used to set the URL parameters", + "type": "string" + }, + "options": { + "description": "The options for a filter\nIf there are multiple options these will be a list of radio buttons\nIf there is only one option this will be a checkbox\nFiltering is done based on the given osmTags that are compared to the objects in that layer.\n\nAn example which searches by name:\n\n```\n{\n \"id\": \"shop-name\",\n \"options\": [\n {\n \"fields\": [\n {\n \"name\": \"search\",\n \"type\": \"string\"\n }\n ],\n \"osmTags\": \"name~i~.*{search}.*\",\n \"question\": {\n \"en\": \"Only show shops with name {search}\",\n }\n }\n ]\n }\n ```", + "type": "array", + "items": { + "$ref": "#/definitions/FilterConfigOptionJson" + } + }, + "#": { + "description": "Used for comments or to disable a check\n\n\"ignore-possible-duplicate\": disables a check in `DetectDuplicateFilters` which complains that a filter can be replaced by a filter from the `filters`-library-layer", + "type": "string" + } + }, + "required": [ + "id", + "options" + ] + }, + "DeleteConfigJson": { + "type": "object", + "properties": { + "neededChangesets": { + "description": "*\nBy default, the contributor needs 20 previous changesets to delete points edited by others.\nFor some small features (e.g. bicycle racks) this is too much and this requirement can be lowered or dropped, which can be done here.\n\ntype: nat\nquestion: How many changesets must a contributor have before being allowed to delete a point?", + "type": "number" + }, + "extraDeleteReasons": { + "description": "*\nBy default, three reasons to delete a point are shown:\n\n- The point does not exist anymore\n- The point was a testing point\n- THe point could not be found\n\nHowever, for some layers, there might be different or more specific reasons for deletion which can be user friendly to set, e.g.:\n\n- the shop has closed\n- the climbing route has been closed of for nature conservation reasons\n- ...\n\nThese reasons can be stated here and will be shown in the list of options the user can choose from", + "type": "array", + "items": { + "type": "object", + "properties": { + "explanation": { + "description": "The text that will be shown to the user as option for why this point does not exist anymore.\nNote that the most common reasons (test point, does not exist anymore, cannot be found) are already offered by default\n\nquestion: For what extra reason might this feature be removed in real-life?" + }, + "changesetMessage": { + "description": "The text that will be uploaded into the changeset or will be used in the fixme in case of a soft deletion\nShould be a few words, in english\n\nquestion: What should be added to the changeset as delete reason?", + "type": "string" + } + }, + "required": [ + "changesetMessage", + "explanation" + ] + } + }, + "nonDeleteMappings": { + "description": "In some cases, a (starting) contributor might wish to delete a feature even though deletion is not appropriate.\n(The most relevant case are small paths running over private property. These should be marked as 'private' instead of deleted, as the community might trace the path again from aerial imagery, gettting us back to the original situation).\n\nBy adding a 'nonDeleteMapping', an option can be added into the list which will retag the feature.\nIt is important that the feature will be retagged in such a way that it won't be picked up by the layer anymore!", + "type": "array", + "items": { + "type": "object", + "properties": { + "if": { + "$ref": "#/definitions/TagConfigJson", + "description": "The tags that will be given to the object.\nThis must remove tags so that the 'source/osmTags' won't match anymore\n\nquestion: What tags should be applied to the object?" + }, + "then": { + "description": "The human explanation for the options\n\nquestion: What text should be shown to the contributor for this reason?", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + } + }, + "required": [ + "if", + "then" + ] + } + }, + "softDeletionTags": { + "description": "In some cases, the contributor is not allowed to delete the current feature (e.g. because it isn't a point, the point is referenced by a relation or the user isn't experienced enough).\nTo still offer the user a 'delete'-option, the feature is retagged with these tags. This is a soft deletion, as the point isn't actually removed from OSM but rather marked as 'disused'\nIt is important that the feature will be retagged in such a way that it won't be picked up by the layer anymore!\n\nExample (note that \"amenity=\" erases the 'amenity'-key alltogether):\n\n```\n{\n \"and\": [\"disussed:amenity=public_bookcase\", \"amenity=\"]\n}\n```\n\nor (notice the use of the ':='-tag to copy the old value of 'shop=*' into 'disused:shop='):\n\n```\n{\n \"and\": [\"disused:shop:={shop}\", \"shop=\"]\n}\n```\n\nquestion: If a hard delete is not possible, what tags should be applied to mark this feature as deleted?\ntype: tag", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "omitDefaultDeleteReasons": { + "description": "Set this flag if the default delete reasons should be omitted from the dialog.\nThis requires at least one extraDeleteReason or nonDeleteMapping\n\nquestion: Should the default delete reasons be hidden?\niftrue: Hide the default delete reasons\niffalse: Show the default delete reasons\nifunset: Show the default delete reasons (default behaviour)", + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "type": "boolean" + } + ] + } + } + }, + "default_3": { + "type": "object", + "properties": { + "enableImproveAccuracy": { + "description": "question: Should moving this type of point to improve the accuracy be allowed?\niftrue: This point can be moved to improve the accuracy\nifunset: (default) This point can be moved to improve the accuracy\niffalse: This point cannot be moved to improve the accuracy", + "type": "boolean" + }, + "enableRelocation": { + "description": "question: Should moving this type of point due to a relocation be allowed?\n\nThis will erase the attributes `addr:street`, `addr:housenumber`, `addr:city` and `addr:postcode`\n\niftrue: This type of point can be moved due to a relocation (and will remove address information when this is done)\nifunset: (default) This type of point can be moved due to a relocation (and will remove address information when this is done)\niffalse: This type of point cannot be moved due to a relocation", + "type": "boolean" + } + } + }, + "default_2": { + "description": "In some cases, a value is represented in a certain unit (such as meters for heigt/distance/..., km/h for speed, ...)\n\nSometimes, multiple denominations are possible (e.g. km/h vs mile/h; megawatt vs kilowatt vs gigawatt for power generators, ...)\n\nThis brings in some troubles, as there are multiple ways to write it (no denomitation, 'm' vs 'meter' 'metre', ...)\n\nNot only do we want to write consistent data to OSM, we also want to present this consistently to the user.\nThis is handled by defining units.\n\n# Rendering\n\nTo render a value with long (human) denomination, use {canonical(key)}\n\n# Usage\n\nFirst of all, you define which keys have units applied, for example:\n\n```\nunits: [\n appliesTo: [\"maxspeed\", \"maxspeed:hgv\", \"maxspeed:bus\"]\n applicableUnits: [\n ...\n ]\n]\n```\n\nApplicableUnits defines which is the canonical extension, how it is presented to the user, ...:\n\n```\napplicableUnits: [\n{\n canonicalDenomination: \"km/h\",\n alternativeDenomination: [\"km/u\", \"kmh\", \"kph\"]\n default: true,\n human: {\n en: \"kilometer/hour\",\n nl: \"kilometer/uur\"\n },\n humanShort: {\n en: \"km/h\",\n nl: \"km/u\"\n }\n},\n{\n canoncialDenomination: \"mph\",\n ... similar for miles an hour ...\n}\n]\n```\n\n\nIf this is defined, then every key which the denominations apply to (`maxspeed`, `maxspeed:hgv` and `maxspeed:bus`) will be rewritten at the metatagging stage:\nevery value will be parsed and the canonical extension will be added add presented to the other parts of the code.\n\nAlso, if a freeform text field is used, an extra dropdown with applicable denominations will be given", + "type": "object", + "properties": { + "quantity": { + "description": "What is quantified? E.g. 'speed', 'length' (including width, diameter, ...), 'electric tension', 'electric current', 'duration'", + "type": "string" + }, + "appliesToKey": { + "description": "Every key from this list will be normalized.\n\nTo render the value properly (with a human readable denomination), use `{canonical()}`", + "type": "array", + "items": { + "type": "string" + } + }, + "eraseInvalidValues": { + "description": "If set, invalid values will be erased in the MC application (but not in OSM of course!)\nBe careful with setting this", + "type": "boolean" + }, + "applicableUnits": { + "description": "The possible denominations for this unit.\nFor length, denominations could be \"meter\", \"kilometer\", \"miles\", \"foot\"", + "type": "array", + "items": { + "$ref": "#/definitions/DenominationConfigJson" + } + }, + "defaultInput": { + "description": "In some cases, the default denomination is not the most user friendly to input.\nE.g., when measuring kerb heights, it is illogical to ask contributors to input an amount in meters.\n\nWhen a default input method should be used, this can be specified by setting the canonical denomination here, e.g.\n`defaultInput: \"cm\"`. This must be a denomination which appears in the applicableUnits", + "type": "string" + } + }, + "required": [ + "applicableUnits" + ] + }, + "Record": { + "type": "object" + }, + "default": { + "type": "object", + "properties": { + "icon": { + "description": "question: What icon should be shown in the link button?\nifunset: do not show an icon\ntype: icon", + "type": "string" + }, + "text": { + "description": "question: What text should be shown in the link icon?\n\nNote that {lat},{lon},{zoom}, {language} and {theme} will be replaced\n\nifunset: do not show a text", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "href": { + "description": "question: if clicked, what webpage should open?\nNote that {lat},{lon},{zoom}, {language} and {theme} will be replaced\n\ntype: url", + "type": "string" + }, + "newTab": { + "description": "question: Should the link open in a new tab?\niftrue: Open in a new tab\niffalse: do not open in a new tab\nifunset: do not open in a new tab", + "type": "boolean" + }, + "requirements": { + "description": "question: When should the extra button be shown?\nsuggestions: return [{if: \"value=iframe\", then: \"When shown in an iframe\"}, {if: \"value=no-iframe\", then: \"When shown as stand-alone webpage\"}, {if: \"value=welcome-message\", then: \"When the welcome messages are enabled\"}, {if: \"value=iframe\", then: \"When the welcome messages are disabled\"}]", + "type": "array", + "items": { + "enum": [ + "iframe", + "no-iframe", + "no-welcome-message", + "welcome-message" + ], + "type": "string" + } + } + }, + "required": [ + "href" + ] + }, + "LayerConfigJson": { + "description": "Configuration for a single layer", + "type": "object", + "properties": { + "id": { + "description": "question: What is the identifier of this layer?\n\nThis should be a simple, lowercase, human readable string that is used to identify the layer.\n A good ID is:\n - a noun\n - written in singular\n - describes the object\n - in english\n - only has lowercase letters, numbers or underscores. Do not use a space or a dash\n\ntype: id\ngroup: Basic", + "type": "string" + }, + "name": { + "description": "Used in the layer control panel to toggle a layer on and of.\n\nifunset: This will hide the layer in the layer control, making it not filterable and not toggleable\n\ngroup: Basic\nquestion: What is the name of this layer?", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "description": { + "description": "question: How would you describe the features that are shown on this layer?\n\nA description for the features shown in this layer.\nThis often resembles the introduction of the wiki.osm.org-page for this feature.\n\ngroup: Basic", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "searchTerms": { + "description": "question: What are some other terms used to describe these objects?\n\nThis is used in the search functionality", + "$ref": "#/definitions/Record" + }, + "source": { + "description": "Question: Where should the data be fetched from?\ntitle: Data Source\n\nThis determines where the data for the layer is fetched: from OSM or from an external geojson dataset.\n\nIf no 'geojson' is defined, data will be fetched from overpass and the OSM-API.\n\nEvery source _must_ define which tags _must_ be present in order to be picked up.\n\nNote: a source must always be defined. 'special' is only allowed if this is a builtin-layer\n\ntypes: Load data with specific tags from OpenStreetMap ; Load data from an external geojson source ;\ntypesdefault: 0\nifunset: Determine the tags automatically based on the presets\ngroup: Basic", + "anyOf": [ + { + "type": "object", + "properties": { + "osmTags": { + "$ref": "#/definitions/TagConfigJson", + "description": "question: Which tags must be present on the feature to show it in this layer?\nEvery source must set which tags have to be present in order to load the given layer." + } + }, + "required": [ + "osmTags" + ] + }, + { + "type": "object", + "properties": { + "geoJson": { + "description": "The actual source of the data to load, if loaded via geojson.\n\n# A single geojson-file\nsource: {geoJson: \"https://my.source.net/some-geo-data.geojson\"}\n fetches a geojson from a third party source\n\n# A tiled geojson source\nsource: {geoJson: \"https://my.source.net/some-tile-geojson-{layer}-{z}-{x}-{y}.geojson\", geoJsonZoomLevel: 14}\n to use a tiled geojson source. The web server must offer multiple geojsons. {z}, {x} and {y} are substituted by the location; {layer} is substituted with the id of the loaded layer\n\nSome API's use a BBOX instead of a tile, this can be used by specifying {y_min}, {y_max}, {x_min} and {x_max}\n\nquestion: What is the URL of the geojson?\ntype: url", + "type": "string" + }, + "geoJsonZoomLevel": { + "description": "To load a tiled geojson layer, set the zoomlevel of the tiles\n\nquestion: If using a tiled geojson, what is the zoomlevel of the tiles?\nifunset: This is not a tiled geojson", + "type": "number" + }, + "mercatorCrs": { + "description": "Some API's use a mercator-projection (EPSG:900913) instead of WGS84. Set the flag `mercatorCrs: true` in the source for this\n\nquestion: Does this geojson use EPSG:900913 instead of WGS84 as projection?\niftrue: This geojson uses EPSG:900913 instead of WGS84\nifunset: This geojson uses WGS84 just like most geojson (default)", + "type": "boolean" + }, + "idKey": { + "description": "Some API's have an id-field, but give it a different name.\nSetting this key will rename this field into 'id'\n\nifunset: An id with key `id` will be assigned automatically if no attribute `id` is set\ninline: This geojson uses {value} as attribute to set the id\nquestion: What is the name of the attribute containing the ID of the object?", + "type": "string" + } + }, + "required": [ + "geoJson" + ] + }, + { + "enum": [ + "special", + "special:library" + ], + "type": "string" + } + ] + }, + "calculatedTags": { + "description": "A list of extra tags to calculate, specified as \"keyToAssignTo=javascript-expression\".\nThere are a few extra functions available. Refer to Docs/CalculatedTags.md for more information\nThe functions will be run in order, e.g.\n[\n \"_max_overlap_m2=Math.max(...feat.overlapsWith(\"someOtherLayer\").map(o => o.overlap))\n \"_max_overlap_ratio=Number(feat._max_overlap_m2)/feat.area\n]\n\nThe specified tags are evaluated lazily. E.g. if a calculated tag is only used in the popup (e.g. the number of nearby features),\nthe expensive calculation will only be performed then for that feature. This avoids clogging up the contributors PC when all features are loaded.\n\nIf a tag has to be evaluated strictly, use ':=' instead:\n\n[\n\"_some_key:=some_javascript_expression\"\n]\n\nSee the full documentation on [https://github.com/pietervdvn/MapComplete/blob/master/Docs/CalculatedTags.md]\n\ngroup: expert\nquestion: What extra attributes should be calculated with javascript?", + "type": "array", + "items": { + "type": "string" + } + }, + "isShown": { + "description": "If set, only features matching this extra tag will be shown.\nThis is useful to hide certain features from view based on a calculated tag or if the features are provided by a different layer.\n\nquestion: What other tags should features match for being shown?\ngroup: advanced\nifunset: all features which match the 'source'-specification are shown.", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "isCounted": { + "description": "question: should this layer be included in the summary counts?\n\nThe layer server can give summary counts for a tile.\nThis should however be disabled for some layers, e.g. because there are too many features (walls_and_buildings) or because the count is irrelevant.\n\nifunset: Do count\niffalse: Do not include the counts\niftrue: Do include the count", + "type": "boolean" + }, + "minzoom": { + "description": "The minimum needed zoomlevel required to start loading and displaying the data.\nThis can be used to only show common features (e.g. a bicycle parking) only when the map is zoomed in very much (17).\nThis prevents cluttering the map with thousands of parkings if one is looking to an entire city.\n\nDefault: 0\ngroup: Basic\ntype: nat\nquestion: At what zoom level should features of the layer be shown?\nifunset: Always load this layer, even if the entire world is in view.", + "type": "number" + }, + "shownByDefault": { + "description": "Indicates if this layer is shown by default;\ncan be used to hide a layer from start, or to load the layer but only to show it when appropriate (e.g. for advanced users)\n\nquestion: Should this layer be enabled when opening the map for the first time?\niftrue: the layer is enabled when opening the map\niffalse: the layer is hidden until the contributor enables it. (If the filter-popup is disabled, this might never get enabled nor loaded)\ndefault: true\ngroup: advanced", + "type": "boolean" + }, + "minzoomVisible": { + "description": "The zoom level at which point the data is hidden again\nDefault: 100 (thus: always visible\n\ngroup: expert", + "type": "number" + }, + "title": { + "description": "question: Edit the popup title\nThe title shown in a popup for elements of this layer.\n\ngroup: title\ntypes: use a fixed translation ; Use a dynamic tagRendering ; hidden\ntypesdefault: 1\ntype: translation\ninline: {translated{value}}", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "popupInFloatover": { + "description": "Question: Should the information for this layer be shown in the sidebar or in a splash screen?\n\nIf set, open the selectedElementView in a floatOver instead of on the right.\n\niftrue: show the infobox in the splashscreen floating over the entire UI; hide the title bar\niffalse: show the infobox in a sidebar on the right\nsuggestions: return [{if: \"value=title\", then: \"Show in a floatover and show the title bar\"}]\ngroup: advanced\ndefault: sidebar", + "type": [ + "string", + "boolean" + ] + }, + "titleIcons": { + "description": "Small icons shown next to the title.\nIf not specified, the OsmLink and wikipedia links will be used by default.\nUse an empty array to hide them.\nNote that \"defaults\" will insert all the default titleIcons (which are added automatically)\n\nUse `auto:` to automatically create an icon based on a tagRendering which has icons\n\nType: icon[]\ngroup: infobox", + "anyOf": [ + { + "type": "array", + "items": { + "anyOf": [ + { + "allOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "object", + "properties": { + "id": { + "type": "string" + } + } + } + ] + }, + { + "type": "string" + } + ] + } + }, + { + "type": "array", + "items": [ + { + "type": "string", + "enum": [ + "defaults" + ] + } + ], + "minItems": 1, + "maxItems": 1 + } + ] + }, + "pointRendering": { + "description": "Creates points to render on the map.\nThis can render points for point-objects, lineobjects or areaobjects; use 'location' to indicate where it should be rendered.\n\nNote that all attributes - including [the calculated tags](https://github.com/pietervdvn/MapComplete/blob/develop/Docs/CalculatedTags.md) can be used to create the markers and lines\n\ngroup: pointrendering", + "type": "array", + "items": { + "$ref": "#/definitions/default_4" + } + }, + "lineRendering": { + "description": "Creates lines and areas to render on the map\ngroup: linerendering", + "type": "array", + "items": { + "$ref": "#/definitions/default_5" + } + }, + "passAllFeatures": { + "description": "If set, this layer will pass all the features it receives onto the next layer.\nThis is ideal for decoration, e.g. directions on cameras\niftrue: Make the features from this layer also available to the other layer; might result in this object being rendered by multiple layers\niffalse: normal behaviour: don't pass features allong\nquestion: should this layer pass features to the next layers?\ngroup: expert", + "type": "boolean" + }, + "doNotDownload": { + "description": "If set, this layer will not query overpass; but it'll still match the tags above which are by chance returned by other layers.\nWorks well together with 'passAllFeatures', to add decoration\nThe opposite of `forceLoad`\n\niftrue: Do not attempt to query the data for this layer from overpass/the OSM API\niffalse: download the data as usual\ngroup: expert\nquestion: Should this layer be downloaded or is the data provided by a different layer (which has 'passAllFeatures'-set)?\ndefault: false", + "type": "boolean" + }, + "forceLoad": { + "description": "Advanced option - might be set by the theme compiler\n\nIf true, this data will _always_ be loaded, even if the theme is disabled by a filter or hidden.\nThe opposite of `doNotDownload`\n\nquestion: Should this layer be forcibly loaded?\nifftrue: always download this layer, even if it is disabled\niffalse: only download data for this layer when needed (default)\ndefault: false\ngroup: expert", + "type": "boolean" + }, + "presets": { + "description": "
\n
\nPresets for this layer.\n\nA preset consists of one or more attributes (tags), a title and optionally a description and optionally example images.\n\nWhen the contributor wishes to add a point to OpenStreetMap, they'll:\n\n1. Press the 'add new point'-button\n2. Choose a preset from the list of all presets\n3. Confirm the choice. In this step, the `description` (if set) and `exampleImages` (if given) will be shown\n4. Confirm the location\n5. A new point will be created with the attributes that were defined in the preset\n\nIf no presets are defined, the button which invites to add a new preset will not be shown.\n
\n
\n\ngroup: presets\ntitle: value.title", + "type": "array", + "items": { + "type": "object", + "properties": { + "title": { + "description": "The title - shown on the 'add-new'-button.\n\nThis should include the article of the noun, e.g. 'a hydrant', 'a bicycle pump'.\nThis text will be inserted into `Add {category} here`, becoming `Add a hydrant here`.\n\nDo _not_ indicate 'new': 'add a new shop here' is incorrect, as the shop might have existed forever, it could just be unmapped!\n\nquestion: What is the word to describe this object?\ninline: Add {translated(value)::font-bold} here", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "tags": { + "description": "A single tag (encoded as key=value) out of all the tags to add onto the newly created point.\nNote that the icon in the UI will be chosen automatically based on the tags provided here.\n\nquestion: What tag should be added to the new object?\ntype: simple_tag\ntypeHelper: uploadableOnly", + "type": "array", + "items": { + "type": "string" + } + }, + "description": { + "description": "An extra explanation of what the feature is, if it is not immediately clear from the title alone.\n\nThe _first sentence_ of the description is shown on the button of the `add` menu.\nThe full description is shown in the confirmation dialog.\n\n(The first sentence is until the first '.'-character in the description)\n\nquestion: How would you describe this feature?\nifunset: No extra description is given. This can be used to further explain the preset", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "exampleImages": { + "description": "The URL of an example image which shows a real-life example of what such a feature might look like.\n\nType: image\nquestion: What is the URL of an image showing such a feature?", + "type": "array", + "items": { + "type": "string" + } + }, + "snapToLayer": { + "description": "question: Should the created point be snapped to a line layer?\n\nIf specified, these layers will be shown in the precise location picker and the new point will be snapped towards it.\nFor example, this can be used to snap against `walls_and_buildings` (e.g. to attach a defibrillator, an entrance, an artwork, ... to the wall)\nor to snap an obstacle (such as a bollard) to the `cycleways_and_roads`.\n\nsuggestions: return Array.from(layers.keys()).map(key => ({if: \"value=\"+key, then: key+\" - \"+layers.get(key).description}))", + "type": "array", + "items": { + "type": "string" + } + }, + "maxSnapDistance": { + "description": "question: What is the maximum distance in the location-input that a point can be moved to be snapped to a way?\n\ninline: a point is snapped if the location input is at most {value}m away from an object\n\nIf specified, a new point will only be snapped if it is within this range.\nIf further away, it'll be placed in the center of the location input\nDistance in meter\n\nifunset: Do not snap to a layer", + "type": "number" + } + }, + "required": [ + "tags", + "title" + ] + } + }, + "tagRenderings": { + "description": "question: Edit this way this attributed is displayed or queried\n\nA tag rendering is a block that either shows the known value or asks a question.\n\nRefer to the class `TagRenderingConfigJson` to see the possibilities.\n\nNote that we can also use a string here - where the string refers to a tag rendering defined in `assets/questions/questions.json`,\nwhere a few very general questions are defined e.g. website, phone number, ...\nFurthermore, _all_ the questions of another layer can be reused with `otherlayer.*`\nIf you need only a single of the tagRenderings, use `otherlayer.tagrenderingId`\nIf one or more questions have a 'group' or 'label' set, select all the entries with the corresponding group or label with `otherlayer.*group`\nRemark: if a tagRendering is 'lent' from another layer, the 'source'-tags are copied and added as condition.\nIf they are not wanted, remove them with an override\n\nA special value is 'questions', which indicates the location of the questions box. If not specified, it'll be appended to the bottom of the featureInfobox.\n\nAt last, one can define a group of renderings where parts of all strings will be replaced by multiple other strings.\nThis is mainly create questions for a 'left' and a 'right' side of the road.\nThese will be grouped and questions will be asked together\n\ntype: tagrendering[]\ngroup: tagrenderings", + "type": "array", + "items": { + "anyOf": [ + { + "$ref": "#/definitions/QuestionableTagRenderingConfigJson" + }, + { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "builtin": { + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "type": "string" + } + ] + }, + "override": { + "$ref": "#/definitions/Partial" + } + }, + "required": [ + "builtin", + "override" + ] + }, + { + "allOf": [ + { + "$ref": "#/definitions/default<(string|QuestionableTagRenderingConfigJson|{builtin:string;override:Partial;})[]>" + }, + { + "type": "object", + "properties": { + "id": { + "type": "string" + } + }, + "required": [ + "id" + ] + } + ] + }, + { + "type": "string" + } + ] + } + }, + "filter": { + "description": "All the extra questions for filtering.\nIf a string is given, mapComplete will search in\n1. The tagrenderings for a match on ID and use the mappings as options\n2. search 'filters.json' for the appropriate filter or\n3. will try to parse it as `layername.filterid` and us that one.\n\nNote: adding \"#filter\":\"no-auto\" will disable the filters added by tagRenderings\n\ngroup: filters", + "anyOf": [ + { + "type": "array", + "items": { + "anyOf": [ + { + "$ref": "#/definitions/default_1" + }, + { + "type": "string" + } + ] + } + }, + { + "type": "object", + "properties": { + "sameAs": { + "type": "string" + } + }, + "required": [ + "sameAs" + ] + } + ] + }, + "#filter": { + "description": "Set this to disable the feature that tagRenderings can introduce filters", + "enum": [ + "no-auto" + ], + "type": "string" + }, + "deletion": { + "description": "This block defines under what circumstances the delete dialog is shown for objects of this layer.\nIf set, a dialog is shown to the user to (soft) delete the point.\nThe dialog is built to be user friendly and to prevent mistakes.\nIf deletion is not possible, the dialog will hide itself and show the reason of non-deletability instead.\n\nTo configure, the following values are possible:\n\n- false: never ever show the delete button\n- true: show the default delete button\n- undefined: use the mapcomplete default to show deletion or not. Currently, this is the same as 'false' but this will change in the future\n- or: a hash with options (see below)\n\n### The delete dialog\n\n\n\n#### Hard deletion if enough experience\n\nA feature can only be deleted from OpenStreetMap by mapcomplete if:\n\n- It is a node\n- No ways or relations use the node\n- The logged-in user has enough experience OR the user is the only one to have edited the point previously\n- The logged-in user has no unread messages (or has a ton of experience)\n- The user did not select one of the 'non-delete-options' (see below)\n\nIn all other cases, a 'soft deletion' is used.\n\n#### Soft deletion\n\nA 'soft deletion' is when the point isn't deleted fromOSM but retagged so that it'll won't how up in the mapcomplete theme anymore.\nThis makes it look like it was deleted, without doing damage. A fixme will be added to the point.\n\nNote that a soft deletion is _only_ possible if these tags are provided by the theme creator, as they'll be different for every theme\n\n##### No-delete options\n\nIn some cases, the contributor might want to delete something for the wrong reason (e.g. someone who wants to have a path removed \"because the path is on their private property\").\nHowever, the path exists in reality and should thus be on OSM - otherwise the next contributor will pass by and notice \"hey, there is a path missing here! Let me redraw it in OSM!)\n\nThe correct approach is to retag the feature in such a way that it is semantically correct *and* that it doesn't show up on the theme anymore.\nA no-delete option is offered as 'reason to delete it', but secretly retags.\n\ngroup: editing\ntypes: Use an advanced delete configuration ; boolean\niftrue: Allow deletion\niffalse: Do not allow deletion\nifunset: Do not allow deletion", + "anyOf": [ + { + "$ref": "#/definitions/DeleteConfigJson" + }, + { + "type": "boolean" + } + ] + }, + "allowMove": { + "description": "Indicates if a point can be moved and why.\n\nA feature can be moved by MapComplete if:\n\n- It is a point\n- The point is _not_ part of a way or a a relation.\n\ntypes: use an advanced move configuration ; boolean\ngroup: editing\nquestion: Is deleting a point allowed?\niftrue: Allow contributors to move a point (for accuracy or a relocation)\niffalse: Don't allow contributors to move points\nifunset: Don't allow contributors to move points (default)", + "anyOf": [ + { + "$ref": "#/definitions/default_3" + }, + { + "type": "boolean" + } + ] + }, + "allowSplit": { + "description": "If set, a 'split this way' button is shown on objects rendered as LineStrings, e.g. highways.\n\nIf the way is part of a relation, MapComplete will attempt to update this relation as well\nquestion: Should the contributor be able to split ways using this layer?\niftrue: enable the 'split-roads'-component\niffalse: don't enable the split-roads component\nifunset: don't enable the split-roads component\ngroup: editing", + "type": "boolean" + }, + "units": { + "description": "Either a list with [{\"key\": \"unitname\", \"key2\": {\"quantity\": \"unitname\", \"denominations\": [\"denom\", \"denom\"]}}]\n\nUse `\"inverted\": true` if the amount should be _divided_ by the denomination, e.g. for charge over time (`€5/day`)", + "type": "array", + "items": { + "anyOf": [ + { + "$ref": "#/definitions/default_2" + }, + { + "$ref": "#/definitions/Record" + } + ] + } + }, + "syncSelection": { + "description": "If set, synchronizes whether this layer is enabled.\n\ngroup: advanced\nquestion: Should enabling/disabling the layer be saved (locally or in the cloud)?\nsuggestions: return [{if: \"value=no\", then: \"Don't save, always revert to the default\"}, {if: \"value=local\", then: \"Save selection in local storage\"}, {if: \"value=theme-only\", then: \"Save the state in the OSM-usersettings, but apply on this theme only (default)\"}, {if: \"value=global\", then: \"Save in OSM-usersettings and toggle on _all_ themes using this layer\"}]", + "enum": [ + "global", + "local", + "no", + "theme-only" + ], + "type": "string" + }, + "#": { + "description": "Used for comments and/or to disable some checks\n\nno-question-hint-check: disables a check in MiscTagRenderingChecks which complains about 'div', 'span' or 'class=subtle'-HTML elements in the tagRendering\n\ngroup: hidden", + "type": "string" + }, + "fullNodeDatabase": { + "description": "_Set automatically by MapComplete, please ignore_\n\ngroup: hidden", + "type": "boolean" + }, + "enableMorePrivacy": { + "description": "question: Should a theme using this layer leak some location info when making changes?\n\nWhen a changeset is made, a 'distance to object'-class is written to the changeset.\nFor some particular themes and layers, this might leak too much information, and we want to obfuscate this\n\nifunset: Write 'change_within_x_m' as usual and if GPS is enabled\niftrue: Do not write 'change_within_x_m' and do not indicate that this was done by survey", + "type": "boolean" + }, + "snapName": { + "description": "question: When a feature is snapped to this name, how should this item be called?\n\nIn the move wizard, the option `snap object onto {snapName}` is shown\n\ngroup: hidden", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + } + }, + "required": [ + "id", + "pointRendering" + ] + }, + "Partial": { + "type": "object", + "properties": { + "id": { + "description": "question: What is the identifier of this layer?\n\nThis should be a simple, lowercase, human readable string that is used to identify the layer.\n A good ID is:\n - a noun\n - written in singular\n - describes the object\n - in english\n - only has lowercase letters, numbers or underscores. Do not use a space or a dash\n\ntype: id\ngroup: Basic", + "type": "string" + }, + "name": { + "description": "Used in the layer control panel to toggle a layer on and of.\n\nifunset: This will hide the layer in the layer control, making it not filterable and not toggleable\n\ngroup: Basic\nquestion: What is the name of this layer?", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "description": { + "description": "question: How would you describe the features that are shown on this layer?\n\nA description for the features shown in this layer.\nThis often resembles the introduction of the wiki.osm.org-page for this feature.\n\ngroup: Basic", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "searchTerms": { + "description": "question: What are some other terms used to describe these objects?\n\nThis is used in the search functionality", + "$ref": "#/definitions/Record" + }, + "source": { + "description": "Question: Where should the data be fetched from?\ntitle: Data Source\n\nThis determines where the data for the layer is fetched: from OSM or from an external geojson dataset.\n\nIf no 'geojson' is defined, data will be fetched from overpass and the OSM-API.\n\nEvery source _must_ define which tags _must_ be present in order to be picked up.\n\nNote: a source must always be defined. 'special' is only allowed if this is a builtin-layer\n\ntypes: Load data with specific tags from OpenStreetMap ; Load data from an external geojson source ;\ntypesdefault: 0\nifunset: Determine the tags automatically based on the presets\ngroup: Basic", + "anyOf": [ + { + "type": "object", + "properties": { + "osmTags": { + "$ref": "#/definitions/TagConfigJson", + "description": "question: Which tags must be present on the feature to show it in this layer?\nEvery source must set which tags have to be present in order to load the given layer." + } + }, + "required": [ + "osmTags" + ] + }, + { + "type": "object", + "properties": { + "geoJson": { + "description": "The actual source of the data to load, if loaded via geojson.\n\n# A single geojson-file\nsource: {geoJson: \"https://my.source.net/some-geo-data.geojson\"}\n fetches a geojson from a third party source\n\n# A tiled geojson source\nsource: {geoJson: \"https://my.source.net/some-tile-geojson-{layer}-{z}-{x}-{y}.geojson\", geoJsonZoomLevel: 14}\n to use a tiled geojson source. The web server must offer multiple geojsons. {z}, {x} and {y} are substituted by the location; {layer} is substituted with the id of the loaded layer\n\nSome API's use a BBOX instead of a tile, this can be used by specifying {y_min}, {y_max}, {x_min} and {x_max}\n\nquestion: What is the URL of the geojson?\ntype: url", + "type": "string" + }, + "geoJsonZoomLevel": { + "description": "To load a tiled geojson layer, set the zoomlevel of the tiles\n\nquestion: If using a tiled geojson, what is the zoomlevel of the tiles?\nifunset: This is not a tiled geojson", + "type": "number" + }, + "mercatorCrs": { + "description": "Some API's use a mercator-projection (EPSG:900913) instead of WGS84. Set the flag `mercatorCrs: true` in the source for this\n\nquestion: Does this geojson use EPSG:900913 instead of WGS84 as projection?\niftrue: This geojson uses EPSG:900913 instead of WGS84\nifunset: This geojson uses WGS84 just like most geojson (default)", + "type": "boolean" + }, + "idKey": { + "description": "Some API's have an id-field, but give it a different name.\nSetting this key will rename this field into 'id'\n\nifunset: An id with key `id` will be assigned automatically if no attribute `id` is set\ninline: This geojson uses {value} as attribute to set the id\nquestion: What is the name of the attribute containing the ID of the object?", + "type": "string" + } + }, + "required": [ + "geoJson" + ] + }, + { + "enum": [ + "special", + "special:library" + ], + "type": "string" + } + ] + }, + "calculatedTags": { + "description": "A list of extra tags to calculate, specified as \"keyToAssignTo=javascript-expression\".\nThere are a few extra functions available. Refer to Docs/CalculatedTags.md for more information\nThe functions will be run in order, e.g.\n[\n \"_max_overlap_m2=Math.max(...feat.overlapsWith(\"someOtherLayer\").map(o => o.overlap))\n \"_max_overlap_ratio=Number(feat._max_overlap_m2)/feat.area\n]\n\nThe specified tags are evaluated lazily. E.g. if a calculated tag is only used in the popup (e.g. the number of nearby features),\nthe expensive calculation will only be performed then for that feature. This avoids clogging up the contributors PC when all features are loaded.\n\nIf a tag has to be evaluated strictly, use ':=' instead:\n\n[\n\"_some_key:=some_javascript_expression\"\n]\n\nSee the full documentation on [https://github.com/pietervdvn/MapComplete/blob/master/Docs/CalculatedTags.md]\n\ngroup: expert\nquestion: What extra attributes should be calculated with javascript?", + "type": "array", + "items": { + "type": "string" + } + }, + "isShown": { + "description": "If set, only features matching this extra tag will be shown.\nThis is useful to hide certain features from view based on a calculated tag or if the features are provided by a different layer.\n\nquestion: What other tags should features match for being shown?\ngroup: advanced\nifunset: all features which match the 'source'-specification are shown.", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "isCounted": { + "description": "question: should this layer be included in the summary counts?\n\nThe layer server can give summary counts for a tile.\nThis should however be disabled for some layers, e.g. because there are too many features (walls_and_buildings) or because the count is irrelevant.\n\nifunset: Do count\niffalse: Do not include the counts\niftrue: Do include the count", + "type": "boolean" + }, + "minzoom": { + "description": "The minimum needed zoomlevel required to start loading and displaying the data.\nThis can be used to only show common features (e.g. a bicycle parking) only when the map is zoomed in very much (17).\nThis prevents cluttering the map with thousands of parkings if one is looking to an entire city.\n\nDefault: 0\ngroup: Basic\ntype: nat\nquestion: At what zoom level should features of the layer be shown?\nifunset: Always load this layer, even if the entire world is in view.", + "type": "number" + }, + "shownByDefault": { + "description": "Indicates if this layer is shown by default;\ncan be used to hide a layer from start, or to load the layer but only to show it when appropriate (e.g. for advanced users)\n\nquestion: Should this layer be enabled when opening the map for the first time?\niftrue: the layer is enabled when opening the map\niffalse: the layer is hidden until the contributor enables it. (If the filter-popup is disabled, this might never get enabled nor loaded)\ndefault: true\ngroup: advanced", + "type": "boolean" + }, + "minzoomVisible": { + "description": "The zoom level at which point the data is hidden again\nDefault: 100 (thus: always visible\n\ngroup: expert", + "type": "number" + }, + "title": { + "description": "question: Edit the popup title\nThe title shown in a popup for elements of this layer.\n\ngroup: title\ntypes: use a fixed translation ; Use a dynamic tagRendering ; hidden\ntypesdefault: 1\ntype: translation\ninline: {translated{value}}", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "string" + } + ] + }, + "popupInFloatover": { + "description": "Question: Should the information for this layer be shown in the sidebar or in a splash screen?\n\nIf set, open the selectedElementView in a floatOver instead of on the right.\n\niftrue: show the infobox in the splashscreen floating over the entire UI; hide the title bar\niffalse: show the infobox in a sidebar on the right\nsuggestions: return [{if: \"value=title\", then: \"Show in a floatover and show the title bar\"}]\ngroup: advanced\ndefault: sidebar", + "type": [ + "string", + "boolean" + ] + }, + "titleIcons": { + "description": "Small icons shown next to the title.\nIf not specified, the OsmLink and wikipedia links will be used by default.\nUse an empty array to hide them.\nNote that \"defaults\" will insert all the default titleIcons (which are added automatically)\n\nUse `auto:` to automatically create an icon based on a tagRendering which has icons\n\nType: icon[]\ngroup: infobox", + "anyOf": [ + { + "type": "array", + "items": { + "anyOf": [ + { + "allOf": [ + { + "$ref": "#/definitions/TagRenderingConfigJson" + }, + { + "type": "object", + "properties": { + "id": { + "type": "string" + } + } + } + ] + }, + { + "type": "string" + } + ] + } + }, + { + "type": "array", + "items": [ + { + "type": "string", + "enum": [ + "defaults" + ] + } + ], + "minItems": 1, + "maxItems": 1 + } + ] + }, + "pointRendering": { + "description": "Creates points to render on the map.\nThis can render points for point-objects, lineobjects or areaobjects; use 'location' to indicate where it should be rendered.\n\nNote that all attributes - including [the calculated tags](https://github.com/pietervdvn/MapComplete/blob/develop/Docs/CalculatedTags.md) can be used to create the markers and lines\n\ngroup: pointrendering", + "type": "array", + "items": { + "$ref": "#/definitions/default_4" + } + }, + "lineRendering": { + "description": "Creates lines and areas to render on the map\ngroup: linerendering", + "type": "array", + "items": { + "$ref": "#/definitions/default_5" + } + }, + "passAllFeatures": { + "description": "If set, this layer will pass all the features it receives onto the next layer.\nThis is ideal for decoration, e.g. directions on cameras\niftrue: Make the features from this layer also available to the other layer; might result in this object being rendered by multiple layers\niffalse: normal behaviour: don't pass features allong\nquestion: should this layer pass features to the next layers?\ngroup: expert", + "type": "boolean" + }, + "doNotDownload": { + "description": "If set, this layer will not query overpass; but it'll still match the tags above which are by chance returned by other layers.\nWorks well together with 'passAllFeatures', to add decoration\nThe opposite of `forceLoad`\n\niftrue: Do not attempt to query the data for this layer from overpass/the OSM API\niffalse: download the data as usual\ngroup: expert\nquestion: Should this layer be downloaded or is the data provided by a different layer (which has 'passAllFeatures'-set)?\ndefault: false", + "type": "boolean" + }, + "forceLoad": { + "description": "Advanced option - might be set by the theme compiler\n\nIf true, this data will _always_ be loaded, even if the theme is disabled by a filter or hidden.\nThe opposite of `doNotDownload`\n\nquestion: Should this layer be forcibly loaded?\nifftrue: always download this layer, even if it is disabled\niffalse: only download data for this layer when needed (default)\ndefault: false\ngroup: expert", + "type": "boolean" + }, + "presets": { + "description": "
\n
\nPresets for this layer.\n\nA preset consists of one or more attributes (tags), a title and optionally a description and optionally example images.\n\nWhen the contributor wishes to add a point to OpenStreetMap, they'll:\n\n1. Press the 'add new point'-button\n2. Choose a preset from the list of all presets\n3. Confirm the choice. In this step, the `description` (if set) and `exampleImages` (if given) will be shown\n4. Confirm the location\n5. A new point will be created with the attributes that were defined in the preset\n\nIf no presets are defined, the button which invites to add a new preset will not be shown.\n
\n
\n\ngroup: presets\ntitle: value.title", + "type": "array", + "items": { + "type": "object", + "properties": { + "title": { + "description": "The title - shown on the 'add-new'-button.\n\nThis should include the article of the noun, e.g. 'a hydrant', 'a bicycle pump'.\nThis text will be inserted into `Add {category} here`, becoming `Add a hydrant here`.\n\nDo _not_ indicate 'new': 'add a new shop here' is incorrect, as the shop might have existed forever, it could just be unmapped!\n\nquestion: What is the word to describe this object?\ninline: Add {translated(value)::font-bold} here", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "tags": { + "description": "A single tag (encoded as key=value) out of all the tags to add onto the newly created point.\nNote that the icon in the UI will be chosen automatically based on the tags provided here.\n\nquestion: What tag should be added to the new object?\ntype: simple_tag\ntypeHelper: uploadableOnly", + "type": "array", + "items": { + "type": "string" + } + }, + "description": { + "description": "An extra explanation of what the feature is, if it is not immediately clear from the title alone.\n\nThe _first sentence_ of the description is shown on the button of the `add` menu.\nThe full description is shown in the confirmation dialog.\n\n(The first sentence is until the first '.'-character in the description)\n\nquestion: How would you describe this feature?\nifunset: No extra description is given. This can be used to further explain the preset", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "exampleImages": { + "description": "The URL of an example image which shows a real-life example of what such a feature might look like.\n\nType: image\nquestion: What is the URL of an image showing such a feature?", + "type": "array", + "items": { + "type": "string" + } + }, + "snapToLayer": { + "description": "question: Should the created point be snapped to a line layer?\n\nIf specified, these layers will be shown in the precise location picker and the new point will be snapped towards it.\nFor example, this can be used to snap against `walls_and_buildings` (e.g. to attach a defibrillator, an entrance, an artwork, ... to the wall)\nor to snap an obstacle (such as a bollard) to the `cycleways_and_roads`.\n\nsuggestions: return Array.from(layers.keys()).map(key => ({if: \"value=\"+key, then: key+\" - \"+layers.get(key).description}))", + "type": "array", + "items": { + "type": "string" + } + }, + "maxSnapDistance": { + "description": "question: What is the maximum distance in the location-input that a point can be moved to be snapped to a way?\n\ninline: a point is snapped if the location input is at most {value}m away from an object\n\nIf specified, a new point will only be snapped if it is within this range.\nIf further away, it'll be placed in the center of the location input\nDistance in meter\n\nifunset: Do not snap to a layer", + "type": "number" + } + }, + "required": [ + "tags", + "title" + ] + } + }, + "tagRenderings": { + "description": "question: Edit this way this attributed is displayed or queried\n\nA tag rendering is a block that either shows the known value or asks a question.\n\nRefer to the class `TagRenderingConfigJson` to see the possibilities.\n\nNote that we can also use a string here - where the string refers to a tag rendering defined in `assets/questions/questions.json`,\nwhere a few very general questions are defined e.g. website, phone number, ...\nFurthermore, _all_ the questions of another layer can be reused with `otherlayer.*`\nIf you need only a single of the tagRenderings, use `otherlayer.tagrenderingId`\nIf one or more questions have a 'group' or 'label' set, select all the entries with the corresponding group or label with `otherlayer.*group`\nRemark: if a tagRendering is 'lent' from another layer, the 'source'-tags are copied and added as condition.\nIf they are not wanted, remove them with an override\n\nA special value is 'questions', which indicates the location of the questions box. If not specified, it'll be appended to the bottom of the featureInfobox.\n\nAt last, one can define a group of renderings where parts of all strings will be replaced by multiple other strings.\nThis is mainly create questions for a 'left' and a 'right' side of the road.\nThese will be grouped and questions will be asked together\n\ntype: tagrendering[]\ngroup: tagrenderings", + "type": "array", + "items": { + "anyOf": [ + { + "$ref": "#/definitions/QuestionableTagRenderingConfigJson" + }, + { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "builtin": { + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "type": "string" + } + ] + }, + "override": { + "$ref": "#/definitions/Partial" + } + }, + "required": [ + "builtin", + "override" + ] + }, + { + "allOf": [ + { + "$ref": "#/definitions/default<(string|QuestionableTagRenderingConfigJson|{builtin:string;override:Partial;})[]>" + }, + { + "type": "object", + "properties": { + "id": { + "type": "string" + } + }, + "required": [ + "id" + ] + } + ] + }, + { + "type": "string" + } + ] + } + }, + "filter": { + "description": "All the extra questions for filtering.\nIf a string is given, mapComplete will search in\n1. The tagrenderings for a match on ID and use the mappings as options\n2. search 'filters.json' for the appropriate filter or\n3. will try to parse it as `layername.filterid` and us that one.\n\nNote: adding \"#filter\":\"no-auto\" will disable the filters added by tagRenderings\n\ngroup: filters", + "anyOf": [ + { + "type": "array", + "items": { + "anyOf": [ + { + "$ref": "#/definitions/default_1" + }, + { + "type": "string" + } + ] + } + }, + { + "type": "object", + "properties": { + "sameAs": { + "type": "string" + } + }, + "required": [ + "sameAs" + ] + } + ] + }, + "#filter": { + "description": "Set this to disable the feature that tagRenderings can introduce filters", + "enum": [ + "no-auto" + ], + "type": "string" + }, + "deletion": { + "description": "This block defines under what circumstances the delete dialog is shown for objects of this layer.\nIf set, a dialog is shown to the user to (soft) delete the point.\nThe dialog is built to be user friendly and to prevent mistakes.\nIf deletion is not possible, the dialog will hide itself and show the reason of non-deletability instead.\n\nTo configure, the following values are possible:\n\n- false: never ever show the delete button\n- true: show the default delete button\n- undefined: use the mapcomplete default to show deletion or not. Currently, this is the same as 'false' but this will change in the future\n- or: a hash with options (see below)\n\n### The delete dialog\n\n\n\n#### Hard deletion if enough experience\n\nA feature can only be deleted from OpenStreetMap by mapcomplete if:\n\n- It is a node\n- No ways or relations use the node\n- The logged-in user has enough experience OR the user is the only one to have edited the point previously\n- The logged-in user has no unread messages (or has a ton of experience)\n- The user did not select one of the 'non-delete-options' (see below)\n\nIn all other cases, a 'soft deletion' is used.\n\n#### Soft deletion\n\nA 'soft deletion' is when the point isn't deleted fromOSM but retagged so that it'll won't how up in the mapcomplete theme anymore.\nThis makes it look like it was deleted, without doing damage. A fixme will be added to the point.\n\nNote that a soft deletion is _only_ possible if these tags are provided by the theme creator, as they'll be different for every theme\n\n##### No-delete options\n\nIn some cases, the contributor might want to delete something for the wrong reason (e.g. someone who wants to have a path removed \"because the path is on their private property\").\nHowever, the path exists in reality and should thus be on OSM - otherwise the next contributor will pass by and notice \"hey, there is a path missing here! Let me redraw it in OSM!)\n\nThe correct approach is to retag the feature in such a way that it is semantically correct *and* that it doesn't show up on the theme anymore.\nA no-delete option is offered as 'reason to delete it', but secretly retags.\n\ngroup: editing\ntypes: Use an advanced delete configuration ; boolean\niftrue: Allow deletion\niffalse: Do not allow deletion\nifunset: Do not allow deletion", + "anyOf": [ + { + "$ref": "#/definitions/DeleteConfigJson" + }, + { + "type": "boolean" + } + ] + }, + "allowMove": { + "description": "Indicates if a point can be moved and why.\n\nA feature can be moved by MapComplete if:\n\n- It is a point\n- The point is _not_ part of a way or a a relation.\n\ntypes: use an advanced move configuration ; boolean\ngroup: editing\nquestion: Is deleting a point allowed?\niftrue: Allow contributors to move a point (for accuracy or a relocation)\niffalse: Don't allow contributors to move points\nifunset: Don't allow contributors to move points (default)", + "anyOf": [ + { + "$ref": "#/definitions/default_3" + }, + { + "type": "boolean" + } + ] + }, + "allowSplit": { + "description": "If set, a 'split this way' button is shown on objects rendered as LineStrings, e.g. highways.\n\nIf the way is part of a relation, MapComplete will attempt to update this relation as well\nquestion: Should the contributor be able to split ways using this layer?\niftrue: enable the 'split-roads'-component\niffalse: don't enable the split-roads component\nifunset: don't enable the split-roads component\ngroup: editing", + "type": "boolean" + }, + "units": { + "description": "Either a list with [{\"key\": \"unitname\", \"key2\": {\"quantity\": \"unitname\", \"denominations\": [\"denom\", \"denom\"]}}]\n\nUse `\"inverted\": true` if the amount should be _divided_ by the denomination, e.g. for charge over time (`€5/day`)", + "type": "array", + "items": { + "anyOf": [ + { + "$ref": "#/definitions/default_2" + }, + { + "$ref": "#/definitions/Record" + } + ] + } + }, + "syncSelection": { + "description": "If set, synchronizes whether this layer is enabled.\n\ngroup: advanced\nquestion: Should enabling/disabling the layer be saved (locally or in the cloud)?\nsuggestions: return [{if: \"value=no\", then: \"Don't save, always revert to the default\"}, {if: \"value=local\", then: \"Save selection in local storage\"}, {if: \"value=theme-only\", then: \"Save the state in the OSM-usersettings, but apply on this theme only (default)\"}, {if: \"value=global\", then: \"Save in OSM-usersettings and toggle on _all_ themes using this layer\"}]", + "enum": [ + "global", + "local", + "no", + "theme-only" + ], + "type": "string" + }, + "#": { + "description": "Used for comments and/or to disable some checks\n\nno-question-hint-check: disables a check in MiscTagRenderingChecks which complains about 'div', 'span' or 'class=subtle'-HTML elements in the tagRendering\n\ngroup: hidden", + "type": "string" + }, + "fullNodeDatabase": { + "description": "_Set automatically by MapComplete, please ignore_\n\ngroup: hidden", + "type": "boolean" + }, + "enableMorePrivacy": { + "description": "question: Should a theme using this layer leak some location info when making changes?\n\nWhen a changeset is made, a 'distance to object'-class is written to the changeset.\nFor some particular themes and layers, this might leak too much information, and we want to obfuscate this\n\nifunset: Write 'change_within_x_m' as usual and if GPS is enabled\niftrue: Do not write 'change_within_x_m' and do not indicate that this was done by survey", + "type": "boolean" + }, + "snapName": { + "description": "question: When a feature is snapped to this name, how should this item be called?\n\nIn the move wizard, the option `snap object onto {snapName}` is shown\n\ngroup: hidden", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + } + } + }, + "Partial": { + "type": "object" + }, + "RasterLayerProperties": { + "description": "This class has grown beyond the point of only containing Raster Layers", + "type": "object", + "properties": { + "name": { + "description": "The name of the imagery source", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "isOverlay": { + "type": "boolean" + }, + "id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "category": { + "type": "string" + }, + "type": { + "type": "string" + }, + "style": { + "type": "string" + }, + "attribution": { + "type": "object", + "properties": { + "url": { + "type": "string" + }, + "text": { + "type": "string" + }, + "html": { + "type": "string" + }, + "required": { + "type": "boolean" + } + } + }, + "min_zoom": { + "type": "number" + }, + "max_zoom": { + "type": "number" + }, + "best": { + "type": "boolean" + } + }, + "required": [ + "id", + "name", + "url" + ] + } + }, + "$schema": "http://json-schema.org/draft-07/schema#" +} \ No newline at end of file diff --git a/Docs/Schemas/UnitConfigJson.schema.json b/Docs/Schemas/UnitConfigJson.schema.json index ee18e79ee..2a831cc22 100644 --- a/Docs/Schemas/UnitConfigJson.schema.json +++ b/Docs/Schemas/UnitConfigJson.schema.json @@ -92,6 +92,73 @@ ], "additionalProperties": false }, + "FilterConfigOptionJson": { + "type": "object", + "properties": { + "question": { + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] + }, + "searchTerms": { + "$ref": "#/definitions/Record" + }, + "emoji": { + "type": "string" + }, + "icon": { + "type": "string" + }, + "osmTags": { + "description": "The main representation of Tags.\nSee https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Tags_format.md for more documentation\n\ntype: tag", + "anyOf": [ + { + "$ref": "#/definitions/{and:TagConfigJson[];}" + }, + { + "$ref": "#/definitions/{or:TagConfigJson[];}" + }, + { + "type": "string" + } + ] + }, + "default": { + "type": "boolean" + }, + "fields": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "description": "If name is `search`, use \"_first_comment~.*{search}.*\" as osmTags", + "type": "string" + }, + "type": { + "type": "string" + } + }, + "required": [ + "name" + ] + } + } + }, + "required": [ + "question" + ], + "additionalProperties": false + }, + "Record": { + "type": "object", + "additionalProperties": false + }, "Record>": { "type": "object", "additionalProperties": false diff --git a/Docs/SpecialRenderings.md b/Docs/SpecialRenderings.md index 6e73e69d8..a89f3e7c1 100644 --- a/Docs/SpecialRenderings.md +++ b/Docs/SpecialRenderings.md @@ -646,10 +646,11 @@ Creates a button where a user can upload an image to IMGUR -----|-----|----- | | image-key | _undefined_ | Image tag to add the URL to (or image-tag:0, image-tag:1 when multiple images are added) | | label | _undefined_ | The text to show on the button | +| disable_blur | _undefined_ | If set to 'true' or 'yes', then face blurring will be disabled. To be used sparingly | #### Example usage of image_upload -`{image_upload(,)}` +`{image_upload(,,)}` ### rating diff --git a/Docs/TagInfo/mapcomplete_advertising.json b/Docs/TagInfo/mapcomplete_advertising.json index b62b0c323..fac4a83d9 100644 --- a/Docs/TagInfo/mapcomplete_advertising.json +++ b/Docs/TagInfo/mapcomplete_advertising.json @@ -20,19 +20,23 @@ }, { "key": "image", - "description": "The layer 'Advertisement allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Advertisement 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 'Advertisement 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 'Advertisement allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Advertisement 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 'Advertisement allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Advertisement 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 'Advertisement allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Advertisement 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": "advertising", @@ -252,19 +256,23 @@ }, { "key": "image", - "description": "The layer 'Shelter allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shelter 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 'Shelter 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 'Shelter allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shelter 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 'Shelter allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shelter 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 'Shelter allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shelter 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": "shelter_type", diff --git a/Docs/TagInfo/mapcomplete_aed.json b/Docs/TagInfo/mapcomplete_aed.json index 9e9f2e32c..c4c57e201 100644 --- a/Docs/TagInfo/mapcomplete_aed.json +++ b/Docs/TagInfo/mapcomplete_aed.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Defibrillators allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Defibrillators 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 'Defibrillators 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 'Defibrillators allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Defibrillators 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 'Defibrillators allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Defibrillators 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 'Defibrillators allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Defibrillators 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": "indoor", diff --git a/Docs/TagInfo/mapcomplete_artwork.json b/Docs/TagInfo/mapcomplete_artwork.json index 85cd3068b..61276e49c 100644 --- a/Docs/TagInfo/mapcomplete_artwork.json +++ b/Docs/TagInfo/mapcomplete_artwork.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Artworks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Artworks 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 'Artworks 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 'Artworks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Artworks 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 'Artworks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Artworks 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 'Artworks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Artworks 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": "artwork_type", @@ -140,7 +144,7 @@ }, { "key": "historic", - "description": "Layer 'Artworks' shows historic= with a fixed text, namely 'This artwork does not serve as a bench' and allows to pick this as a default answer (in the mapcomplete.org theme 'Artwork') Picking this answer will delete the key historic.", + "description": "Layer 'Artworks' shows historic= with a fixed text, namely 'This artwork does not serve as a memorial' and allows to pick this as a default answer (in the mapcomplete.org theme 'Artwork') Picking this answer will delete the key historic.", "value": "" }, { @@ -415,19 +419,23 @@ }, { "key": "image", - "description": "The layer 'Memorials allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Memorials 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 'Memorials 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 'Memorials allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Memorials 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 'Memorials allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Memorials 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 'Memorials allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Memorials 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": "memorial", @@ -699,19 +707,23 @@ }, { "key": "image", - "description": "The layer 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches 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 'Benches 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 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches 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 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches 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 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches 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": "backrest", diff --git a/Docs/TagInfo/mapcomplete_atm.json b/Docs/TagInfo/mapcomplete_atm.json index ff991394d..dd8bbd99a 100644 --- a/Docs/TagInfo/mapcomplete_atm.json +++ b/Docs/TagInfo/mapcomplete_atm.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'ATMs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'ATMs 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 'ATMs 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 'ATMs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'ATMs 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 'ATMs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'ATMs 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 'ATMs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'ATMs 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": "brand", @@ -148,19 +152,23 @@ }, { "key": "image", - "description": "The layer 'Banks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Banks 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 'Banks 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 'Banks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Banks 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 'Banks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Banks 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 'Banks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Banks 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": "atm", @@ -198,19 +206,51 @@ }, { "key": "image", - "description": "The layer 'Post offices allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Post offices 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 'Post offices 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 'Post offices allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Post offices 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 'Post offices allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Post offices 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 'Post offices allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Post offices 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": "phone", + "description": "Layer 'Post offices' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'ATM Machines')" + }, + { + "key": "contact:phone", + "description": "Layer 'Post offices' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'ATM Machines')" + }, + { + "key": "email", + "description": "Layer 'Post offices' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'ATM Machines')" + }, + { + "key": "contact:email", + "description": "Layer 'Post offices' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'ATM Machines')" + }, + { + "key": "operator:email", + "description": "Layer 'Post offices' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'ATM Machines')" + }, + { + "key": "website", + "description": "Layer 'Post offices' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'ATM Machines')" + }, + { + "key": "contact:website", + "description": "Layer 'Post offices' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'ATM Machines')" }, { "key": "opening_hours", @@ -223,12 +263,12 @@ }, { "key": "post_office", - "description": "Layer 'Post offices' shows post_office=post_partner with a fixed text, namely 'This shop is a post partner' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines')", + "description": "Layer 'Post offices' shows post_office=post_partner with a fixed text, namely 'This shop is a post partner' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines') (This is only shown if amenity!=post_office)", "value": "post_partner" }, { "key": "post_office", - "description": "Layer 'Post offices' shows post_office= with a fixed text, namely 'This shop is not a post partner' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines') Picking this answer will delete the key post_office.", + "description": "Layer 'Post offices' shows post_office= with a fixed text, namely 'This shop is not a post partner' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines') Picking this answer will delete the key post_office. (This is only shown if amenity!=post_office)", "value": "" }, { diff --git a/Docs/TagInfo/mapcomplete_benches.json b/Docs/TagInfo/mapcomplete_benches.json index f9681c1f1..7699abc9c 100644 --- a/Docs/TagInfo/mapcomplete_benches.json +++ b/Docs/TagInfo/mapcomplete_benches.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Picnic tables allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Picnic tables 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 'Picnic tables 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 'Picnic tables allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Picnic tables 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 'Picnic tables allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Picnic tables 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 'Picnic tables allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Picnic tables 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": "level", @@ -99,19 +103,23 @@ }, { "key": "image", - "description": "The layer 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches 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 'Benches 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 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches 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 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches 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 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches 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": "backrest", @@ -393,19 +401,23 @@ }, { "key": "image", - "description": "The layer 'Benches at public transport stops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches at public transport stops 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 'Benches at public transport stops 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 'Benches at public transport stops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches at public transport stops 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 'Benches at public transport stops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches at public transport stops 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 'Benches at public transport stops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches at public transport stops 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": "name", diff --git a/Docs/TagInfo/mapcomplete_bicycle_parkings.json b/Docs/TagInfo/mapcomplete_bicycle_parkings.json index b9465f249..df4dc31a1 100644 --- a/Docs/TagInfo/mapcomplete_bicycle_parkings.json +++ b/Docs/TagInfo/mapcomplete_bicycle_parkings.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Bike parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike parking 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 'Bike parking 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 'Bike parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike parking 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 'Bike parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike parking 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 'Bike parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike parking 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": "bicycle_parking", @@ -89,6 +93,11 @@ "description": "Layer 'Bike parking' shows bicycle_parking=lockers with a fixed text, namely 'A locker - the bicycles are enclosed completely individually or with a few bicycles together. The locker is too small to fit a person standing..' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle parkings')", "value": "lockers" }, + { + "key": "bicycle_parking", + "description": "Layer 'Bike parking' shows bicycle_parking=lean_and_stick with a fixed text, namely 'A lean-to bracket with possibility to use a lock through eyelet. The seat tube can be held by the stand by an anchor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle parkings')", + "value": "lean_and_stick" + }, { "key": "location", "description": "Layer 'Bike parking' shows location=underground with a fixed text, namely 'Underground parking' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle parkings')", @@ -144,7 +153,7 @@ }, { "key": "access", - "description": "Layer 'Bike parking' shows access=private with a fixed text, namely 'Access is limited to members of a school, company or organisation' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle parkings')", + "description": "Layer 'Bike parking' shows access=private with a fixed text, namely 'Private bicycle parking which is never available to the public, also not via a membership fee' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bicycle parkings')", "value": "private" }, { diff --git a/Docs/TagInfo/mapcomplete_bicycle_rental.json b/Docs/TagInfo/mapcomplete_bicycle_rental.json index 8d49cac91..e114f5dbd 100644 --- a/Docs/TagInfo/mapcomplete_bicycle_rental.json +++ b/Docs/TagInfo/mapcomplete_bicycle_rental.json @@ -34,19 +34,23 @@ }, { "key": "image", - "description": "The layer 'Bicycle rental allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle rental 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 'Bicycle rental 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 'Bicycle rental allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle rental 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 'Bicycle rental allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle rental 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 'Bicycle rental allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle rental 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": "shop", diff --git a/Docs/TagInfo/mapcomplete_bicyclelib.json b/Docs/TagInfo/mapcomplete_bicyclelib.json index 96920c0d0..504d2aea5 100644 --- a/Docs/TagInfo/mapcomplete_bicyclelib.json +++ b/Docs/TagInfo/mapcomplete_bicyclelib.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle library 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 'Bicycle library 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 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle library 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 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle library 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 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle library 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": "name", diff --git a/Docs/TagInfo/mapcomplete_binoculars.json b/Docs/TagInfo/mapcomplete_binoculars.json index c34188d61..d669ff4d7 100644 --- a/Docs/TagInfo/mapcomplete_binoculars.json +++ b/Docs/TagInfo/mapcomplete_binoculars.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Binoculars allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Binoculars 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 'Binoculars 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 'Binoculars allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Binoculars 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 'Binoculars allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Binoculars 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 'Binoculars allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Binoculars 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": "charge", diff --git a/Docs/TagInfo/mapcomplete_blind_osm.json b/Docs/TagInfo/mapcomplete_blind_osm.json index d9a9a3eb8..f5f406a43 100644 --- a/Docs/TagInfo/mapcomplete_blind_osm.json +++ b/Docs/TagInfo/mapcomplete_blind_osm.json @@ -111,19 +111,23 @@ }, { "key": "image", - "description": "The layer 'Cycleways and roads allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cycleways and roads 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 'Cycleways and roads 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 'Cycleways and roads allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cycleways and roads 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 'Cycleways and roads allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cycleways and roads 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 'Cycleways and roads allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cycleways and roads 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": "cycleway", @@ -623,19 +627,23 @@ }, { "key": "image", - "description": "The layer 'Crossings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Crossings 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 'Crossings 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 'Crossings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Crossings 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 'Crossings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Crossings 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 'Crossings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Crossings 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": "crossing", @@ -654,18 +662,87 @@ }, { "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" }, { - "key": "crossing_ref", - "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)", + "key": "crossing:markings", + "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" }, { - "key": "crossing_ref", - "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)", - "value": "" + "key": "crossing:markings", + "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": "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", @@ -793,19 +870,23 @@ }, { "key": "image", - "description": "The layer 'Kerbs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Kerbs 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 'Kerbs 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 'Kerbs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Kerbs 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 'Kerbs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Kerbs 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 'Kerbs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Kerbs 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": "kerb", @@ -881,19 +962,23 @@ }, { "key": "image", - "description": "The layer 'Transit Stops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Transit Stops 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 'Transit Stops 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 'Transit Stops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Transit Stops 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 'Transit Stops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Transit Stops 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 'Transit Stops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Transit Stops 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": "shelter", @@ -1021,19 +1106,23 @@ }, { "key": "image", - "description": "The layer 'Elevator allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Elevator 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 'Elevator 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 'Elevator allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Elevator 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 'Elevator allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Elevator 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 'Elevator allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Elevator 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": "level", @@ -1151,19 +1240,23 @@ }, { "key": "image", - "description": "The layer 'Stairs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Stairs 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 'Stairs 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 'Stairs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Stairs 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 'Stairs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Stairs 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 'Stairs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Stairs 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": "level", @@ -1267,6 +1360,132 @@ "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')", "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 '{contact:website}' (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 '{contact:website}' (in the mapcomplete.org theme 'OSM for the blind')" } ] } \ No newline at end of file diff --git a/Docs/TagInfo/mapcomplete_bookcases.json b/Docs/TagInfo/mapcomplete_bookcases.json index adb46e610..6453d66c6 100644 --- a/Docs/TagInfo/mapcomplete_bookcases.json +++ b/Docs/TagInfo/mapcomplete_bookcases.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Bookcases allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bookcases 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 'Bookcases 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 'Bookcases allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bookcases 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 'Bookcases allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bookcases 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 'Bookcases allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bookcases 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": "name", diff --git a/Docs/TagInfo/mapcomplete_cafes_and_pubs.json b/Docs/TagInfo/mapcomplete_cafes_and_pubs.json index a71bfa156..9ce7fd6ae 100644 --- a/Docs/TagInfo/mapcomplete_cafes_and_pubs.json +++ b/Docs/TagInfo/mapcomplete_cafes_and_pubs.json @@ -41,19 +41,23 @@ }, { "key": "image", - "description": "The layer 'Cafés and pubs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cafés and pubs 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 'Cafés and pubs 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 'Cafés and pubs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cafés and pubs 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 'Cafés and pubs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cafés and pubs 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 'Cafés and pubs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cafés and pubs 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": "level", @@ -315,19 +319,23 @@ }, { "key": "image", - "description": "The layer 'Outdoor Seating allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Outdoor Seating 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 'Outdoor Seating 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 'Outdoor Seating allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Outdoor Seating 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 'Outdoor Seating allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Outdoor Seating 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 'Outdoor Seating allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Outdoor Seating 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": "access", @@ -520,19 +528,23 @@ }, { "key": "image", - "description": "The layer 'Food Courts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Food Courts 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 'Food Courts 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 'Food Courts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Food Courts 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 'Food Courts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Food Courts 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 'Food Courts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Food Courts 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": "opening_hours", diff --git a/Docs/TagInfo/mapcomplete_campersite.json b/Docs/TagInfo/mapcomplete_campersite.json index 69eb26f4d..918800539 100644 --- a/Docs/TagInfo/mapcomplete_campersite.json +++ b/Docs/TagInfo/mapcomplete_campersite.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Camper sites allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Camper sites 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 'Camper sites 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 'Camper sites allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Camper sites 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 'Camper sites allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Camper sites 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 'Camper sites allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Camper sites 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": "name", @@ -155,19 +159,23 @@ }, { "key": "image", - "description": "The layer 'Sanitary dump stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sanitary dump stations 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 'Sanitary dump stations 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 'Sanitary dump stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sanitary dump stations 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 'Sanitary dump stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sanitary dump stations 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 'Sanitary dump stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sanitary dump stations 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": "fee", diff --git a/Docs/TagInfo/mapcomplete_charging_stations.json b/Docs/TagInfo/mapcomplete_charging_stations.json index a26326acd..943b3c275 100644 --- a/Docs/TagInfo/mapcomplete_charging_stations.json +++ b/Docs/TagInfo/mapcomplete_charging_stations.json @@ -36,19 +36,23 @@ }, { "key": "image", - "description": "The layer 'Charging stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Charging stations 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 'Charging stations 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 'Charging stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Charging stations 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 'Charging stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Charging stations 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 'Charging stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Charging stations 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": "bicycle", diff --git a/Docs/TagInfo/mapcomplete_circular_economy.json b/Docs/TagInfo/mapcomplete_circular_economy.json index c8f7e8922..b919d5122 100644 --- a/Docs/TagInfo/mapcomplete_circular_economy.json +++ b/Docs/TagInfo/mapcomplete_circular_economy.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Bookcases allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bookcases 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 'Bookcases 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 'Bookcases allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bookcases 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 'Bookcases allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bookcases 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 'Bookcases allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bookcases 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": "name", @@ -143,19 +147,23 @@ }, { "key": "image", - "description": "The layer 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle library 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 'Bicycle library 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 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle library 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 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle library 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 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle library 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": "name", @@ -252,19 +260,23 @@ }, { "key": "image", - "description": "The layer 'Bicycle pump and repair allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle pump and repair 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 'Bicycle pump and repair 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 'Bicycle pump and repair allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle pump and repair 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 'Bicycle pump and repair allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle pump and repair 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 'Bicycle pump and repair allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle pump and repair 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": "service:bicycle:tools", @@ -461,19 +473,23 @@ }, { "key": "image", - "description": "The layer 'Tool libraries allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Tool libraries 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 'Tool libraries 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 'Tool libraries allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Tool libraries 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 'Tool libraries allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Tool libraries 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 'Tool libraries allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Tool libraries 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": "phone", @@ -580,19 +596,23 @@ }, { "key": "image", - "description": "The layer 'Repair cafés and assisted repair workshops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Repair cafés and assisted repair workshops 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 'Repair cafés and assisted repair workshops 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 'Repair cafés and assisted repair workshops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Repair cafés and assisted repair workshops 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 'Repair cafés and assisted repair workshops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Repair cafés and assisted repair workshops 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 'Repair cafés and assisted repair workshops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Repair cafés and assisted repair workshops 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": "name", @@ -712,19 +732,23 @@ }, { "key": "image", - "description": "The layer 'Second hand shops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Second hand shops 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 'Second hand shops 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 'Second hand shops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Second hand shops 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 'Second hand shops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Second hand shops 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 'Second hand shops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Second hand shops 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": "name", @@ -1716,12 +1740,12 @@ }, { "key": "service:bicycle:retail", - "description": "Layer 'Second hand shops' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Circular economy') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", + "description": "Layer 'Second hand shops' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Circular economy') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself)", "value": "yes" }, { "key": "service:bicycle:retail", - "description": "Layer 'Second hand shops' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Circular economy') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", + "description": "Layer 'Second hand shops' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Circular economy') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself)", "value": "no" }, { @@ -1741,32 +1765,32 @@ }, { "key": "service:bicycle:repair", - "description": "Layer 'Second hand shops' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Circular economy') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Second hand shops' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Circular economy') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "yes" }, { "key": "service:bicycle:repair", - "description": "Layer 'Second hand shops' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Circular economy') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Second hand shops' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Circular economy') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "no" }, { "key": "service:bicycle:repair", - "description": "Layer 'Second hand shops' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Circular economy') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Second hand shops' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Circular economy') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "only_sold" }, { "key": "service:bicycle:repair", - "description": "Layer 'Second hand shops' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Circular economy') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Second hand shops' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Circular economy') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "brand" }, { "key": "service:bicycle:rental", - "description": "Layer 'Second hand shops' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Circular economy') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", + "description": "Layer 'Second hand shops' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Circular economy') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental)", "value": "yes" }, { "key": "service:bicycle:rental", - "description": "Layer 'Second hand shops' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Circular economy') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", + "description": "Layer 'Second hand shops' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Circular economy') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental)", "value": "no" }, { @@ -1893,21 +1917,21 @@ }, { "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Second hand shops' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'Circular economy') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)" + "description": "Layer 'Second hand shops' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'Circular economy') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)" }, { "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Second hand shops' 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 'Circular economy') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", + "description": "Layer 'Second hand shops' 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 'Circular economy') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", "value": "no" }, { "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Second hand shops' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Circular economy') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", + "description": "Layer 'Second hand shops' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Circular economy') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", "value": "yes" }, { "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Second hand shops' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Circular economy') 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 'Second hand shops' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Circular economy') 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": "" }, { diff --git a/Docs/TagInfo/mapcomplete_climbing.json b/Docs/TagInfo/mapcomplete_climbing.json index 822d17676..70fb87b9b 100644 --- a/Docs/TagInfo/mapcomplete_climbing.json +++ b/Docs/TagInfo/mapcomplete_climbing.json @@ -118,19 +118,23 @@ }, { "key": "image", - "description": "The layer 'Climbing gyms allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Climbing gyms 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 'Climbing gyms 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 'Climbing gyms allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Climbing gyms 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 'Climbing gyms allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Climbing gyms 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 'Climbing gyms allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Climbing gyms 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": "name", @@ -495,19 +499,23 @@ }, { "key": "image", - "description": "The layer 'Climbing routes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Climbing routes 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 'Climbing routes 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 'Climbing routes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Climbing routes 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 'Climbing routes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Climbing routes 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 'Climbing routes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Climbing routes 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": "name", @@ -555,19 +563,23 @@ }, { "key": "image", - "description": "The layer 'Climbing opportunities allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Climbing opportunities 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 'Climbing opportunities 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 'Climbing opportunities allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Climbing opportunities 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 'Climbing opportunities allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Climbing opportunities 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 'Climbing opportunities allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Climbing opportunities 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": "name", @@ -729,19 +741,23 @@ }, { "key": "image", - "description": "The layer 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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": "name", @@ -1733,12 +1749,12 @@ }, { "key": "service:bicycle:retail", - "description": "Layer 'Shop' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", + "description": "Layer 'Shop' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself)", "value": "yes" }, { "key": "service:bicycle:retail", - "description": "Layer 'Shop' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", + "description": "Layer 'Shop' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself)", "value": "no" }, { @@ -1758,32 +1774,32 @@ }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "yes" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "no" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "only_sold" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "brand" }, { "key": "service:bicycle:rental", - "description": "Layer 'Shop' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", + "description": "Layer 'Shop' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental)", "value": "yes" }, { "key": "service:bicycle:rental", - "description": "Layer 'Shop' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", + "description": "Layer 'Shop' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental)", "value": "no" }, { @@ -1910,21 +1926,21 @@ }, { "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Shop' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)" + "description": "Layer 'Shop' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)" }, { "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Shop' 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 'Climbing gyms, clubs and spots') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", + "description": "Layer 'Shop' 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 'Climbing gyms, clubs and spots') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", "value": "no" }, { "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", + "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", "value": "yes" }, { "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') 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 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') 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": "" }, { @@ -2071,19 +2087,23 @@ }, { "key": "image", - "description": "The layer 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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 'Toilets 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 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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": "level", @@ -2368,19 +2388,23 @@ }, { "key": "image", - "description": "The layer 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Drinking water 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 'Drinking water 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 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Drinking water 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 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Drinking water 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 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Drinking water 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": "operational_status", @@ -2590,19 +2614,23 @@ }, { "key": "image", - "description": "The layer 'Guideposts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Guideposts 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 'Guideposts 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 'Guideposts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Guideposts 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 'Guideposts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Guideposts 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 'Guideposts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Guideposts 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": "bicycle", diff --git a/Docs/TagInfo/mapcomplete_clock.json b/Docs/TagInfo/mapcomplete_clock.json index 18f1daa73..e868bc49e 100644 --- a/Docs/TagInfo/mapcomplete_clock.json +++ b/Docs/TagInfo/mapcomplete_clock.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Clocks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Clocks 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 'Clocks 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 'Clocks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Clocks 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 'Clocks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Clocks 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 'Clocks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Clocks 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": "support", @@ -42,9 +46,14 @@ }, { "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" }, + { + "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", "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')", @@ -75,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')", "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", - "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" }, { "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" }, { "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" }, { diff --git a/Docs/TagInfo/mapcomplete_cycle_infra.json b/Docs/TagInfo/mapcomplete_cycle_infra.json index 246f7f81d..342d51f87 100644 --- a/Docs/TagInfo/mapcomplete_cycle_infra.json +++ b/Docs/TagInfo/mapcomplete_cycle_infra.json @@ -111,19 +111,23 @@ }, { "key": "image", - "description": "The layer 'Cycleways and roads allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cycleways and roads 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 'Cycleways and roads 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 'Cycleways and roads allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cycleways and roads 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 'Cycleways and roads allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cycleways and roads 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 'Cycleways and roads allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cycleways and roads 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": "cycleway", @@ -623,19 +627,23 @@ }, { "key": "image", - "description": "The layer 'Barriers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Barriers 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 'Barriers 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 'Barriers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Barriers 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 'Barriers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Barriers 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 'Barriers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Barriers 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": "bicycle", @@ -734,19 +742,23 @@ }, { "key": "image", - "description": "The layer 'Crossings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Crossings 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 'Crossings 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 'Crossings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Crossings 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 'Crossings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Crossings 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 'Crossings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Crossings 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": "crossing", @@ -765,18 +777,87 @@ }, { "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" }, { - "key": "crossing_ref", - "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)", + "key": "crossing:markings", + "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" }, { - "key": "crossing_ref", - "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)", - "value": "" + "key": "crossing:markings", + "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": "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", @@ -919,19 +1000,23 @@ }, { "key": "image", - "description": "The layer 'Bicycle counters allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle counters 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 'Bicycle counters 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 'Bicycle counters allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle counters 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 'Bicycle counters allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle counters 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 'Bicycle counters allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle counters 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": "display", @@ -978,6 +1063,70 @@ { "key": "website", "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" } ] } \ No newline at end of file diff --git a/Docs/TagInfo/mapcomplete_cyclestreets.json b/Docs/TagInfo/mapcomplete_cyclestreets.json index cb9de7f7b..e6b1c0064 100644 --- a/Docs/TagInfo/mapcomplete_cyclestreets.json +++ b/Docs/TagInfo/mapcomplete_cyclestreets.json @@ -165,19 +165,23 @@ }, { "key": "image", - "description": "The layer 'Cyclestreets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cyclestreets 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 'Cyclestreets 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 'Cyclestreets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cyclestreets 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 'Cyclestreets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cyclestreets 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 'Cyclestreets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cyclestreets 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": "proposed:cyclestreet", @@ -334,19 +338,23 @@ }, { "key": "image", - "description": "The layer 'Future cyclestreet allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Future cyclestreet 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 'Future cyclestreet 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 'Future cyclestreet allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Future cyclestreet 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 'Future cyclestreet allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Future cyclestreet 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 'Future cyclestreet allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Future cyclestreet 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": "highway", @@ -508,19 +516,23 @@ }, { "key": "image", - "description": "The layer 'All streets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'All streets 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 'All streets 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 'All streets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'All streets 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 'All streets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'All streets 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 'All streets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'All streets 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" } ] } \ No newline at end of file diff --git a/Docs/TagInfo/mapcomplete_cyclofix.json b/Docs/TagInfo/mapcomplete_cyclofix.json index 5f17f0831..ae42f740d 100644 --- a/Docs/TagInfo/mapcomplete_cyclofix.json +++ b/Docs/TagInfo/mapcomplete_cyclofix.json @@ -31,19 +31,23 @@ }, { "key": "image", - "description": "The layer 'Repair cafés and assisted repair workshops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Repair cafés and assisted repair workshops 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 'Repair cafés and assisted repair workshops 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 'Repair cafés and assisted repair workshops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Repair cafés and assisted repair workshops 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 'Repair cafés and assisted repair workshops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Repair cafés and assisted repair workshops 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 'Repair cafés and assisted repair workshops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Repair cafés and assisted repair workshops 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": "name", @@ -179,19 +183,23 @@ }, { "key": "image", - "description": "The layer 'Bike cafe allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike cafe 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 'Bike cafe 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 'Bike cafe allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike cafe 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 'Bike cafe allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike cafe 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 'Bike cafe allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike cafe 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": "name", @@ -305,19 +313,23 @@ }, { "key": "image", - "description": "The layer 'Bike repair/shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike repair/shop 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 'Bike repair/shop 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 'Bike repair/shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike repair/shop 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 'Bike repair/shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike repair/shop 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 'Bike repair/shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike repair/shop 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": "name", @@ -1309,12 +1321,12 @@ }, { "key": "service:bicycle:retail", - "description": "Layer 'Bike repair/shop' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", + "description": "Layer 'Bike repair/shop' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself)", "value": "yes" }, { "key": "service:bicycle:retail", - "description": "Layer 'Bike repair/shop' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", + "description": "Layer 'Bike repair/shop' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself)", "value": "no" }, { @@ -1334,32 +1346,32 @@ }, { "key": "service:bicycle:repair", - "description": "Layer 'Bike repair/shop' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Bike repair/shop' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "yes" }, { "key": "service:bicycle:repair", - "description": "Layer 'Bike repair/shop' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Bike repair/shop' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "no" }, { "key": "service:bicycle:repair", - "description": "Layer 'Bike repair/shop' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Bike repair/shop' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "only_sold" }, { "key": "service:bicycle:repair", - "description": "Layer 'Bike repair/shop' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Bike repair/shop' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "brand" }, { "key": "service:bicycle:rental", - "description": "Layer 'Bike repair/shop' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", + "description": "Layer 'Bike repair/shop' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental)", "value": "yes" }, { "key": "service:bicycle:rental", - "description": "Layer 'Bike repair/shop' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", + "description": "Layer 'Bike repair/shop' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental)", "value": "no" }, { @@ -1486,21 +1498,21 @@ }, { "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Bike repair/shop' 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 repair/shop' 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", - "description": "Layer 'Bike repair/shop' 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 repair/shop' 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" }, { "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Bike repair/shop' 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 repair/shop' 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" }, { "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Bike repair/shop' 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 repair/shop' 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": "" }, { @@ -1647,19 +1659,23 @@ }, { "key": "image", - "description": "The layer 'Bicycle pump and repair allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle pump and repair 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 'Bicycle pump and repair 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 'Bicycle pump and repair allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle pump and repair 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 'Bicycle pump and repair allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle pump and repair 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 'Bicycle pump and repair allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle pump and repair 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": "service:bicycle:tools", @@ -1866,19 +1882,23 @@ }, { "key": "image", - "description": "The layer 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Drinking water 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 'Drinking water 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 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Drinking water 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 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Drinking water 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 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Drinking water 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": "operational_status", @@ -2128,19 +2148,23 @@ }, { "key": "image", - "description": "The layer 'Bike-related object allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike-related object 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 'Bike-related object 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 'Bike-related object allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike-related object 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 'Bike-related object allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike-related object 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 'Bike-related object allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike-related object 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": "description", @@ -2198,64 +2222,83 @@ "description": "The MapComplete theme Cyclofix - a map for cyclists has a layer Bike cleaning service showing features with this tag", "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", "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))" }, { "key": "image", - "description": "The layer 'Bike cleaning service allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike cleaning service 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 'Bike cleaning service 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 'Bike cleaning service allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike cleaning service 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 'Bike cleaning service allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike cleaning service 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 'Bike cleaning service allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike cleaning service 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": "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", - "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" }, { "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" }, { "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": "" }, { "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", - "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" }, { "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" }, + { + "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", "description": "The MapComplete theme Cyclofix - a map for cyclists has a layer Bicycle rental showing features with this tag", @@ -2280,19 +2323,23 @@ }, { "key": "image", - "description": "The layer 'Bicycle rental allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle rental 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 'Bicycle rental 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 'Bicycle rental allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle rental 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 'Bicycle rental allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle rental 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 'Bicycle rental allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle rental 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": "shop", @@ -2499,19 +2546,23 @@ }, { "key": "image", - "description": "The layer 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle library 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 'Bicycle library 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 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle library 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 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle library 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 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle library 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": "name", @@ -2608,19 +2659,23 @@ }, { "key": "image", - "description": "The layer 'Bike parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike parking 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 'Bike parking 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 'Bike parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike parking 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 'Bike parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike parking 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 'Bike parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike parking 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": "bicycle_parking", @@ -2676,6 +2731,11 @@ "description": "Layer 'Bike parking' shows bicycle_parking=lockers with a fixed text, namely 'A locker - the bicycles are enclosed completely individually or with a few bicycles together. The locker is too small to fit a person standing..' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')", "value": "lockers" }, + { + "key": "bicycle_parking", + "description": "Layer 'Bike parking' shows bicycle_parking=lean_and_stick with a fixed text, namely 'A lean-to bracket with possibility to use a lock through eyelet. The seat tube can be held by the stand by an anchor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')", + "value": "lean_and_stick" + }, { "key": "location", "description": "Layer 'Bike parking' shows location=underground with a fixed text, namely 'Underground parking' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')", @@ -2731,7 +2791,7 @@ }, { "key": "access", - "description": "Layer 'Bike parking' shows access=private with a fixed text, namely 'Access is limited to members of a school, company or organisation' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')", + "description": "Layer 'Bike parking' shows access=private with a fixed text, namely 'Private bicycle parking which is never available to the public, also not via a membership fee' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')", "value": "private" }, { @@ -2853,19 +2913,23 @@ }, { "key": "image", - "description": "The layer 'Charging stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Charging stations 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 'Charging stations 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 'Charging stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Charging stations 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 'Charging stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Charging stations 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 'Charging stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Charging stations 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": "bicycle", @@ -4314,19 +4378,23 @@ }, { "key": "image", - "description": "The layer 'Vending Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Vending Machines 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 'Vending Machines 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 'Vending Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Vending Machines 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 'Vending Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Vending Machines 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 'Vending Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Vending Machines 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": "level", @@ -4786,19 +4854,23 @@ }, { "key": "image", - "description": "The layer 'Bicycle counters allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle counters 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 'Bicycle counters 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 'Bicycle counters allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle counters 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 'Bicycle counters allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle counters 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 'Bicycle counters allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bicycle counters 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": "display", diff --git a/Docs/TagInfo/mapcomplete_disaster_response.json b/Docs/TagInfo/mapcomplete_disaster_response.json index 8553c4a7b..5fc64d750 100644 --- a/Docs/TagInfo/mapcomplete_disaster_response.json +++ b/Docs/TagInfo/mapcomplete_disaster_response.json @@ -131,19 +131,23 @@ }, { "key": "image", - "description": "The layer 'Map of fire stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of fire stations 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 'Map of fire stations 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 'Map of fire stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of fire stations 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 'Map of fire stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of fire stations 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 'Map of fire stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of fire stations 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": "emergency", @@ -156,19 +160,23 @@ }, { "key": "image", - "description": "The layer 'Disaster response organizations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Disaster response organizations 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 'Disaster response organizations 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 'Disaster response organizations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Disaster response organizations 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 'Disaster response organizations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Disaster response organizations 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 'Disaster response organizations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Disaster response organizations 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": "website", @@ -197,19 +205,23 @@ }, { "key": "image", - "description": "The layer 'Police stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Police stations 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 'Police stations 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 'Police stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Police stations 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 'Police stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Police stations 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 'Police stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Police stations 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": "name", @@ -287,19 +299,23 @@ }, { "key": "image", - "description": "The layer 'Map of fire extinguishers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of fire extinguishers 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 'Map of fire extinguishers 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 'Map of fire extinguishers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of fire extinguishers 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 'Map of fire extinguishers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of fire extinguishers 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 'Map of fire extinguishers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of fire extinguishers 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": "emergency", @@ -312,19 +328,23 @@ }, { "key": "image", - "description": "The layer 'Emergency assembly points allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Emergency assembly points 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 'Emergency assembly points 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 'Emergency assembly points allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Emergency assembly points 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 'Emergency assembly points allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Emergency assembly points 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 'Emergency assembly points allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Emergency assembly points 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": "name", @@ -365,19 +385,23 @@ }, { "key": "image", - "description": "The layer 'Defibrillators allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Defibrillators 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 'Defibrillators 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 'Defibrillators allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Defibrillators 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 'Defibrillators allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Defibrillators 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 'Defibrillators allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Defibrillators 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": "indoor", @@ -631,19 +655,23 @@ }, { "key": "image", - "description": "The layer 'Map of hydrants allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of hydrants 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 'Map of hydrants 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 'Map of hydrants allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of hydrants 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 'Map of hydrants allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of hydrants 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 'Map of hydrants allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of hydrants 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": "amenity", @@ -656,19 +684,23 @@ }, { "key": "image", - "description": "The layer 'Doctors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Doctors 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 'Doctors 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 'Doctors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Doctors 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 'Doctors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Doctors 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 'Doctors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Doctors 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": "name", @@ -795,19 +827,23 @@ }, { "key": "image", - "description": "The layer 'Map of ambulance stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of ambulance stations 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 'Map of ambulance stations 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 'Map of ambulance stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of ambulance stations 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 'Map of ambulance stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of ambulance stations 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 'Map of ambulance stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of ambulance stations 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": "amenity", @@ -820,19 +856,23 @@ }, { "key": "image", - "description": "The layer 'Pharmacies allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Pharmacies 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 'Pharmacies 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 'Pharmacies allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Pharmacies 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 'Pharmacies allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Pharmacies 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 'Pharmacies allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Pharmacies 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": "name", diff --git a/Docs/TagInfo/mapcomplete_drinking_water.json b/Docs/TagInfo/mapcomplete_drinking_water.json index 0d617c68c..df79890e2 100644 --- a/Docs/TagInfo/mapcomplete_drinking_water.json +++ b/Docs/TagInfo/mapcomplete_drinking_water.json @@ -31,19 +31,23 @@ }, { "key": "image", - "description": "The layer 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Drinking water 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 'Drinking water 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 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Drinking water 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 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Drinking water 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 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Drinking water 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": "operational_status", diff --git a/Docs/TagInfo/mapcomplete_education.json b/Docs/TagInfo/mapcomplete_education.json index 3315ebfe0..2a9763bc5 100644 --- a/Docs/TagInfo/mapcomplete_education.json +++ b/Docs/TagInfo/mapcomplete_education.json @@ -123,10 +123,58 @@ "key": "id", "description": "Layer 'Primary and secondary schools' 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 'Education') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" }, + { + "key": "image", + "description": "The layer 'Primary and secondary schools 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 'Primary and secondary schools 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 'Primary and secondary schools 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 'Primary and secondary schools 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 'Primary and secondary schools 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": "name", "description": "Layer 'Primary and secondary schools' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Education')" }, + { + "key": "phone", + "description": "Layer 'Primary and secondary schools' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Education')" + }, + { + "key": "contact:phone", + "description": "Layer 'Primary and secondary schools' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Education')" + }, + { + "key": "email", + "description": "Layer 'Primary and secondary schools' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Education')" + }, + { + "key": "contact:email", + "description": "Layer 'Primary and secondary schools' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Education')" + }, + { + "key": "operator:email", + "description": "Layer 'Primary and secondary schools' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Education')" + }, + { + "key": "website", + "description": "Layer 'Primary and secondary schools' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Education')" + }, + { + "key": "contact:website", + "description": "Layer 'Primary and secondary schools' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Education')" + }, { "key": "capacity", "description": "Layer 'Primary and secondary schools' shows and asks freeform values for key 'capacity' (in the mapcomplete.org theme 'Education')" @@ -284,34 +332,6 @@ "description": "Layer 'Primary and secondary schools' shows school:for=special_needs with a fixed text, namely 'This is a school for students with special needs' and allows to pick this as a default answer (in the mapcomplete.org theme 'Education') (This is only shown if school:for~.+)", "value": "special_needs" }, - { - "key": "website", - "description": "Layer 'Primary and secondary schools' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Education')" - }, - { - "key": "contact:website", - "description": "Layer 'Primary and secondary schools' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Education')" - }, - { - "key": "phone", - "description": "Layer 'Primary and secondary schools' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Education')" - }, - { - "key": "contact:phone", - "description": "Layer 'Primary and secondary schools' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Education')" - }, - { - "key": "email", - "description": "Layer 'Primary and secondary schools' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Education')" - }, - { - "key": "contact:email", - "description": "Layer 'Primary and secondary schools' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Education')" - }, - { - "key": "operator:email", - "description": "Layer 'Primary and secondary schools' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Education')" - }, { "key": "amenity", "description": "The MapComplete theme Education has a layer Kindergartens and childcare showing features with this tag", diff --git a/Docs/TagInfo/mapcomplete_elongated_coin.json b/Docs/TagInfo/mapcomplete_elongated_coin.json index da2860451..5b03a498f 100644 --- a/Docs/TagInfo/mapcomplete_elongated_coin.json +++ b/Docs/TagInfo/mapcomplete_elongated_coin.json @@ -25,19 +25,23 @@ }, { "key": "image", - "description": "The layer 'Penny Presses allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Penny Presses 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 'Penny Presses 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 'Penny Presses allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Penny Presses 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 'Penny Presses allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Penny Presses 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 'Penny Presses allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Penny Presses 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": "opening_hours", @@ -336,19 +340,23 @@ }, { "key": "image", - "description": "The layer 'Souvenir Coin Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Souvenir Coin Machines 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 'Souvenir Coin Machines 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 'Souvenir Coin Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Souvenir Coin Machines 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 'Souvenir Coin Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Souvenir Coin Machines 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 'Souvenir Coin Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Souvenir Coin Machines 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": "opening_hours", @@ -578,19 +586,23 @@ }, { "key": "image", - "description": "The layer 'Souvenir Banknote Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Souvenir Banknote Machines 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 'Souvenir Banknote Machines 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 'Souvenir Banknote Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Souvenir Banknote Machines 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 'Souvenir Banknote Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Souvenir Banknote Machines 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 'Souvenir Banknote Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Souvenir Banknote Machines 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": "opening_hours", diff --git a/Docs/TagInfo/mapcomplete_etymology.json b/Docs/TagInfo/mapcomplete_etymology.json index 148cd9a72..c128e7b44 100644 --- a/Docs/TagInfo/mapcomplete_etymology.json +++ b/Docs/TagInfo/mapcomplete_etymology.json @@ -24,19 +24,23 @@ }, { "key": "image", - "description": "The layer 'Has etymology shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Has etymology shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" + }, + { + "key": "panoramax", + "description": "The layer 'Has etymology shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "mapillary", - "description": "The layer 'Has etymology shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Has etymology shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikidata", - "description": "The layer 'Has etymology shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Has etymology shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikipedia", - "description": "The layer 'Has etymology shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Has etymology shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "name:etymology:wikidata", @@ -53,19 +57,23 @@ }, { "key": "image", - "description": "The layer 'Has etymology allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Has etymology 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 'Has etymology 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 'Has etymology allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Has etymology 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 'Has etymology allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Has etymology 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 'Has etymology allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Has etymology 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": "name", @@ -81,19 +89,23 @@ }, { "key": "image", - "description": "The layer 'Streets without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Streets without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" + }, + { + "key": "panoramax", + "description": "The layer 'Streets without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "mapillary", - "description": "The layer 'Streets without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Streets without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikidata", - "description": "The layer 'Streets without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Streets without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikipedia", - "description": "The layer 'Streets without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Streets without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "name:etymology:wikidata", @@ -110,19 +122,23 @@ }, { "key": "image", - "description": "The layer 'Streets without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Streets without etymology information 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 'Streets without etymology information 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 'Streets without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Streets without etymology information 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 'Streets without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Streets without etymology information 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 'Streets without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Streets without etymology information 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": "name", @@ -144,19 +160,23 @@ }, { "key": "image", - "description": "The layer 'Parks and forests without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parks and forests without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" + }, + { + "key": "panoramax", + "description": "The layer 'Parks and forests without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "mapillary", - "description": "The layer 'Parks and forests without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parks and forests without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikidata", - "description": "The layer 'Parks and forests without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parks and forests without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikipedia", - "description": "The layer 'Parks and forests without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parks and forests without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "name:etymology:wikidata", @@ -173,19 +193,23 @@ }, { "key": "image", - "description": "The layer 'Parks and forests without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parks and forests without etymology information 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 'Parks and forests without etymology information 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 'Parks and forests without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parks and forests without etymology information 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 'Parks and forests without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parks and forests without etymology information 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 'Parks and forests without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parks and forests without etymology information 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": "name", @@ -222,19 +246,23 @@ }, { "key": "image", - "description": "The layer 'Education institutions without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Education institutions without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" + }, + { + "key": "panoramax", + "description": "The layer 'Education institutions without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "mapillary", - "description": "The layer 'Education institutions without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Education institutions without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikidata", - "description": "The layer 'Education institutions without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Education institutions without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikipedia", - "description": "The layer 'Education institutions without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Education institutions without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "name:etymology:wikidata", @@ -251,19 +279,23 @@ }, { "key": "image", - "description": "The layer 'Education institutions without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Education institutions without etymology information 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 'Education institutions without etymology information 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 'Education institutions without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Education institutions without etymology information 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 'Education institutions without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Education institutions without etymology information 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 'Education institutions without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Education institutions without etymology information 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": "name", @@ -300,19 +332,23 @@ }, { "key": "image", - "description": "The layer 'Cultural places without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cultural places without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" + }, + { + "key": "panoramax", + "description": "The layer 'Cultural places without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "mapillary", - "description": "The layer 'Cultural places without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cultural places without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikidata", - "description": "The layer 'Cultural places without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cultural places without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikipedia", - "description": "The layer 'Cultural places without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cultural places without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "name:etymology:wikidata", @@ -329,19 +365,23 @@ }, { "key": "image", - "description": "The layer 'Cultural places without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cultural places without etymology information 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 'Cultural places without etymology information 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 'Cultural places without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cultural places without etymology information 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 'Cultural places without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cultural places without etymology information 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 'Cultural places without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cultural places without etymology information 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": "name", @@ -373,19 +413,23 @@ }, { "key": "image", - "description": "The layer 'Touristic places without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Touristic places without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" + }, + { + "key": "panoramax", + "description": "The layer 'Touristic places without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "mapillary", - "description": "The layer 'Touristic places without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Touristic places without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikidata", - "description": "The layer 'Touristic places without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Touristic places without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikipedia", - "description": "The layer 'Touristic places without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Touristic places without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "name:etymology:wikidata", @@ -402,19 +446,23 @@ }, { "key": "image", - "description": "The layer 'Touristic places without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Touristic places without etymology information 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 'Touristic places without etymology information 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 'Touristic places without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Touristic places without etymology information 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 'Touristic places without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Touristic places without etymology information 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 'Touristic places without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Touristic places without etymology information 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": "name", @@ -441,19 +489,23 @@ }, { "key": "image", - "description": "The layer 'Health and social places without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Health and social places without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" + }, + { + "key": "panoramax", + "description": "The layer 'Health and social places without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "mapillary", - "description": "The layer 'Health and social places without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Health and social places without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikidata", - "description": "The layer 'Health and social places without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Health and social places without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikipedia", - "description": "The layer 'Health and social places without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Health and social places without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "name:etymology:wikidata", @@ -470,19 +522,23 @@ }, { "key": "image", - "description": "The layer 'Health and social places without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Health and social places without etymology information 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 'Health and social places without etymology information 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 'Health and social places without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Health and social places without etymology information 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 'Health and social places without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Health and social places without etymology information 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 'Health and social places without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Health and social places without etymology information 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": "name", @@ -509,19 +565,23 @@ }, { "key": "image", - "description": "The layer 'Sport places without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sport places without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" + }, + { + "key": "panoramax", + "description": "The layer 'Sport places without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "mapillary", - "description": "The layer 'Sport places without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sport places without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikidata", - "description": "The layer 'Sport places without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sport places without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikipedia", - "description": "The layer 'Sport places without etymology information shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sport places without etymology information shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "name:etymology:wikidata", @@ -538,19 +598,23 @@ }, { "key": "image", - "description": "The layer 'Sport places without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sport places without etymology information 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 'Sport places without etymology information 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 'Sport places without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sport places without etymology information 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 'Sport places without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sport places without etymology information 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 'Sport places without etymology information allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sport places without etymology information 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" } ] } \ No newline at end of file diff --git a/Docs/TagInfo/mapcomplete_facadegardens.json b/Docs/TagInfo/mapcomplete_facadegardens.json index c69fe709d..5c9a21e11 100644 --- a/Docs/TagInfo/mapcomplete_facadegardens.json +++ b/Docs/TagInfo/mapcomplete_facadegardens.json @@ -26,19 +26,23 @@ }, { "key": "image", - "description": "The layer 'Facade gardens allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Facade gardens 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 'Facade gardens 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 'Facade gardens allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Facade gardens 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 'Facade gardens allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Facade gardens 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 'Facade gardens allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Facade gardens 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": "direction", diff --git a/Docs/TagInfo/mapcomplete_fireplace.json b/Docs/TagInfo/mapcomplete_fireplace.json index b05847c14..26b5eb5df 100644 --- a/Docs/TagInfo/mapcomplete_fireplace.json +++ b/Docs/TagInfo/mapcomplete_fireplace.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Firepit allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Firepit 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 'Firepit 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 'Firepit allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Firepit 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 'Firepit allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Firepit 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 'Firepit allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Firepit 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": "access", @@ -91,19 +95,23 @@ }, { "key": "image", - "description": "The layer 'BBQ allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'BBQ 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 'BBQ 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 'BBQ allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'BBQ 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 'BBQ allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'BBQ 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 'BBQ allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'BBQ 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": "access", diff --git a/Docs/TagInfo/mapcomplete_food.json b/Docs/TagInfo/mapcomplete_food.json index a9d15234a..480da14fe 100644 --- a/Docs/TagInfo/mapcomplete_food.json +++ b/Docs/TagInfo/mapcomplete_food.json @@ -26,19 +26,23 @@ }, { "key": "image", - "description": "The layer 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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": "name", @@ -256,35 +260,43 @@ }, { "key": "image", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" + }, + { + "key": "panoramax", + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "mapillary", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikidata", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikipedia", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "image", - "description": "The layer 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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": "website:menu", @@ -327,7 +339,7 @@ }, { "key": "delivery", - "description": "Layer 'Restaurants and fast food' shows delivery=yes with a fixed text, namely 'This business does home delivery (eventually via a third party)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food')", + "description": "Layer 'Restaurants and fast food' shows delivery=yes with a fixed text, namely 'This business does home delivery (possibly via a third party)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food')", "value": "yes" }, { @@ -405,6 +417,101 @@ "description": "Layer 'Restaurants and fast food' shows diet:halal=only with a fixed text, namely 'Only halal options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine!=friture)", "value": "only" }, + { + "key": "organic", + "description": "Layer 'Restaurants and fast food' shows organic=no with a fixed text, namely 'There are no organic options available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine!=friture)", + "value": "no" + }, + { + "key": "organic", + "description": "Layer 'Restaurants and fast food' shows organic=yes with a fixed text, namely 'There is an organic menu' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine!=friture)", + "value": "yes" + }, + { + "key": "organic", + "description": "Layer 'Restaurants and fast food' shows organic=only with a fixed text, namely 'Only organic options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine!=friture)", + "value": "only" + }, + { + "key": "diet:vegetarian", + "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=only with a fixed text, namely 'Serves only vegetarian snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", + "value": "only" + }, + { + "key": "diet:vegetarian", + "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=yes with a fixed text, namely 'Vegetarian snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", + "value": "yes" + }, + { + "key": "diet:vegetarian", + "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=limited with a fixed text, namely 'Only a small selection of snacks are vegetarian' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", + "value": "limited" + }, + { + "key": "diet:vegetarian", + "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=no with a fixed text, namely 'No vegetarian snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", + "value": "no" + }, + { + "key": "diet:vegan", + "description": "Layer 'Restaurants and fast food' shows diet:vegan=only with a fixed text, namely 'Serves only vegan snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", + "value": "only" + }, + { + "key": "diet:vegan", + "description": "Layer 'Restaurants and fast food' shows diet:vegan=yes with a fixed text, namely 'Vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", + "value": "yes" + }, + { + "key": "diet:vegan", + "description": "Layer 'Restaurants and fast food' shows diet:vegan=limited with a fixed text, namely 'A small selection of vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", + "value": "limited" + }, + { + "key": "diet:vegan", + "description": "Layer 'Restaurants and fast food' shows diet:vegan=no with a fixed text, namely 'No vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", + "value": "no" + }, + { + "key": "organic", + "description": "Layer 'Restaurants and fast food' shows organic=yes with a fixed text, namely 'Organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", + "value": "yes" + }, + { + "key": "organic", + "description": "Layer 'Restaurants and fast food' shows organic=no with a fixed text, namely 'No organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", + "value": "no" + }, + { + "key": "organic", + "description": "Layer 'Restaurants and fast food' shows organic=only with a fixed text, namely 'Only organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", + "value": "only" + }, + { + "key": "friture:oil", + "description": "Layer 'Restaurants and fast food' shows friture:oil=vegetable with a fixed text, namely 'The frying is done with vegetable oil' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", + "value": "vegetable" + }, + { + "key": "friture:oil", + "description": "Layer 'Restaurants and fast food' shows friture:oil=animal with a fixed text, namely 'The frying is done with animal oil' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", + "value": "animal" + }, + { + "key": "reusable_packaging:accept", + "description": "Layer 'Restaurants and fast food' shows reusable_packaging:accept=yes with a fixed text, namely 'You can bring your own containers to get your order, saving on single-use packaging material and thus waste' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", + "value": "yes" + }, + { + "key": "reusable_packaging:accept", + "description": "Layer 'Restaurants and fast food' shows reusable_packaging:accept=no with a fixed text, namely 'Bringing your own container is not allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", + "value": "no" + }, + { + "key": "reusable_packaging:accept", + "description": "Layer 'Restaurants and fast food' shows reusable_packaging:accept=only with a fixed text, namely 'You must bring your own container to order here.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", + "value": "only" + }, { "key": "diet:sugar_free", "description": "Layer 'Restaurants and fast food' shows diet:sugar_free=only with a fixed text, namely 'This shop only sells sugar free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food')", @@ -465,101 +572,6 @@ "description": "Layer 'Restaurants and fast food' shows diet:lactose_free=no with a fixed text, namely 'No lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food')", "value": "no" }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=no with a fixed text, namely 'There are no organic options available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine!=friture)", - "value": "no" - }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=yes with a fixed text, namely 'There is an organic menu' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine!=friture)", - "value": "yes" - }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=only with a fixed text, namely 'Only organic options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine!=friture)", - "value": "only" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=only with a fixed text, namely 'Serves only vegetarian snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", - "value": "only" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=yes with a fixed text, namely 'Vegetarian snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=limited with a fixed text, namely 'Only a small selection of snacks are vegetarian' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", - "value": "limited" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=no with a fixed text, namely 'No vegetarian snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "diet:vegan", - "description": "Layer 'Restaurants and fast food' shows diet:vegan=only with a fixed text, namely 'Servers only vegan snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", - "value": "only" - }, - { - "key": "diet:vegan", - "description": "Layer 'Restaurants and fast food' shows diet:vegan=yes with a fixed text, namely 'Vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "diet:vegan", - "description": "Layer 'Restaurants and fast food' shows diet:vegan=limited with a fixed text, namely 'A small selection of vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", - "value": "limited" - }, - { - "key": "diet:vegan", - "description": "Layer 'Restaurants and fast food' shows diet:vegan=no with a fixed text, namely 'No vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=yes with a fixed text, namely 'Organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=no with a fixed text, namely 'No organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=only with a fixed text, namely 'Only organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", - "value": "only" - }, - { - "key": "friture:oil", - "description": "Layer 'Restaurants and fast food' shows friture:oil=vegetable with a fixed text, namely 'The frying is done with vegetable oil' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", - "value": "vegetable" - }, - { - "key": "friture:oil", - "description": "Layer 'Restaurants and fast food' shows friture:oil=animal with a fixed text, namely 'The frying is done with animal oil' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", - "value": "animal" - }, - { - "key": "reusable_packaging:accept", - "description": "Layer 'Restaurants and fast food' shows reusable_packaging:accept=yes with a fixed text, namely 'You can bring your own containers to get your order, saving on single-use packaging material and thus waste' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "reusable_packaging:accept", - "description": "Layer 'Restaurants and fast food' shows reusable_packaging:accept=no with a fixed text, namely 'Bringing your own container is not allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "reusable_packaging:accept", - "description": "Layer 'Restaurants and fast food' shows reusable_packaging:accept=only with a fixed text, namely 'You must bring your own container to order here.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if cuisine=friture)", - "value": "only" - }, { "key": "smoking", "description": "Layer 'Restaurants and fast food' shows smoking=yes with a fixed text, namely 'Smoking is allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Restaurants and fast food') (This is only shown if _country!~^(al|be)$)", @@ -685,19 +697,23 @@ }, { "key": "image", - "description": "The layer 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ice cream parlors 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 'Ice cream parlors 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 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ice cream parlors 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 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ice cream parlors 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 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ice cream parlors 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": "name", @@ -866,19 +882,23 @@ }, { "key": "image", - "description": "The layer 'Outdoor Seating allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Outdoor Seating 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 'Outdoor Seating 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 'Outdoor Seating allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Outdoor Seating 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 'Outdoor Seating allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Outdoor Seating 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 'Outdoor Seating allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Outdoor Seating 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": "access", @@ -1071,19 +1091,23 @@ }, { "key": "image", - "description": "The layer 'Food Courts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Food Courts 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 'Food Courts 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 'Food Courts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Food Courts 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 'Food Courts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Food Courts 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 'Food Courts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Food Courts 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": "opening_hours", diff --git a/Docs/TagInfo/mapcomplete_fritures.json b/Docs/TagInfo/mapcomplete_fritures.json index 26e8bfbfe..1130d67ea 100644 --- a/Docs/TagInfo/mapcomplete_fritures.json +++ b/Docs/TagInfo/mapcomplete_fritures.json @@ -30,19 +30,23 @@ }, { "key": "image", - "description": "The layer 'Fries shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Fries shop 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 'Fries shop 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 'Fries shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Fries shop 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 'Fries shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Fries shop 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 'Fries shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Fries shop 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": "name", @@ -260,35 +264,43 @@ }, { "key": "image", - "description": "The layer 'Fries shop shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Fries shop shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" + }, + { + "key": "panoramax", + "description": "The layer 'Fries shop shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "mapillary", - "description": "The layer 'Fries shop shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Fries shop shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikidata", - "description": "The layer 'Fries shop shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Fries shop shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikipedia", - "description": "The layer 'Fries shop shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Fries shop shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "image", - "description": "The layer 'Fries shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Fries shop 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 'Fries shop 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 'Fries shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Fries shop 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 'Fries shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Fries shop 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 'Fries shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Fries shop 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": "website:menu", @@ -331,7 +343,7 @@ }, { "key": "delivery", - "description": "Layer 'Fries shop' shows delivery=yes with a fixed text, namely 'This business does home delivery (eventually via a third party)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops')", + "description": "Layer 'Fries shop' shows delivery=yes with a fixed text, namely 'This business does home delivery (possibly via a third party)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops')", "value": "yes" }, { @@ -409,6 +421,101 @@ "description": "Layer 'Fries shop' shows diet:halal=only with a fixed text, namely 'Only halal options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine!=friture)", "value": "only" }, + { + "key": "organic", + "description": "Layer 'Fries shop' shows organic=no with a fixed text, namely 'There are no organic options available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine!=friture)", + "value": "no" + }, + { + "key": "organic", + "description": "Layer 'Fries shop' shows organic=yes with a fixed text, namely 'There is an organic menu' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine!=friture)", + "value": "yes" + }, + { + "key": "organic", + "description": "Layer 'Fries shop' shows organic=only with a fixed text, namely 'Only organic options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine!=friture)", + "value": "only" + }, + { + "key": "diet:vegetarian", + "description": "Layer 'Fries shop' shows diet:vegetarian=only with a fixed text, namely 'Serves only vegetarian snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", + "value": "only" + }, + { + "key": "diet:vegetarian", + "description": "Layer 'Fries shop' shows diet:vegetarian=yes with a fixed text, namely 'Vegetarian snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", + "value": "yes" + }, + { + "key": "diet:vegetarian", + "description": "Layer 'Fries shop' shows diet:vegetarian=limited with a fixed text, namely 'Only a small selection of snacks are vegetarian' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", + "value": "limited" + }, + { + "key": "diet:vegetarian", + "description": "Layer 'Fries shop' shows diet:vegetarian=no with a fixed text, namely 'No vegetarian snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", + "value": "no" + }, + { + "key": "diet:vegan", + "description": "Layer 'Fries shop' shows diet:vegan=only with a fixed text, namely 'Serves only vegan snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", + "value": "only" + }, + { + "key": "diet:vegan", + "description": "Layer 'Fries shop' shows diet:vegan=yes with a fixed text, namely 'Vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", + "value": "yes" + }, + { + "key": "diet:vegan", + "description": "Layer 'Fries shop' shows diet:vegan=limited with a fixed text, namely 'A small selection of vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", + "value": "limited" + }, + { + "key": "diet:vegan", + "description": "Layer 'Fries shop' shows diet:vegan=no with a fixed text, namely 'No vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", + "value": "no" + }, + { + "key": "organic", + "description": "Layer 'Fries shop' shows organic=yes with a fixed text, namely 'Organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", + "value": "yes" + }, + { + "key": "organic", + "description": "Layer 'Fries shop' shows organic=no with a fixed text, namely 'No organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", + "value": "no" + }, + { + "key": "organic", + "description": "Layer 'Fries shop' shows organic=only with a fixed text, namely 'Only organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", + "value": "only" + }, + { + "key": "friture:oil", + "description": "Layer 'Fries shop' shows friture:oil=vegetable with a fixed text, namely 'The frying is done with vegetable oil' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", + "value": "vegetable" + }, + { + "key": "friture:oil", + "description": "Layer 'Fries shop' shows friture:oil=animal with a fixed text, namely 'The frying is done with animal oil' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", + "value": "animal" + }, + { + "key": "reusable_packaging:accept", + "description": "Layer 'Fries shop' shows reusable_packaging:accept=yes with a fixed text, namely 'You can bring your own containers to get your order, saving on single-use packaging material and thus waste' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", + "value": "yes" + }, + { + "key": "reusable_packaging:accept", + "description": "Layer 'Fries shop' shows reusable_packaging:accept=no with a fixed text, namely 'Bringing your own container is not allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", + "value": "no" + }, + { + "key": "reusable_packaging:accept", + "description": "Layer 'Fries shop' shows reusable_packaging:accept=only with a fixed text, namely 'You must bring your own container to order here.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", + "value": "only" + }, { "key": "diet:sugar_free", "description": "Layer 'Fries shop' shows diet:sugar_free=only with a fixed text, namely 'This shop only sells sugar free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops')", @@ -469,101 +576,6 @@ "description": "Layer 'Fries shop' shows diet:lactose_free=no with a fixed text, namely 'No lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops')", "value": "no" }, - { - "key": "organic", - "description": "Layer 'Fries shop' shows organic=no with a fixed text, namely 'There are no organic options available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine!=friture)", - "value": "no" - }, - { - "key": "organic", - "description": "Layer 'Fries shop' shows organic=yes with a fixed text, namely 'There is an organic menu' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine!=friture)", - "value": "yes" - }, - { - "key": "organic", - "description": "Layer 'Fries shop' shows organic=only with a fixed text, namely 'Only organic options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine!=friture)", - "value": "only" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Fries shop' shows diet:vegetarian=only with a fixed text, namely 'Serves only vegetarian snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", - "value": "only" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Fries shop' shows diet:vegetarian=yes with a fixed text, namely 'Vegetarian snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Fries shop' shows diet:vegetarian=limited with a fixed text, namely 'Only a small selection of snacks are vegetarian' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", - "value": "limited" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Fries shop' shows diet:vegetarian=no with a fixed text, namely 'No vegetarian snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "diet:vegan", - "description": "Layer 'Fries shop' shows diet:vegan=only with a fixed text, namely 'Servers only vegan snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", - "value": "only" - }, - { - "key": "diet:vegan", - "description": "Layer 'Fries shop' shows diet:vegan=yes with a fixed text, namely 'Vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "diet:vegan", - "description": "Layer 'Fries shop' shows diet:vegan=limited with a fixed text, namely 'A small selection of vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", - "value": "limited" - }, - { - "key": "diet:vegan", - "description": "Layer 'Fries shop' shows diet:vegan=no with a fixed text, namely 'No vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "organic", - "description": "Layer 'Fries shop' shows organic=yes with a fixed text, namely 'Organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "organic", - "description": "Layer 'Fries shop' shows organic=no with a fixed text, namely 'No organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "organic", - "description": "Layer 'Fries shop' shows organic=only with a fixed text, namely 'Only organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", - "value": "only" - }, - { - "key": "friture:oil", - "description": "Layer 'Fries shop' shows friture:oil=vegetable with a fixed text, namely 'The frying is done with vegetable oil' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", - "value": "vegetable" - }, - { - "key": "friture:oil", - "description": "Layer 'Fries shop' shows friture:oil=animal with a fixed text, namely 'The frying is done with animal oil' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", - "value": "animal" - }, - { - "key": "reusable_packaging:accept", - "description": "Layer 'Fries shop' shows reusable_packaging:accept=yes with a fixed text, namely 'You can bring your own containers to get your order, saving on single-use packaging material and thus waste' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "reusable_packaging:accept", - "description": "Layer 'Fries shop' shows reusable_packaging:accept=no with a fixed text, namely 'Bringing your own container is not allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "reusable_packaging:accept", - "description": "Layer 'Fries shop' shows reusable_packaging:accept=only with a fixed text, namely 'You must bring your own container to order here.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if cuisine=friture)", - "value": "only" - }, { "key": "smoking", "description": "Layer 'Fries shop' shows smoking=yes with a fixed text, namely 'Smoking is allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Fries shops') (This is only shown if _country!~^(al|be)$)", diff --git a/Docs/TagInfo/mapcomplete_ghostbikes.json b/Docs/TagInfo/mapcomplete_ghostbikes.json index 9edc302fc..f9d68363b 100644 --- a/Docs/TagInfo/mapcomplete_ghostbikes.json +++ b/Docs/TagInfo/mapcomplete_ghostbikes.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Ghost bikes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ghost bikes 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 'Ghost bikes 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 'Ghost bikes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ghost bikes 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 'Ghost bikes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ghost bikes 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 'Ghost bikes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ghost bikes 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": "subject", diff --git a/Docs/TagInfo/mapcomplete_ghostsigns.json b/Docs/TagInfo/mapcomplete_ghostsigns.json index 8ccf2786c..59be11c7d 100644 --- a/Docs/TagInfo/mapcomplete_ghostsigns.json +++ b/Docs/TagInfo/mapcomplete_ghostsigns.json @@ -24,19 +24,23 @@ }, { "key": "image", - "description": "The layer 'Ghost Signs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ghost Signs 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 'Ghost Signs 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 'Ghost Signs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ghost Signs 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 'Ghost Signs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ghost Signs 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 'Ghost Signs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ghost Signs 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": "historic", @@ -135,19 +139,23 @@ }, { "key": "image", - "description": "The layer 'Advertisement allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Advertisement 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 'Advertisement 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 'Advertisement allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Advertisement 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 'Advertisement allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Advertisement 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 'Advertisement allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Advertisement 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": "advertising", @@ -407,19 +415,23 @@ }, { "key": "image", - "description": "The layer 'Artworks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Artworks 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 'Artworks 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 'Artworks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Artworks 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 'Artworks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Artworks 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 'Artworks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Artworks 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": "artwork_type", @@ -526,7 +538,7 @@ }, { "key": "historic", - "description": "Layer 'Artworks' shows historic= with a fixed text, namely 'This artwork does not serve as a bench' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ghost Signs') Picking this answer will delete the key historic.", + "description": "Layer 'Artworks' shows historic= with a fixed text, namely 'This artwork does not serve as a memorial' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ghost Signs') Picking this answer will delete the key historic.", "value": "" }, { diff --git a/Docs/TagInfo/mapcomplete_glutenfree.json b/Docs/TagInfo/mapcomplete_glutenfree.json index 96e34ac40..e167576d2 100644 --- a/Docs/TagInfo/mapcomplete_glutenfree.json +++ b/Docs/TagInfo/mapcomplete_glutenfree.json @@ -26,19 +26,23 @@ }, { "key": "image", - "description": "The layer 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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": "diet:gluten_free", @@ -280,35 +284,43 @@ }, { "key": "image", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" + }, + { + "key": "panoramax", + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "mapillary", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikidata", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikipedia", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "image", - "description": "The layer 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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": "website:menu", @@ -351,7 +363,7 @@ }, { "key": "delivery", - "description": "Layer 'Restaurants and fast food' shows delivery=yes with a fixed text, namely 'This business does home delivery (eventually via a third party)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree')", + "description": "Layer 'Restaurants and fast food' shows delivery=yes with a fixed text, namely 'This business does home delivery (possibly via a third party)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree')", "value": "yes" }, { @@ -429,46 +441,6 @@ "description": "Layer 'Restaurants and fast food' shows diet:halal=only with a fixed text, namely 'Only halal options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree') (This is only shown if cuisine!=friture)", "value": "only" }, - { - "key": "diet:sugar_free", - "description": "Layer 'Restaurants and fast food' shows diet:sugar_free=only with a fixed text, namely 'This shop only sells sugar free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree')", - "value": "only" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Restaurants and fast food' shows diet:sugar_free=yes with a fixed text, namely 'This shop has a big sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree')", - "value": "yes" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Restaurants and fast food' shows diet:sugar_free=limited with a fixed text, namely 'This shop has a limited sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree')", - "value": "limited" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Restaurants and fast food' shows diet:sugar_free=no with a fixed text, namely 'This shop has no sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree')", - "value": "no" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Restaurants and fast food' shows diet:lactose_free=only with a fixed text, namely 'Only sells lactose free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree')", - "value": "only" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Restaurants and fast food' shows diet:lactose_free=yes with a fixed text, namely 'Big lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree')", - "value": "yes" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Restaurants and fast food' shows diet:lactose_free=limited with a fixed text, namely 'Limited lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree')", - "value": "limited" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Restaurants and fast food' shows diet:lactose_free=no with a fixed text, namely 'No lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree')", - "value": "no" - }, { "key": "organic", "description": "Layer 'Restaurants and fast food' shows organic=no with a fixed text, namely 'There are no organic options available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree') (This is only shown if cuisine!=friture)", @@ -506,7 +478,7 @@ }, { "key": "diet:vegan", - "description": "Layer 'Restaurants and fast food' shows diet:vegan=only with a fixed text, namely 'Servers only vegan snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree') (This is only shown if cuisine=friture)", + "description": "Layer 'Restaurants and fast food' shows diet:vegan=only with a fixed text, namely 'Serves only vegan snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree') (This is only shown if cuisine=friture)", "value": "only" }, { @@ -564,6 +536,46 @@ "description": "Layer 'Restaurants and fast food' shows reusable_packaging:accept=only with a fixed text, namely 'You must bring your own container to order here.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree') (This is only shown if cuisine=friture)", "value": "only" }, + { + "key": "diet:sugar_free", + "description": "Layer 'Restaurants and fast food' shows diet:sugar_free=only with a fixed text, namely 'This shop only sells sugar free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree')", + "value": "only" + }, + { + "key": "diet:sugar_free", + "description": "Layer 'Restaurants and fast food' shows diet:sugar_free=yes with a fixed text, namely 'This shop has a big sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree')", + "value": "yes" + }, + { + "key": "diet:sugar_free", + "description": "Layer 'Restaurants and fast food' shows diet:sugar_free=limited with a fixed text, namely 'This shop has a limited sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree')", + "value": "limited" + }, + { + "key": "diet:sugar_free", + "description": "Layer 'Restaurants and fast food' shows diet:sugar_free=no with a fixed text, namely 'This shop has no sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree')", + "value": "no" + }, + { + "key": "diet:lactose_free", + "description": "Layer 'Restaurants and fast food' shows diet:lactose_free=only with a fixed text, namely 'Only sells lactose free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree')", + "value": "only" + }, + { + "key": "diet:lactose_free", + "description": "Layer 'Restaurants and fast food' shows diet:lactose_free=yes with a fixed text, namely 'Big lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree')", + "value": "yes" + }, + { + "key": "diet:lactose_free", + "description": "Layer 'Restaurants and fast food' shows diet:lactose_free=limited with a fixed text, namely 'Limited lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree')", + "value": "limited" + }, + { + "key": "diet:lactose_free", + "description": "Layer 'Restaurants and fast food' shows diet:lactose_free=no with a fixed text, namely 'No lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree')", + "value": "no" + }, { "key": "smoking", "description": "Layer 'Restaurants and fast food' shows smoking=yes with a fixed text, namely 'Smoking is allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree') (This is only shown if _country!~^(al|be)$)", @@ -689,19 +701,23 @@ }, { "key": "image", - "description": "The layer 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ice cream parlors 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 'Ice cream parlors 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 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ice cream parlors 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 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ice cream parlors 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 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ice cream parlors 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": "diet:gluten_free", @@ -883,19 +899,23 @@ }, { "key": "image", - "description": "The layer 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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": "diet:gluten_free", @@ -1911,12 +1931,12 @@ }, { "key": "service:bicycle:retail", - "description": "Layer 'Shop' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", + "description": "Layer 'Shop' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself)", "value": "yes" }, { "key": "service:bicycle:retail", - "description": "Layer 'Shop' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", + "description": "Layer 'Shop' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself)", "value": "no" }, { @@ -1936,32 +1956,32 @@ }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "yes" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "no" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "only_sold" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "brand" }, { "key": "service:bicycle:rental", - "description": "Layer 'Shop' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", + "description": "Layer 'Shop' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental)", "value": "yes" }, { "key": "service:bicycle:rental", - "description": "Layer 'Shop' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", + "description": "Layer 'Shop' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Glutenfree') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental)", "value": "no" }, { @@ -2088,21 +2108,21 @@ }, { "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Shop' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'Glutenfree') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)" + "description": "Layer 'Shop' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'Glutenfree') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)" }, { "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Shop' 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 'Glutenfree') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", + "description": "Layer 'Shop' 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 'Glutenfree') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", "value": "no" }, { "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Glutenfree') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", + "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Glutenfree') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", "value": "yes" }, { "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Glutenfree') 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 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Glutenfree') 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": "" }, { diff --git a/Docs/TagInfo/mapcomplete_guideposts.json b/Docs/TagInfo/mapcomplete_guideposts.json index e7e213ff0..efedaf0ae 100644 --- a/Docs/TagInfo/mapcomplete_guideposts.json +++ b/Docs/TagInfo/mapcomplete_guideposts.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Guideposts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Guideposts 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 'Guideposts 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 'Guideposts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Guideposts 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 'Guideposts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Guideposts 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 'Guideposts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Guideposts 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": "bicycle", diff --git a/Docs/TagInfo/mapcomplete_hackerspaces.json b/Docs/TagInfo/mapcomplete_hackerspaces.json index 1e606a6f4..3a702e300 100644 --- a/Docs/TagInfo/mapcomplete_hackerspaces.json +++ b/Docs/TagInfo/mapcomplete_hackerspaces.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Hackerspace allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Hackerspace 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 'Hackerspace 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 'Hackerspace allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Hackerspace 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 'Hackerspace allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Hackerspace 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 'Hackerspace allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Hackerspace 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": "hackerspace", diff --git a/Docs/TagInfo/mapcomplete_hailhydrant.json b/Docs/TagInfo/mapcomplete_hailhydrant.json index b8db3c3dc..6ce11d2fd 100644 --- a/Docs/TagInfo/mapcomplete_hailhydrant.json +++ b/Docs/TagInfo/mapcomplete_hailhydrant.json @@ -115,19 +115,23 @@ }, { "key": "image", - "description": "The layer 'Map of hydrants allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of hydrants 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 'Map of hydrants 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 'Map of hydrants allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of hydrants 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 'Map of hydrants allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of hydrants 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 'Map of hydrants allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of hydrants 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": "emergency", @@ -154,19 +158,23 @@ }, { "key": "image", - "description": "The layer 'Map of fire extinguishers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of fire extinguishers 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 'Map of fire extinguishers 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 'Map of fire extinguishers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of fire extinguishers 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 'Map of fire extinguishers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of fire extinguishers 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 'Map of fire extinguishers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of fire extinguishers 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": "amenity", @@ -229,19 +237,23 @@ }, { "key": "image", - "description": "The layer 'Map of fire stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of fire stations 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 'Map of fire stations 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 'Map of fire stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of fire stations 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 'Map of fire stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of fire stations 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 'Map of fire stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of fire stations 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": "emergency", @@ -294,19 +306,23 @@ }, { "key": "image", - "description": "The layer 'Map of ambulance stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of ambulance stations 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 'Map of ambulance stations 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 'Map of ambulance stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of ambulance stations 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 'Map of ambulance stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of ambulance stations 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 'Map of ambulance stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Map of ambulance stations 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" } ] } \ No newline at end of file diff --git a/Docs/TagInfo/mapcomplete_healthcare.json b/Docs/TagInfo/mapcomplete_healthcare.json index 90f009299..f0bf20dec 100644 --- a/Docs/TagInfo/mapcomplete_healthcare.json +++ b/Docs/TagInfo/mapcomplete_healthcare.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Doctors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Doctors 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 'Doctors 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 'Doctors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Doctors 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 'Doctors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Doctors 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 'Doctors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Doctors 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": "name", @@ -120,19 +124,23 @@ }, { "key": "image", - "description": "The layer 'Physiotherapist allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Physiotherapist 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 'Physiotherapist 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 'Physiotherapist allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Physiotherapist 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 'Physiotherapist allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Physiotherapist 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 'Physiotherapist allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Physiotherapist 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": "name", @@ -195,19 +203,23 @@ }, { "key": "image", - "description": "The layer 'Dentist allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Dentist 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 'Dentist 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 'Dentist allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Dentist 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 'Dentist allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Dentist 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 'Dentist allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Dentist 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": "opening_hours", @@ -321,19 +333,23 @@ }, { "key": "image", - "description": "The layer 'Pharmacies allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Pharmacies 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 'Pharmacies 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 'Pharmacies allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Pharmacies 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 'Pharmacies allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Pharmacies 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 'Pharmacies allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Pharmacies 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": "name", @@ -441,19 +457,23 @@ }, { "key": "image", - "description": "The layer 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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": "name", @@ -1445,12 +1465,12 @@ }, { "key": "service:bicycle:retail", - "description": "Layer 'Shop' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", + "description": "Layer 'Shop' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself)", "value": "yes" }, { "key": "service:bicycle:retail", - "description": "Layer 'Shop' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", + "description": "Layer 'Shop' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself)", "value": "no" }, { @@ -1470,32 +1490,32 @@ }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "yes" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "no" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "only_sold" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "brand" }, { "key": "service:bicycle:rental", - "description": "Layer 'Shop' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", + "description": "Layer 'Shop' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental)", "value": "yes" }, { "key": "service:bicycle:rental", - "description": "Layer 'Shop' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", + "description": "Layer 'Shop' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental)", "value": "no" }, { @@ -1622,21 +1642,21 @@ }, { "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Shop' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'Healthcare') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)" + "description": "Layer 'Shop' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'Healthcare') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)" }, { "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Shop' 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 'Healthcare') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", + "description": "Layer 'Shop' 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 'Healthcare') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", "value": "no" }, { "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Healthcare') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", + "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Healthcare') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", "value": "yes" }, { "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Healthcare') 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 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Healthcare') 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": "" }, { diff --git a/Docs/TagInfo/mapcomplete_hotels.json b/Docs/TagInfo/mapcomplete_hotels.json index 732fba618..609cec2d3 100644 --- a/Docs/TagInfo/mapcomplete_hotels.json +++ b/Docs/TagInfo/mapcomplete_hotels.json @@ -51,19 +51,23 @@ }, { "key": "image", - "description": "The layer 'Tourism accomodation allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Tourism accomodation 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 'Tourism accomodation 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 'Tourism accomodation allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Tourism accomodation 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 'Tourism accomodation allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Tourism accomodation 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 'Tourism accomodation allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Tourism accomodation 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": "name", @@ -216,19 +220,23 @@ }, { "key": "image", - "description": "The layer 'Love hotels allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Love hotels 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 'Love hotels 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 'Love hotels allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Love hotels 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 'Love hotels allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Love hotels 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 'Love hotels allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Love hotels 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": "name", diff --git a/Docs/TagInfo/mapcomplete_icecream.json b/Docs/TagInfo/mapcomplete_icecream.json index 5e3d4cf11..f28fd4f8a 100644 --- a/Docs/TagInfo/mapcomplete_icecream.json +++ b/Docs/TagInfo/mapcomplete_icecream.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ice cream parlors 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 'Ice cream parlors 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 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ice cream parlors 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 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ice cream parlors 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 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ice cream parlors 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": "name", diff --git a/Docs/TagInfo/mapcomplete_indoors.json b/Docs/TagInfo/mapcomplete_indoors.json index f312cd109..073d76ea8 100644 --- a/Docs/TagInfo/mapcomplete_indoors.json +++ b/Docs/TagInfo/mapcomplete_indoors.json @@ -41,19 +41,23 @@ }, { "key": "image", - "description": "The layer 'Indoors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Indoors 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 'Indoors 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 'Indoors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Indoors 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 'Indoors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Indoors 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 'Indoors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Indoors 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": "level", @@ -436,19 +440,23 @@ }, { "key": "image", - "description": "The layer 'Elevator allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Elevator 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 'Elevator 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 'Elevator allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Elevator 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 'Elevator allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Elevator 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 'Elevator allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Elevator 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": "level", @@ -574,19 +582,23 @@ }, { "key": "image", - "description": "The layer 'Entrance allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Entrance 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 'Entrance 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 'Entrance allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Entrance 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 'Entrance allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Entrance 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 'Entrance allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Entrance 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": "level", diff --git a/Docs/TagInfo/mapcomplete_kerbs_and_crossings.json b/Docs/TagInfo/mapcomplete_kerbs_and_crossings.json index 2f99dbfbe..848d66d8e 100644 --- a/Docs/TagInfo/mapcomplete_kerbs_and_crossings.json +++ b/Docs/TagInfo/mapcomplete_kerbs_and_crossings.json @@ -111,19 +111,23 @@ }, { "key": "image", - "description": "The layer 'Cycleways and roads allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cycleways and roads 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 'Cycleways and roads 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 'Cycleways and roads allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cycleways and roads 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 'Cycleways and roads allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cycleways and roads 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 'Cycleways and roads allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cycleways and roads 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": "cycleway", @@ -618,19 +622,23 @@ }, { "key": "image", - "description": "The layer 'Crossings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Crossings 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 'Crossings 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 'Crossings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Crossings 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 'Crossings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Crossings 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 'Crossings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Crossings 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": "crossing", @@ -649,18 +657,87 @@ }, { "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" }, { - "key": "crossing_ref", - "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)", + "key": "crossing:markings", + "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" }, { - "key": "crossing_ref", - "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)", - "value": "" + "key": "crossing:markings", + "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": "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", @@ -798,19 +875,23 @@ }, { "key": "image", - "description": "The layer 'Kerbs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Kerbs 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 'Kerbs 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 'Kerbs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Kerbs 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 'Kerbs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Kerbs 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 'Kerbs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Kerbs 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": "kerb", diff --git a/Docs/TagInfo/mapcomplete_lactosefree.json b/Docs/TagInfo/mapcomplete_lactosefree.json index 05fc05696..587cc7677 100644 --- a/Docs/TagInfo/mapcomplete_lactosefree.json +++ b/Docs/TagInfo/mapcomplete_lactosefree.json @@ -26,19 +26,23 @@ }, { "key": "image", - "description": "The layer 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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": "diet:lactose_free", @@ -280,35 +284,43 @@ }, { "key": "image", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" + }, + { + "key": "panoramax", + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "mapillary", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikidata", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikipedia", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "image", - "description": "The layer 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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": "website:menu", @@ -351,7 +363,7 @@ }, { "key": "delivery", - "description": "Layer 'Restaurants and fast food' shows delivery=yes with a fixed text, namely 'This business does home delivery (eventually via a third party)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants')", + "description": "Layer 'Restaurants and fast food' shows delivery=yes with a fixed text, namely 'This business does home delivery (possibly via a third party)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants')", "value": "yes" }, { @@ -429,46 +441,6 @@ "description": "Layer 'Restaurants and fast food' shows diet:halal=only with a fixed text, namely 'Only halal options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if cuisine!=friture)", "value": "only" }, - { - "key": "diet:sugar_free", - "description": "Layer 'Restaurants and fast food' shows diet:sugar_free=only with a fixed text, namely 'This shop only sells sugar free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants')", - "value": "only" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Restaurants and fast food' shows diet:sugar_free=yes with a fixed text, namely 'This shop has a big sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants')", - "value": "yes" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Restaurants and fast food' shows diet:sugar_free=limited with a fixed text, namely 'This shop has a limited sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants')", - "value": "limited" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Restaurants and fast food' shows diet:sugar_free=no with a fixed text, namely 'This shop has no sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants')", - "value": "no" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Restaurants and fast food' shows diet:gluten_free=only with a fixed text, namely 'This shop only sells gluten free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants')", - "value": "only" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Restaurants and fast food' shows diet:gluten_free=yes with a fixed text, namely 'This shop has a big gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants')", - "value": "yes" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Restaurants and fast food' shows diet:gluten_free=limited with a fixed text, namely 'This shop has a limited gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants')", - "value": "limited" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Restaurants and fast food' shows diet:gluten_free=no with a fixed text, namely 'This shop has no gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants')", - "value": "no" - }, { "key": "organic", "description": "Layer 'Restaurants and fast food' shows organic=no with a fixed text, namely 'There are no organic options available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if cuisine!=friture)", @@ -506,7 +478,7 @@ }, { "key": "diet:vegan", - "description": "Layer 'Restaurants and fast food' shows diet:vegan=only with a fixed text, namely 'Servers only vegan snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if cuisine=friture)", + "description": "Layer 'Restaurants and fast food' shows diet:vegan=only with a fixed text, namely 'Serves only vegan snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if cuisine=friture)", "value": "only" }, { @@ -564,6 +536,46 @@ "description": "Layer 'Restaurants and fast food' shows reusable_packaging:accept=only with a fixed text, namely 'You must bring your own container to order here.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if cuisine=friture)", "value": "only" }, + { + "key": "diet:sugar_free", + "description": "Layer 'Restaurants and fast food' shows diet:sugar_free=only with a fixed text, namely 'This shop only sells sugar free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants')", + "value": "only" + }, + { + "key": "diet:sugar_free", + "description": "Layer 'Restaurants and fast food' shows diet:sugar_free=yes with a fixed text, namely 'This shop has a big sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants')", + "value": "yes" + }, + { + "key": "diet:sugar_free", + "description": "Layer 'Restaurants and fast food' shows diet:sugar_free=limited with a fixed text, namely 'This shop has a limited sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants')", + "value": "limited" + }, + { + "key": "diet:sugar_free", + "description": "Layer 'Restaurants and fast food' shows diet:sugar_free=no with a fixed text, namely 'This shop has no sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants')", + "value": "no" + }, + { + "key": "diet:gluten_free", + "description": "Layer 'Restaurants and fast food' shows diet:gluten_free=only with a fixed text, namely 'This shop only sells gluten free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants')", + "value": "only" + }, + { + "key": "diet:gluten_free", + "description": "Layer 'Restaurants and fast food' shows diet:gluten_free=yes with a fixed text, namely 'This shop has a big gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants')", + "value": "yes" + }, + { + "key": "diet:gluten_free", + "description": "Layer 'Restaurants and fast food' shows diet:gluten_free=limited with a fixed text, namely 'This shop has a limited gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants')", + "value": "limited" + }, + { + "key": "diet:gluten_free", + "description": "Layer 'Restaurants and fast food' shows diet:gluten_free=no with a fixed text, namely 'This shop has no gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants')", + "value": "no" + }, { "key": "smoking", "description": "Layer 'Restaurants and fast food' shows smoking=yes with a fixed text, namely 'Smoking is allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if _country!~^(al|be)$)", @@ -689,19 +701,23 @@ }, { "key": "image", - "description": "The layer 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ice cream parlors 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 'Ice cream parlors 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 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ice cream parlors 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 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ice cream parlors 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 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ice cream parlors 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": "diet:lactose_free", @@ -883,19 +899,23 @@ }, { "key": "image", - "description": "The layer 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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": "diet:lactose_free", @@ -1911,12 +1931,12 @@ }, { "key": "service:bicycle:retail", - "description": "Layer 'Shop' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", + "description": "Layer 'Shop' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself)", "value": "yes" }, { "key": "service:bicycle:retail", - "description": "Layer 'Shop' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", + "description": "Layer 'Shop' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself)", "value": "no" }, { @@ -1936,32 +1956,32 @@ }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "yes" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "no" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "only_sold" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "brand" }, { "key": "service:bicycle:rental", - "description": "Layer 'Shop' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", + "description": "Layer 'Shop' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental)", "value": "yes" }, { "key": "service:bicycle:rental", - "description": "Layer 'Shop' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", + "description": "Layer 'Shop' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental)", "value": "no" }, { @@ -2088,21 +2108,21 @@ }, { "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Shop' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)" + "description": "Layer 'Shop' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)" }, { "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Shop' 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 'Lactose free shops and restaurants') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", + "description": "Layer 'Shop' 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 'Lactose free shops and restaurants') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", "value": "no" }, { "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", + "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Lactose free shops and restaurants') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", "value": "yes" }, { "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Lactose free shops and restaurants') 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 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Lactose free shops and restaurants') 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": "" }, { diff --git a/Docs/TagInfo/mapcomplete_lighthouses.json b/Docs/TagInfo/mapcomplete_lighthouses.json index 3994d2109..c1e29b21b 100644 --- a/Docs/TagInfo/mapcomplete_lighthouses.json +++ b/Docs/TagInfo/mapcomplete_lighthouses.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'lighthouse allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'lighthouse 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 'lighthouse 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 'lighthouse allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'lighthouse 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 'lighthouse allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'lighthouse 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 'lighthouse allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'lighthouse 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", diff --git a/Docs/TagInfo/mapcomplete_maps.json b/Docs/TagInfo/mapcomplete_maps.json index 722823824..28bb33311 100644 --- a/Docs/TagInfo/mapcomplete_maps.json +++ b/Docs/TagInfo/mapcomplete_maps.json @@ -26,19 +26,23 @@ }, { "key": "image", - "description": "The layer 'Maps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer '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 '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 'Maps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer '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 'Maps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer '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 'Maps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer '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": "map_type", @@ -77,7 +81,7 @@ }, { "key": "map_size", - "description": "Layer 'Maps' shows map_size=city with a fixed text, namely ' A map of a city' and allows to pick this as a default answer (in the mapcomplete.org theme 'A map of maps')", + "description": "Layer 'Maps' shows map_size=city with a fixed text, namely 'A map of a city' and allows to pick this as a default answer (in the mapcomplete.org theme 'A map of maps')", "value": "city" }, { diff --git a/Docs/TagInfo/mapcomplete_maxspeed.json b/Docs/TagInfo/mapcomplete_maxspeed.json index 97b558a9f..ed55218b7 100644 --- a/Docs/TagInfo/mapcomplete_maxspeed.json +++ b/Docs/TagInfo/mapcomplete_maxspeed.json @@ -104,19 +104,23 @@ }, { "key": "image", - "description": "The layer 'Speed Camera allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Speed Camera 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 'Speed Camera 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 'Speed Camera allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Speed Camera 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 'Speed Camera allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Speed Camera 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 'Speed Camera allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Speed Camera 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": "maxspeed", diff --git a/Docs/TagInfo/mapcomplete_memorials.json b/Docs/TagInfo/mapcomplete_memorials.json index a1ee22785..ccef39f1d 100644 --- a/Docs/TagInfo/mapcomplete_memorials.json +++ b/Docs/TagInfo/mapcomplete_memorials.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Ghost bikes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ghost bikes 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 'Ghost bikes 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 'Ghost bikes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ghost bikes 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 'Ghost bikes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ghost bikes 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 'Ghost bikes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ghost bikes 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": "subject", @@ -75,19 +79,23 @@ }, { "key": "image", - "description": "The layer 'Memorials allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Memorials 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 'Memorials 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 'Memorials allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Memorials 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 'Memorials allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Memorials 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 'Memorials allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Memorials 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": "memorial", @@ -359,19 +367,23 @@ }, { "key": "image", - "description": "The layer 'Gravestones allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Gravestones 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 'Gravestones 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 'Gravestones allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Gravestones 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 'Gravestones allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Gravestones 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 'Gravestones allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Gravestones 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": "buried:wikidata", @@ -392,19 +404,23 @@ }, { "key": "image", - "description": "The layer 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches 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 'Benches 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 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches 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 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches 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 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches 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": "backrest", @@ -676,19 +692,23 @@ }, { "key": "image", - "description": "The layer 'Artworks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Artworks 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 'Artworks 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 'Artworks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Artworks 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 'Artworks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Artworks 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 'Artworks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Artworks 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": "artwork_type", @@ -795,7 +815,7 @@ }, { "key": "historic", - "description": "Layer 'Artworks' shows historic= with a fixed text, namely 'This artwork does not serve as a bench' and allows to pick this as a default answer (in the mapcomplete.org theme 'Memorials') Picking this answer will delete the key historic.", + "description": "Layer 'Artworks' shows historic= with a fixed text, namely 'This artwork does not serve as a memorial' and allows to pick this as a default answer (in the mapcomplete.org theme 'Memorials') Picking this answer will delete the key historic.", "value": "" }, { diff --git a/Docs/TagInfo/mapcomplete_nature.json b/Docs/TagInfo/mapcomplete_nature.json index 515abe1a9..f52305c56 100644 --- a/Docs/TagInfo/mapcomplete_nature.json +++ b/Docs/TagInfo/mapcomplete_nature.json @@ -31,19 +31,23 @@ }, { "key": "image", - "description": "The layer 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Drinking water 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 'Drinking water 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 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Drinking water 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 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Drinking water 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 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Drinking water 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": "operational_status", @@ -253,19 +257,23 @@ }, { "key": "image", - "description": "The layer 'Bird watching places allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bird watching places 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 'Bird watching places 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 'Bird watching places allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bird watching places 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 'Bird watching places allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bird watching places 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 'Bird watching places allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bird watching places 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": "shelter", @@ -372,19 +380,23 @@ }, { "key": "image", - "description": "The layer 'Nature reserve allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Nature reserve 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 'Nature reserve 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 'Nature reserve allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Nature reserve 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 'Nature reserve allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Nature reserve 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 'Nature reserve allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Nature reserve 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": "access:description", @@ -554,19 +566,23 @@ }, { "key": "image", - "description": "The layer 'Maps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer '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 '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 'Maps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer '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 'Maps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer '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 'Maps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer '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": "map_type", @@ -605,7 +621,7 @@ }, { "key": "map_size", - "description": "Layer 'Maps' shows map_size=city with a fixed text, namely ' A map of a city' and allows to pick this as a default answer (in the mapcomplete.org theme 'Into nature')", + "description": "Layer 'Maps' shows map_size=city with a fixed text, namely 'A map of a city' and allows to pick this as a default answer (in the mapcomplete.org theme 'Into nature')", "value": "city" }, { @@ -663,19 +679,23 @@ }, { "key": "image", - "description": "The layer 'Information boards allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Information boards 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 'Information boards 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 'Information boards allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Information boards 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 'Information boards allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Information boards 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 'Information boards allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Information boards 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": "amenity", @@ -688,19 +708,23 @@ }, { "key": "image", - "description": "The layer 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches 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 'Benches 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 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches 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 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches 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 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches 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": "backrest", @@ -972,19 +996,23 @@ }, { "key": "image", - "description": "The layer 'Picnic tables allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Picnic tables 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 'Picnic tables 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 'Picnic tables allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Picnic tables 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 'Picnic tables allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Picnic tables 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 'Picnic tables allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Picnic tables 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": "level", @@ -1050,19 +1078,23 @@ }, { "key": "image", - "description": "The layer 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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 'Toilets 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 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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": "level", @@ -1337,19 +1369,23 @@ }, { "key": "image", - "description": "The layer 'Guideposts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Guideposts 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 'Guideposts 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 'Guideposts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Guideposts 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 'Guideposts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Guideposts 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 'Guideposts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Guideposts 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": "bicycle", @@ -1387,19 +1423,23 @@ }, { "key": "image", - "description": "The layer 'Shelter allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shelter 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 'Shelter 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 'Shelter allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shelter 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 'Shelter allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shelter 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 'Shelter allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shelter 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": "shelter_type", @@ -1451,19 +1491,23 @@ }, { "key": "image", - "description": "The layer 'BBQ allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'BBQ 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 'BBQ 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 'BBQ allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'BBQ 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 'BBQ allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'BBQ 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 'BBQ allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'BBQ 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": "access", @@ -1536,19 +1580,23 @@ }, { "key": "image", - "description": "The layer 'Firepit allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Firepit 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 'Firepit 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 'Firepit allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Firepit 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 'Firepit allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Firepit 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 'Firepit allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Firepit 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": "access", diff --git a/Docs/TagInfo/mapcomplete_observation_towers.json b/Docs/TagInfo/mapcomplete_observation_towers.json index 1f35c1501..85f7b02d3 100644 --- a/Docs/TagInfo/mapcomplete_observation_towers.json +++ b/Docs/TagInfo/mapcomplete_observation_towers.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Observation towers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Observation towers 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 'Observation towers 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 'Observation towers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Observation towers 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 'Observation towers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Observation towers 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 'Observation towers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Observation towers 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": "name", diff --git a/Docs/TagInfo/mapcomplete_onwheels.json b/Docs/TagInfo/mapcomplete_onwheels.json index c85172d58..cff43f7a3 100644 --- a/Docs/TagInfo/mapcomplete_onwheels.json +++ b/Docs/TagInfo/mapcomplete_onwheels.json @@ -41,19 +41,23 @@ }, { "key": "image", - "description": "The layer 'Cafés and pubs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cafés and pubs 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 'Cafés and pubs 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 'Cafés and pubs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cafés and pubs 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 'Cafés and pubs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cafés and pubs 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 'Cafés and pubs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Cafés and pubs 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": "level", @@ -323,19 +327,23 @@ }, { "key": "image", - "description": "The layer 'Entrance allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Entrance 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 'Entrance 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 'Entrance allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Entrance 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 'Entrance allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Entrance 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 'Entrance allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Entrance 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": "level", @@ -555,19 +563,23 @@ }, { "key": "image", - "description": "The layer 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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": "name", @@ -785,35 +797,43 @@ }, { "key": "image", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" + }, + { + "key": "panoramax", + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "mapillary", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikidata", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikipedia", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "image", - "description": "The layer 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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": "website:menu", @@ -856,7 +876,7 @@ }, { "key": "delivery", - "description": "Layer 'Restaurants and fast food' shows delivery=yes with a fixed text, namely 'This business does home delivery (eventually via a third party)' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels')", + "description": "Layer 'Restaurants and fast food' shows delivery=yes with a fixed text, namely 'This business does home delivery (possibly via a third party)' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels')", "value": "yes" }, { @@ -934,6 +954,101 @@ "description": "Layer 'Restaurants and fast food' shows diet:halal=only with a fixed text, namely 'Only halal options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine!=friture)", "value": "only" }, + { + "key": "organic", + "description": "Layer 'Restaurants and fast food' shows organic=no with a fixed text, namely 'There are no organic options available' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine!=friture)", + "value": "no" + }, + { + "key": "organic", + "description": "Layer 'Restaurants and fast food' shows organic=yes with a fixed text, namely 'There is an organic menu' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine!=friture)", + "value": "yes" + }, + { + "key": "organic", + "description": "Layer 'Restaurants and fast food' shows organic=only with a fixed text, namely 'Only organic options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine!=friture)", + "value": "only" + }, + { + "key": "diet:vegetarian", + "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=only with a fixed text, namely 'Serves only vegetarian snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", + "value": "only" + }, + { + "key": "diet:vegetarian", + "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=yes with a fixed text, namely 'Vegetarian snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", + "value": "yes" + }, + { + "key": "diet:vegetarian", + "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=limited with a fixed text, namely 'Only a small selection of snacks are vegetarian' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", + "value": "limited" + }, + { + "key": "diet:vegetarian", + "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=no with a fixed text, namely 'No vegetarian snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", + "value": "no" + }, + { + "key": "diet:vegan", + "description": "Layer 'Restaurants and fast food' shows diet:vegan=only with a fixed text, namely 'Serves only vegan snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", + "value": "only" + }, + { + "key": "diet:vegan", + "description": "Layer 'Restaurants and fast food' shows diet:vegan=yes with a fixed text, namely 'Vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", + "value": "yes" + }, + { + "key": "diet:vegan", + "description": "Layer 'Restaurants and fast food' shows diet:vegan=limited with a fixed text, namely 'A small selection of vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", + "value": "limited" + }, + { + "key": "diet:vegan", + "description": "Layer 'Restaurants and fast food' shows diet:vegan=no with a fixed text, namely 'No vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", + "value": "no" + }, + { + "key": "organic", + "description": "Layer 'Restaurants and fast food' shows organic=yes with a fixed text, namely 'Organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", + "value": "yes" + }, + { + "key": "organic", + "description": "Layer 'Restaurants and fast food' shows organic=no with a fixed text, namely 'No organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", + "value": "no" + }, + { + "key": "organic", + "description": "Layer 'Restaurants and fast food' shows organic=only with a fixed text, namely 'Only organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", + "value": "only" + }, + { + "key": "friture:oil", + "description": "Layer 'Restaurants and fast food' shows friture:oil=vegetable with a fixed text, namely 'The frying is done with vegetable oil' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", + "value": "vegetable" + }, + { + "key": "friture:oil", + "description": "Layer 'Restaurants and fast food' shows friture:oil=animal with a fixed text, namely 'The frying is done with animal oil' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", + "value": "animal" + }, + { + "key": "reusable_packaging:accept", + "description": "Layer 'Restaurants and fast food' shows reusable_packaging:accept=yes with a fixed text, namely 'You can bring your own containers to get your order, saving on single-use packaging material and thus waste' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", + "value": "yes" + }, + { + "key": "reusable_packaging:accept", + "description": "Layer 'Restaurants and fast food' shows reusable_packaging:accept=no with a fixed text, namely 'Bringing your own container is not allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", + "value": "no" + }, + { + "key": "reusable_packaging:accept", + "description": "Layer 'Restaurants and fast food' shows reusable_packaging:accept=only with a fixed text, namely 'You must bring your own container to order here.' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", + "value": "only" + }, { "key": "diet:sugar_free", "description": "Layer 'Restaurants and fast food' shows diet:sugar_free=only with a fixed text, namely 'This shop only sells sugar free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels')", @@ -994,101 +1109,6 @@ "description": "Layer 'Restaurants and fast food' shows diet:lactose_free=no with a fixed text, namely 'No lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels')", "value": "no" }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=no with a fixed text, namely 'There are no organic options available' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine!=friture)", - "value": "no" - }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=yes with a fixed text, namely 'There is an organic menu' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine!=friture)", - "value": "yes" - }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=only with a fixed text, namely 'Only organic options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine!=friture)", - "value": "only" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=only with a fixed text, namely 'Serves only vegetarian snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", - "value": "only" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=yes with a fixed text, namely 'Vegetarian snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=limited with a fixed text, namely 'Only a small selection of snacks are vegetarian' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", - "value": "limited" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=no with a fixed text, namely 'No vegetarian snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "diet:vegan", - "description": "Layer 'Restaurants and fast food' shows diet:vegan=only with a fixed text, namely 'Servers only vegan snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", - "value": "only" - }, - { - "key": "diet:vegan", - "description": "Layer 'Restaurants and fast food' shows diet:vegan=yes with a fixed text, namely 'Vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "diet:vegan", - "description": "Layer 'Restaurants and fast food' shows diet:vegan=limited with a fixed text, namely 'A small selection of vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", - "value": "limited" - }, - { - "key": "diet:vegan", - "description": "Layer 'Restaurants and fast food' shows diet:vegan=no with a fixed text, namely 'No vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=yes with a fixed text, namely 'Organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=no with a fixed text, namely 'No organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=only with a fixed text, namely 'Only organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", - "value": "only" - }, - { - "key": "friture:oil", - "description": "Layer 'Restaurants and fast food' shows friture:oil=vegetable with a fixed text, namely 'The frying is done with vegetable oil' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", - "value": "vegetable" - }, - { - "key": "friture:oil", - "description": "Layer 'Restaurants and fast food' shows friture:oil=animal with a fixed text, namely 'The frying is done with animal oil' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", - "value": "animal" - }, - { - "key": "reusable_packaging:accept", - "description": "Layer 'Restaurants and fast food' shows reusable_packaging:accept=yes with a fixed text, namely 'You can bring your own containers to get your order, saving on single-use packaging material and thus waste' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "reusable_packaging:accept", - "description": "Layer 'Restaurants and fast food' shows reusable_packaging:accept=no with a fixed text, namely 'Bringing your own container is not allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "reusable_packaging:accept", - "description": "Layer 'Restaurants and fast food' shows reusable_packaging:accept=only with a fixed text, namely 'You must bring your own container to order here.' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if cuisine=friture)", - "value": "only" - }, { "key": "smoking", "description": "Layer 'Restaurants and fast food' shows smoking=yes with a fixed text, namely 'Smoking is allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if _country!~^(al|be)$)", @@ -1214,19 +1234,23 @@ }, { "key": "image", - "description": "The layer 'Kerbs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Kerbs 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 'Kerbs 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 'Kerbs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Kerbs 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 'Kerbs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Kerbs 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 'Kerbs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Kerbs 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": "kerb", @@ -1288,19 +1312,23 @@ }, { "key": "image", - "description": "The layer 'Parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parking 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 'Parking 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 'Parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parking 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 'Parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parking 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 'Parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parking 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": "level", @@ -1415,19 +1443,23 @@ }, { "key": "image", - "description": "The layer 'Disabled parking spaces allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Disabled parking spaces 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 'Disabled parking spaces 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 'Disabled parking spaces allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Disabled parking spaces 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 'Disabled parking spaces allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Disabled parking spaces 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 'Disabled parking spaces allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Disabled parking spaces 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": "shop", @@ -1449,19 +1481,23 @@ }, { "key": "image", - "description": "The layer 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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": "name", @@ -2453,12 +2489,12 @@ }, { "key": "service:bicycle:retail", - "description": "Layer 'Shop' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", + "description": "Layer 'Shop' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself)", "value": "yes" }, { "key": "service:bicycle:retail", - "description": "Layer 'Shop' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", + "description": "Layer 'Shop' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself)", "value": "no" }, { @@ -2478,32 +2514,32 @@ }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "yes" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "no" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "only_sold" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "brand" }, { "key": "service:bicycle:rental", - "description": "Layer 'Shop' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", + "description": "Layer 'Shop' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental)", "value": "yes" }, { "key": "service:bicycle:rental", - "description": "Layer 'Shop' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", + "description": "Layer 'Shop' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental)", "value": "no" }, { @@ -2630,21 +2666,21 @@ }, { "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Shop' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'OnWheels') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)" + "description": "Layer 'Shop' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'OnWheels') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)" }, { "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Shop' 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 'OnWheels') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", + "description": "Layer 'Shop' 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 'OnWheels') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", "value": "no" }, { "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'OnWheels') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", + "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'OnWheels') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", "value": "yes" }, { "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'OnWheels') 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 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'OnWheels') 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": "" }, { @@ -2791,19 +2827,23 @@ }, { "key": "image", - "description": "The layer 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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 'Toilets 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 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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": "level", @@ -3078,19 +3118,23 @@ }, { "key": "image", - "description": "The layer 'Pharmacies allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Pharmacies 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 'Pharmacies 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 'Pharmacies allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Pharmacies 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 'Pharmacies allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Pharmacies 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 'Pharmacies allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Pharmacies 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": "name", @@ -3174,19 +3218,23 @@ }, { "key": "image", - "description": "The layer 'Doctors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Doctors 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 'Doctors 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 'Doctors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Doctors 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 'Doctors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Doctors 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 'Doctors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Doctors 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": "name", @@ -3333,19 +3381,23 @@ }, { "key": "image", - "description": "The layer 'Reception desks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Reception desks 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 'Reception desks 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 'Reception desks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Reception desks 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 'Reception desks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Reception desks 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 'Reception desks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Reception desks 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": "level", @@ -3401,19 +3453,23 @@ }, { "key": "image", - "description": "The layer 'Elevator allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Elevator 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 'Elevator 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 'Elevator allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Elevator 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 'Elevator allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Elevator 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 'Elevator allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Elevator 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": "level", @@ -3561,19 +3617,23 @@ }, { "key": "image", - "description": "The layer 'Tourism accomodation allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Tourism accomodation 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 'Tourism accomodation 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 'Tourism accomodation allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Tourism accomodation 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 'Tourism accomodation allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Tourism accomodation 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 'Tourism accomodation allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Tourism accomodation 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": "name", @@ -3726,19 +3786,23 @@ }, { "key": "image", - "description": "The layer 'governments allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'governments 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 'governments 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 'governments allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'governments 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 'governments allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'governments 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 'governments allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'governments 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": "phone", diff --git a/Docs/TagInfo/mapcomplete_openwindpowermap.json b/Docs/TagInfo/mapcomplete_openwindpowermap.json index 042bf12a5..fcc409065 100644 --- a/Docs/TagInfo/mapcomplete_openwindpowermap.json +++ b/Docs/TagInfo/mapcomplete_openwindpowermap.json @@ -45,19 +45,23 @@ }, { "key": "image", - "description": "The layer 'wind turbine allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'wind turbine 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 'wind turbine 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 'wind turbine allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'wind turbine 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 'wind turbine allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'wind turbine 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 'wind turbine allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'wind turbine 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" } ] } \ No newline at end of file diff --git a/Docs/TagInfo/mapcomplete_parkings.json b/Docs/TagInfo/mapcomplete_parkings.json index 0d23c2b78..94bfb57e1 100644 --- a/Docs/TagInfo/mapcomplete_parkings.json +++ b/Docs/TagInfo/mapcomplete_parkings.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parking 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 'Parking 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 'Parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parking 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 'Parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parking 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 'Parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parking 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": "level", @@ -148,19 +152,23 @@ }, { "key": "image", - "description": "The layer 'Parking Spaces allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parking Spaces 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 'Parking Spaces 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 'Parking Spaces allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parking Spaces 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 'Parking Spaces allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parking Spaces 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 'Parking Spaces allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parking Spaces 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": "parking_space", @@ -253,19 +261,23 @@ }, { "key": "image", - "description": "The layer 'Parking Ticket Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parking Ticket Machines 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 'Parking Ticket Machines 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 'Parking Ticket Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parking Ticket Machines 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 'Parking Ticket Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parking Ticket Machines 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 'Parking Ticket Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parking Ticket Machines 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": "payment:cash", @@ -477,19 +489,23 @@ }, { "key": "image", - "description": "The layer 'Charging stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Charging stations 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 'Charging stations 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 'Charging stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Charging stations 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 'Charging stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Charging stations 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 'Charging stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Charging stations 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": "bicycle", diff --git a/Docs/TagInfo/mapcomplete_personal.json b/Docs/TagInfo/mapcomplete_personal.json deleted file mode 100644 index c7f56a5f6..000000000 --- a/Docs/TagInfo/mapcomplete_personal.json +++ /dev/null @@ -1,20881 +0,0 @@ -{ - "data_format": 1, - "project": { - "name": "MapComplete Personal theme", - "description": "Create a personal theme based on all the available layers of all themes", - "project_url": "https://mapcomplete.org/personal", - "doc_url": "https://github.com/pietervdvn/MapComplete/tree/master/assets/themes/", - "icon_url": "https://mapcomplete.org/assets/svg/addSmall.svg", - "contact_name": "Pieter Vander Vennet", - "contact_email": "pietervdvn@posteo.net" - }, - "tags": [ - { - "key": "advertising", - "description": "The MapComplete theme Personal theme has a layer Advertisement showing features with this tag" - }, - { - "key": "id", - "description": "Layer 'Advertisement' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Advertisement allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Advertisement allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Advertisement allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Advertisement allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "advertising", - "description": "Layer 'Advertisement' shows and asks freeform values for key 'advertising' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "advertising", - "description": "Layer 'Advertisement' shows advertising=billboard with a fixed text, namely 'This is a billboard' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "billboard" - }, - { - "key": "advertising", - "description": "Layer 'Advertisement' shows advertising=board with a fixed text, namely 'This is a board' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "board" - }, - { - "key": "advertising", - "description": "Layer 'Advertisement' shows advertising=column with a fixed text, namely 'This is a column' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "column" - }, - { - "key": "advertising", - "description": "Layer 'Advertisement' shows advertising=flag with a fixed text, namely 'This is a flag' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "flag" - }, - { - "key": "advertising", - "description": "Layer 'Advertisement' shows advertising=poster_box with a fixed text, namely 'This is a poster Box' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "poster_box" - }, - { - "key": "advertising", - "description": "Layer 'Advertisement' shows advertising=screen with a fixed text, namely 'This is a screen' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "screen" - }, - { - "key": "advertising", - "description": "Layer 'Advertisement' shows advertising=sculpture with a fixed text, namely 'This is a sculpture' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sculpture" - }, - { - "key": "advertising", - "description": "Layer 'Advertisement' shows advertising=sign with a fixed text, namely 'This is a sign' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sign" - }, - { - "key": "advertising", - "description": "Layer 'Advertisement' shows advertising=tarp with a fixed text, namely 'This is a tarp (a weatherproof piece of textile with an advertising message)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "tarp" - }, - { - "key": "advertising", - "description": "Layer 'Advertisement' shows advertising=totem with a fixed text, namely 'This is a totem' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "totem" - }, - { - "key": "advertising", - "description": "Layer 'Advertisement' shows advertising=wall_painting with a fixed text, namely 'This is a wall painting' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wall_painting" - }, - { - "key": "advertising", - "description": "Layer 'Advertisement' shows advertising=tilework with a fixed text, namely 'This is tilework - the advertisement is painted on tiles' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "tilework" - }, - { - "key": "advertising", - "description": "Layer 'Advertisement' shows advertising=relief with a fixed text, namely 'This is a relief' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "relief" - }, - { - "key": "animated", - "description": "Layer 'Advertisement' shows animated=no with a fixed text, namely 'Static, always shows the same message' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if advertising!=screen & advertising!=flag & advertising!=tarp & advertising!=wall_painting & advertising!=sign & advertising!=board)", - "value": "no" - }, - { - "key": "animated", - "description": "Layer 'Advertisement' shows animated=digital_display with a fixed text, namely 'This object has a built-in digital display to show prices or some other message' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if advertising!=screen & advertising!=flag & advertising!=tarp & advertising!=wall_painting & advertising!=sign & advertising!=board)", - "value": "digital_display" - }, - { - "key": "animated", - "description": "Layer 'Advertisement' shows animated=trivision_blades with a fixed text, namely 'Trivision - the billboard consists of many triangular prisms which regularly rotate' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if advertising!=screen & advertising!=flag & advertising!=tarp & advertising!=wall_painting & advertising!=sign & advertising!=board)", - "value": "trivision_blades" - }, - { - "key": "animated", - "description": "Layer 'Advertisement' shows animated=winding_posters with a fixed text, namely 'Scrolling posters' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if advertising!=screen & advertising!=flag & advertising!=tarp & advertising!=wall_painting & advertising!=sign & advertising!=board)", - "value": "winding_posters" - }, - { - "key": "animated", - "description": "Layer 'Advertisement' shows animated=revolving with a fixed text, namely 'Rotates on itself' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if advertising!=screen & advertising!=flag & advertising!=tarp & advertising!=wall_painting & advertising!=sign & advertising!=board)", - "value": "revolving" - }, - { - "key": "luminous", - "description": "Layer 'Advertisement' shows luminous=neon with a fixed text, namely 'This is a neon-tube light' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if advertising!=screen)", - "value": "neon" - }, - { - "key": "lit", - "description": "Layer 'Advertisement' shows lit=yes & luminous=yes with a fixed text, namely 'This object both emits light and is lighted by an external light source' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if advertising!=screen)", - "value": "yes" - }, - { - "key": "luminous", - "description": "Layer 'Advertisement' shows lit=yes & luminous=yes with a fixed text, namely 'This object both emits light and is lighted by an external light source' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if advertising!=screen)", - "value": "yes" - }, - { - "key": "luminous", - "description": "Layer 'Advertisement' shows luminous=yes with a fixed text, namely 'This object emits light' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if advertising!=screen)", - "value": "yes" - }, - { - "key": "lit", - "description": "Layer 'Advertisement' shows lit=yes with a fixed text, namely 'This object is lit externally, e.g. by a spotlight or other lights' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if advertising!=screen)", - "value": "yes" - }, - { - "key": "lit", - "description": "Layer 'Advertisement' shows lit=no & luminous=no with a fixed text, namely 'This object does not emit light and is not lighted by externally' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if advertising!=screen)", - "value": "no" - }, - { - "key": "luminous", - "description": "Layer 'Advertisement' shows lit=no & luminous=no with a fixed text, namely 'This object does not emit light and is not lighted by externally' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if advertising!=screen)", - "value": "no" - }, - { - "key": "operator", - "description": "Layer 'Advertisement' shows and asks freeform values for key 'operator' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "message", - "description": "Layer 'Advertisement' shows message=commercial with a fixed text, namely 'Commercial message' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "commercial" - }, - { - "key": "message", - "description": "Layer 'Advertisement' shows message=local with a fixed text, namely 'Local information' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "local" - }, - { - "key": "message", - "description": "Layer 'Advertisement' shows message=safety with a fixed text, namely 'Security information' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "safety" - }, - { - "key": "message", - "description": "Layer 'Advertisement' shows message=political with a fixed text, namely 'Electoral advertising' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "political" - }, - { - "key": "message", - "description": "Layer 'Advertisement' shows message=showbiz with a fixed text, namely 'Information related to theatre, concerts, …' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "showbiz" - }, - { - "key": "message", - "description": "Layer 'Advertisement' shows message=non_profit with a fixed text, namely 'Message from non-profit organizations' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "non_profit" - }, - { - "key": "message", - "description": "Layer 'Advertisement' shows message=opinion with a fixed text, namely 'To express your opinion' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "opinion" - }, - { - "key": "message", - "description": "Layer 'Advertisement' shows message=religion with a fixed text, namely 'Religious message' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "religion" - }, - { - "key": "message", - "description": "Layer 'Advertisement' shows message=funding with a fixed text, namely 'Funding sign' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "funding" - }, - { - "key": "information", - "description": "Layer 'Advertisement' shows information=map with a fixed text, namely 'A map' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "map" - }, - { - "key": "sides", - "description": "Layer 'Advertisement' shows sides=1 with a fixed text, namely 'This object has advertisements on a single side' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _referencing_ways= & (advertising=poster_box | advertising=screen | advertising=billboard))", - "value": "1" - }, - { - "key": "sides", - "description": "Layer 'Advertisement' shows sides=2 with a fixed text, namely 'This object has advertisements on both sides' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _referencing_ways= & (advertising=poster_box | advertising=screen | advertising=billboard))", - "value": "2" - }, - { - "key": "ref", - "description": "Layer 'Advertisement' shows and asks freeform values for key 'ref' (in the mapcomplete.org theme 'Personal theme') (This is only shown if advertising!=sign)" - }, - { - "key": "historic", - "description": "Layer 'Advertisement' shows historic=advertising with a fixed text, namely 'This is a historic advertisement sign (an advertisement for a business that no longer exists or a very old sign with heritage value)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "advertising" - }, - { - "key": "historic", - "description": "Layer 'Advertisement' shows historic= with a fixed text, namely 'This advertisement sign has no historic value (the business still exists and has no heritage value)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key historic.", - "value": "" - }, - { - "key": "aerialway", - "description": "The MapComplete theme Personal theme has a layer Aerialways showing features with this tag" - }, - { - "key": "id", - "description": "Layer 'Aerialways' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Aerialways allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Aerialways allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Aerialways allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Aerialways allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "aerialway", - "description": "Layer 'Aerialways' shows aerialway=cable_car with a fixed text, namely 'This is a cable car where the car goes up and down again on the same cable.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "cable_car" - }, - { - "key": "aerialway", - "description": "Layer 'Aerialways' shows aerialway=gondola with a fixed text, namely 'This is a gondola where the cars go around in continuous circles' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "gondola" - }, - { - "key": "aerialway", - "description": "Layer 'Aerialways' shows aerialway=chair_lift with a fixed text, namely 'An open chairlift with seats to sit on and open to the outside air.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "chair_lift" - }, - { - "key": "aerialway", - "description": "Layer 'Aerialways' shows aerialway=mixed with a fixed text, namely 'An aerialway which has both chairs and gondolas in the same continuous track' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "mixed" - }, - { - "key": "aerialway", - "description": "Layer 'Aerialways' shows aerialway=drag_lift with a fixed text, namely 'A drag lift' (in the mapcomplete.org theme 'Personal theme')", - "value": "drag_lift" - }, - { - "key": "aerialway", - "description": "Layer 'Aerialways' shows aerialway=t-bar with a fixed text, namely 'A drag lift with T-shaped carriers for two passengers at a time' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "t-bar" - }, - { - "key": "aerialway", - "description": "Layer 'Aerialways' shows aerialway=j-bar with a fixed text, namely 'A drag lift with L-shaped bars for a single passenger at a time' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "j-bar" - }, - { - "key": "aerialway", - "description": "Layer 'Aerialways' shows aerialway=platter with a fixed text, namely 'A drag lift with a platter to drag a single passenger at a time' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "platter" - }, - { - "key": "aerialway", - "description": "Layer 'Aerialways' shows aerialway=rope_tow with a fixed text, namely 'A tow line which which drags skieers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "rope_tow" - }, - { - "key": "aerialway", - "description": "Layer 'Aerialways' shows aerialway=magic_carpet with a fixed text, namely 'A magic carpet (a conveyor belt on the ground)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "magic_carpet" - }, - { - "key": "aerialway", - "description": "Layer 'Aerialways' shows aerialway=zip_line with a fixed text, namely 'A zip line. (A touristical attraction where adventurous people go down at high speeds) ' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "zip_line" - }, - { - "key": "duration", - "description": "Layer 'Aerialways' shows and asks freeform values for key 'duration' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "aerialway:occupancy", - "description": "Layer 'Aerialways' shows and asks freeform values for key 'aerialway:occupancy' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Aerialways' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Aerialways' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "oneway", - "description": "Layer 'Aerialways' shows oneway=yes with a fixed text, namely 'This aerialway can only be taken to the top' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "oneway", - "description": "Layer 'Aerialways' shows oneway=no with a fixed text, namely 'This aerialway can be taken in both directions' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "emergency", - "description": "The MapComplete theme Personal theme has a layer Map of ambulance stations showing features with this tag", - "value": "ambulance_station" - }, - { - "key": "id", - "description": "Layer 'Map of ambulance stations' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "name", - "description": "Layer 'Map of ambulance stations' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "addr:street", - "description": "Layer 'Map of ambulance stations' shows and asks freeform values for key 'addr:street' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "addr:place", - "description": "Layer 'Map of ambulance stations' shows and asks freeform values for key 'addr:place' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator", - "description": "Layer 'Map of ambulance stations' shows and asks freeform values for key 'operator' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:type", - "description": "Layer 'Map of ambulance stations' shows and asks freeform values for key 'operator:type' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:type", - "description": "Layer 'Map of ambulance stations' shows operator:type=government with a fixed text, namely 'The station is operated by the government.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "government" - }, - { - "key": "operator:type", - "description": "Layer 'Map of ambulance stations' shows operator:type=community with a fixed text, namely 'The station is operated by a community-based, or informal organization.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "community" - }, - { - "key": "operator:type", - "description": "Layer 'Map of ambulance stations' shows operator:type=ngo with a fixed text, namely 'The station is operated by a formal group of volunteers.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "ngo" - }, - { - "key": "operator:type", - "description": "Layer 'Map of ambulance stations' shows operator:type=private with a fixed text, namely 'The station is privately operated.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "private" - }, - { - "key": "image", - "description": "The layer 'Map of ambulance stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Map of ambulance stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Map of ambulance stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Map of ambulance stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Animal shelters showing features with this tag", - "value": "animal_shelter" - }, - { - "key": "id", - "description": "Layer 'Animal shelters' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Animal shelters allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Animal shelters allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Animal shelters allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Animal shelters allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Animal shelters' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Animal shelters' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Animal shelters' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'Animal shelters' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Animal shelters' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Animal shelters' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Animal shelters' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Animal shelters' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "purpose", - "description": "Layer 'Animal shelters' shows purpose=adoption with a fixed text, namely 'Animals are kept here until adopted by a new owner' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "adoption" - }, - { - "key": "purpose", - "description": "Layer 'Animal shelters' shows purpose=sanctuary with a fixed text, namely 'Animals are taken care of for the rest of their lives' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sanctuary" - }, - { - "key": "purpose", - "description": "Layer 'Animal shelters' shows purpose=release with a fixed text, namely 'Injured animals are rehabilitated here until they can be released in nature again ' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "release" - }, - { - "key": "opening_hours", - "description": "Layer 'Animal shelters' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Animal shelters' shows opening_hours=\"by appointment\" with a fixed text, namely 'Only by appointment' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "\"by appointment\"" - }, - { - "key": "opening_hours", - "description": "Layer 'Animal shelters' shows opening_hours~^(\"by appointment\"|by appointment)$ with a fixed text, namely 'Only by appointment' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Animal shelters' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "animal_shelter", - "description": "Layer 'Animal shelters' shows and asks freeform values for key 'animal_shelter' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "animal_shelter", - "description": "Layer 'Animal shelters' shows animal_shelter=dog with a fixed text, namely 'Dogs are kept here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "dog" - }, - { - "key": "animal_shelter", - "description": "Layer 'Animal shelters' shows animal_shelter=cat with a fixed text, namely 'Cats are kept here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "cat" - }, - { - "key": "animal_shelter", - "description": "Layer 'Animal shelters' shows animal_shelter=horse with a fixed text, namely 'Horses are kept here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "horse" - }, - { - "key": "animal_shelter", - "description": "Layer 'Animal shelters' shows animal_shelter=bird with a fixed text, namely 'Birds are kept here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "bird" - }, - { - "key": "animal_shelter", - "description": "Layer 'Animal shelters' shows animal_shelter=wildlife with a fixed text, namely 'Wild animals are kept here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wildlife" - }, - { - "key": "tourism", - "description": "The MapComplete theme Personal theme has a layer Artworks showing features with this tag", - "value": "artwork" - }, - { - "key": "id", - "description": "Layer 'Artworks' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Artworks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Artworks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Artworks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Artworks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "artwork_type", - "description": "Layer 'Artworks' shows and asks freeform values for key 'artwork_type' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "artwork_type", - "description": "Layer 'Artworks' shows artwork_type=architecture with a fixed text, namely 'Architecture' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "architecture" - }, - { - "key": "artwork_type", - "description": "Layer 'Artworks' shows artwork_type=mural with a fixed text, namely 'Mural' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "mural" - }, - { - "key": "artwork_type", - "description": "Layer 'Artworks' shows artwork_type=painting with a fixed text, namely 'Painting' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "painting" - }, - { - "key": "artwork_type", - "description": "Layer 'Artworks' shows artwork_type=sculpture with a fixed text, namely 'Sculpture' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sculpture" - }, - { - "key": "artwork_type", - "description": "Layer 'Artworks' shows artwork_type=statue with a fixed text, namely 'Statue' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "statue" - }, - { - "key": "artwork_type", - "description": "Layer 'Artworks' shows artwork_type=bust with a fixed text, namely 'Bust' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "bust" - }, - { - "key": "artwork_type", - "description": "Layer 'Artworks' shows artwork_type=stone with a fixed text, namely 'Stone' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "stone" - }, - { - "key": "artwork_type", - "description": "Layer 'Artworks' shows artwork_type=installation with a fixed text, namely 'Installation' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "installation" - }, - { - "key": "artwork_type", - "description": "Layer 'Artworks' shows artwork_type=graffiti with a fixed text, namely 'Graffiti' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "graffiti" - }, - { - "key": "artwork_type", - "description": "Layer 'Artworks' shows artwork_type=relief with a fixed text, namely 'Relief' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "relief" - }, - { - "key": "artwork_type", - "description": "Layer 'Artworks' shows artwork_type=azulejo with a fixed text, namely 'Azulejo (Spanish decorative tilework)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "azulejo" - }, - { - "key": "artwork_type", - "description": "Layer 'Artworks' shows artwork_type=tilework with a fixed text, namely 'Tilework' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "tilework" - }, - { - "key": "artwork_type", - "description": "Layer 'Artworks' shows artwork_type=woodcarving with a fixed text, namely 'Woodcarving' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "woodcarving" - }, - { - "key": "artist:wikidata", - "description": "Layer 'Artworks' shows and asks freeform values for key 'artist:wikidata' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "artist_name", - "description": "Layer 'Artworks' shows and asks freeform values for key 'artist_name' (in the mapcomplete.org theme 'Personal theme') (This is only shown if artist:wikidata=)" - }, - { - "key": "website", - "description": "Layer 'Artworks' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "wikidata", - "description": "Layer 'Artworks' shows and asks freeform values for key 'wikidata' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "wikipedia", - "description": "Layer 'Artworks' shows wikipedia~.+ with a fixed text, namely '{wikipedia():max-height:25rem}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "wikidata", - "description": "Layer 'Artworks' shows wikidata= with a fixed text, namely 'No Wikipedia page has been linked yet' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key wikidata.", - "value": "" - }, - { - "key": "subject:wikidata", - "description": "Layer 'Artworks' shows and asks freeform values for key 'subject:wikidata' (in the mapcomplete.org theme 'Personal theme') (This is only shown if subject:wikidata~.+)" - }, - { - "key": "historic", - "description": "Layer 'Artworks' shows historic=memorial with a fixed text, namely 'This artwork also serves as a memorial' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "memorial" - }, - { - "key": "historic", - "description": "Layer 'Artworks' shows historic= with a fixed text, namely 'This artwork does not serve as a bench' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key historic.", - "value": "" - }, - { - "key": "memorial", - "description": "Layer 'Artworks' shows and asks freeform values for key 'memorial' (in the mapcomplete.org theme 'Personal theme') (This is only shown if historic=memorial)" - }, - { - "key": "memorial", - "description": "Layer 'Artworks' shows memorial=statue with a fixed text, namely 'This is a statue' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if historic=memorial)", - "value": "statue" - }, - { - "key": "memorial", - "description": "Layer 'Artworks' shows memorial=plaque with a fixed text, namely 'This is a plaque' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if historic=memorial)", - "value": "plaque" - }, - { - "key": "memorial", - "description": "Layer 'Artworks' shows memorial=bench with a fixed text, namely 'This is a commemorative bench' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if historic=memorial)", - "value": "bench" - }, - { - "key": "memorial", - "description": "Layer 'Artworks' shows memorial=ghost_bike with a fixed text, namely 'This is a ghost bike - a bicycle painted white to remember a cyclist whom deceased because of a car crash' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if historic=memorial)", - "value": "ghost_bike" - }, - { - "key": "memorial", - "description": "Layer 'Artworks' shows memorial=stolperstein with a fixed text, namely 'This is a stolperstein (stumbing stone)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if historic=memorial)", - "value": "stolperstein" - }, - { - "key": "memorial", - "description": "Layer 'Artworks' shows memorial=stele with a fixed text, namely 'This is a stele' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if historic=memorial)", - "value": "stele" - }, - { - "key": "memorial", - "description": "Layer 'Artworks' shows memorial=stone with a fixed text, namely 'This is a memorial stone' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if historic=memorial)", - "value": "stone" - }, - { - "key": "memorial", - "description": "Layer 'Artworks' shows memorial=bust with a fixed text, namely 'This is a bust' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if historic=memorial)", - "value": "bust" - }, - { - "key": "memorial", - "description": "Layer 'Artworks' shows memorial=sculpture with a fixed text, namely 'This is a sculpture' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if historic=memorial)", - "value": "sculpture" - }, - { - "key": "memorial", - "description": "Layer 'Artworks' shows memorial=obelisk with a fixed text, namely 'This is an obelisk' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if historic=memorial)", - "value": "obelisk" - }, - { - "key": "memorial", - "description": "Layer 'Artworks' shows memorial=cross with a fixed text, namely 'This is a cross' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if historic=memorial)", - "value": "cross" - }, - { - "key": "memorial", - "description": "Layer 'Artworks' shows memorial=blue_plaque with a fixed text, namely 'This is a blue plaque' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if historic=memorial)", - "value": "blue_plaque" - }, - { - "key": "memorial", - "description": "Layer 'Artworks' shows memorial=tank with a fixed text, namely 'This is a historic tank, permanently placed in public space as memorial' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if historic=memorial)", - "value": "tank" - }, - { - "key": "memorial", - "description": "Layer 'Artworks' shows memorial=tree with a fixed text, namely 'This is a memorial tree' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if historic=memorial)", - "value": "tree" - }, - { - "key": "historic", - "description": "Layer 'Artworks' shows historic=tomb with a fixed text, namely 'This is a gravestone; the person is buried here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if historic=memorial)", - "value": "tomb" - }, - { - "key": "inscription", - "description": "Layer 'Artworks' shows and asks freeform values for key 'inscription' (in the mapcomplete.org theme 'Personal theme') (This is only shown if memorial!=bench & historic=memorial)" - }, - { - "key": "not:inscription", - "description": "Layer 'Artworks' shows not:inscription=yes with a fixed text, namely 'This memorial does not have an inscription' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if memorial!=bench & historic=memorial)", - "value": "yes" - }, - { - "key": "amenity", - "description": "Layer 'Artworks' shows amenity=bench with a fixed text, namely 'This artwork also serves as a bench' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "bench" - }, - { - "key": "amenity", - "description": "Layer 'Artworks' shows amenity= with a fixed text, namely 'This artwork does not serve as a bench' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key amenity.", - "value": "" - }, - { - "key": "backrest", - "description": "Layer 'Artworks' shows backrest=yes & two_sided=yes with a fixed text, namely 'This bench is two-sided and shares the backrest' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "yes" - }, - { - "key": "two_sided", - "description": "Layer 'Artworks' shows backrest=yes & two_sided=yes with a fixed text, namely 'This bench is two-sided and shares the backrest' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "yes" - }, - { - "key": "backrest", - "description": "Layer 'Artworks' shows backrest=yes with a fixed text, namely 'This bench does have a backrest' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "yes" - }, - { - "key": "backrest", - "description": "Layer 'Artworks' shows backrest=no with a fixed text, namely 'This bench does not have a backrest' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "no" - }, - { - "key": "armrest", - "description": "Layer 'Artworks' shows armrest=yes with a fixed text, namely 'This bench does have one or more armrests' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "yes" - }, - { - "key": "armrest", - "description": "Layer 'Artworks' shows armrest=no with a fixed text, namely 'This bench does not have any armrests' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "no" - }, - { - "key": "seats", - "description": "Layer 'Artworks' shows and asks freeform values for key 'seats' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)" - }, - { - "key": "seats:separated", - "description": "Layer 'Artworks' shows seats:separated=no with a fixed text, namely 'This bench does not have separated seats' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "no" - }, - { - "key": "material", - "description": "Layer 'Artworks' shows and asks freeform values for key 'material' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)" - }, - { - "key": "material", - "description": "Layer 'Artworks' shows material=wood with a fixed text, namely 'The seating is made from wood' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "wood" - }, - { - "key": "material", - "description": "Layer 'Artworks' shows material=metal with a fixed text, namely 'The seating is made from metal' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "metal" - }, - { - "key": "material", - "description": "Layer 'Artworks' shows material=stone with a fixed text, namely 'The seating is made from stone' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "stone" - }, - { - "key": "material", - "description": "Layer 'Artworks' shows material=concrete with a fixed text, namely 'The seating is made from concrete' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "concrete" - }, - { - "key": "material", - "description": "Layer 'Artworks' shows material=plastic with a fixed text, namely 'The seating is made from plastic' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "plastic" - }, - { - "key": "material", - "description": "Layer 'Artworks' shows material=steel with a fixed text, namely 'The seating is made from steel' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "steel" - }, - { - "key": "direction", - "description": "Layer 'Artworks' shows and asks freeform values for key 'direction' (in the mapcomplete.org theme 'Personal theme') (This is only shown if two_sided!=yes & amenity=bench)" - }, - { - "key": "colour", - "description": "Layer 'Artworks' shows and asks freeform values for key 'colour' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)" - }, - { - "key": "colour", - "description": "Layer 'Artworks' shows colour=brown with a fixed text, namely 'Colour: brown' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "brown" - }, - { - "key": "colour", - "description": "Layer 'Artworks' shows colour=green with a fixed text, namely 'Colour: green' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "green" - }, - { - "key": "colour", - "description": "Layer 'Artworks' shows colour=gray with a fixed text, namely 'Colour: gray' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "gray" - }, - { - "key": "colour", - "description": "Layer 'Artworks' shows colour=white with a fixed text, namely 'Colour: white' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "white" - }, - { - "key": "colour", - "description": "Layer 'Artworks' shows colour=red with a fixed text, namely 'Colour: red' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "red" - }, - { - "key": "colour", - "description": "Layer 'Artworks' shows colour=black with a fixed text, namely 'Colour: black' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "black" - }, - { - "key": "colour", - "description": "Layer 'Artworks' shows colour=blue with a fixed text, namely 'Colour: blue' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "blue" - }, - { - "key": "colour", - "description": "Layer 'Artworks' shows colour=yellow with a fixed text, namely 'Colour: yellow' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "yellow" - }, - { - "key": "survey:date", - "description": "Layer 'Artworks' shows and asks freeform values for key 'survey:date' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)" - }, - { - "key": "survey:date", - "description": "Layer 'Artworks' shows survey:date= with a fixed text, namely 'Surveyed today!' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key survey:date. (This is only shown if amenity=bench)", - "value": "" - }, - { - "key": "inscription", - "description": "Layer 'Artworks' shows and asks freeform values for key 'inscription' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)" - }, - { - "key": "not:inscription", - "description": "Layer 'Artworks' shows not:inscription=yes with a fixed text, namely 'This bench does not have an inscription' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "yes" - }, - { - "key": "inscription", - "description": "Layer 'Artworks' shows inscription= with a fixed text, namely 'This bench probably does not not have an inscription' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key inscription. (This is only shown if amenity=bench)", - "value": "" - }, - { - "key": "historic", - "description": "Layer 'Artworks' shows historic=memorial with a fixed text, namely 'This bench is a memorial for someone or something' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (historic=memorial | inscription~.+ | memorial=bench | tourism=artwork) & amenity=bench)", - "value": "memorial" - }, - { - "key": "historic", - "description": "Layer 'Artworks' shows historic= & not:historic=memorial with a fixed text, namely 'This bench is a not a memorial for someone or something' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key historic. (This is only shown if (historic=memorial | inscription~.+ | memorial=bench | tourism=artwork) & amenity=bench)", - "value": "" - }, - { - "key": "not:historic", - "description": "Layer 'Artworks' shows historic= & not:historic=memorial with a fixed text, namely 'This bench is a not a memorial for someone or something' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (historic=memorial | inscription~.+ | memorial=bench | tourism=artwork) & amenity=bench)", - "value": "memorial" - }, - { - "key": "emergency", - "description": "The MapComplete theme Personal theme has a layer Emergency assembly points showing features with this tag", - "value": "assembly_point" - }, - { - "key": "id", - "description": "Layer 'Emergency assembly points' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Emergency assembly points allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Emergency assembly points allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Emergency assembly points allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Emergency assembly points allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Emergency assembly points' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator", - "description": "Layer 'Emergency assembly points' shows and asks freeform values for key 'operator' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "assembly_point:earthquake", - "description": "Layer 'Emergency assembly points' shows assembly_point:earthquake=yes with a fixed text, namely 'Earthquake' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "assembly_point:flood", - "description": "Layer 'Emergency assembly points' shows assembly_point:flood=yes with a fixed text, namely 'Flood' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "assembly_point:fire", - "description": "Layer 'Emergency assembly points' shows assembly_point:fire=yes with a fixed text, namely 'Fire' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "assembly_point:landslide", - "description": "Layer 'Emergency assembly points' shows assembly_point:landslide=yes with a fixed text, namely 'Landslide' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "repair", - "description": "The MapComplete theme Personal theme has a layer Repair cafés and assisted repair workshops showing features with this tag", - "value": "assisted_self_service" - }, - { - "key": "id", - "description": "Layer 'Repair cafés and assisted repair workshops' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Repair cafés and assisted repair workshops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Repair cafés and assisted repair workshops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Repair cafés and assisted repair workshops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Repair cafés and assisted repair workshops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Repair cafés and assisted repair workshops' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Repair cafés and assisted repair workshops' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Repair cafés and assisted repair workshops' shows opening_hours=\"by appointment\" with a fixed text, namely 'Only by appointment' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "\"by appointment\"" - }, - { - "key": "opening_hours", - "description": "Layer 'Repair cafés and assisted repair workshops' shows opening_hours~^(\"by appointment\"|by appointment)$ with a fixed text, namely 'Only by appointment' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Repair cafés and assisted repair workshops' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "phone", - "description": "Layer 'Repair cafés and assisted repair workshops' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Repair cafés and assisted repair workshops' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Repair cafés and assisted repair workshops' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Repair cafés and assisted repair workshops' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Repair cafés and assisted repair workshops' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Repair cafés and assisted repair workshops' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Repair cafés and assisted repair workshops' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:mastodon", - "description": "Layer 'Repair cafés and assisted repair workshops' shows and asks freeform values for key 'contact:mastodon' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:facebook", - "description": "Layer 'Repair cafés and assisted repair workshops' shows and asks freeform values for key 'contact:facebook' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "service:mobile_phone:repair", - "description": "Layer 'Repair cafés and assisted repair workshops' shows service:mobile_phone:repair=yes with a fixed text, namely 'Mobile phones are repaired here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:computer:repair", - "description": "Layer 'Repair cafés and assisted repair workshops' shows service:computer:repair=yes with a fixed text, namely 'Computers are repaired here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:bicycle:repair", - "description": "Layer 'Repair cafés and assisted repair workshops' shows service:bicycle:repair=yes with a fixed text, namely 'Bicycles are repaired here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:electronics:repair", - "description": "Layer 'Repair cafés and assisted repair workshops' shows service:electronics:repair=yes with a fixed text, namely 'Electronic devices are repaired here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:furniture:repair", - "description": "Layer 'Repair cafés and assisted repair workshops' shows service:furniture:repair=yes with a fixed text, namely 'Furniture is repaired here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:clothes:repair", - "description": "Layer 'Repair cafés and assisted repair workshops' shows service:clothes:repair=yes with a fixed text, namely 'Clothes are repaired here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer ATMs showing features with this tag", - "value": "atm" - }, - { - "key": "id", - "description": "Layer 'ATMs' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'ATMs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'ATMs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'ATMs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'ATMs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "brand", - "description": "Layer 'ATMs' shows and asks freeform values for key 'brand' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator", - "description": "Layer 'ATMs' shows and asks freeform values for key 'operator' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity!=bank)" - }, - { - "key": "opening_hours", - "description": "Layer 'ATMs' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'ATMs' shows opening_hours=24/7 with a fixed text, namely '24/7 opened (including holidays)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "24/7" - }, - { - "key": "opening_hours", - "description": "Layer 'ATMs' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "cash_out", - "description": "Layer 'ATMs' shows cash_out= with a fixed text, namely 'You can withdraw cash from this ATM' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key cash_out.", - "value": "" - }, - { - "key": "cash_out", - "description": "Layer 'ATMs' shows cash_out=yes with a fixed text, namely 'You can withdraw cash from this ATM' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "cash_out", - "description": "Layer 'ATMs' shows cash_out=no with a fixed text, namely 'You cannot withdraw cash from this ATM' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "cash_in", - "description": "Layer 'ATMs' shows cash_in= with a fixed text, namely 'You probably cannot deposit cash into this ATM' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key cash_in.", - "value": "" - }, - { - "key": "cash_in", - "description": "Layer 'ATMs' shows cash_in=yes with a fixed text, namely 'You can deposit cash into this ATM' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "cash_in", - "description": "Layer 'ATMs' shows cash_in=no with a fixed text, namely 'You cannot deposit cash into this ATM' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "cash_out:notes:denominations", - "description": "Layer 'ATMs' shows cash_out:notes:denominations=5 EUR with a fixed text, namely '5 euro notes can be withdrawn' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (cash_out= | cash_out=yes) & (_currency= | _currency~^(.*EUR.*)$))", - "value": "5 EUR" - }, - { - "key": "cash_out:notes:denominations", - "description": "Layer 'ATMs' shows cash_out:notes:denominations=10 EUR with a fixed text, namely '10 euro notes can be withdrawn' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (cash_out= | cash_out=yes) & (_currency= | _currency~^(.*EUR.*)$))", - "value": "10 EUR" - }, - { - "key": "cash_out:notes:denominations", - "description": "Layer 'ATMs' shows cash_out:notes:denominations=20 EUR with a fixed text, namely '20 euro notes can be withdrawn' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (cash_out= | cash_out=yes) & (_currency= | _currency~^(.*EUR.*)$))", - "value": "20 EUR" - }, - { - "key": "cash_out:notes:denominations", - "description": "Layer 'ATMs' shows cash_out:notes:denominations=50 EUR with a fixed text, namely '50 euro notes can be withdrawn' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (cash_out= | cash_out=yes) & (_currency= | _currency~^(.*EUR.*)$))", - "value": "50 EUR" - }, - { - "key": "cash_out:notes:denominations", - "description": "Layer 'ATMs' shows cash_out:notes:denominations=100 EUR with a fixed text, namely '100 euro notes can be withdrawn' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (cash_out= | cash_out=yes) & (_currency= | _currency~^(.*EUR.*)$))", - "value": "100 EUR" - }, - { - "key": "cash_out:notes:denominations", - "description": "Layer 'ATMs' shows cash_out:notes:denominations=200 EUR with a fixed text, namely '200 euro notes can be withdrawn' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (cash_out= | cash_out=yes) & (_currency= | _currency~^(.*EUR.*)$))", - "value": "200 EUR" - }, - { - "key": "cash_out:notes:denominations", - "description": "Layer 'ATMs' shows cash_out:notes:denominations=500 EUR with a fixed text, namely '500 euro notes can be withdrawn' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (cash_out= | cash_out=yes) & (_currency= | _currency~^(.*EUR.*)$))", - "value": "500 EUR" - }, - { - "key": "speech_output", - "description": "Layer 'ATMs' shows speech_output=yes with a fixed text, namely 'This ATM has speech output, usually available through a headphone jack' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "speech_output", - "description": "Layer 'ATMs' shows speech_output=no with a fixed text, namely 'This ATM does not have speech output' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Banks showing features with this tag", - "value": "bank" - }, - { - "key": "id", - "description": "Layer 'Banks' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Banks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Banks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Banks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Banks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "atm", - "description": "Layer 'Banks' shows atm=yes with a fixed text, namely 'This bank has an ATM' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "atm", - "description": "Layer 'Banks' shows atm=no with a fixed text, namely 'This bank does not have an ATM' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "atm", - "description": "Layer 'Banks' shows atm=separate with a fixed text, namely 'This bank does have an ATM, but it is mapped as a different icon' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "separate" - }, - { - "key": "barrier", - "description": "The MapComplete theme Personal theme has a layer Barriers showing features with this tag", - "value": "bollard" - }, - { - "key": "barrier", - "description": "The MapComplete theme Personal theme has a layer Barriers showing features with this tag", - "value": "cycle_barrier" - }, - { - "key": "id", - "description": "Layer 'Barriers' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Barriers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Barriers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Barriers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Barriers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "bicycle", - "description": "Layer 'Barriers' shows bicycle=yes with a fixed text, namely 'A cyclist can go past this.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _referencing_ways~.+)", - "value": "yes" - }, - { - "key": "bicycle", - "description": "Layer 'Barriers' shows bicycle=no with a fixed text, namely 'A cyclist can not go past this.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _referencing_ways~.+)", - "value": "no" - }, - { - "key": "barrier", - "description": "Layer 'Barriers' shows barrier=bollard with a fixed text, namely 'This is a single bollard in the road' (in the mapcomplete.org theme 'Personal theme')", - "value": "bollard" - }, - { - "key": "barrier", - "description": "Layer 'Barriers' shows barrier=cycle_barrier with a fixed text, namely 'This is a cycle barrier slowing down cyclists' (in the mapcomplete.org theme 'Personal theme')", - "value": "cycle_barrier" - }, - { - "key": "bollard", - "description": "Layer 'Barriers' shows bollard=removable with a fixed text, namely 'Removable bollard' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if barrier=bollard)", - "value": "removable" - }, - { - "key": "bollard", - "description": "Layer 'Barriers' shows bollard=fixed with a fixed text, namely 'Fixed bollard' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if barrier=bollard)", - "value": "fixed" - }, - { - "key": "bollard", - "description": "Layer 'Barriers' shows bollard=foldable with a fixed text, namely 'Bollard that can be folded down' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if barrier=bollard)", - "value": "foldable" - }, - { - "key": "bollard", - "description": "Layer 'Barriers' shows bollard=flexible with a fixed text, namely 'Flexible bollard, usually plastic' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if barrier=bollard)", - "value": "flexible" - }, - { - "key": "bollard", - "description": "Layer 'Barriers' shows bollard=rising with a fixed text, namely 'Rising bollard' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if barrier=bollard)", - "value": "rising" - }, - { - "key": "cycle_barrier", - "description": "Layer 'Barriers' shows cycle_barrier=single with a fixed text, namely 'Single, just two barriers with a space inbetween' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if barrier=cycle_barrier)", - "value": "single" - }, - { - "key": "cycle_barrier", - "description": "Layer 'Barriers' shows cycle_barrier=double with a fixed text, namely 'Double, two barriers behind each other' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if barrier=cycle_barrier)", - "value": "double" - }, - { - "key": "cycle_barrier", - "description": "Layer 'Barriers' shows cycle_barrier=triple with a fixed text, namely 'Triple, three barriers behind each other' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if barrier=cycle_barrier)", - "value": "triple" - }, - { - "key": "cycle_barrier", - "description": "Layer 'Barriers' shows cycle_barrier=squeeze with a fixed text, namely 'Squeeze gate, gap is smaller at top, than at the bottom' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if barrier=cycle_barrier)", - "value": "squeeze" - }, - { - "key": "maxwidth:physical", - "description": "Layer 'Barriers' shows and asks freeform values for key 'maxwidth:physical' (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycle_barrier!=double & cycle_barrier!=triple & _referencing_ways~.+)" - }, - { - "key": "width:separation", - "description": "Layer 'Barriers' shows and asks freeform values for key 'width:separation' (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycle_barrier=double | cycle_barrier=triple)" - }, - { - "key": "width:opening", - "description": "Layer 'Barriers' shows and asks freeform values for key 'width:opening' (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycle_barrier=double | cycle_barrier=triple)" - }, - { - "key": "overlap", - "description": "Layer 'Barriers' shows and asks freeform values for key 'overlap' (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycle_barrier=double | cycle_barrier=triple)" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer BBQ showing features with this tag", - "value": "bbq" - }, - { - "key": "id", - "description": "Layer 'BBQ' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'BBQ allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'BBQ allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'BBQ allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'BBQ allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "access", - "description": "Layer 'BBQ' shows access=yes with a fixed text, namely 'Public' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "access", - "description": "Layer 'BBQ' shows access=no with a fixed text, namely 'No access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "access", - "description": "Layer 'BBQ' shows access=private with a fixed text, namely 'Private' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "private" - }, - { - "key": "access", - "description": "Layer 'BBQ' shows access=permissive with a fixed text, namely 'Access until revoked' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "permissive" - }, - { - "key": "access", - "description": "Layer 'BBQ' shows access=customers with a fixed text, namely 'Access only for customers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "customers" - }, - { - "key": "access", - "description": "Layer 'BBQ' shows access=permit with a fixed text, namely 'Access only for authorized persons' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "permit" - }, - { - "key": "covered", - "description": "Layer 'BBQ' shows covered=no with a fixed text, namely 'The grill is not covered' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "covered", - "description": "Layer 'BBQ' shows covered=yes with a fixed text, namely 'The grill is covered' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "fuel", - "description": "Layer 'BBQ' shows fuel=wood with a fixed text, namely 'Wood' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wood" - }, - { - "key": "fuel", - "description": "Layer 'BBQ' shows fuel=charcoal with a fixed text, namely 'Charcoal' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "charcoal" - }, - { - "key": "fuel", - "description": "Layer 'BBQ' shows fuel=electric with a fixed text, namely 'Electric' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "electric" - }, - { - "key": "fuel", - "description": "Layer 'BBQ' shows fuel=gas with a fixed text, namely 'Gas' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "gas" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Benches showing features with this tag", - "value": "bench" - }, - { - "key": "id", - "description": "Layer 'Benches' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "backrest", - "description": "Layer 'Benches' shows backrest=yes & two_sided=yes with a fixed text, namely 'This bench is two-sided and shares the backrest' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "two_sided", - "description": "Layer 'Benches' shows backrest=yes & two_sided=yes with a fixed text, namely 'This bench is two-sided and shares the backrest' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "backrest", - "description": "Layer 'Benches' shows backrest=yes with a fixed text, namely 'This bench does have a backrest' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "backrest", - "description": "Layer 'Benches' shows backrest=no with a fixed text, namely 'This bench does not have a backrest' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "armrest", - "description": "Layer 'Benches' shows armrest=yes with a fixed text, namely 'This bench does have one or more armrests' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "armrest", - "description": "Layer 'Benches' shows armrest=no with a fixed text, namely 'This bench does not have any armrests' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "seats", - "description": "Layer 'Benches' shows and asks freeform values for key 'seats' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "seats:separated", - "description": "Layer 'Benches' shows seats:separated=no with a fixed text, namely 'This bench does not have separated seats' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "material", - "description": "Layer 'Benches' shows and asks freeform values for key 'material' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "material", - "description": "Layer 'Benches' shows material=wood with a fixed text, namely 'The seating is made from wood' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wood" - }, - { - "key": "material", - "description": "Layer 'Benches' shows material=metal with a fixed text, namely 'The seating is made from metal' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "metal" - }, - { - "key": "material", - "description": "Layer 'Benches' shows material=stone with a fixed text, namely 'The seating is made from stone' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "stone" - }, - { - "key": "material", - "description": "Layer 'Benches' shows material=concrete with a fixed text, namely 'The seating is made from concrete' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "concrete" - }, - { - "key": "material", - "description": "Layer 'Benches' shows material=plastic with a fixed text, namely 'The seating is made from plastic' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "plastic" - }, - { - "key": "material", - "description": "Layer 'Benches' shows material=steel with a fixed text, namely 'The seating is made from steel' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "steel" - }, - { - "key": "direction", - "description": "Layer 'Benches' shows and asks freeform values for key 'direction' (in the mapcomplete.org theme 'Personal theme') (This is only shown if two_sided!=yes)" - }, - { - "key": "colour", - "description": "Layer 'Benches' shows and asks freeform values for key 'colour' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "colour", - "description": "Layer 'Benches' shows colour=brown with a fixed text, namely 'Colour: brown' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "brown" - }, - { - "key": "colour", - "description": "Layer 'Benches' shows colour=green with a fixed text, namely 'Colour: green' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "green" - }, - { - "key": "colour", - "description": "Layer 'Benches' shows colour=gray with a fixed text, namely 'Colour: gray' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "gray" - }, - { - "key": "colour", - "description": "Layer 'Benches' shows colour=white with a fixed text, namely 'Colour: white' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "white" - }, - { - "key": "colour", - "description": "Layer 'Benches' shows colour=red with a fixed text, namely 'Colour: red' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "red" - }, - { - "key": "colour", - "description": "Layer 'Benches' shows colour=black with a fixed text, namely 'Colour: black' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "black" - }, - { - "key": "colour", - "description": "Layer 'Benches' shows colour=blue with a fixed text, namely 'Colour: blue' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "blue" - }, - { - "key": "colour", - "description": "Layer 'Benches' shows colour=yellow with a fixed text, namely 'Colour: yellow' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yellow" - }, - { - "key": "survey:date", - "description": "Layer 'Benches' shows and asks freeform values for key 'survey:date' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "survey:date", - "description": "Layer 'Benches' shows survey:date= with a fixed text, namely 'Surveyed today!' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key survey:date.", - "value": "" - }, - { - "key": "inscription", - "description": "Layer 'Benches' shows and asks freeform values for key 'inscription' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "not:inscription", - "description": "Layer 'Benches' shows not:inscription=yes with a fixed text, namely 'This bench does not have an inscription' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "inscription", - "description": "Layer 'Benches' shows inscription= with a fixed text, namely 'This bench probably does not not have an inscription' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key inscription.", - "value": "" - }, - { - "key": "tourism", - "description": "Layer 'Benches' shows tourism=artwork with a fixed text, namely 'This bench has an integrated artwork' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "artwork" - }, - { - "key": "not:tourism:artwork", - "description": "Layer 'Benches' shows not:tourism:artwork=yes with a fixed text, namely 'This bench does not have an integrated artwork' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "tourism", - "description": "Layer 'Benches' shows tourism= with a fixed text, namely 'This bench probably doesn't have an integrated artwork' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key tourism.", - "value": "" - }, - { - "key": "historic", - "description": "Layer 'Benches' shows historic=memorial with a fixed text, namely 'This bench is a memorial for someone or something' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (historic=memorial | inscription~.+ | memorial=bench | tourism=artwork))", - "value": "memorial" - }, - { - "key": "historic", - "description": "Layer 'Benches' shows historic= & not:historic=memorial with a fixed text, namely 'This bench is a not a memorial for someone or something' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key historic. (This is only shown if (historic=memorial | inscription~.+ | memorial=bench | tourism=artwork))", - "value": "" - }, - { - "key": "not:historic", - "description": "Layer 'Benches' shows historic= & not:historic=memorial with a fixed text, namely 'This bench is a not a memorial for someone or something' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (historic=memorial | inscription~.+ | memorial=bench | tourism=artwork))", - "value": "memorial" - }, - { - "key": "artwork_type", - "description": "Layer 'Benches' shows and asks freeform values for key 'artwork_type' (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)" - }, - { - "key": "artwork_type", - "description": "Layer 'Benches' shows artwork_type=architecture with a fixed text, namely 'Architecture' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "architecture" - }, - { - "key": "artwork_type", - "description": "Layer 'Benches' shows artwork_type=mural with a fixed text, namely 'Mural' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "mural" - }, - { - "key": "artwork_type", - "description": "Layer 'Benches' shows artwork_type=painting with a fixed text, namely 'Painting' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "painting" - }, - { - "key": "artwork_type", - "description": "Layer 'Benches' shows artwork_type=sculpture with a fixed text, namely 'Sculpture' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "sculpture" - }, - { - "key": "artwork_type", - "description": "Layer 'Benches' shows artwork_type=statue with a fixed text, namely 'Statue' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "statue" - }, - { - "key": "artwork_type", - "description": "Layer 'Benches' shows artwork_type=bust with a fixed text, namely 'Bust' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "bust" - }, - { - "key": "artwork_type", - "description": "Layer 'Benches' shows artwork_type=stone with a fixed text, namely 'Stone' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "stone" - }, - { - "key": "artwork_type", - "description": "Layer 'Benches' shows artwork_type=installation with a fixed text, namely 'Installation' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "installation" - }, - { - "key": "artwork_type", - "description": "Layer 'Benches' shows artwork_type=graffiti with a fixed text, namely 'Graffiti' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "graffiti" - }, - { - "key": "artwork_type", - "description": "Layer 'Benches' shows artwork_type=relief with a fixed text, namely 'Relief' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "relief" - }, - { - "key": "artwork_type", - "description": "Layer 'Benches' shows artwork_type=azulejo with a fixed text, namely 'Azulejo (Spanish decorative tilework)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "azulejo" - }, - { - "key": "artwork_type", - "description": "Layer 'Benches' shows artwork_type=tilework with a fixed text, namely 'Tilework' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "tilework" - }, - { - "key": "artwork_type", - "description": "Layer 'Benches' shows artwork_type=woodcarving with a fixed text, namely 'Woodcarving' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "woodcarving" - }, - { - "key": "artist:wikidata", - "description": "Layer 'Benches' shows and asks freeform values for key 'artist:wikidata' (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)" - }, - { - "key": "artist_name", - "description": "Layer 'Benches' shows and asks freeform values for key 'artist_name' (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)" - }, - { - "key": "website", - "description": "Layer 'Benches' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)" - }, - { - "key": "subject:wikidata", - "description": "Layer 'Benches' shows and asks freeform values for key 'subject:wikidata' (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Benches at public transport stops showing features with this tag", - "value": "bus_stop" - }, - { - "key": "bench", - "description": "The MapComplete theme Personal theme has a layer Benches at public transport stops showing features with this tag", - "value": "yes" - }, - { - "key": "bench", - "description": "The MapComplete theme Personal theme has a layer Benches at public transport stops showing features with this tag", - "value": "stand_up_bench" - }, - { - "key": "id", - "description": "Layer 'Benches at public transport stops' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Benches at public transport stops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Benches at public transport stops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Benches at public transport stops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Benches at public transport stops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Benches at public transport stops' shows values with key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "bench", - "description": "Layer 'Benches at public transport stops' shows bench=yes with a fixed text, namely 'There is a normal, sit-down bench here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "bench", - "description": "Layer 'Benches at public transport stops' shows bench=stand_up_bench with a fixed text, namely 'Stand up bench' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "stand_up_bench" - }, - { - "key": "bench", - "description": "Layer 'Benches at public transport stops' shows bench=no with a fixed text, namely 'There is no bench here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "man_made", - "description": "The MapComplete theme Personal theme has a layer Bicycle counters showing features with this tag", - "value": "monitoring_station" - }, - { - "key": "monitoring:bicycle", - "description": "The MapComplete theme Personal theme has a layer Bicycle counters showing features with this tag", - "value": "yes" - }, - { - "key": "id", - "description": "Layer 'Bicycle counters' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Bicycle counters allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Bicycle counters allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Bicycle counters allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Bicycle counters allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "display", - "description": "Layer 'Bicycle counters' shows display=digital with a fixed text, namely 'This counter has a digital display' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "digital" - }, - { - "key": "display", - "description": "Layer 'Bicycle counters' shows display=analog with a fixed text, namely 'This counter has an analog display' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "analog" - }, - { - "key": "display", - "description": "Layer 'Bicycle counters' shows display=no with a fixed text, namely 'This counter has no display' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "name", - "description": "Layer 'Bicycle counters' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "start_date", - "description": "Layer 'Bicycle counters' shows and asks freeform values for key 'start_date' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "amenity", - "description": "Layer 'Bicycle counters' shows amenity=clock with a fixed text, namely 'This counter has a clock' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "clock" - }, - { - "key": "amenity", - "description": "Layer 'Bicycle counters' shows amenity= with a fixed text, namely 'This counter has no clock' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key amenity.", - "value": "" - }, - { - "key": "ref", - "description": "Layer 'Bicycle counters' shows and asks freeform values for key 'ref' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "noref", - "description": "Layer 'Bicycle counters' shows noref=yes with a fixed text, namely 'This counter has no reference number' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "website", - "description": "Layer 'Bicycle counters' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Bicycle library showing features with this tag", - "value": "bicycle_library" - }, - { - "key": "id", - "description": "Layer 'Bicycle library' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Bicycle library allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Bicycle library' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Bicycle library' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Bicycle library' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'Bicycle library' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Bicycle library' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Bicycle library' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Bicycle library' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Bicycle library' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Bicycle library' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Bicycle library' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "charge", - "description": "Layer 'Bicycle library' shows and asks freeform values for key 'charge' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "fee", - "description": "Layer 'Bicycle library' shows fee=no & charge= with a fixed text, namely 'Lending a bicycle is free' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "charge", - "description": "Layer 'Bicycle library' shows fee=no & charge= with a fixed text, namely 'Lending a bicycle is free' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key charge.", - "value": "" - }, - { - "key": "fee", - "description": "Layer 'Bicycle library' shows fee=yes & charge=€20warranty + €20/year with a fixed text, namely 'Lending a bicycle costs €20/year and €20 warranty' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "charge", - "description": "Layer 'Bicycle library' shows fee=yes & charge=€20warranty + €20/year with a fixed text, namely 'Lending a bicycle costs €20/year and €20 warranty' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "€20warranty + €20/year" - }, - { - "key": "bicycle_library:for", - "description": "Layer 'Bicycle library' shows bicycle_library:for=child with a fixed text, namely 'Bikes for children available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "child" - }, - { - "key": "bicycle_library:for", - "description": "Layer 'Bicycle library' shows bicycle_library:for=adult with a fixed text, namely 'Bikes for adult available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "adult" - }, - { - "key": "bicycle_library:for", - "description": "Layer 'Bicycle library' shows bicycle_library:for=disabled with a fixed text, namely 'Bikes for disabled persons available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "disabled" - }, - { - "key": "description", - "description": "Layer 'Bicycle library' shows and asks freeform values for key 'description' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Bicycle rental showing features with this tag", - "value": "bicycle_rental" - }, - { - "key": "bicycle_rental", - "description": "The MapComplete theme Personal theme has a layer Bicycle rental showing features with this tag" - }, - { - "key": "service:bicycle:rental", - "description": "The MapComplete theme Personal theme has a layer Bicycle rental showing features with this tag", - "value": "yes" - }, - { - "key": "rental", - "description": "The MapComplete theme Personal theme has a layer Bicycle rental showing features with this tag" - }, - { - "key": "id", - "description": "Layer 'Bicycle rental' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Bicycle rental allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Bicycle rental allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Bicycle rental allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Bicycle rental allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "shop", - "description": "Layer 'Bicycle rental' shows shop=rental & bicycle_rental=shop with a fixed text, namely 'This is a shop whose main focus is bicycle rental' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bicycle_rental)", - "value": "rental" - }, - { - "key": "bicycle_rental", - "description": "Layer 'Bicycle rental' shows shop=rental & bicycle_rental=shop with a fixed text, namely 'This is a shop whose main focus is bicycle rental' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bicycle_rental)", - "value": "shop" - }, - { - "key": "shop", - "description": "Layer 'Bicycle rental' shows shop=rental with a fixed text, namely 'This is a rental business which rents out various objects and/or vehicles. It rents out bicycles too, but this is not the main focus' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bicycle_rental)", - "value": "rental" - }, - { - "key": "service:bicycle:rental", - "description": "Layer 'Bicycle rental' shows service:bicycle:rental=yes & shop=bicycle with a fixed text, namely 'This is a shop which sells or repairs bicycles, but also rents out bicycles' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bicycle_rental)", - "value": "yes" - }, - { - "key": "shop", - "description": "Layer 'Bicycle rental' shows service:bicycle:rental=yes & shop=bicycle with a fixed text, namely 'This is a shop which sells or repairs bicycles, but also rents out bicycles' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bicycle_rental)", - "value": "bicycle" - }, - { - "key": "bicycle_rental", - "description": "Layer 'Bicycle rental' shows bicycle_rental=docking_station with a fixed text, namely 'This is an automated docking station, where a bicycle is mechanically locked to a structure' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bicycle_rental)", - "value": "docking_station" - }, - { - "key": "bicycle_rental", - "description": "Layer 'Bicycle rental' shows bicycle_rental=key_dispensing_machine with a fixed text, namely 'A machine is present which dispenses and accepts keys, eventually after authentication and/or payment. The bicycles are parked nearby' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bicycle_rental)", - "value": "key_dispensing_machine" - }, - { - "key": "bicycle_rental", - "description": "Layer 'Bicycle rental' shows bicycle_rental=dropoff_point with a fixed text, namely 'This is a dropoff point, e.g. a reserved parking to place the bicycles clearly marked as being for the rental service only' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bicycle_rental)", - "value": "dropoff_point" - }, - { - "key": "website", - "description": "Layer 'Bicycle rental' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Bicycle rental' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Bicycle rental' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Bicycle rental' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Bicycle rental' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'Bicycle rental' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Bicycle rental' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Bicycle rental' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop~.+ | opening_hours~.+)" - }, - { - "key": "opening_hours", - "description": "Layer 'Bicycle rental' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop~.+ | opening_hours~.+)", - "value": "closed" - }, - { - "key": "payment:cash", - "description": "Layer 'Bicycle rental' shows payment:cash=yes with a fixed text, namely 'Cash is accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop~.+)", - "value": "yes" - }, - { - "key": "payment:cards", - "description": "Layer 'Bicycle rental' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop~.+)", - "value": "yes" - }, - { - "key": "payment:qr_code", - "description": "Layer 'Bicycle rental' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop~.+)", - "value": "yes" - }, - { - "key": "payment:cash", - "description": "Layer 'Bicycle rental' shows payment:cash=yes with a fixed text, namely 'Cash is accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=)", - "value": "yes" - }, - { - "key": "payment:cards", - "description": "Layer 'Bicycle rental' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=)", - "value": "yes" - }, - { - "key": "payment:qr_code", - "description": "Layer 'Bicycle rental' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=)", - "value": "yes" - }, - { - "key": "payment:app", - "description": "Layer 'Bicycle rental' shows payment:app=yes with a fixed text, namely 'Payment is done using a dedicated app' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=)", - "value": "yes" - }, - { - "key": "payment:membership_card", - "description": "Layer 'Bicycle rental' shows payment:membership_card=yes with a fixed text, namely 'Payment is done using a membership card' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=)", - "value": "yes" - }, - { - "key": "rental", - "description": "Layer 'Bicycle rental' shows and asks freeform values for key 'rental' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "rental", - "description": "Layer 'Bicycle rental' shows rental=city_bike with a fixed text, namely 'Normal city bikes can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "city_bike" - }, - { - "key": "rental", - "description": "Layer 'Bicycle rental' shows rental=ebike with a fixed text, namely 'Electrical bikes can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "ebike" - }, - { - "key": "rental", - "description": "Layer 'Bicycle rental' shows rental=bmx with a fixed text, namely 'BMX bikes can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "bmx" - }, - { - "key": "rental", - "description": "Layer 'Bicycle rental' shows rental=mtb with a fixed text, namely 'Mountainbikes can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "mtb" - }, - { - "key": "rental", - "description": "Layer 'Bicycle rental' shows rental=kid_bike with a fixed text, namely 'Bikes for children can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "kid_bike" - }, - { - "key": "rental", - "description": "Layer 'Bicycle rental' shows rental=tandem with a fixed text, namely 'Tandem bicycles can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "tandem" - }, - { - "key": "rental", - "description": "Layer 'Bicycle rental' shows rental=racebike with a fixed text, namely 'Race bicycles can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "racebike" - }, - { - "key": "rental", - "description": "Layer 'Bicycle rental' shows rental=bike_helmet with a fixed text, namely 'Bike helmets can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "bike_helmet" - }, - { - "key": "rental", - "description": "Layer 'Bicycle rental' shows rental=cargo_bike with a fixed text, namely 'Cargo bikes can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "cargo_bike" - }, - { - "key": "capacity:city_bike", - "description": "Layer 'Bicycle rental' shows and asks freeform values for key 'capacity:city_bike' (in the mapcomplete.org theme 'Personal theme') (This is only shown if rental~^(.*city_bike.*)$)" - }, - { - "key": "capacity:ebike", - "description": "Layer 'Bicycle rental' shows and asks freeform values for key 'capacity:ebike' (in the mapcomplete.org theme 'Personal theme') (This is only shown if rental~^(.*ebike.*)$)" - }, - { - "key": "capacity:kid_bike", - "description": "Layer 'Bicycle rental' shows and asks freeform values for key 'capacity:kid_bike' (in the mapcomplete.org theme 'Personal theme') (This is only shown if rental~^(.*kid_bike.*)$)" - }, - { - "key": "capacity:bmx", - "description": "Layer 'Bicycle rental' shows and asks freeform values for key 'capacity:bmx' (in the mapcomplete.org theme 'Personal theme') (This is only shown if rental~^(.*bmx.*)$)" - }, - { - "key": "capacity:mtb", - "description": "Layer 'Bicycle rental' shows and asks freeform values for key 'capacity:mtb' (in the mapcomplete.org theme 'Personal theme') (This is only shown if rental~^(.*mtb.*)$)" - }, - { - "key": "capacity:bicycle_pannier", - "description": "Layer 'Bicycle rental' shows and asks freeform values for key 'capacity:bicycle_pannier' (in the mapcomplete.org theme 'Personal theme') (This is only shown if rental~^(.*bicycle_pannier.*)$)" - }, - { - "key": "capacity:tandem_bicycle", - "description": "Layer 'Bicycle rental' shows and asks freeform values for key 'capacity:tandem_bicycle' (in the mapcomplete.org theme 'Personal theme') (This is only shown if rental~^(.*tandem_bicycle.*)$)" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Bike cafe showing features with this tag", - "value": "pub" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Bike cafe showing features with this tag", - "value": "bar" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Bike cafe showing features with this tag", - "value": "cafe" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Bike cafe showing features with this tag", - "value": "restaurant" - }, - { - "key": "pub", - "description": "The MapComplete theme Personal theme has a layer Bike cafe showing features with this tag", - "value": "cycling" - }, - { - "key": "pub", - "description": "The MapComplete theme Personal theme has a layer Bike cafe showing features with this tag", - "value": "bicycle" - }, - { - "key": "theme", - "description": "The MapComplete theme Personal theme has a layer Bike cafe showing features with this tag", - "value": "cycling" - }, - { - "key": "theme", - "description": "The MapComplete theme Personal theme has a layer Bike cafe showing features with this tag", - "value": "bicycle" - }, - { - "key": "id", - "description": "Layer 'Bike cafe' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Bike cafe allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Bike cafe allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Bike cafe allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Bike cafe allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Bike cafe' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "service:bicycle:pump", - "description": "Layer 'Bike cafe' shows service:bicycle:pump=yes with a fixed text, namely 'This bike cafe offers a bike pump for anyone' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:bicycle:pump", - "description": "Layer 'Bike cafe' shows service:bicycle:pump=no with a fixed text, namely 'This bike cafe doesn't offer a bike pump for anyone' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "service:bicycle:diy", - "description": "Layer 'Bike cafe' shows service:bicycle:diy=yes with a fixed text, namely 'This bike cafe offers tools for DIY repair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:bicycle:diy", - "description": "Layer 'Bike cafe' shows service:bicycle:diy=no with a fixed text, namely 'This bike cafe doesn't offer tools for DIY repair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "service:bicycle:repair", - "description": "Layer 'Bike cafe' shows service:bicycle:repair=yes with a fixed text, namely 'This bike cafe repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:bicycle:repair", - "description": "Layer 'Bike cafe' shows service:bicycle:repair=no with a fixed text, namely 'This bike cafe doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "website", - "description": "Layer 'Bike cafe' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Bike cafe' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'Bike cafe' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Bike cafe' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Bike cafe' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Bike cafe' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Bike cafe' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Bike cafe' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Bike cafe' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "service:bicycle:cleaning", - "description": "The MapComplete theme Personal theme has a layer Bike cleaning service showing features with this tag", - "value": "yes" - }, - { - "key": "service:bicycle:cleaning", - "description": "The MapComplete theme Personal theme has a layer Bike cleaning service showing features with this tag", - "value": "diy" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Bike cleaning service showing features with this tag", - "value": "bicycle_wash" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Bike cleaning service showing features with this tag", - "value": "bike_wash" - }, - { - "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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Bike cleaning service allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Bike cleaning service allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Bike cleaning service allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Bike cleaning service allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "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 'Personal theme') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)" - }, - { - "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 'Personal theme') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", - "value": "no" - }, - { - "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 'Personal theme') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", - "value": "yes" - }, - { - "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 'Personal theme') 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~.+)", - "value": "" - }, - { - "key": "charge", - "description": "Layer 'Bike cleaning service' shows and asks freeform values for key 'charge' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bike_wash | amenity=bicycle_wash)" - }, - { - "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 'Personal theme') (This is only shown if amenity=bike_wash | amenity=bicycle_wash)", - "value": "no" - }, - { - "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 'Personal theme') (This is only shown if amenity=bike_wash | amenity=bicycle_wash)", - "value": "yes" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Bike parking showing features with this tag", - "value": "bicycle_parking" - }, - { - "key": "id", - "description": "Layer 'Bike parking' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Bike parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Bike parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Bike parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Bike parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "bicycle_parking", - "description": "Layer 'Bike parking' shows and asks freeform values for key 'bicycle_parking' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "bicycle_parking", - "description": "Layer 'Bike parking' shows bicycle_parking=stands with a fixed text, namely 'Stands' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "stands" - }, - { - "key": "bicycle_parking", - "description": "Layer 'Bike parking' shows bicycle_parking=safe_loops with a fixed text, namely 'Rack with side loops' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "safe_loops" - }, - { - "key": "bicycle_parking", - "description": "Layer 'Bike parking' shows bicycle_parking=wall_loops with a fixed text, namely 'Wheelbenders / rack' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wall_loops" - }, - { - "key": "bicycle_parking", - "description": "Layer 'Bike parking' shows bicycle_parking=handlebar_holder with a fixed text, namely 'Handlebar holder' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "handlebar_holder" - }, - { - "key": "bicycle_parking", - "description": "Layer 'Bike parking' shows bicycle_parking=rack with a fixed text, namely 'Rack' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "rack" - }, - { - "key": "bicycle_parking", - "description": "Layer 'Bike parking' shows bicycle_parking=two_tier with a fixed text, namely 'Two-tiered' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "two_tier" - }, - { - "key": "bicycle_parking", - "description": "Layer 'Bike parking' shows bicycle_parking=shed with a fixed text, namely 'Shed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "shed" - }, - { - "key": "bicycle_parking", - "description": "Layer 'Bike parking' shows bicycle_parking=bollard with a fixed text, namely 'Bollard' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "bollard" - }, - { - "key": "bicycle_parking", - "description": "Layer 'Bike parking' shows bicycle_parking=floor with a fixed text, namely 'An area on the floor which is marked for bicycle parking' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "floor" - }, - { - "key": "bicycle_parking", - "description": "Layer 'Bike parking' shows bicycle_parking=lockers with a fixed text, namely 'A locker - the bicycles are enclosed completely individually or with a few bicycles together. The locker is too small to fit a person standing..' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "lockers" - }, - { - "key": "location", - "description": "Layer 'Bike parking' shows location=underground with a fixed text, namely 'Underground parking' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "underground" - }, - { - "key": "location", - "description": "Layer 'Bike parking' shows location=surface with a fixed text, namely 'Surface level parking' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "surface" - }, - { - "key": "location", - "description": "Layer 'Bike parking' shows location=rooftop with a fixed text, namely 'Rooftop parking' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "rooftop" - }, - { - "key": "location", - "description": "Layer 'Bike parking' shows location= with a fixed text, namely 'Surface level parking' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key location.", - "value": "" - }, - { - "key": "covered", - "description": "Layer 'Bike parking' shows covered=yes with a fixed text, namely 'This parking is covered (it has a roof)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if bicycle_parking!=shed & location!=underground)", - "value": "yes" - }, - { - "key": "covered", - "description": "Layer 'Bike parking' shows covered=no with a fixed text, namely 'This parking is not covered' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if bicycle_parking!=shed & location!=underground)", - "value": "no" - }, - { - "key": "capacity", - "description": "Layer 'Bike parking' shows and asks freeform values for key 'capacity' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "access", - "description": "Layer 'Bike parking' shows and asks freeform values for key 'access' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "access", - "description": "Layer 'Bike parking' shows access=yes with a fixed text, namely 'Publicly accessible' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "access", - "description": "Layer 'Bike parking' shows access=customers with a fixed text, namely 'Access is primarily for visitors to a business' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "customers" - }, - { - "key": "access", - "description": "Layer 'Bike parking' shows access=members with a fixed text, namely 'Access is limited to members of a school, company or organisation' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "members" - }, - { - "key": "access", - "description": "Layer 'Bike parking' shows access=private with a fixed text, namely 'Access is limited to members of a school, company or organisation' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "private" - }, - { - "key": "fee", - "description": "Layer 'Bike parking' shows fee=yes with a fixed text, namely 'One has to pay to use this bicycle parking' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "fee", - "description": "Layer 'Bike parking' shows fee=no with a fixed text, namely 'Free to use' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "charge", - "description": "Layer 'Bike parking' shows and asks freeform values for key 'charge' (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes)" - }, - { - "key": "opening_hours", - "description": "Layer 'Bike parking' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Bike parking' shows opening_hours=24/7 with a fixed text, namely '24/7 opened (including holidays)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "24/7" - }, - { - "key": "opening_hours", - "description": "Layer 'Bike parking' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "operator", - "description": "Layer 'Bike parking' shows and asks freeform values for key 'operator' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:phone", - "description": "Layer 'Bike parking' shows and asks freeform values for key 'operator:phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'Bike parking' shows phone~.+ with a fixed text, namely '{phone}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Bike parking' shows contact:phone~.+ with a fixed text, namely '{contact:phone}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:website", - "description": "Layer 'Bike parking' shows and asks freeform values for key 'operator:website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Bike parking' shows website~.+ with a fixed text, namely '{website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Bike parking' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Bike parking' shows and asks freeform values for key 'operator:email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "cargo_bike", - "description": "Layer 'Bike parking' shows cargo_bike=yes with a fixed text, namely 'This parking has room for cargo bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "cargo_bike", - "description": "Layer 'Bike parking' shows cargo_bike=designated with a fixed text, namely 'This parking has designated (official) spots for cargo bikes.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "designated" - }, - { - "key": "cargo_bike", - "description": "Layer 'Bike parking' shows cargo_bike=no with a fixed text, namely 'You're not allowed to park cargo bikes or there are no places provided for cargo bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "capacity:cargo_bike", - "description": "Layer 'Bike parking' shows and asks freeform values for key 'capacity:cargo_bike' (in the mapcomplete.org theme 'Personal theme') (This is only shown if capacity:cargo_bike~.+ | cargo_bike~^(designated|yes)$)" - }, - { - "key": "cargo_bike", - "description": "Layer 'Bike parking' shows cargo_bike=no with a fixed text, namely 'There are no dedicated spaces for cargo bikes here or parking cargo bikes here is not allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if capacity:cargo_bike~.+ | cargo_bike~^(designated|yes)$)", - "value": "no" - }, - { - "key": "maxstay", - "description": "Layer 'Bike parking' shows and asks freeform values for key 'maxstay' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Bicycle pump and repair showing features with this tag", - "value": "bicycle_repair_station" - }, - { - "key": "id", - "description": "Layer 'Bicycle pump and repair' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Bicycle pump and repair allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Bicycle pump and repair allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Bicycle pump and repair allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Bicycle pump and repair allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "service:bicycle:tools", - "description": "Layer 'Bicycle pump and repair' shows service:bicycle:tools=no & service:bicycle:pump=yes with a fixed text, namely 'There is only a pump present' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "service:bicycle:pump", - "description": "Layer 'Bicycle pump and repair' shows service:bicycle:tools=no & service:bicycle:pump=yes with a fixed text, namely 'There is only a pump present' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:bicycle:tools", - "description": "Layer 'Bicycle pump and repair' shows service:bicycle:tools=yes & service:bicycle:pump=no with a fixed text, namely 'There are only tools (screwdrivers, pliers, …) present' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:bicycle:pump", - "description": "Layer 'Bicycle pump and repair' shows service:bicycle:tools=yes & service:bicycle:pump=no with a fixed text, namely 'There are only tools (screwdrivers, pliers, …) present' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "service:bicycle:tools", - "description": "Layer 'Bicycle pump and repair' shows service:bicycle:tools=yes & service:bicycle:pump=yes with a fixed text, namely 'There are both tools and a pump present' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:bicycle:pump", - "description": "Layer 'Bicycle pump and repair' shows service:bicycle:tools=yes & service:bicycle:pump=yes with a fixed text, namely 'There are both tools and a pump present' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:bicycle:pump:operational_status", - "description": "Layer 'Bicycle pump and repair' shows service:bicycle:pump:operational_status=broken with a fixed text, namely 'The bike pump is broken' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:pump=yes)", - "value": "broken" - }, - { - "key": "service:bicycle:pump:operational_status", - "description": "Layer 'Bicycle pump and repair' shows service:bicycle:pump:operational_status=operational with a fixed text, namely 'The bike pump is operational' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:pump=yes)", - "value": "operational" - }, - { - "key": "opening_hours", - "description": "Layer 'Bicycle pump and repair' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Bicycle pump and repair' shows opening_hours=24/7 with a fixed text, namely '24/7 opened (including holidays)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "24/7" - }, - { - "key": "opening_hours", - "description": "Layer 'Bicycle pump and repair' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "access", - "description": "Layer 'Bicycle pump and repair' shows access=yes with a fixed text, namely 'Publicly accessible' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "access", - "description": "Layer 'Bicycle pump and repair' shows access=public with a fixed text, namely 'Publicly accessible' (in the mapcomplete.org theme 'Personal theme')", - "value": "public" - }, - { - "key": "access", - "description": "Layer 'Bicycle pump and repair' shows access=customers with a fixed text, namely 'Only for customers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "customers" - }, - { - "key": "access", - "description": "Layer 'Bicycle pump and repair' shows access=private with a fixed text, namely 'Not accessible to the general public' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "private" - }, - { - "key": "access", - "description": "Layer 'Bicycle pump and repair' shows access=no with a fixed text, namely 'Not accessible to the general public' (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "operator", - "description": "Layer 'Bicycle pump and repair' shows and asks freeform values for key 'operator' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Bicycle pump and repair' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'Bicycle pump and repair' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "service:bicycle:chain_tool", - "description": "Layer 'Bicycle pump and repair' shows service:bicycle:chain_tool=yes with a fixed text, namely 'There is a chain tool' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:tools=yes)", - "value": "yes" - }, - { - "key": "service:bicycle:chain_tool", - "description": "Layer 'Bicycle pump and repair' shows service:bicycle:chain_tool=no with a fixed text, namely 'There is no chain tool' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:tools=yes)", - "value": "no" - }, - { - "key": "service:bicycle:stand", - "description": "Layer 'Bicycle pump and repair' shows service:bicycle:stand=yes with a fixed text, namely 'There is a hook or stand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:tools=yes)", - "value": "yes" - }, - { - "key": "service:bicycle:stand", - "description": "Layer 'Bicycle pump and repair' shows service:bicycle:stand=no with a fixed text, namely 'There is no hook or stand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:tools=yes)", - "value": "no" - }, - { - "key": "valves", - "description": "Layer 'Bicycle pump and repair' shows and asks freeform values for key 'valves' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "valves", - "description": "Layer 'Bicycle pump and repair' shows valves=sclaverand with a fixed text, namely 'Sclaverand/Presta (narrow-width bike tires)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sclaverand" - }, - { - "key": "valves", - "description": "Layer 'Bicycle pump and repair' shows valves=dunlop with a fixed text, namely 'Dunlop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "dunlop" - }, - { - "key": "valves", - "description": "Layer 'Bicycle pump and repair' shows valves=schrader with a fixed text, namely 'Schrader (cars and mountainbikes)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "schrader" - }, - { - "key": "manual", - "description": "Layer 'Bicycle pump and repair' shows manual=yes with a fixed text, namely 'Manual pump' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:pump=yes)", - "value": "yes" - }, - { - "key": "manual", - "description": "Layer 'Bicycle pump and repair' shows manual=no with a fixed text, namely 'Electrical pump' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:pump=yes)", - "value": "no" - }, - { - "key": "manometer", - "description": "Layer 'Bicycle pump and repair' shows manometer=yes with a fixed text, namely 'There is a manometer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:pump=yes)", - "value": "yes" - }, - { - "key": "manometer", - "description": "Layer 'Bicycle pump and repair' shows manometer=no with a fixed text, namely 'There is no manometer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:pump=yes)", - "value": "no" - }, - { - "key": "manometer", - "description": "Layer 'Bicycle pump and repair' shows manometer=broken with a fixed text, namely 'There is manometer but it is broken' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:pump=yes)", - "value": "broken" - }, - { - "key": "level", - "description": "Layer 'Bicycle pump and repair' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Bicycle pump and repair' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Bicycle pump and repair' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Bicycle pump and repair' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Bicycle pump and repair' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Bicycle pump and repair' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "shop", - "description": "The MapComplete theme Personal theme has a layer Bike repair/shop showing features with this tag", - "value": "bicycle" - }, - { - "key": "service:bicycle:retail", - "description": "The MapComplete theme Personal theme has a layer Bike repair/shop showing features with this tag", - "value": "yes" - }, - { - "key": "service:bicycle:repair", - "description": "The MapComplete theme Personal theme has a layer Bike repair/shop showing features with this tag", - "value": "yes" - }, - { - "key": "shop", - "description": "The MapComplete theme Personal theme has a layer Bike repair/shop showing features with this tag", - "value": "sports" - }, - { - "key": "sport", - "description": "The MapComplete theme Personal theme has a layer Bike repair/shop showing features with this tag", - "value": "bicycle" - }, - { - "key": "sport", - "description": "The MapComplete theme Personal theme has a layer Bike repair/shop showing features with this tag", - "value": "cycling" - }, - { - "key": "sport", - "description": "The MapComplete theme Personal theme has a layer Bike repair/shop showing features with this tag", - "value": "" - }, - { - "key": "id", - "description": "Layer 'Bike repair/shop' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Bike repair/shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Bike repair/shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Bike repair/shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Bike repair/shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'shop' (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=bicycle_rental with a fixed text, namely 'Bicycle rental shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "bicycle_rental" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=agrarian with a fixed text, namely 'Farm Supply Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "agrarian" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=alcohol with a fixed text, namely 'Liquor Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "alcohol" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=anime with a fixed text, namely 'Anime / Manga Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "anime" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=antiques with a fixed text, namely 'Antique Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "antiques" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=appliance with a fixed text, namely 'Appliance Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "appliance" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=art with a fixed text, namely 'Art Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "art" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=baby_goods with a fixed text, namely 'Baby Goods Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "baby_goods" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=bag with a fixed text, namely 'Bag/Luggage Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "bag" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=bakery with a fixed text, namely 'Bakery' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "bakery" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=bathroom_furnishing with a fixed text, namely 'Bathroom Furnishing Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "bathroom_furnishing" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=beauty with a fixed text, namely 'Beauty Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "beauty" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=bed with a fixed text, namely 'Bedding/Mattress Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "bed" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=beverages with a fixed text, namely 'Beverage Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "beverages" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=bicycle with a fixed text, namely 'Bicycle Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "bicycle" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=boat with a fixed text, namely 'Boat Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "boat" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=bookmaker with a fixed text, namely 'Bookmaker' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "bookmaker" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=books with a fixed text, namely 'Bookstore' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "books" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=brewing_supplies with a fixed text, namely 'Brewing Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "brewing_supplies" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=butcher with a fixed text, namely 'Butcher' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "butcher" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=camera with a fixed text, namely 'Camera Equipment Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "camera" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=candles with a fixed text, namely 'Candle Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "candles" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=cannabis with a fixed text, namely 'Cannabis Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "cannabis" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=car with a fixed text, namely 'Car Dealership' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "car" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=car_parts with a fixed text, namely 'Car Parts Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "car_parts" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=car_repair with a fixed text, namely 'Car Repair Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "car_repair" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=caravan with a fixed text, namely 'RV Dealership' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "caravan" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=carpet with a fixed text, namely 'Carpet Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "carpet" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=catalogue with a fixed text, namely 'Catalog Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "catalogue" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=charity with a fixed text, namely 'Charity Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "charity" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=cheese with a fixed text, namely 'Cheese Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "cheese" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=chemist with a fixed text, namely 'Drugstore' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "chemist" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=chocolate with a fixed text, namely 'Chocolate Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "chocolate" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=clothes with a fixed text, namely 'Clothing Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "clothes" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=coffee with a fixed text, namely 'Coffee Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "coffee" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=collector with a fixed text, namely 'Collectibles Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "collector" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=computer with a fixed text, namely 'Computer Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "computer" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=confectionery with a fixed text, namely 'Candy Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "confectionery" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=convenience with a fixed text, namely 'Convenience Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "convenience" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=copyshop with a fixed text, namely 'Copy Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "copyshop" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=cosmetics with a fixed text, namely 'Cosmetics Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "cosmetics" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=country_store with a fixed text, namely 'Rural Supplies Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "country_store" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=craft with a fixed text, namely 'Arts & Crafts Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "craft" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=curtain with a fixed text, namely 'Curtain Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "curtain" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=dairy with a fixed text, namely 'Dairy Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "dairy" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=deli with a fixed text, namely 'Delicatessen' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "deli" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=department_store with a fixed text, namely 'Department Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "department_store" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=doityourself with a fixed text, namely 'DIY Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "doityourself" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=doors with a fixed text, namely 'Door Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "doors" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=dry_cleaning with a fixed text, namely 'Dry Cleaner' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "dry_cleaning" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=e-cigarette with a fixed text, namely 'E-Cigarette Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "e-cigarette" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=electrical with a fixed text, namely 'Electrical Equipment Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "electrical" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=electronics with a fixed text, namely 'Electronics Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "electronics" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=erotic with a fixed text, namely 'Erotic Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "erotic" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=fabric with a fixed text, namely 'Fabric Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "fabric" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=farm with a fixed text, namely 'Produce Stand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "farm" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=fashion_accessories with a fixed text, namely 'Fashion Accessories Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "fashion_accessories" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=fireplace with a fixed text, namely 'Fireplace Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "fireplace" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=fishing with a fixed text, namely 'Fishing Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "fishing" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=flooring with a fixed text, namely 'Flooring Supply Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "flooring" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=florist with a fixed text, namely 'Florist' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "florist" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=frame with a fixed text, namely 'Framing Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "frame" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=frozen_food with a fixed text, namely 'Frozen Food Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "frozen_food" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=fuel with a fixed text, namely 'Fuel Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "fuel" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=funeral_directors with a fixed text, namely 'Funeral Home' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "funeral_directors" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=furniture with a fixed text, namely 'Furniture Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "furniture" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=games with a fixed text, namely 'Tabletop Game Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "games" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=garden_centre with a fixed text, namely 'Garden Center' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "garden_centre" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=gas with a fixed text, namely 'Bottled Gas Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "gas" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=general with a fixed text, namely 'General Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "general" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=gift with a fixed text, namely 'Gift Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "gift" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=greengrocer with a fixed text, namely 'Greengrocer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "greengrocer" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=hairdresser with a fixed text, namely 'Hairdresser' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "hairdresser" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=hairdresser_supply with a fixed text, namely 'Hairdresser Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "hairdresser_supply" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=hardware with a fixed text, namely 'Hardware Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "hardware" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=health_food with a fixed text, namely 'Health Food Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "health_food" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=hearing_aids with a fixed text, namely 'Hearing Aids Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "hearing_aids" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=herbalist with a fixed text, namely 'Herbalist' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "herbalist" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=hifi with a fixed text, namely 'Hifi Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "hifi" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=honey with a fixed text, namely 'Honey Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "honey" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=household_linen with a fixed text, namely 'Household Linen Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "household_linen" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=houseware with a fixed text, namely 'Houseware Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "houseware" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=hunting with a fixed text, namely 'Hunting Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "hunting" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=interior_decoration with a fixed text, namely 'Interior Decoration Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "interior_decoration" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=jewelry with a fixed text, namely 'Jewelry Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "jewelry" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=kiosk with a fixed text, namely 'Kiosk' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "kiosk" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=kitchen with a fixed text, namely 'Kitchen Design Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "kitchen" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=laundry with a fixed text, namely 'Laundry' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "laundry" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=leather with a fixed text, namely 'Leather Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "leather" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=lighting with a fixed text, namely 'Lighting Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "lighting" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=locksmith with a fixed text, namely 'Locksmith' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "locksmith" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=lottery with a fixed text, namely 'Lottery Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "lottery" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=mall with a fixed text, namely 'Mall' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "mall" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=massage with a fixed text, namely 'Massage Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "massage" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=medical_supply with a fixed text, namely 'Medical Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "medical_supply" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=military_surplus with a fixed text, namely 'Military Surplus Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "military_surplus" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=mobile_phone with a fixed text, namely 'Mobile Phone Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "mobile_phone" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=model with a fixed text, namely 'Model Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "model" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=money_lender with a fixed text, namely 'Money Lender' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "money_lender" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=motorcycle with a fixed text, namely 'Motorcycle Dealership' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "motorcycle" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=motorcycle_repair with a fixed text, namely 'Motorcycle Repair Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "motorcycle_repair" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=music with a fixed text, namely 'Music Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "music" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=musical_instrument with a fixed text, namely 'Musical Instrument Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "musical_instrument" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=newsagent with a fixed text, namely 'Newsstand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "newsagent" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=nutrition_supplements with a fixed text, namely 'Nutrition Supplements Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "nutrition_supplements" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=nuts with a fixed text, namely 'Nuts Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "nuts" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=optician with a fixed text, namely 'Optician' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "optician" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=outdoor with a fixed text, namely 'Outdoors Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "outdoor" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=outpost with a fixed text, namely 'Online Retailer Outpost' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "outpost" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=paint with a fixed text, namely 'Paint Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "paint" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=party with a fixed text, namely 'Party Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "party" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=pasta with a fixed text, namely 'Pasta Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "pasta" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=pastry with a fixed text, namely 'Pastry Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "pastry" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=pawnbroker with a fixed text, namely 'Pawnshop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "pawnbroker" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=perfumery with a fixed text, namely 'Perfume Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "perfumery" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=pet with a fixed text, namely 'Pet Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "pet" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=pet_grooming with a fixed text, namely 'Pet Groomer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "pet_grooming" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=photo with a fixed text, namely 'Photography Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "photo" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=pottery with a fixed text, namely 'Pottery Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "pottery" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=printer_ink with a fixed text, namely 'Printer Ink Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "printer_ink" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=psychic with a fixed text, namely 'Psychic' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "psychic" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=pyrotechnics with a fixed text, namely 'Fireworks Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "pyrotechnics" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=radiotechnics with a fixed text, namely 'Radio/Electronic Component Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "radiotechnics" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=religion with a fixed text, namely 'Religious Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "religion" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=rental with a fixed text, namely 'Rental Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "rental" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=repair with a fixed text, namely 'Repair Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "repair" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=rice with a fixed text, namely 'Rice Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "rice" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=scuba_diving with a fixed text, namely 'Scuba Diving Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "scuba_diving" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=seafood with a fixed text, namely 'Seafood Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "seafood" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=second_hand with a fixed text, namely 'Thrift Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "second_hand" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=sewing with a fixed text, namely 'Sewing Supply Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "sewing" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=shoe_repair with a fixed text, namely 'Shoe Repair Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "shoe_repair" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=shoes with a fixed text, namely 'Shoe Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "shoes" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=spices with a fixed text, namely 'Spice Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "spices" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=sports with a fixed text, namely 'Sporting Goods Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "sports" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=stationery with a fixed text, namely 'Stationery Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "stationery" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=storage_rental with a fixed text, namely 'Storage Rental' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "storage_rental" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=supermarket with a fixed text, namely 'Supermarket' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "supermarket" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=swimming_pool with a fixed text, namely 'Pool Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "swimming_pool" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=tailor with a fixed text, namely 'Tailor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "tailor" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=tattoo with a fixed text, namely 'Tattoo Parlor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "tattoo" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=tea with a fixed text, namely 'Tea Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "tea" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=telecommunication with a fixed text, namely 'Telecom Retail Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "telecommunication" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=ticket with a fixed text, namely 'Ticket Seller' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "ticket" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=tiles with a fixed text, namely 'Tile Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "tiles" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=tobacco with a fixed text, namely 'Tobacco Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "tobacco" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=tool_hire with a fixed text, namely 'Tool Rental' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "tool_hire" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=toys with a fixed text, namely 'Toy Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "toys" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=trade with a fixed text, namely 'Trade Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "trade" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=travel_agency with a fixed text, namely 'Travel Agency' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "travel_agency" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=trophy with a fixed text, namely 'Trophy Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "trophy" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=tyres with a fixed text, namely 'Tire Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "tyres" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=vacuum_cleaner with a fixed text, namely 'Vacuum Cleaner Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "vacuum_cleaner" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=variety_store with a fixed text, namely 'Discount Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "variety_store" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=video with a fixed text, namely 'Video Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "video" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=video_games with a fixed text, namely 'Video Game Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "video_games" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=watches with a fixed text, namely 'Watches Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "watches" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=water with a fixed text, namely 'Drinking Water Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "water" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=water_sports with a fixed text, namely 'Watersport/Swim Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "water_sports" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=weapons with a fixed text, namely 'Weapon Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "weapons" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=wholesale with a fixed text, namely 'Wholesale Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "wholesale" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=wigs with a fixed text, namely 'Wig Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "wigs" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=window_blind with a fixed text, namely 'Window Blind Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "window_blind" - }, - { - "key": "shop", - "description": "Layer 'Bike repair/shop' shows shop=wine with a fixed text, namely 'Wine Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "wine" - }, - { - "key": "brand", - "description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'brand' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "not:brand", - "description": "Layer 'Bike repair/shop' shows not:brand=yes with a fixed text, namely 'This shop does not have a specific brand, it is not part of a bigger chain' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "second_hand", - "description": "Layer 'Bike repair/shop' shows second_hand=only with a fixed text, namely 'This shop sells second-hand items only' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=clothes | shop=books | shop=charity | shop=furniture | shop=mobile_phone | shop=computer | shop=toys)", - "value": "only" - }, - { - "key": "second_hand", - "description": "Layer 'Bike repair/shop' shows second_hand=yes with a fixed text, namely 'This shop sells second-hand items along with new items' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=clothes | shop=books | shop=charity | shop=furniture | shop=mobile_phone | shop=computer | shop=toys)", - "value": "yes" - }, - { - "key": "second_hand", - "description": "Layer 'Bike repair/shop' shows second_hand=no with a fixed text, namely 'This shop only sells brand-new items' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=clothes | shop=books | shop=charity | shop=furniture | shop=mobile_phone | shop=computer | shop=toys)", - "value": "no" - }, - { - "key": "opening_hours", - "description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Bike repair/shop' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "website", - "description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Bike repair/shop' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Bike repair/shop' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Bike repair/shop' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Bike repair/shop' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "payment:cash", - "description": "Layer 'Bike repair/shop' shows payment:cash=yes with a fixed text, namely 'Cash is accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:cards", - "description": "Layer 'Bike repair/shop' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:qr_code", - "description": "Layer 'Bike repair/shop' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "level", - "description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Bike repair/shop' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Bike repair/shop' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Bike repair/shop' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Bike repair/shop' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Bike repair/shop' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "service:print:A4", - "description": "Layer 'Bike repair/shop' shows service:print:A4=yes with a fixed text, namely 'This shop can print on papers of size A4' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "yes" - }, - { - "key": "service:print:A3", - "description": "Layer 'Bike repair/shop' shows service:print:A3=yes with a fixed text, namely 'This shop can print on papers of size A3' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "yes" - }, - { - "key": "service:print:A2", - "description": "Layer 'Bike repair/shop' shows service:print:A2=yes with a fixed text, namely 'This shop can print on papers of size A2' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "yes" - }, - { - "key": "service:print:A1", - "description": "Layer 'Bike repair/shop' shows service:print:A1=yes with a fixed text, namely 'This shop can print on papers of size A1' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "yes" - }, - { - "key": "service:print:A0", - "description": "Layer 'Bike repair/shop' shows service:print:A0=yes with a fixed text, namely 'This shop can print on papers of size A0' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "yes" - }, - { - "key": "service:binding", - "description": "Layer 'Bike repair/shop' shows service:binding=yes with a fixed text, namely 'This shop binds papers into a booklet' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "yes" - }, - { - "key": "service:binding", - "description": "Layer 'Bike repair/shop' shows service:binding=no with a fixed text, namely 'This shop does bind books' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "no" - }, - { - "key": "craft", - "description": "Layer 'Bike repair/shop' shows craft=key_cutter with a fixed text, namely 'This shop is also specialized in key cutting' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=shoe_repair | service:key_cutting~.+ | craft=key_cutting | shop=diy | shop=doityourself | shop=home_improvement | shop=hardware | shop=locksmith | shop=repair)", - "value": "key_cutter" - }, - { - "key": "service:key_cutting", - "description": "Layer 'Bike repair/shop' shows service:key_cutting=yes with a fixed text, namely 'This shop offers key cutting as a service' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=shoe_repair | service:key_cutting~.+ | craft=key_cutting | shop=diy | shop=doityourself | shop=home_improvement | shop=hardware | shop=locksmith | shop=repair)", - "value": "yes" - }, - { - "key": "craft", - "description": "Layer 'Bike repair/shop' shows craft= & service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key craft. (This is only shown if shop=shoe_repair | service:key_cutting~.+ | craft=key_cutting | shop=diy | shop=doityourself | shop=home_improvement | shop=hardware | shop=locksmith | shop=repair)", - "value": "" - }, - { - "key": "service:key_cutting", - "description": "Layer 'Bike repair/shop' shows craft= & service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=shoe_repair | service:key_cutting~.+ | craft=key_cutting | shop=diy | shop=doityourself | shop=home_improvement | shop=hardware | shop=locksmith | shop=repair)", - "value": "no" - }, - { - "key": "service:bicycle:retail", - "description": "Layer 'Bike repair/shop' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", - "value": "yes" - }, - { - "key": "service:bicycle:retail", - "description": "Layer 'Bike repair/shop' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", - "value": "no" - }, - { - "key": "service:bicycle:second_hand", - "description": "Layer 'Bike repair/shop' shows service:bicycle:second_hand=yes with a fixed text, namely 'This shop sells second-hand bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:second_hand~.+ | shop=bicycle | shop=charity | shop=second_hand | shop=bicycle_repair)", - "value": "yes" - }, - { - "key": "service:bicycle:second_hand", - "description": "Layer 'Bike repair/shop' shows service:bicycle:second_hand=no with a fixed text, namely 'This shop doesn't sell second-hand bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:second_hand~.+ | shop=bicycle | shop=charity | shop=second_hand | shop=bicycle_repair)", - "value": "no" - }, - { - "key": "service:bicycle:second_hand", - "description": "Layer 'Bike repair/shop' shows service:bicycle:second_hand=only with a fixed text, namely 'This shop only sells second-hand bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:second_hand~.+ | shop=bicycle | shop=charity | shop=second_hand | shop=bicycle_repair)", - "value": "only" - }, - { - "key": "service:bicycle:repair", - "description": "Layer 'Bike repair/shop' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", - "value": "yes" - }, - { - "key": "service:bicycle:repair", - "description": "Layer 'Bike repair/shop' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", - "value": "no" - }, - { - "key": "service:bicycle:repair", - "description": "Layer 'Bike repair/shop' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", - "value": "only_sold" - }, - { - "key": "service:bicycle:repair", - "description": "Layer 'Bike repair/shop' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", - "value": "brand" - }, - { - "key": "service:bicycle:rental", - "description": "Layer 'Bike repair/shop' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", - "value": "yes" - }, - { - "key": "service:bicycle:rental", - "description": "Layer 'Bike repair/shop' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", - "value": "no" - }, - { - "key": "rental", - "description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'rental' (in the mapcomplete.org theme 'Personal theme') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))" - }, - { - "key": "rental", - "description": "Layer 'Bike repair/shop' shows rental=city_bike with a fixed text, namely 'Normal city bikes can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))", - "value": "city_bike" - }, - { - "key": "rental", - "description": "Layer 'Bike repair/shop' shows rental=ebike with a fixed text, namely 'Electrical bikes can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))", - "value": "ebike" - }, - { - "key": "rental", - "description": "Layer 'Bike repair/shop' shows rental=bmx with a fixed text, namely 'BMX bikes can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))", - "value": "bmx" - }, - { - "key": "rental", - "description": "Layer 'Bike repair/shop' shows rental=mtb with a fixed text, namely 'Mountainbikes can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))", - "value": "mtb" - }, - { - "key": "rental", - "description": "Layer 'Bike repair/shop' shows rental=kid_bike with a fixed text, namely 'Bikes for children can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))", - "value": "kid_bike" - }, - { - "key": "rental", - "description": "Layer 'Bike repair/shop' shows rental=tandem with a fixed text, namely 'Tandem bicycles can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))", - "value": "tandem" - }, - { - "key": "rental", - "description": "Layer 'Bike repair/shop' shows rental=racebike with a fixed text, namely 'Race bicycles can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))", - "value": "racebike" - }, - { - "key": "rental", - "description": "Layer 'Bike repair/shop' shows rental=bike_helmet with a fixed text, namely 'Bike helmets can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))", - "value": "bike_helmet" - }, - { - "key": "rental", - "description": "Layer 'Bike repair/shop' shows rental=cargo_bike with a fixed text, namely 'Cargo bikes can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))", - "value": "cargo_bike" - }, - { - "key": "capacity:city_bike", - "description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'capacity:city_bike' (in the mapcomplete.org theme 'Personal theme') (This is only shown if rental~^(.*city_bike.*)$ & (service:bicycle:rental=yes | bicycle_rental~.+))" - }, - { - "key": "capacity:ebike", - "description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'capacity:ebike' (in the mapcomplete.org theme 'Personal theme') (This is only shown if rental~^(.*ebike.*)$ & (service:bicycle:rental=yes | bicycle_rental~.+))" - }, - { - "key": "capacity:kid_bike", - "description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'capacity:kid_bike' (in the mapcomplete.org theme 'Personal theme') (This is only shown if rental~^(.*kid_bike.*)$ & (service:bicycle:rental=yes | bicycle_rental~.+))" - }, - { - "key": "capacity:bmx", - "description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'capacity:bmx' (in the mapcomplete.org theme 'Personal theme') (This is only shown if rental~^(.*bmx.*)$ & (service:bicycle:rental=yes | bicycle_rental~.+))" - }, - { - "key": "capacity:mtb", - "description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'capacity:mtb' (in the mapcomplete.org theme 'Personal theme') (This is only shown if rental~^(.*mtb.*)$ & (service:bicycle:rental=yes | bicycle_rental~.+))" - }, - { - "key": "capacity:bicycle_pannier", - "description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'capacity:bicycle_pannier' (in the mapcomplete.org theme 'Personal theme') (This is only shown if rental~^(.*bicycle_pannier.*)$ & (service:bicycle:rental=yes | bicycle_rental~.+))" - }, - { - "key": "capacity:tandem_bicycle", - "description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'capacity:tandem_bicycle' (in the mapcomplete.org theme 'Personal theme') (This is only shown if rental~^(.*tandem_bicycle.*)$ & (service:bicycle:rental=yes | bicycle_rental~.+))" - }, - { - "key": "service:bicycle:pump", - "description": "Layer 'Bike repair/shop' shows service:bicycle:pump=yes with a fixed text, namely 'This shop offers a bike pump for anyone' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:pump~.+ | shop=bicycle | shop=bicycle_repair | service:bicycle:retail=yes | ^(service:bicycle:.+)$~~^(yes)$)", - "value": "yes" - }, - { - "key": "service:bicycle:pump", - "description": "Layer 'Bike repair/shop' shows service:bicycle:pump=no with a fixed text, namely 'This shop doesn't offer a bike pump for anyone' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:pump~.+ | shop=bicycle | shop=bicycle_repair | service:bicycle:retail=yes | ^(service:bicycle:.+)$~~^(yes)$)", - "value": "no" - }, - { - "key": "service:bicycle:pump", - "description": "Layer 'Bike repair/shop' shows service:bicycle:pump=separate with a fixed text, namely 'There is bicycle pump, it is shown as a separate point' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:pump~.+ | shop=bicycle | shop=bicycle_repair | service:bicycle:retail=yes | ^(service:bicycle:.+)$~~^(yes)$)", - "value": "separate" - }, - { - "key": "service:bicycle:diy", - "description": "Layer 'Bike repair/shop' shows service:bicycle:diy=yes with a fixed text, namely 'This shop offers tools for DIY bicycle repair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:diy~.+ | shop=bicycle | shop=bicycle_repair | service:bicycle:repair~^(yes|only)$)", - "value": "yes" - }, - { - "key": "service:bicycle:diy", - "description": "Layer 'Bike repair/shop' shows service:bicycle:diy=no with a fixed text, namely 'This shop doesn't offer tools for DIY bicycle repair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:diy~.+ | shop=bicycle | shop=bicycle_repair | service:bicycle:repair~^(yes|only)$)", - "value": "no" - }, - { - "key": "service:bicycle:diy", - "description": "Layer 'Bike repair/shop' shows service:bicycle:diy=only_sold with a fixed text, namely 'Tools for DIY bicycle repair are only available if you bought/hire the bike in the shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:diy~.+ | shop=bicycle | shop=bicycle_repair | service:bicycle:repair~^(yes|only)$)", - "value": "only_sold" - }, - { - "key": "service:bicycle:cleaning", - "description": "Layer 'Bike repair/shop' shows service:bicycle:cleaning=yes with a fixed text, namely 'This shop cleans bicycles' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:cleaning~.+ | shop=bicycle | shop=bicycle_repair | ^(service:bicycle:.*)$~~^(yes|only)$)", - "value": "yes" - }, - { - "key": "service:bicycle:cleaning", - "description": "Layer 'Bike repair/shop' shows service:bicycle:cleaning=diy with a fixed text, namely 'This shop has an installation where one can clean bicycles themselves' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:cleaning~.+ | shop=bicycle | shop=bicycle_repair | ^(service:bicycle:.*)$~~^(yes|only)$)", - "value": "diy" - }, - { - "key": "service:bicycle:cleaning", - "description": "Layer 'Bike repair/shop' shows service:bicycle:cleaning=no with a fixed text, namely 'This shop doesn't offer bicycle cleaning' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:cleaning~.+ | shop=bicycle | shop=bicycle_repair | ^(service:bicycle:.*)$~~^(yes|only)$)", - "value": "no" - }, - { - "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)" - }, - { - "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Bike repair/shop' 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 'Personal theme') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", - "value": "no" - }, - { - "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Bike repair/shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", - "value": "yes" - }, - { - "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Bike repair/shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Personal theme') 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~.+)", - "value": "" - }, - { - "key": "internet_access", - "description": "Layer 'Bike repair/shop' shows internet_access=wlan with a fixed text, namely 'This place offers wireless internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wlan" - }, - { - "key": "internet_access", - "description": "Layer 'Bike repair/shop' shows internet_access=no with a fixed text, namely 'This place does not offer internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "internet_access", - "description": "Layer 'Bike repair/shop' shows internet_access=yes with a fixed text, namely 'This place offers internet access' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "internet_access", - "description": "Layer 'Bike repair/shop' shows internet_access=terminal with a fixed text, namely 'This place offers internet access via a terminal or computer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "terminal" - }, - { - "key": "internet_access", - "description": "Layer 'Bike repair/shop' shows internet_access=wired with a fixed text, namely 'This place offers wired internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wired" - }, - { - "key": "internet_access", - "description": "Layer 'Bike repair/shop' shows internet_access=terminal;wifi with a fixed text, namely 'This place offers both wireless internet and internet access via a terminal or computer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "terminal;wifi" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Bike repair/shop' shows internet_access:fee=yes with a fixed text, namely 'There is a fee for the internet access at this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "yes" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Bike repair/shop' shows internet_access:fee=no with a fixed text, namely 'Internet access is free at this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "no" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Bike repair/shop' shows internet_access:fee=customers with a fixed text, namely 'Internet access is free at this place, for customers only' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "customers" - }, - { - "key": "internet_access:ssid", - "description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'internet_access:ssid' (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access~^(.*wlan.*)$)" - }, - { - "key": "internet_access:ssid", - "description": "Layer 'Bike repair/shop' shows internet_access:ssid=Telekom with a fixed text, namely 'Telekom' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access~^(.*wlan.*)$)", - "value": "Telekom" - }, - { - "key": "organic", - "description": "Layer 'Bike repair/shop' shows organic=yes with a fixed text, namely 'This shop offers organic products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=clothes | shop=shoes | shop=butcher | shop=cosmetics | shop=deli | shop=bakery | shop=alcohol | shop=seafood | shop=beverages | shop=florist)", - "value": "yes" - }, - { - "key": "organic", - "description": "Layer 'Bike repair/shop' shows organic=only with a fixed text, namely 'This shop only offers organic products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=clothes | shop=shoes | shop=butcher | shop=cosmetics | shop=deli | shop=bakery | shop=alcohol | shop=seafood | shop=beverages | shop=florist)", - "value": "only" - }, - { - "key": "organic", - "description": "Layer 'Bike repair/shop' shows organic=no with a fixed text, namely 'This shop does not offer organic products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=clothes | shop=shoes | shop=butcher | shop=cosmetics | shop=deli | shop=bakery | shop=alcohol | shop=seafood | shop=beverages | shop=florist)", - "value": "no" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Bike repair/shop' shows diet:sugar_free=only with a fixed text, namely 'This shop only sells sugar free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "only" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Bike repair/shop' shows diet:sugar_free=yes with a fixed text, namely 'This shop has a big sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "yes" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Bike repair/shop' shows diet:sugar_free=limited with a fixed text, namely 'This shop has a limited sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "limited" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Bike repair/shop' shows diet:sugar_free=no with a fixed text, namely 'This shop has no sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "no" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Bike repair/shop' shows diet:gluten_free=only with a fixed text, namely 'This shop only sells gluten free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "only" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Bike repair/shop' shows diet:gluten_free=yes with a fixed text, namely 'This shop has a big gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "yes" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Bike repair/shop' shows diet:gluten_free=limited with a fixed text, namely 'This shop has a limited gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "limited" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Bike repair/shop' shows diet:gluten_free=no with a fixed text, namely 'This shop has no gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "no" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Bike repair/shop' shows diet:lactose_free=only with a fixed text, namely 'Only sells lactose free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "only" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Bike repair/shop' shows diet:lactose_free=yes with a fixed text, namely 'Big lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "yes" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Bike repair/shop' shows diet:lactose_free=limited with a fixed text, namely 'Limited lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "limited" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Bike repair/shop' shows diet:lactose_free=no with a fixed text, namely 'No lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "no" - }, - { - "key": "description", - "description": "Layer 'Bike repair/shop' shows and asks freeform values for key 'description' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "theme", - "description": "The MapComplete theme Personal theme has a layer Bike-related object showing features with this tag", - "value": "bicycle" - }, - { - "key": "theme", - "description": "The MapComplete theme Personal theme has a layer Bike-related object showing features with this tag", - "value": "cycling" - }, - { - "key": "sport", - "description": "The MapComplete theme Personal theme has a layer Bike-related object showing features with this tag", - "value": "cycling" - }, - { - "key": "association", - "description": "The MapComplete theme Personal theme has a layer Bike-related object showing features with this tag", - "value": "cycling" - }, - { - "key": "association", - "description": "The MapComplete theme Personal theme has a layer Bike-related object showing features with this tag", - "value": "bicycle" - }, - { - "key": "ngo", - "description": "The MapComplete theme Personal theme has a layer Bike-related object showing features with this tag", - "value": "cycling" - }, - { - "key": "ngo", - "description": "The MapComplete theme Personal theme has a layer Bike-related object showing features with this tag", - "value": "bicycle" - }, - { - "key": "club", - "description": "The MapComplete theme Personal theme has a layer Bike-related object showing features with this tag", - "value": "bicycle" - }, - { - "key": "club", - "description": "The MapComplete theme Personal theme has a layer Bike-related object showing features with this tag", - "value": "cycling" - }, - { - "key": "id", - "description": "Layer 'Bike-related object' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Bike-related object allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Bike-related object allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Bike-related object allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Bike-related object allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "description", - "description": "Layer 'Bike-related object' shows and asks freeform values for key 'description' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Bike-related object' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Bike-related object' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Bike-related object' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Bike-related object' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Bike-related object' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'Bike-related object' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Bike-related object' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Bike-related object' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Bike-related object' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Binoculars showing features with this tag", - "value": "binoculars" - }, - { - "key": "id", - "description": "Layer 'Binoculars' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Binoculars allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Binoculars allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Binoculars allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Binoculars allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "charge", - "description": "Layer 'Binoculars' shows and asks freeform values for key 'charge' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "fee", - "description": "Layer 'Binoculars' shows fee=no & charge= with a fixed text, namely 'Free to use' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "charge", - "description": "Layer 'Binoculars' shows fee=no & charge= with a fixed text, namely 'Free to use' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key charge.", - "value": "" - }, - { - "key": "direction", - "description": "Layer 'Binoculars' shows and asks freeform values for key 'direction' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "leisure", - "description": "The MapComplete theme Personal theme has a layer Bird watching places showing features with this tag", - "value": "bird_hide" - }, - { - "key": "id", - "description": "Layer 'Bird watching places' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Bird watching places allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Bird watching places allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Bird watching places allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Bird watching places allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "shelter", - "description": "Layer 'Bird watching places' shows shelter=no & building= & amenity= with a fixed text, namely 'Bird blind' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "building", - "description": "Layer 'Bird watching places' shows shelter=no & building= & amenity= with a fixed text, namely 'Bird blind' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key building.", - "value": "" - }, - { - "key": "amenity", - "description": "Layer 'Bird watching places' shows shelter=no & building= & amenity= with a fixed text, namely 'Bird blind' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key amenity.", - "value": "" - }, - { - "key": "amenity", - "description": "Layer 'Bird watching places' shows amenity=shelter & building=yes & shelter=yes with a fixed text, namely 'Bird hide' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "shelter" - }, - { - "key": "building", - "description": "Layer 'Bird watching places' shows amenity=shelter & building=yes & shelter=yes with a fixed text, namely 'Bird hide' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "shelter", - "description": "Layer 'Bird watching places' shows amenity=shelter & building=yes & shelter=yes with a fixed text, namely 'Bird hide' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "building", - "description": "Layer 'Bird watching places' shows building=tower & bird_hide=tower with a fixed text, namely 'Bird tower hide' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "tower" - }, - { - "key": "bird_hide", - "description": "Layer 'Bird watching places' shows building=tower & bird_hide=tower with a fixed text, namely 'Bird tower hide' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "tower" - }, - { - "key": "amenity", - "description": "Layer 'Bird watching places' shows amenity=shelter | building=yes | shelter=yes with a fixed text, namely 'Bird hide shelter' (in the mapcomplete.org theme 'Personal theme')", - "value": "shelter" - }, - { - "key": "building", - "description": "Layer 'Bird watching places' shows amenity=shelter | building=yes | shelter=yes with a fixed text, namely 'Bird hide shelter' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "shelter", - "description": "Layer 'Bird watching places' shows amenity=shelter | building=yes | shelter=yes with a fixed text, namely 'Bird hide shelter' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "wheelchair", - "description": "Layer 'Bird watching places' shows wheelchair=designated with a fixed text, namely 'There are special provisions for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "designated" - }, - { - "key": "wheelchair", - "description": "Layer 'Bird watching places' shows wheelchair=yes with a fixed text, namely 'A wheelchair can easily use this birdhide' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "wheelchair", - "description": "Layer 'Bird watching places' shows wheelchair=limited with a fixed text, namely 'This birdhide is reachable by wheelchair, but it is not easy' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "wheelchair", - "description": "Layer 'Bird watching places' shows wheelchair=no with a fixed text, namely 'Not accessible to wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "operator", - "description": "Layer 'Bird watching places' shows and asks freeform values for key 'operator' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator", - "description": "Layer 'Bird watching places' shows operator=Natuurpunt with a fixed text, namely 'Operated by Natuurpunt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "Natuurpunt" - }, - { - "key": "operator", - "description": "Layer 'Bird watching places' shows operator=Agentschap Natuur en Bos with a fixed text, namely 'Operated by the Agency for Nature and Forests' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "Agentschap Natuur en Bos" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Cafés and pubs showing features with this tag", - "value": "bar" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Cafés and pubs showing features with this tag", - "value": "pub" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Cafés and pubs showing features with this tag", - "value": "cafe" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Cafés and pubs showing features with this tag", - "value": "biergarten" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Cafés and pubs showing features with this tag", - "value": "nightclub" - }, - { - "key": "id", - "description": "Layer 'Cafés and pubs' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Cafés and pubs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Cafés and pubs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Cafés and pubs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Cafés and pubs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "level", - "description": "Layer 'Cafés and pubs' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Cafés and pubs' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Cafés and pubs' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Cafés and pubs' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Cafés and pubs' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Cafés and pubs' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "name", - "description": "Layer 'Cafés and pubs' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "amenity", - "description": "Layer 'Cafés and pubs' shows amenity=pub with a fixed text, namely 'A pub, mostly for drinking beers in a warm, relaxed interior' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "pub" - }, - { - "key": "amenity", - "description": "Layer 'Cafés and pubs' shows amenity=bar with a fixed text, namely 'A more modern and commercial bar, possibly with a music and light installation' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "bar" - }, - { - "key": "amenity", - "description": "Layer 'Cafés and pubs' shows amenity=cafe with a fixed text, namely 'A cafe to drink tea, coffee or an alcoholical bevarage in a quiet environment' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "cafe" - }, - { - "key": "amenity", - "description": "Layer 'Cafés and pubs' shows amenity=restaurant with a fixed text, namely 'A restaurant where one can get a proper meal' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "restaurant" - }, - { - "key": "amenity", - "description": "Layer 'Cafés and pubs' shows amenity=biergarten with a fixed text, namely 'An open space where beer is served, typically seen in Germany' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "biergarten" - }, - { - "key": "amenity", - "description": "Layer 'Cafés and pubs' shows amenity=nightclub with a fixed text, namely 'This is a nightclub or disco with a focus on dancing, music by a DJ with accompanying light show and a bar to get (alcoholic) drinks' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "nightclub" - }, - { - "key": "opening_hours", - "description": "Layer 'Cafés and pubs' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Cafés and pubs' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "website", - "description": "Layer 'Cafés and pubs' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Cafés and pubs' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Cafés and pubs' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Cafés and pubs' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Cafés and pubs' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'Cafés and pubs' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Cafés and pubs' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "payment:cash", - "description": "Layer 'Cafés and pubs' shows payment:cash=yes with a fixed text, namely 'Cash is accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:cards", - "description": "Layer 'Cafés and pubs' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:qr_code", - "description": "Layer 'Cafés and pubs' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "wheelchair", - "description": "Layer 'Cafés and pubs' shows wheelchair=designated with a fixed text, namely 'This place is specially adapted for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "designated" - }, - { - "key": "wheelchair", - "description": "Layer 'Cafés and pubs' shows wheelchair=yes with a fixed text, namely 'This place is easily reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "wheelchair", - "description": "Layer 'Cafés and pubs' shows wheelchair=limited with a fixed text, namely 'It is possible to reach this place in a wheelchair, but it is not easy' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "wheelchair", - "description": "Layer 'Cafés and pubs' shows wheelchair=no with a fixed text, namely 'This place is not reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "smoking", - "description": "Layer 'Cafés and pubs' shows smoking=yes with a fixed text, namely 'Smoking is allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _country!~^(al|be)$)", - "value": "yes" - }, - { - "key": "smoking", - "description": "Layer 'Cafés and pubs' shows smoking=no with a fixed text, namely 'Smoking is not allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _country!~^(al|be)$)", - "value": "no" - }, - { - "key": "smoking", - "description": "Layer 'Cafés and pubs' shows smoking=outside with a fixed text, namely 'Smoking is allowed outside.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _country!~^(al|be)$)", - "value": "outside" - }, - { - "key": "service:electricity", - "description": "Layer 'Cafés and pubs' shows service:electricity=yes with a fixed text, namely 'There are plenty of domestic sockets available to customers seated indoors, where they can charge their electronics' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:electricity", - "description": "Layer 'Cafés and pubs' shows service:electricity=limited with a fixed text, namely 'There are a few domestic sockets available to customers seated indoors, where they can charge their electronics' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "service:electricity", - "description": "Layer 'Cafés and pubs' shows service:electricity=ask with a fixed text, namely 'There are no sockets available indoors to customers, but charging might be possible if the staff is asked' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "ask" - }, - { - "key": "service:electricity", - "description": "Layer 'Cafés and pubs' shows service:electricity=no with a fixed text, namely 'There are a no domestic sockets available to customers seated indoors' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "dog", - "description": "Layer 'Cafés and pubs' shows dog=yes with a fixed text, namely 'Dogs are allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "dog", - "description": "Layer 'Cafés and pubs' shows dog=no with a fixed text, namely 'Dogs are not allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "dog", - "description": "Layer 'Cafés and pubs' shows dog=leashed with a fixed text, namely 'Dogs are allowed, but they have to be leashed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "leashed" - }, - { - "key": "dog", - "description": "Layer 'Cafés and pubs' shows dog=unleashed with a fixed text, namely 'Dogs are allowed and can run around freely' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "unleashed" - }, - { - "key": "dog", - "description": "Layer 'Cafés and pubs' shows dog=outside with a fixed text, namely 'Dogs are allowed only outside' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "outside" - }, - { - "key": "internet_access", - "description": "Layer 'Cafés and pubs' shows internet_access=wlan with a fixed text, namely 'This place offers wireless internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wlan" - }, - { - "key": "internet_access", - "description": "Layer 'Cafés and pubs' shows internet_access=no with a fixed text, namely 'This place does not offer internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "internet_access", - "description": "Layer 'Cafés and pubs' shows internet_access=yes with a fixed text, namely 'This place offers internet access' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "internet_access", - "description": "Layer 'Cafés and pubs' shows internet_access=terminal with a fixed text, namely 'This place offers internet access via a terminal or computer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "terminal" - }, - { - "key": "internet_access", - "description": "Layer 'Cafés and pubs' shows internet_access=wired with a fixed text, namely 'This place offers wired internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wired" - }, - { - "key": "internet_access", - "description": "Layer 'Cafés and pubs' shows internet_access=terminal;wifi with a fixed text, namely 'This place offers both wireless internet and internet access via a terminal or computer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "terminal;wifi" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Cafés and pubs' shows internet_access:fee=yes with a fixed text, namely 'There is a fee for the internet access at this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "yes" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Cafés and pubs' shows internet_access:fee=no with a fixed text, namely 'Internet access is free at this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "no" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Cafés and pubs' shows internet_access:fee=customers with a fixed text, namely 'Internet access is free at this place, for customers only' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "customers" - }, - { - "key": "internet_access:ssid", - "description": "Layer 'Cafés and pubs' shows and asks freeform values for key 'internet_access:ssid' (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access~^(.*wlan.*)$)" - }, - { - "key": "internet_access:ssid", - "description": "Layer 'Cafés and pubs' shows internet_access:ssid=Telekom with a fixed text, namely 'Telekom' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access~^(.*wlan.*)$)", - "value": "Telekom" - }, - { - "key": "tourism", - "description": "The MapComplete theme Personal theme has a layer Camper sites showing features with this tag", - "value": "caravan_site" - }, - { - "key": "id", - "description": "Layer 'Camper sites' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Camper sites allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Camper sites allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Camper sites allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Camper sites allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Camper sites' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "fee", - "description": "Layer 'Camper sites' shows fee=yes with a fixed text, namely 'You need to pay for use' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "fee", - "description": "Layer 'Camper sites' shows fee=no with a fixed text, namely 'Can be used for free' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "charge", - "description": "Layer 'Camper sites' shows and asks freeform values for key 'charge' (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes)" - }, - { - "key": "sanitary_dump_station", - "description": "Layer 'Camper sites' shows sanitary_dump_station=yes with a fixed text, namely 'This place has a sanitary dump station' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "sanitary_dump_station", - "description": "Layer 'Camper sites' shows sanitary_dump_station=no with a fixed text, namely 'This place does not have a sanitary dump station' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "capacity", - "description": "Layer 'Camper sites' shows and asks freeform values for key 'capacity' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "internet_access", - "description": "Layer 'Camper sites' shows internet_access=yes with a fixed text, namely 'There is internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "internet_access", - "description": "Layer 'Camper sites' shows internet_access=wifi | internet_access=wlan with a fixed text, namely 'There is internet access' (in the mapcomplete.org theme 'Personal theme')", - "value": "wifi" - }, - { - "key": "internet_access", - "description": "Layer 'Camper sites' shows internet_access=wifi | internet_access=wlan with a fixed text, namely 'There is internet access' (in the mapcomplete.org theme 'Personal theme')", - "value": "wlan" - }, - { - "key": "internet_access", - "description": "Layer 'Camper sites' shows internet_access=no with a fixed text, namely 'There is no internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Camper sites' shows internet_access:fee=yes with a fixed text, namely 'You need to pay extra for internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access=yes)", - "value": "yes" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Camper sites' shows internet_access:fee=no with a fixed text, namely 'You do not need to pay extra for internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access=yes)", - "value": "no" - }, - { - "key": "toilets", - "description": "Layer 'Camper sites' shows toilets=yes with a fixed text, namely 'This place has toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "toilets", - "description": "Layer 'Camper sites' shows toilets=no with a fixed text, namely 'This place does not have toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "website", - "description": "Layer 'Camper sites' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "permanent_camping", - "description": "Layer 'Camper sites' shows permanent_camping=yes with a fixed text, namely 'There are some spots for long term rental, but you can also stay on a daily basis' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "permanent_camping", - "description": "Layer 'Camper sites' shows permanent_camping=no with a fixed text, namely 'There are no permanent guests here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "permanent_camping", - "description": "Layer 'Camper sites' shows permanent_camping=only with a fixed text, namely 'It is only possible to stay here if you have a long term contract (this place disappears from this map if you choose this)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "only" - }, - { - "key": "description", - "description": "Layer 'Camper sites' shows and asks freeform values for key 'description' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Charging stations showing features with this tag", - "value": "charging_station" - }, - { - "key": "disused:amenity", - "description": "The MapComplete theme Personal theme has a layer Charging stations showing features with this tag", - "value": "charging_station" - }, - { - "key": "planned:amenity", - "description": "The MapComplete theme Personal theme has a layer Charging stations showing features with this tag", - "value": "charging_station" - }, - { - "key": "construction:amenity", - "description": "The MapComplete theme Personal theme has a layer Charging stations showing features with this tag", - "value": "charging_station" - }, - { - "key": "id", - "description": "Layer 'Charging stations' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Charging stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Charging stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Charging stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Charging stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "bicycle", - "description": "Layer 'Charging stations' shows bicycle=yes with a fixed text, namely 'Bicycles can be charged here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "motorcar", - "description": "Layer 'Charging stations' shows motorcar=yes with a fixed text, namely 'Cars can be charged here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "scooter", - "description": "Layer 'Charging stations' shows scooter=yes with a fixed text, namely 'Scooters can be charged here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "hgv", - "description": "Layer 'Charging stations' shows hgv=yes with a fixed text, namely 'Heavy good vehicles (such as trucks) can be charged here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "bus", - "description": "Layer 'Charging stations' shows bus=yes with a fixed text, namely 'Buses can be charged here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "access", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'access' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "access", - "description": "Layer 'Charging stations' shows access=yes with a fixed text, namely 'Anyone can use this charging station (payment might be needed)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "access", - "description": "Layer 'Charging stations' shows access=public with a fixed text, namely 'Anyone can use this charging station (payment might be needed)' (in the mapcomplete.org theme 'Personal theme')", - "value": "public" - }, - { - "key": "access", - "description": "Layer 'Charging stations' shows access=customers with a fixed text, namely 'Only customers of the place this station belongs to can use this charging station
E.g. a charging station operated by hotel which is only usable by their guests' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "customers" - }, - { - "key": "access", - "description": "Layer 'Charging stations' shows access=key with a fixed text, namely 'A key must be requested to access this charging station
E.g. a charging station operated by hotel which is only usable by their guests, which receive a key from the reception to unlock the charging station' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "key" - }, - { - "key": "access", - "description": "Layer 'Charging stations' shows access=private with a fixed text, namely 'Not accessible to the general public (e.g. only accessible to the owners, employees, ...)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "private" - }, - { - "key": "access", - "description": "Layer 'Charging stations' shows access=permissive with a fixed text, namely 'This charging station is accessible to the public during certain hours or conditions. Restrictions might apply, but general use is allowed.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "permissive" - }, - { - "key": "capacity", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'capacity' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "socket:schuko", - "description": "Layer 'Charging stations' shows socket:schuko=1 with a fixed text, namely 'Schuko wall plug without ground pin (CEE7/4 type F)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "socket:schuko", - "description": "Layer 'Charging stations' shows socket:schuko~.+ & socket:schuko!=1 with a fixed text, namely 'Schuko wall plug without ground pin (CEE7/4 type F)' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "socket:typee", - "description": "Layer 'Charging stations' shows socket:typee=1 with a fixed text, namely 'European wall plug with ground pin (CEE7/4 type E)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "socket:typee", - "description": "Layer 'Charging stations' shows socket:typee~.+ & socket:typee!=1 with a fixed text, namely 'European wall plug with ground pin (CEE7/4 type E)' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "socket:chademo", - "description": "Layer 'Charging stations' shows socket:chademo=1 with a fixed text, namely 'Chademo' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "socket:chademo", - "description": "Layer 'Charging stations' shows socket:chademo~.+ & socket:chademo!=1 with a fixed text, namely 'Chademo' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "socket:type1_cable", - "description": "Layer 'Charging stations' shows socket:type1_cable=1 with a fixed text, namely 'Type 1 with cable (J1772)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "socket:type1_cable", - "description": "Layer 'Charging stations' shows socket:type1_cable~.+ & socket:type1_cable!=1 with a fixed text, namely 'Type 1 with cable (J1772)' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "socket:type1", - "description": "Layer 'Charging stations' shows socket:type1=1 with a fixed text, namely 'Type 1 without cable (J1772)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "socket:type1", - "description": "Layer 'Charging stations' shows socket:type1~.+ & socket:type1!=1 with a fixed text, namely 'Type 1 without cable (J1772)' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "socket:type1_combo", - "description": "Layer 'Charging stations' shows socket:type1_combo=1 with a fixed text, namely 'Type 1 CCS (aka Type 1 Combo)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "socket:type1_combo", - "description": "Layer 'Charging stations' shows socket:type1_combo~.+ & socket:type1_combo!=1 with a fixed text, namely 'Type 1 CCS (aka Type 1 Combo)' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "socket:tesla_supercharger", - "description": "Layer 'Charging stations' shows socket:tesla_supercharger=1 with a fixed text, namely 'Tesla Supercharger' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "socket:tesla_supercharger", - "description": "Layer 'Charging stations' shows socket:tesla_supercharger~.+ & socket:tesla_supercharger!=1 with a fixed text, namely 'Tesla Supercharger' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "socket:type2", - "description": "Layer 'Charging stations' shows socket:type2=1 with a fixed text, namely 'Type 2 (mennekes)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "socket:type2", - "description": "Layer 'Charging stations' shows socket:type2~.+ & socket:type2!=1 with a fixed text, namely 'Type 2 (mennekes)' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "socket:type2_combo", - "description": "Layer 'Charging stations' shows socket:type2_combo=1 with a fixed text, namely 'Type 2 CCS (mennekes)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "socket:type2_combo", - "description": "Layer 'Charging stations' shows socket:type2_combo~.+ & socket:type2_combo!=1 with a fixed text, namely 'Type 2 CCS (mennekes)' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "socket:type2_cable", - "description": "Layer 'Charging stations' shows socket:type2_cable=1 with a fixed text, namely 'Type 2 with cable (mennekes)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "socket:type2_cable", - "description": "Layer 'Charging stations' shows socket:type2_cable~.+ & socket:type2_cable!=1 with a fixed text, namely 'Type 2 with cable (mennekes)' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "socket:tesla_supercharger_ccs", - "description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs=1 with a fixed text, namely 'Tesla Supercharger CCS (a branded type2_css)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "socket:tesla_supercharger_ccs", - "description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs~.+ & socket:tesla_supercharger_ccs!=1 with a fixed text, namely 'Tesla Supercharger CCS (a branded type2_css)' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "socket:tesla_destination", - "description": "Layer 'Charging stations' shows socket:tesla_destination=1 with a fixed text, namely 'Tesla Supercharger (destination)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "socket:tesla_destination", - "description": "Layer 'Charging stations' shows socket:tesla_destination~.+ & socket:tesla_destination!=1 & _country=us with a fixed text, namely 'Tesla Supercharger (destination)' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "socket:tesla_destination", - "description": "Layer 'Charging stations' shows socket:tesla_destination=1 with a fixed text, namely 'Tesla supercharger (destination) (A Type 2 with cable branded as tesla)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "socket:tesla_destination", - "description": "Layer 'Charging stations' shows socket:tesla_destination~.+ & socket:tesla_destination!=1 & _country!=us with a fixed text, namely 'Tesla supercharger (destination) (A Type 2 with cable branded as tesla)' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "socket:USB-A", - "description": "Layer 'Charging stations' shows socket:USB-A=1 with a fixed text, namely 'USB to charge phones and small electronics' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "socket:USB-A", - "description": "Layer 'Charging stations' shows socket:USB-A~.+ & socket:USB-A!=1 with a fixed text, namely 'USB to charge phones and small electronics' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "socket:bosch_3pin", - "description": "Layer 'Charging stations' shows socket:bosch_3pin=1 with a fixed text, namely 'Bosch Active Connect with 3 pins and cable' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "socket:bosch_3pin", - "description": "Layer 'Charging stations' shows socket:bosch_3pin~.+ & socket:bosch_3pin!=1 with a fixed text, namely 'Bosch Active Connect with 3 pins and cable' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "socket:bosch_5pin", - "description": "Layer 'Charging stations' shows socket:bosch_5pin=1 with a fixed text, namely 'Bosch Active Connect with 5 pins and cable' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "socket:bosch_5pin", - "description": "Layer 'Charging stations' shows socket:bosch_5pin~.+ & socket:bosch_5pin!=1 with a fixed text, namely 'Bosch Active Connect with 5 pins and cable' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "socket:bs1363", - "description": "Layer 'Charging stations' shows socket:bs1363=1 with a fixed text, namely 'BS1363 (Type G)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "socket:bs1363", - "description": "Layer 'Charging stations' shows socket:bs1363~.+ & socket:bs1363!=1 with a fixed text, namely 'BS1363 (Type G)' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "socket:nema5_15", - "description": "Layer 'Charging stations' shows socket:nema5_15=1 with a fixed text, namely 'NEMA 5-15 (Type B)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "socket:nema5_15", - "description": "Layer 'Charging stations' shows socket:nema5_15~.+ & socket:nema5_15!=1 with a fixed text, namely 'NEMA 5-15 (Type B)' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "socket:sev1011_t23", - "description": "Layer 'Charging stations' shows socket:sev1011_t23=1 with a fixed text, namely 'SEV 1011 T23 (Type J)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "socket:sev1011_t23", - "description": "Layer 'Charging stations' shows socket:sev1011_t23~.+ & socket:sev1011_t23!=1 with a fixed text, namely 'SEV 1011 T23 (Type J)' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "socket:as3112", - "description": "Layer 'Charging stations' shows socket:as3112=1 with a fixed text, namely 'AS3112 (Type I)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "socket:as3112", - "description": "Layer 'Charging stations' shows socket:as3112~.+ & socket:as3112!=1 with a fixed text, namely 'AS3112 (Type I)' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "socket:nema_5_20", - "description": "Layer 'Charging stations' shows socket:nema_5_20=1 with a fixed text, namely 'NEMA 5-20 (Type B)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "socket:nema_5_20", - "description": "Layer 'Charging stations' shows socket:nema_5_20~.+ & socket:nema_5_20!=1 with a fixed text, namely 'NEMA 5-20 (Type B)' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "socket:schuko", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:schuko' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:schuko~.+ & socket:schuko!=0)" - }, - { - "key": "socket:schuko:voltage", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:schuko:voltage' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:schuko~.+ & socket:schuko!=0)" - }, - { - "key": "socket:schuko:voltage", - "description": "Layer 'Charging stations' shows socket:schuko:voltage=230 V with a fixed text, namely 'Schuko wall plug without ground pin (CEE7/4 type F) outputs 230 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:schuko~.+ & socket:schuko!=0)", - "value": "230 V" - }, - { - "key": "socket:schuko:current", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:schuko:current' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:schuko~.+ & socket:schuko!=0)" - }, - { - "key": "socket:schuko:current", - "description": "Layer 'Charging stations' shows socket:schuko:current=16 A with a fixed text, namely 'Schuko wall plug without ground pin (CEE7/4 type F) outputs at most 16 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:schuko~.+ & socket:schuko!=0)", - "value": "16 A" - }, - { - "key": "socket:schuko:output", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:schuko:output' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:schuko~.+ & socket:schuko!=0)" - }, - { - "key": "socket:schuko:output", - "description": "Layer 'Charging stations' shows socket:schuko:output=3.6 kW with a fixed text, namely 'Schuko wall plug without ground pin (CEE7/4 type F) outputs at most 3.6 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:schuko~.+ & socket:schuko!=0)", - "value": "3.6 kW" - }, - { - "key": "socket:typee", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:typee' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:typee~.+ & socket:typee!=0)" - }, - { - "key": "socket:typee:voltage", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:typee:voltage' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:typee~.+ & socket:typee!=0)" - }, - { - "key": "socket:typee:voltage", - "description": "Layer 'Charging stations' shows socket:typee:voltage=230 V with a fixed text, namely 'European wall plug with ground pin (CEE7/4 type E) outputs 230 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:typee~.+ & socket:typee!=0)", - "value": "230 V" - }, - { - "key": "socket:typee:current", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:typee:current' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:typee~.+ & socket:typee!=0)" - }, - { - "key": "socket:typee:current", - "description": "Layer 'Charging stations' shows socket:typee:current=16 A with a fixed text, namely 'European wall plug with ground pin (CEE7/4 type E) outputs at most 16 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:typee~.+ & socket:typee!=0)", - "value": "16 A" - }, - { - "key": "socket:typee:output", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:typee:output' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:typee~.+ & socket:typee!=0)" - }, - { - "key": "socket:typee:output", - "description": "Layer 'Charging stations' shows socket:typee:output=3 kW with a fixed text, namely 'European wall plug with ground pin (CEE7/4 type E) outputs at most 3 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:typee~.+ & socket:typee!=0)", - "value": "3 kW" - }, - { - "key": "socket:typee:output", - "description": "Layer 'Charging stations' shows socket:typee:output=22 kW with a fixed text, namely 'European wall plug with ground pin (CEE7/4 type E) outputs at most 22 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:typee~.+ & socket:typee!=0)", - "value": "22 kW" - }, - { - "key": "socket:chademo", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:chademo' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:chademo~.+ & socket:chademo!=0)" - }, - { - "key": "socket:chademo:voltage", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:chademo:voltage' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:chademo~.+ & socket:chademo!=0)" - }, - { - "key": "socket:chademo:voltage", - "description": "Layer 'Charging stations' shows socket:chademo:voltage=500 V with a fixed text, namely 'Chademo outputs 500 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:chademo~.+ & socket:chademo!=0)", - "value": "500 V" - }, - { - "key": "socket:chademo:current", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:chademo:current' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:chademo~.+ & socket:chademo!=0)" - }, - { - "key": "socket:chademo:current", - "description": "Layer 'Charging stations' shows socket:chademo:current=120 A with a fixed text, namely 'Chademo outputs at most 120 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:chademo~.+ & socket:chademo!=0)", - "value": "120 A" - }, - { - "key": "socket:chademo:output", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:chademo:output' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:chademo~.+ & socket:chademo!=0)" - }, - { - "key": "socket:chademo:output", - "description": "Layer 'Charging stations' shows socket:chademo:output=50 kW with a fixed text, namely 'Chademo outputs at most 50 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:chademo~.+ & socket:chademo!=0)", - "value": "50 kW" - }, - { - "key": "socket:type1_cable", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type1_cable' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_cable~.+ & socket:type1_cable!=0)" - }, - { - "key": "socket:type1_cable:voltage", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type1_cable:voltage' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_cable~.+ & socket:type1_cable!=0)" - }, - { - "key": "socket:type1_cable:voltage", - "description": "Layer 'Charging stations' shows socket:type1_cable:voltage=200 V with a fixed text, namely 'Type 1 with cable (J1772) outputs 200 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_cable~.+ & socket:type1_cable!=0)", - "value": "200 V" - }, - { - "key": "socket:type1_cable:voltage", - "description": "Layer 'Charging stations' shows socket:type1_cable:voltage=240 V with a fixed text, namely 'Type 1 with cable (J1772) outputs 240 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_cable~.+ & socket:type1_cable!=0)", - "value": "240 V" - }, - { - "key": "socket:type1_cable:current", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type1_cable:current' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_cable~.+ & socket:type1_cable!=0)" - }, - { - "key": "socket:type1_cable:current", - "description": "Layer 'Charging stations' shows socket:type1_cable:current=32 A with a fixed text, namely 'Type 1 with cable (J1772) outputs at most 32 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_cable~.+ & socket:type1_cable!=0)", - "value": "32 A" - }, - { - "key": "socket:type1_cable:output", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type1_cable:output' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_cable~.+ & socket:type1_cable!=0)" - }, - { - "key": "socket:type1_cable:output", - "description": "Layer 'Charging stations' shows socket:type1_cable:output=3.7 kW with a fixed text, namely 'Type 1 with cable (J1772) outputs at most 3.7 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_cable~.+ & socket:type1_cable!=0)", - "value": "3.7 kW" - }, - { - "key": "socket:type1_cable:output", - "description": "Layer 'Charging stations' shows socket:type1_cable:output=7 kW with a fixed text, namely 'Type 1 with cable (J1772) outputs at most 7 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_cable~.+ & socket:type1_cable!=0)", - "value": "7 kW" - }, - { - "key": "socket:type1", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type1' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1~.+ & socket:type1!=0)" - }, - { - "key": "socket:type1:voltage", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type1:voltage' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1~.+ & socket:type1!=0)" - }, - { - "key": "socket:type1:voltage", - "description": "Layer 'Charging stations' shows socket:type1:voltage=200 V with a fixed text, namely 'Type 1 without cable (J1772) outputs 200 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1~.+ & socket:type1!=0)", - "value": "200 V" - }, - { - "key": "socket:type1:voltage", - "description": "Layer 'Charging stations' shows socket:type1:voltage=240 V with a fixed text, namely 'Type 1 without cable (J1772) outputs 240 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1~.+ & socket:type1!=0)", - "value": "240 V" - }, - { - "key": "socket:type1:current", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type1:current' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1~.+ & socket:type1!=0)" - }, - { - "key": "socket:type1:current", - "description": "Layer 'Charging stations' shows socket:type1:current=32 A with a fixed text, namely 'Type 1 without cable (J1772) outputs at most 32 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1~.+ & socket:type1!=0)", - "value": "32 A" - }, - { - "key": "socket:type1:output", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type1:output' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1~.+ & socket:type1!=0)" - }, - { - "key": "socket:type1:output", - "description": "Layer 'Charging stations' shows socket:type1:output=3.7 kW with a fixed text, namely 'Type 1 without cable (J1772) outputs at most 3.7 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1~.+ & socket:type1!=0)", - "value": "3.7 kW" - }, - { - "key": "socket:type1:output", - "description": "Layer 'Charging stations' shows socket:type1:output=6.6 kW with a fixed text, namely 'Type 1 without cable (J1772) outputs at most 6.6 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1~.+ & socket:type1!=0)", - "value": "6.6 kW" - }, - { - "key": "socket:type1:output", - "description": "Layer 'Charging stations' shows socket:type1:output=7 kW with a fixed text, namely 'Type 1 without cable (J1772) outputs at most 7 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1~.+ & socket:type1!=0)", - "value": "7 kW" - }, - { - "key": "socket:type1:output", - "description": "Layer 'Charging stations' shows socket:type1:output=7.2 kW with a fixed text, namely 'Type 1 without cable (J1772) outputs at most 7.2 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1~.+ & socket:type1!=0)", - "value": "7.2 kW" - }, - { - "key": "socket:type1_combo", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type1_combo' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_combo~.+ & socket:type1_combo!=0)" - }, - { - "key": "socket:type1_combo:voltage", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type1_combo:voltage' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_combo~.+ & socket:type1_combo!=0)" - }, - { - "key": "socket:type1_combo:voltage", - "description": "Layer 'Charging stations' shows socket:type1_combo:voltage=400 V with a fixed text, namely 'Type 1 CCS (aka Type 1 Combo) outputs 400 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_combo~.+ & socket:type1_combo!=0)", - "value": "400 V" - }, - { - "key": "socket:type1_combo:voltage", - "description": "Layer 'Charging stations' shows socket:type1_combo:voltage=1000 V with a fixed text, namely 'Type 1 CCS (aka Type 1 Combo) outputs 1000 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_combo~.+ & socket:type1_combo!=0)", - "value": "1000 V" - }, - { - "key": "socket:type1_combo:current", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type1_combo:current' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_combo~.+ & socket:type1_combo!=0)" - }, - { - "key": "socket:type1_combo:current", - "description": "Layer 'Charging stations' shows socket:type1_combo:current=50 A with a fixed text, namely 'Type 1 CCS (aka Type 1 Combo) outputs at most 50 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_combo~.+ & socket:type1_combo!=0)", - "value": "50 A" - }, - { - "key": "socket:type1_combo:current", - "description": "Layer 'Charging stations' shows socket:type1_combo:current=125 A with a fixed text, namely 'Type 1 CCS (aka Type 1 Combo) outputs at most 125 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_combo~.+ & socket:type1_combo!=0)", - "value": "125 A" - }, - { - "key": "socket:type1_combo:output", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type1_combo:output' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_combo~.+ & socket:type1_combo!=0)" - }, - { - "key": "socket:type1_combo:output", - "description": "Layer 'Charging stations' shows socket:type1_combo:output=50 kW with a fixed text, namely 'Type 1 CCS (aka Type 1 Combo) outputs at most 50 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_combo~.+ & socket:type1_combo!=0)", - "value": "50 kW" - }, - { - "key": "socket:type1_combo:output", - "description": "Layer 'Charging stations' shows socket:type1_combo:output=62.5 kW with a fixed text, namely 'Type 1 CCS (aka Type 1 Combo) outputs at most 62.5 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_combo~.+ & socket:type1_combo!=0)", - "value": "62.5 kW" - }, - { - "key": "socket:type1_combo:output", - "description": "Layer 'Charging stations' shows socket:type1_combo:output=150 kW with a fixed text, namely 'Type 1 CCS (aka Type 1 Combo) outputs at most 150 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_combo~.+ & socket:type1_combo!=0)", - "value": "150 kW" - }, - { - "key": "socket:type1_combo:output", - "description": "Layer 'Charging stations' shows socket:type1_combo:output=350 kW with a fixed text, namely 'Type 1 CCS (aka Type 1 Combo) outputs at most 350 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_combo~.+ & socket:type1_combo!=0)", - "value": "350 kW" - }, - { - "key": "socket:tesla_supercharger", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:tesla_supercharger' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger~.+ & socket:tesla_supercharger!=0)" - }, - { - "key": "socket:tesla_supercharger:voltage", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:tesla_supercharger:voltage' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger~.+ & socket:tesla_supercharger!=0)" - }, - { - "key": "socket:tesla_supercharger:voltage", - "description": "Layer 'Charging stations' shows socket:tesla_supercharger:voltage=480 V with a fixed text, namely 'Tesla Supercharger outputs 480 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger~.+ & socket:tesla_supercharger!=0)", - "value": "480 V" - }, - { - "key": "socket:tesla_supercharger:current", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:tesla_supercharger:current' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger~.+ & socket:tesla_supercharger!=0)" - }, - { - "key": "socket:tesla_supercharger:current", - "description": "Layer 'Charging stations' shows socket:tesla_supercharger:current=125 A with a fixed text, namely 'Tesla Supercharger outputs at most 125 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger~.+ & socket:tesla_supercharger!=0)", - "value": "125 A" - }, - { - "key": "socket:tesla_supercharger:current", - "description": "Layer 'Charging stations' shows socket:tesla_supercharger:current=350 A with a fixed text, namely 'Tesla Supercharger outputs at most 350 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger~.+ & socket:tesla_supercharger!=0)", - "value": "350 A" - }, - { - "key": "socket:tesla_supercharger:output", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:tesla_supercharger:output' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger~.+ & socket:tesla_supercharger!=0)" - }, - { - "key": "socket:tesla_supercharger:output", - "description": "Layer 'Charging stations' shows socket:tesla_supercharger:output=120 kW with a fixed text, namely 'Tesla Supercharger outputs at most 120 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger~.+ & socket:tesla_supercharger!=0)", - "value": "120 kW" - }, - { - "key": "socket:tesla_supercharger:output", - "description": "Layer 'Charging stations' shows socket:tesla_supercharger:output=150 kW with a fixed text, namely 'Tesla Supercharger outputs at most 150 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger~.+ & socket:tesla_supercharger!=0)", - "value": "150 kW" - }, - { - "key": "socket:tesla_supercharger:output", - "description": "Layer 'Charging stations' shows socket:tesla_supercharger:output=250 kW with a fixed text, namely 'Tesla Supercharger outputs at most 250 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger~.+ & socket:tesla_supercharger!=0)", - "value": "250 kW" - }, - { - "key": "socket:type2", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type2' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2~.+ & socket:type2!=0)" - }, - { - "key": "socket:type2:voltage", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type2:voltage' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2~.+ & socket:type2!=0)" - }, - { - "key": "socket:type2:voltage", - "description": "Layer 'Charging stations' shows socket:type2:voltage=230 V with a fixed text, namely 'Type 2 (mennekes) outputs 230 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2~.+ & socket:type2!=0)", - "value": "230 V" - }, - { - "key": "socket:type2:voltage", - "description": "Layer 'Charging stations' shows socket:type2:voltage=400 V with a fixed text, namely 'Type 2 (mennekes) outputs 400 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2~.+ & socket:type2!=0)", - "value": "400 V" - }, - { - "key": "socket:type2:current", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type2:current' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2~.+ & socket:type2!=0)" - }, - { - "key": "socket:type2:current", - "description": "Layer 'Charging stations' shows socket:type2:current=16 A with a fixed text, namely 'Type 2 (mennekes) outputs at most 16 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2~.+ & socket:type2!=0)", - "value": "16 A" - }, - { - "key": "socket:type2:current", - "description": "Layer 'Charging stations' shows socket:type2:current=32 A with a fixed text, namely 'Type 2 (mennekes) outputs at most 32 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2~.+ & socket:type2!=0)", - "value": "32 A" - }, - { - "key": "socket:type2:output", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type2:output' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2~.+ & socket:type2!=0)" - }, - { - "key": "socket:type2:output", - "description": "Layer 'Charging stations' shows socket:type2:output=11 kW with a fixed text, namely 'Type 2 (mennekes) outputs at most 11 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2~.+ & socket:type2!=0)", - "value": "11 kW" - }, - { - "key": "socket:type2:output", - "description": "Layer 'Charging stations' shows socket:type2:output=22 kW with a fixed text, namely 'Type 2 (mennekes) outputs at most 22 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2~.+ & socket:type2!=0)", - "value": "22 kW" - }, - { - "key": "socket:type2_combo", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type2_combo' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_combo~.+ & socket:type2_combo!=0)" - }, - { - "key": "socket:type2_combo:voltage", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type2_combo:voltage' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_combo~.+ & socket:type2_combo!=0)" - }, - { - "key": "socket:type2_combo:voltage", - "description": "Layer 'Charging stations' shows socket:type2_combo:voltage=500 V with a fixed text, namely 'Type 2 CCS (mennekes) outputs 500 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_combo~.+ & socket:type2_combo!=0)", - "value": "500 V" - }, - { - "key": "socket:type2_combo:voltage", - "description": "Layer 'Charging stations' shows socket:type2_combo:voltage=920 V with a fixed text, namely 'Type 2 CCS (mennekes) outputs 920 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_combo~.+ & socket:type2_combo!=0)", - "value": "920 V" - }, - { - "key": "socket:type2_combo:current", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type2_combo:current' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_combo~.+ & socket:type2_combo!=0)" - }, - { - "key": "socket:type2_combo:current", - "description": "Layer 'Charging stations' shows socket:type2_combo:current=125 A with a fixed text, namely 'Type 2 CCS (mennekes) outputs at most 125 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_combo~.+ & socket:type2_combo!=0)", - "value": "125 A" - }, - { - "key": "socket:type2_combo:current", - "description": "Layer 'Charging stations' shows socket:type2_combo:current=350 A with a fixed text, namely 'Type 2 CCS (mennekes) outputs at most 350 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_combo~.+ & socket:type2_combo!=0)", - "value": "350 A" - }, - { - "key": "socket:type2_combo:output", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type2_combo:output' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_combo~.+ & socket:type2_combo!=0)" - }, - { - "key": "socket:type2_combo:output", - "description": "Layer 'Charging stations' shows socket:type2_combo:output=50 kW with a fixed text, namely 'Type 2 CCS (mennekes) outputs at most 50 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_combo~.+ & socket:type2_combo!=0)", - "value": "50 kW" - }, - { - "key": "socket:type2_cable", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type2_cable' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_cable~.+ & socket:type2_cable!=0)" - }, - { - "key": "socket:type2_cable:voltage", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type2_cable:voltage' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_cable~.+ & socket:type2_cable!=0)" - }, - { - "key": "socket:type2_cable:voltage", - "description": "Layer 'Charging stations' shows socket:type2_cable:voltage=230 V with a fixed text, namely 'Type 2 with cable (mennekes) outputs 230 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_cable~.+ & socket:type2_cable!=0)", - "value": "230 V" - }, - { - "key": "socket:type2_cable:voltage", - "description": "Layer 'Charging stations' shows socket:type2_cable:voltage=400 V with a fixed text, namely 'Type 2 with cable (mennekes) outputs 400 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_cable~.+ & socket:type2_cable!=0)", - "value": "400 V" - }, - { - "key": "socket:type2_cable:current", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type2_cable:current' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_cable~.+ & socket:type2_cable!=0)" - }, - { - "key": "socket:type2_cable:current", - "description": "Layer 'Charging stations' shows socket:type2_cable:current=16 A with a fixed text, namely 'Type 2 with cable (mennekes) outputs at most 16 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_cable~.+ & socket:type2_cable!=0)", - "value": "16 A" - }, - { - "key": "socket:type2_cable:current", - "description": "Layer 'Charging stations' shows socket:type2_cable:current=32 A with a fixed text, namely 'Type 2 with cable (mennekes) outputs at most 32 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_cable~.+ & socket:type2_cable!=0)", - "value": "32 A" - }, - { - "key": "socket:type2_cable:output", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:type2_cable:output' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_cable~.+ & socket:type2_cable!=0)" - }, - { - "key": "socket:type2_cable:output", - "description": "Layer 'Charging stations' shows socket:type2_cable:output=11 kW with a fixed text, namely 'Type 2 with cable (mennekes) outputs at most 11 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_cable~.+ & socket:type2_cable!=0)", - "value": "11 kW" - }, - { - "key": "socket:type2_cable:output", - "description": "Layer 'Charging stations' shows socket:type2_cable:output=22 kW with a fixed text, namely 'Type 2 with cable (mennekes) outputs at most 22 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_cable~.+ & socket:type2_cable!=0)", - "value": "22 kW" - }, - { - "key": "socket:tesla_supercharger_ccs", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:tesla_supercharger_ccs' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger_ccs~.+ & socket:tesla_supercharger_ccs!=0)" - }, - { - "key": "socket:tesla_supercharger_ccs:voltage", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:tesla_supercharger_ccs:voltage' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger_ccs~.+ & socket:tesla_supercharger_ccs!=0)" - }, - { - "key": "socket:tesla_supercharger_ccs:voltage", - "description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs:voltage=500 V with a fixed text, namely 'Tesla Supercharger CCS (a branded type2_css) outputs 500 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger_ccs~.+ & socket:tesla_supercharger_ccs!=0)", - "value": "500 V" - }, - { - "key": "socket:tesla_supercharger_ccs:voltage", - "description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs:voltage=920 V with a fixed text, namely 'Tesla Supercharger CCS (a branded type2_css) outputs 920 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger_ccs~.+ & socket:tesla_supercharger_ccs!=0)", - "value": "920 V" - }, - { - "key": "socket:tesla_supercharger_ccs:current", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:tesla_supercharger_ccs:current' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger_ccs~.+ & socket:tesla_supercharger_ccs!=0)" - }, - { - "key": "socket:tesla_supercharger_ccs:current", - "description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs:current=125 A with a fixed text, namely 'Tesla Supercharger CCS (a branded type2_css) outputs at most 125 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger_ccs~.+ & socket:tesla_supercharger_ccs!=0)", - "value": "125 A" - }, - { - "key": "socket:tesla_supercharger_ccs:current", - "description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs:current=350 A with a fixed text, namely 'Tesla Supercharger CCS (a branded type2_css) outputs at most 350 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger_ccs~.+ & socket:tesla_supercharger_ccs!=0)", - "value": "350 A" - }, - { - "key": "socket:tesla_supercharger_ccs:output", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:tesla_supercharger_ccs:output' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger_ccs~.+ & socket:tesla_supercharger_ccs!=0)" - }, - { - "key": "socket:tesla_supercharger_ccs:output", - "description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs:output=50 kW with a fixed text, namely 'Tesla Supercharger CCS (a branded type2_css) outputs at most 50 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger_ccs~.+ & socket:tesla_supercharger_ccs!=0)", - "value": "50 kW" - }, - { - "key": "socket:tesla_destination", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:tesla_destination' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ & socket:tesla_destination!=0)" - }, - { - "key": "socket:tesla_destination:voltage", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:tesla_destination:voltage' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ & socket:tesla_destination!=0)" - }, - { - "key": "socket:tesla_destination:voltage", - "description": "Layer 'Charging stations' shows socket:tesla_destination:voltage=480 V with a fixed text, namely 'Tesla Supercharger (destination) outputs 480 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ & socket:tesla_destination!=0)", - "value": "480 V" - }, - { - "key": "socket:tesla_destination:current", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:tesla_destination:current' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ & socket:tesla_destination!=0)" - }, - { - "key": "socket:tesla_destination:current", - "description": "Layer 'Charging stations' shows socket:tesla_destination:current=125 A with a fixed text, namely 'Tesla Supercharger (destination) outputs at most 125 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ & socket:tesla_destination!=0)", - "value": "125 A" - }, - { - "key": "socket:tesla_destination:current", - "description": "Layer 'Charging stations' shows socket:tesla_destination:current=350 A with a fixed text, namely 'Tesla Supercharger (destination) outputs at most 350 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ & socket:tesla_destination!=0)", - "value": "350 A" - }, - { - "key": "socket:tesla_destination:output", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:tesla_destination:output' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ & socket:tesla_destination!=0)" - }, - { - "key": "socket:tesla_destination:output", - "description": "Layer 'Charging stations' shows socket:tesla_destination:output=120 kW with a fixed text, namely 'Tesla Supercharger (destination) outputs at most 120 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ & socket:tesla_destination!=0)", - "value": "120 kW" - }, - { - "key": "socket:tesla_destination:output", - "description": "Layer 'Charging stations' shows socket:tesla_destination:output=150 kW with a fixed text, namely 'Tesla Supercharger (destination) outputs at most 150 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ & socket:tesla_destination!=0)", - "value": "150 kW" - }, - { - "key": "socket:tesla_destination:output", - "description": "Layer 'Charging stations' shows socket:tesla_destination:output=250 kW with a fixed text, namely 'Tesla Supercharger (destination) outputs at most 250 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ & socket:tesla_destination!=0)", - "value": "250 kW" - }, - { - "key": "socket:tesla_destination", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:tesla_destination' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ & socket:tesla_destination!=0)" - }, - { - "key": "socket:tesla_destination:voltage", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:tesla_destination:voltage' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ & socket:tesla_destination!=0)" - }, - { - "key": "socket:tesla_destination:voltage", - "description": "Layer 'Charging stations' shows socket:tesla_destination:voltage=230 V with a fixed text, namely 'Tesla supercharger (destination) (A Type 2 with cable branded as tesla) outputs 230 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ & socket:tesla_destination!=0)", - "value": "230 V" - }, - { - "key": "socket:tesla_destination:voltage", - "description": "Layer 'Charging stations' shows socket:tesla_destination:voltage=400 V with a fixed text, namely 'Tesla supercharger (destination) (A Type 2 with cable branded as tesla) outputs 400 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ & socket:tesla_destination!=0)", - "value": "400 V" - }, - { - "key": "socket:tesla_destination:current", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:tesla_destination:current' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ & socket:tesla_destination!=0)" - }, - { - "key": "socket:tesla_destination:current", - "description": "Layer 'Charging stations' shows socket:tesla_destination:current=16 A with a fixed text, namely 'Tesla supercharger (destination) (A Type 2 with cable branded as tesla) outputs at most 16 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ & socket:tesla_destination!=0)", - "value": "16 A" - }, - { - "key": "socket:tesla_destination:current", - "description": "Layer 'Charging stations' shows socket:tesla_destination:current=32 A with a fixed text, namely 'Tesla supercharger (destination) (A Type 2 with cable branded as tesla) outputs at most 32 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ & socket:tesla_destination!=0)", - "value": "32 A" - }, - { - "key": "socket:tesla_destination:output", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:tesla_destination:output' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ & socket:tesla_destination!=0)" - }, - { - "key": "socket:tesla_destination:output", - "description": "Layer 'Charging stations' shows socket:tesla_destination:output=11 kW with a fixed text, namely 'Tesla supercharger (destination) (A Type 2 with cable branded as tesla) outputs at most 11 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ & socket:tesla_destination!=0)", - "value": "11 kW" - }, - { - "key": "socket:tesla_destination:output", - "description": "Layer 'Charging stations' shows socket:tesla_destination:output=22 kW with a fixed text, namely 'Tesla supercharger (destination) (A Type 2 with cable branded as tesla) outputs at most 22 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ & socket:tesla_destination!=0)", - "value": "22 kW" - }, - { - "key": "socket:USB-A", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:USB-A' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:USB-A~.+ & socket:USB-A!=0)" - }, - { - "key": "socket:USB-A:voltage", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:USB-A:voltage' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:USB-A~.+ & socket:USB-A!=0)" - }, - { - "key": "socket:USB-A:voltage", - "description": "Layer 'Charging stations' shows socket:USB-A:voltage=5 V with a fixed text, namely 'USB to charge phones and small electronics outputs 5 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:USB-A~.+ & socket:USB-A!=0)", - "value": "5 V" - }, - { - "key": "socket:USB-A:current", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:USB-A:current' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:USB-A~.+ & socket:USB-A!=0)" - }, - { - "key": "socket:USB-A:current", - "description": "Layer 'Charging stations' shows socket:USB-A:current=1 A with a fixed text, namely 'USB to charge phones and small electronics outputs at most 1 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:USB-A~.+ & socket:USB-A!=0)", - "value": "1 A" - }, - { - "key": "socket:USB-A:current", - "description": "Layer 'Charging stations' shows socket:USB-A:current=2 A with a fixed text, namely 'USB to charge phones and small electronics outputs at most 2 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:USB-A~.+ & socket:USB-A!=0)", - "value": "2 A" - }, - { - "key": "socket:USB-A:output", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:USB-A:output' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:USB-A~.+ & socket:USB-A!=0)" - }, - { - "key": "socket:USB-A:output", - "description": "Layer 'Charging stations' shows socket:USB-A:output=5W with a fixed text, namely 'USB to charge phones and small electronics outputs at most 5W A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:USB-A~.+ & socket:USB-A!=0)", - "value": "5W" - }, - { - "key": "socket:USB-A:output", - "description": "Layer 'Charging stations' shows socket:USB-A:output=10W with a fixed text, namely 'USB to charge phones and small electronics outputs at most 10W A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:USB-A~.+ & socket:USB-A!=0)", - "value": "10W" - }, - { - "key": "socket:bosch_3pin", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:bosch_3pin' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:bosch_3pin~.+ & socket:bosch_3pin!=0)" - }, - { - "key": "socket:bosch_3pin:voltage", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:bosch_3pin:voltage' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:bosch_3pin~.+ & socket:bosch_3pin!=0)" - }, - { - "key": "socket:bosch_3pin:current", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:bosch_3pin:current' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:bosch_3pin~.+ & socket:bosch_3pin!=0)" - }, - { - "key": "socket:bosch_3pin:output", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:bosch_3pin:output' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:bosch_3pin~.+ & socket:bosch_3pin!=0)" - }, - { - "key": "socket:bosch_5pin", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:bosch_5pin' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:bosch_5pin~.+ & socket:bosch_5pin!=0)" - }, - { - "key": "socket:bosch_5pin:voltage", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:bosch_5pin:voltage' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:bosch_5pin~.+ & socket:bosch_5pin!=0)" - }, - { - "key": "socket:bosch_5pin:current", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:bosch_5pin:current' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:bosch_5pin~.+ & socket:bosch_5pin!=0)" - }, - { - "key": "socket:bosch_5pin:output", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:bosch_5pin:output' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:bosch_5pin~.+ & socket:bosch_5pin!=0)" - }, - { - "key": "socket:bs1363", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:bs1363' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:bs1363~.+ & socket:bs1363!=0)" - }, - { - "key": "socket:bs1363:voltage", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:bs1363:voltage' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:bs1363~.+ & socket:bs1363!=0)" - }, - { - "key": "socket:bs1363:voltage", - "description": "Layer 'Charging stations' shows socket:bs1363:voltage=230 V with a fixed text, namely 'BS1363 (Type G) outputs 230 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:bs1363~.+ & socket:bs1363!=0)", - "value": "230 V" - }, - { - "key": "socket:bs1363:current", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:bs1363:current' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:bs1363~.+ & socket:bs1363!=0)" - }, - { - "key": "socket:bs1363:current", - "description": "Layer 'Charging stations' shows socket:bs1363:current=13 A with a fixed text, namely 'BS1363 (Type G) outputs at most 13 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:bs1363~.+ & socket:bs1363!=0)", - "value": "13 A" - }, - { - "key": "socket:bs1363:output", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:bs1363:output' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:bs1363~.+ & socket:bs1363!=0)" - }, - { - "key": "socket:bs1363:output", - "description": "Layer 'Charging stations' shows socket:bs1363:output=3kW with a fixed text, namely 'BS1363 (Type G) outputs at most 3kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:bs1363~.+ & socket:bs1363!=0)", - "value": "3kW" - }, - { - "key": "socket:nema5_15", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:nema5_15' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:nema5_15~.+ & socket:nema5_15!=0)" - }, - { - "key": "socket:nema5_15:voltage", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:nema5_15:voltage' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:nema5_15~.+ & socket:nema5_15!=0)" - }, - { - "key": "socket:nema5_15:voltage", - "description": "Layer 'Charging stations' shows socket:nema5_15:voltage=120 V with a fixed text, namely 'NEMA 5-15 (Type B) outputs 120 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:nema5_15~.+ & socket:nema5_15!=0)", - "value": "120 V" - }, - { - "key": "socket:nema5_15:current", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:nema5_15:current' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:nema5_15~.+ & socket:nema5_15!=0)" - }, - { - "key": "socket:nema5_15:current", - "description": "Layer 'Charging stations' shows socket:nema5_15:current=15 A with a fixed text, namely 'NEMA 5-15 (Type B) outputs at most 15 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:nema5_15~.+ & socket:nema5_15!=0)", - "value": "15 A" - }, - { - "key": "socket:nema5_15:output", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:nema5_15:output' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:nema5_15~.+ & socket:nema5_15!=0)" - }, - { - "key": "socket:nema5_15:output", - "description": "Layer 'Charging stations' shows socket:nema5_15:output=1.8 kW with a fixed text, namely 'NEMA 5-15 (Type B) outputs at most 1.8 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:nema5_15~.+ & socket:nema5_15!=0)", - "value": "1.8 kW" - }, - { - "key": "socket:sev1011_t23", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:sev1011_t23' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:sev1011_t23~.+ & socket:sev1011_t23!=0)" - }, - { - "key": "socket:sev1011_t23:voltage", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:sev1011_t23:voltage' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:sev1011_t23~.+ & socket:sev1011_t23!=0)" - }, - { - "key": "socket:sev1011_t23:voltage", - "description": "Layer 'Charging stations' shows socket:sev1011_t23:voltage=230 V with a fixed text, namely 'SEV 1011 T23 (Type J) outputs 230 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:sev1011_t23~.+ & socket:sev1011_t23!=0)", - "value": "230 V" - }, - { - "key": "socket:sev1011_t23:current", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:sev1011_t23:current' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:sev1011_t23~.+ & socket:sev1011_t23!=0)" - }, - { - "key": "socket:sev1011_t23:current", - "description": "Layer 'Charging stations' shows socket:sev1011_t23:current=16 A with a fixed text, namely 'SEV 1011 T23 (Type J) outputs at most 16 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:sev1011_t23~.+ & socket:sev1011_t23!=0)", - "value": "16 A" - }, - { - "key": "socket:sev1011_t23:output", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:sev1011_t23:output' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:sev1011_t23~.+ & socket:sev1011_t23!=0)" - }, - { - "key": "socket:sev1011_t23:output", - "description": "Layer 'Charging stations' shows socket:sev1011_t23:output=3.7 kW with a fixed text, namely 'SEV 1011 T23 (Type J) outputs at most 3.7 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:sev1011_t23~.+ & socket:sev1011_t23!=0)", - "value": "3.7 kW" - }, - { - "key": "socket:as3112", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:as3112' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:as3112~.+ & socket:as3112!=0)" - }, - { - "key": "socket:as3112:voltage", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:as3112:voltage' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:as3112~.+ & socket:as3112!=0)" - }, - { - "key": "socket:as3112:voltage", - "description": "Layer 'Charging stations' shows socket:as3112:voltage=230 V with a fixed text, namely 'AS3112 (Type I) outputs 230 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:as3112~.+ & socket:as3112!=0)", - "value": "230 V" - }, - { - "key": "socket:as3112:current", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:as3112:current' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:as3112~.+ & socket:as3112!=0)" - }, - { - "key": "socket:as3112:current", - "description": "Layer 'Charging stations' shows socket:as3112:current=10 A with a fixed text, namely 'AS3112 (Type I) outputs at most 10 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:as3112~.+ & socket:as3112!=0)", - "value": "10 A" - }, - { - "key": "socket:as3112:output", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:as3112:output' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:as3112~.+ & socket:as3112!=0)" - }, - { - "key": "socket:as3112:output", - "description": "Layer 'Charging stations' shows socket:as3112:output=2.3 kW with a fixed text, namely 'AS3112 (Type I) outputs at most 2.3 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:as3112~.+ & socket:as3112!=0)", - "value": "2.3 kW" - }, - { - "key": "socket:nema_5_20", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:nema_5_20' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:nema_5_20~.+ & socket:nema_5_20!=0)" - }, - { - "key": "socket:nema_5_20:voltage", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:nema_5_20:voltage' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:nema_5_20~.+ & socket:nema_5_20!=0)" - }, - { - "key": "socket:nema_5_20:voltage", - "description": "Layer 'Charging stations' shows socket:nema_5_20:voltage=120 V with a fixed text, namely 'NEMA 5-20 (Type B) outputs 120 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:nema_5_20~.+ & socket:nema_5_20!=0)", - "value": "120 V" - }, - { - "key": "socket:nema_5_20:current", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:nema_5_20:current' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:nema_5_20~.+ & socket:nema_5_20!=0)" - }, - { - "key": "socket:nema_5_20:current", - "description": "Layer 'Charging stations' shows socket:nema_5_20:current=20 A with a fixed text, namely 'NEMA 5-20 (Type B) outputs at most 20 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:nema_5_20~.+ & socket:nema_5_20!=0)", - "value": "20 A" - }, - { - "key": "socket:nema_5_20:output", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'socket:nema_5_20:output' (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:nema_5_20~.+ & socket:nema_5_20!=0)" - }, - { - "key": "socket:nema_5_20:output", - "description": "Layer 'Charging stations' shows socket:nema_5_20:output=2.4 kW with a fixed text, namely 'NEMA 5-20 (Type B) outputs at most 2.4 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:nema_5_20~.+ & socket:nema_5_20!=0)", - "value": "2.4 kW" - }, - { - "key": "opening_hours", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Charging stations' shows opening_hours=24/7 with a fixed text, namely '24/7 opened (including holidays)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "24/7" - }, - { - "key": "opening_hours", - "description": "Layer 'Charging stations' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "fee", - "description": "Layer 'Charging stations' shows fee=no & fee:conditional= & charge= & authentication:none=yes with a fixed text, namely 'Free to use (without authenticating)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "fee:conditional", - "description": "Layer 'Charging stations' shows fee=no & fee:conditional= & charge= & authentication:none=yes with a fixed text, namely 'Free to use (without authenticating)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key fee:conditional.", - "value": "" - }, - { - "key": "charge", - "description": "Layer 'Charging stations' shows fee=no & fee:conditional= & charge= & authentication:none=yes with a fixed text, namely 'Free to use (without authenticating)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key charge.", - "value": "" - }, - { - "key": "authentication:none", - "description": "Layer 'Charging stations' shows fee=no & fee:conditional= & charge= & authentication:none=yes with a fixed text, namely 'Free to use (without authenticating)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "fee", - "description": "Layer 'Charging stations' shows fee=no & fee:conditional= & charge= & authentication:none=no with a fixed text, namely 'Free to use, but one has to authenticate' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "fee:conditional", - "description": "Layer 'Charging stations' shows fee=no & fee:conditional= & charge= & authentication:none=no with a fixed text, namely 'Free to use, but one has to authenticate' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key fee:conditional.", - "value": "" - }, - { - "key": "charge", - "description": "Layer 'Charging stations' shows fee=no & fee:conditional= & charge= & authentication:none=no with a fixed text, namely 'Free to use, but one has to authenticate' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key charge.", - "value": "" - }, - { - "key": "authentication:none", - "description": "Layer 'Charging stations' shows fee=no & fee:conditional= & charge= & authentication:none=no with a fixed text, namely 'Free to use, but one has to authenticate' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "fee", - "description": "Layer 'Charging stations' shows fee=no with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "fee", - "description": "Layer 'Charging stations' shows fee=yes & fee:conditional=no @ customers with a fixed text, namely 'Paid use, but free for customers of the hotel/pub/hospital/... who operates the charging station' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "fee:conditional", - "description": "Layer 'Charging stations' shows fee=yes & fee:conditional=no @ customers with a fixed text, namely 'Paid use, but free for customers of the hotel/pub/hospital/... who operates the charging station' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no @ customers" - }, - { - "key": "fee", - "description": "Layer 'Charging stations' shows fee=yes & fee:conditional= with a fixed text, namely 'Paid use' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "fee:conditional", - "description": "Layer 'Charging stations' shows fee=yes & fee:conditional= with a fixed text, namely 'Paid use' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key fee:conditional.", - "value": "" - }, - { - "key": "charge", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'charge' (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes)" - }, - { - "key": "payment:cash", - "description": "Layer 'Charging stations' shows payment:cash=yes with a fixed text, namely 'Cash is accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | charge~.+)", - "value": "yes" - }, - { - "key": "payment:cards", - "description": "Layer 'Charging stations' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | charge~.+)", - "value": "yes" - }, - { - "key": "payment:qr_code", - "description": "Layer 'Charging stations' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | charge~.+)", - "value": "yes" - }, - { - "key": "payment:app", - "description": "Layer 'Charging stations' shows payment:app=yes with a fixed text, namely 'Payment is done using a dedicated app' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | charge~.+)", - "value": "yes" - }, - { - "key": "payment:membership_card", - "description": "Layer 'Charging stations' shows payment:membership_card=yes with a fixed text, namely 'Payment is done using a membership card' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | charge~.+)", - "value": "yes" - }, - { - "key": "authentication:membership_card", - "description": "Layer 'Charging stations' shows authentication:membership_card=yes with a fixed text, namely 'Authentication by a membership card' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=no | fee=)", - "value": "yes" - }, - { - "key": "authentication:app", - "description": "Layer 'Charging stations' shows authentication:app=yes with a fixed text, namely 'Authentication by an app' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=no | fee=)", - "value": "yes" - }, - { - "key": "authentication:phone_call", - "description": "Layer 'Charging stations' shows authentication:phone_call=yes with a fixed text, namely 'Authentication via phone call is available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=no | fee=)", - "value": "yes" - }, - { - "key": "authentication:short_message", - "description": "Layer 'Charging stations' shows authentication:short_message=yes with a fixed text, namely 'Authentication via SMS is available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=no | fee=)", - "value": "yes" - }, - { - "key": "authentication:nfc", - "description": "Layer 'Charging stations' shows authentication:nfc=yes with a fixed text, namely 'Authentication via NFC is available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=no | fee=)", - "value": "yes" - }, - { - "key": "authentication:money_card", - "description": "Layer 'Charging stations' shows authentication:money_card=yes with a fixed text, namely 'Authentication via Money Card is available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=no | fee=)", - "value": "yes" - }, - { - "key": "authentication:debit_card", - "description": "Layer 'Charging stations' shows authentication:debit_card=yes with a fixed text, namely 'Authentication via debit card is available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=no | fee=)", - "value": "yes" - }, - { - "key": "authentication:none", - "description": "Layer 'Charging stations' shows authentication:none=yes with a fixed text, namely 'Charging here is (also) possible without authentication' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=no | fee=)", - "value": "yes" - }, - { - "key": "authentication:phone_call:number", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'authentication:phone_call:number' (in the mapcomplete.org theme 'Personal theme') (This is only shown if authentication:phone_call=yes | authentication:short_message=yes)" - }, - { - "key": "maxstay", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'maxstay' (in the mapcomplete.org theme 'Personal theme') (This is only shown if maxstay~.+ | motorcar=yes | hgv=yes | bus=yes)" - }, - { - "key": "maxstay", - "description": "Layer 'Charging stations' shows maxstay=unlimited with a fixed text, namely 'No timelimit on leaving your vehicle here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if maxstay~.+ | motorcar=yes | hgv=yes | bus=yes)", - "value": "unlimited" - }, - { - "key": "network", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'network' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "no:network", - "description": "Layer 'Charging stations' shows no:network=yes with a fixed text, namely 'Not part of a bigger network, e.g. because the charging station is maintained by a local business' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "network", - "description": "Layer 'Charging stations' shows network=none with a fixed text, namely 'Not part of a bigger network' (in the mapcomplete.org theme 'Personal theme')", - "value": "none" - }, - { - "key": "network", - "description": "Layer 'Charging stations' shows network=AeroVironment with a fixed text, namely 'AeroVironment' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "AeroVironment" - }, - { - "key": "network", - "description": "Layer 'Charging stations' shows network=Blink with a fixed text, namely 'Blink' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "Blink" - }, - { - "key": "network", - "description": "Layer 'Charging stations' shows network=EVgo with a fixed text, namely 'EVgo' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "EVgo" - }, - { - "key": "network", - "description": "Layer 'Charging stations' shows network=Allego with a fixed text, namely 'Allego' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "Allego" - }, - { - "key": "network", - "description": "Layer 'Charging stations' shows network=Blue Corner with a fixed text, namely 'Blue Corner' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "Blue Corner" - }, - { - "key": "network", - "description": "Layer 'Charging stations' shows network=Tesla with a fixed text, namely 'Tesla' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "Tesla" - }, - { - "key": "operator", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'operator' (in the mapcomplete.org theme 'Personal theme') (This is only shown if network=)" - }, - { - "key": "network", - "description": "Layer 'Charging stations' shows network= with a fixed text, namely 'Actually, {operator} is the network' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key network. (This is only shown if network=)", - "value": "" - }, - { - "key": "phone", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "level", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Charging stations' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Charging stations' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Charging stations' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Charging stations' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Charging stations' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "ref", - "description": "Layer 'Charging stations' shows and asks freeform values for key 'ref' (in the mapcomplete.org theme 'Personal theme') (This is only shown if network~.+)" - }, - { - "key": "planned:amenity", - "description": "Layer 'Charging stations' shows planned:amenity= & construction:amenity= & disused:amenity= & operational_status= & amenity=charging_station with a fixed text, namely 'This charging station works' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key planned:amenity.", - "value": "" - }, - { - "key": "construction:amenity", - "description": "Layer 'Charging stations' shows planned:amenity= & construction:amenity= & disused:amenity= & operational_status= & amenity=charging_station with a fixed text, namely 'This charging station works' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key construction:amenity.", - "value": "" - }, - { - "key": "disused:amenity", - "description": "Layer 'Charging stations' shows planned:amenity= & construction:amenity= & disused:amenity= & operational_status= & amenity=charging_station with a fixed text, namely 'This charging station works' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key disused:amenity.", - "value": "" - }, - { - "key": "operational_status", - "description": "Layer 'Charging stations' shows planned:amenity= & construction:amenity= & disused:amenity= & operational_status= & amenity=charging_station with a fixed text, namely 'This charging station works' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key operational_status.", - "value": "" - }, - { - "key": "amenity", - "description": "Layer 'Charging stations' shows planned:amenity= & construction:amenity= & disused:amenity= & operational_status= & amenity=charging_station with a fixed text, namely 'This charging station works' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "charging_station" - }, - { - "key": "planned:amenity", - "description": "Layer 'Charging stations' shows planned:amenity= & construction:amenity= & disused:amenity= & operational_status=broken & amenity=charging_station with a fixed text, namely 'This charging station is broken' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key planned:amenity.", - "value": "" - }, - { - "key": "construction:amenity", - "description": "Layer 'Charging stations' shows planned:amenity= & construction:amenity= & disused:amenity= & operational_status=broken & amenity=charging_station with a fixed text, namely 'This charging station is broken' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key construction:amenity.", - "value": "" - }, - { - "key": "disused:amenity", - "description": "Layer 'Charging stations' shows planned:amenity= & construction:amenity= & disused:amenity= & operational_status=broken & amenity=charging_station with a fixed text, namely 'This charging station is broken' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key disused:amenity.", - "value": "" - }, - { - "key": "operational_status", - "description": "Layer 'Charging stations' shows planned:amenity= & construction:amenity= & disused:amenity= & operational_status=broken & amenity=charging_station with a fixed text, namely 'This charging station is broken' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "broken" - }, - { - "key": "amenity", - "description": "Layer 'Charging stations' shows planned:amenity= & construction:amenity= & disused:amenity= & operational_status=broken & amenity=charging_station with a fixed text, namely 'This charging station is broken' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "charging_station" - }, - { - "key": "planned:amenity", - "description": "Layer 'Charging stations' shows planned:amenity=charging_station & construction:amenity= & disused:amenity= & operational_status= & amenity= with a fixed text, namely 'A charging station is planned here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "charging_station" - }, - { - "key": "construction:amenity", - "description": "Layer 'Charging stations' shows planned:amenity=charging_station & construction:amenity= & disused:amenity= & operational_status= & amenity= with a fixed text, namely 'A charging station is planned here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key construction:amenity.", - "value": "" - }, - { - "key": "disused:amenity", - "description": "Layer 'Charging stations' shows planned:amenity=charging_station & construction:amenity= & disused:amenity= & operational_status= & amenity= with a fixed text, namely 'A charging station is planned here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key disused:amenity.", - "value": "" - }, - { - "key": "operational_status", - "description": "Layer 'Charging stations' shows planned:amenity=charging_station & construction:amenity= & disused:amenity= & operational_status= & amenity= with a fixed text, namely 'A charging station is planned here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key operational_status.", - "value": "" - }, - { - "key": "amenity", - "description": "Layer 'Charging stations' shows planned:amenity=charging_station & construction:amenity= & disused:amenity= & operational_status= & amenity= with a fixed text, namely 'A charging station is planned here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key amenity.", - "value": "" - }, - { - "key": "planned:amenity", - "description": "Layer 'Charging stations' shows planned:amenity= & construction:amenity=charging_station & disused:amenity= & operational_status= & amenity= with a fixed text, namely 'A charging station is constructed here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key planned:amenity.", - "value": "" - }, - { - "key": "construction:amenity", - "description": "Layer 'Charging stations' shows planned:amenity= & construction:amenity=charging_station & disused:amenity= & operational_status= & amenity= with a fixed text, namely 'A charging station is constructed here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "charging_station" - }, - { - "key": "disused:amenity", - "description": "Layer 'Charging stations' shows planned:amenity= & construction:amenity=charging_station & disused:amenity= & operational_status= & amenity= with a fixed text, namely 'A charging station is constructed here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key disused:amenity.", - "value": "" - }, - { - "key": "operational_status", - "description": "Layer 'Charging stations' shows planned:amenity= & construction:amenity=charging_station & disused:amenity= & operational_status= & amenity= with a fixed text, namely 'A charging station is constructed here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key operational_status.", - "value": "" - }, - { - "key": "amenity", - "description": "Layer 'Charging stations' shows planned:amenity= & construction:amenity=charging_station & disused:amenity= & operational_status= & amenity= with a fixed text, namely 'A charging station is constructed here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key amenity.", - "value": "" - }, - { - "key": "planned:amenity", - "description": "Layer 'Charging stations' shows planned:amenity= & construction:amenity= & disused:amenity=charging_station & operational_status= & amenity= with a fixed text, namely 'This charging station has beed permanently disabled and is not in use anymore but is still visible' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key planned:amenity.", - "value": "" - }, - { - "key": "construction:amenity", - "description": "Layer 'Charging stations' shows planned:amenity= & construction:amenity= & disused:amenity=charging_station & operational_status= & amenity= with a fixed text, namely 'This charging station has beed permanently disabled and is not in use anymore but is still visible' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key construction:amenity.", - "value": "" - }, - { - "key": "disused:amenity", - "description": "Layer 'Charging stations' shows planned:amenity= & construction:amenity= & disused:amenity=charging_station & operational_status= & amenity= with a fixed text, namely 'This charging station has beed permanently disabled and is not in use anymore but is still visible' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "charging_station" - }, - { - "key": "operational_status", - "description": "Layer 'Charging stations' shows planned:amenity= & construction:amenity= & disused:amenity=charging_station & operational_status= & amenity= with a fixed text, namely 'This charging station has beed permanently disabled and is not in use anymore but is still visible' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key operational_status.", - "value": "" - }, - { - "key": "amenity", - "description": "Layer 'Charging stations' shows planned:amenity= & construction:amenity= & disused:amenity=charging_station & operational_status= & amenity= with a fixed text, namely 'This charging station has beed permanently disabled and is not in use anymore but is still visible' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key amenity.", - "value": "" - }, - { - "key": "parking:fee", - "description": "Layer 'Charging stations' shows parking:fee=no with a fixed text, namely 'No additional parking cost while charging' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if motor_vehicle=yes | hgv=yes | bus=yes | bicycle=no | bicycle=)", - "value": "no" - }, - { - "key": "parking:fee", - "description": "Layer 'Charging stations' shows parking:fee=yes with a fixed text, namely 'An additional parking fee should be paid while charging' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if motor_vehicle=yes | hgv=yes | bus=yes | bicycle=no | bicycle=)", - "value": "yes" - }, - { - "key": "sport", - "description": "The MapComplete theme Personal theme has a layer Climbing opportunities showing features with this tag", - "value": "climbing" - }, - { - "key": "id", - "description": "Layer 'Climbing opportunities' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Climbing opportunities allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Climbing opportunities allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Climbing opportunities allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Climbing opportunities allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Climbing opportunities' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "noname", - "description": "Layer 'Climbing opportunities' shows noname=yes & name= with a fixed text, namely 'This climbing opportunity doesn't have a name' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "name", - "description": "Layer 'Climbing opportunities' shows noname=yes & name= with a fixed text, namely 'This climbing opportunity doesn't have a name' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key name.", - "value": "" - }, - { - "key": "climbing", - "description": "Layer 'Climbing opportunities' shows climbing=boulder with a fixed text, namely 'A climbing boulder - a single rock or cliff with one or a few climbing routes which can be climbed safely without rope' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "boulder" - }, - { - "key": "climbing", - "description": "Layer 'Climbing opportunities' shows climbing=crag with a fixed text, namely 'A climbing crag - a single rock or cliff with at least a few climbing routes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "crag" - }, - { - "key": "climbing", - "description": "Layer 'Climbing opportunities' shows climbing=area with a fixed text, namely 'A climbing area with one or more climbing crags and/or boulders' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "area" - }, - { - "key": "rock", - "description": "Layer 'Climbing opportunities' shows and asks freeform values for key 'rock' (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing=crag | natural=cliff | natural=bare_rock)" - }, - { - "key": "rock", - "description": "Layer 'Climbing opportunities' shows rock=limestone with a fixed text, namely 'Limestone' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing=crag | natural=cliff | natural=bare_rock)", - "value": "limestone" - }, - { - "key": "url", - "description": "Layer 'Climbing opportunities' shows and asks freeform values for key 'url' (in the mapcomplete.org theme 'Personal theme') (This is only shown if leisure!~^(sports_centre)$ & sport=climbing & office= & club=)" - }, - { - "key": "charge", - "description": "Layer 'Climbing opportunities' shows and asks freeform values for key 'charge' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "fee", - "description": "Layer 'Climbing opportunities' shows fee=no with a fixed text, namely 'Climbing here is free of charge' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "fee", - "description": "Layer 'Climbing opportunities' shows fee=yes & charge= with a fixed text, namely 'Paying a fee is required to climb here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "charge", - "description": "Layer 'Climbing opportunities' shows fee=yes & charge= with a fixed text, namely 'Paying a fee is required to climb here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key charge.", - "value": "" - }, - { - "key": "climbing:boulder", - "description": "Layer 'Climbing opportunities' shows climbing:boulder=yes with a fixed text, namely 'Bouldering is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "climbing:boulder", - "description": "Layer 'Climbing opportunities' shows climbing:boulder=no with a fixed text, namely 'Bouldering is not possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "climbing:boulder", - "description": "Layer 'Climbing opportunities' shows climbing:boulder=limited with a fixed text, namely 'Bouldering is possible, although there are only a few problems' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "climbing:boulder", - "description": "Layer 'Climbing opportunities' shows climbing:boulder~.+ with a fixed text, namely 'There are {climbing:boulder} boulder problems' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "club", - "description": "The MapComplete theme Personal theme has a layer Climbing club showing features with this tag", - "value": "climbing" - }, - { - "key": "sport", - "description": "The MapComplete theme Personal theme has a layer Climbing club showing features with this tag", - "value": "climbing" - }, - { - "key": "office", - "description": "The MapComplete theme Personal theme has a layer Climbing club showing features with this tag" - }, - { - "key": "club", - "description": "The MapComplete theme Personal theme has a layer Climbing club showing features with this tag" - }, - { - "key": "id", - "description": "Layer 'Climbing club' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "name", - "description": "Layer 'Climbing club' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Climbing club' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Climbing club' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Climbing club' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Climbing club' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Climbing club' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'Climbing club' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Climbing club' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Climbing club' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Climbing club' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "sport", - "description": "The MapComplete theme Personal theme has a layer Climbing gyms showing features with this tag", - "value": "climbing" - }, - { - "key": "leisure", - "description": "The MapComplete theme Personal theme has a layer Climbing gyms showing features with this tag", - "value": "sports_centre" - }, - { - "key": "id", - "description": "Layer 'Climbing gyms' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Climbing gyms allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Climbing gyms allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Climbing gyms allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Climbing gyms allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Climbing gyms' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Climbing gyms' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Climbing gyms' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'Climbing gyms' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Climbing gyms' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Climbing gyms' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Climbing gyms' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Climbing gyms' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "charge", - "description": "Layer 'Climbing gyms' shows and asks freeform values for key 'charge' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "fee", - "description": "Layer 'Climbing gyms' shows fee=no with a fixed text, namely 'Climbing here is free of charge' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "fee", - "description": "Layer 'Climbing gyms' shows fee=yes & charge= with a fixed text, namely 'Paying a fee is required to climb here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "charge", - "description": "Layer 'Climbing gyms' shows fee=yes & charge= with a fixed text, namely 'Paying a fee is required to climb here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key charge.", - "value": "" - }, - { - "key": "payment:cash", - "description": "Layer 'Climbing gyms' shows payment:cash=yes with a fixed text, namely 'Cash is accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:cards", - "description": "Layer 'Climbing gyms' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:qr_code", - "description": "Layer 'Climbing gyms' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "opening_hours", - "description": "Layer 'Climbing gyms' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Climbing gyms' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "climbing:boulder", - "description": "Layer 'Climbing gyms' shows climbing:boulder=yes with a fixed text, namely 'Bouldering is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "climbing:boulder", - "description": "Layer 'Climbing gyms' shows climbing:boulder=no with a fixed text, namely 'Bouldering is not possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "climbing:boulder", - "description": "Layer 'Climbing gyms' shows climbing:boulder=limited with a fixed text, namely 'Bouldering is possible, although there are only a few problems' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "climbing:boulder", - "description": "Layer 'Climbing gyms' shows climbing:boulder~.+ with a fixed text, namely 'There are {climbing:boulder} boulder problems' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "climbing:sport", - "description": "Layer 'Climbing gyms' shows climbing:sport=yes with a fixed text, namely 'Sport climbing is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "climbing:sport", - "description": "Layer 'Climbing gyms' shows climbing:sport=no with a fixed text, namely 'Sport climbing is not possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "climbing:sport", - "description": "Layer 'Climbing gyms' shows climbing:sport~.+ with a fixed text, namely 'There are {climbing:sport} sport climbing routes' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "climbing:toprope", - "description": "Layer 'Climbing gyms' shows climbing:toprope=yes with a fixed text, namely 'Toprope climbing is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "climbing:toprope", - "description": "Layer 'Climbing gyms' shows climbing:toprope=no with a fixed text, namely 'Toprope climbing is not possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "climbing:toprope", - "description": "Layer 'Climbing gyms' shows climbing:toprope~.+ with a fixed text, namely 'There are {climbing:toprope} toprope routes' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "service:climbing_shoes:rental", - "description": "Layer 'Climbing gyms' shows service:climbing_shoes:rental=yes & service:climbing_shoes:rental:fee=no with a fixed text, namely 'Climbing shoes can be borrowed for free here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:climbing_shoes:rental:fee", - "description": "Layer 'Climbing gyms' shows service:climbing_shoes:rental=yes & service:climbing_shoes:rental:fee=no with a fixed text, namely 'Climbing shoes can be borrowed for free here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "service:climbing_shoes:rental", - "description": "Layer 'Climbing gyms' shows service:climbing_shoes:rental=yes & service:climbing_shoes:rental:charge~.+ with a fixed text, namely 'Climbing shoes can be rented here for {service:climbing_shoes:rental:charge}' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:climbing_shoes:rental:charge", - "description": "Layer 'Climbing gyms' shows service:climbing_shoes:rental=yes & service:climbing_shoes:rental:charge~.+ with a fixed text, namely 'Climbing shoes can be rented here for {service:climbing_shoes:rental:charge}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "service:climbing_shoes:rental", - "description": "Layer 'Climbing gyms' shows service:climbing_shoes:rental=yes & service:climbing_shoes:rental:fee=yes with a fixed text, namely 'Climbing shoes can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:climbing_shoes:rental:fee", - "description": "Layer 'Climbing gyms' shows service:climbing_shoes:rental=yes & service:climbing_shoes:rental:fee=yes with a fixed text, namely 'Climbing shoes can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:climbing_shoes:rental", - "description": "Layer 'Climbing gyms' shows service:climbing_shoes:rental=no with a fixed text, namely 'Climbing shoes can not be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "service:climbing_harness:rental", - "description": "Layer 'Climbing gyms' shows service:climbing_harness:rental=yes & service:climbing_harness:rental:fee=no with a fixed text, namely 'A climbing harness can be borrowed for free here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing:sport!=no | climbing:toprope!=no)", - "value": "yes" - }, - { - "key": "service:climbing_harness:rental:fee", - "description": "Layer 'Climbing gyms' shows service:climbing_harness:rental=yes & service:climbing_harness:rental:fee=no with a fixed text, namely 'A climbing harness can be borrowed for free here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing:sport!=no | climbing:toprope!=no)", - "value": "no" - }, - { - "key": "service:climbing_harness:rental", - "description": "Layer 'Climbing gyms' shows service:climbing_harness:rental=yes & service:climbing_harness:rental:charge~.+ with a fixed text, namely 'A climbing harness can be rented here for {service:climbing_harness:rental:charge}' (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing:sport!=no | climbing:toprope!=no)", - "value": "yes" - }, - { - "key": "service:climbing_harness:rental:charge", - "description": "Layer 'Climbing gyms' shows service:climbing_harness:rental=yes & service:climbing_harness:rental:charge~.+ with a fixed text, namely 'A climbing harness can be rented here for {service:climbing_harness:rental:charge}' (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing:sport!=no | climbing:toprope!=no)" - }, - { - "key": "service:climbing_harness:rental", - "description": "Layer 'Climbing gyms' shows service:climbing_harness:rental=yes with a fixed text, namely 'A climbing harness can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing:sport!=no | climbing:toprope!=no)", - "value": "yes" - }, - { - "key": "service:climbing_harness:rental", - "description": "Layer 'Climbing gyms' shows service:climbing_harness:rental=no with a fixed text, namely 'A climbing harness can not be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing:sport!=no | climbing:toprope!=no)", - "value": "no" - }, - { - "key": "service:climbing_belay_device:provided_at_each_rope", - "description": "Layer 'Climbing gyms' shows service:climbing_belay_device:provided_at_each_rope=yes with a fixed text, namely 'Belay devices are provided at each rope' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing:sport!=no | climbing:toprope!=no)", - "value": "yes" - }, - { - "key": "service:climbing_belay_device:rental", - "description": "Layer 'Climbing gyms' shows service:climbing_belay_device:rental=yes & service:climbing_belay_device:rental:fee=no with a fixed text, namely 'A belay device can be borrowed for free here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing:sport!=no | climbing:toprope!=no)", - "value": "yes" - }, - { - "key": "service:climbing_belay_device:rental:fee", - "description": "Layer 'Climbing gyms' shows service:climbing_belay_device:rental=yes & service:climbing_belay_device:rental:fee=no with a fixed text, namely 'A belay device can be borrowed for free here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing:sport!=no | climbing:toprope!=no)", - "value": "no" - }, - { - "key": "service:climbing_belay_device:rental", - "description": "Layer 'Climbing gyms' shows service:climbing_belay_device:rental=yes & service:climbing_belay_device:rental:charge~.+ with a fixed text, namely 'A belay device can be rented here for {service:climbing_belay_device:rental:charge}' (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing:sport!=no | climbing:toprope!=no)", - "value": "yes" - }, - { - "key": "service:climbing_belay_device:rental:charge", - "description": "Layer 'Climbing gyms' shows service:climbing_belay_device:rental=yes & service:climbing_belay_device:rental:charge~.+ with a fixed text, namely 'A belay device can be rented here for {service:climbing_belay_device:rental:charge}' (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing:sport!=no | climbing:toprope!=no)" - }, - { - "key": "service:climbing_belay_device:rental", - "description": "Layer 'Climbing gyms' shows service:climbing_belay_device:rental=yes with a fixed text, namely 'A belay device can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing:sport!=no | climbing:toprope!=no)", - "value": "yes" - }, - { - "key": "service:climbing_belay_device:rental", - "description": "Layer 'Climbing gyms' shows service:climbing_belay_device:rental=no with a fixed text, namely 'A belay device can not be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing:sport!=no | climbing:toprope!=no)", - "value": "no" - }, - { - "key": "service:climbing_rope:rental", - "description": "Layer 'Climbing gyms' shows service:climbing_rope:rental=yes & service:climbing_rope:rental:fee=no with a fixed text, namely 'A climbing rope can be borrowed for free here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing:sport!=no)", - "value": "yes" - }, - { - "key": "service:climbing_rope:rental:fee", - "description": "Layer 'Climbing gyms' shows service:climbing_rope:rental=yes & service:climbing_rope:rental:fee=no with a fixed text, namely 'A climbing rope can be borrowed for free here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing:sport!=no)", - "value": "no" - }, - { - "key": "service:climbing_rope:rental", - "description": "Layer 'Climbing gyms' shows service:climbing_rope:rental=yes & service:climbing_rope:rental:charge~.+ with a fixed text, namely 'A climbing rope can be rented here for {service:climbing_rope:rental:charge}' (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing:sport!=no)", - "value": "yes" - }, - { - "key": "service:climbing_rope:rental:charge", - "description": "Layer 'Climbing gyms' shows service:climbing_rope:rental=yes & service:climbing_rope:rental:charge~.+ with a fixed text, namely 'A climbing rope can be rented here for {service:climbing_rope:rental:charge}' (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing:sport!=no)" - }, - { - "key": "service:climbing_rope:rental", - "description": "Layer 'Climbing gyms' shows service:climbing_rope:rental=yes with a fixed text, namely 'A climbing rope can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing:sport!=no)", - "value": "yes" - }, - { - "key": "service:climbing_rope:rental", - "description": "Layer 'Climbing gyms' shows service:climbing_rope:rental=no with a fixed text, namely 'A climbing rope can not be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing:sport!=no)", - "value": "no" - }, - { - "key": "climbing:length", - "description": "Layer 'Climbing gyms' shows and asks freeform values for key 'climbing:length' (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing:sport!=no | climbing:toprope!=no)" - }, - { - "key": "climbing:grade:french:min", - "description": "Layer 'Climbing gyms' shows and asks freeform values for key 'climbing:grade:french:min' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "climbing:grade:french:max", - "description": "Layer 'Climbing gyms' shows and asks freeform values for key 'climbing:grade:french:max' (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing!~^(route)$ & office= & club= & (climbing:sport=yes | sport=climbing))" - }, - { - "key": "climbing:bolts:max", - "description": "Layer 'Climbing gyms' shows and asks freeform values for key 'climbing:bolts:max' (in the mapcomplete.org theme 'Personal theme') (This is only shown if climbing:sport!=no)" - }, - { - "key": "climbing:speed", - "description": "Layer 'Climbing gyms' shows climbing:speed=yes with a fixed text, namely 'There is a speed climbing wall' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "climbing:speed", - "description": "Layer 'Climbing gyms' shows climbing:speed=no with a fixed text, namely 'There is no speed climbing wall' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "climbing:speed", - "description": "Layer 'Climbing gyms' shows climbing:speed~.+ with a fixed text, namely 'There are {climbing:speed} speed climbing walls' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "shower", - "description": "Layer 'Climbing gyms' shows shower=hot with a fixed text, namely 'This facility does have showers with warm water' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "hot" - }, - { - "key": "shower", - "description": "Layer 'Climbing gyms' shows shower=cold with a fixed text, namely 'This facility does have showers, but the water is not heated' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "cold" - }, - { - "key": "shower", - "description": "Layer 'Climbing gyms' shows shower=yes with a fixed text, namely 'This facility does have showers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "shower", - "description": "Layer 'Climbing gyms' shows shower=no with a fixed text, namely 'This facility does not offer a shower' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "internet_access", - "description": "Layer 'Climbing gyms' shows internet_access=wlan with a fixed text, namely 'This place offers wireless internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wlan" - }, - { - "key": "internet_access", - "description": "Layer 'Climbing gyms' shows internet_access=no with a fixed text, namely 'This place does not offer internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "internet_access", - "description": "Layer 'Climbing gyms' shows internet_access=yes with a fixed text, namely 'This place offers internet access' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "internet_access", - "description": "Layer 'Climbing gyms' shows internet_access=terminal with a fixed text, namely 'This place offers internet access via a terminal or computer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "terminal" - }, - { - "key": "internet_access", - "description": "Layer 'Climbing gyms' shows internet_access=wired with a fixed text, namely 'This place offers wired internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wired" - }, - { - "key": "internet_access", - "description": "Layer 'Climbing gyms' shows internet_access=terminal;wifi with a fixed text, namely 'This place offers both wireless internet and internet access via a terminal or computer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "terminal;wifi" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Climbing gyms' shows internet_access:fee=yes with a fixed text, namely 'There is a fee for the internet access at this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "yes" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Climbing gyms' shows internet_access:fee=no with a fixed text, namely 'Internet access is free at this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "no" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Climbing gyms' shows internet_access:fee=customers with a fixed text, namely 'Internet access is free at this place, for customers only' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "customers" - }, - { - "key": "internet_access:ssid", - "description": "Layer 'Climbing gyms' shows and asks freeform values for key 'internet_access:ssid' (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access~^(.*wlan.*)$)" - }, - { - "key": "internet_access:ssid", - "description": "Layer 'Climbing gyms' shows internet_access:ssid=Telekom with a fixed text, namely 'Telekom' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access~^(.*wlan.*)$)", - "value": "Telekom" - }, - { - "key": "leisure", - "description": "The MapComplete theme Personal theme has a layer Climbing opportunities? showing features with this tag", - "value": "sports_centre" - }, - { - "key": "barrier", - "description": "The MapComplete theme Personal theme has a layer Climbing opportunities? showing features with this tag", - "value": "wall" - }, - { - "key": "barrier", - "description": "The MapComplete theme Personal theme has a layer Climbing opportunities? showing features with this tag", - "value": "retaining_wall" - }, - { - "key": "natural", - "description": "The MapComplete theme Personal theme has a layer Climbing opportunities? showing features with this tag", - "value": "cliff" - }, - { - "key": "natural", - "description": "The MapComplete theme Personal theme has a layer Climbing opportunities? showing features with this tag", - "value": "rock" - }, - { - "key": "natural", - "description": "The MapComplete theme Personal theme has a layer Climbing opportunities? showing features with this tag", - "value": "stone" - }, - { - "key": "climbing", - "description": "The MapComplete theme Personal theme has a layer Climbing opportunities? showing features with this tag", - "value": "" - }, - { - "key": "id", - "description": "Layer 'Climbing opportunities?' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "sport", - "description": "Layer 'Climbing opportunities?' shows sport=climbing with a fixed text, namely 'Climbing is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "climbing" - }, - { - "key": "climbing", - "description": "Layer 'Climbing opportunities?' shows climbing=no with a fixed text, namely 'Climbing is not possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "climbing", - "description": "The MapComplete theme Personal theme has a layer Climbing routes showing features with this tag", - "value": "route" - }, - { - "key": "id", - "description": "Layer 'Climbing routes' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Climbing routes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Climbing routes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Climbing routes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Climbing routes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Climbing routes' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "noname", - "description": "Layer 'Climbing routes' shows noname=yes & name= with a fixed text, namely 'This climbing route doesn't have a name' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "name", - "description": "Layer 'Climbing routes' shows noname=yes & name= with a fixed text, namely 'This climbing route doesn't have a name' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key name.", - "value": "" - }, - { - "key": "climbing:length", - "description": "Layer 'Climbing routes' shows and asks freeform values for key 'climbing:length' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "climbing:grade:french", - "description": "Layer 'Climbing routes' shows and asks freeform values for key 'climbing:grade:french' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "climbing:bolts", - "description": "Layer 'Climbing routes' shows and asks freeform values for key 'climbing:bolts' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "climbing:bolted", - "description": "Layer 'Climbing routes' shows climbing:bolted=no with a fixed text, namely 'This route is not bolted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "description", - "description": "Layer 'Climbing routes' shows and asks freeform values for key 'description' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Clocks showing features with this tag", - "value": "clock" - }, - { - "key": "id", - "description": "Layer 'Clocks' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Clocks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Clocks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Clocks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Clocks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "support", - "description": "Layer 'Clocks' shows support=pole with a fixed text, namely 'This clock is mounted on a pole' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "pole" - }, - { - "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 'Personal theme')", - "value": "wall_mounted" - }, - { - "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 'Personal theme')", - "value": "billboard" - }, - { - "key": "support", - "description": "Layer 'Clocks' shows support=ground with a fixed text, namely 'This clock is on the ground' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "ground" - }, - { - "key": "display", - "description": "Layer 'Clocks' shows display=analog with a fixed text, namely 'This clock displays the time with hands' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "analog" - }, - { - "key": "display", - "description": "Layer 'Clocks' shows display=digital with a fixed text, namely 'This clock displays the time with digits' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "digital" - }, - { - "key": "display", - "description": "Layer 'Clocks' shows display=sundial with a fixed text, namely 'This clock displays the time with a sundial' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sundial" - }, - { - "key": "display", - "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 'Personal theme')", - "value": "unorthodox" - }, - { - "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 'Personal theme')", - "value": "house" - }, - { - "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 'Personal theme')", - "value": "street" - }, - { - "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 'Personal theme')", - "value": "area" - }, - { - "key": "date", - "description": "Layer 'Clocks' shows date=yes with a fixed text, namely 'This clock also displays the date' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "date", - "description": "Layer 'Clocks' shows date=no with a fixed text, namely 'This clock does not display the date' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "date", - "description": "Layer 'Clocks' shows date= with a fixed text, namely 'This clock does probably not display the date' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key date.", - "value": "" - }, - { - "key": "thermometer", - "description": "Layer 'Clocks' shows thermometer=yes with a fixed text, namely 'This clock also displays the temperature' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "thermometer", - "description": "Layer 'Clocks' shows thermometer=no with a fixed text, namely 'This clock does not display the temperature' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "thermometer", - "description": "Layer 'Clocks' shows thermometer= with a fixed text, namely 'This clock does probably not display the temperature' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key thermometer.", - "value": "" - }, - { - "key": "barometer", - "description": "Layer 'Clocks' shows barometer=yes with a fixed text, namely 'This clock also displays the air pressure' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "barometer", - "description": "Layer 'Clocks' shows barometer=no with a fixed text, namely 'This clock does not display the air pressure' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "barometer", - "description": "Layer 'Clocks' shows barometer= with a fixed text, namely 'This clock does probably not display the air pressure' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key barometer.", - "value": "" - }, - { - "key": "hygrometer", - "description": "Layer 'Clocks' shows hygrometer=yes with a fixed text, namely 'This clock also displays the humidity' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "hygrometer", - "description": "Layer 'Clocks' shows hygrometer=no with a fixed text, namely 'This clock does not display the humidity' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "hygrometer", - "description": "Layer 'Clocks' shows hygrometer= with a fixed text, namely 'This clock does probably not display the humidity' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key hygrometer.", - "value": "" - }, - { - "key": "faces", - "description": "Layer 'Clocks' shows and asks freeform values for key 'faces' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "faces", - "description": "Layer 'Clocks' shows faces=1 with a fixed text, namely 'This clock has one face' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "faces", - "description": "Layer 'Clocks' shows faces=2 with a fixed text, namely 'This clock has two faces' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "2" - }, - { - "key": "faces", - "description": "Layer 'Clocks' shows faces=4 with a fixed text, namely 'This clock has four faces' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "4" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Crossings showing features with this tag", - "value": "traffic_signals" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Crossings showing features with this tag", - "value": "crossing" - }, - { - "key": "id", - "description": "Layer 'Crossings' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Crossings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Crossings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Crossings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Crossings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "crossing", - "description": "Layer 'Crossings' shows crossing=uncontrolled with a fixed text, namely 'Crossing, without traffic lights' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway=crossing)", - "value": "uncontrolled" - }, - { - "key": "crossing", - "description": "Layer 'Crossings' shows crossing=traffic_signals with a fixed text, namely 'Crossing with traffic signals' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway=crossing)", - "value": "traffic_signals" - }, - { - "key": "crossing", - "description": "Layer 'Crossings' shows crossing=zebra with a fixed text, namely 'Zebra crossing' (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway=crossing)", - "value": "zebra" - }, - { - "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 'Personal theme') (This is only shown if highway=crossing)", - "value": "unmarked" - }, - { - "key": "crossing_ref", - "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 'Personal theme') (This is only shown if crossing=uncontrolled)", - "value": "zebra" - }, - { - "key": "crossing_ref", - "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 'Personal theme') Picking this answer will delete the key crossing_ref. (This is only shown if crossing=uncontrolled)", - "value": "" - }, - { - "key": "bicycle", - "description": "Layer 'Crossings' shows bicycle=yes with a fixed text, namely 'A cyclist can use this crossing' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway=crossing)", - "value": "yes" - }, - { - "key": "bicycle", - "description": "Layer 'Crossings' shows bicycle=no with a fixed text, namely 'A cyclist can not use this crossing' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway=crossing)", - "value": "no" - }, - { - "key": "crossing:island", - "description": "Layer 'Crossings' shows crossing:island=yes with a fixed text, namely 'This crossing has an island in the middle' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway=crossing)", - "value": "yes" - }, - { - "key": "crossing:island", - "description": "Layer 'Crossings' shows crossing:island=no with a fixed text, namely 'This crossing does not have an island in the middle' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway=crossing)", - "value": "no" - }, - { - "key": "tactile_paving", - "description": "Layer 'Crossings' shows tactile_paving=yes with a fixed text, namely 'This crossing has tactile paving' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway=crossing)", - "value": "yes" - }, - { - "key": "tactile_paving", - "description": "Layer 'Crossings' shows tactile_paving=no with a fixed text, namely 'This crossing does not have tactile paving' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway=crossing)", - "value": "no" - }, - { - "key": "tactile_paving", - "description": "Layer 'Crossings' shows tactile_paving=incorrect with a fixed text, namely 'This crossing has tactile paving, but is not correct' (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway=crossing)", - "value": "incorrect" - }, - { - "key": "button_operated", - "description": "Layer 'Crossings' shows button_operated=yes with a fixed text, namely 'This traffic light has a button to request green light' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway=traffic_signals | crossing=traffic_signals)", - "value": "yes" - }, - { - "key": "button_operated", - "description": "Layer 'Crossings' shows button_operated=no with a fixed text, namely 'This traffic light does not have a button to request green light' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway=traffic_signals | crossing=traffic_signals)", - "value": "no" - }, - { - "key": "traffic_signals:sound", - "description": "Layer 'Crossings' shows traffic_signals:sound=yes with a fixed text, namely 'This traffic light has sound signals to help crossing, both for finding the crossing and for crossing.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if crossing=traffic_signals)", - "value": "yes" - }, - { - "key": "traffic_signals:sound", - "description": "Layer 'Crossings' shows traffic_signals:sound=no with a fixed text, namely 'This traffic light does not have sound signals to help crossing.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if crossing=traffic_signals)", - "value": "no" - }, - { - "key": "traffic_signals:sound", - "description": "Layer 'Crossings' shows traffic_signals:sound=locate with a fixed text, namely 'This traffic light has a sound signal to help locate the pole, but no signal to sign that it is safe to cross.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if crossing=traffic_signals)", - "value": "locate" - }, - { - "key": "traffic_signals:sound", - "description": "Layer 'Crossings' shows traffic_signals:sound=walk with a fixed text, namely 'This traffic light has a sound signal to sign that it is safe to cross, but no signal to help locate the pole.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if crossing=traffic_signals)", - "value": "walk" - }, - { - "key": "traffic_signals:vibration", - "description": "Layer 'Crossings' shows traffic_signals:vibration=yes with a fixed text, namely 'The button for this traffic light has a vibration signal to indicate that it is safe to cross.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if crossing=traffic_signals & button_operated=yes)", - "value": "yes" - }, - { - "key": "traffic_signals:vibration", - "description": "Layer 'Crossings' shows traffic_signals:vibration=no with a fixed text, namely 'The button for this traffic light does not have a vibration signal to indicate that it is safe to cross.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if crossing=traffic_signals & button_operated=yes)", - "value": "no" - }, - { - "key": "traffic_signals:arrow", - "description": "Layer 'Crossings' shows traffic_signals:arrow=yes with a fixed text, namely 'This traffic light has an arrow pointing in the direction of crossing.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if crossing=traffic_signals)", - "value": "yes" - }, - { - "key": "traffic_signals:arrow", - "description": "Layer 'Crossings' shows traffic_signals:arrow=no with a fixed text, namely 'This traffic light does not have an arrow pointing in the direction of crossing.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if crossing=traffic_signals)", - "value": "no" - }, - { - "key": "traffic_signals:minimap", - "description": "Layer 'Crossings' shows traffic_signals:minimap=yes with a fixed text, namely 'This traffic light has a tactile map showing the layout of the crossing.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if crossing=traffic_signals)", - "value": "yes" - }, - { - "key": "traffic_signals:minimap", - "description": "Layer 'Crossings' shows traffic_signals:minimap=no with a fixed text, namely 'This traffic light does not have a tactile map showing the layout of the crossing.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if crossing=traffic_signals)", - "value": "no" - }, - { - "key": "red_turn:right:bicycle", - "description": "Layer 'Crossings' shows red_turn:right:bicycle=yes with a fixed text, namely 'A cyclist can turn right if the light is red' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway=traffic_signals)", - "value": "yes" - }, - { - "key": "red_turn:right:bicycle", - "description": "Layer 'Crossings' shows red_turn:right:bicycle=yes with a fixed text, namely 'A cyclist can turn right if the light is red' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway=traffic_signals)", - "value": "yes" - }, - { - "key": "red_turn:right:bicycle", - "description": "Layer 'Crossings' shows red_turn:right:bicycle=no with a fixed text, namely 'A cyclist can not turn right if the light is red' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway=traffic_signals)", - "value": "no" - }, - { - "key": "red_turn:straight:bicycle", - "description": "Layer 'Crossings' shows red_turn:straight:bicycle=yes with a fixed text, namely 'A cyclist can go straight on if the light is red' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway=traffic_signals)", - "value": "yes" - }, - { - "key": "red_turn:straight:bicycle", - "description": "Layer 'Crossings' shows red_turn:straight:bicycle=yes with a fixed text, namely 'A cyclist can go straight on if the light is red' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway=traffic_signals)", - "value": "yes" - }, - { - "key": "red_turn:straight:bicycle", - "description": "Layer 'Crossings' shows red_turn:straight:bicycle=no with a fixed text, namely 'A cyclist can not go straight on if the light is red' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway=traffic_signals)", - "value": "no" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Cycleways and roads showing features with this tag", - "value": "cycleway" - }, - { - "key": "cycleway", - "description": "The MapComplete theme Personal theme has a layer Cycleways and roads showing features with this tag", - "value": "lane" - }, - { - "key": "cycleway", - "description": "The MapComplete theme Personal theme has a layer Cycleways and roads showing features with this tag", - "value": "shared_lane" - }, - { - "key": "cycleway", - "description": "The MapComplete theme Personal theme has a layer Cycleways and roads showing features with this tag", - "value": "track" - }, - { - "key": "cyclestreet", - "description": "The MapComplete theme Personal theme has a layer Cycleways and roads showing features with this tag", - "value": "yes" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Cycleways and roads showing features with this tag", - "value": "residential" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Cycleways and roads showing features with this tag", - "value": "tertiary" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Cycleways and roads showing features with this tag", - "value": "unclassified" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Cycleways and roads showing features with this tag", - "value": "primary" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Cycleways and roads showing features with this tag", - "value": "secondary" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Cycleways and roads showing features with this tag", - "value": "tertiary_link" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Cycleways and roads showing features with this tag", - "value": "primary_link" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Cycleways and roads showing features with this tag", - "value": "secondary_link" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Cycleways and roads showing features with this tag", - "value": "service" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Cycleways and roads showing features with this tag", - "value": "footway" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Cycleways and roads showing features with this tag", - "value": "pedestrian" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Cycleways and roads showing features with this tag", - "value": "living_street" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Cycleways and roads showing features with this tag", - "value": "path" - }, - { - "key": "bicycle", - "description": "The MapComplete theme Personal theme has a layer Cycleways and roads showing features with this tag", - "value": "designated" - }, - { - "key": "id", - "description": "Layer 'Cycleways and roads' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Cycleways and roads allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Cycleways and roads allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Cycleways and roads allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Cycleways and roads allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "cycleway", - "description": "Layer 'Cycleways and roads' shows cycleway=shared_lane with a fixed text, namely 'There is a shared lane' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway!=cycleway & highway!=path & highway!=footway & highway!=pedestrian)", - "value": "shared_lane" - }, - { - "key": "cycleway", - "description": "Layer 'Cycleways and roads' shows cycleway=lane with a fixed text, namely 'There is a lane next to the road (separated with paint)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway!=cycleway & highway!=path & highway!=footway & highway!=pedestrian)", - "value": "lane" - }, - { - "key": "cycleway", - "description": "Layer 'Cycleways and roads' shows cycleway=track with a fixed text, namely 'There is a track, but no cycleway drawn separately from this road on the map.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway!=cycleway & highway!=path & highway!=footway & highway!=pedestrian)", - "value": "track" - }, - { - "key": "cycleway", - "description": "Layer 'Cycleways and roads' shows cycleway=separate with a fixed text, namely 'There is a separately drawn cycleway' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway!=cycleway & highway!=path & highway!=footway & highway!=pedestrian)", - "value": "separate" - }, - { - "key": "cycleway", - "description": "Layer 'Cycleways and roads' shows cycleway=no with a fixed text, namely 'There is no cycleway' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway!=cycleway & highway!=path & highway!=footway & highway!=pedestrian)", - "value": "no" - }, - { - "key": "cycleway", - "description": "Layer 'Cycleways and roads' shows cycleway=no with a fixed text, namely 'There is no cycleway' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway!=cycleway & highway!=path & highway!=footway & highway!=pedestrian)", - "value": "no" - }, - { - "key": "lit", - "description": "Layer 'Cycleways and roads' shows lit=yes with a fixed text, namely 'This street is lit' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "lit", - "description": "Layer 'Cycleways and roads' shows lit=no with a fixed text, namely 'This road is not lit' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "lit", - "description": "Layer 'Cycleways and roads' shows lit=sunset-sunrise with a fixed text, namely 'This road is lit at night' (in the mapcomplete.org theme 'Personal theme')", - "value": "sunset-sunrise" - }, - { - "key": "lit", - "description": "Layer 'Cycleways and roads' shows lit=24/7 with a fixed text, namely 'This road is lit 24/7' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "24/7" - }, - { - "key": "cyclestreet", - "description": "Layer 'Cycleways and roads' shows cyclestreet=yes with a fixed text, namely 'This is a cyclestreet, and a 30km/h zone.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway!=cycleway & highway!=path & highway!=footway)", - "value": "yes" - }, - { - "key": "cyclestreet", - "description": "Layer 'Cycleways and roads' shows cyclestreet=yes with a fixed text, namely 'This is a cyclestreet' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway!=cycleway & highway!=path & highway!=footway)", - "value": "yes" - }, - { - "key": "cyclestreet", - "description": "Layer 'Cycleways and roads' shows cyclestreet= with a fixed text, namely 'This is not a cyclestreet.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key cyclestreet. (This is only shown if highway!=cycleway & highway!=path & highway!=footway)", - "value": "" - }, - { - "key": "maxspeed", - "description": "Layer 'Cycleways and roads' shows and asks freeform values for key 'maxspeed' (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway!=cycleway & highway!=path & highway!=footway & highway!=pedestrian)" - }, - { - "key": "maxspeed", - "description": "Layer 'Cycleways and roads' shows maxspeed=20 with a fixed text, namely 'The maximum speed is 20 km/h' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway!=cycleway & highway!=path & highway!=footway & highway!=pedestrian)", - "value": "20" - }, - { - "key": "maxspeed", - "description": "Layer 'Cycleways and roads' shows maxspeed=30 with a fixed text, namely 'The maximum speed is 30 km/h' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway!=cycleway & highway!=path & highway!=footway & highway!=pedestrian)", - "value": "30" - }, - { - "key": "maxspeed", - "description": "Layer 'Cycleways and roads' shows maxspeed=50 with a fixed text, namely 'The maximum speed is 50 km/h' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway!=cycleway & highway!=path & highway!=footway & highway!=pedestrian)", - "value": "50" - }, - { - "key": "maxspeed", - "description": "Layer 'Cycleways and roads' shows maxspeed=70 with a fixed text, namely 'The maximum speed is 70 km/h' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway!=cycleway & highway!=path & highway!=footway & highway!=pedestrian)", - "value": "70" - }, - { - "key": "maxspeed", - "description": "Layer 'Cycleways and roads' shows maxspeed=90 with a fixed text, namely 'The maximum speed is 90 km/h' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway!=cycleway & highway!=path & highway!=footway & highway!=pedestrian)", - "value": "90" - }, - { - "key": "cycleway:surface", - "description": "Layer 'Cycleways and roads' shows and asks freeform values for key 'cycleway:surface' (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=shared_lane | cycleway=lane | cycleway=track)" - }, - { - "key": "cycleway:surface", - "description": "Layer 'Cycleways and roads' shows cycleway:surface=unpaved with a fixed text, namely 'This cycleway is unpaved' (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=shared_lane | cycleway=lane | cycleway=track)", - "value": "unpaved" - }, - { - "key": "cycleway:surface", - "description": "Layer 'Cycleways and roads' shows cycleway:surface=paved with a fixed text, namely 'This cycleway is paved' (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=shared_lane | cycleway=lane | cycleway=track)", - "value": "paved" - }, - { - "key": "cycleway:surface", - "description": "Layer 'Cycleways and roads' shows cycleway:surface=asphalt with a fixed text, namely 'This cycleway is made of asphalt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=shared_lane | cycleway=lane | cycleway=track)", - "value": "asphalt" - }, - { - "key": "cycleway:surface", - "description": "Layer 'Cycleways and roads' shows cycleway:surface=paving_stones with a fixed text, namely 'This cycleway is made of smooth paving stones' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=shared_lane | cycleway=lane | cycleway=track)", - "value": "paving_stones" - }, - { - "key": "cycleway:surface", - "description": "Layer 'Cycleways and roads' shows cycleway:surface=concrete with a fixed text, namely 'This cycleway is made of concrete' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=shared_lane | cycleway=lane | cycleway=track)", - "value": "concrete" - }, - { - "key": "cycleway:surface", - "description": "Layer 'Cycleways and roads' shows cycleway:surface=cobblestone with a fixed text, namely 'This cycleway is made of cobblestone (unhewn or sett)' (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=shared_lane | cycleway=lane | cycleway=track)", - "value": "cobblestone" - }, - { - "key": "cycleway:surface", - "description": "Layer 'Cycleways and roads' shows cycleway:surface=unhewn_cobblestone with a fixed text, namely 'This cycleway is made of raw, natural cobblestone' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=shared_lane | cycleway=lane | cycleway=track)", - "value": "unhewn_cobblestone" - }, - { - "key": "cycleway:surface", - "description": "Layer 'Cycleways and roads' shows cycleway:surface=sett with a fixed text, namely 'This cycleway is made of flat, square cobblestone' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=shared_lane | cycleway=lane | cycleway=track)", - "value": "sett" - }, - { - "key": "cycleway:surface", - "description": "Layer 'Cycleways and roads' shows cycleway:surface=wood with a fixed text, namely 'This cycleway is made of wood' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=shared_lane | cycleway=lane | cycleway=track)", - "value": "wood" - }, - { - "key": "cycleway:surface", - "description": "Layer 'Cycleways and roads' shows cycleway:surface=gravel with a fixed text, namely 'This cycleway is made of gravel' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=shared_lane | cycleway=lane | cycleway=track)", - "value": "gravel" - }, - { - "key": "cycleway:surface", - "description": "Layer 'Cycleways and roads' shows cycleway:surface=fine_gravel with a fixed text, namely 'This cycleway is made of fine gravel' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=shared_lane | cycleway=lane | cycleway=track)", - "value": "fine_gravel" - }, - { - "key": "cycleway:surface", - "description": "Layer 'Cycleways and roads' shows cycleway:surface=pebblestone with a fixed text, namely 'This cycleway is made of pebblestone' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=shared_lane | cycleway=lane | cycleway=track)", - "value": "pebblestone" - }, - { - "key": "cycleway:surface", - "description": "Layer 'Cycleways and roads' shows cycleway:surface=ground with a fixed text, namely 'This cycleway is made from raw ground' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=shared_lane | cycleway=lane | cycleway=track)", - "value": "ground" - }, - { - "key": "incline", - "description": "Layer 'Cycleways and roads' shows and asks freeform values for key 'incline' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "incline", - "description": "Layer 'Cycleways and roads' shows incline= with a fixed text, namely 'There is (probably) no incline here' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key incline.", - "value": "" - }, - { - "key": "incline", - "description": "Layer 'Cycleways and roads' shows incline=up | incline=down | incline=yes with a fixed text, namely 'This road has a slope' (in the mapcomplete.org theme 'Personal theme')", - "value": "up" - }, - { - "key": "incline", - "description": "Layer 'Cycleways and roads' shows incline=up | incline=down | incline=yes with a fixed text, namely 'This road has a slope' (in the mapcomplete.org theme 'Personal theme')", - "value": "down" - }, - { - "key": "incline", - "description": "Layer 'Cycleways and roads' shows incline=up | incline=down | incline=yes with a fixed text, namely 'This road has a slope' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "cycleway:smoothness", - "description": "Layer 'Cycleways and roads' shows cycleway:smoothness=excellent with a fixed text, namely 'Usable for thin rollers: rollerblade, skateboard' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=shared_lane | cycleway=lane | cycleway=track)", - "value": "excellent" - }, - { - "key": "cycleway:smoothness", - "description": "Layer 'Cycleways and roads' shows cycleway:smoothness=good with a fixed text, namely 'Usable for thin wheels: racing bike' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=shared_lane | cycleway=lane | cycleway=track)", - "value": "good" - }, - { - "key": "cycleway:smoothness", - "description": "Layer 'Cycleways and roads' shows cycleway:smoothness=intermediate with a fixed text, namely 'Usable for normal wheels: city bike, wheelchair, scooter' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=shared_lane | cycleway=lane | cycleway=track)", - "value": "intermediate" - }, - { - "key": "cycleway:smoothness", - "description": "Layer 'Cycleways and roads' shows cycleway:smoothness=bad with a fixed text, namely 'Usable for robust wheels: trekking bike, car, rickshaw' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=shared_lane | cycleway=lane | cycleway=track)", - "value": "bad" - }, - { - "key": "cycleway:smoothness", - "description": "Layer 'Cycleways and roads' shows cycleway:smoothness=very_bad with a fixed text, namely 'Usable for vehicles with high clearance: light duty off-road vehicle' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=shared_lane | cycleway=lane | cycleway=track)", - "value": "very_bad" - }, - { - "key": "cycleway:smoothness", - "description": "Layer 'Cycleways and roads' shows cycleway:smoothness=horrible with a fixed text, namely 'Usable for off-road vehicles: heavy duty off-road vehicle' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=shared_lane | cycleway=lane | cycleway=track)", - "value": "horrible" - }, - { - "key": "cycleway:smoothness", - "description": "Layer 'Cycleways and roads' shows cycleway:smoothness=very_horrible with a fixed text, namely 'Usable for specialized off-road vehicles: tractor, ATV' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=shared_lane | cycleway=lane | cycleway=track)", - "value": "very_horrible" - }, - { - "key": "cycleway:smoothness", - "description": "Layer 'Cycleways and roads' shows cycleway:smoothness=impassable with a fixed text, namely 'Impassable / No wheeled vehicle' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=shared_lane | cycleway=lane | cycleway=track)", - "value": "impassable" - }, - { - "key": "surface", - "description": "Layer 'Cycleways and roads' shows and asks freeform values for key 'surface' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "surface", - "description": "Layer 'Cycleways and roads' shows surface=unpaved with a fixed text, namely 'This cycleway is unhardened' (in the mapcomplete.org theme 'Personal theme')", - "value": "unpaved" - }, - { - "key": "surface", - "description": "Layer 'Cycleways and roads' shows surface=paved with a fixed text, namely 'This cycleway is paved' (in the mapcomplete.org theme 'Personal theme')", - "value": "paved" - }, - { - "key": "surface", - "description": "Layer 'Cycleways and roads' shows surface=asphalt with a fixed text, namely 'This cycleway is made of asphalt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "asphalt" - }, - { - "key": "surface", - "description": "Layer 'Cycleways and roads' shows surface=paving_stones with a fixed text, namely 'This cycleway is made of smooth paving stones' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "paving_stones" - }, - { - "key": "surface", - "description": "Layer 'Cycleways and roads' shows surface=concrete with a fixed text, namely 'This cycleway is made of concrete' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "concrete" - }, - { - "key": "surface", - "description": "Layer 'Cycleways and roads' shows surface=cobblestone with a fixed text, namely 'This cycleway is made of cobblestone (unhewn or sett)' (in the mapcomplete.org theme 'Personal theme')", - "value": "cobblestone" - }, - { - "key": "surface", - "description": "Layer 'Cycleways and roads' shows surface=unhewn_cobblestone with a fixed text, namely 'This cycleway is made of raw, natural cobblestone' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "unhewn_cobblestone" - }, - { - "key": "surface", - "description": "Layer 'Cycleways and roads' shows surface=sett with a fixed text, namely 'This cycleway is made of flat, square cobblestone' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sett" - }, - { - "key": "surface", - "description": "Layer 'Cycleways and roads' shows surface=wood with a fixed text, namely 'This cycleway is made of wood' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wood" - }, - { - "key": "surface", - "description": "Layer 'Cycleways and roads' shows surface=gravel with a fixed text, namely 'This cycleway is made of gravel' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "gravel" - }, - { - "key": "surface", - "description": "Layer 'Cycleways and roads' shows surface=fine_gravel with a fixed text, namely 'This cycleway is made of fine gravel' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "fine_gravel" - }, - { - "key": "surface", - "description": "Layer 'Cycleways and roads' shows surface=pebblestone with a fixed text, namely 'This cycleway is made of pebblestone' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "pebblestone" - }, - { - "key": "surface", - "description": "Layer 'Cycleways and roads' shows surface=ground with a fixed text, namely 'This cycleway is made from raw ground' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "ground" - }, - { - "key": "smoothness", - "description": "Layer 'Cycleways and roads' shows smoothness=excellent with a fixed text, namely 'Usable for thin rollers: rollerblade, skateboard' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=no | highway=cycleway)", - "value": "excellent" - }, - { - "key": "smoothness", - "description": "Layer 'Cycleways and roads' shows smoothness=good with a fixed text, namely 'Usable for thin wheels: racing bike' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=no | highway=cycleway)", - "value": "good" - }, - { - "key": "smoothness", - "description": "Layer 'Cycleways and roads' shows smoothness=intermediate with a fixed text, namely 'Usable for normal wheels: city bike, wheelchair, scooter' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=no | highway=cycleway)", - "value": "intermediate" - }, - { - "key": "smoothness", - "description": "Layer 'Cycleways and roads' shows smoothness=bad with a fixed text, namely 'Usable for robust wheels: trekking bike, car, rickshaw' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=no | highway=cycleway)", - "value": "bad" - }, - { - "key": "smoothness", - "description": "Layer 'Cycleways and roads' shows smoothness=very_bad with a fixed text, namely 'Usable for vehicles with high clearance: light duty off-road vehicle' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=no | highway=cycleway)", - "value": "very_bad" - }, - { - "key": "smoothness", - "description": "Layer 'Cycleways and roads' shows smoothness=horrible with a fixed text, namely 'Usable for off-road vehicles: heavy duty off-road vehicle' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=no | highway=cycleway)", - "value": "horrible" - }, - { - "key": "smoothness", - "description": "Layer 'Cycleways and roads' shows smoothness=very_horrible with a fixed text, namely 'Usable for specialized off-road vehicles: tractor, ATV' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=no | highway=cycleway)", - "value": "very_horrible" - }, - { - "key": "smoothness", - "description": "Layer 'Cycleways and roads' shows smoothness=impassable with a fixed text, namely 'Impassable / No wheeled vehicle' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=no | highway=cycleway)", - "value": "impassable" - }, - { - "key": "width:carriageway", - "description": "Layer 'Cycleways and roads' shows and asks freeform values for key 'width:carriageway' (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway!=cycleway & highway!=path & highway!=footway)" - }, - { - "key": "cycleway:traffic_sign", - "description": "Layer 'Cycleways and roads' shows cycleway:traffic_sign=BE:D7 with a fixed text, namely 'Compulsory cycleway' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (cycleway=lane | cycleway=track) & (_country=be))", - "value": "BE:D7" - }, - { - "key": "cycleway:traffic_sign", - "description": "Layer 'Cycleways and roads' shows cycleway:traffic_sign~^(BE:D7;.*)$ with a fixed text, namely 'Compulsory cycleway (with supplementary sign)
' (in the mapcomplete.org theme 'Personal theme') (This is only shown if (cycleway=lane | cycleway=track) & (_country=be))" - }, - { - "key": "cycleway:traffic_sign", - "description": "Layer 'Cycleways and roads' shows cycleway:traffic_sign=BE:D9 with a fixed text, namely 'Segregated foot/cycleway' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (cycleway=lane | cycleway=track) & (_country=be))", - "value": "BE:D9" - }, - { - "key": "cycleway:traffic_sign", - "description": "Layer 'Cycleways and roads' shows cycleway:traffic_sign=BE:D10 with a fixed text, namely 'Unsegregated foot/cycleway' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (cycleway=lane | cycleway=track) & (_country=be))", - "value": "BE:D10" - }, - { - "key": "cycleway:traffic_sign", - "description": "Layer 'Cycleways and roads' shows cycleway:traffic_sign=none with a fixed text, namely 'No traffic sign present' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (cycleway=lane | cycleway=track) & (_country=be))", - "value": "none" - }, - { - "key": "traffic_sign", - "description": "Layer 'Cycleways and roads' shows traffic_sign=BE:D7 with a fixed text, namely 'Compulsory cycleway' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (highway=cycleway | highway=path) & (_country=be | _country=nl))", - "value": "BE:D7" - }, - { - "key": "traffic_sign", - "description": "Layer 'Cycleways and roads' shows traffic_sign~^(BE:D7;.*)$ with a fixed text, namely 'Compulsory cycleway (with supplementary sign)
' (in the mapcomplete.org theme 'Personal theme') (This is only shown if (highway=cycleway | highway=path) & (_country=be | _country=nl))" - }, - { - "key": "traffic_sign", - "description": "Layer 'Cycleways and roads' shows traffic_sign=BE:D9 with a fixed text, namely 'Segregated foot/cycleway' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (highway=cycleway | highway=path) & (_country=be | _country=nl))", - "value": "BE:D9" - }, - { - "key": "traffic_sign", - "description": "Layer 'Cycleways and roads' shows traffic_sign=BE:D10 with a fixed text, namely 'Unsegregated foot/cycleway' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (highway=cycleway | highway=path) & (_country=be | _country=nl))", - "value": "BE:D10" - }, - { - "key": "traffic_sign", - "description": "Layer 'Cycleways and roads' shows traffic_sign=NL:G11 with a fixed text, namely 'Compulsory cycleway' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (highway=cycleway | highway=path) & (_country=be | _country=nl))", - "value": "NL:G11" - }, - { - "key": "traffic_sign", - "description": "Layer 'Cycleways and roads' shows traffic_sign=NL:G12a with a fixed text, namely 'Compulsory (moped)cycleway' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (highway=cycleway | highway=path) & (_country=be | _country=nl))", - "value": "NL:G12a" - }, - { - "key": "traffic_sign", - "description": "Layer 'Cycleways and roads' shows traffic_sign=NL:G13 with a fixed text, namely 'Non-compulsory cycleway' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (highway=cycleway | highway=path) & (_country=be | _country=nl))", - "value": "NL:G13" - }, - { - "key": "traffic_sign", - "description": "Layer 'Cycleways and roads' shows traffic_sign=none with a fixed text, namely 'No traffic sign present' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (highway=cycleway | highway=path) & (_country=be | _country=nl))", - "value": "none" - }, - { - "key": "cycleway:traffic_sign", - "description": "Layer 'Cycleways and roads' shows cycleway:traffic_sign=BE:D7;BE:M6 with a fixed text, namely 'Mopeds must use the cycleway' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway:traffic_sign=BE:D7 | cycleway:traffic_sign~^(BE:D7;.*)$)", - "value": "BE:D7;BE:M6" - }, - { - "key": "cycleway:traffic_sign", - "description": "Layer 'Cycleways and roads' shows cycleway:traffic_sign=BE:D7;BE:M13 with a fixed text, namely 'Speedpedelecs must use the cycleway' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway:traffic_sign=BE:D7 | cycleway:traffic_sign~^(BE:D7;.*)$)", - "value": "BE:D7;BE:M13" - }, - { - "key": "cycleway:traffic_sign", - "description": "Layer 'Cycleways and roads' shows cycleway:traffic_sign=BE:D7;BE:M14 with a fixed text, namely 'Mopeds and speedpedelecs must use the cycleway' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway:traffic_sign=BE:D7 | cycleway:traffic_sign~^(BE:D7;.*)$)", - "value": "BE:D7;BE:M14" - }, - { - "key": "cycleway:traffic_sign", - "description": "Layer 'Cycleways and roads' shows cycleway:traffic_sign=BE:D7;BE:M7 with a fixed text, namely 'Mopeds are not allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway:traffic_sign=BE:D7 | cycleway:traffic_sign~^(BE:D7;.*)$)", - "value": "BE:D7;BE:M7" - }, - { - "key": "cycleway:traffic_sign", - "description": "Layer 'Cycleways and roads' shows cycleway:traffic_sign=BE:D7;BE:M15 with a fixed text, namely 'Speedpedelecs are not allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway:traffic_sign=BE:D7 | cycleway:traffic_sign~^(BE:D7;.*)$)", - "value": "BE:D7;BE:M15" - }, - { - "key": "cycleway:traffic_sign", - "description": "Layer 'Cycleways and roads' shows cycleway:traffic_sign=BE:D7;BE:M16 with a fixed text, namely 'Mopeds and speedpedelecs are not allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway:traffic_sign=BE:D7 | cycleway:traffic_sign~^(BE:D7;.*)$)", - "value": "BE:D7;BE:M16" - }, - { - "key": "cycleway:traffic_sign:supplementary", - "description": "Layer 'Cycleways and roads' shows cycleway:traffic_sign:supplementary=none with a fixed text, namely 'No supplementary traffic sign present' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway:traffic_sign=BE:D7 | cycleway:traffic_sign~^(BE:D7;.*)$)", - "value": "none" - }, - { - "key": "cycleway:buffer", - "description": "Layer 'Cycleways and roads' shows and asks freeform values for key 'cycleway:buffer' (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=track | cycleway=lane)" - }, - { - "key": "cycleway:separation", - "description": "Layer 'Cycleways and roads' shows cycleway:separation=dashed_line with a fixed text, namely 'This cycleway is separated by a dashed line' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=track | cycleway=lane)", - "value": "dashed_line" - }, - { - "key": "cycleway:separation", - "description": "Layer 'Cycleways and roads' shows cycleway:separation=solid_line with a fixed text, namely 'This cycleway is separated by a solid line' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=track | cycleway=lane)", - "value": "solid_line" - }, - { - "key": "cycleway:separation", - "description": "Layer 'Cycleways and roads' shows cycleway:separation=parking_lane with a fixed text, namely 'This cycleway is separated by a parking lane' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=track | cycleway=lane)", - "value": "parking_lane" - }, - { - "key": "cycleway:separation", - "description": "Layer 'Cycleways and roads' shows cycleway:separation=kerb with a fixed text, namely 'This cycleway is separated by a kerb' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cycleway=track | cycleway=lane)", - "value": "kerb" - }, - { - "key": "separation", - "description": "Layer 'Cycleways and roads' shows separation=dashed_line with a fixed text, namely 'This cycleway is separated by a dashed line' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway=cycleway | highway=path)", - "value": "dashed_line" - }, - { - "key": "separation", - "description": "Layer 'Cycleways and roads' shows separation=solid_line with a fixed text, namely 'This cycleway is separated by a solid line' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway=cycleway | highway=path)", - "value": "solid_line" - }, - { - "key": "separation", - "description": "Layer 'Cycleways and roads' shows separation=parking_lane with a fixed text, namely 'This cycleway is separated by a parking lane' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway=cycleway | highway=path)", - "value": "parking_lane" - }, - { - "key": "separation", - "description": "Layer 'Cycleways and roads' shows separation=kerb with a fixed text, namely 'This cycleway is separated by a kerb' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if highway=cycleway | highway=path)", - "value": "kerb" - }, - { - "key": "emergency", - "description": "The MapComplete theme Personal theme has a layer Defibrillators showing features with this tag", - "value": "defibrillator" - }, - { - "key": "id", - "description": "Layer 'Defibrillators' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Defibrillators allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Defibrillators allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Defibrillators allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Defibrillators allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "indoor", - "description": "Layer 'Defibrillators' shows indoor=yes with a fixed text, namely 'This defibrillator is located indoors' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "indoor", - "description": "Layer 'Defibrillators' shows indoor=no with a fixed text, namely 'This defibrillator is located outdoors' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "access", - "description": "Layer 'Defibrillators' shows and asks freeform values for key 'access' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "access", - "description": "Layer 'Defibrillators' shows access=yes with a fixed text, namely 'Publicly accessible' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "access", - "description": "Layer 'Defibrillators' shows access=public with a fixed text, namely 'Publicly accessible' (in the mapcomplete.org theme 'Personal theme')", - "value": "public" - }, - { - "key": "access", - "description": "Layer 'Defibrillators' shows access=customers with a fixed text, namely 'Only accessible to customers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "customers" - }, - { - "key": "access", - "description": "Layer 'Defibrillators' shows access=private with a fixed text, namely 'Not accessible to the general public (e.g. only accesible to staff, the owners, …)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "private" - }, - { - "key": "access", - "description": "Layer 'Defibrillators' shows access=no with a fixed text, namely 'Not accessible, possibly only for professional use' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "defibrillator", - "description": "Layer 'Defibrillators' shows defibrillator= with a fixed text, namely 'There is no info about the type of device' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key defibrillator. (This is only shown if access=no)", - "value": "" - }, - { - "key": "defibrillator", - "description": "Layer 'Defibrillators' shows defibrillator=manual with a fixed text, namely 'This is a manual defibrillator for professionals' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if access=no)", - "value": "manual" - }, - { - "key": "defibrillator", - "description": "Layer 'Defibrillators' shows defibrillator=automatic with a fixed text, namely 'This is a normal automatic defibrillator' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if access=no)", - "value": "automatic" - }, - { - "key": "defibrillator", - "description": "Layer 'Defibrillators' shows defibrillator~.+ with a fixed text, namely 'This is a special type of defibrillator: {defibrillator}' (in the mapcomplete.org theme 'Personal theme') (This is only shown if access=no)" - }, - { - "key": "level", - "description": "Layer 'Defibrillators' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if indoor=yes)" - }, - { - "key": "level", - "description": "Layer 'Defibrillators' shows level=0 with a fixed text, namely 'This defibrillator is on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if indoor=yes)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Defibrillators' shows level=1 with a fixed text, namely 'This defibrillator is on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if indoor=yes)", - "value": "1" - }, - { - "key": "defibrillator:location", - "description": "Layer 'Defibrillators' shows and asks freeform values for key 'defibrillator:location' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "defibrillator:location:en", - "description": "Layer 'Defibrillators' shows and asks freeform values for key 'defibrillator:location:en' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "defibrillator:location:fr", - "description": "Layer 'Defibrillators' shows and asks freeform values for key 'defibrillator:location:fr' (in the mapcomplete.org theme 'Personal theme') (This is only shown if _country=be | defibrillator:location:fr~.+)" - }, - { - "key": "wheelchair", - "description": "Layer 'Defibrillators' shows wheelchair=designated with a fixed text, namely 'This place is specially adapted for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "designated" - }, - { - "key": "wheelchair", - "description": "Layer 'Defibrillators' shows wheelchair=yes with a fixed text, namely 'This place is easily reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "wheelchair", - "description": "Layer 'Defibrillators' shows wheelchair=limited with a fixed text, namely 'It is possible to reach this place in a wheelchair, but it is not easy' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "wheelchair", - "description": "Layer 'Defibrillators' shows wheelchair=no with a fixed text, namely 'This place is not reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "ref", - "description": "Layer 'Defibrillators' shows and asks freeform values for key 'ref' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Defibrillators' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'Defibrillators' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Defibrillators' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Defibrillators' shows opening_hours=24/7 with a fixed text, namely '24/7 opened (including holidays)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "24/7" - }, - { - "key": "opening_hours", - "description": "Layer 'Defibrillators' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "description", - "description": "Layer 'Defibrillators' shows and asks freeform values for key 'description' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "survey:date", - "description": "Layer 'Defibrillators' shows and asks freeform values for key 'survey:date' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "survey:date", - "description": "Layer 'Defibrillators' shows survey:date= with a fixed text, namely 'Checked today!' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key survey:date.", - "value": "" - }, - { - "key": "fixme", - "description": "Layer 'Defibrillators' shows and asks freeform values for key 'fixme' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Dentist showing features with this tag", - "value": "dentist" - }, - { - "key": "id", - "description": "Layer 'Dentist' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Dentist allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Dentist allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Dentist allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Dentist allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "opening_hours", - "description": "Layer 'Dentist' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Dentist' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "phone", - "description": "Layer 'Dentist' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Dentist' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Dentist' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Dentist' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Dentist' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Dentist' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Dentist' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "name", - "description": "Layer 'Dentist' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "emergency", - "description": "The MapComplete theme Personal theme has a layer Disaster response organizations showing features with this tag", - "value": "disaster_response" - }, - { - "key": "id", - "description": "Layer 'Disaster response organizations' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Disaster response organizations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Disaster response organizations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Disaster response organizations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Disaster response organizations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "website", - "description": "Layer 'Disaster response organizations' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Disaster response organizations' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "name", - "description": "Layer 'Disaster response organizations' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Doctors showing features with this tag", - "value": "doctors" - }, - { - "key": "id", - "description": "Layer 'Doctors' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Doctors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Doctors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Doctors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Doctors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Doctors' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Doctors' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Doctors' shows opening_hours=\"by appointment\" with a fixed text, namely 'Only by appointment' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "\"by appointment\"" - }, - { - "key": "opening_hours", - "description": "Layer 'Doctors' shows opening_hours~^(\"by appointment\"|by appointment)$ with a fixed text, namely 'Only by appointment' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Doctors' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "phone", - "description": "Layer 'Doctors' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Doctors' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Doctors' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Doctors' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Doctors' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Doctors' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Doctors' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "healthcare:speciality", - "description": "Layer 'Doctors' shows and asks freeform values for key 'healthcare:speciality' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "healthcare:speciality", - "description": "Layer 'Doctors' shows healthcare:speciality=general with a fixed text, namely 'This is a general practitioner' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "general" - }, - { - "key": "healthcare:speciality", - "description": "Layer 'Doctors' shows healthcare:speciality=gynaecology with a fixed text, namely 'This is a gynaecologist' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "gynaecology" - }, - { - "key": "healthcare:speciality", - "description": "Layer 'Doctors' shows healthcare:speciality=psychiatry with a fixed text, namely 'This is a psychiatrist' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "psychiatry" - }, - { - "key": "healthcare:speciality", - "description": "Layer 'Doctors' shows healthcare:speciality=paediatrics with a fixed text, namely 'This is a paediatrician' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "paediatrics" - }, - { - "key": "leisure", - "description": "The MapComplete theme Personal theme has a layer dog parks showing features with this tag", - "value": "dog_park" - }, - { - "key": "leisure", - "description": "The MapComplete theme Personal theme has a layer dog parks showing features with this tag", - "value": "park" - }, - { - "key": "dog", - "description": "The MapComplete theme Personal theme has a layer dog parks showing features with this tag", - "value": "unleashed" - }, - { - "key": "id", - "description": "Layer 'dog parks' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'dog parks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'dog parks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'dog parks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'dog parks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'dog parks' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'dog parks' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'dog parks' shows opening_hours=24/7 with a fixed text, namely '24/7 opened (including holidays)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "24/7" - }, - { - "key": "opening_hours", - "description": "Layer 'dog parks' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "website", - "description": "Layer 'dog parks' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'dog parks' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "barrier", - "description": "Layer 'dog parks' shows barrier=fence with a fixed text, namely 'This dogpark is fenced all around' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "fence" - }, - { - "key": "barrier", - "description": "Layer 'dog parks' shows barrier=no with a fixed text, namely 'This dogpark is not fenced all around' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "small_dog", - "description": "Layer 'dog parks' shows small_dog=separate with a fixed text, namely 'Have separate area for puppies and small dogs' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "separate" - }, - { - "key": "small_dog", - "description": "Layer 'dog parks' shows small_dog=shared with a fixed text, namely 'Does not have a separate area for puppies and small dogs' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "shared" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Drinking water showing features with this tag", - "value": "drinking_water" - }, - { - "key": "drinking_water", - "description": "The MapComplete theme Personal theme has a layer Drinking water showing features with this tag", - "value": "yes" - }, - { - "key": "disused:amenity", - "description": "The MapComplete theme Personal theme has a layer Drinking water showing features with this tag", - "value": "drinking_water" - }, - { - "key": "id", - "description": "Layer 'Drinking water' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "operational_status", - "description": "Layer 'Drinking water' shows and asks freeform values for key 'operational_status' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operational_status", - "description": "Layer 'Drinking water' shows operational_status= & disused:amenity= with a fixed text, namely 'This drinking water works' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key operational_status.", - "value": "" - }, - { - "key": "disused:amenity", - "description": "Layer 'Drinking water' shows operational_status= & disused:amenity= with a fixed text, namely 'This drinking water works' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key disused:amenity.", - "value": "" - }, - { - "key": "operational_status", - "description": "Layer 'Drinking water' shows operational_status=broken with a fixed text, namely 'This drinking water is broken' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "broken" - }, - { - "key": "operational_status", - "description": "Layer 'Drinking water' shows operational_status=closed with a fixed text, namely 'This drinking water is closed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "disused:amenity", - "description": "Layer 'Drinking water' shows disused:amenity=drinking_water with a fixed text, namely 'This drinking water is permanently closed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "drinking_water" - }, - { - "key": "fountain", - "description": "Layer 'Drinking water' shows fountain=bubbler with a fixed text, namely 'This is a bubbler fountain. A water jet to drink from is sent upwards, typically controlled by a push button.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "bubbler" - }, - { - "key": "fountain", - "description": "Layer 'Drinking water' shows fountain=bottle_refill with a fixed text, namely 'This is a bottle refill point where the water is sent downwards, typically controlled by a push button or a motion sensor. Drinking directly from the stream might be very hard or impossible.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "bottle_refill" - }, - { - "key": "man_made", - "description": "Layer 'Drinking water' shows man_made=water_tap with a fixed text, namely 'This is a water tap. The water flows downward and the stream is controlled by a valve or push-button.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "water_tap" - }, - { - "key": "bottle", - "description": "Layer 'Drinking water' shows bottle=yes with a fixed text, namely 'It is easy to refill water bottles' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fountain!=bottle_refill)", - "value": "yes" - }, - { - "key": "bottle", - "description": "Layer 'Drinking water' shows bottle=no with a fixed text, namely 'Water bottles may not fit' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fountain!=bottle_refill)", - "value": "no" - }, - { - "key": "fee", - "description": "Layer 'Drinking water' shows fee=no with a fixed text, namely 'Free to use' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "fee", - "description": "Layer 'Drinking water' shows fee=yes with a fixed text, namely 'One needs to pay to use this drinking water point' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "seasonal", - "description": "Layer 'Drinking water' shows seasonal=no with a fixed text, namely 'Available all around the year' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "seasonal", - "description": "Layer 'Drinking water' shows seasonal=summer with a fixed text, namely 'Only available in summer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "summer" - }, - { - "key": "seasonal", - "description": "Layer 'Drinking water' shows seasonal=spring;summer;autumn with a fixed text, namely 'Closed during the winter' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "spring;summer;autumn" - }, - { - "key": "opening_hours", - "description": "Layer 'Drinking water' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "seasonal", - "description": "Layer 'Drinking water' shows seasonal!=no & seasonal~.+ & ((seasonal!~^(.*winter.*)$ & _now:date~^(....-(12|01|02)-..)$) | (seasonal!~^(.*spring.*)$ & _now:date~^(....-(03|04|05)-..)$) | (seasonal!~^(.*summer.*)$ & _now:date~^(....-(06|07|08)-..)$) | (seasonal!~^(.*autumn.*)$ & _now:date~^(....-(09|10|11)-..)$)) with a fixed text, namely 'This drinking water fountain is closed this season. As such, the opening hours are not shown.' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Drinking water' shows opening_hours=24/7 with a fixed text, namely '24/7 opened (including holidays)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "24/7" - }, - { - "key": "opening_hours", - "description": "Layer 'Drinking water' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "tourism", - "description": "Layer 'Drinking water' shows tourism=artwork with a fixed text, namely 'This drinking water point has an integrated artwork' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "artwork" - }, - { - "key": "not:tourism:artwork", - "description": "Layer 'Drinking water' shows not:tourism:artwork=yes with a fixed text, namely 'This drinking water point does not have an integrated artwork' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "tourism", - "description": "Layer 'Drinking water' shows tourism= with a fixed text, namely 'This drinking water point probably doesn't have an integrated artwork' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key tourism.", - "value": "" - }, - { - "key": "artwork_type", - "description": "Layer 'Drinking water' shows and asks freeform values for key 'artwork_type' (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)" - }, - { - "key": "artwork_type", - "description": "Layer 'Drinking water' shows artwork_type=architecture with a fixed text, namely 'Architecture' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "architecture" - }, - { - "key": "artwork_type", - "description": "Layer 'Drinking water' shows artwork_type=mural with a fixed text, namely 'Mural' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "mural" - }, - { - "key": "artwork_type", - "description": "Layer 'Drinking water' shows artwork_type=painting with a fixed text, namely 'Painting' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "painting" - }, - { - "key": "artwork_type", - "description": "Layer 'Drinking water' shows artwork_type=sculpture with a fixed text, namely 'Sculpture' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "sculpture" - }, - { - "key": "artwork_type", - "description": "Layer 'Drinking water' shows artwork_type=statue with a fixed text, namely 'Statue' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "statue" - }, - { - "key": "artwork_type", - "description": "Layer 'Drinking water' shows artwork_type=bust with a fixed text, namely 'Bust' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "bust" - }, - { - "key": "artwork_type", - "description": "Layer 'Drinking water' shows artwork_type=stone with a fixed text, namely 'Stone' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "stone" - }, - { - "key": "artwork_type", - "description": "Layer 'Drinking water' shows artwork_type=installation with a fixed text, namely 'Installation' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "installation" - }, - { - "key": "artwork_type", - "description": "Layer 'Drinking water' shows artwork_type=graffiti with a fixed text, namely 'Graffiti' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "graffiti" - }, - { - "key": "artwork_type", - "description": "Layer 'Drinking water' shows artwork_type=relief with a fixed text, namely 'Relief' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "relief" - }, - { - "key": "artwork_type", - "description": "Layer 'Drinking water' shows artwork_type=azulejo with a fixed text, namely 'Azulejo (Spanish decorative tilework)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "azulejo" - }, - { - "key": "artwork_type", - "description": "Layer 'Drinking water' shows artwork_type=tilework with a fixed text, namely 'Tilework' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "tilework" - }, - { - "key": "artwork_type", - "description": "Layer 'Drinking water' shows artwork_type=woodcarving with a fixed text, namely 'Woodcarving' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)", - "value": "woodcarving" - }, - { - "key": "artist:wikidata", - "description": "Layer 'Drinking water' shows and asks freeform values for key 'artist:wikidata' (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)" - }, - { - "key": "artist_name", - "description": "Layer 'Drinking water' shows and asks freeform values for key 'artist_name' (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)" - }, - { - "key": "website", - "description": "Layer 'Drinking water' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)" - }, - { - "key": "subject:wikidata", - "description": "Layer 'Drinking water' shows and asks freeform values for key 'subject:wikidata' (in the mapcomplete.org theme 'Personal theme') (This is only shown if tourism=artwork)" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Sanitary dump stations showing features with this tag", - "value": "sanitary_dump_station" - }, - { - "key": "id", - "description": "Layer 'Sanitary dump stations' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Sanitary dump stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Sanitary dump stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Sanitary dump stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Sanitary dump stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "fee", - "description": "Layer 'Sanitary dump stations' shows fee=yes with a fixed text, namely 'You need to pay for use' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "fee", - "description": "Layer 'Sanitary dump stations' shows fee=no with a fixed text, namely 'Can be used for free' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "charge", - "description": "Layer 'Sanitary dump stations' shows and asks freeform values for key 'charge' (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes)" - }, - { - "key": "water_point", - "description": "Layer 'Sanitary dump stations' shows water_point=yes with a fixed text, namely 'This place has a water point' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "water_point", - "description": "Layer 'Sanitary dump stations' shows water_point=no with a fixed text, namely 'This place does not have a water point' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "sanitary_dump_station:grey_water", - "description": "Layer 'Sanitary dump stations' shows sanitary_dump_station:grey_water=yes with a fixed text, namely 'You can dispose of grey water here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "sanitary_dump_station:grey_water", - "description": "Layer 'Sanitary dump stations' shows sanitary_dump_station:grey_water=no with a fixed text, namely 'You cannot dispose of gray water here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "sanitary_dump_station:chemical_toilet", - "description": "Layer 'Sanitary dump stations' shows sanitary_dump_station:chemical_toilet=yes with a fixed text, namely 'You can dispose of chemical toilet waste here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "sanitary_dump_station:chemical_toilet", - "description": "Layer 'Sanitary dump stations' shows sanitary_dump_station:chemical_toilet=no with a fixed text, namely 'You cannot dispose of chemical toilet waste here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "access", - "description": "Layer 'Sanitary dump stations' shows access=network with a fixed text, namely 'You need a network key/code to use this' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "network" - }, - { - "key": "access", - "description": "Layer 'Sanitary dump stations' shows access=customers with a fixed text, namely 'You need to be a customer of camping/campersite to use this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "customers" - }, - { - "key": "access", - "description": "Layer 'Sanitary dump stations' shows access=public with a fixed text, namely 'Anyone can use this dump station' (in the mapcomplete.org theme 'Personal theme')", - "value": "public" - }, - { - "key": "access", - "description": "Layer 'Sanitary dump stations' shows access=yes with a fixed text, namely 'Anyone can use this dump station' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "network", - "description": "Layer 'Sanitary dump stations' shows and asks freeform values for key 'network' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Elevator showing features with this tag", - "value": "elevator" - }, - { - "key": "id", - "description": "Layer 'Elevator' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Elevator allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Elevator allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Elevator allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Elevator allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "level", - "description": "Layer 'Elevator' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Elevator' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Elevator' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Elevator' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Elevator' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Elevator' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "operational_status", - "description": "Layer 'Elevator' shows operational_status=broken with a fixed text, namely 'This elevator is broken' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "broken" - }, - { - "key": "operational_status", - "description": "Layer 'Elevator' shows operational_status=closed with a fixed text, namely 'This elevator is closed e.g. because renovation works are going on' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "operational_status", - "description": "Layer 'Elevator' shows operational_status=ok with a fixed text, namely 'This elevator works' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "ok" - }, - { - "key": "operational_status", - "description": "Layer 'Elevator' shows operational_status= with a fixed text, namely 'This elevator works' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key operational_status.", - "value": "" - }, - { - "key": "door:width", - "description": "Layer 'Elevator' shows and asks freeform values for key 'door:width' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "shape", - "description": "Layer 'Elevator' shows shape=rectangular with a fixed text, namely 'This elevator has a rectangular shape' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "rectangular" - }, - { - "key": "shape", - "description": "Layer 'Elevator' shows shape=circular with a fixed text, namely 'This elevator has a circular shape' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "circular" - }, - { - "key": "width", - "description": "Layer 'Elevator' shows and asks freeform values for key 'width' (in the mapcomplete.org theme 'Personal theme') (This is only shown if shape= | shape=rectangular)" - }, - { - "key": "length", - "description": "Layer 'Elevator' shows and asks freeform values for key 'length' (in the mapcomplete.org theme 'Personal theme') (This is only shown if shape= | shape=rectangular)" - }, - { - "key": "diameter", - "description": "Layer 'Elevator' shows and asks freeform values for key 'diameter' (in the mapcomplete.org theme 'Personal theme') (This is only shown if shape=circular)" - }, - { - "key": "hearing_loop", - "description": "Layer 'Elevator' shows hearing_loop=yes with a fixed text, namely 'This place has an audio induction loop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "hearing_loop", - "description": "Layer 'Elevator' shows hearing_loop=no with a fixed text, namely 'This place does not have an audio induction loop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "tactile_writing:braille", - "description": "Layer 'Elevator' shows tactile_writing:braille=yes with a fixed text, namely 'This elevator has tactile writing in Braille' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "tactile_writing:braille", - "description": "Layer 'Elevator' shows tactile_writing:braille=no with a fixed text, namely 'This elevator does not have tactile writing' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "speech_output", - "description": "Layer 'Elevator' shows speech_output=yes with a fixed text, namely 'This elevator has speech output' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "speech_output", - "description": "Layer 'Elevator' shows speech_output=no with a fixed text, namely 'This elevator does not have speech output' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Penny Presses showing features with this tag", - "value": "vending_machine" - }, - { - "key": "vending", - "description": "The MapComplete theme Personal theme has a layer Penny Presses showing features with this tag" - }, - { - "key": "id", - "description": "Layer 'Penny Presses' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Penny Presses allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Penny Presses allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Penny Presses allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Penny Presses allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "opening_hours", - "description": "Layer 'Penny Presses' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Penny Presses' shows opening_hours=24/7 with a fixed text, namely '24/7 opened (including holidays)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "24/7" - }, - { - "key": "opening_hours", - "description": "Layer 'Penny Presses' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "coin:design_count", - "description": "Layer 'Penny Presses' shows and asks freeform values for key 'coin:design_count' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "coin:design_count", - "description": "Layer 'Penny Presses' shows coin:design_count=1 with a fixed text, namely 'This penny press has one design available.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "coin:design_count", - "description": "Layer 'Penny Presses' shows coin:design_count=2 with a fixed text, namely 'This penny press has two designs available.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "2" - }, - { - "key": "coin:design_count", - "description": "Layer 'Penny Presses' shows coin:design_count=3 with a fixed text, namely 'This penny press has three designs available.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "3" - }, - { - "key": "coin:design_count", - "description": "Layer 'Penny Presses' shows coin:design_count=4 with a fixed text, namely 'This penny press has four designs available.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "4" - }, - { - "key": "fee", - "description": "Layer 'Penny Presses' shows fee= with a fixed text, namely 'It costs money to press a penny.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key fee.", - "value": "" - }, - { - "key": "fee", - "description": "Layer 'Penny Presses' shows fee=yes with a fixed text, namely 'It costs money to press a penny.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "fee", - "description": "Layer 'Penny Presses' shows fee=no with a fixed text, namely 'It is free to press a penny.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "payment:cash", - "description": "Layer 'Penny Presses' shows payment:cash=yes with a fixed text, namely 'Cash is accepted here' (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | fee=)", - "value": "yes" - }, - { - "key": "payment:cards", - "description": "Layer 'Penny Presses' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted here' (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | fee=)", - "value": "yes" - }, - { - "key": "payment:qr_code", - "description": "Layer 'Penny Presses' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | fee=)", - "value": "yes" - }, - { - "key": "payment:coins", - "description": "Layer 'Penny Presses' shows payment:coins=yes with a fixed text, namely 'Coins are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | fee=)", - "value": "yes" - }, - { - "key": "payment:notes", - "description": "Layer 'Penny Presses' shows payment:notes=yes with a fixed text, namely 'Bank notes are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | fee=)", - "value": "yes" - }, - { - "key": "payment:debit_cards", - "description": "Layer 'Penny Presses' shows payment:debit_cards=yes with a fixed text, namely 'Debit cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | fee=)", - "value": "yes" - }, - { - "key": "payment:credit_cards", - "description": "Layer 'Penny Presses' shows payment:credit_cards=yes with a fixed text, namely 'Credit cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | fee=)", - "value": "yes" - }, - { - "key": "coin:type", - "description": "Layer 'Penny Presses' shows and asks freeform values for key 'coin:type' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "coin:type", - "description": "Layer 'Penny Presses' shows coin:type=2cent with a fixed text, namely 'This penny press uses a 2 cent coin for pressing.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "2cent" - }, - { - "key": "coin:type", - "description": "Layer 'Penny Presses' shows coin:type=5cent with a fixed text, namely 'This penny press uses a 5 cent coin for pressing.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "5cent" - }, - { - "key": "coin:type", - "description": "Layer 'Penny Presses' shows coin:type=10cent with a fixed text, namely 'This penny press uses a 10 cent coin for pressing.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "10cent" - }, - { - "key": "coin:type", - "description": "Layer 'Penny Presses' shows coin:type=25cent with a fixed text, namely 'This penny press uses a 25 cent coin for pressing.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "25cent" - }, - { - "key": "coin:type", - "description": "Layer 'Penny Presses' shows coin:type=50cent with a fixed text, namely 'This penny press uses a 50 cent coin for pressing.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "50cent" - }, - { - "key": "coin:type", - "description": "Layer 'Penny Presses' shows coin:type=10centimes with a fixed text, namely 'This penny press uses a 10 centimes coin for pressing.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "10centimes" - }, - { - "key": "coin:type", - "description": "Layer 'Penny Presses' shows coin:type=20centimes with a fixed text, namely 'This penny press uses a 20 centimes coin for pressing.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "20centimes" - }, - { - "key": "website", - "description": "Layer 'Penny Presses' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Penny Presses' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "charge", - "description": "Layer 'Penny Presses' shows and asks freeform values for key 'charge' (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | fee=)" - }, - { - "key": "charge", - "description": "Layer 'Penny Presses' shows charge=1 EUR with a fixed text, namely 'It costs 1 euro to press a penny.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | fee=)", - "value": "1 EUR" - }, - { - "key": "charge", - "description": "Layer 'Penny Presses' shows charge=2 EUR with a fixed text, namely 'It costs 2 euros to press a penny.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | fee=)", - "value": "2 EUR" - }, - { - "key": "charge", - "description": "Layer 'Penny Presses' shows charge=2 CHF with a fixed text, namely 'It costs 2 Swiss francs to press a penny.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | fee=)", - "value": "2 CHF" - }, - { - "key": "charge", - "description": "Layer 'Penny Presses' shows charge=1 CHF with a fixed text, namely 'It costs 1 Swiss franc to press a penny.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | fee=)", - "value": "1 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Penny Presses' shows payment:coins:denominations=0.01 EUR with a fixed text, namely '1 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.01 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Penny Presses' shows payment:coins:denominations=0.02 EUR with a fixed text, namely '2 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.02 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Penny Presses' shows payment:coins:denominations=0.05 EUR with a fixed text, namely '5 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.05 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Penny Presses' shows payment:coins:denominations=0.10 EUR with a fixed text, namely '10 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.10 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Penny Presses' shows payment:coins:denominations=0.20 EUR with a fixed text, namely '20 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.20 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Penny Presses' shows payment:coins:denominations=0.50 EUR with a fixed text, namely '50 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.50 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Penny Presses' shows payment:coins:denominations=1 EUR with a fixed text, namely '1 euro coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "1 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Penny Presses' shows payment:coins:denominations=2 EUR with a fixed text, namely '2 euro coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "2 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Penny Presses' shows payment:coins:denominations=0.05 CHF with a fixed text, namely '5 centimes coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.05 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Penny Presses' shows payment:coins:denominations=0.10 CHF with a fixed text, namely '10 centimes coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.10 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Penny Presses' shows payment:coins:denominations=0.20 CHF with a fixed text, namely '20 centimes coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.20 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Penny Presses' shows payment:coins:denominations=0.50 CHF with a fixed text, namely '½ franc coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.50 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Penny Presses' shows payment:coins:denominations=1 CHF with a fixed text, namely '1 franc coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "1 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Penny Presses' shows payment:coins:denominations=2 CHF with a fixed text, namely '2 francs coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "2 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Penny Presses' shows payment:coins:denominations=5 CHF with a fixed text, namely '5 francs coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "5 CHF" - }, - { - "key": "indoor", - "description": "Layer 'Penny Presses' shows indoor=yes with a fixed text, namely 'This penny press is located indoors.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "indoor", - "description": "Layer 'Penny Presses' shows indoor=no with a fixed text, namely 'This penny press is located outdoors.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "level", - "description": "Layer 'Penny Presses' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Penny Presses' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Penny Presses' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Penny Presses' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Penny Presses' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Penny Presses' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "check_date", - "description": "Layer 'Penny Presses' shows and asks freeform values for key 'check_date' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "check_date", - "description": "Layer 'Penny Presses' shows check_date= with a fixed text, namely 'This object was last checked today' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key check_date.", - "value": "" - }, - { - "key": "entrance", - "description": "The MapComplete theme Personal theme has a layer Entrance showing features with this tag" - }, - { - "key": "indoor", - "description": "The MapComplete theme Personal theme has a layer Entrance showing features with this tag", - "value": "door" - }, - { - "key": "door", - "description": "The MapComplete theme Personal theme has a layer Entrance showing features with this tag" - }, - { - "key": "id", - "description": "Layer 'Entrance' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Entrance allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Entrance allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Entrance allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Entrance allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "level", - "description": "Layer 'Entrance' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Entrance' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Entrance' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Entrance' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Entrance' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Entrance' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "entrance", - "description": "Layer 'Entrance' shows entrance=yes with a fixed text, namely 'No specific entrance type is known' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "entrance", - "description": "Layer 'Entrance' shows entrance= & indoor=door with a fixed text, namely 'This is an indoor door, separating a room or a corridor within a single building' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key entrance.", - "value": "" - }, - { - "key": "indoor", - "description": "Layer 'Entrance' shows entrance= & indoor=door with a fixed text, namely 'This is an indoor door, separating a room or a corridor within a single building' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "door" - }, - { - "key": "indoor", - "description": "Layer 'Entrance' shows indoor= & entrance=main with a fixed text, namely 'This is the main entrance' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key indoor.", - "value": "" - }, - { - "key": "entrance", - "description": "Layer 'Entrance' shows indoor= & entrance=main with a fixed text, namely 'This is the main entrance' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "main" - }, - { - "key": "indoor", - "description": "Layer 'Entrance' shows indoor= & entrance=secondary with a fixed text, namely 'This is a secondary entrance' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key indoor.", - "value": "" - }, - { - "key": "entrance", - "description": "Layer 'Entrance' shows indoor= & entrance=secondary with a fixed text, namely 'This is a secondary entrance' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "secondary" - }, - { - "key": "indoor", - "description": "Layer 'Entrance' shows indoor= & entrance=service with a fixed text, namely 'This is a service entrance - normally only used for employees, delivery, …' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key indoor.", - "value": "" - }, - { - "key": "entrance", - "description": "Layer 'Entrance' shows indoor= & entrance=service with a fixed text, namely 'This is a service entrance - normally only used for employees, delivery, …' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "service" - }, - { - "key": "indoor", - "description": "Layer 'Entrance' shows indoor= & entrance=exit with a fixed text, namely 'This is an exit where one can not enter' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key indoor.", - "value": "" - }, - { - "key": "entrance", - "description": "Layer 'Entrance' shows indoor= & entrance=exit with a fixed text, namely 'This is an exit where one can not enter' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "exit" - }, - { - "key": "indoor", - "description": "Layer 'Entrance' shows indoor= & entrance=entrance with a fixed text, namely 'This is an entrance where one can only enter (but not exit)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key indoor.", - "value": "" - }, - { - "key": "entrance", - "description": "Layer 'Entrance' shows indoor= & entrance=entrance with a fixed text, namely 'This is an entrance where one can only enter (but not exit)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "entrance" - }, - { - "key": "indoor", - "description": "Layer 'Entrance' shows indoor= & entrance=emergency with a fixed text, namely 'This is emergency exit' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key indoor.", - "value": "" - }, - { - "key": "entrance", - "description": "Layer 'Entrance' shows indoor= & entrance=emergency with a fixed text, namely 'This is emergency exit' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "emergency" - }, - { - "key": "indoor", - "description": "Layer 'Entrance' shows indoor= & entrance=home with a fixed text, namely 'This is the entrance to a private home' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key indoor.", - "value": "" - }, - { - "key": "entrance", - "description": "Layer 'Entrance' shows indoor= & entrance=home with a fixed text, namely 'This is the entrance to a private home' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "home" - }, - { - "key": "door", - "description": "Layer 'Entrance' shows door=yes with a fixed text, namely 'The door type is not known' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "door", - "description": "Layer 'Entrance' shows door=hinged with a fixed text, namely 'A classical, hinged door supported by joints' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "hinged" - }, - { - "key": "door", - "description": "Layer 'Entrance' shows door=revolving with a fixed text, namely 'A revolving door which hangs on a central shaft, rotating within a cylindrical enclosure' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "revolving" - }, - { - "key": "door", - "description": "Layer 'Entrance' shows door=sliding with a fixed text, namely 'A sliding door where the door slides sidewards, typically parallel with a wall' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sliding" - }, - { - "key": "door", - "description": "Layer 'Entrance' shows door=overhead with a fixed text, namely 'A door which rolls from overhead, typically seen for garages' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "overhead" - }, - { - "key": "door", - "description": "Layer 'Entrance' shows door=no with a fixed text, namely 'This is an entrance without a physical door' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "automatic_door", - "description": "Layer 'Entrance' shows automatic_door=yes with a fixed text, namely 'This is an automatic door' (in the mapcomplete.org theme 'Personal theme') (This is only shown if door!=no)", - "value": "yes" - }, - { - "key": "automatic_door", - "description": "Layer 'Entrance' shows automatic_door=no with a fixed text, namely 'This door is not automated' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if door!=no)", - "value": "no" - }, - { - "key": "automatic_door", - "description": "Layer 'Entrance' shows automatic_door=motion with a fixed text, namely 'This door will open automatically when motion is detected' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if door!=no)", - "value": "motion" - }, - { - "key": "automatic_door", - "description": "Layer 'Entrance' shows automatic_door=floor with a fixed text, namely 'This door will open automatically when a sensor in the floor is triggered' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if door!=no)", - "value": "floor" - }, - { - "key": "automatic_door", - "description": "Layer 'Entrance' shows automatic_door=button with a fixed text, namely 'This door will open automatically when a button is pressed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if door!=no)", - "value": "button" - }, - { - "key": "automatic_door", - "description": "Layer 'Entrance' shows automatic_door=slowdown_button with a fixed text, namely 'This door revolves automatically all the time, but has a button to slow it down, e.g. for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if door!=no)", - "value": "slowdown_button" - }, - { - "key": "automatic_door", - "description": "Layer 'Entrance' shows automatic_door=continuous with a fixed text, namely 'This door revolves automatically all the time' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if door!=no)", - "value": "continuous" - }, - { - "key": "automatic_door", - "description": "Layer 'Entrance' shows automatic_door=serviced_on_button_press with a fixed text, namely 'This door will be opened by staff when requested by pressing a button' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if door!=no)", - "value": "serviced_on_button_press" - }, - { - "key": "automatic_door", - "description": "Layer 'Entrance' shows automatic_door=serviced_on_request with a fixed text, namely 'This door will be opened by staff when requested' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if door!=no)", - "value": "serviced_on_request" - }, - { - "key": "width", - "description": "Layer 'Entrance' shows and asks freeform values for key 'width' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "kerb:height", - "description": "Layer 'Entrance' shows and asks freeform values for key 'kerb:height' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "kerb:height", - "description": "Layer 'Entrance' shows kerb:height=0 with a fixed text, namely 'This door does not have a kerb' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "0" - }, - { - "key": "name:etymology:wikidata", - "description": "The MapComplete theme Personal theme has a layer Has etymology showing features with this tag" - }, - { - "key": "name:etymology", - "description": "The MapComplete theme Personal theme has a layer Has etymology showing features with this tag" - }, - { - "key": "id", - "description": "Layer 'Has etymology' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Has etymology shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Has etymology shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Has etymology shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Has etymology shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name:etymology:wikidata", - "description": "Layer 'Has etymology' shows and asks freeform values for key 'name:etymology:wikidata' (in the mapcomplete.org theme 'Personal theme') (This is only shown if name:etymology!=unknown)" - }, - { - "key": "name:etymology", - "description": "Layer 'Has etymology' shows and asks freeform values for key 'name:etymology' (in the mapcomplete.org theme 'Personal theme') (This is only shown if name:etymology~.+ | name:etymology:wikidata=)" - }, - { - "key": "name:etymology", - "description": "Layer 'Has etymology' shows name:etymology=unknown with a fixed text, namely 'The origin of this name is unknown in all literature' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if name:etymology~.+ | name:etymology:wikidata=)", - "value": "unknown" - }, - { - "key": "image", - "description": "The layer 'Has etymology allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Has etymology allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Has etymology allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Has etymology allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "emergency", - "description": "The MapComplete theme Personal theme has a layer Map of fire extinguishers showing features with this tag", - "value": "fire_extinguisher" - }, - { - "key": "id", - "description": "Layer 'Map of fire extinguishers' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "location", - "description": "Layer 'Map of fire extinguishers' shows and asks freeform values for key 'location' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "location", - "description": "Layer 'Map of fire extinguishers' shows location=indoor with a fixed text, namely 'Found indoors.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "indoor" - }, - { - "key": "location", - "description": "Layer 'Map of fire extinguishers' shows location=outdoor with a fixed text, namely 'Found outdoors.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "outdoor" - }, - { - "key": "image", - "description": "The layer 'Map of fire extinguishers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Map of fire extinguishers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Map of fire extinguishers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Map of fire extinguishers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Map of fire stations showing features with this tag", - "value": "fire_station" - }, - { - "key": "id", - "description": "Layer 'Map of fire stations' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "name", - "description": "Layer 'Map of fire stations' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "addr:street", - "description": "Layer 'Map of fire stations' shows and asks freeform values for key 'addr:street' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "addr:place", - "description": "Layer 'Map of fire stations' shows and asks freeform values for key 'addr:place' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator", - "description": "Layer 'Map of fire stations' shows and asks freeform values for key 'operator' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator", - "description": "Layer 'Map of fire stations' shows operator=Bureau of Fire Protection & operator:type=government with a fixed text, namely 'Bureau of Fire Protection' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "Bureau of Fire Protection" - }, - { - "key": "operator:type", - "description": "Layer 'Map of fire stations' shows operator=Bureau of Fire Protection & operator:type=government with a fixed text, namely 'Bureau of Fire Protection' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "government" - }, - { - "key": "operator:type", - "description": "Layer 'Map of fire stations' shows and asks freeform values for key 'operator:type' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:type", - "description": "Layer 'Map of fire stations' shows operator:type=government with a fixed text, namely 'The station is operated by the government.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "government" - }, - { - "key": "operator:type", - "description": "Layer 'Map of fire stations' shows operator:type=community with a fixed text, namely 'The station is operated by a community-based, or informal organization.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "community" - }, - { - "key": "operator:type", - "description": "Layer 'Map of fire stations' shows operator:type=ngo with a fixed text, namely 'The station is operated by a formal group of volunteers.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "ngo" - }, - { - "key": "operator:type", - "description": "Layer 'Map of fire stations' shows operator:type=private with a fixed text, namely 'The station is privately operated.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "private" - }, - { - "key": "image", - "description": "The layer 'Map of fire stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Map of fire stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Map of fire stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Map of fire stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "leisure", - "description": "The MapComplete theme Personal theme has a layer Firepit showing features with this tag", - "value": "firepit" - }, - { - "key": "id", - "description": "Layer 'Firepit' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Firepit allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Firepit allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Firepit allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Firepit allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "access", - "description": "Layer 'Firepit' shows access=yes with a fixed text, namely 'Public' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "access", - "description": "Layer 'Firepit' shows access=no with a fixed text, namely 'No access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "access", - "description": "Layer 'Firepit' shows access=private with a fixed text, namely 'Private' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "private" - }, - { - "key": "access", - "description": "Layer 'Firepit' shows access=permissive with a fixed text, namely 'Access until revoked' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "permissive" - }, - { - "key": "access", - "description": "Layer 'Firepit' shows access=customers with a fixed text, namely 'Access only for customers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "customers" - }, - { - "key": "access", - "description": "Layer 'Firepit' shows access=permit with a fixed text, namely 'Access only for authorized' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "permit" - }, - { - "key": "seasonal", - "description": "Layer 'Firepit' shows seasonal=no with a fixed text, namely 'Available all around the year' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "seasonal", - "description": "Layer 'Firepit' shows seasonal=summer with a fixed text, namely 'Only available in summer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "summer" - }, - { - "key": "seasonal", - "description": "Layer 'Firepit' shows seasonal=spring;summer;autumn with a fixed text, namely 'Closed during the winter' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "spring;summer;autumn" - }, - { - "key": "leisure", - "description": "The MapComplete theme Personal theme has a layer Fitness Centres showing features with this tag", - "value": "fitness_centre" - }, - { - "key": "id", - "description": "Layer 'Fitness Centres' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "name", - "description": "Layer 'Fitness Centres' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "noname", - "description": "Layer 'Fitness Centres' shows noname=yes with a fixed text, namely 'This fitness centre has no name' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "image", - "description": "The layer 'Fitness Centres allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Fitness Centres allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Fitness Centres allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Fitness Centres allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "phone", - "description": "Layer 'Fitness Centres' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Fitness Centres' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Fitness Centres' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Fitness Centres' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Fitness Centres' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Fitness Centres' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Fitness Centres' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Fitness Centres' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Fitness Centres' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "wheelchair", - "description": "Layer 'Fitness Centres' shows wheelchair=designated with a fixed text, namely 'This place is specially adapted for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "designated" - }, - { - "key": "wheelchair", - "description": "Layer 'Fitness Centres' shows wheelchair=yes with a fixed text, namely 'This place is easily reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "wheelchair", - "description": "Layer 'Fitness Centres' shows wheelchair=limited with a fixed text, namely 'It is possible to reach this place in a wheelchair, but it is not easy' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "wheelchair", - "description": "Layer 'Fitness Centres' shows wheelchair=no with a fixed text, namely 'This place is not reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "level", - "description": "Layer 'Fitness Centres' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Fitness Centres' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Fitness Centres' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Fitness Centres' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Fitness Centres' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Fitness Centres' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "leisure", - "description": "The MapComplete theme Personal theme has a layer Fitness Stations showing features with this tag", - "value": "fitness_station" - }, - { - "key": "id", - "description": "Layer 'Fitness Stations' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Fitness Stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Fitness Stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Fitness Stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Fitness Stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Fitness Stations' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "noname", - "description": "Layer 'Fitness Stations' shows noname=yes with a fixed text, namely 'This fitness station doesn't have a name' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=horizontal_bar with a fixed text, namely 'This fitness station has a horizontal bar, high enough for pull-ups.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "horizontal_bar" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=sign with a fixed text, namely 'This fitness station has a sign with instructions for a specific exercise.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sign" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=sit-up with a fixed text, namely 'This fitness station has a facility for sit-ups.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sit-up" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=push-up with a fixed text, namely 'This fitness station has a facility for push-ups. Usually consists of one or more low horizontal bars.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "push-up" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=stretch_bars with a fixed text, namely 'This fitness station has bars for stretching.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "stretch_bars" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=hyperextension with a fixed text, namely 'This fitness station has a station for making hyperextensions.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "hyperextension" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=rings with a fixed text, namely 'This fitness station has rings for gymnastic exercises.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "rings" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=horizontal_ladder with a fixed text, namely 'This fitness station has a horizontal ladder, also known as monkey bars.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "horizontal_ladder" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=wall_bars with a fixed text, namely 'This fitness station has wall bars to climb on.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wall_bars" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=slalom with a fixed text, namely 'This fitness station has posts for performing slalom exercises.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "slalom" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=stepping_stones with a fixed text, namely 'This fitness station has stepping stones.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "stepping_stones" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=leapfrog with a fixed text, namely 'This fitness station has cones for performing leapfrog jumps.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "leapfrog" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=beam_jump with a fixed text, namely 'This fitness station has beams to jump over.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "beam_jump" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=hurdling with a fixed text, namely 'This fitness station has hurdles to cross.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "hurdling" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=wall with a fixed text, namely 'This fitness station has a wall to climb on.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wall" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=balance_beam with a fixed text, namely 'This fitness station has a balance beam.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "balance_beam" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=log_lifting with a fixed text, namely 'This fitness station has a log with a handle on the end to lift.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "log_lifting" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=captains_chair with a fixed text, namely 'This fitness station has a chair with only elbow supports and a rear (without seat), for performing leg raises.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "captains_chair" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=box with a fixed text, namely 'This fitness station has a box that can be used for jumping.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "box" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=battling_ropes with a fixed text, namely 'This fitness station has battling ropes.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "battling_ropes" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=excercise_bike with a fixed text, namely 'This fitness station has a stationary bicycle.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "excercise_bike" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=elliptical_trainer with a fixed text, namely 'This fitness station has a cross-trainer.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "elliptical_trainer" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=air_walker with a fixed text, namely 'This fitness station has an air walker.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "air_walker" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=rower with a fixed text, namely 'This fitness station has a rower.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "rower" - }, - { - "key": "fitness_station", - "description": "Layer 'Fitness Stations' shows fitness_station=slackline with a fixed text, namely 'This fitness station has a slackline.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "slackline" - }, - { - "key": "operator", - "description": "Layer 'Fitness Stations' shows and asks freeform values for key 'operator' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Fitness Stations' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Fitness Stations' shows opening_hours=24/7 with a fixed text, namely '24/7 opened (including holidays)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "24/7" - }, - { - "key": "opening_hours", - "description": "Layer 'Fitness Stations' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "fixme", - "description": "The MapComplete theme Personal theme has a layer OSM objects with FIXME tags showing features with this tag" - }, - { - "key": "FIXME", - "description": "The MapComplete theme Personal theme has a layer OSM objects with FIXME tags showing features with this tag" - }, - { - "key": "id", - "description": "Layer 'OSM objects with FIXME tags' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "fixme", - "description": "Layer 'OSM objects with FIXME tags' shows and asks freeform values for key 'fixme' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "fixme", - "description": "Layer 'OSM objects with FIXME tags' shows fixme= with a fixed text, namely 'This issue has been resolved' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key fixme.", - "value": "" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Restaurants and fast food showing features with this tag", - "value": "fast_food" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Restaurants and fast food showing features with this tag", - "value": "restaurant" - }, - { - "key": "id", - "description": "Layer 'Restaurants and fast food' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Restaurants and fast food' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "amenity", - "description": "Layer 'Restaurants and fast food' shows amenity=fast_food with a fixed text, namely 'This is a fast-food business, focused on fast service. If seating is available, it is rather limited and functional.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "fast_food" - }, - { - "key": "amenity", - "description": "Layer 'Restaurants and fast food' shows amenity=restaurant with a fixed text, namely 'A restaurant, focused on creating a nice experience where one is served at the table' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "restaurant" - }, - { - "key": "opening_hours", - "description": "Layer 'Restaurants and fast food' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Restaurants and fast food' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "website", - "description": "Layer 'Restaurants and fast food' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Restaurants and fast food' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Restaurants and fast food' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Restaurants and fast food' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Restaurants and fast food' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'Restaurants and fast food' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Restaurants and fast food' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "payment:cash", - "description": "Layer 'Restaurants and fast food' shows payment:cash=yes with a fixed text, namely 'Cash is accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:cards", - "description": "Layer 'Restaurants and fast food' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:qr_code", - "description": "Layer 'Restaurants and fast food' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "level", - "description": "Layer 'Restaurants and fast food' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Restaurants and fast food' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Restaurants and fast food' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Restaurants and fast food' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Restaurants and fast food' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Restaurants and fast food' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "wheelchair", - "description": "Layer 'Restaurants and fast food' shows wheelchair=designated with a fixed text, namely 'This place is specially adapted for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "designated" - }, - { - "key": "wheelchair", - "description": "Layer 'Restaurants and fast food' shows wheelchair=yes with a fixed text, namely 'This place is easily reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "wheelchair", - "description": "Layer 'Restaurants and fast food' shows wheelchair=limited with a fixed text, namely 'It is possible to reach this place in a wheelchair, but it is not easy' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "wheelchair", - "description": "Layer 'Restaurants and fast food' shows wheelchair=no with a fixed text, namely 'This place is not reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "cuisine", - "description": "Layer 'Restaurants and fast food' shows and asks freeform values for key 'cuisine' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "cuisine", - "description": "Layer 'Restaurants and fast food' shows cuisine=pizza with a fixed text, namely 'Pizzeria' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "pizza" - }, - { - "key": "cuisine", - "description": "Layer 'Restaurants and fast food' shows cuisine=friture with a fixed text, namely 'Friture' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "friture" - }, - { - "key": "cuisine", - "description": "Layer 'Restaurants and fast food' shows cuisine=pasta with a fixed text, namely 'Serves mainly pasta' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "pasta" - }, - { - "key": "cuisine", - "description": "Layer 'Restaurants and fast food' shows cuisine=kebab with a fixed text, namely 'Kebab shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "kebab" - }, - { - "key": "cuisine", - "description": "Layer 'Restaurants and fast food' shows cuisine=sandwich with a fixed text, namely 'Sandwich shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sandwich" - }, - { - "key": "cuisine", - "description": "Layer 'Restaurants and fast food' shows cuisine=burger with a fixed text, namely 'Burgersrestaurant' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "burger" - }, - { - "key": "cuisine", - "description": "Layer 'Restaurants and fast food' shows cuisine=sushi with a fixed text, namely 'Sushi restaurant' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sushi" - }, - { - "key": "cuisine", - "description": "Layer 'Restaurants and fast food' shows cuisine=coffee with a fixed text, namely 'Coffeebar' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "coffee" - }, - { - "key": "cuisine", - "description": "Layer 'Restaurants and fast food' shows cuisine=italian with a fixed text, namely 'Italian restaurant (which serves more than pasta and pizza)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "italian" - }, - { - "key": "cuisine", - "description": "Layer 'Restaurants and fast food' shows cuisine=french with a fixed text, namely 'French restaurant' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "french" - }, - { - "key": "cuisine", - "description": "Layer 'Restaurants and fast food' shows cuisine=chinese with a fixed text, namely 'Chinese' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "chinese" - }, - { - "key": "cuisine", - "description": "Layer 'Restaurants and fast food' shows cuisine=greek with a fixed text, namely 'Greek' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "greek" - }, - { - "key": "cuisine", - "description": "Layer 'Restaurants and fast food' shows cuisine=indian with a fixed text, namely 'Indian' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "indian" - }, - { - "key": "cuisine", - "description": "Layer 'Restaurants and fast food' shows cuisine=turkish with a fixed text, namely 'Turkish restaurant' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "turkish" - }, - { - "key": "cuisine", - "description": "Layer 'Restaurants and fast food' shows cuisine=thai with a fixed text, namely 'Thai restaurant' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "thai" - }, - { - "key": "cuisine", - "description": "Layer 'Restaurants and fast food' shows cuisine=mexican with a fixed text, namely 'Mexican dishes are served here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "mexican " - }, - { - "key": "cuisine", - "description": "Layer 'Restaurants and fast food' shows cuisine=japanese with a fixed text, namely 'Japanese dishes are served here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "japanese " - }, - { - "key": "cuisine", - "description": "Layer 'Restaurants and fast food' shows cuisine=chicken with a fixed text, namely 'Chicken based dishes are served here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "chicken " - }, - { - "key": "cuisine", - "description": "Layer 'Restaurants and fast food' shows cuisine=seafood with a fixed text, namely 'Seafood dishes are served here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "seafood " - }, - { - "key": "image", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "image", - "description": "The layer 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "website:menu", - "description": "Layer 'Restaurants and fast food' shows and asks freeform values for key 'website:menu' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "reservation", - "description": "Layer 'Restaurants and fast food' shows reservation=required with a fixed text, namely 'A reservation is required at this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if takeaway!=only)", - "value": "required" - }, - { - "key": "reservation", - "description": "Layer 'Restaurants and fast food' shows reservation=recommended with a fixed text, namely 'A reservation is not required, but still recommended to make sure you get a table' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if takeaway!=only)", - "value": "recommended" - }, - { - "key": "reservation", - "description": "Layer 'Restaurants and fast food' shows reservation=yes with a fixed text, namely 'Reservation is possible at this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if takeaway!=only)", - "value": "yes" - }, - { - "key": "reservation", - "description": "Layer 'Restaurants and fast food' shows reservation=no with a fixed text, namely 'Reservation is not possible at this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if takeaway!=only)", - "value": "no" - }, - { - "key": "takeaway", - "description": "Layer 'Restaurants and fast food' shows takeaway=only with a fixed text, namely 'This is a take-away only business' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "only" - }, - { - "key": "takeaway", - "description": "Layer 'Restaurants and fast food' shows takeaway=yes with a fixed text, namely 'Take-away is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "takeaway", - "description": "Layer 'Restaurants and fast food' shows takeaway=no with a fixed text, namely 'Take-away is not possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "delivery", - "description": "Layer 'Restaurants and fast food' shows delivery=yes with a fixed text, namely 'This business does home delivery (eventually via a third party)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "delivery", - "description": "Layer 'Restaurants and fast food' shows delivery=no with a fixed text, namely 'This business does not deliver at home' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=no with a fixed text, namely 'No vegetarian options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine!=friture)", - "value": "no" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=limited with a fixed text, namely 'Some vegetarian options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine!=friture)", - "value": "limited" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=yes with a fixed text, namely 'Vegetarian options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine!=friture)", - "value": "yes" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=only with a fixed text, namely 'All dishes are vegetarian' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine!=friture)", - "value": "only" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=on_demand with a fixed text, namely 'Some dishes might be adapted to a vegetarian version, but this should be demanded' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine!=friture)", - "value": "on_demand" - }, - { - "key": "diet:vegan", - "description": "Layer 'Restaurants and fast food' shows diet:vegan=no with a fixed text, namely 'No vegan options available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine!=friture)", - "value": "no" - }, - { - "key": "diet:vegan", - "description": "Layer 'Restaurants and fast food' shows diet:vegan=limited with a fixed text, namely 'Some vegan options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine!=friture)", - "value": "limited" - }, - { - "key": "diet:vegan", - "description": "Layer 'Restaurants and fast food' shows diet:vegan=yes with a fixed text, namely 'Vegan options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine!=friture)", - "value": "yes" - }, - { - "key": "diet:vegan", - "description": "Layer 'Restaurants and fast food' shows diet:vegan=only with a fixed text, namely 'All dishes are vegan' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine!=friture)", - "value": "only" - }, - { - "key": "diet:vegan", - "description": "Layer 'Restaurants and fast food' shows diet:vegan=on_demand with a fixed text, namely 'Some dishes might be adapted to a vegan version if asked for' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine!=friture)", - "value": "on_demand" - }, - { - "key": "diet:halal", - "description": "Layer 'Restaurants and fast food' shows diet:halal=no with a fixed text, namely 'There are no halal options available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine!=friture)", - "value": "no" - }, - { - "key": "diet:halal", - "description": "Layer 'Restaurants and fast food' shows diet:halal=limited with a fixed text, namely 'There is a small halal menu' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine!=friture)", - "value": "limited" - }, - { - "key": "diet:halal", - "description": "Layer 'Restaurants and fast food' shows diet:halal=yes with a fixed text, namely 'There is a halal menu' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine!=friture)", - "value": "yes" - }, - { - "key": "diet:halal", - "description": "Layer 'Restaurants and fast food' shows diet:halal=only with a fixed text, namely 'Only halal options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine!=friture)", - "value": "only" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Restaurants and fast food' shows diet:sugar_free=only with a fixed text, namely 'This shop only sells sugar free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "only" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Restaurants and fast food' shows diet:sugar_free=yes with a fixed text, namely 'This shop has a big sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Restaurants and fast food' shows diet:sugar_free=limited with a fixed text, namely 'This shop has a limited sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Restaurants and fast food' shows diet:sugar_free=no with a fixed text, namely 'This shop has no sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Restaurants and fast food' shows diet:gluten_free=only with a fixed text, namely 'This shop only sells gluten free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "only" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Restaurants and fast food' shows diet:gluten_free=yes with a fixed text, namely 'This shop has a big gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Restaurants and fast food' shows diet:gluten_free=limited with a fixed text, namely 'This shop has a limited gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Restaurants and fast food' shows diet:gluten_free=no with a fixed text, namely 'This shop has no gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Restaurants and fast food' shows diet:lactose_free=only with a fixed text, namely 'Only sells lactose free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "only" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Restaurants and fast food' shows diet:lactose_free=yes with a fixed text, namely 'Big lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Restaurants and fast food' shows diet:lactose_free=limited with a fixed text, namely 'Limited lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Restaurants and fast food' shows diet:lactose_free=no with a fixed text, namely 'No lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=no with a fixed text, namely 'There are no organic options available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine!=friture)", - "value": "no" - }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=yes with a fixed text, namely 'There is an organic menu' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine!=friture)", - "value": "yes" - }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=only with a fixed text, namely 'Only organic options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine!=friture)", - "value": "only" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=only with a fixed text, namely 'Serves only vegetarian snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine=friture)", - "value": "only" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=yes with a fixed text, namely 'Vegetarian snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=limited with a fixed text, namely 'Only a small selection of snacks are vegetarian' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine=friture)", - "value": "limited" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=no with a fixed text, namely 'No vegetarian snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "diet:vegan", - "description": "Layer 'Restaurants and fast food' shows diet:vegan=only with a fixed text, namely 'Servers only vegan snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine=friture)", - "value": "only" - }, - { - "key": "diet:vegan", - "description": "Layer 'Restaurants and fast food' shows diet:vegan=yes with a fixed text, namely 'Vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "diet:vegan", - "description": "Layer 'Restaurants and fast food' shows diet:vegan=limited with a fixed text, namely 'A small selection of vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine=friture)", - "value": "limited" - }, - { - "key": "diet:vegan", - "description": "Layer 'Restaurants and fast food' shows diet:vegan=no with a fixed text, namely 'No vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=yes with a fixed text, namely 'Organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=no with a fixed text, namely 'No organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=only with a fixed text, namely 'Only organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine=friture)", - "value": "only" - }, - { - "key": "friture:oil", - "description": "Layer 'Restaurants and fast food' shows friture:oil=vegetable with a fixed text, namely 'The frying is done with vegetable oil' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine=friture)", - "value": "vegetable" - }, - { - "key": "friture:oil", - "description": "Layer 'Restaurants and fast food' shows friture:oil=animal with a fixed text, namely 'The frying is done with animal oil' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine=friture)", - "value": "animal" - }, - { - "key": "reusable_packaging:accept", - "description": "Layer 'Restaurants and fast food' shows reusable_packaging:accept=yes with a fixed text, namely 'You can bring your own containers to get your order, saving on single-use packaging material and thus waste' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "reusable_packaging:accept", - "description": "Layer 'Restaurants and fast food' shows reusable_packaging:accept=no with a fixed text, namely 'Bringing your own container is not allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "reusable_packaging:accept", - "description": "Layer 'Restaurants and fast food' shows reusable_packaging:accept=only with a fixed text, namely 'You must bring your own container to order here.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if cuisine=friture)", - "value": "only" - }, - { - "key": "smoking", - "description": "Layer 'Restaurants and fast food' shows smoking=yes with a fixed text, namely 'Smoking is allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _country!~^(al|be)$)", - "value": "yes" - }, - { - "key": "smoking", - "description": "Layer 'Restaurants and fast food' shows smoking=no with a fixed text, namely 'Smoking is not allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _country!~^(al|be)$)", - "value": "no" - }, - { - "key": "smoking", - "description": "Layer 'Restaurants and fast food' shows smoking=outside with a fixed text, namely 'Smoking is allowed outside.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _country!~^(al|be)$)", - "value": "outside" - }, - { - "key": "service:electricity", - "description": "Layer 'Restaurants and fast food' shows service:electricity=yes with a fixed text, namely 'There are plenty of domestic sockets available to customers seated indoors, where they can charge their electronics' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:electricity", - "description": "Layer 'Restaurants and fast food' shows service:electricity=limited with a fixed text, namely 'There are a few domestic sockets available to customers seated indoors, where they can charge their electronics' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "service:electricity", - "description": "Layer 'Restaurants and fast food' shows service:electricity=ask with a fixed text, namely 'There are no sockets available indoors to customers, but charging might be possible if the staff is asked' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "ask" - }, - { - "key": "service:electricity", - "description": "Layer 'Restaurants and fast food' shows service:electricity=no with a fixed text, namely 'There are a no domestic sockets available to customers seated indoors' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "dog", - "description": "Layer 'Restaurants and fast food' shows dog=yes with a fixed text, namely 'Dogs are allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "dog", - "description": "Layer 'Restaurants and fast food' shows dog=no with a fixed text, namely 'Dogs are not allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "dog", - "description": "Layer 'Restaurants and fast food' shows dog=leashed with a fixed text, namely 'Dogs are allowed, but they have to be leashed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "leashed" - }, - { - "key": "dog", - "description": "Layer 'Restaurants and fast food' shows dog=unleashed with a fixed text, namely 'Dogs are allowed and can run around freely' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "unleashed" - }, - { - "key": "dog", - "description": "Layer 'Restaurants and fast food' shows dog=outside with a fixed text, namely 'Dogs are allowed only outside' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "outside" - }, - { - "key": "internet_access", - "description": "Layer 'Restaurants and fast food' shows internet_access=wlan with a fixed text, namely 'This place offers wireless internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wlan" - }, - { - "key": "internet_access", - "description": "Layer 'Restaurants and fast food' shows internet_access=no with a fixed text, namely 'This place does not offer internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "internet_access", - "description": "Layer 'Restaurants and fast food' shows internet_access=yes with a fixed text, namely 'This place offers internet access' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "internet_access", - "description": "Layer 'Restaurants and fast food' shows internet_access=terminal with a fixed text, namely 'This place offers internet access via a terminal or computer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "terminal" - }, - { - "key": "internet_access", - "description": "Layer 'Restaurants and fast food' shows internet_access=wired with a fixed text, namely 'This place offers wired internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wired" - }, - { - "key": "internet_access", - "description": "Layer 'Restaurants and fast food' shows internet_access=terminal;wifi with a fixed text, namely 'This place offers both wireless internet and internet access via a terminal or computer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "terminal;wifi" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Restaurants and fast food' shows internet_access:fee=yes with a fixed text, namely 'There is a fee for the internet access at this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "yes" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Restaurants and fast food' shows internet_access:fee=no with a fixed text, namely 'Internet access is free at this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "no" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Restaurants and fast food' shows internet_access:fee=customers with a fixed text, namely 'Internet access is free at this place, for customers only' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "customers" - }, - { - "key": "internet_access:ssid", - "description": "Layer 'Restaurants and fast food' shows and asks freeform values for key 'internet_access:ssid' (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access~^(.*wlan.*)$)" - }, - { - "key": "internet_access:ssid", - "description": "Layer 'Restaurants and fast food' shows internet_access:ssid=Telekom with a fixed text, namely 'Telekom' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access~^(.*wlan.*)$)", - "value": "Telekom" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Food Courts showing features with this tag", - "value": "food_court" - }, - { - "key": "id", - "description": "Layer 'Food Courts' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "name", - "description": "Layer 'Food Courts' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "image", - "description": "The layer 'Food Courts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Food Courts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Food Courts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Food Courts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "opening_hours", - "description": "Layer 'Food Courts' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Food Courts' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "wheelchair", - "description": "Layer 'Food Courts' shows wheelchair=designated with a fixed text, namely 'This place is specially adapted for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "designated" - }, - { - "key": "wheelchair", - "description": "Layer 'Food Courts' shows wheelchair=yes with a fixed text, namely 'This place is easily reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "wheelchair", - "description": "Layer 'Food Courts' shows wheelchair=limited with a fixed text, namely 'It is possible to reach this place in a wheelchair, but it is not easy' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "wheelchair", - "description": "Layer 'Food Courts' shows wheelchair=no with a fixed text, namely 'This place is not reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "website", - "description": "Layer 'Food Courts' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Food Courts' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'Food Courts' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Food Courts' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "smoking", - "description": "Layer 'Food Courts' shows smoking=yes with a fixed text, namely 'Smoking is allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _country!~^(al|be)$)", - "value": "yes" - }, - { - "key": "smoking", - "description": "Layer 'Food Courts' shows smoking=no with a fixed text, namely 'Smoking is not allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _country!~^(al|be)$)", - "value": "no" - }, - { - "key": "smoking", - "description": "Layer 'Food Courts' shows smoking=outside with a fixed text, namely 'Smoking is allowed outside.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _country!~^(al|be)$)", - "value": "outside" - }, - { - "key": "memorial", - "description": "The MapComplete theme Personal theme has a layer Ghost bikes showing features with this tag", - "value": "ghost_bike" - }, - { - "key": "id", - "description": "Layer 'Ghost bikes' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Ghost bikes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Ghost bikes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Ghost bikes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Ghost bikes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "subject", - "description": "Layer 'Ghost bikes' shows and asks freeform values for key 'subject' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "name", - "description": "Layer 'Ghost bikes' shows name~.+ with a fixed text, namely 'In remembrance of {name}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "noname", - "description": "Layer 'Ghost bikes' shows noname=yes with a fixed text, namely 'No name is marked on the bike' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "source", - "description": "Layer 'Ghost bikes' shows and asks freeform values for key 'source' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "inscription", - "description": "Layer 'Ghost bikes' shows and asks freeform values for key 'inscription' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "start_date", - "description": "Layer 'Ghost bikes' shows and asks freeform values for key 'start_date' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "historic", - "description": "The MapComplete theme Personal theme has a layer Ghost Signs showing features with this tag" - }, - { - "key": "advertising", - "description": "The MapComplete theme Personal theme has a layer Ghost Signs showing features with this tag" - }, - { - "key": "id", - "description": "Layer 'Ghost Signs' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Ghost Signs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Ghost Signs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Ghost Signs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Ghost Signs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "historic", - "description": "Layer 'Ghost Signs' shows historic=advertising with a fixed text, namely 'This is a historic advertisement sign (an advertisement for a business that no longer exists or a very old sign with heritage value)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "advertising" - }, - { - "key": "historic", - "description": "Layer 'Ghost Signs' shows historic= with a fixed text, namely 'This advertisement sign has no historic value (the business still exists and has no heritage value)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key historic.", - "value": "" - }, - { - "key": "advertising", - "description": "Layer 'Ghost Signs' shows and asks freeform values for key 'advertising' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "advertising", - "description": "Layer 'Ghost Signs' shows advertising=billboard with a fixed text, namely 'This is a billboard' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "billboard" - }, - { - "key": "advertising", - "description": "Layer 'Ghost Signs' shows advertising=board with a fixed text, namely 'This is a board' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "board" - }, - { - "key": "advertising", - "description": "Layer 'Ghost Signs' shows advertising=column with a fixed text, namely 'This is a column' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "column" - }, - { - "key": "advertising", - "description": "Layer 'Ghost Signs' shows advertising=flag with a fixed text, namely 'This is a flag' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "flag" - }, - { - "key": "advertising", - "description": "Layer 'Ghost Signs' shows advertising=poster_box with a fixed text, namely 'This is a poster Box' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "poster_box" - }, - { - "key": "advertising", - "description": "Layer 'Ghost Signs' shows advertising=screen with a fixed text, namely 'This is a screen' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "screen" - }, - { - "key": "advertising", - "description": "Layer 'Ghost Signs' shows advertising=sculpture with a fixed text, namely 'This is a sculpture' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sculpture" - }, - { - "key": "advertising", - "description": "Layer 'Ghost Signs' shows advertising=sign with a fixed text, namely 'This is a sign' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sign" - }, - { - "key": "advertising", - "description": "Layer 'Ghost Signs' shows advertising=tarp with a fixed text, namely 'This is a tarp (a weatherproof piece of textile with an advertising message)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "tarp" - }, - { - "key": "advertising", - "description": "Layer 'Ghost Signs' shows advertising=totem with a fixed text, namely 'This is a totem' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "totem" - }, - { - "key": "advertising", - "description": "Layer 'Ghost Signs' shows advertising=wall_painting with a fixed text, namely 'This is a wall painting' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wall_painting" - }, - { - "key": "advertising", - "description": "Layer 'Ghost Signs' shows advertising=tilework with a fixed text, namely 'This is tilework - the advertisement is painted on tiles' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "tilework" - }, - { - "key": "advertising", - "description": "Layer 'Ghost Signs' shows advertising=relief with a fixed text, namely 'This is a relief' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "relief" - }, - { - "key": "inscription", - "description": "Layer 'Ghost Signs' shows and asks freeform values for key 'inscription' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "brand", - "description": "Layer 'Ghost Signs' shows and asks freeform values for key 'brand' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "office", - "description": "The MapComplete theme Personal theme has a layer governments showing features with this tag", - "value": "government" - }, - { - "key": "id", - "description": "Layer 'governments' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'governments allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'governments allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'governments allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'governments allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "phone", - "description": "Layer 'governments' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'governments' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'governments' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'governments' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'governments' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'governments' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'governments' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "name", - "description": "Layer 'governments' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "historic", - "description": "The MapComplete theme Personal theme has a layer Gravestones showing features with this tag", - "value": "tomb" - }, - { - "key": "id", - "description": "Layer 'Gravestones' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Gravestones allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Gravestones allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Gravestones allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Gravestones allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "buried:wikidata", - "description": "Layer 'Gravestones' shows and asks freeform values for key 'buried:wikidata' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "name", - "description": "Layer 'Gravestones' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "information", - "description": "The MapComplete theme Personal theme has a layer Guideposts showing features with this tag", - "value": "guidepost" - }, - { - "key": "id", - "description": "Layer 'Guideposts' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Guideposts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Guideposts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Guideposts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Guideposts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "bicycle", - "description": "Layer 'Guideposts' shows bicycle=yes with a fixed text, namely 'This guidepost shows bicycle routes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "hiking", - "description": "Layer 'Guideposts' shows hiking=yes with a fixed text, namely 'This guidepost shows hiking routes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "mtb", - "description": "Layer 'Guideposts' shows mtb=yes with a fixed text, namely 'This guidepost shows mountain bike routes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "horse", - "description": "Layer 'Guideposts' shows horse=yes with a fixed text, namely 'This guidepost shows horse riding routes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "ski", - "description": "Layer 'Guideposts' shows ski=yes with a fixed text, namely 'This guidepost shows ski routes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "leisure", - "description": "The MapComplete theme Personal theme has a layer Hackerspace showing features with this tag", - "value": "hackerspace" - }, - { - "key": "id", - "description": "Layer 'Hackerspace' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Hackerspace allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Hackerspace allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Hackerspace allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Hackerspace allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "hackerspace", - "description": "Layer 'Hackerspace' shows hackerspace=makerspace with a fixed text, namely 'This is a makerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "makerspace" - }, - { - "key": "hackerspace", - "description": "Layer 'Hackerspace' shows hackerspace= with a fixed text, namely 'This is a traditional (software oriented) hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key hackerspace.", - "value": "" - }, - { - "key": "hackerspace", - "description": "Layer 'Hackerspace' shows hackerspace=hacklab with a fixed text, namely 'This is a hacklab which is mostly focussed on basic computer skills, using recycled devices and/or providing internet to the community. This is typically located in autonomous spaces, squats or social facilities' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "hacklab" - }, - { - "key": "name", - "description": "Layer 'Hackerspace' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "level", - "description": "Layer 'Hackerspace' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Hackerspace' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Hackerspace' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Hackerspace' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Hackerspace' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Hackerspace' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "website", - "description": "Layer 'Hackerspace' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Hackerspace' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Hackerspace' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Hackerspace' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Hackerspace' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'Hackerspace' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Hackerspace' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:mastodon", - "description": "Layer 'Hackerspace' shows and asks freeform values for key 'contact:mastodon' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Hackerspace' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Hackerspace' shows opening_hours=24/7 with a fixed text, namely '24/7 opened (including holidays)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "24/7" - }, - { - "key": "opening_hours", - "description": "Layer 'Hackerspace' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "service:3dprinter", - "description": "Layer 'Hackerspace' shows service:3dprinter=yes with a fixed text, namely 'There is a 3D-printer available at this hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:3dprinter", - "description": "Layer 'Hackerspace' shows service:3dprinter=no with a fixed text, namely 'There is no 3D-printer available at this hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "service:3dprinter", - "description": "Layer 'Hackerspace' shows service:3dprinter=limited with a fixed text, namely 'There is a limited 3D-printer available at this hackerspace' (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "service:lasercutter", - "description": "Layer 'Hackerspace' shows service:lasercutter=yes with a fixed text, namely 'There is a laser cutter available at this hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:lasercutter", - "description": "Layer 'Hackerspace' shows service:lasercutter=no with a fixed text, namely 'There is no laser cutter available at this hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "service:lasercutter", - "description": "Layer 'Hackerspace' shows service:lasercutter=limited with a fixed text, namely 'There is a limited laser cutter available at this hackerspace' (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "service:cnc_drilling_machine", - "description": "Layer 'Hackerspace' shows service:cnc_drilling_machine=yes with a fixed text, namely 'There is a CNC drill available at this hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:cnc_drilling_machine", - "description": "Layer 'Hackerspace' shows service:cnc_drilling_machine=no with a fixed text, namely 'There is no CNC drill available at this hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "service:cnc_drilling_machine", - "description": "Layer 'Hackerspace' shows service:cnc_drilling_machine=limited with a fixed text, namely 'There is a limited CNC drill available at this hackerspace' (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "service:media_studio", - "description": "Layer 'Hackerspace' shows service:media_studio=yes with a fixed text, namely 'There is a multimedia studio available at this hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:media_studio", - "description": "Layer 'Hackerspace' shows service:media_studio=no with a fixed text, namely 'There is no multimedia studio available at this hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "service:media_studio", - "description": "Layer 'Hackerspace' shows service:media_studio=limited with a fixed text, namely 'There is a limited multimedia studio available at this hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "service:sewing_machine", - "description": "Layer 'Hackerspace' shows service:sewing_machine=yes with a fixed text, namely 'There is a sewing machine available at this hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:sewing_machine", - "description": "Layer 'Hackerspace' shows service:sewing_machine=no with a fixed text, namely 'There is no sewing machine available at this hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "service:sewing_machine", - "description": "Layer 'Hackerspace' shows service:sewing_machine=limited with a fixed text, namely 'There is a limited sewing machine available at this hackerspace' (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "service:workshop:wood", - "description": "Layer 'Hackerspace' shows service:workshop:wood=yes with a fixed text, namely 'There is a woodworking workshop available at this hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:workshop:wood", - "description": "Layer 'Hackerspace' shows service:workshop:wood=no with a fixed text, namely 'There is no woodworking workshop available at this hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "service:workshop:wood", - "description": "Layer 'Hackerspace' shows service:workshop:wood=limited with a fixed text, namely 'There is a limited woodworking workshop available at this hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "service:workshop:ceramics", - "description": "Layer 'Hackerspace' shows service:workshop:ceramics=yes with a fixed text, namely 'There is a ceramics workshop available at this hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:workshop:ceramics", - "description": "Layer 'Hackerspace' shows service:workshop:ceramics=no with a fixed text, namely 'There is no ceramics workshop available at this hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "service:workshop:ceramics", - "description": "Layer 'Hackerspace' shows service:workshop:ceramics=limited with a fixed text, namely 'There is a limited ceramics workshop available at this hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "service:workshop:metal", - "description": "Layer 'Hackerspace' shows service:workshop:metal=yes with a fixed text, namely 'There is a metal workshop available at this hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:workshop:metal", - "description": "Layer 'Hackerspace' shows service:workshop:metal=no with a fixed text, namely 'There is no metal workshop available at this hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "service:workshop:metal", - "description": "Layer 'Hackerspace' shows service:workshop:metal=limited with a fixed text, namely 'There is a limited metal workshop available at this hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "service:bicycle:diy", - "description": "Layer 'Hackerspace' shows service:bicycle:diy=yes with a fixed text, namely 'There is a bicycle repair workshop available at this hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "service:bicycle:diy", - "description": "Layer 'Hackerspace' shows service:bicycle:diy=no with a fixed text, namely 'There is no bicycle repair workshop available at this hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "service:bicycle:diy", - "description": "Layer 'Hackerspace' shows service:bicycle:diy=limited with a fixed text, namely 'There is a limited bicycle repair workshop available at this hackerspace' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "wheelchair", - "description": "Layer 'Hackerspace' shows wheelchair=designated with a fixed text, namely 'This place is specially adapted for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "designated" - }, - { - "key": "wheelchair", - "description": "Layer 'Hackerspace' shows wheelchair=yes with a fixed text, namely 'This place is easily reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "wheelchair", - "description": "Layer 'Hackerspace' shows wheelchair=limited with a fixed text, namely 'It is possible to reach this place in a wheelchair, but it is not easy' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "wheelchair", - "description": "Layer 'Hackerspace' shows wheelchair=no with a fixed text, namely 'This place is not reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "drink:club-mate", - "description": "Layer 'Hackerspace' shows drink:club-mate=yes with a fixed text, namely 'This hackerspace serves Club-Mate' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "drink:club-mate", - "description": "Layer 'Hackerspace' shows drink:club-mate=no with a fixed text, namely 'This hackerspace does not serve Club-Mate' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "start_date", - "description": "Layer 'Hackerspace' shows and asks freeform values for key 'start_date' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "internet_access", - "description": "Layer 'Hackerspace' shows internet_access=wlan with a fixed text, namely 'This place offers wireless internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wlan" - }, - { - "key": "internet_access", - "description": "Layer 'Hackerspace' shows internet_access=no with a fixed text, namely 'This place does not offer internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "internet_access", - "description": "Layer 'Hackerspace' shows internet_access=yes with a fixed text, namely 'This place offers internet access' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "internet_access", - "description": "Layer 'Hackerspace' shows internet_access=terminal with a fixed text, namely 'This place offers internet access via a terminal or computer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "terminal" - }, - { - "key": "internet_access", - "description": "Layer 'Hackerspace' shows internet_access=wired with a fixed text, namely 'This place offers wired internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wired" - }, - { - "key": "internet_access", - "description": "Layer 'Hackerspace' shows internet_access=terminal;wifi with a fixed text, namely 'This place offers both wireless internet and internet access via a terminal or computer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "terminal;wifi" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Hackerspace' shows internet_access:fee=yes with a fixed text, namely 'There is a fee for the internet access at this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "yes" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Hackerspace' shows internet_access:fee=no with a fixed text, namely 'Internet access is free at this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "no" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Hackerspace' shows internet_access:fee=customers with a fixed text, namely 'Internet access is free at this place, for customers only' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "customers" - }, - { - "key": "internet_access:ssid", - "description": "Layer 'Hackerspace' shows and asks freeform values for key 'internet_access:ssid' (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access~^(.*wlan.*)$)" - }, - { - "key": "internet_access:ssid", - "description": "Layer 'Hackerspace' shows internet_access:ssid=Telekom with a fixed text, namely 'Telekom' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access~^(.*wlan.*)$)", - "value": "Telekom" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Hospitals showing features with this tag", - "value": "hospital" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Hospitals showing features with this tag", - "value": "clinic" - }, - { - "key": "id", - "description": "Layer 'Hospitals' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "name", - "description": "Layer 'Hospitals' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "amenity", - "description": "Layer 'Hospitals' shows amenity=clinic with a fixed text, namely 'This is a clinic - patients can not stay overnight' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "clinic" - }, - { - "key": "amenity", - "description": "Layer 'Hospitals' shows amenity=hospital with a fixed text, namely 'This is a hospital - patients can be admitted here for multiple days' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "hospital" - }, - { - "key": "phone", - "description": "Layer 'Hospitals' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Hospitals' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Hospitals' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Hospitals' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Hospitals' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Hospitals' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Hospitals' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours:visitors", - "description": "Layer 'Hospitals' shows and asks freeform values for key 'opening_hours:visitors' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "emergency", - "description": "The MapComplete theme Personal theme has a layer Map of hydrants showing features with this tag", - "value": "fire_hydrant" - }, - { - "key": "id", - "description": "Layer 'Map of hydrants' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "colour", - "description": "Layer 'Map of hydrants' shows and asks freeform values for key 'colour' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "colour", - "description": "Layer 'Map of hydrants' shows colour=yellow with a fixed text, namely 'The hydrant color is yellow.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yellow" - }, - { - "key": "colour", - "description": "Layer 'Map of hydrants' shows colour=red with a fixed text, namely 'The hydrant color is red.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "red" - }, - { - "key": "fire_hydrant:type", - "description": "Layer 'Map of hydrants' shows and asks freeform values for key 'fire_hydrant:type' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "fire_hydrant:type", - "description": "Layer 'Map of hydrants' shows fire_hydrant:type=pillar with a fixed text, namely 'Pillar type.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "pillar" - }, - { - "key": "fire_hydrant:type", - "description": "Layer 'Map of hydrants' shows fire_hydrant:type=pipe with a fixed text, namely 'Pipe type.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "pipe" - }, - { - "key": "fire_hydrant:type", - "description": "Layer 'Map of hydrants' shows fire_hydrant:type=wall with a fixed text, namely 'Wall type.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wall" - }, - { - "key": "fire_hydrant:type", - "description": "Layer 'Map of hydrants' shows fire_hydrant:type=underground with a fixed text, namely 'Underground type.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "underground" - }, - { - "key": "emergency", - "description": "Layer 'Map of hydrants' shows emergency=fire_hydrant with a fixed text, namely 'The hydrant is (fully or partially) working' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "fire_hydrant" - }, - { - "key": "disused:emergency", - "description": "Layer 'Map of hydrants' shows disused:emergency=fire_hydrant & emergency= with a fixed text, namely 'The hydrant is unavailable' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "fire_hydrant" - }, - { - "key": "emergency", - "description": "Layer 'Map of hydrants' shows disused:emergency=fire_hydrant & emergency= with a fixed text, namely 'The hydrant is unavailable' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key emergency.", - "value": "" - }, - { - "key": "removed:emergency", - "description": "Layer 'Map of hydrants' shows removed:emergency=fire_hydrant & emergency= with a fixed text, namely 'The hydrant has been removed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "fire_hydrant" - }, - { - "key": "emergency", - "description": "Layer 'Map of hydrants' shows removed:emergency=fire_hydrant & emergency= with a fixed text, namely 'The hydrant has been removed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key emergency.", - "value": "" - }, - { - "key": "fire_hydrant:diameter", - "description": "Layer 'Map of hydrants' shows and asks freeform values for key 'fire_hydrant:diameter' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "couplings", - "description": "Layer 'Map of hydrants' shows and asks freeform values for key 'couplings' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "couplings:type", - "description": "Layer 'Map of hydrants' shows and asks freeform values for key 'couplings:type' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "couplings:type", - "description": "Layer 'Map of hydrants' shows couplings:type=Storz with a fixed text, namely 'Storz coupling' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "Storz" - }, - { - "key": "couplings:type", - "description": "Layer 'Map of hydrants' shows couplings:type=UNI with a fixed text, namely 'UNI coupling' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "UNI" - }, - { - "key": "couplings:type", - "description": "Layer 'Map of hydrants' shows couplings:type=Barcelona with a fixed text, namely 'Barcelona coupling' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "Barcelona" - }, - { - "key": "couplings:diameters", - "description": "Layer 'Map of hydrants' shows and asks freeform values for key 'couplings:diameters' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "image", - "description": "The layer 'Map of hydrants allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Map of hydrants allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Map of hydrants allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Map of hydrants allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Ice cream parlors showing features with this tag", - "value": "ice_cream" - }, - { - "key": "id", - "description": "Layer 'Ice cream parlors' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Ice cream parlors' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Ice cream parlors' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Ice cream parlors' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "phone", - "description": "Layer 'Ice cream parlors' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Ice cream parlors' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Ice cream parlors' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Ice cream parlors' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Ice cream parlors' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Ice cream parlors' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Ice cream parlors' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Ice cream parlors' shows diet:sugar_free=only with a fixed text, namely 'This shop only sells sugar free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "only" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Ice cream parlors' shows diet:sugar_free=yes with a fixed text, namely 'This shop has a big sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Ice cream parlors' shows diet:sugar_free=limited with a fixed text, namely 'This shop has a limited sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Ice cream parlors' shows diet:sugar_free=no with a fixed text, namely 'This shop has no sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Ice cream parlors' shows diet:lactose_free=only with a fixed text, namely 'Only sells lactose free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "only" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Ice cream parlors' shows diet:lactose_free=yes with a fixed text, namely 'Big lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Ice cream parlors' shows diet:lactose_free=limited with a fixed text, namely 'Limited lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Ice cream parlors' shows diet:lactose_free=no with a fixed text, namely 'No lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Ice cream parlors' shows diet:gluten_free=only with a fixed text, namely 'This shop only sells gluten free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "only" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Ice cream parlors' shows diet:gluten_free=yes with a fixed text, namely 'This shop has a big gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Ice cream parlors' shows diet:gluten_free=limited with a fixed text, namely 'This shop has a limited gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Ice cream parlors' shows diet:gluten_free=no with a fixed text, namely 'This shop has no gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "diet:vegan", - "description": "Layer 'Ice cream parlors' shows diet:vegan=only with a fixed text, namely 'This place only sells vegan products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "only" - }, - { - "key": "diet:vegan", - "description": "Layer 'Ice cream parlors' shows diet:vegan=yes with a fixed text, namely 'This shop has a big vegan offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "diet:vegan", - "description": "Layer 'Ice cream parlors' shows diet:vegan=limited with a fixed text, namely 'This shop has a limited vegan offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "diet:vegan", - "description": "Layer 'Ice cream parlors' shows diet:vegan=no with a fixed text, namely 'This shop has no vegan offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "payment:cash", - "description": "Layer 'Ice cream parlors' shows payment:cash=yes with a fixed text, namely 'Cash is accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:cards", - "description": "Layer 'Ice cream parlors' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:qr_code", - "description": "Layer 'Ice cream parlors' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "wheelchair", - "description": "Layer 'Ice cream parlors' shows wheelchair=designated with a fixed text, namely 'This place is specially adapted for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "designated" - }, - { - "key": "wheelchair", - "description": "Layer 'Ice cream parlors' shows wheelchair=yes with a fixed text, namely 'This place is easily reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "wheelchair", - "description": "Layer 'Ice cream parlors' shows wheelchair=limited with a fixed text, namely 'It is possible to reach this place in a wheelchair, but it is not easy' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "wheelchair", - "description": "Layer 'Ice cream parlors' shows wheelchair=no with a fixed text, namely 'This place is not reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "indoor", - "description": "The MapComplete theme Personal theme has a layer Indoors showing features with this tag", - "value": "room" - }, - { - "key": "indoor", - "description": "The MapComplete theme Personal theme has a layer Indoors showing features with this tag", - "value": "area" - }, - { - "key": "indoor", - "description": "The MapComplete theme Personal theme has a layer Indoors showing features with this tag", - "value": "wall" - }, - { - "key": "indoor", - "description": "The MapComplete theme Personal theme has a layer Indoors showing features with this tag", - "value": "door" - }, - { - "key": "indoor", - "description": "The MapComplete theme Personal theme has a layer Indoors showing features with this tag", - "value": "level" - }, - { - "key": "id", - "description": "Layer 'Indoors' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Indoors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Indoors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Indoors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Indoors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "level", - "description": "Layer 'Indoors' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Indoors' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Indoors' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Indoors' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Indoors' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Indoors' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "ref", - "description": "Layer 'Indoors' shows and asks freeform values for key 'ref' (in the mapcomplete.org theme 'Personal theme') (This is only shown if indoor=room | indoor=area | indoor=corridor)" - }, - { - "key": "name", - "description": "Layer 'Indoors' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme') (This is only shown if indoor=room | indoor=area | indoor=corridor)" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=administration with a fixed text, namely 'This is a administrative room' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "administration" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=auditorium with a fixed text, namely 'This is a auditorium' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "auditorium" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=bedroom with a fixed text, namely 'This is a bedroom' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "bedroom" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=chapel with a fixed text, namely 'This is a chapel' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "chapel" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=class with a fixed text, namely 'This is a classroom' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "class" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=classroom with a fixed text, namely 'This is a classroom' (in the mapcomplete.org theme 'Personal theme')", - "value": "classroom" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=computer with a fixed text, namely 'This is a computer room' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "computer" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=conference with a fixed text, namely 'This is a conference room' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "conference" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=crypt with a fixed text, namely 'This is a crypt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "crypt" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=kitchen with a fixed text, namely 'This is a kitchen' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "kitchen" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=laboratory with a fixed text, namely 'This is a laboratory' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "laboratory" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=library with a fixed text, namely 'This is a library' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "library" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=locker with a fixed text, namely 'This is a locker room' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "locker" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=nursery with a fixed text, namely 'This is a nursery' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "nursery" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=office with a fixed text, namely 'This is an office' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "office" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=printer with a fixed text, namely 'This is a copy room' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "printer" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=prison_cell with a fixed text, namely 'This is a prison_cell' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "prison_cell" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=restaurant with a fixed text, namely 'This is a restaurant' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "restaurant" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=security_check with a fixed text, namely 'This is a room to perform security checks' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "security_check" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=sport with a fixed text, namely 'This is a sport room' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sport" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=storage with a fixed text, namely 'This is a storage room' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "storage" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=technical with a fixed text, namely 'This is a technical room' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "technical" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=toilets with a fixed text, namely 'These are toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "toilets" - }, - { - "key": "room", - "description": "Layer 'Indoors' shows room=waiting with a fixed text, namely 'This is a waiting room' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "waiting" - }, - { - "key": "capacity", - "description": "Layer 'Indoors' shows and asks freeform values for key 'capacity' (in the mapcomplete.org theme 'Personal theme') (This is only shown if room=waiting | room=restaurant | room=office | room=nursery | room=conference | room=auditorium | room=chapel | room=bedroom | room=classroom)" - }, - { - "key": "name:etymology:wikidata", - "description": "Layer 'Indoors' shows and asks freeform values for key 'name:etymology:wikidata' (in the mapcomplete.org theme 'Personal theme') (This is only shown if name:etymology!=unknown & name~.+)" - }, - { - "key": "access", - "description": "Layer 'Indoors' shows and asks freeform values for key 'access' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets)" - }, - { - "key": "access", - "description": "Layer 'Indoors' shows access=yes with a fixed text, namely 'Public access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets)", - "value": "yes" - }, - { - "key": "access", - "description": "Layer 'Indoors' shows access=customers with a fixed text, namely 'Only access to customers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets)", - "value": "customers" - }, - { - "key": "access", - "description": "Layer 'Indoors' shows access=no with a fixed text, namely 'Not accessible' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets)", - "value": "no" - }, - { - "key": "access", - "description": "Layer 'Indoors' shows access=key with a fixed text, namely 'Accessible, but one has to ask a key to enter' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets)", - "value": "key" - }, - { - "key": "access", - "description": "Layer 'Indoors' shows access=public with a fixed text, namely 'Public access' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets)", - "value": "public" - }, - { - "key": "fee", - "description": "Layer 'Indoors' shows fee=yes with a fixed text, namely 'These are paid toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets & access!=no)", - "value": "yes" - }, - { - "key": "fee", - "description": "Layer 'Indoors' shows fee=no with a fixed text, namely 'Free to use' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets & access!=no)", - "value": "no" - }, - { - "key": "charge", - "description": "Layer 'Indoors' shows and asks freeform values for key 'charge' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets & fee=yes)" - }, - { - "key": "payment:cash", - "description": "Layer 'Indoors' shows payment:cash=yes with a fixed text, namely 'Cash is accepted here' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets & fee=yes)", - "value": "yes" - }, - { - "key": "payment:cards", - "description": "Layer 'Indoors' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted here' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets & fee=yes)", - "value": "yes" - }, - { - "key": "payment:qr_code", - "description": "Layer 'Indoors' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets & fee=yes)", - "value": "yes" - }, - { - "key": "payment:coins", - "description": "Layer 'Indoors' shows payment:coins=yes with a fixed text, namely 'Coins are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets & fee=yes)", - "value": "yes" - }, - { - "key": "payment:notes", - "description": "Layer 'Indoors' shows payment:notes=yes with a fixed text, namely 'Bank notes are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets & fee=yes)", - "value": "yes" - }, - { - "key": "payment:debit_cards", - "description": "Layer 'Indoors' shows payment:debit_cards=yes with a fixed text, namely 'Debit cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets & fee=yes)", - "value": "yes" - }, - { - "key": "payment:credit_cards", - "description": "Layer 'Indoors' shows payment:credit_cards=yes with a fixed text, namely 'Credit cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets & fee=yes)", - "value": "yes" - }, - { - "key": "opening_hours", - "description": "Layer 'Indoors' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets & access!=no)" - }, - { - "key": "opening_hours", - "description": "Layer 'Indoors' shows opening_hours=24/7 with a fixed text, namely '24/7 opened (including holidays)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets & access!=no)", - "value": "24/7" - }, - { - "key": "opening_hours", - "description": "Layer 'Indoors' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets & access!=no)", - "value": "closed" - }, - { - "key": "wheelchair", - "description": "Layer 'Indoors' shows wheelchair=yes with a fixed text, namely 'There is a dedicated toilet for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets)", - "value": "yes" - }, - { - "key": "wheelchair", - "description": "Layer 'Indoors' shows wheelchair=no with a fixed text, namely 'No wheelchair access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets)", - "value": "no" - }, - { - "key": "wheelchair", - "description": "Layer 'Indoors' shows wheelchair=designated with a fixed text, namely 'There is only a dedicated toilet for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets)", - "value": "designated" - }, - { - "key": "door:width", - "description": "Layer 'Indoors' shows and asks freeform values for key 'door:width' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets & (wheelchair=yes | wheelchair=designated))" - }, - { - "key": "toilets:position", - "description": "Layer 'Indoors' shows toilets:position=seated with a fixed text, namely 'There are only seated toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets)", - "value": "seated" - }, - { - "key": "toilets:position", - "description": "Layer 'Indoors' shows toilets:position=urinal with a fixed text, namely 'There are only urinals here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets)", - "value": "urinal" - }, - { - "key": "toilets:position", - "description": "Layer 'Indoors' shows toilets:position=squat with a fixed text, namely 'There are only squat toilets here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets)", - "value": "squat" - }, - { - "key": "toilets:position", - "description": "Layer 'Indoors' shows toilets:position=seated;urinal with a fixed text, namely 'Both seated toilets and urinals are available here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets)", - "value": "seated;urinal" - }, - { - "key": "changing_table", - "description": "Layer 'Indoors' shows changing_table=yes with a fixed text, namely 'A changing table is available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets)", - "value": "yes" - }, - { - "key": "changing_table", - "description": "Layer 'Indoors' shows changing_table=no with a fixed text, namely 'No changing table is available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets)", - "value": "no" - }, - { - "key": "changing_table:location", - "description": "Layer 'Indoors' shows and asks freeform values for key 'changing_table:location' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets & changing_table=yes)" - }, - { - "key": "changing_table:location", - "description": "Layer 'Indoors' shows changing_table:location=female_toilet with a fixed text, namely 'A changing table is in the toilet for women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets & changing_table=yes)", - "value": "female_toilet" - }, - { - "key": "changing_table:location", - "description": "Layer 'Indoors' shows changing_table:location=male_toilet with a fixed text, namely 'A changing table is in the toilet for men' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets & changing_table=yes)", - "value": "male_toilet" - }, - { - "key": "changing_table:location", - "description": "Layer 'Indoors' shows changing_table:location=wheelchair_toilet with a fixed text, namely 'A changing table is in the toilet for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets & changing_table=yes)", - "value": "wheelchair_toilet" - }, - { - "key": "changing_table:location", - "description": "Layer 'Indoors' shows changing_table:location=dedicated_room with a fixed text, namely 'A changing table is in a dedicated room' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets & changing_table=yes)", - "value": "dedicated_room" - }, - { - "key": "toilets:handwashing", - "description": "Layer 'Indoors' shows toilets:handwashing=yes with a fixed text, namely 'These toilets have a sink to wash your hands' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets)", - "value": "yes" - }, - { - "key": "toilets:handwashing", - "description": "Layer 'Indoors' shows toilets:handwashing=no with a fixed text, namely 'These toilets don't have a sink to wash your hands' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets)", - "value": "no" - }, - { - "key": "toilets:paper_supplied", - "description": "Layer 'Indoors' shows toilets:paper_supplied=yes with a fixed text, namely 'This toilet is equipped with toilet paper' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets & toilets:position!=urinal)", - "value": "yes" - }, - { - "key": "toilets:paper_supplied", - "description": "Layer 'Indoors' shows toilets:paper_supplied=no with a fixed text, namely 'You have to bring your own toilet paper to this toilet' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=toilets & toilets:position!=urinal)", - "value": "no" - }, - { - "key": "information", - "description": "The MapComplete theme Personal theme has a layer Information boards showing features with this tag", - "value": "board" - }, - { - "key": "id", - "description": "Layer 'Information boards' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Information boards allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Information boards allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Information boards allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Information boards allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "barrier", - "description": "The MapComplete theme Personal theme has a layer Kerbs showing features with this tag", - "value": "kerb" - }, - { - "key": "id", - "description": "Layer 'Kerbs' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Kerbs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Kerbs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Kerbs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Kerbs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "kerb", - "description": "Layer 'Kerbs' shows kerb=raised with a fixed text, namely 'This kerb is raised (>3 cm)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _geometry:type=Point)", - "value": "raised" - }, - { - "key": "kerb", - "description": "Layer 'Kerbs' shows kerb=lowered with a fixed text, namely 'This kerb is lowered (~3 cm)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _geometry:type=Point)", - "value": "lowered" - }, - { - "key": "kerb", - "description": "Layer 'Kerbs' shows kerb=flush with a fixed text, namely 'This kerb is flush (~0cm)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _geometry:type=Point)", - "value": "flush" - }, - { - "key": "kerb", - "description": "Layer 'Kerbs' shows kerb=no with a fixed text, namely 'There is no kerb here' (in the mapcomplete.org theme 'Personal theme') (This is only shown if _geometry:type=Point)", - "value": "no" - }, - { - "key": "kerb", - "description": "Layer 'Kerbs' shows kerb=yes with a fixed text, namely 'There is a kerb of unknown height' (in the mapcomplete.org theme 'Personal theme') (This is only shown if _geometry:type=Point)", - "value": "yes" - }, - { - "key": "tactile_paving", - "description": "Layer 'Kerbs' shows tactile_paving=yes with a fixed text, namely 'This kerb has tactile paving.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _geometry:type=Point)", - "value": "yes" - }, - { - "key": "tactile_paving", - "description": "Layer 'Kerbs' shows tactile_paving=no with a fixed text, namely 'This kerb does not have tactile paving.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _geometry:type=Point)", - "value": "no" - }, - { - "key": "tactile_paving", - "description": "Layer 'Kerbs' shows tactile_paving=incorrect with a fixed text, namely 'This kerb has tactile paving, but it is incorrect.' (in the mapcomplete.org theme 'Personal theme') (This is only shown if _geometry:type=Point)", - "value": "incorrect" - }, - { - "key": "kerb:height", - "description": "Layer 'Kerbs' shows and asks freeform values for key 'kerb:height' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "kerb:height", - "description": "Layer 'Kerbs' shows kerb:height=0 with a fixed text, namely 'This kerb is flush and is lower than 1cm.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "0" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Kindergartens and childcare showing features with this tag", - "value": "childcare" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Kindergartens and childcare showing features with this tag", - "value": "kindergarten" - }, - { - "key": "isced:level:2011", - "description": "The MapComplete theme Personal theme has a layer Kindergartens and childcare showing features with this tag", - "value": "early_childhood" - }, - { - "key": "id", - "description": "Layer 'Kindergartens and childcare' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "amenity", - "description": "Layer 'Kindergartens and childcare' shows amenity=kindergarten with a fixed text, namely 'This is a kindergarten (also known as preschool) where small kids receive early education.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "kindergarten" - }, - { - "key": "amenity", - "description": "Layer 'Kindergartens and childcare' shows amenity=childcare with a fixed text, namely 'This is a childcare facility, such as a nursery or daycare where small kids are looked after. They do not offer an education and are ofter run as private businesses' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "childcare" - }, - { - "key": "name", - "description": "Layer 'Kindergartens and childcare' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Kindergartens and childcare' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Kindergartens and childcare' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Kindergartens and childcare' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Kindergartens and childcare' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Kindergartens and childcare' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'Kindergartens and childcare' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Kindergartens and childcare' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Kindergartens and childcare' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=childcare)" - }, - { - "key": "opening_hours", - "description": "Layer 'Kindergartens and childcare' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=childcare)", - "value": "closed" - }, - { - "key": "capacity", - "description": "Layer 'Kindergartens and childcare' shows and asks freeform values for key 'capacity' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "man_made", - "description": "The MapComplete theme Personal theme has a layer lighthouse showing features with this tag", - "value": "lighthouse" - }, - { - "key": "id", - "description": "Layer 'lighthouse' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'lighthouse allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'lighthouse allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'lighthouse allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'lighthouse allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "Layer 'lighthouse' shows and asks freeform values for key 'wikidata' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "wikipedia", - "description": "Layer 'lighthouse' shows wikipedia~.+ with a fixed text, namely '{wikipedia():max-height:25rem}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "wikidata", - "description": "Layer 'lighthouse' shows wikidata= with a fixed text, namely 'No Wikipedia page has been linked yet' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key wikidata.", - "value": "" - }, - { - "key": "height", - "description": "Layer 'lighthouse' shows and asks freeform values for key 'height' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Love hotels showing features with this tag", - "value": "love_hotel" - }, - { - "key": "id", - "description": "Layer 'Love hotels' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Love hotels allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Love hotels allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Love hotels allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Love hotels allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Love hotels' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'Love hotels' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Love hotels' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Love hotels' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Love hotels' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Love hotels' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Love hotels' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Love hotels' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "tourism", - "description": "The MapComplete theme Personal theme has a layer Maps showing features with this tag", - "value": "map" - }, - { - "key": "information", - "description": "The MapComplete theme Personal theme has a layer Maps showing features with this tag", - "value": "map" - }, - { - "key": "id", - "description": "Layer '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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Maps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Maps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Maps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Maps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "map_type", - "description": "Layer 'Maps' shows map_type=topo with a fixed text, namely 'Topographical map

The map contains contour lines.

' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "topo" - }, - { - "key": "map_type", - "description": "Layer 'Maps' shows map_type=street with a fixed text, namely 'A map with all streets or ways of an area.

The streets are mostly named; the angles, distances etc. are accurate

' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "street" - }, - { - "key": "map_type", - "description": "Layer 'Maps' shows map_type=scheme with a fixed text, namely 'This is a schematic map.

A sketched map with only important ways and POIs. The angles, distances etc. are merely illustrative, not accurate.

' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "scheme" - }, - { - "key": "map_type", - "description": "Layer 'Maps' shows map_type=toposcope with a fixed text, namely 'This is a toposcope.

A marker erected on high places which indicates the direction to notable landscape features which can be seen from that point

' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "toposcope" - }, - { - "key": "map_size", - "description": "Layer 'Maps' shows map_size=building with a fixed text, namely 'A map of the rooms within a building' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "building" - }, - { - "key": "map_size", - "description": "Layer 'Maps' shows map_size=site with a fixed text, namely 'A map of special site, like of a historical castle, a park, a campus, a forest, ....' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "site" - }, - { - "key": "map_size", - "description": "Layer 'Maps' shows map_size=village with a fixed text, namely 'A map showing the village or town' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "village" - }, - { - "key": "map_size", - "description": "Layer 'Maps' shows map_size=city with a fixed text, namely ' A map of a city' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "city" - }, - { - "key": "map_size", - "description": "Layer 'Maps' shows map_size=region with a fixed text, namely 'The map of an entire region, showing multiple cities and villages' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "region" - }, - { - "key": "map_source", - "description": "Layer 'Maps' shows and asks freeform values for key 'map_source' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "map_source", - "description": "Layer 'Maps' shows map_source=OpenStreetMap & not:map_source= with a fixed text, namely 'This map is based on OpenStreetMap' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "OpenStreetMap" - }, - { - "key": "not:map_source", - "description": "Layer 'Maps' shows map_source=OpenStreetMap & not:map_source= with a fixed text, namely 'This map is based on OpenStreetMap' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key not:map_source.", - "value": "" - }, - { - "key": "map_source:attribution", - "description": "Layer 'Maps' shows map_source:attribution=yes with a fixed text, namely 'OpenStreetMap is clearly attributed, including the ODBL-license' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if map_source~^((O|)pen(S|s)treet(M|m)ap)$ | map_source=osm | map_source=OSM)", - "value": "yes" - }, - { - "key": "map_source:attribution", - "description": "Layer 'Maps' shows map_source:attribution=incomplete with a fixed text, namely 'OpenStreetMap is clearly attributed, but the license is not mentioned' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if map_source~^((O|)pen(S|s)treet(M|m)ap)$ | map_source=osm | map_source=OSM)", - "value": "incomplete" - }, - { - "key": "map_source:attribution", - "description": "Layer 'Maps' shows map_source:attribution=sticker with a fixed text, namely 'OpenStreetMap wasn't mentioned, but someone put an OpenStreetMap-sticker on it' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if map_source~^((O|)pen(S|s)treet(M|m)ap)$ | map_source=osm | map_source=OSM)", - "value": "sticker" - }, - { - "key": "map_source:attribution", - "description": "Layer 'Maps' shows map_source:attribution=none with a fixed text, namely 'There is no attribution at all' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if map_source~^((O|)pen(S|s)treet(M|m)ap)$ | map_source=osm | map_source=OSM)", - "value": "none" - }, - { - "key": "map_source:attribution", - "description": "Layer 'Maps' shows map_source:attribution=no with a fixed text, namely 'There is no attribution at all' (in the mapcomplete.org theme 'Personal theme') (This is only shown if map_source~^((O|)pen(S|s)treet(M|m)ap)$ | map_source=osm | map_source=OSM)", - "value": "no" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", - "value": "residential" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", - "value": "living_street" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", - "value": "motorway" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", - "value": "tertiary" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", - "value": "unclassified" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", - "value": "secondary" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", - "value": "primary" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", - "value": "trunk" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", - "value": "motorway" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", - "value": "tertiary_link" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", - "value": "secondary_link" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", - "value": "primary_link" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", - "value": "trunk_link" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Maxspeed showing features with this tag", - "value": "motorway_link" - }, - { - "key": "id", - "description": "Layer 'Maxspeed' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "maxspeed", - "description": "Layer 'Maxspeed' shows and asks freeform values for key 'maxspeed' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "highway", - "description": "Layer 'Maxspeed' shows highway=living_street & _country=be with a fixed text, namely 'This is a living street, which has a maxspeed of 20km/h' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "living_street" - }, - { - "key": "memorial", - "description": "The MapComplete theme Personal theme has a layer Memorials showing features with this tag" - }, - { - "key": "historic", - "description": "The MapComplete theme Personal theme has a layer Memorials showing features with this tag", - "value": "memorial" - }, - { - "key": "id", - "description": "Layer 'Memorials' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Memorials allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Memorials allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Memorials allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Memorials allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "memorial", - "description": "Layer 'Memorials' shows and asks freeform values for key 'memorial' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "memorial", - "description": "Layer 'Memorials' shows memorial=statue with a fixed text, namely 'This is a statue' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "statue" - }, - { - "key": "memorial", - "description": "Layer 'Memorials' shows memorial=plaque with a fixed text, namely 'This is a plaque' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "plaque" - }, - { - "key": "memorial", - "description": "Layer 'Memorials' shows memorial=bench with a fixed text, namely 'This is a commemorative bench' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "bench" - }, - { - "key": "memorial", - "description": "Layer 'Memorials' shows memorial=ghost_bike with a fixed text, namely 'This is a ghost bike - a bicycle painted white to remember a cyclist whom deceased because of a car crash' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "ghost_bike" - }, - { - "key": "memorial", - "description": "Layer 'Memorials' shows memorial=stolperstein with a fixed text, namely 'This is a stolperstein (stumbing stone)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "stolperstein" - }, - { - "key": "memorial", - "description": "Layer 'Memorials' shows memorial=stele with a fixed text, namely 'This is a stele' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "stele" - }, - { - "key": "memorial", - "description": "Layer 'Memorials' shows memorial=stone with a fixed text, namely 'This is a memorial stone' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "stone" - }, - { - "key": "memorial", - "description": "Layer 'Memorials' shows memorial=bust with a fixed text, namely 'This is a bust' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "bust" - }, - { - "key": "memorial", - "description": "Layer 'Memorials' shows memorial=sculpture with a fixed text, namely 'This is a sculpture' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sculpture" - }, - { - "key": "memorial", - "description": "Layer 'Memorials' shows memorial=obelisk with a fixed text, namely 'This is an obelisk' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "obelisk" - }, - { - "key": "memorial", - "description": "Layer 'Memorials' shows memorial=cross with a fixed text, namely 'This is a cross' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "cross" - }, - { - "key": "memorial", - "description": "Layer 'Memorials' shows memorial=blue_plaque with a fixed text, namely 'This is a blue plaque' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "blue_plaque" - }, - { - "key": "memorial", - "description": "Layer 'Memorials' shows memorial=tank with a fixed text, namely 'This is a historic tank, permanently placed in public space as memorial' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "tank" - }, - { - "key": "memorial", - "description": "Layer 'Memorials' shows memorial=tree with a fixed text, namely 'This is a memorial tree' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "tree" - }, - { - "key": "historic", - "description": "Layer 'Memorials' shows historic=tomb with a fixed text, namely 'This is a gravestone; the person is buried here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "tomb" - }, - { - "key": "inscription", - "description": "Layer 'Memorials' shows and asks freeform values for key 'inscription' (in the mapcomplete.org theme 'Personal theme') (This is only shown if memorial!=bench)" - }, - { - "key": "not:inscription", - "description": "Layer 'Memorials' shows not:inscription=yes with a fixed text, namely 'This memorial does not have an inscription' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if memorial!=bench)", - "value": "yes" - }, - { - "key": "wikidata", - "description": "Layer 'Memorials' shows and asks freeform values for key 'wikidata' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "subject:wikidata", - "description": "Layer 'Memorials' shows and asks freeform values for key 'subject:wikidata' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "start_date", - "description": "Layer 'Memorials' shows and asks freeform values for key 'start_date' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "backrest", - "description": "Layer 'Memorials' shows backrest=yes & two_sided=yes with a fixed text, namely 'This bench is two-sided and shares the backrest' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "yes" - }, - { - "key": "two_sided", - "description": "Layer 'Memorials' shows backrest=yes & two_sided=yes with a fixed text, namely 'This bench is two-sided and shares the backrest' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "yes" - }, - { - "key": "backrest", - "description": "Layer 'Memorials' shows backrest=yes with a fixed text, namely 'This bench does have a backrest' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "yes" - }, - { - "key": "backrest", - "description": "Layer 'Memorials' shows backrest=no with a fixed text, namely 'This bench does not have a backrest' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "no" - }, - { - "key": "armrest", - "description": "Layer 'Memorials' shows armrest=yes with a fixed text, namely 'This bench does have one or more armrests' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "yes" - }, - { - "key": "armrest", - "description": "Layer 'Memorials' shows armrest=no with a fixed text, namely 'This bench does not have any armrests' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "no" - }, - { - "key": "seats", - "description": "Layer 'Memorials' shows and asks freeform values for key 'seats' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)" - }, - { - "key": "seats:separated", - "description": "Layer 'Memorials' shows seats:separated=no with a fixed text, namely 'This bench does not have separated seats' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "no" - }, - { - "key": "material", - "description": "Layer 'Memorials' shows and asks freeform values for key 'material' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)" - }, - { - "key": "material", - "description": "Layer 'Memorials' shows material=wood with a fixed text, namely 'The seating is made from wood' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "wood" - }, - { - "key": "material", - "description": "Layer 'Memorials' shows material=metal with a fixed text, namely 'The seating is made from metal' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "metal" - }, - { - "key": "material", - "description": "Layer 'Memorials' shows material=stone with a fixed text, namely 'The seating is made from stone' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "stone" - }, - { - "key": "material", - "description": "Layer 'Memorials' shows material=concrete with a fixed text, namely 'The seating is made from concrete' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "concrete" - }, - { - "key": "material", - "description": "Layer 'Memorials' shows material=plastic with a fixed text, namely 'The seating is made from plastic' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "plastic" - }, - { - "key": "material", - "description": "Layer 'Memorials' shows material=steel with a fixed text, namely 'The seating is made from steel' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "steel" - }, - { - "key": "direction", - "description": "Layer 'Memorials' shows and asks freeform values for key 'direction' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench & two_sided!=yes)" - }, - { - "key": "colour", - "description": "Layer 'Memorials' shows and asks freeform values for key 'colour' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)" - }, - { - "key": "colour", - "description": "Layer 'Memorials' shows colour=brown with a fixed text, namely 'Colour: brown' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "brown" - }, - { - "key": "colour", - "description": "Layer 'Memorials' shows colour=green with a fixed text, namely 'Colour: green' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "green" - }, - { - "key": "colour", - "description": "Layer 'Memorials' shows colour=gray with a fixed text, namely 'Colour: gray' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "gray" - }, - { - "key": "colour", - "description": "Layer 'Memorials' shows colour=white with a fixed text, namely 'Colour: white' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "white" - }, - { - "key": "colour", - "description": "Layer 'Memorials' shows colour=red with a fixed text, namely 'Colour: red' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "red" - }, - { - "key": "colour", - "description": "Layer 'Memorials' shows colour=black with a fixed text, namely 'Colour: black' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "black" - }, - { - "key": "colour", - "description": "Layer 'Memorials' shows colour=blue with a fixed text, namely 'Colour: blue' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "blue" - }, - { - "key": "colour", - "description": "Layer 'Memorials' shows colour=yellow with a fixed text, namely 'Colour: yellow' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "yellow" - }, - { - "key": "survey:date", - "description": "Layer 'Memorials' shows and asks freeform values for key 'survey:date' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)" - }, - { - "key": "survey:date", - "description": "Layer 'Memorials' shows survey:date= with a fixed text, namely 'Surveyed today!' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key survey:date. (This is only shown if amenity=bench)", - "value": "" - }, - { - "key": "inscription", - "description": "Layer 'Memorials' shows and asks freeform values for key 'inscription' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)" - }, - { - "key": "not:inscription", - "description": "Layer 'Memorials' shows not:inscription=yes with a fixed text, namely 'This bench does not have an inscription' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench)", - "value": "yes" - }, - { - "key": "inscription", - "description": "Layer 'Memorials' shows inscription= with a fixed text, namely 'This bench probably does not not have an inscription' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key inscription. (This is only shown if amenity=bench)", - "value": "" - }, - { - "key": "historic", - "description": "Layer 'Memorials' shows historic=memorial with a fixed text, namely 'This bench is a memorial for someone or something' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench & (historic=memorial | inscription~.+ | memorial=bench | tourism=artwork))", - "value": "memorial" - }, - { - "key": "historic", - "description": "Layer 'Memorials' shows historic= & not:historic=memorial with a fixed text, namely 'This bench is a not a memorial for someone or something' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key historic. (This is only shown if amenity=bench & (historic=memorial | inscription~.+ | memorial=bench | tourism=artwork))", - "value": "" - }, - { - "key": "not:historic", - "description": "Layer 'Memorials' shows historic= & not:historic=memorial with a fixed text, namely 'This bench is a not a memorial for someone or something' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=bench & (historic=memorial | inscription~.+ | memorial=bench | tourism=artwork))", - "value": "memorial" - }, - { - "key": "emergency", - "description": "The MapComplete theme Personal theme has a layer Mountain rescue stations showing features with this tag", - "value": "mountain_rescue" - }, - { - "key": "id", - "description": "Layer 'Mountain rescue stations' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Mountain rescue stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Mountain rescue stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Mountain rescue stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Mountain rescue stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "leisure", - "description": "The MapComplete theme Personal theme has a layer Nature reserve showing features with this tag", - "value": "nature_reserve" - }, - { - "key": "boundary", - "description": "The MapComplete theme Personal theme has a layer Nature reserve showing features with this tag", - "value": "protected_area" - }, - { - "key": "id", - "description": "Layer 'Nature reserve' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Nature reserve allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Nature reserve allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Nature reserve allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Nature reserve allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "access:description", - "description": "Layer 'Nature reserve' shows and asks freeform values for key 'access:description' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "access", - "description": "Layer 'Nature reserve' shows access=yes & fee= with a fixed text, namely 'Publicly accessible' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "fee", - "description": "Layer 'Nature reserve' shows access=yes & fee= with a fixed text, namely 'Publicly accessible' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key fee.", - "value": "" - }, - { - "key": "access", - "description": "Layer 'Nature reserve' shows access=no & fee= with a fixed text, namely 'Not accessible' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "fee", - "description": "Layer 'Nature reserve' shows access=no & fee= with a fixed text, namely 'Not accessible' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key fee.", - "value": "" - }, - { - "key": "access", - "description": "Layer 'Nature reserve' shows access=private & fee= with a fixed text, namely 'Not accessible as this is a private area' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "private" - }, - { - "key": "fee", - "description": "Layer 'Nature reserve' shows access=private & fee= with a fixed text, namely 'Not accessible as this is a private area' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key fee.", - "value": "" - }, - { - "key": "access", - "description": "Layer 'Nature reserve' shows access=permissive & fee= with a fixed text, namely 'Accessible despite being a privately owned area' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "permissive" - }, - { - "key": "fee", - "description": "Layer 'Nature reserve' shows access=permissive & fee= with a fixed text, namely 'Accessible despite being a privately owned area' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key fee.", - "value": "" - }, - { - "key": "access", - "description": "Layer 'Nature reserve' shows access=guided & fee= with a fixed text, namely 'Only accessible with a guide or during organised activities' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "guided" - }, - { - "key": "fee", - "description": "Layer 'Nature reserve' shows access=guided & fee= with a fixed text, namely 'Only accessible with a guide or during organised activities' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key fee.", - "value": "" - }, - { - "key": "access", - "description": "Layer 'Nature reserve' shows access=yes & fee=yes with a fixed text, namely 'Accessible with fee' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "fee", - "description": "Layer 'Nature reserve' shows access=yes & fee=yes with a fixed text, namely 'Accessible with fee' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "operator", - "description": "Layer 'Nature reserve' shows and asks freeform values for key 'operator' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator", - "description": "Layer 'Nature reserve' shows operator=Natuurpunt with a fixed text, namely 'Operated by Natuurpunt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "Natuurpunt" - }, - { - "key": "operator", - "description": "Layer 'Nature reserve' shows operator~^((n|N)atuurpunt.*)$ with a fixed text, namely 'Operated by {operator}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator", - "description": "Layer 'Nature reserve' shows operator=Agentschap Natuur en Bos with a fixed text, namely 'Operated by Agentschap Natuur en Bos' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "Agentschap Natuur en Bos" - }, - { - "key": "name", - "description": "Layer 'Nature reserve' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme') (This is only shown if name:nl=)" - }, - { - "key": "noname", - "description": "Layer 'Nature reserve' shows noname=yes & name= with a fixed text, namely 'This area doesn't have a name' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if name:nl=)", - "value": "yes" - }, - { - "key": "name", - "description": "Layer 'Nature reserve' shows noname=yes & name= with a fixed text, namely 'This area doesn't have a name' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key name. (This is only shown if name:nl=)", - "value": "" - }, - { - "key": "dog", - "description": "Layer 'Nature reserve' shows dog=leashed with a fixed text, namely 'Dogs have to be leashed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if access=yes | access=permissive | access=guided)", - "value": "leashed" - }, - { - "key": "dog", - "description": "Layer 'Nature reserve' shows dog=no with a fixed text, namely 'No dogs allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if access=yes | access=permissive | access=guided)", - "value": "no" - }, - { - "key": "dog", - "description": "Layer 'Nature reserve' shows dog=yes with a fixed text, namely 'Dogs are allowed to roam freely' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if access=yes | access=permissive | access=guided)", - "value": "yes" - }, - { - "key": "website", - "description": "Layer 'Nature reserve' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Nature reserve' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "curator", - "description": "Layer 'Nature reserve' shows and asks freeform values for key 'curator' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Nature reserve' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'Nature reserve' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "description", - "description": "Layer 'Nature reserve' shows values with key 'description' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "description:0", - "description": "Layer 'Nature reserve' shows and asks freeform values for key 'description:0' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "wikidata", - "description": "Layer 'Nature reserve' shows and asks freeform values for key 'wikidata' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "wikipedia", - "description": "Layer 'Nature reserve' shows wikipedia~.+ with a fixed text, namely '{wikipedia():max-height:25rem}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "wikidata", - "description": "Layer 'Nature reserve' shows wikidata= with a fixed text, namely 'No Wikipedia page has been linked yet' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key wikidata.", - "value": "" - }, - { - "key": "tower:type", - "description": "The MapComplete theme Personal theme has a layer Observation towers showing features with this tag", - "value": "observation" - }, - { - "key": "id", - "description": "Layer 'Observation towers' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Observation towers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Observation towers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Observation towers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Observation towers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Observation towers' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "noname", - "description": "Layer 'Observation towers' shows noname=yes with a fixed text, namely 'This tower doesn't have a specific name' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "height", - "description": "Layer 'Observation towers' shows and asks freeform values for key 'height' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "access", - "description": "Layer 'Observation towers' shows access=yes with a fixed text, namely 'This tower is publicly accessible' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "access", - "description": "Layer 'Observation towers' shows access=guided with a fixed text, namely 'This tower can only be visited with a guide' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "guided" - }, - { - "key": "charge", - "description": "Layer 'Observation towers' shows and asks freeform values for key 'charge' (in the mapcomplete.org theme 'Personal theme') (This is only shown if access=yes | access=guided)" - }, - { - "key": "fee", - "description": "Layer 'Observation towers' shows fee=no & charge= with a fixed text, namely 'Free to visit' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if access=yes | access=guided)", - "value": "no" - }, - { - "key": "charge", - "description": "Layer 'Observation towers' shows fee=no & charge= with a fixed text, namely 'Free to visit' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key charge. (This is only shown if access=yes | access=guided)", - "value": "" - }, - { - "key": "payment:cash", - "description": "Layer 'Observation towers' shows payment:cash=yes with a fixed text, namely 'Cash is accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | charge~.+)", - "value": "yes" - }, - { - "key": "payment:cards", - "description": "Layer 'Observation towers' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | charge~.+)", - "value": "yes" - }, - { - "key": "payment:qr_code", - "description": "Layer 'Observation towers' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | charge~.+)", - "value": "yes" - }, - { - "key": "website", - "description": "Layer 'Observation towers' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Observation towers' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "step_count", - "description": "Layer 'Observation towers' shows and asks freeform values for key 'step_count' (in the mapcomplete.org theme 'Personal theme') (This is only shown if access=yes | access=guided)" - }, - { - "key": "elevator", - "description": "Layer 'Observation towers' shows elevator=yes with a fixed text, namely 'This tower has an elevator which takes visitors to the top' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if access=yes | access=guided)", - "value": "yes" - }, - { - "key": "elevator", - "description": "Layer 'Observation towers' shows elevator=no with a fixed text, namely 'This tower does not have an elevator' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if access=yes | access=guided)", - "value": "no" - }, - { - "key": "operator", - "description": "Layer 'Observation towers' shows and asks freeform values for key 'operator' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "wheelchair", - "description": "Layer 'Observation towers' shows wheelchair=designated with a fixed text, namely 'This place is specially adapted for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if elevator=yes & (access=yes | access=guided))", - "value": "designated" - }, - { - "key": "wheelchair", - "description": "Layer 'Observation towers' shows wheelchair=yes with a fixed text, namely 'This place is easily reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if elevator=yes & (access=yes | access=guided))", - "value": "yes" - }, - { - "key": "wheelchair", - "description": "Layer 'Observation towers' shows wheelchair=limited with a fixed text, namely 'It is possible to reach this place in a wheelchair, but it is not easy' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if elevator=yes & (access=yes | access=guided))", - "value": "limited" - }, - { - "key": "wheelchair", - "description": "Layer 'Observation towers' shows wheelchair=no with a fixed text, namely 'This place is not reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if elevator=yes & (access=yes | access=guided))", - "value": "no" - }, - { - "key": "wikidata", - "description": "Layer 'Observation towers' shows and asks freeform values for key 'wikidata' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "wikipedia", - "description": "Layer 'Observation towers' shows wikipedia~.+ with a fixed text, namely '{wikipedia():max-height:25rem}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "wikidata", - "description": "Layer 'Observation towers' shows wikidata= with a fixed text, namely 'No Wikipedia page has been linked yet' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key wikidata.", - "value": "" - }, - { - "key": "leisure", - "description": "The MapComplete theme Personal theme has a layer Outdoor Seating showing features with this tag", - "value": "outdoor_seating" - }, - { - "key": "id", - "description": "Layer 'Outdoor Seating' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Outdoor Seating allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Outdoor Seating allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Outdoor Seating allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Outdoor Seating allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "access", - "description": "Layer 'Outdoor Seating' shows access=yes with a fixed text, namely 'Anyone can use this outdoor seating area.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "access", - "description": "Layer 'Outdoor Seating' shows access=customers with a fixed text, namely 'Only customers can use this outdoor seating area.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "customers" - }, - { - "key": "access", - "description": "Layer 'Outdoor Seating' shows access=private with a fixed text, namely 'This outdoor seating area is private.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "private" - }, - { - "key": "seasonal", - "description": "Layer 'Outdoor Seating' shows seasonal=no with a fixed text, namely 'This outdoor seating area is available all year round.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "seasonal", - "description": "Layer 'Outdoor Seating' shows seasonal=spring with a fixed text, namely 'This outdoor seating area is available in spring.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "spring" - }, - { - "key": "seasonal", - "description": "Layer 'Outdoor Seating' shows seasonal=summer with a fixed text, namely 'This outdoor seating area is available in summer.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "summer" - }, - { - "key": "seasonal", - "description": "Layer 'Outdoor Seating' shows seasonal=autumn with a fixed text, namely 'This outdoor seating area is available in autumn.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "autumn" - }, - { - "key": "seasonal", - "description": "Layer 'Outdoor Seating' shows seasonal=winter with a fixed text, namely 'This outdoor seating area is available in winter.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "winter" - }, - { - "key": "seasonal", - "description": "Layer 'Outdoor Seating' shows seasonal=dry_season with a fixed text, namely 'This outdoor seating area is available in the dry season.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "dry_season" - }, - { - "key": "opening_hours", - "description": "Layer 'Outdoor Seating' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Outdoor Seating' shows opening_hours=24/7 with a fixed text, namely '24/7 opened (including holidays)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "24/7" - }, - { - "key": "opening_hours", - "description": "Layer 'Outdoor Seating' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "website", - "description": "Layer 'Outdoor Seating' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Outdoor Seating' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "internet_access", - "description": "Layer 'Outdoor Seating' shows internet_access=wlan with a fixed text, namely 'This place offers wireless internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wlan" - }, - { - "key": "internet_access", - "description": "Layer 'Outdoor Seating' shows internet_access=no with a fixed text, namely 'This place does not offer internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "internet_access", - "description": "Layer 'Outdoor Seating' shows internet_access=yes with a fixed text, namely 'This place offers internet access' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "internet_access", - "description": "Layer 'Outdoor Seating' shows internet_access=terminal with a fixed text, namely 'This place offers internet access via a terminal or computer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "terminal" - }, - { - "key": "internet_access", - "description": "Layer 'Outdoor Seating' shows internet_access=wired with a fixed text, namely 'This place offers wired internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wired" - }, - { - "key": "internet_access", - "description": "Layer 'Outdoor Seating' shows internet_access=terminal;wifi with a fixed text, namely 'This place offers both wireless internet and internet access via a terminal or computer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "terminal;wifi" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Outdoor Seating' shows internet_access:fee=yes with a fixed text, namely 'There is a fee for the internet access at this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "yes" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Outdoor Seating' shows internet_access:fee=no with a fixed text, namely 'Internet access is free at this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "no" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Outdoor Seating' shows internet_access:fee=customers with a fixed text, namely 'Internet access is free at this place, for customers only' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "customers" - }, - { - "key": "internet_access:ssid", - "description": "Layer 'Outdoor Seating' shows and asks freeform values for key 'internet_access:ssid' (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access~^(.*wlan.*)$)" - }, - { - "key": "internet_access:ssid", - "description": "Layer 'Outdoor Seating' shows internet_access:ssid=Telekom with a fixed text, namely 'Telekom' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access~^(.*wlan.*)$)", - "value": "Telekom" - }, - { - "key": "wheelchair", - "description": "Layer 'Outdoor Seating' shows wheelchair=designated with a fixed text, namely 'This place is specially adapted for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "designated" - }, - { - "key": "wheelchair", - "description": "Layer 'Outdoor Seating' shows wheelchair=yes with a fixed text, namely 'This place is easily reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "wheelchair", - "description": "Layer 'Outdoor Seating' shows wheelchair=limited with a fixed text, namely 'It is possible to reach this place in a wheelchair, but it is not easy' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "wheelchair", - "description": "Layer 'Outdoor Seating' shows wheelchair=no with a fixed text, namely 'This place is not reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "heating", - "description": "Layer 'Outdoor Seating' shows heating=yes with a fixed text, namely 'This outdoor seating area is heated.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "heating", - "description": "Layer 'Outdoor Seating' shows heating=no with a fixed text, namely 'This outdoor seating area is not heated.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "covered", - "description": "Layer 'Outdoor Seating' shows covered=yes with a fixed text, namely 'This outdoor seating area is covered.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "covered", - "description": "Layer 'Outdoor Seating' shows covered=no with a fixed text, namely 'This outdoor seating area is not covered.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "smoking", - "description": "Layer 'Outdoor Seating' shows smoking=yes with a fixed text, namely 'Smoking is allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _country!~^(al|be)$)", - "value": "yes" - }, - { - "key": "smoking", - "description": "Layer 'Outdoor Seating' shows smoking=no with a fixed text, namely 'Smoking is not allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _country!~^(al|be)$)", - "value": "no" - }, - { - "key": "smoking", - "description": "Layer 'Outdoor Seating' shows smoking=outside with a fixed text, namely 'Smoking is allowed outside.' (in the mapcomplete.org theme 'Personal theme') (This is only shown if _country!~^(al|be)$)", - "value": "outside" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Parcel Lockers showing features with this tag", - "value": "parcel_locker" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Parcel Lockers showing features with this tag", - "value": "vending_machine" - }, - { - "key": "vending", - "description": "The MapComplete theme Personal theme has a layer Parcel Lockers showing features with this tag", - "value": "parcel_pickup;parcel_mail_in" - }, - { - "key": "id", - "description": "Layer 'Parcel Lockers' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Parcel Lockers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Parcel Lockers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Parcel Lockers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Parcel Lockers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "brand", - "description": "Layer 'Parcel Lockers' shows and asks freeform values for key 'brand' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator", - "description": "Layer 'Parcel Lockers' shows and asks freeform values for key 'operator' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Parcel Lockers' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Parcel Lockers' shows opening_hours=24/7 with a fixed text, namely '24/7 opened (including holidays)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "24/7" - }, - { - "key": "opening_hours", - "description": "Layer 'Parcel Lockers' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "ref", - "description": "Layer 'Parcel Lockers' shows and asks freeform values for key 'ref' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "parcel_mail_in", - "description": "Layer 'Parcel Lockers' shows parcel_mail_in=yes with a fixed text, namely 'You can send packages from this parcel locker' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=parcel_locker)", - "value": "yes" - }, - { - "key": "parcel_mail_in", - "description": "Layer 'Parcel Lockers' shows parcel_mail_in=no with a fixed text, namely 'You can't send packages from this parcel locker' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=parcel_locker)", - "value": "no" - }, - { - "key": "parcel_pickup", - "description": "Layer 'Parcel Lockers' shows parcel_pickup=yes with a fixed text, namely 'You can pick up packages from this parcel locker' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=parcel_locker)", - "value": "yes" - }, - { - "key": "parcel_pickup", - "description": "Layer 'Parcel Lockers' shows parcel_pickup=no with a fixed text, namely 'You can't pick up packages from this parcel locker' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=parcel_locker)", - "value": "no" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Parking showing features with this tag", - "value": "parking" - }, - { - "key": "id", - "description": "Layer 'Parking' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "level", - "description": "Layer 'Parking' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Parking' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Parking' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Parking' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Parking' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Parking' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "parking", - "description": "Layer 'Parking' shows parking=surface with a fixed text, namely 'This is a surface parking lot' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "surface" - }, - { - "key": "parking", - "description": "Layer 'Parking' shows parking=street_side with a fixed text, namely 'This is a parking bay next to a street' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "street_side" - }, - { - "key": "parking", - "description": "Layer 'Parking' shows parking=underground with a fixed text, namely 'This is an underground parking garage' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "underground" - }, - { - "key": "parking", - "description": "Layer 'Parking' shows parking=multi-storey with a fixed text, namely 'This is a multi-storey parking garage' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "multi-storey" - }, - { - "key": "parking", - "description": "Layer 'Parking' shows parking=rooftop with a fixed text, namely 'This is a rooftop parking deck' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "rooftop" - }, - { - "key": "parking", - "description": "Layer 'Parking' shows parking=lane with a fixed text, namely 'This is a lane for parking on the road' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "lane" - }, - { - "key": "parking", - "description": "Layer 'Parking' shows parking=carports with a fixed text, namely 'This is parking covered by carports' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "carports" - }, - { - "key": "parking", - "description": "Layer 'Parking' shows parking=garage_boxes with a fixed text, namely 'This a parking consisting of garage boxes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "garage_boxes" - }, - { - "key": "parking", - "description": "Layer 'Parking' shows parking=layby with a fixed text, namely 'This is a parking on a layby' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "layby" - }, - { - "key": "parking", - "description": "Layer 'Parking' shows parking=sheds with a fixed text, namely 'This is a parking consisting of sheds' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sheds" - }, - { - "key": "capacity:disabled", - "description": "Layer 'Parking' shows and asks freeform values for key 'capacity:disabled' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "capacity:disabled", - "description": "Layer 'Parking' shows capacity:disabled=yes with a fixed text, namely 'There are disabled parking spots, but it is not known how many' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "capacity:disabled", - "description": "Layer 'Parking' shows capacity:disabled=no with a fixed text, namely 'There are no disabled parking spots' (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "capacity:disabled", - "description": "Layer 'Parking' shows capacity:disabled=0 with a fixed text, namely 'There are no disabled parking spots' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "0" - }, - { - "key": "capacity", - "description": "Layer 'Parking' shows and asks freeform values for key 'capacity' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Parking Spaces showing features with this tag", - "value": "parking_space" - }, - { - "key": "id", - "description": "Layer 'Parking Spaces' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Parking Spaces allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Parking Spaces allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Parking Spaces allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Parking Spaces allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "parking_space", - "description": "Layer 'Parking Spaces' shows parking_space= with a fixed text, namely 'This is a normal parking space.' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key parking_space.", - "value": "" - }, - { - "key": "parking_space", - "description": "Layer 'Parking Spaces' shows parking_space=normal with a fixed text, namely 'This is a normal parking space.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "normal" - }, - { - "key": "parking_space", - "description": "Layer 'Parking Spaces' shows parking_space=disabled with a fixed text, namely 'This is a disabled parking space.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "disabled" - }, - { - "key": "parking_space", - "description": "Layer 'Parking Spaces' shows parking_space=charging with a fixed text, namely 'This is parking space reserved for charging vehicles.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "charging" - }, - { - "key": "parking_space", - "description": "Layer 'Parking Spaces' shows parking_space=delivery with a fixed text, namely 'This is parking space reserved for deliveries.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "delivery" - }, - { - "key": "parking_space", - "description": "Layer 'Parking Spaces' shows parking_space=hgv with a fixed text, namely 'This is parking space reserved for heavy goods vehicles.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "hgv" - }, - { - "key": "parking_space", - "description": "Layer 'Parking Spaces' shows parking_space=caravan with a fixed text, namely 'This is parking space reserved for caravans or RVs.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "caravan" - }, - { - "key": "parking_space", - "description": "Layer 'Parking Spaces' shows parking_space=bus with a fixed text, namely 'This is parking space reserved for buses.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "bus" - }, - { - "key": "parking_space", - "description": "Layer 'Parking Spaces' shows parking_space=motorcycle with a fixed text, namely 'This is parking space reserved for motorcycles.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "motorcycle" - }, - { - "key": "parking_space", - "description": "Layer 'Parking Spaces' shows parking_space=parent with a fixed text, namely 'This is a parking space reserved for parents with children.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "parent" - }, - { - "key": "parking_space", - "description": "Layer 'Parking Spaces' shows parking_space=staff with a fixed text, namely 'This is a parking space reserved for staff.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "staff" - }, - { - "key": "parking_space", - "description": "Layer 'Parking Spaces' shows parking_space=taxi with a fixed text, namely 'This is a parking space reserved for taxis.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "taxi" - }, - { - "key": "parking_space", - "description": "Layer 'Parking Spaces' shows parking_space=trailer with a fixed text, namely 'This is a parking space reserved for vehicles towing a trailer.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "trailer" - }, - { - "key": "parking_space", - "description": "Layer 'Parking Spaces' shows parking_space=car_sharing with a fixed text, namely 'This is a parking space reserved for car sharing.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "car_sharing" - }, - { - "key": "capacity", - "description": "Layer 'Parking Spaces' shows capacity=1 with a fixed text, namely 'This parking space has 1 space.' (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Parking Ticket Machines showing features with this tag", - "value": "vending_machine" - }, - { - "key": "vending", - "description": "The MapComplete theme Personal theme has a layer Parking Ticket Machines showing features with this tag", - "value": "parking_tickets" - }, - { - "key": "id", - "description": "Layer 'Parking Ticket Machines' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Parking Ticket Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Parking Ticket Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Parking Ticket Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Parking Ticket Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "payment:cash", - "description": "Layer 'Parking Ticket Machines' shows payment:cash=yes with a fixed text, namely 'Cash is accepted here' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:cards", - "description": "Layer 'Parking Ticket Machines' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted here' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:qr_code", - "description": "Layer 'Parking Ticket Machines' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:coins", - "description": "Layer 'Parking Ticket Machines' shows payment:coins=yes with a fixed text, namely 'Coins are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:notes", - "description": "Layer 'Parking Ticket Machines' shows payment:notes=yes with a fixed text, namely 'Bank notes are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:debit_cards", - "description": "Layer 'Parking Ticket Machines' shows payment:debit_cards=yes with a fixed text, namely 'Debit cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:credit_cards", - "description": "Layer 'Parking Ticket Machines' shows payment:credit_cards=yes with a fixed text, namely 'Credit cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:coins:denominations=0.01 EUR with a fixed text, namely '1 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.01 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:coins:denominations=0.02 EUR with a fixed text, namely '2 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.02 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:coins:denominations=0.05 EUR with a fixed text, namely '5 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.05 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:coins:denominations=0.10 EUR with a fixed text, namely '10 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.10 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:coins:denominations=0.20 EUR with a fixed text, namely '20 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.20 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:coins:denominations=0.50 EUR with a fixed text, namely '50 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.50 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:coins:denominations=1 EUR with a fixed text, namely '1 euro coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "1 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:coins:denominations=2 EUR with a fixed text, namely '2 euro coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "2 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:coins:denominations=0.05 CHF with a fixed text, namely '5 centimes coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.05 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:coins:denominations=0.10 CHF with a fixed text, namely '10 centimes coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.10 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:coins:denominations=0.20 CHF with a fixed text, namely '20 centimes coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.20 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:coins:denominations=0.50 CHF with a fixed text, namely '½ franc coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.50 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:coins:denominations=1 CHF with a fixed text, namely '1 franc coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "1 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:coins:denominations=2 CHF with a fixed text, namely '2 francs coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "2 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:coins:denominations=5 CHF with a fixed text, namely '5 francs coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "5 CHF" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:notes:denominations=5 EUR with a fixed text, namely '5 euro notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "5 EUR" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:notes:denominations=10 EUR with a fixed text, namely '10 euro notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "10 EUR" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:notes:denominations=20 EUR with a fixed text, namely '20 euro notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "20 EUR" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:notes:denominations=50 EUR with a fixed text, namely '50 euro notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "50 EUR" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:notes:denominations=100 EUR with a fixed text, namely '100 euro notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "100 EUR" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:notes:denominations=200 EUR with a fixed text, namely '200 euro notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "200 EUR" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:notes:denominations=500 EUR with a fixed text, namely '500 euro notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "500 EUR" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:notes:denominations=10 CHF with a fixed text, namely '10 francs notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "10 CHF" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:notes:denominations=20 CHF with a fixed text, namely '20 francs notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "20 CHF" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:notes:denominations=50 CHF with a fixed text, namely '50 francs notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "50 CHF" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:notes:denominations=100 CHF with a fixed text, namely '100 francs notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "100 CHF" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:notes:denominations=200 CHF with a fixed text, namely '200 francs notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "200 CHF" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Parking Ticket Machines' shows payment:notes:denominations=1000 CHF with a fixed text, namely '1000 francs notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "1000 CHF" - }, - { - "key": "ref", - "description": "Layer 'Parking Ticket Machines' shows and asks freeform values for key 'ref' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "noref", - "description": "Layer 'Parking Ticket Machines' shows noref=yes with a fixed text, namely 'This parking ticket machine has no reference number' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Pedestrian paths showing features with this tag", - "value": "footway" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Pedestrian paths showing features with this tag", - "value": "path" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Pedestrian paths showing features with this tag", - "value": "corridor" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Pedestrian paths showing features with this tag", - "value": "steps" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Pharmacies showing features with this tag", - "value": "pharmacy" - }, - { - "key": "id", - "description": "Layer 'Pharmacies' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Pharmacies allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Pharmacies allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Pharmacies allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Pharmacies allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Pharmacies' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Pharmacies' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Pharmacies' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "phone", - "description": "Layer 'Pharmacies' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Pharmacies' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Pharmacies' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Pharmacies' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Pharmacies' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Pharmacies' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Pharmacies' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "payment:cash", - "description": "Layer 'Pharmacies' shows payment:cash=yes with a fixed text, namely 'Cash is accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:cards", - "description": "Layer 'Pharmacies' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:qr_code", - "description": "Layer 'Pharmacies' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "wheelchair", - "description": "Layer 'Pharmacies' shows wheelchair=yes with a fixed text, namely 'This pharmacy is easy to access on a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "wheelchair", - "description": "Layer 'Pharmacies' shows wheelchair=no with a fixed text, namely 'This pharmacy is hard to access on a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "wheelchair", - "description": "Layer 'Pharmacies' shows wheelchair=limited with a fixed text, namely 'This pharmacy has limited access for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "healthcare", - "description": "The MapComplete theme Personal theme has a layer Physiotherapist showing features with this tag", - "value": "physiotherapist" - }, - { - "key": "id", - "description": "Layer 'Physiotherapist' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Physiotherapist allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Physiotherapist allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Physiotherapist allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Physiotherapist allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Physiotherapist' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Physiotherapist' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Physiotherapist' shows opening_hours=\"by appointment\" with a fixed text, namely 'Only by appointment' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "\"by appointment\"" - }, - { - "key": "opening_hours", - "description": "Layer 'Physiotherapist' shows opening_hours~^(\"by appointment\"|by appointment)$ with a fixed text, namely 'Only by appointment' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Physiotherapist' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "phone", - "description": "Layer 'Physiotherapist' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Physiotherapist' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Physiotherapist' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Physiotherapist' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Physiotherapist' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Physiotherapist' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Physiotherapist' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "leisure", - "description": "The MapComplete theme Personal theme has a layer Picnic tables showing features with this tag", - "value": "picnic_table" - }, - { - "key": "id", - "description": "Layer 'Picnic tables' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Picnic tables allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Picnic tables allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Picnic tables allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Picnic tables allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "level", - "description": "Layer 'Picnic tables' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Picnic tables' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Picnic tables' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Picnic tables' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Picnic tables' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Picnic tables' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "material", - "description": "Layer 'Picnic tables' shows and asks freeform values for key 'material' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "material", - "description": "Layer 'Picnic tables' shows material=wood with a fixed text, namely 'This is a wooden picnic table' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wood" - }, - { - "key": "material", - "description": "Layer 'Picnic tables' shows material=concrete with a fixed text, namely 'This is a concrete picnic table' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "concrete" - }, - { - "key": "material", - "description": "Layer 'Picnic tables' shows material=plastic with a fixed text, namely 'This picnic table is made from (recycled) plastic' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "plastic" - }, - { - "key": "material", - "description": "Layer 'Picnic tables' shows material=metal with a fixed text, namely 'This picnic table is made from metal' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "metal" - }, - { - "key": "leisure", - "description": "The MapComplete theme Personal theme has a layer Playgrounds showing features with this tag", - "value": "playground" - }, - { - "key": "id", - "description": "Layer 'Playgrounds' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Playgrounds allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Playgrounds allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Playgrounds allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Playgrounds allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "fee", - "description": "Layer 'Playgrounds' shows fee=no with a fixed text, namely 'Free to use' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "fee", - "description": "Layer 'Playgrounds' shows fee=yes with a fixed text, namely 'Paid playground' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "surface", - "description": "Layer 'Playgrounds' shows and asks freeform values for key 'surface' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "surface", - "description": "Layer 'Playgrounds' shows surface=grass with a fixed text, namely 'The surface is grass' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "grass" - }, - { - "key": "surface", - "description": "Layer 'Playgrounds' shows surface=sand with a fixed text, namely 'The surface is sand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sand" - }, - { - "key": "surface", - "description": "Layer 'Playgrounds' shows surface=woodchips with a fixed text, namely 'The surface consist of woodchips' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "woodchips" - }, - { - "key": "surface", - "description": "Layer 'Playgrounds' shows surface=paving_stones with a fixed text, namely 'The surface is paving stones' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "paving_stones" - }, - { - "key": "surface", - "description": "Layer 'Playgrounds' shows surface=asphalt with a fixed text, namely 'The surface is asphalt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "asphalt" - }, - { - "key": "surface", - "description": "Layer 'Playgrounds' shows surface=concrete with a fixed text, namely 'The surface is concrete' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "concrete" - }, - { - "key": "surface", - "description": "Layer 'Playgrounds' shows surface=unpaved with a fixed text, namely 'The surface is unpaved' (in the mapcomplete.org theme 'Personal theme')", - "value": "unpaved" - }, - { - "key": "surface", - "description": "Layer 'Playgrounds' shows surface=paved with a fixed text, namely 'The surface is paved' (in the mapcomplete.org theme 'Personal theme')", - "value": "paved" - }, - { - "key": "surface", - "description": "Layer 'Playgrounds' shows surface=tartan with a fixed text, namely 'The surface is tartan - a synthetic, springy surface typically seen on athletic pistes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "tartan" - }, - { - "key": "surface", - "description": "Layer 'Playgrounds' shows surface=rubber with a fixed text, namely 'The surface is made from rubber, such as rubber tiles, rubber mulch or a big rubber area' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "rubber" - }, - { - "key": "surface", - "description": "Layer 'Playgrounds' shows surface=fine_gravel with a fixed text, namely 'The surface is fine gravel (less then 2 cm per stone)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "fine_gravel" - }, - { - "key": "lit", - "description": "Layer 'Playgrounds' shows lit=yes with a fixed text, namely 'This playground is lit at night' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "lit", - "description": "Layer 'Playgrounds' shows lit=no with a fixed text, namely 'This playground is not lit at night' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "min_age", - "description": "Layer 'Playgrounds' shows and asks freeform values for key 'min_age' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "max_age", - "description": "Layer 'Playgrounds' shows and asks freeform values for key 'max_age' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator", - "description": "Layer 'Playgrounds' shows and asks freeform values for key 'operator' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "access", - "description": "Layer 'Playgrounds' shows access=yes with a fixed text, namely 'Accessible to the general public' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "fee", - "description": "Layer 'Playgrounds' shows fee=yes with a fixed text, namely 'This is a paid playground' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "access", - "description": "Layer 'Playgrounds' shows access=customers with a fixed text, namely 'Only accessible for clients of the operating business' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "customers" - }, - { - "key": "access", - "description": "Layer 'Playgrounds' shows access=students with a fixed text, namely 'Only accessible to students of the school' (in the mapcomplete.org theme 'Personal theme')", - "value": "students" - }, - { - "key": "access", - "description": "Layer 'Playgrounds' shows access=private with a fixed text, namely 'Not accessible' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "private" - }, - { - "key": "leisure", - "description": "Layer 'Playgrounds' shows leisure=schoolyard with a fixed text, namely 'This is a schoolyard - an outdoor area where the pupils can play during their breaks; but it is not accessible to the general public' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "schoolyard" - }, - { - "key": "website", - "description": "Layer 'Playgrounds' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Playgrounds' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Playgrounds' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'Playgrounds' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "wheelchair", - "description": "Layer 'Playgrounds' shows wheelchair=yes with a fixed text, namely 'Completely accessible for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "wheelchair", - "description": "Layer 'Playgrounds' shows wheelchair=limited with a fixed text, namely 'Limited accessibility for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "wheelchair", - "description": "Layer 'Playgrounds' shows wheelchair=no with a fixed text, namely 'Not accessible for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "opening_hours", - "description": "Layer 'Playgrounds' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Playgrounds' shows opening_hours=sunrise-sunset with a fixed text, namely 'Accessible from sunrise till sunset' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sunrise-sunset" - }, - { - "key": "opening_hours", - "description": "Layer 'Playgrounds' shows opening_hours=24/7 with a fixed text, namely 'Always accessible' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "24/7" - }, - { - "key": "check_date", - "description": "Layer 'Playgrounds' shows and asks freeform values for key 'check_date' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "check_date", - "description": "Layer 'Playgrounds' shows check_date= with a fixed text, namely 'This object was last checked today' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key check_date.", - "value": "" - }, - { - "key": "playground", - "description": "The MapComplete theme Personal theme has a layer Playground equipment showing features with this tag" - }, - { - "key": "id", - "description": "Layer 'Playground equipment' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Playground equipment allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Playground equipment allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Playground equipment allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Playground equipment allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "playground", - "description": "Layer 'Playground equipment' shows and asks freeform values for key 'playground' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "playground", - "description": "Layer 'Playground equipment' shows playground=swing with a fixed text, namely 'This is a swing' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "swing" - }, - { - "key": "playground", - "description": "Layer 'Playground equipment' shows playground=structure with a fixed text, namely 'This is a structure consisting of several connected playground devices' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "structure" - }, - { - "key": "playground", - "description": "Layer 'Playground equipment' shows playground=slide with a fixed text, namely 'This is a slide' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "slide" - }, - { - "key": "playground", - "description": "Layer 'Playground equipment' shows playground=sandpit with a fixed text, namely 'This is a sand pit' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sandpit" - }, - { - "key": "playground", - "description": "Layer 'Playground equipment' shows playground=springy with a fixed text, namely 'This is a spring rider' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "springy" - }, - { - "key": "playground", - "description": "Layer 'Playground equipment' shows playground=climbingframe with a fixed text, namely 'This is a climbing frame' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "climbingframe" - }, - { - "key": "playground", - "description": "Layer 'Playground equipment' shows playground=seesaw with a fixed text, namely 'This is a seesaw' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "seesaw" - }, - { - "key": "playground", - "description": "Layer 'Playground equipment' shows playground=playhouse with a fixed text, namely 'This is a playhouse' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "playhouse" - }, - { - "key": "playground", - "description": "Layer 'Playground equipment' shows playground=roundabout with a fixed text, namely 'This is a roundabout' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "roundabout" - }, - { - "key": "playground", - "description": "Layer 'Playground equipment' shows playground=basketswing with a fixed text, namely 'This is a basket swing' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "basketswing" - }, - { - "key": "playground", - "description": "Layer 'Playground equipment' shows playground=zipwire with a fixed text, namely 'This is a zip wire' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "zipwire" - }, - { - "key": "playground", - "description": "Layer 'Playground equipment' shows playground=horizontal_bar with a fixed text, namely 'This is a horizontal bar' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "horizontal_bar" - }, - { - "key": "playground", - "description": "Layer 'Playground equipment' shows playground=hopscotch with a fixed text, namely 'This is a hopscotch' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "hopscotch" - }, - { - "key": "playground", - "description": "Layer 'Playground equipment' shows playground=splash_pad with a fixed text, namely 'This is a splash pad' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "splash_pad" - }, - { - "key": "playground", - "description": "Layer 'Playground equipment' shows playground=climbingwall with a fixed text, namely 'This is a climbing wall' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "climbingwall" - }, - { - "key": "playground", - "description": "Layer 'Playground equipment' shows playground=map with a fixed text, namely 'This is a map' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "map" - }, - { - "key": "playground", - "description": "Layer 'Playground equipment' shows playground=bridge with a fixed text, namely 'This is a bridge (either as a standalone device or as part of a larger structure)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "bridge" - }, - { - "key": "playground", - "description": "Layer 'Playground equipment' shows playground=cushion with a fixed text, namely 'This is a bouncy cushion' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "cushion" - }, - { - "key": "playground", - "description": "Layer 'Playground equipment' shows playground=activitypanel with a fixed text, namely 'This is an activity panel' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "activitypanel" - }, - { - "key": "playground", - "description": "Layer 'Playground equipment' shows playground=teenshelter with a fixed text, namely 'This is a teen shelter' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "teenshelter" - }, - { - "key": "playground", - "description": "Layer 'Playground equipment' shows playground=funnel_ball with a fixed text, namely 'This is a funnel used to play with funnel ball' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "funnel_ball" - }, - { - "key": "playground", - "description": "Layer 'Playground equipment' shows playground=spinning_circle with a fixed text, namely 'This is a spinning circle' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "spinning_circle" - }, - { - "key": "wheelchair", - "description": "Layer 'Playground equipment' shows wheelchair=designated with a fixed text, namely 'This place is specially adapted for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "designated" - }, - { - "key": "wheelchair", - "description": "Layer 'Playground equipment' shows wheelchair=yes with a fixed text, namely 'This place is easily reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "wheelchair", - "description": "Layer 'Playground equipment' shows wheelchair=limited with a fixed text, namely 'It is possible to reach this place in a wheelchair, but it is not easy' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "wheelchair", - "description": "Layer 'Playground equipment' shows wheelchair=no with a fixed text, namely 'This place is not reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Police stations showing features with this tag", - "value": "police" - }, - { - "key": "police", - "description": "The MapComplete theme Personal theme has a layer Police stations showing features with this tag" - }, - { - "key": "id", - "description": "Layer 'Police stations' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Police stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Police stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Police stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Police stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Police stations' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'Police stations' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Police stations' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Police stations' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Police stations' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Police stations' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Police stations' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Police stations' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Police stations' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Police stations' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "detention", - "description": "Layer 'Police stations' shows detention=yes with a fixed text, namely 'This police office has some cells to detain people' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=police)", - "value": "yes" - }, - { - "key": "detention", - "description": "Layer 'Police stations' shows detention=no with a fixed text, namely 'This police office does not have cells to detain people' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=police)", - "value": "no" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Postboxes showing features with this tag", - "value": "post_box" - }, - { - "key": "id", - "description": "Layer 'Postboxes' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Postboxes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Postboxes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Postboxes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Postboxes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Post offices showing features with this tag", - "value": "post_office" - }, - { - "key": "post_office", - "description": "The MapComplete theme Personal theme has a layer Post offices showing features with this tag", - "value": "post_partner" - }, - { - "key": "id", - "description": "Layer 'Post offices' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Post offices allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Post offices allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Post offices allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Post offices allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "opening_hours", - "description": "Layer 'Post offices' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Post offices' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "post_office", - "description": "Layer 'Post offices' shows post_office=post_partner with a fixed text, namely 'This shop is a post partner' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "post_partner" - }, - { - "key": "post_office", - "description": "Layer 'Post offices' shows post_office= with a fixed text, namely 'This shop is not a post partner' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key post_office.", - "value": "" - }, - { - "key": "brand", - "description": "Layer 'Post offices' shows and asks freeform values for key 'brand' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=post_office)" - }, - { - "key": "post_office:brand", - "description": "Layer 'Post offices' shows and asks freeform values for key 'post_office:brand' (in the mapcomplete.org theme 'Personal theme') (This is only shown if post_office=post_partner)" - }, - { - "key": "post_office:brand", - "description": "Layer 'Post offices' shows post_office:brand=DHL with a fixed text, namely 'This location offers services for DHL' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if post_office=post_partner)", - "value": "DHL" - }, - { - "key": "post_office:brand", - "description": "Layer 'Post offices' shows post_office:brand=DPD with a fixed text, namely 'This location offers services for DPD' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if post_office=post_partner)", - "value": "DPD" - }, - { - "key": "post_office:brand", - "description": "Layer 'Post offices' shows post_office:brand=GLS with a fixed text, namely 'This location offers services for GLS' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if post_office=post_partner)", - "value": "GLS" - }, - { - "key": "post_office:brand", - "description": "Layer 'Post offices' shows post_office:brand=UPS with a fixed text, namely 'This location offers services for UPS' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if post_office=post_partner)", - "value": "UPS" - }, - { - "key": "post_office:brand", - "description": "Layer 'Post offices' shows post_office:brand=DHL Paketshop with a fixed text, namely 'This location is a DHL Paketshop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if post_office=post_partner)", - "value": "DHL Paketshop" - }, - { - "key": "post_office:brand", - "description": "Layer 'Post offices' shows post_office:brand=Hermes PaketShop with a fixed text, namely 'This location is a Hermes PaketShop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if post_office=post_partner)", - "value": "Hermes PaketShop" - }, - { - "key": "post_office:brand", - "description": "Layer 'Post offices' shows post_office:brand=PostNL with a fixed text, namely 'This location is a PostNL-point' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if post_office=post_partner)", - "value": "PostNL" - }, - { - "key": "post_office:brand", - "description": "Layer 'Post offices' shows post_office:brand=bpost with a fixed text, namely 'This location offers services for bpost' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if post_office=post_partner)", - "value": "bpost" - }, - { - "key": "post_office:letter_from", - "description": "Layer 'Post offices' shows and asks freeform values for key 'post_office:letter_from' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "post_office:letter_from", - "description": "Layer 'Post offices' shows post_office:letter_from=yes with a fixed text, namely 'You can post letters here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "post_office:letter_from", - "description": "Layer 'Post offices' shows post_office:letter_from=no with a fixed text, namely 'You can't post letters here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "post_office:parcel_from", - "description": "Layer 'Post offices' shows and asks freeform values for key 'post_office:parcel_from' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "post_office:parcel_from", - "description": "Layer 'Post offices' shows post_office:parcel_from=yes with a fixed text, namely 'You can send parcels here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "post_office:parcel_from", - "description": "Layer 'Post offices' shows post_office:parcel_from=no with a fixed text, namely 'You can't send parcels here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "post_office:parcel_pickup", - "description": "Layer 'Post offices' shows and asks freeform values for key 'post_office:parcel_pickup' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "post_office:parcel_pickup", - "description": "Layer 'Post offices' shows post_office:parcel_pickup=yes with a fixed text, namely 'You can pick up missed parcels here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "post_office:parcel_pickup", - "description": "Layer 'Post offices' shows post_office:parcel_pickup=no with a fixed text, namely 'You can't pick up missed parcels here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "post_office:parcel_to", - "description": "Layer 'Post offices' shows and asks freeform values for key 'post_office:parcel_to' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "post_office:parcel_to", - "description": "Layer 'Post offices' shows post_office:parcel_to=yes with a fixed text, namely 'You can send parcels to here for pickup' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "post_office:parcel_to", - "description": "Layer 'Post offices' shows post_office:parcel_to=no with a fixed text, namely 'You can't send parcels to here for pickup' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "post_office:stamps", - "description": "Layer 'Post offices' shows and asks freeform values for key 'post_office:stamps' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "post_office:stamps", - "description": "Layer 'Post offices' shows post_office:stamps=yes with a fixed text, namely 'You can buy stamps here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "post_office:stamps", - "description": "Layer 'Post offices' shows post_office:stamps=no with a fixed text, namely 'You can't buy stamps here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "atm", - "description": "Layer 'Post offices' shows atm=yes with a fixed text, namely 'This post office has an ATM' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "atm", - "description": "Layer 'Post offices' shows atm=no with a fixed text, namely 'This post office does not have an ATM' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "atm", - "description": "Layer 'Post offices' shows atm=separate with a fixed text, namely 'This post office does have an ATM, but it is mapped as a different icon' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "separate" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Bookcases showing features with this tag", - "value": "public_bookcase" - }, - { - "key": "id", - "description": "Layer 'Bookcases' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Bookcases allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Bookcases allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Bookcases allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Bookcases allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Bookcases' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "noname", - "description": "Layer 'Bookcases' shows noname=yes & name= with a fixed text, namely 'This bookcase doesn't have a name' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "name", - "description": "Layer 'Bookcases' shows noname=yes & name= with a fixed text, namely 'This bookcase doesn't have a name' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key name.", - "value": "" - }, - { - "key": "capacity", - "description": "Layer 'Bookcases' shows and asks freeform values for key 'capacity' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "books", - "description": "Layer 'Bookcases' shows and asks freeform values for key 'books' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "books", - "description": "Layer 'Bookcases' shows books=children with a fixed text, namely 'Mostly children books' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "children" - }, - { - "key": "books", - "description": "Layer 'Bookcases' shows books=adults with a fixed text, namely 'Mostly books for adults' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "adults" - }, - { - "key": "indoor", - "description": "Layer 'Bookcases' shows indoor=yes with a fixed text, namely 'This bookcase is located indoors' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "indoor", - "description": "Layer 'Bookcases' shows indoor=no with a fixed text, namely 'This bookcase is located outdoors' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "indoor", - "description": "Layer 'Bookcases' shows indoor= with a fixed text, namely 'This bookcase is located outdoors' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key indoor.", - "value": "" - }, - { - "key": "access", - "description": "Layer 'Bookcases' shows access=yes with a fixed text, namely 'Publicly accessible' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if indoor=yes)", - "value": "yes" - }, - { - "key": "access", - "description": "Layer 'Bookcases' shows access=customers with a fixed text, namely 'Only accessible to customers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if indoor=yes)", - "value": "customers" - }, - { - "key": "operator", - "description": "Layer 'Bookcases' shows and asks freeform values for key 'operator' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "brand", - "description": "Layer 'Bookcases' shows and asks freeform values for key 'brand' (in the mapcomplete.org theme 'Personal theme') (This is only shown if ref=)" - }, - { - "key": "nobrand", - "description": "Layer 'Bookcases' shows nobrand=yes with a fixed text, namely 'This public bookcase is not part of a bigger network' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if ref=)", - "value": "yes" - }, - { - "key": "ref", - "description": "Layer 'Bookcases' shows and asks freeform values for key 'ref' (in the mapcomplete.org theme 'Personal theme') (This is only shown if brand~.+)" - }, - { - "key": "nobrand", - "description": "Layer 'Bookcases' shows nobrand=yes & brand= & ref= with a fixed text, namely 'This bookcase is not part of a bigger network' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if brand~.+)", - "value": "yes" - }, - { - "key": "brand", - "description": "Layer 'Bookcases' shows nobrand=yes & brand= & ref= with a fixed text, namely 'This bookcase is not part of a bigger network' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key brand. (This is only shown if brand~.+)", - "value": "" - }, - { - "key": "ref", - "description": "Layer 'Bookcases' shows nobrand=yes & brand= & ref= with a fixed text, namely 'This bookcase is not part of a bigger network' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key ref. (This is only shown if brand~.+)", - "value": "" - }, - { - "key": "start_date", - "description": "Layer 'Bookcases' shows and asks freeform values for key 'start_date' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Bookcases' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "surface:colour", - "description": "The MapComplete theme Personal theme has a layer Crossings with rainbow paintings showing features with this tag", - "value": "rainbow" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Crossings with rainbow paintings showing features with this tag", - "value": "crossing" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Crossings with rainbow paintings showing features with this tag", - "value": "footway" - }, - { - "key": "footway", - "description": "The MapComplete theme Personal theme has a layer Crossings with rainbow paintings showing features with this tag", - "value": "crossing" - }, - { - "key": "id", - "description": "Layer 'Crossings with rainbow paintings' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Crossings with rainbow paintings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Crossings with rainbow paintings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Crossings with rainbow paintings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Crossings with rainbow paintings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "surface:colour", - "description": "Layer 'Crossings with rainbow paintings' shows surface:colour=rainbow with a fixed text, namely 'This crossing has rainbow paintings' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "rainbow" - }, - { - "key": "not:surface:colour", - "description": "Layer 'Crossings with rainbow paintings' shows not:surface:colour=rainbow with a fixed text, namely 'No rainbow paintings here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "rainbow" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Reception desks showing features with this tag", - "value": "reception_desk" - }, - { - "key": "id", - "description": "Layer 'Reception desks' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Reception desks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Reception desks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Reception desks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Reception desks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "level", - "description": "Layer 'Reception desks' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Reception desks' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Reception desks' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Reception desks' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Reception desks' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Reception desks' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "desk:height", - "description": "Layer 'Reception desks' shows and asks freeform values for key 'desk:height' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "hearing_loop", - "description": "Layer 'Reception desks' shows hearing_loop=yes with a fixed text, namely 'This place has an audio induction loop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "hearing_loop", - "description": "Layer 'Reception desks' shows hearing_loop=no with a fixed text, namely 'This place does not have an audio induction loop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Recycling showing features with this tag", - "value": "recycling" - }, - { - "key": "id", - "description": "Layer 'Recycling' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Recycling allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Recycling allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Recycling allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Recycling allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "recycling_type", - "description": "Layer 'Recycling' shows recycling_type=container with a fixed text, namely 'This is a recycling container' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "container" - }, - { - "key": "recycling_type", - "description": "Layer 'Recycling' shows recycling_type=centre with a fixed text, namely 'This is a recycling centre' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "centre" - }, - { - "key": "amenity", - "description": "Layer 'Recycling' shows amenity=waste_disposal with a fixed text, namely 'Waste disposal container for residual waste' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "waste_disposal" - }, - { - "key": "recycling_type", - "description": "Layer 'Recycling' shows recycling_type=pickup_point with a fixed text, namely 'This is a pickup point. The waste material is placed here without placing it in a dedicated container.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "pickup_point" - }, - { - "key": "recycling_type", - "description": "Layer 'Recycling' shows recycling_type=dump with a fixed text, namely 'This is a dump where the waste material is stacked.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "dump" - }, - { - "key": "name", - "description": "Layer 'Recycling' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme') (This is only shown if recycling_type=centre)" - }, - { - "key": "noname", - "description": "Layer 'Recycling' shows noname=yes with a fixed text, namely 'This recycling centre doesn't have a specific name' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if recycling_type=centre)", - "value": "yes" - }, - { - "key": "location", - "description": "Layer 'Recycling' shows location=underground with a fixed text, namely 'This is an underground container' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if recycling_type=container)", - "value": "underground" - }, - { - "key": "location", - "description": "Layer 'Recycling' shows location=indoor with a fixed text, namely 'This container is located indoors' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if recycling_type=container)", - "value": "indoor" - }, - { - "key": "location", - "description": "Layer 'Recycling' shows location= with a fixed text, namely 'This container is located outdoors' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key location. (This is only shown if recycling_type=container)", - "value": "" - }, - { - "key": "recycling:batteries", - "description": "Layer 'Recycling' shows recycling:batteries=yes with a fixed text, namely 'Batteries can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:beverage_cartons", - "description": "Layer 'Recycling' shows recycling:beverage_cartons=yes with a fixed text, namely 'Beverage cartons can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:cans", - "description": "Layer 'Recycling' shows recycling:cans=yes with a fixed text, namely 'Cans can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:clothes", - "description": "Layer 'Recycling' shows recycling:clothes=yes with a fixed text, namely 'Clothes can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:cooking_oil", - "description": "Layer 'Recycling' shows recycling:cooking_oil=yes with a fixed text, namely 'Cooking oil can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:engine_oil", - "description": "Layer 'Recycling' shows recycling:engine_oil=yes with a fixed text, namely 'Engine oil can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:fluorescent_tubes", - "description": "Layer 'Recycling' shows recycling:fluorescent_tubes=yes with a fixed text, namely 'Fluorescent tubes can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:green_waste", - "description": "Layer 'Recycling' shows recycling:green_waste=yes with a fixed text, namely 'Green waste can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:organic", - "description": "Layer 'Recycling' shows recycling:organic=yes with a fixed text, namely 'Organic waste can be recycled here' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:glass_bottles", - "description": "Layer 'Recycling' shows recycling:glass_bottles=yes with a fixed text, namely 'Glass bottles can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:glass", - "description": "Layer 'Recycling' shows recycling:glass=yes with a fixed text, namely 'Glass can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:light_bulbs", - "description": "Layer 'Recycling' shows recycling:light_bulbs=yes with a fixed text, namely 'Light bulbs can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:newspaper", - "description": "Layer 'Recycling' shows recycling:newspaper=yes with a fixed text, namely 'Newspapers can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:paper", - "description": "Layer 'Recycling' shows recycling:paper=yes with a fixed text, namely 'Paper can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:plastic_bottles", - "description": "Layer 'Recycling' shows recycling:plastic_bottles=yes with a fixed text, namely 'Plastic bottles can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:plastic_packaging", - "description": "Layer 'Recycling' shows recycling:plastic_packaging=yes with a fixed text, namely 'Plastic packaging can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:plastic", - "description": "Layer 'Recycling' shows recycling:plastic=yes with a fixed text, namely 'Plastic can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:pmd", - "description": "Layer 'Recycling' shows recycling:pmd=yes with a fixed text, namely 'Plastic packaging, metal packaging and drink cartons (PMD) can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:printer_cartridges", - "description": "Layer 'Recycling' shows recycling:printer_cartridges=yes with a fixed text, namely 'Printer cartridges can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:scrap_metal", - "description": "Layer 'Recycling' shows recycling:scrap_metal=yes with a fixed text, namely 'Scrap metal can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:shoes", - "description": "Layer 'Recycling' shows recycling:shoes=yes with a fixed text, namely 'Shoes can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:small_appliances", - "description": "Layer 'Recycling' shows recycling:small_appliances=yes with a fixed text, namely 'Small electrical appliances can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:small_electrical_appliances", - "description": "Layer 'Recycling' shows recycling:small_electrical_appliances=yes with a fixed text, namely 'Small electrical appliances can be recycled here' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:needles", - "description": "Layer 'Recycling' shows recycling:needles=yes with a fixed text, namely 'Needles can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:waste", - "description": "Layer 'Recycling' shows recycling:waste=yes with a fixed text, namely 'Residual waste can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "recycling:bicycles", - "description": "Layer 'Recycling' shows recycling:bicycles=yes with a fixed text, namely 'Bicycles can be recycled here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "operator", - "description": "Layer 'Recycling' shows and asks freeform values for key 'operator' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Recycling' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme') (This is only shown if recycling_type=centre)" - }, - { - "key": "contact:website", - "description": "Layer 'Recycling' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme') (This is only shown if recycling_type=centre)" - }, - { - "key": "email", - "description": "Layer 'Recycling' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme') (This is only shown if recycling_type=centre)" - }, - { - "key": "contact:email", - "description": "Layer 'Recycling' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme') (This is only shown if recycling_type=centre)" - }, - { - "key": "operator:email", - "description": "Layer 'Recycling' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme') (This is only shown if recycling_type=centre)" - }, - { - "key": "phone", - "description": "Layer 'Recycling' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme') (This is only shown if recycling_type=centre)" - }, - { - "key": "contact:phone", - "description": "Layer 'Recycling' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme') (This is only shown if recycling_type=centre)" - }, - { - "key": "opening_hours", - "description": "Layer 'Recycling' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Recycling' shows opening_hours=24/7 with a fixed text, namely '24/7 opened (including holidays)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "24/7" - }, - { - "key": "opening_hours", - "description": "Layer 'Recycling' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "access", - "description": "Layer 'Recycling' shows and asks freeform values for key 'access' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "access", - "description": "Layer 'Recycling' shows access=yes with a fixed text, namely 'Everyone can use this recycling facility' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "access", - "description": "Layer 'Recycling' shows access=residents with a fixed text, namely 'Only residents can use this recycling facility' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "residents" - }, - { - "key": "access", - "description": "Layer 'Recycling' shows access=private with a fixed text, namely 'This recycling facility is only for private use' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "private" - }, - { - "key": "survey:date", - "description": "Layer 'Recycling' shows and asks freeform values for key 'survey:date' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "survey:date", - "description": "Layer 'Recycling' shows survey:date= with a fixed text, namely 'This object was last surveyed today' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key survey:date.", - "value": "" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Primary and secondary schools showing features with this tag", - "value": "school" - }, - { - "key": "id", - "description": "Layer 'Primary and secondary schools' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "name", - "description": "Layer 'Primary and secondary schools' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "capacity", - "description": "Layer 'Primary and secondary schools' shows and asks freeform values for key 'capacity' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "school", - "description": "Layer 'Primary and secondary schools' shows school=kindergarten with a fixed text, namely 'This is a school with a kindergarten section where young kids receive some education which prepares reading and writing.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _country=be)", - "value": "kindergarten" - }, - { - "key": "school", - "description": "Layer 'Primary and secondary schools' shows school=primary with a fixed text, namely 'This is a school where one learns primary skills such as basic literacy and numerical skills.

Pupils typically enroll from 6 years old till 12 years old
' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _country=be)", - "value": "primary" - }, - { - "key": "school", - "description": "Layer 'Primary and secondary schools' shows school=secondary with a fixed text, namely 'This is a secondary school which offers all grades' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _country=be)", - "value": "secondary" - }, - { - "key": "school", - "description": "Layer 'Primary and secondary schools' shows school=lower_secondary with a fixed text, namely 'This is a secondary school which does not have all grades, but offers first and second grade' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _country=be)", - "value": "lower_secondary" - }, - { - "key": "school", - "description": "Layer 'Primary and secondary schools' shows school=middle_secondary with a fixed text, namely 'This is a secondary school which does not have all grades, but offers third and fourth grade' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _country=be)", - "value": "middle_secondary" - }, - { - "key": "school", - "description": "Layer 'Primary and secondary schools' shows school=upper_secondary with a fixed text, namely 'This is a secondary school which does not have all grades, but offers fifth and sixth grade' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _country=be)", - "value": "upper_secondary" - }, - { - "key": "school", - "description": "Layer 'Primary and secondary schools' shows school=post_secondary with a fixed text, namely 'This school offers post-secondary education (e.g. a seventh or eight specialisation year)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if _country=be)", - "value": "post_secondary" - }, - { - "key": "school:gender", - "description": "Layer 'Primary and secondary schools' shows school:gender=mixed with a fixed text, namely 'Both boys and girls can enroll here and have classes together' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "mixed" - }, - { - "key": "school:gender", - "description": "Layer 'Primary and secondary schools' shows school:gender=separated with a fixed text, namely 'Both boys and girls can enroll here but they are separated (e.g. they have lessons in different classrooms or at different times)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "separated" - }, - { - "key": "school:gender", - "description": "Layer 'Primary and secondary schools' shows school:gender=male with a fixed text, namely 'This is a boys only-school' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "male" - }, - { - "key": "school:gender", - "description": "Layer 'Primary and secondary schools' shows school:gender=female with a fixed text, namely 'This is a girls-only school' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "female" - }, - { - "key": "pedagogy", - "description": "Layer 'Primary and secondary schools' shows and asks freeform values for key 'pedagogy' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "pedagogy", - "description": "Layer 'Primary and secondary schools' shows pedagogy=mainstream with a fixed text, namely 'This school does not use a specific pedagogy' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "mainstream" - }, - { - "key": "pedagogy", - "description": "Layer 'Primary and secondary schools' shows pedagogy=montessori with a fixed text, namely 'This school uses the Montessori method of education' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "montessori" - }, - { - "key": "pedagogy", - "description": "Layer 'Primary and secondary schools' shows pedagogy=freinet with a fixed text, namely 'This school is associated with the Freinet Modern School Movement' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "freinet" - }, - { - "key": "pedagogy", - "description": "Layer 'Primary and secondary schools' shows pedagogy=jenaplan with a fixed text, namely 'This school uses the Jenaplan teaching concept' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "jenaplan" - }, - { - "key": "pedagogy", - "description": "Layer 'Primary and secondary schools' shows pedagogy=waldorf with a fixed text, namely 'This school uses the Steiner/Waldorf educational philosophy' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "waldorf" - }, - { - "key": "pedagogy", - "description": "Layer 'Primary and secondary schools' shows pedagogy=dalton with a fixed text, namely 'This school uses the Dalton plan teaching concept' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "dalton" - }, - { - "key": "pedagogy", - "description": "Layer 'Primary and secondary schools' shows pedagogy=outdoor with a fixed text, namely 'This school uses outdoor learning' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "outdoor" - }, - { - "key": "pedagogy", - "description": "Layer 'Primary and secondary schools' shows pedagogy=reggio_emilia with a fixed text, namely 'This school uses the Reggio Emilia approach' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "reggio_emilia" - }, - { - "key": "pedagogy", - "description": "Layer 'Primary and secondary schools' shows pedagogy=sudbury with a fixed text, namely 'This school uses the Sudbury system' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sudbury" - }, - { - "key": "school:for", - "description": "Layer 'Primary and secondary schools' shows and asks freeform values for key 'school:for' (in the mapcomplete.org theme 'Personal theme') (This is only shown if school:for~.+)" - }, - { - "key": "school:for", - "description": "Layer 'Primary and secondary schools' shows school:for= with a fixed text, namely 'This is a school where students study skills at their age-adequate level.
There are little or no special facilities to cater for students with special needs or facilities are ad-hoc
' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key school:for. (This is only shown if school:for~.+)", - "value": "" - }, - { - "key": "school:for", - "description": "Layer 'Primary and secondary schools' shows school:for=mainstream with a fixed text, namely 'This is a school for students without special needs
This includes students who can follow the courses with small, ad hoc measurements
' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if school:for~.+)", - "value": "mainstream" - }, - { - "key": "school:for", - "description": "Layer 'Primary and secondary schools' shows school:for=adults with a fixed text, namely 'This is a school where adults are taught skills on the level as specified.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if school:for~.+)", - "value": "adults" - }, - { - "key": "school:for", - "description": "Layer 'Primary and secondary schools' shows school:for=autism with a fixed text, namely 'This is a school for students with autism' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if school:for~.+)", - "value": "autism" - }, - { - "key": "school:for", - "description": "Layer 'Primary and secondary schools' shows school:for=learning_disabilities with a fixed text, namely 'This is a school for students with learning disabilities' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if school:for~.+)", - "value": "learning_disabilities" - }, - { - "key": "school:for", - "description": "Layer 'Primary and secondary schools' shows school:for=blind with a fixed text, namely 'This is a school for blind students or students with sight impairments' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if school:for~.+)", - "value": "blind" - }, - { - "key": "school:for", - "description": "Layer 'Primary and secondary schools' shows school:for=deaf with a fixed text, namely 'This is a school for deaf students or students with hearing impairments' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if school:for~.+)", - "value": "deaf" - }, - { - "key": "school:for", - "description": "Layer 'Primary and secondary schools' shows school:for=disabilities with a fixed text, namely 'This is a school for students with disabilities' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if school:for~.+)", - "value": "disabilities" - }, - { - "key": "school:for", - "description": "Layer 'Primary and secondary schools' shows school:for=special_needs with a fixed text, namely 'This is a school for students with special needs' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if school:for~.+)", - "value": "special_needs" - }, - { - "key": "website", - "description": "Layer 'Primary and secondary schools' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Primary and secondary schools' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'Primary and secondary schools' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Primary and secondary schools' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Primary and secondary schools' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Primary and secondary schools' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Primary and secondary schools' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Shelter showing features with this tag", - "value": "shelter" - }, - { - "key": "id", - "description": "Layer 'Shelter' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Shelter allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Shelter allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Shelter allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Shelter allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "shelter_type", - "description": "Layer 'Shelter' shows and asks freeform values for key 'shelter_type' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "shelter_type", - "description": "Layer 'Shelter' shows shelter_type=public_transport with a fixed text, namely 'This is a shelter at a public transport stop.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "public_transport" - }, - { - "key": "shelter_type", - "description": "Layer 'Shelter' shows shelter_type=picnic_shelter with a fixed text, namely 'This is a shelter protecting from rain at a picnic site.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "picnic_shelter" - }, - { - "key": "shelter_type", - "description": "Layer 'Shelter' shows shelter_type=gazebo with a fixed text, namely 'This is a gazebo.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "gazebo" - }, - { - "key": "shelter_type", - "description": "Layer 'Shelter' shows shelter_type=weather_shelter with a fixed text, namely 'This is a small shelter, primarily intended for short breaks. Usually found in the mountains or alongside roads.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "weather_shelter" - }, - { - "key": "shelter_type", - "description": "Layer 'Shelter' shows shelter_type=lean_to with a fixed text, namely 'This is a shed with 3 walls, primarily intended for camping.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "lean_to" - }, - { - "key": "shelter_type", - "description": "Layer 'Shelter' shows shelter_type=pavilion with a fixed text, namely 'This is a pavilion' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "pavilion" - }, - { - "key": "shelter_type", - "description": "Layer 'Shelter' shows shelter_type=basic_hut with a fixed text, namely 'This is a basic hut, providing basic shelter and sleeping facilities.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "basic_hut" - }, - { - "key": "shop", - "description": "The MapComplete theme Personal theme has a layer Shop showing features with this tag" - }, - { - "key": "craft", - "description": "The MapComplete theme Personal theme has a layer Shop showing features with this tag", - "value": "shoe_repair" - }, - { - "key": "craft", - "description": "The MapComplete theme Personal theme has a layer Shop showing features with this tag", - "value": "key_cutter" - }, - { - "key": "id", - "description": "Layer 'Shop' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Shop' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows and asks freeform values for key 'shop' (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=bicycle_rental with a fixed text, namely 'Bicycle rental shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "bicycle_rental" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=agrarian with a fixed text, namely 'Farm Supply Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "agrarian" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=alcohol with a fixed text, namely 'Liquor Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "alcohol" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=anime with a fixed text, namely 'Anime / Manga Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "anime" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=antiques with a fixed text, namely 'Antique Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "antiques" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=appliance with a fixed text, namely 'Appliance Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "appliance" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=art with a fixed text, namely 'Art Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "art" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=baby_goods with a fixed text, namely 'Baby Goods Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "baby_goods" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=bag with a fixed text, namely 'Bag/Luggage Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "bag" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=bakery with a fixed text, namely 'Bakery' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "bakery" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=bathroom_furnishing with a fixed text, namely 'Bathroom Furnishing Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "bathroom_furnishing" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=beauty with a fixed text, namely 'Beauty Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "beauty" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=bed with a fixed text, namely 'Bedding/Mattress Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "bed" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=beverages with a fixed text, namely 'Beverage Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "beverages" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=bicycle with a fixed text, namely 'Bicycle Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "bicycle" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=boat with a fixed text, namely 'Boat Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "boat" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=bookmaker with a fixed text, namely 'Bookmaker' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "bookmaker" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=books with a fixed text, namely 'Bookstore' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "books" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=brewing_supplies with a fixed text, namely 'Brewing Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "brewing_supplies" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=butcher with a fixed text, namely 'Butcher' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "butcher" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=camera with a fixed text, namely 'Camera Equipment Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "camera" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=candles with a fixed text, namely 'Candle Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "candles" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=cannabis with a fixed text, namely 'Cannabis Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "cannabis" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=car with a fixed text, namely 'Car Dealership' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "car" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=car_parts with a fixed text, namely 'Car Parts Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "car_parts" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=car_repair with a fixed text, namely 'Car Repair Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "car_repair" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=caravan with a fixed text, namely 'RV Dealership' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "caravan" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=carpet with a fixed text, namely 'Carpet Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "carpet" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=catalogue with a fixed text, namely 'Catalog Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "catalogue" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=charity with a fixed text, namely 'Charity Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "charity" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=cheese with a fixed text, namely 'Cheese Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "cheese" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=chemist with a fixed text, namely 'Drugstore' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "chemist" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=chocolate with a fixed text, namely 'Chocolate Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "chocolate" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=clothes with a fixed text, namely 'Clothing Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "clothes" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=coffee with a fixed text, namely 'Coffee Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "coffee" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=collector with a fixed text, namely 'Collectibles Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "collector" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=computer with a fixed text, namely 'Computer Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "computer" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=confectionery with a fixed text, namely 'Candy Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "confectionery" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=convenience with a fixed text, namely 'Convenience Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "convenience" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=copyshop with a fixed text, namely 'Copy Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "copyshop" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=cosmetics with a fixed text, namely 'Cosmetics Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "cosmetics" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=country_store with a fixed text, namely 'Rural Supplies Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "country_store" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=craft with a fixed text, namely 'Arts & Crafts Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "craft" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=curtain with a fixed text, namely 'Curtain Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "curtain" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=dairy with a fixed text, namely 'Dairy Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "dairy" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=deli with a fixed text, namely 'Delicatessen' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "deli" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=department_store with a fixed text, namely 'Department Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "department_store" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=doityourself with a fixed text, namely 'DIY Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "doityourself" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=doors with a fixed text, namely 'Door Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "doors" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=dry_cleaning with a fixed text, namely 'Dry Cleaner' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "dry_cleaning" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=e-cigarette with a fixed text, namely 'E-Cigarette Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "e-cigarette" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=electrical with a fixed text, namely 'Electrical Equipment Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "electrical" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=electronics with a fixed text, namely 'Electronics Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "electronics" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=erotic with a fixed text, namely 'Erotic Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "erotic" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=fabric with a fixed text, namely 'Fabric Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "fabric" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=farm with a fixed text, namely 'Produce Stand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "farm" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=fashion_accessories with a fixed text, namely 'Fashion Accessories Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "fashion_accessories" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=fireplace with a fixed text, namely 'Fireplace Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "fireplace" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=fishing with a fixed text, namely 'Fishing Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "fishing" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=flooring with a fixed text, namely 'Flooring Supply Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "flooring" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=florist with a fixed text, namely 'Florist' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "florist" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=frame with a fixed text, namely 'Framing Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "frame" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=frozen_food with a fixed text, namely 'Frozen Food Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "frozen_food" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=fuel with a fixed text, namely 'Fuel Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "fuel" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=funeral_directors with a fixed text, namely 'Funeral Home' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "funeral_directors" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=furniture with a fixed text, namely 'Furniture Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "furniture" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=games with a fixed text, namely 'Tabletop Game Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "games" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=garden_centre with a fixed text, namely 'Garden Center' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "garden_centre" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=gas with a fixed text, namely 'Bottled Gas Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "gas" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=general with a fixed text, namely 'General Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "general" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=gift with a fixed text, namely 'Gift Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "gift" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=greengrocer with a fixed text, namely 'Greengrocer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "greengrocer" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=hairdresser with a fixed text, namely 'Hairdresser' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "hairdresser" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=hairdresser_supply with a fixed text, namely 'Hairdresser Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "hairdresser_supply" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=hardware with a fixed text, namely 'Hardware Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "hardware" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=health_food with a fixed text, namely 'Health Food Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "health_food" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=hearing_aids with a fixed text, namely 'Hearing Aids Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "hearing_aids" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=herbalist with a fixed text, namely 'Herbalist' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "herbalist" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=hifi with a fixed text, namely 'Hifi Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "hifi" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=honey with a fixed text, namely 'Honey Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "honey" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=household_linen with a fixed text, namely 'Household Linen Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "household_linen" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=houseware with a fixed text, namely 'Houseware Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "houseware" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=hunting with a fixed text, namely 'Hunting Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "hunting" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=interior_decoration with a fixed text, namely 'Interior Decoration Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "interior_decoration" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=jewelry with a fixed text, namely 'Jewelry Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "jewelry" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=kiosk with a fixed text, namely 'Kiosk' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "kiosk" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=kitchen with a fixed text, namely 'Kitchen Design Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "kitchen" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=laundry with a fixed text, namely 'Laundry' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "laundry" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=leather with a fixed text, namely 'Leather Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "leather" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=lighting with a fixed text, namely 'Lighting Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "lighting" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=locksmith with a fixed text, namely 'Locksmith' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "locksmith" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=lottery with a fixed text, namely 'Lottery Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "lottery" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=mall with a fixed text, namely 'Mall' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "mall" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=massage with a fixed text, namely 'Massage Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "massage" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=medical_supply with a fixed text, namely 'Medical Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "medical_supply" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=military_surplus with a fixed text, namely 'Military Surplus Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "military_surplus" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=mobile_phone with a fixed text, namely 'Mobile Phone Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "mobile_phone" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=model with a fixed text, namely 'Model Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "model" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=money_lender with a fixed text, namely 'Money Lender' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "money_lender" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=motorcycle with a fixed text, namely 'Motorcycle Dealership' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "motorcycle" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=motorcycle_repair with a fixed text, namely 'Motorcycle Repair Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "motorcycle_repair" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=music with a fixed text, namely 'Music Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "music" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=musical_instrument with a fixed text, namely 'Musical Instrument Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "musical_instrument" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=newsagent with a fixed text, namely 'Newsstand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "newsagent" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=nutrition_supplements with a fixed text, namely 'Nutrition Supplements Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "nutrition_supplements" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=nuts with a fixed text, namely 'Nuts Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "nuts" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=optician with a fixed text, namely 'Optician' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "optician" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=outdoor with a fixed text, namely 'Outdoors Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "outdoor" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=outpost with a fixed text, namely 'Online Retailer Outpost' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "outpost" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=paint with a fixed text, namely 'Paint Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "paint" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=party with a fixed text, namely 'Party Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "party" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=pasta with a fixed text, namely 'Pasta Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "pasta" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=pastry with a fixed text, namely 'Pastry Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "pastry" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=pawnbroker with a fixed text, namely 'Pawnshop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "pawnbroker" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=perfumery with a fixed text, namely 'Perfume Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "perfumery" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=pet with a fixed text, namely 'Pet Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "pet" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=pet_grooming with a fixed text, namely 'Pet Groomer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "pet_grooming" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=photo with a fixed text, namely 'Photography Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "photo" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=pottery with a fixed text, namely 'Pottery Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "pottery" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=printer_ink with a fixed text, namely 'Printer Ink Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "printer_ink" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=psychic with a fixed text, namely 'Psychic' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "psychic" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=pyrotechnics with a fixed text, namely 'Fireworks Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "pyrotechnics" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=radiotechnics with a fixed text, namely 'Radio/Electronic Component Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "radiotechnics" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=religion with a fixed text, namely 'Religious Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "religion" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=rental with a fixed text, namely 'Rental Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "rental" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=repair with a fixed text, namely 'Repair Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "repair" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=rice with a fixed text, namely 'Rice Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "rice" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=scuba_diving with a fixed text, namely 'Scuba Diving Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "scuba_diving" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=seafood with a fixed text, namely 'Seafood Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "seafood" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=second_hand with a fixed text, namely 'Thrift Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "second_hand" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=sewing with a fixed text, namely 'Sewing Supply Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "sewing" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=shoe_repair with a fixed text, namely 'Shoe Repair Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "shoe_repair" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=shoes with a fixed text, namely 'Shoe Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "shoes" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=spices with a fixed text, namely 'Spice Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "spices" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=sports with a fixed text, namely 'Sporting Goods Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "sports" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=stationery with a fixed text, namely 'Stationery Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "stationery" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=storage_rental with a fixed text, namely 'Storage Rental' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "storage_rental" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=supermarket with a fixed text, namely 'Supermarket' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "supermarket" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=swimming_pool with a fixed text, namely 'Pool Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "swimming_pool" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=tailor with a fixed text, namely 'Tailor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "tailor" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=tattoo with a fixed text, namely 'Tattoo Parlor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "tattoo" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=tea with a fixed text, namely 'Tea Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "tea" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=telecommunication with a fixed text, namely 'Telecom Retail Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "telecommunication" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=ticket with a fixed text, namely 'Ticket Seller' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "ticket" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=tiles with a fixed text, namely 'Tile Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "tiles" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=tobacco with a fixed text, namely 'Tobacco Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "tobacco" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=tool_hire with a fixed text, namely 'Tool Rental' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "tool_hire" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=toys with a fixed text, namely 'Toy Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "toys" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=trade with a fixed text, namely 'Trade Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "trade" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=travel_agency with a fixed text, namely 'Travel Agency' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "travel_agency" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=trophy with a fixed text, namely 'Trophy Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "trophy" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=tyres with a fixed text, namely 'Tire Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "tyres" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=vacuum_cleaner with a fixed text, namely 'Vacuum Cleaner Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "vacuum_cleaner" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=variety_store with a fixed text, namely 'Discount Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "variety_store" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=video with a fixed text, namely 'Video Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "video" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=video_games with a fixed text, namely 'Video Game Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "video_games" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=watches with a fixed text, namely 'Watches Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "watches" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=water with a fixed text, namely 'Drinking Water Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "water" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=water_sports with a fixed text, namely 'Watersport/Swim Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "water_sports" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=weapons with a fixed text, namely 'Weapon Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "weapons" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=wholesale with a fixed text, namely 'Wholesale Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "wholesale" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=wigs with a fixed text, namely 'Wig Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "wigs" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=window_blind with a fixed text, namely 'Window Blind Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "window_blind" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=wine with a fixed text, namely 'Wine Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if craft=)", - "value": "wine" - }, - { - "key": "brand", - "description": "Layer 'Shop' shows and asks freeform values for key 'brand' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "not:brand", - "description": "Layer 'Shop' shows not:brand=yes with a fixed text, namely 'This shop does not have a specific brand, it is not part of a bigger chain' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "second_hand", - "description": "Layer 'Shop' shows second_hand=only with a fixed text, namely 'This shop sells second-hand items only' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=clothes | shop=books | shop=charity | shop=furniture | shop=mobile_phone | shop=computer | shop=toys)", - "value": "only" - }, - { - "key": "second_hand", - "description": "Layer 'Shop' shows second_hand=yes with a fixed text, namely 'This shop sells second-hand items along with new items' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=clothes | shop=books | shop=charity | shop=furniture | shop=mobile_phone | shop=computer | shop=toys)", - "value": "yes" - }, - { - "key": "second_hand", - "description": "Layer 'Shop' shows second_hand=no with a fixed text, namely 'This shop only sells brand-new items' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=clothes | shop=books | shop=charity | shop=furniture | shop=mobile_phone | shop=computer | shop=toys)", - "value": "no" - }, - { - "key": "opening_hours", - "description": "Layer 'Shop' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Shop' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "website", - "description": "Layer 'Shop' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Shop' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Shop' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Shop' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Shop' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'Shop' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Shop' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "payment:cash", - "description": "Layer 'Shop' shows payment:cash=yes with a fixed text, namely 'Cash is accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:cards", - "description": "Layer 'Shop' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:qr_code", - "description": "Layer 'Shop' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "level", - "description": "Layer 'Shop' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Shop' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Shop' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Shop' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Shop' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Shop' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "service:print:A4", - "description": "Layer 'Shop' shows service:print:A4=yes with a fixed text, namely 'This shop can print on papers of size A4' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "yes" - }, - { - "key": "service:print:A3", - "description": "Layer 'Shop' shows service:print:A3=yes with a fixed text, namely 'This shop can print on papers of size A3' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "yes" - }, - { - "key": "service:print:A2", - "description": "Layer 'Shop' shows service:print:A2=yes with a fixed text, namely 'This shop can print on papers of size A2' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "yes" - }, - { - "key": "service:print:A1", - "description": "Layer 'Shop' shows service:print:A1=yes with a fixed text, namely 'This shop can print on papers of size A1' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "yes" - }, - { - "key": "service:print:A0", - "description": "Layer 'Shop' shows service:print:A0=yes with a fixed text, namely 'This shop can print on papers of size A0' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "yes" - }, - { - "key": "service:binding", - "description": "Layer 'Shop' shows service:binding=yes with a fixed text, namely 'This shop binds papers into a booklet' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "yes" - }, - { - "key": "service:binding", - "description": "Layer 'Shop' shows service:binding=no with a fixed text, namely 'This shop does bind books' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "no" - }, - { - "key": "craft", - "description": "Layer 'Shop' shows craft=key_cutter with a fixed text, namely 'This shop is also specialized in key cutting' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=shoe_repair | service:key_cutting~.+ | craft=key_cutting | shop=diy | shop=doityourself | shop=home_improvement | shop=hardware | shop=locksmith | shop=repair)", - "value": "key_cutter" - }, - { - "key": "service:key_cutting", - "description": "Layer 'Shop' shows service:key_cutting=yes with a fixed text, namely 'This shop offers key cutting as a service' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=shoe_repair | service:key_cutting~.+ | craft=key_cutting | shop=diy | shop=doityourself | shop=home_improvement | shop=hardware | shop=locksmith | shop=repair)", - "value": "yes" - }, - { - "key": "craft", - "description": "Layer 'Shop' shows craft= & service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key craft. (This is only shown if shop=shoe_repair | service:key_cutting~.+ | craft=key_cutting | shop=diy | shop=doityourself | shop=home_improvement | shop=hardware | shop=locksmith | shop=repair)", - "value": "" - }, - { - "key": "service:key_cutting", - "description": "Layer 'Shop' shows craft= & service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=shoe_repair | service:key_cutting~.+ | craft=key_cutting | shop=diy | shop=doityourself | shop=home_improvement | shop=hardware | shop=locksmith | shop=repair)", - "value": "no" - }, - { - "key": "service:bicycle:retail", - "description": "Layer 'Shop' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", - "value": "yes" - }, - { - "key": "service:bicycle:retail", - "description": "Layer 'Shop' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", - "value": "no" - }, - { - "key": "service:bicycle:second_hand", - "description": "Layer 'Shop' shows service:bicycle:second_hand=yes with a fixed text, namely 'This shop sells second-hand bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:second_hand~.+ | shop=bicycle | shop=charity | shop=second_hand | shop=bicycle_repair)", - "value": "yes" - }, - { - "key": "service:bicycle:second_hand", - "description": "Layer 'Shop' shows service:bicycle:second_hand=no with a fixed text, namely 'This shop doesn't sell second-hand bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:second_hand~.+ | shop=bicycle | shop=charity | shop=second_hand | shop=bicycle_repair)", - "value": "no" - }, - { - "key": "service:bicycle:second_hand", - "description": "Layer 'Shop' shows service:bicycle:second_hand=only with a fixed text, namely 'This shop only sells second-hand bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:second_hand~.+ | shop=bicycle | shop=charity | shop=second_hand | shop=bicycle_repair)", - "value": "only" - }, - { - "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", - "value": "yes" - }, - { - "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", - "value": "no" - }, - { - "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", - "value": "only_sold" - }, - { - "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", - "value": "brand" - }, - { - "key": "service:bicycle:rental", - "description": "Layer 'Shop' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", - "value": "yes" - }, - { - "key": "service:bicycle:rental", - "description": "Layer 'Shop' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", - "value": "no" - }, - { - "key": "rental", - "description": "Layer 'Shop' shows and asks freeform values for key 'rental' (in the mapcomplete.org theme 'Personal theme') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))" - }, - { - "key": "rental", - "description": "Layer 'Shop' shows rental=city_bike with a fixed text, namely 'Normal city bikes can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))", - "value": "city_bike" - }, - { - "key": "rental", - "description": "Layer 'Shop' shows rental=ebike with a fixed text, namely 'Electrical bikes can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))", - "value": "ebike" - }, - { - "key": "rental", - "description": "Layer 'Shop' shows rental=bmx with a fixed text, namely 'BMX bikes can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))", - "value": "bmx" - }, - { - "key": "rental", - "description": "Layer 'Shop' shows rental=mtb with a fixed text, namely 'Mountainbikes can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))", - "value": "mtb" - }, - { - "key": "rental", - "description": "Layer 'Shop' shows rental=kid_bike with a fixed text, namely 'Bikes for children can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))", - "value": "kid_bike" - }, - { - "key": "rental", - "description": "Layer 'Shop' shows rental=tandem with a fixed text, namely 'Tandem bicycles can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))", - "value": "tandem" - }, - { - "key": "rental", - "description": "Layer 'Shop' shows rental=racebike with a fixed text, namely 'Race bicycles can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))", - "value": "racebike" - }, - { - "key": "rental", - "description": "Layer 'Shop' shows rental=bike_helmet with a fixed text, namely 'Bike helmets can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))", - "value": "bike_helmet" - }, - { - "key": "rental", - "description": "Layer 'Shop' shows rental=cargo_bike with a fixed text, namely 'Cargo bikes can be rented here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (service:bicycle:rental=yes | bicycle_rental~.+))", - "value": "cargo_bike" - }, - { - "key": "capacity:city_bike", - "description": "Layer 'Shop' shows and asks freeform values for key 'capacity:city_bike' (in the mapcomplete.org theme 'Personal theme') (This is only shown if rental~^(.*city_bike.*)$ & (service:bicycle:rental=yes | bicycle_rental~.+))" - }, - { - "key": "capacity:ebike", - "description": "Layer 'Shop' shows and asks freeform values for key 'capacity:ebike' (in the mapcomplete.org theme 'Personal theme') (This is only shown if rental~^(.*ebike.*)$ & (service:bicycle:rental=yes | bicycle_rental~.+))" - }, - { - "key": "capacity:kid_bike", - "description": "Layer 'Shop' shows and asks freeform values for key 'capacity:kid_bike' (in the mapcomplete.org theme 'Personal theme') (This is only shown if rental~^(.*kid_bike.*)$ & (service:bicycle:rental=yes | bicycle_rental~.+))" - }, - { - "key": "capacity:bmx", - "description": "Layer 'Shop' shows and asks freeform values for key 'capacity:bmx' (in the mapcomplete.org theme 'Personal theme') (This is only shown if rental~^(.*bmx.*)$ & (service:bicycle:rental=yes | bicycle_rental~.+))" - }, - { - "key": "capacity:mtb", - "description": "Layer 'Shop' shows and asks freeform values for key 'capacity:mtb' (in the mapcomplete.org theme 'Personal theme') (This is only shown if rental~^(.*mtb.*)$ & (service:bicycle:rental=yes | bicycle_rental~.+))" - }, - { - "key": "capacity:bicycle_pannier", - "description": "Layer 'Shop' shows and asks freeform values for key 'capacity:bicycle_pannier' (in the mapcomplete.org theme 'Personal theme') (This is only shown if rental~^(.*bicycle_pannier.*)$ & (service:bicycle:rental=yes | bicycle_rental~.+))" - }, - { - "key": "capacity:tandem_bicycle", - "description": "Layer 'Shop' shows and asks freeform values for key 'capacity:tandem_bicycle' (in the mapcomplete.org theme 'Personal theme') (This is only shown if rental~^(.*tandem_bicycle.*)$ & (service:bicycle:rental=yes | bicycle_rental~.+))" - }, - { - "key": "service:bicycle:pump", - "description": "Layer 'Shop' shows service:bicycle:pump=yes with a fixed text, namely 'This shop offers a bike pump for anyone' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:pump~.+ | shop=bicycle | shop=bicycle_repair | service:bicycle:retail=yes | ^(service:bicycle:.+)$~~^(yes)$)", - "value": "yes" - }, - { - "key": "service:bicycle:pump", - "description": "Layer 'Shop' shows service:bicycle:pump=no with a fixed text, namely 'This shop doesn't offer a bike pump for anyone' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:pump~.+ | shop=bicycle | shop=bicycle_repair | service:bicycle:retail=yes | ^(service:bicycle:.+)$~~^(yes)$)", - "value": "no" - }, - { - "key": "service:bicycle:pump", - "description": "Layer 'Shop' shows service:bicycle:pump=separate with a fixed text, namely 'There is bicycle pump, it is shown as a separate point' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:pump~.+ | shop=bicycle | shop=bicycle_repair | service:bicycle:retail=yes | ^(service:bicycle:.+)$~~^(yes)$)", - "value": "separate" - }, - { - "key": "service:bicycle:diy", - "description": "Layer 'Shop' shows service:bicycle:diy=yes with a fixed text, namely 'This shop offers tools for DIY bicycle repair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:diy~.+ | shop=bicycle | shop=bicycle_repair | service:bicycle:repair~^(yes|only)$)", - "value": "yes" - }, - { - "key": "service:bicycle:diy", - "description": "Layer 'Shop' shows service:bicycle:diy=no with a fixed text, namely 'This shop doesn't offer tools for DIY bicycle repair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:diy~.+ | shop=bicycle | shop=bicycle_repair | service:bicycle:repair~^(yes|only)$)", - "value": "no" - }, - { - "key": "service:bicycle:diy", - "description": "Layer 'Shop' shows service:bicycle:diy=only_sold with a fixed text, namely 'Tools for DIY bicycle repair are only available if you bought/hire the bike in the shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:diy~.+ | shop=bicycle | shop=bicycle_repair | service:bicycle:repair~^(yes|only)$)", - "value": "only_sold" - }, - { - "key": "service:bicycle:cleaning", - "description": "Layer 'Shop' shows service:bicycle:cleaning=yes with a fixed text, namely 'This shop cleans bicycles' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:cleaning~.+ | shop=bicycle | shop=bicycle_repair | ^(service:bicycle:.*)$~~^(yes|only)$)", - "value": "yes" - }, - { - "key": "service:bicycle:cleaning", - "description": "Layer 'Shop' shows service:bicycle:cleaning=diy with a fixed text, namely 'This shop has an installation where one can clean bicycles themselves' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:cleaning~.+ | shop=bicycle | shop=bicycle_repair | ^(service:bicycle:.*)$~~^(yes|only)$)", - "value": "diy" - }, - { - "key": "service:bicycle:cleaning", - "description": "Layer 'Shop' shows service:bicycle:cleaning=no with a fixed text, namely 'This shop doesn't offer bicycle cleaning' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if service:bicycle:cleaning~.+ | shop=bicycle | shop=bicycle_repair | ^(service:bicycle:.*)$~~^(yes|only)$)", - "value": "no" - }, - { - "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Shop' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)" - }, - { - "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Shop' 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 'Personal theme') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", - "value": "no" - }, - { - "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", - "value": "yes" - }, - { - "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Personal theme') 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~.+)", - "value": "" - }, - { - "key": "internet_access", - "description": "Layer 'Shop' shows internet_access=wlan with a fixed text, namely 'This place offers wireless internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wlan" - }, - { - "key": "internet_access", - "description": "Layer 'Shop' shows internet_access=no with a fixed text, namely 'This place does not offer internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "internet_access", - "description": "Layer 'Shop' shows internet_access=yes with a fixed text, namely 'This place offers internet access' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "internet_access", - "description": "Layer 'Shop' shows internet_access=terminal with a fixed text, namely 'This place offers internet access via a terminal or computer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "terminal" - }, - { - "key": "internet_access", - "description": "Layer 'Shop' shows internet_access=wired with a fixed text, namely 'This place offers wired internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wired" - }, - { - "key": "internet_access", - "description": "Layer 'Shop' shows internet_access=terminal;wifi with a fixed text, namely 'This place offers both wireless internet and internet access via a terminal or computer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "terminal;wifi" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Shop' shows internet_access:fee=yes with a fixed text, namely 'There is a fee for the internet access at this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "yes" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Shop' shows internet_access:fee=no with a fixed text, namely 'Internet access is free at this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "no" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Shop' shows internet_access:fee=customers with a fixed text, namely 'Internet access is free at this place, for customers only' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "customers" - }, - { - "key": "internet_access:ssid", - "description": "Layer 'Shop' shows and asks freeform values for key 'internet_access:ssid' (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access~^(.*wlan.*)$)" - }, - { - "key": "internet_access:ssid", - "description": "Layer 'Shop' shows internet_access:ssid=Telekom with a fixed text, namely 'Telekom' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access~^(.*wlan.*)$)", - "value": "Telekom" - }, - { - "key": "organic", - "description": "Layer 'Shop' shows organic=yes with a fixed text, namely 'This shop offers organic products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=clothes | shop=shoes | shop=butcher | shop=cosmetics | shop=deli | shop=bakery | shop=alcohol | shop=seafood | shop=beverages | shop=florist)", - "value": "yes" - }, - { - "key": "organic", - "description": "Layer 'Shop' shows organic=only with a fixed text, namely 'This shop only offers organic products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=clothes | shop=shoes | shop=butcher | shop=cosmetics | shop=deli | shop=bakery | shop=alcohol | shop=seafood | shop=beverages | shop=florist)", - "value": "only" - }, - { - "key": "organic", - "description": "Layer 'Shop' shows organic=no with a fixed text, namely 'This shop does not offer organic products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=clothes | shop=shoes | shop=butcher | shop=cosmetics | shop=deli | shop=bakery | shop=alcohol | shop=seafood | shop=beverages | shop=florist)", - "value": "no" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Shop' shows diet:sugar_free=only with a fixed text, namely 'This shop only sells sugar free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "only" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Shop' shows diet:sugar_free=yes with a fixed text, namely 'This shop has a big sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "yes" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Shop' shows diet:sugar_free=limited with a fixed text, namely 'This shop has a limited sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "limited" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Shop' shows diet:sugar_free=no with a fixed text, namely 'This shop has no sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "no" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Shop' shows diet:gluten_free=only with a fixed text, namely 'This shop only sells gluten free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "only" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Shop' shows diet:gluten_free=yes with a fixed text, namely 'This shop has a big gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "yes" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Shop' shows diet:gluten_free=limited with a fixed text, namely 'This shop has a limited gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "limited" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Shop' shows diet:gluten_free=no with a fixed text, namely 'This shop has no gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "no" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Shop' shows diet:lactose_free=only with a fixed text, namely 'Only sells lactose free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "only" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Shop' shows diet:lactose_free=yes with a fixed text, namely 'Big lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "yes" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Shop' shows diet:lactose_free=limited with a fixed text, namely 'Limited lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "limited" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Shop' shows diet:lactose_free=no with a fixed text, namely 'No lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "no" - }, - { - "key": "description", - "description": "Layer 'Shop' shows and asks freeform values for key 'description' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Shower showing features with this tag", - "value": "shower" - }, - { - "key": "id", - "description": "Layer 'Shower' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Shower allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Shower allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Shower allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Shower allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "level", - "description": "Layer 'Shower' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Shower' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Shower' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Shower' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Shower' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Shower' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "access", - "description": "Layer 'Shower' shows access=yes with a fixed text, namely 'Anyone can use this shower' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "access", - "description": "Layer 'Shower' shows access=customers with a fixed text, namely 'Only customers can use this shower' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "customers" - }, - { - "key": "access", - "description": "Layer 'Shower' shows access=key with a fixed text, namely 'Accesible, but one has to ask for a key' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "key" - }, - { - "key": "fee", - "description": "Layer 'Shower' shows fee=yes with a fixed text, namely 'There is a fee for using this shower' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "fee", - "description": "Layer 'Shower' shows fee=no with a fixed text, namely 'This shower is free to use' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "charge", - "description": "Layer 'Shower' shows and asks freeform values for key 'charge' (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes)" - }, - { - "key": "opening_hours", - "description": "Layer 'Shower' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Shower' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "hot_water", - "description": "Layer 'Shower' shows hot_water=yes with a fixed text, namely 'Hot water is available here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "hot_water", - "description": "Layer 'Shower' shows hot_water=fee with a fixed text, namely 'Hot water is available here, but there is a fee' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "fee" - }, - { - "key": "hot_water", - "description": "Layer 'Shower' shows hot_water=no with a fixed text, namely 'There is no hot water available here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "payment:cash", - "description": "Layer 'Shower' shows payment:cash=yes with a fixed text, namely 'Cash is accepted here' (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | hot_water=fee)", - "value": "yes" - }, - { - "key": "payment:cards", - "description": "Layer 'Shower' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted here' (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | hot_water=fee)", - "value": "yes" - }, - { - "key": "payment:qr_code", - "description": "Layer 'Shower' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | hot_water=fee)", - "value": "yes" - }, - { - "key": "payment:coins", - "description": "Layer 'Shower' shows payment:coins=yes with a fixed text, namely 'Coins are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | hot_water=fee)", - "value": "yes" - }, - { - "key": "payment:notes", - "description": "Layer 'Shower' shows payment:notes=yes with a fixed text, namely 'Bank notes are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | hot_water=fee)", - "value": "yes" - }, - { - "key": "payment:debit_cards", - "description": "Layer 'Shower' shows payment:debit_cards=yes with a fixed text, namely 'Debit cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | hot_water=fee)", - "value": "yes" - }, - { - "key": "payment:credit_cards", - "description": "Layer 'Shower' shows payment:credit_cards=yes with a fixed text, namely 'Credit cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes | hot_water=fee)", - "value": "yes" - }, - { - "key": "piste:type", - "description": "The MapComplete theme Personal theme has a layer Ski and snowboard pistes showing features with this tag", - "value": "downhill" - }, - { - "key": "piste:type", - "description": "The MapComplete theme Personal theme has a layer Ski and snowboard pistes showing features with this tag", - "value": "connection" - }, - { - "key": "id", - "description": "Layer 'Ski and snowboard pistes' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Ski and snowboard pistes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Ski and snowboard pistes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Ski and snowboard pistes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Ski and snowboard pistes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "piste:difficulty", - "description": "Layer 'Ski and snowboard pistes' shows piste:difficulty=novice with a fixed text, namely 'Novice (green)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if piste:type!=connection)", - "value": "novice" - }, - { - "key": "piste:difficulty", - "description": "Layer 'Ski and snowboard pistes' shows piste:difficulty=easy with a fixed text, namely 'Easy (blue)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if piste:type!=connection)", - "value": "easy" - }, - { - "key": "piste:difficulty", - "description": "Layer 'Ski and snowboard pistes' shows piste:difficulty=intermediate with a fixed text, namely 'Intermediate (red)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if piste:type!=connection)", - "value": "intermediate" - }, - { - "key": "piste:difficulty", - "description": "Layer 'Ski and snowboard pistes' shows piste:difficulty=advanced with a fixed text, namely 'Advanced (black)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if piste:type!=connection)", - "value": "advanced" - }, - { - "key": "piste:difficulty", - "description": "Layer 'Ski and snowboard pistes' shows piste:difficulty=expert with a fixed text, namely 'Expert (orange/double black)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if piste:type!=connection)", - "value": "expert" - }, - { - "key": "piste:difficulty", - "description": "Layer 'Ski and snowboard pistes' shows piste:difficulty=freeride with a fixed text, namely 'Freeride' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if piste:type!=connection)", - "value": "freeride" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Souvenir Coin Machines showing features with this tag", - "value": "vending_machine" - }, - { - "key": "vending", - "description": "The MapComplete theme Personal theme has a layer Souvenir Coin Machines showing features with this tag" - }, - { - "key": "id", - "description": "Layer 'Souvenir Coin Machines' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Souvenir Coin Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Souvenir Coin Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Souvenir Coin Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Souvenir Coin Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "opening_hours", - "description": "Layer 'Souvenir Coin Machines' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Souvenir Coin Machines' shows opening_hours=24/7 with a fixed text, namely '24/7 opened (including holidays)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "24/7" - }, - { - "key": "opening_hours", - "description": "Layer 'Souvenir Coin Machines' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "coin:design_count", - "description": "Layer 'Souvenir Coin Machines' shows and asks freeform values for key 'coin:design_count' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "coin:design_count", - "description": "Layer 'Souvenir Coin Machines' shows coin:design_count=1 with a fixed text, namely 'This machine has one design available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "coin:design_count", - "description": "Layer 'Souvenir Coin Machines' shows coin:design_count=2 with a fixed text, namely 'This machine has two designs available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "2" - }, - { - "key": "coin:design_count", - "description": "Layer 'Souvenir Coin Machines' shows coin:design_count=3 with a fixed text, namely 'This machine has three designs available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "3" - }, - { - "key": "coin:design_count", - "description": "Layer 'Souvenir Coin Machines' shows coin:design_count=4 with a fixed text, namely 'This machine has four designs available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "4" - }, - { - "key": "payment:cash", - "description": "Layer 'Souvenir Coin Machines' shows payment:cash=yes with a fixed text, namely 'Cash is accepted here' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:cards", - "description": "Layer 'Souvenir Coin Machines' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted here' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:qr_code", - "description": "Layer 'Souvenir Coin Machines' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:coins", - "description": "Layer 'Souvenir Coin Machines' shows payment:coins=yes with a fixed text, namely 'Coins are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:notes", - "description": "Layer 'Souvenir Coin Machines' shows payment:notes=yes with a fixed text, namely 'Bank notes are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:debit_cards", - "description": "Layer 'Souvenir Coin Machines' shows payment:debit_cards=yes with a fixed text, namely 'Debit cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:credit_cards", - "description": "Layer 'Souvenir Coin Machines' shows payment:credit_cards=yes with a fixed text, namely 'Credit cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "website", - "description": "Layer 'Souvenir Coin Machines' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Souvenir Coin Machines' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "charge", - "description": "Layer 'Souvenir Coin Machines' shows and asks freeform values for key 'charge' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "charge", - "description": "Layer 'Souvenir Coin Machines' shows charge=2 EUR with a fixed text, namely 'A souvenir coin costs 2 euro' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "2 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Coin Machines' shows payment:coins:denominations=0.01 EUR with a fixed text, namely '1 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.01 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Coin Machines' shows payment:coins:denominations=0.02 EUR with a fixed text, namely '2 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.02 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Coin Machines' shows payment:coins:denominations=0.05 EUR with a fixed text, namely '5 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.05 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Coin Machines' shows payment:coins:denominations=0.10 EUR with a fixed text, namely '10 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.10 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Coin Machines' shows payment:coins:denominations=0.20 EUR with a fixed text, namely '20 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.20 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Coin Machines' shows payment:coins:denominations=0.50 EUR with a fixed text, namely '50 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.50 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Coin Machines' shows payment:coins:denominations=1 EUR with a fixed text, namely '1 euro coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "1 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Coin Machines' shows payment:coins:denominations=2 EUR with a fixed text, namely '2 euro coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "2 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Coin Machines' shows payment:coins:denominations=0.05 CHF with a fixed text, namely '5 centimes coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.05 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Coin Machines' shows payment:coins:denominations=0.10 CHF with a fixed text, namely '10 centimes coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.10 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Coin Machines' shows payment:coins:denominations=0.20 CHF with a fixed text, namely '20 centimes coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.20 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Coin Machines' shows payment:coins:denominations=0.50 CHF with a fixed text, namely '½ franc coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.50 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Coin Machines' shows payment:coins:denominations=1 CHF with a fixed text, namely '1 franc coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "1 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Coin Machines' shows payment:coins:denominations=2 CHF with a fixed text, namely '2 francs coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "2 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Coin Machines' shows payment:coins:denominations=5 CHF with a fixed text, namely '5 francs coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "5 CHF" - }, - { - "key": "indoor", - "description": "Layer 'Souvenir Coin Machines' shows indoor=yes with a fixed text, namely 'This machine is located indoors.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "indoor", - "description": "Layer 'Souvenir Coin Machines' shows indoor=no with a fixed text, namely 'This machine is located outdoors.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "level", - "description": "Layer 'Souvenir Coin Machines' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Souvenir Coin Machines' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Souvenir Coin Machines' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Souvenir Coin Machines' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Souvenir Coin Machines' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Souvenir Coin Machines' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "check_date", - "description": "Layer 'Souvenir Coin Machines' shows and asks freeform values for key 'check_date' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "check_date", - "description": "Layer 'Souvenir Coin Machines' shows check_date= with a fixed text, namely 'This object was last checked today' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key check_date.", - "value": "" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Souvenir Banknote Machines showing features with this tag", - "value": "vending_machine" - }, - { - "key": "vending", - "description": "The MapComplete theme Personal theme has a layer Souvenir Banknote Machines showing features with this tag" - }, - { - "key": "id", - "description": "Layer 'Souvenir Banknote Machines' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Souvenir Banknote Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Souvenir Banknote Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Souvenir Banknote Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Souvenir Banknote Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "opening_hours", - "description": "Layer 'Souvenir Banknote Machines' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Souvenir Banknote Machines' shows opening_hours=24/7 with a fixed text, namely '24/7 opened (including holidays)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "24/7" - }, - { - "key": "opening_hours", - "description": "Layer 'Souvenir Banknote Machines' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "note:design_count", - "description": "Layer 'Souvenir Banknote Machines' shows and asks freeform values for key 'note:design_count' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "note:design_count", - "description": "Layer 'Souvenir Banknote Machines' shows note:design_count=1 with a fixed text, namely 'This machine has one design available.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "1" - }, - { - "key": "note:design_count", - "description": "Layer 'Souvenir Banknote Machines' shows note:design_count=2 with a fixed text, namely 'This machine has two designs available.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "2" - }, - { - "key": "note:design_count", - "description": "Layer 'Souvenir Banknote Machines' shows note:design_count=3 with a fixed text, namely 'This machine has three designs available.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "3" - }, - { - "key": "note:design_count", - "description": "Layer 'Souvenir Banknote Machines' shows note:design_count=4 with a fixed text, namely 'This machine has four designs available.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "4" - }, - { - "key": "payment:cash", - "description": "Layer 'Souvenir Banknote Machines' shows payment:cash=yes with a fixed text, namely 'Cash is accepted here' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:cards", - "description": "Layer 'Souvenir Banknote Machines' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted here' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:qr_code", - "description": "Layer 'Souvenir Banknote Machines' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:coins", - "description": "Layer 'Souvenir Banknote Machines' shows payment:coins=yes with a fixed text, namely 'Coins are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:notes", - "description": "Layer 'Souvenir Banknote Machines' shows payment:notes=yes with a fixed text, namely 'Bank notes are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:debit_cards", - "description": "Layer 'Souvenir Banknote Machines' shows payment:debit_cards=yes with a fixed text, namely 'Debit cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:credit_cards", - "description": "Layer 'Souvenir Banknote Machines' shows payment:credit_cards=yes with a fixed text, namely 'Credit cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "website", - "description": "Layer 'Souvenir Banknote Machines' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Souvenir Banknote Machines' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "charge", - "description": "Layer 'Souvenir Banknote Machines' shows and asks freeform values for key 'charge' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "charge", - "description": "Layer 'Souvenir Banknote Machines' shows charge=2 EUR with a fixed text, namely 'A souvenir note costs 2 euro' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "2 EUR" - }, - { - "key": "charge", - "description": "Layer 'Souvenir Banknote Machines' shows charge=3 EUR with a fixed text, namely 'A souvenir note costs 3 euro' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "3 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Banknote Machines' shows payment:coins:denominations=0.01 EUR with a fixed text, namely '1 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.01 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Banknote Machines' shows payment:coins:denominations=0.02 EUR with a fixed text, namely '2 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.02 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Banknote Machines' shows payment:coins:denominations=0.05 EUR with a fixed text, namely '5 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.05 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Banknote Machines' shows payment:coins:denominations=0.10 EUR with a fixed text, namely '10 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.10 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Banknote Machines' shows payment:coins:denominations=0.20 EUR with a fixed text, namely '20 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.20 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Banknote Machines' shows payment:coins:denominations=0.50 EUR with a fixed text, namely '50 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.50 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Banknote Machines' shows payment:coins:denominations=1 EUR with a fixed text, namely '1 euro coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "1 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Banknote Machines' shows payment:coins:denominations=2 EUR with a fixed text, namely '2 euro coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "2 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Banknote Machines' shows payment:coins:denominations=0.05 CHF with a fixed text, namely '5 centimes coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.05 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Banknote Machines' shows payment:coins:denominations=0.10 CHF with a fixed text, namely '10 centimes coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.10 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Banknote Machines' shows payment:coins:denominations=0.20 CHF with a fixed text, namely '20 centimes coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.20 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Banknote Machines' shows payment:coins:denominations=0.50 CHF with a fixed text, namely '½ franc coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.50 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Banknote Machines' shows payment:coins:denominations=1 CHF with a fixed text, namely '1 franc coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "1 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Banknote Machines' shows payment:coins:denominations=2 CHF with a fixed text, namely '2 francs coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "2 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Souvenir Banknote Machines' shows payment:coins:denominations=5 CHF with a fixed text, namely '5 francs coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "5 CHF" - }, - { - "key": "indoor", - "description": "Layer 'Souvenir Banknote Machines' shows indoor=yes with a fixed text, namely 'This machine is located indoors.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "indoor", - "description": "Layer 'Souvenir Banknote Machines' shows indoor=no with a fixed text, namely 'This machine is located outdoors.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "level", - "description": "Layer 'Souvenir Banknote Machines' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Souvenir Banknote Machines' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Souvenir Banknote Machines' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Souvenir Banknote Machines' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Souvenir Banknote Machines' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Souvenir Banknote Machines' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "check_date", - "description": "Layer 'Souvenir Banknote Machines' shows and asks freeform values for key 'check_date' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "check_date", - "description": "Layer 'Souvenir Banknote Machines' shows check_date= with a fixed text, namely 'This object was last checked today' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key check_date.", - "value": "" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Speed Camera showing features with this tag", - "value": "speed_camera" - }, - { - "key": "id", - "description": "Layer 'Speed Camera' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Speed Camera allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Speed Camera allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Speed Camera allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Speed Camera allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "maxspeed", - "description": "Layer 'Speed Camera' shows and asks freeform values for key 'maxspeed' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "direction", - "description": "Layer 'Speed Camera' shows and asks freeform values for key 'direction' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Speed Display showing features with this tag", - "value": "speed_display" - }, - { - "key": "id", - "description": "Layer 'Speed Display' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "maxspeed", - "description": "Layer 'Speed Display' shows and asks freeform values for key 'maxspeed' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "inscription", - "description": "Layer 'Speed Display' shows and asks freeform values for key 'inscription' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "leisure", - "description": "The MapComplete theme Personal theme has a layer Sport pitches showing features with this tag", - "value": "pitch" - }, - { - "key": "id", - "description": "Layer 'Sport pitches' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Sport pitches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Sport pitches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Sport pitches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Sport pitches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "sport", - "description": "Layer 'Sport pitches' shows and asks freeform values for key 'sport' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "sport", - "description": "Layer 'Sport pitches' shows sport=basketball with a fixed text, namely 'Basketball is played here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "basketball" - }, - { - "key": "sport", - "description": "Layer 'Sport pitches' shows sport=soccer with a fixed text, namely 'Soccer is played here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "soccer" - }, - { - "key": "sport", - "description": "Layer 'Sport pitches' shows sport=table_tennis with a fixed text, namely 'This is a pingpong table' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "table_tennis" - }, - { - "key": "sport", - "description": "Layer 'Sport pitches' shows sport=tennis with a fixed text, namely 'Tennis is played here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "tennis" - }, - { - "key": "sport", - "description": "Layer 'Sport pitches' shows sport=korfball with a fixed text, namely 'Korfball is played here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "korfball" - }, - { - "key": "sport", - "description": "Layer 'Sport pitches' shows sport=basket with a fixed text, namely 'Basketball is played here' (in the mapcomplete.org theme 'Personal theme')", - "value": "basket" - }, - { - "key": "sport", - "description": "Layer 'Sport pitches' shows sport=skateboard with a fixed text, namely 'This is a skatepark' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "skateboard" - }, - { - "key": "hoops", - "description": "Layer 'Sport pitches' shows hoops=1 with a fixed text, namely 'This basketball pitch has a single hoop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if sport~^((^|.*;)basketball(;.*|$))$)", - "value": "1" - }, - { - "key": "hoops", - "description": "Layer 'Sport pitches' shows hoops=2 with a fixed text, namely 'This basketball pitch has two hoops' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if sport~^((^|.*;)basketball(;.*|$))$)", - "value": "2" - }, - { - "key": "hoops", - "description": "Layer 'Sport pitches' shows hoops=4 with a fixed text, namely 'This basketball pitch has four hoops' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if sport~^((^|.*;)basketball(;.*|$))$)", - "value": "4" - }, - { - "key": "hoops", - "description": "Layer 'Sport pitches' shows hoops~.+ with a fixed text, namely 'This basketball pitch has {hoops} hoops' (in the mapcomplete.org theme 'Personal theme') (This is only shown if sport~^((^|.*;)basketball(;.*|$))$)" - }, - { - "key": "surface", - "description": "Layer 'Sport pitches' shows and asks freeform values for key 'surface' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "surface", - "description": "Layer 'Sport pitches' shows surface=grass with a fixed text, namely 'The surface is grass' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "grass" - }, - { - "key": "surface", - "description": "Layer 'Sport pitches' shows surface=sand with a fixed text, namely 'The surface is sand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sand" - }, - { - "key": "surface", - "description": "Layer 'Sport pitches' shows surface=paving_stones with a fixed text, namely 'The surface is paving stones' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "paving_stones" - }, - { - "key": "surface", - "description": "Layer 'Sport pitches' shows surface=asphalt with a fixed text, namely 'The surface is asphalt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "asphalt" - }, - { - "key": "surface", - "description": "Layer 'Sport pitches' shows surface=concrete with a fixed text, namely 'The surface is concrete' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "concrete" - }, - { - "key": "surface", - "description": "Layer 'Sport pitches' shows surface=fine_gravel with a fixed text, namely 'The surface is fine gravel' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "fine_gravel" - }, - { - "key": "surface", - "description": "Layer 'Sport pitches' shows surface=tartan with a fixed text, namely 'The surface of this track is Tartan, a synthetic, slightly springy, porous surface' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "tartan" - }, - { - "key": "access", - "description": "Layer 'Sport pitches' shows access=yes with a fixed text, namely 'Public access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "access", - "description": "Layer 'Sport pitches' shows access=limited with a fixed text, namely 'Limited access (e.g. only with an appointment, during certain hours, …)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "access", - "description": "Layer 'Sport pitches' shows access=members with a fixed text, namely 'Only accessible for members of the club' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "members" - }, - { - "key": "access", - "description": "Layer 'Sport pitches' shows access=private with a fixed text, namely 'Private - not accessible to the public' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "private" - }, - { - "key": "access", - "description": "Layer 'Sport pitches' shows access=public with a fixed text, namely 'Public access' (in the mapcomplete.org theme 'Personal theme')", - "value": "public" - }, - { - "key": "reservation", - "description": "Layer 'Sport pitches' shows reservation=required with a fixed text, namely 'Making an appointment is obligatory to use this sport pitch' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if access!=public & access!=private & access!=members)", - "value": "required" - }, - { - "key": "reservation", - "description": "Layer 'Sport pitches' shows reservation=recommended with a fixed text, namely 'Making an appointment is recommended when using this sport pitch' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if access!=public & access!=private & access!=members)", - "value": "recommended" - }, - { - "key": "reservation", - "description": "Layer 'Sport pitches' shows reservation=yes with a fixed text, namely 'Making an appointment is possible, but not necessary to use this sport pitch' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if access!=public & access!=private & access!=members)", - "value": "yes" - }, - { - "key": "reservation", - "description": "Layer 'Sport pitches' shows reservation=no with a fixed text, namely 'Making an appointment is not possible' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if access!=public & access!=private & access!=members)", - "value": "no" - }, - { - "key": "phone", - "description": "Layer 'Sport pitches' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Sport pitches' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Sport pitches' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme') (This is only shown if access~.+)" - }, - { - "key": "opening_hours", - "description": "Layer 'Sport pitches' shows opening_hours= with a fixed text, namely 'Always accessible' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key opening_hours. (This is only shown if access~.+)", - "value": "" - }, - { - "key": "opening_hours", - "description": "Layer 'Sport pitches' shows opening_hours=24/7 with a fixed text, namely 'Always accessible' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if access~.+)", - "value": "24/7" - }, - { - "key": "leisure", - "description": "The MapComplete theme Personal theme has a layer Sports centres showing features with this tag", - "value": "sports_centre" - }, - { - "key": "id", - "description": "Layer 'Sports centres' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Sports centres allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Sports centres allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Sports centres allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Sports centres allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "opening_hours", - "description": "Layer 'Sports centres' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Sports centres' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "phone", - "description": "Layer 'Sports centres' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Sports centres' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Sports centres' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Sports centres' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Sports centres' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Sports centres' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Sports centres' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "wheelchair", - "description": "Layer 'Sports centres' shows wheelchair=designated with a fixed text, namely 'This place is specially adapted for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "designated" - }, - { - "key": "wheelchair", - "description": "Layer 'Sports centres' shows wheelchair=yes with a fixed text, namely 'This place is easily reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "wheelchair", - "description": "Layer 'Sports centres' shows wheelchair=limited with a fixed text, namely 'It is possible to reach this place in a wheelchair, but it is not easy' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "wheelchair", - "description": "Layer 'Sports centres' shows wheelchair=no with a fixed text, namely 'This place is not reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Stairs showing features with this tag", - "value": "steps" - }, - { - "key": "id", - "description": "Layer 'Stairs' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Stairs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Stairs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Stairs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Stairs allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "level", - "description": "Layer 'Stairs' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Stairs' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Stairs' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Stairs' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Stairs' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Stairs' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "conveying", - "description": "Layer 'Stairs' shows conveying=yes with a fixed text, namely 'This is an escalator' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "conveying", - "description": "Layer 'Stairs' shows conveying=no with a fixed text, namely 'This is not an escalator' (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "conveying", - "description": "Layer 'Stairs' shows conveying= with a fixed text, namely 'This is not an escalator' (in the mapcomplete.org theme 'Personal theme')", - "value": "" - }, - { - "key": "handrail", - "description": "Layer 'Stairs' shows handrail=yes with a fixed text, namely 'These stairs have a handrail' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if conveying!=yes)", - "value": "yes" - }, - { - "key": "handrail", - "description": "Layer 'Stairs' shows handrail=no with a fixed text, namely 'These stairs do not have a handrail' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if conveying!=yes)", - "value": "no" - }, - { - "key": "tactile_writing", - "description": "Layer 'Stairs' shows tactile_writing=yes with a fixed text, namely 'There is tactile writing on the handrail' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if handrail=yes & conveying!=yes)", - "value": "yes" - }, - { - "key": "tactile_writing", - "description": "Layer 'Stairs' shows tactile_writing=no with a fixed text, namely 'There is no tactile writing on the handrail' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if handrail=yes & conveying!=yes)", - "value": "no" - }, - { - "key": "ramp:bicycle", - "description": "Layer 'Stairs' shows ramp:bicycle=yes with a fixed text, namely 'There is a ramp for bicycles here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if conveying!=yes)", - "value": "yes" - }, - { - "key": "ramp:wheelchair", - "description": "Layer 'Stairs' shows ramp:wheelchair=yes with a fixed text, namely 'There is a ramp for wheelchairs here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if conveying!=yes)", - "value": "yes" - }, - { - "key": "ramp", - "description": "Layer 'Stairs' shows ramp=separate with a fixed text, namely 'There is ramp for wheelchairs here, but it is shown separately on the map' (in the mapcomplete.org theme 'Personal theme') (This is only shown if conveying!=yes)", - "value": "separate" - }, - { - "key": "ramp:stroller", - "description": "Layer 'Stairs' shows ramp:stroller=yes with a fixed text, namely 'There is a ramp for strollers here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if conveying!=yes)", - "value": "yes" - }, - { - "key": "ramp", - "description": "Layer 'Stairs' shows ramp=no with a fixed text, namely 'There is no ramp at these stairs' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if conveying!=yes)", - "value": "no" - }, - { - "key": "incline", - "description": "Layer 'Stairs' shows and asks freeform values for key 'incline' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "incline", - "description": "Layer 'Stairs' shows incline=up with a fixed text, namely 'The upward direction is {direction_absolute()}' (in the mapcomplete.org theme 'Personal theme')", - "value": "up" - }, - { - "key": "incline", - "description": "Layer 'Stairs' shows incline=down with a fixed text, namely 'The downward direction is {direction_absolute()}' (in the mapcomplete.org theme 'Personal theme')", - "value": "down" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Street Lamps showing features with this tag", - "value": "street_lamp" - }, - { - "key": "id", - "description": "Layer 'Street Lamps' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Street Lamps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Street Lamps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Street Lamps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Street Lamps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "ref", - "description": "Layer 'Street Lamps' shows and asks freeform values for key 'ref' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "support", - "description": "Layer 'Street Lamps' shows support=catenary with a fixed text, namely 'This lamp is suspended using cables' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "catenary" - }, - { - "key": "support", - "description": "Layer 'Street Lamps' shows support=ceiling with a fixed text, namely 'This lamp is mounted on a ceiling' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "ceiling" - }, - { - "key": "support", - "description": "Layer 'Street Lamps' shows support=ground with a fixed text, namely 'This lamp is mounted in the ground' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "ground" - }, - { - "key": "support", - "description": "Layer 'Street Lamps' shows support=pedestal with a fixed text, namely 'This lamp is mounted on a short pole (mostly < 1.5m)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "pedestal" - }, - { - "key": "support", - "description": "Layer 'Street Lamps' shows support=pole with a fixed text, namely 'This lamp is mounted on a pole' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "pole" - }, - { - "key": "support", - "description": "Layer 'Street Lamps' shows support=wall with a fixed text, namely 'This lamp is mounted directly to the wall' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wall" - }, - { - "key": "support", - "description": "Layer 'Street Lamps' shows support=wall_mount with a fixed text, namely 'This lamp is mounted to the wall using a metal bar' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wall_mount" - }, - { - "key": "lamp_mount", - "description": "Layer 'Street Lamps' shows lamp_mount=straight_mast with a fixed text, namely 'This lamp sits atop of a straight mast' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if support=pole)", - "value": "straight_mast" - }, - { - "key": "lamp_mount", - "description": "Layer 'Street Lamps' shows lamp_mount=bent_mast with a fixed text, namely 'This lamp sits at the end of a bent mast' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if support=pole)", - "value": "bent_mast" - }, - { - "key": "light:method", - "description": "Layer 'Street Lamps' shows light:method=electric with a fixed text, namely 'This lamp is lit electrically' (in the mapcomplete.org theme 'Personal theme')", - "value": "electric" - }, - { - "key": "light:method", - "description": "Layer 'Street Lamps' shows light:method=LED with a fixed text, namely 'This lamp uses LEDs' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "LED" - }, - { - "key": "light:method", - "description": "Layer 'Street Lamps' shows light:method=incandescent with a fixed text, namely 'This lamp uses incandescent lighting' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "incandescent" - }, - { - "key": "light:method", - "description": "Layer 'Street Lamps' shows light:method=halogen with a fixed text, namely 'This lamp uses halogen lighting' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "halogen" - }, - { - "key": "light:method", - "description": "Layer 'Street Lamps' shows light:method=discharge with a fixed text, namely 'This lamp uses discharge lamps (unknown type)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "discharge" - }, - { - "key": "light:method", - "description": "Layer 'Street Lamps' shows light:method=mercury with a fixed text, namely 'This lamp uses a mercury-vapour lamp (lightly blueish)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "mercury" - }, - { - "key": "light:method", - "description": "Layer 'Street Lamps' shows light:method=metal-halide with a fixed text, namely 'This lamp uses metal-halide lamps (bright white)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "metal-halide" - }, - { - "key": "light:method", - "description": "Layer 'Street Lamps' shows light:method=fluorescent with a fixed text, namely 'This lamp uses fluorescent lighting' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "fluorescent" - }, - { - "key": "light:method", - "description": "Layer 'Street Lamps' shows light:method=sodium with a fixed text, namely 'This lamp uses sodium lamps (unknown type)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sodium" - }, - { - "key": "light:method", - "description": "Layer 'Street Lamps' shows light:method=low_pressure_sodium with a fixed text, namely 'This lamp uses low pressure sodium lamps (monochrome orange)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "low_pressure_sodium" - }, - { - "key": "light:method", - "description": "Layer 'Street Lamps' shows light:method=high_pressure_sodium with a fixed text, namely 'This lamp uses high pressure sodium lamps (orange with white)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "high_pressure_sodium" - }, - { - "key": "light:method", - "description": "Layer 'Street Lamps' shows light:method=gas with a fixed text, namely 'This lamp is lit using gas' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "gas" - }, - { - "key": "light:colour", - "description": "Layer 'Street Lamps' shows and asks freeform values for key 'light:colour' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "light:colour", - "description": "Layer 'Street Lamps' shows light:colour=white with a fixed text, namely 'This lamp emits white light' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "white" - }, - { - "key": "light:colour", - "description": "Layer 'Street Lamps' shows light:colour=green with a fixed text, namely 'This lamp emits green light' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "green" - }, - { - "key": "light:colour", - "description": "Layer 'Street Lamps' shows light:colour=orange with a fixed text, namely 'This lamp emits orange light' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "orange" - }, - { - "key": "light:count", - "description": "Layer 'Street Lamps' shows and asks freeform values for key 'light:count' (in the mapcomplete.org theme 'Personal theme') (This is only shown if support=pole)" - }, - { - "key": "light:count", - "description": "Layer 'Street Lamps' shows light:count=1 with a fixed text, namely 'This lamp has 1 fixture' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if support=pole)", - "value": "1" - }, - { - "key": "light:count", - "description": "Layer 'Street Lamps' shows light:count=2 with a fixed text, namely 'This lamp has 2 fixtures' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if support=pole)", - "value": "2" - }, - { - "key": "light:lit", - "description": "Layer 'Street Lamps' shows light:lit=dusk-dawn with a fixed text, namely 'This lamp is lit at night' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "dusk-dawn" - }, - { - "key": "light:lit", - "description": "Layer 'Street Lamps' shows light:lit=24/7 with a fixed text, namely 'This lamp is lit 24/7' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "24/7" - }, - { - "key": "light:lit", - "description": "Layer 'Street Lamps' shows light:lit=motion with a fixed text, namely 'This lamp is lit based on motion' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "motion" - }, - { - "key": "light:lit", - "description": "Layer 'Street Lamps' shows light:lit=demand with a fixed text, namely 'This lamp is lit based on demand (e.g. with a pushbutton)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "demand" - }, - { - "key": "light:direction", - "description": "Layer 'Street Lamps' shows and asks freeform values for key 'light:direction' (in the mapcomplete.org theme 'Personal theme') (This is only shown if light:count=1)" - }, - { - "key": "man_made", - "description": "The MapComplete theme Personal theme has a layer Surveillance camera's showing features with this tag", - "value": "surveillance" - }, - { - "key": "surveillance:type", - "description": "The MapComplete theme Personal theme has a layer Surveillance camera's showing features with this tag", - "value": "camera" - }, - { - "key": "surveillance:type", - "description": "The MapComplete theme Personal theme has a layer Surveillance camera's showing features with this tag", - "value": "ALPR" - }, - { - "key": "surveillance:type", - "description": "The MapComplete theme Personal theme has a layer Surveillance camera's showing features with this tag", - "value": "ANPR" - }, - { - "key": "id", - "description": "Layer 'Surveillance camera's' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Surveillance camera's allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Surveillance camera's allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Surveillance camera's allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Surveillance camera's allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "surveillance:type", - "description": "Layer 'Surveillance camera's' shows surveillance:type=camera with a fixed text, namely 'This is a camera without number plate recognition.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "camera" - }, - { - "key": "surveillance:type", - "description": "Layer 'Surveillance camera's' shows surveillance:type=ALPR with a fixed text, namely 'This is an ALPR (Automatic License Plate Reader)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "ALPR" - }, - { - "key": "camera:type", - "description": "Layer 'Surveillance camera's' shows camera:type=fixed with a fixed text, namely 'A fixed (non-moving) camera' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "fixed" - }, - { - "key": "camera:type", - "description": "Layer 'Surveillance camera's' shows camera:type=dome with a fixed text, namely 'A dome camera (which can turn)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "dome" - }, - { - "key": "camera:type", - "description": "Layer 'Surveillance camera's' shows camera:type=panning with a fixed text, namely 'A panning camera' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "panning" - }, - { - "key": "camera:direction", - "description": "Layer 'Surveillance camera's' shows and asks freeform values for key 'camera:direction' (in the mapcomplete.org theme 'Personal theme') (This is only shown if camera:direction~.+ | direction~.+ | camera:type!=dome | (camera:type=dome & camera:mount=wall))" - }, - { - "key": "camera:direction", - "description": "Layer 'Surveillance camera's' shows camera:direction= & direction~.+ with a fixed text, namely 'Films to a compass heading of {direction}' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key camera:direction. (This is only shown if camera:direction~.+ | direction~.+ | camera:type!=dome | (camera:type=dome & camera:mount=wall))", - "value": "" - }, - { - "key": "direction", - "description": "Layer 'Surveillance camera's' shows camera:direction= & direction~.+ with a fixed text, namely 'Films to a compass heading of {direction}' (in the mapcomplete.org theme 'Personal theme') (This is only shown if camera:direction~.+ | direction~.+ | camera:type!=dome | (camera:type=dome & camera:mount=wall))" - }, - { - "key": "operator", - "description": "Layer 'Surveillance camera's' shows and asks freeform values for key 'operator' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "surveillance", - "description": "Layer 'Surveillance camera's' shows surveillance=public with a fixed text, namely 'A public area is surveilled, such as a street, a bridge, a square, a park, a train station, a public corridor or tunnel, …' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "public" - }, - { - "key": "surveillance", - "description": "Layer 'Surveillance camera's' shows surveillance=outdoor with a fixed text, namely 'An outdoor, yet private area is surveilled (e.g. a parking lot, a fuel station, courtyard, entrance, private driveway, …)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "outdoor" - }, - { - "key": "surveillance", - "description": "Layer 'Surveillance camera's' shows surveillance=indoor with a fixed text, namely 'A private indoor area is surveilled, e.g. a shop, a private underground parking, …' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "indoor" - }, - { - "key": "indoor", - "description": "Layer 'Surveillance camera's' shows indoor=yes with a fixed text, namely 'This camera is located indoors' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if surveillance:type=public)", - "value": "yes" - }, - { - "key": "indoor", - "description": "Layer 'Surveillance camera's' shows indoor=no with a fixed text, namely 'This camera is located outdoors' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if surveillance:type=public)", - "value": "no" - }, - { - "key": "indoor", - "description": "Layer 'Surveillance camera's' shows indoor= with a fixed text, namely 'This camera is probably located outdoors' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key indoor. (This is only shown if surveillance:type=public)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Surveillance camera's' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if indoor=yes | surveillance:type=ye)" - }, - { - "key": "surveillance:zone", - "description": "Layer 'Surveillance camera's' shows and asks freeform values for key 'surveillance:zone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "surveillance:zone", - "description": "Layer 'Surveillance camera's' shows surveillance:zone=parking with a fixed text, namely 'Surveills a parking' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "parking" - }, - { - "key": "surveillance:zone", - "description": "Layer 'Surveillance camera's' shows surveillance:zone=traffic with a fixed text, namely 'Surveills the traffic' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "traffic" - }, - { - "key": "surveillance:zone", - "description": "Layer 'Surveillance camera's' shows surveillance:zone=entrance with a fixed text, namely 'Surveills an entrance' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "entrance" - }, - { - "key": "surveillance:zone", - "description": "Layer 'Surveillance camera's' shows surveillance:zone=corridor with a fixed text, namely 'Surveills a corridor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "corridor" - }, - { - "key": "surveillance:zone", - "description": "Layer 'Surveillance camera's' shows surveillance:zone=public_transport_platform with a fixed text, namely 'Surveills a public tranport platform' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "public_transport_platform" - }, - { - "key": "surveillance:zone", - "description": "Layer 'Surveillance camera's' shows surveillance:zone=shop with a fixed text, namely 'Surveills a shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "shop" - }, - { - "key": "camera:mount", - "description": "Layer 'Surveillance camera's' shows and asks freeform values for key 'camera:mount' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "camera:mount", - "description": "Layer 'Surveillance camera's' shows camera:mount=wall with a fixed text, namely 'This camera is placed against a wall' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wall" - }, - { - "key": "camera:mount", - "description": "Layer 'Surveillance camera's' shows camera:mount=pole with a fixed text, namely 'This camera is placed on a pole' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "pole" - }, - { - "key": "camera:mount", - "description": "Layer 'Surveillance camera's' shows camera:mount=ceiling with a fixed text, namely 'This camera is placed on the ceiling' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "ceiling" - }, - { - "key": "camera:mount", - "description": "Layer 'Surveillance camera's' shows camera:mount=street_lamp with a fixed text, namely 'This camera is placed on a street light' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "street_lamp" - }, - { - "key": "camera:mount", - "description": "Layer 'Surveillance camera's' shows camera:mount=tree with a fixed text, namely 'This camera is placed on a tree' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "tree" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Colleges and universities showing features with this tag", - "value": "college" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Colleges and universities showing features with this tag", - "value": "university" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Colleges and universities showing features with this tag", - "value": "school" - }, - { - "key": "isced:2011:level", - "description": "The MapComplete theme Personal theme has a layer Colleges and universities showing features with this tag" - }, - { - "key": "isced:2011:level", - "description": "The MapComplete theme Personal theme has a layer Colleges and universities showing features with this tag" - }, - { - "key": "id", - "description": "Layer 'Colleges and universities' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "amenity", - "description": "Layer 'Colleges and universities' shows amenity=college with a fixed text, namely 'This is an institution of post-secondary, non-tertiary education. One has to have completed secondary education to enroll here, but no bachelor (or higher) degrees are awarded here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "college" - }, - { - "key": "amenity", - "description": "Layer 'Colleges and universities' shows amenity=university with a fixed text, namely 'This is a university, an institution of tertiary education where bachelor degrees or higher are awarded.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "university" - }, - { - "key": "isced:2011:level", - "description": "Layer 'Colleges and universities' shows isced:2011:level=bachelor with a fixed text, namely 'Bachelor degrees are awarded here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=university)", - "value": "bachelor" - }, - { - "key": "isced:2011:level", - "description": "Layer 'Colleges and universities' shows isced:2011:level=master with a fixed text, namely 'Master degrees are awarded here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=university)", - "value": "master" - }, - { - "key": "isced:2011:level", - "description": "Layer 'Colleges and universities' shows isced:2011:level=doctorate with a fixed text, namely 'Doctorate degrees are awarded here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if amenity=university)", - "value": "doctorate" - }, - { - "key": "capacity", - "description": "Layer 'Colleges and universities' shows and asks freeform values for key 'capacity' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "school:gender", - "description": "Layer 'Colleges and universities' shows school:gender=mixed with a fixed text, namely 'Both boys and girls can enroll here and have classes together' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "mixed" - }, - { - "key": "school:gender", - "description": "Layer 'Colleges and universities' shows school:gender=separated with a fixed text, namely 'Both boys and girls can enroll here but they are separated (e.g. they have lessons in different classrooms or at different times)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "separated" - }, - { - "key": "school:gender", - "description": "Layer 'Colleges and universities' shows school:gender=male with a fixed text, namely 'This is a boys only-school' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "male" - }, - { - "key": "school:gender", - "description": "Layer 'Colleges and universities' shows school:gender=female with a fixed text, namely 'This is a girls-only school' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "female" - }, - { - "key": "website", - "description": "Layer 'Colleges and universities' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Colleges and universities' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Colleges and universities' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Colleges and universities' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Colleges and universities' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'Colleges and universities' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Colleges and universities' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Ticket Machines showing features with this tag", - "value": "vending_machine" - }, - { - "key": "vending", - "description": "The MapComplete theme Personal theme has a layer Ticket Machines showing features with this tag", - "value": "public_transport_tickets" - }, - { - "key": "id", - "description": "Layer 'Ticket Machines' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Ticket Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Ticket Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Ticket Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Ticket Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "level", - "description": "Layer 'Ticket Machines' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Ticket Machines' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Ticket Machines' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Ticket Machines' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Ticket Machines' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Ticket Machines' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "operator", - "description": "Layer 'Ticket Machines' shows and asks freeform values for key 'operator' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator", - "description": "Layer 'Ticket Machines' shows operator=Nederlandse Spoorwegen with a fixed text, namely 'Dutch Railways (NS)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "Nederlandse Spoorwegen" - }, - { - "key": "payment:cash", - "description": "Layer 'Ticket Machines' shows payment:cash=yes with a fixed text, namely 'Cash is accepted here' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:cards", - "description": "Layer 'Ticket Machines' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted here' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:qr_code", - "description": "Layer 'Ticket Machines' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:coins", - "description": "Layer 'Ticket Machines' shows payment:coins=yes with a fixed text, namely 'Coins are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:notes", - "description": "Layer 'Ticket Machines' shows payment:notes=yes with a fixed text, namely 'Bank notes are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:debit_cards", - "description": "Layer 'Ticket Machines' shows payment:debit_cards=yes with a fixed text, namely 'Debit cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:credit_cards", - "description": "Layer 'Ticket Machines' shows payment:credit_cards=yes with a fixed text, namely 'Credit cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Ticket Machines' shows payment:coins:denominations=0.01 EUR with a fixed text, namely '1 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.01 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Ticket Machines' shows payment:coins:denominations=0.02 EUR with a fixed text, namely '2 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.02 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Ticket Machines' shows payment:coins:denominations=0.05 EUR with a fixed text, namely '5 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.05 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Ticket Machines' shows payment:coins:denominations=0.10 EUR with a fixed text, namely '10 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.10 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Ticket Machines' shows payment:coins:denominations=0.20 EUR with a fixed text, namely '20 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.20 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Ticket Machines' shows payment:coins:denominations=0.50 EUR with a fixed text, namely '50 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.50 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Ticket Machines' shows payment:coins:denominations=1 EUR with a fixed text, namely '1 euro coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "1 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Ticket Machines' shows payment:coins:denominations=2 EUR with a fixed text, namely '2 euro coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "2 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Ticket Machines' shows payment:coins:denominations=0.05 CHF with a fixed text, namely '5 centimes coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.05 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Ticket Machines' shows payment:coins:denominations=0.10 CHF with a fixed text, namely '10 centimes coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.10 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Ticket Machines' shows payment:coins:denominations=0.20 CHF with a fixed text, namely '20 centimes coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.20 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Ticket Machines' shows payment:coins:denominations=0.50 CHF with a fixed text, namely '½ franc coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.50 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Ticket Machines' shows payment:coins:denominations=1 CHF with a fixed text, namely '1 franc coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "1 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Ticket Machines' shows payment:coins:denominations=2 CHF with a fixed text, namely '2 francs coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "2 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Ticket Machines' shows payment:coins:denominations=5 CHF with a fixed text, namely '5 francs coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "5 CHF" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Ticket Machines' shows payment:notes:denominations=5 EUR with a fixed text, namely '5 euro notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "5 EUR" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Ticket Machines' shows payment:notes:denominations=10 EUR with a fixed text, namely '10 euro notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "10 EUR" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Ticket Machines' shows payment:notes:denominations=20 EUR with a fixed text, namely '20 euro notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "20 EUR" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Ticket Machines' shows payment:notes:denominations=50 EUR with a fixed text, namely '50 euro notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "50 EUR" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Ticket Machines' shows payment:notes:denominations=100 EUR with a fixed text, namely '100 euro notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "100 EUR" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Ticket Machines' shows payment:notes:denominations=200 EUR with a fixed text, namely '200 euro notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "200 EUR" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Ticket Machines' shows payment:notes:denominations=500 EUR with a fixed text, namely '500 euro notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "500 EUR" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Ticket Machines' shows payment:notes:denominations=10 CHF with a fixed text, namely '10 francs notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "10 CHF" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Ticket Machines' shows payment:notes:denominations=20 CHF with a fixed text, namely '20 francs notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "20 CHF" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Ticket Machines' shows payment:notes:denominations=50 CHF with a fixed text, namely '50 francs notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "50 CHF" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Ticket Machines' shows payment:notes:denominations=100 CHF with a fixed text, namely '100 francs notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "100 CHF" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Ticket Machines' shows payment:notes:denominations=200 CHF with a fixed text, namely '200 francs notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "200 CHF" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Ticket Machines' shows payment:notes:denominations=1000 CHF with a fixed text, namely '1000 francs notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "1000 CHF" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Toilets showing features with this tag", - "value": "toilets" - }, - { - "key": "id", - "description": "Layer 'Toilets' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "level", - "description": "Layer 'Toilets' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Toilets' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Toilets' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Toilets' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Toilets' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Toilets' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "access", - "description": "Layer 'Toilets' shows and asks freeform values for key 'access' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "access", - "description": "Layer 'Toilets' shows access=yes with a fixed text, namely 'Public access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "access", - "description": "Layer 'Toilets' shows access=customers with a fixed text, namely 'Only access to customers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "customers" - }, - { - "key": "access", - "description": "Layer 'Toilets' shows access=no with a fixed text, namely 'Not accessible' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "access", - "description": "Layer 'Toilets' shows access=key with a fixed text, namely 'Accessible, but one has to ask a key to enter' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "key" - }, - { - "key": "access", - "description": "Layer 'Toilets' shows access=public with a fixed text, namely 'Public access' (in the mapcomplete.org theme 'Personal theme')", - "value": "public" - }, - { - "key": "fee", - "description": "Layer 'Toilets' shows fee=yes with a fixed text, namely 'These are paid toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if access!=no)", - "value": "yes" - }, - { - "key": "fee", - "description": "Layer 'Toilets' shows fee=no with a fixed text, namely 'Free to use' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if access!=no)", - "value": "no" - }, - { - "key": "charge", - "description": "Layer 'Toilets' shows and asks freeform values for key 'charge' (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes)" - }, - { - "key": "payment:cash", - "description": "Layer 'Toilets' shows payment:cash=yes with a fixed text, namely 'Cash is accepted here' (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes)", - "value": "yes" - }, - { - "key": "payment:cards", - "description": "Layer 'Toilets' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted here' (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes)", - "value": "yes" - }, - { - "key": "payment:qr_code", - "description": "Layer 'Toilets' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes)", - "value": "yes" - }, - { - "key": "payment:coins", - "description": "Layer 'Toilets' shows payment:coins=yes with a fixed text, namely 'Coins are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes)", - "value": "yes" - }, - { - "key": "payment:notes", - "description": "Layer 'Toilets' shows payment:notes=yes with a fixed text, namely 'Bank notes are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes)", - "value": "yes" - }, - { - "key": "payment:debit_cards", - "description": "Layer 'Toilets' shows payment:debit_cards=yes with a fixed text, namely 'Debit cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes)", - "value": "yes" - }, - { - "key": "payment:credit_cards", - "description": "Layer 'Toilets' shows payment:credit_cards=yes with a fixed text, namely 'Credit cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if fee=yes)", - "value": "yes" - }, - { - "key": "opening_hours", - "description": "Layer 'Toilets' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme') (This is only shown if access!=no)" - }, - { - "key": "opening_hours", - "description": "Layer 'Toilets' shows opening_hours=24/7 with a fixed text, namely '24/7 opened (including holidays)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if access!=no)", - "value": "24/7" - }, - { - "key": "opening_hours", - "description": "Layer 'Toilets' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme') (This is only shown if access!=no)", - "value": "closed" - }, - { - "key": "wheelchair", - "description": "Layer 'Toilets' shows wheelchair=yes with a fixed text, namely 'There is a dedicated toilet for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "wheelchair", - "description": "Layer 'Toilets' shows wheelchair=no with a fixed text, namely 'No wheelchair access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "wheelchair", - "description": "Layer 'Toilets' shows wheelchair=designated with a fixed text, namely 'There is only a dedicated toilet for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "designated" - }, - { - "key": "door:width", - "description": "Layer 'Toilets' shows and asks freeform values for key 'door:width' (in the mapcomplete.org theme 'Personal theme') (This is only shown if (wheelchair=yes | wheelchair=designated))" - }, - { - "key": "toilets:position", - "description": "Layer 'Toilets' shows toilets:position=seated with a fixed text, namely 'There are only seated toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "seated" - }, - { - "key": "toilets:position", - "description": "Layer 'Toilets' shows toilets:position=urinal with a fixed text, namely 'There are only urinals here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "urinal" - }, - { - "key": "toilets:position", - "description": "Layer 'Toilets' shows toilets:position=squat with a fixed text, namely 'There are only squat toilets here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "squat" - }, - { - "key": "toilets:position", - "description": "Layer 'Toilets' shows toilets:position=seated;urinal with a fixed text, namely 'Both seated toilets and urinals are available here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "seated;urinal" - }, - { - "key": "gender_segregated", - "description": "Layer 'Toilets' shows gender_segregated=yes with a fixed text, namely 'There is a separate, signposted area for men and women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:position!=urinal)", - "value": "yes" - }, - { - "key": "gender_segregated", - "description": "Layer 'Toilets' shows gender_segregated=no with a fixed text, namely 'There is no separate, signposted area for men and women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:position!=urinal)", - "value": "no" - }, - { - "key": "toilets:menstrual_products", - "description": "Layer 'Toilets' shows toilets:menstrual_products=yes with a fixed text, namely 'Free menstrual products are available to all visitors of these toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "toilets:menstrual_products", - "description": "Layer 'Toilets' shows toilets:menstrual_products=limited with a fixed text, namely 'Free menstrual products are available to some visitors of these toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "toilets:menstrual_products", - "description": "Layer 'Toilets' shows toilets:menstrual_products=no with a fixed text, namely 'No free menstrual products are available here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "toilets:menstrual_products:location", - "description": "Layer 'Toilets' shows and asks freeform values for key 'toilets:menstrual_products:location' (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)" - }, - { - "key": "toilets:menstrual_products:location", - "description": "Layer 'Toilets' shows toilets:menstrual_products:location=female_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", - "value": "female_toilet" - }, - { - "key": "toilets:menstrual_products:location", - "description": "Layer 'Toilets' shows toilets:menstrual_products:location=male_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for men' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", - "value": "male_toilet" - }, - { - "key": "toilets:menstrual_products:location", - "description": "Layer 'Toilets' shows toilets:menstrual_products:location=wheelchair_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", - "value": "wheelchair_toilet" - }, - { - "key": "changing_table", - "description": "Layer 'Toilets' shows changing_table=yes with a fixed text, namely 'A changing table is available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "changing_table", - "description": "Layer 'Toilets' shows changing_table=no with a fixed text, namely 'No changing table is available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "changing_table:location", - "description": "Layer 'Toilets' shows and asks freeform values for key 'changing_table:location' (in the mapcomplete.org theme 'Personal theme') (This is only shown if changing_table=yes)" - }, - { - "key": "changing_table:location", - "description": "Layer 'Toilets' shows changing_table:location=female_toilet with a fixed text, namely 'A changing table is in the toilet for women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if changing_table=yes)", - "value": "female_toilet" - }, - { - "key": "changing_table:location", - "description": "Layer 'Toilets' shows changing_table:location=male_toilet with a fixed text, namely 'A changing table is in the toilet for men' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if changing_table=yes)", - "value": "male_toilet" - }, - { - "key": "changing_table:location", - "description": "Layer 'Toilets' shows changing_table:location=wheelchair_toilet with a fixed text, namely 'A changing table is in the toilet for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if changing_table=yes)", - "value": "wheelchair_toilet" - }, - { - "key": "changing_table:location", - "description": "Layer 'Toilets' shows changing_table:location=dedicated_room with a fixed text, namely 'A changing table is in a dedicated room' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if changing_table=yes)", - "value": "dedicated_room" - }, - { - "key": "toilets:handwashing", - "description": "Layer 'Toilets' shows toilets:handwashing=yes with a fixed text, namely 'These toilets have a sink to wash your hands' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "toilets:handwashing", - "description": "Layer 'Toilets' shows toilets:handwashing=no with a fixed text, namely 'These toilets don't have a sink to wash your hands' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "toilets:paper_supplied", - "description": "Layer 'Toilets' shows toilets:paper_supplied=yes with a fixed text, namely 'This toilet is equipped with toilet paper' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:position!=urinal)", - "value": "yes" - }, - { - "key": "toilets:paper_supplied", - "description": "Layer 'Toilets' shows toilets:paper_supplied=no with a fixed text, namely 'You have to bring your own toilet paper to this toilet' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:position!=urinal)", - "value": "no" - }, - { - "key": "description", - "description": "Layer 'Toilets' shows and asks freeform values for key 'description' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "toilets", - "description": "The MapComplete theme Personal theme has a layer Toilets at other amenities showing features with this tag", - "value": "yes" - }, - { - "key": "id", - "description": "Layer 'Toilets at other amenities' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Toilets at other amenities allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Toilets at other amenities allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Toilets at other amenities allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Toilets at other amenities allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "level", - "description": "Layer 'Toilets at other amenities' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Toilets at other amenities' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Toilets at other amenities' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Toilets at other amenities' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Toilets at other amenities' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Toilets at other amenities' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "toilets:access", - "description": "Layer 'Toilets at other amenities' shows and asks freeform values for key 'toilets:access' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "toilets:access", - "description": "Layer 'Toilets at other amenities' shows toilets:access=yes with a fixed text, namely 'Public access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "toilets:access", - "description": "Layer 'Toilets at other amenities' shows toilets:access=customers with a fixed text, namely 'Only access to customers of the amenity' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "customers" - }, - { - "key": "toilets:access", - "description": "Layer 'Toilets at other amenities' shows toilets:access=no with a fixed text, namely 'Not accessible, even for customers of the amenity' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "toilets:access", - "description": "Layer 'Toilets at other amenities' shows toilets:access=key with a fixed text, namely 'Accessible, but one has to ask a key to enter' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "key" - }, - { - "key": "toilets:access", - "description": "Layer 'Toilets at other amenities' shows toilets:access=public with a fixed text, namely 'Public access' (in the mapcomplete.org theme 'Personal theme')", - "value": "public" - }, - { - "key": "toilets:fee", - "description": "Layer 'Toilets at other amenities' shows toilets:fee=yes with a fixed text, namely 'These are paid toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:access!=no)", - "value": "yes" - }, - { - "key": "toilets:fee", - "description": "Layer 'Toilets at other amenities' shows toilets:fee=no with a fixed text, namely 'Free to use' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:access!=no)", - "value": "no" - }, - { - "key": "toilets:charge", - "description": "Layer 'Toilets at other amenities' shows and asks freeform values for key 'toilets:charge' (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:fee=yes)" - }, - { - "key": "opening_hours", - "description": "Layer 'Toilets at other amenities' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:access!=no)" - }, - { - "key": "opening_hours", - "description": "Layer 'Toilets at other amenities' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:access!=no)", - "value": "closed" - }, - { - "key": "toilets:wheelchair", - "description": "Layer 'Toilets at other amenities' shows toilets:wheelchair=yes with a fixed text, namely 'There is a dedicated toilet for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "toilets:wheelchair", - "description": "Layer 'Toilets at other amenities' shows toilets:wheelchair=no with a fixed text, namely 'No wheelchair access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "toilets:wheelchair", - "description": "Layer 'Toilets at other amenities' shows toilets:wheelchair=designated with a fixed text, namely 'There is only a dedicated toilet for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "designated" - }, - { - "key": "toilets:door:width", - "description": "Layer 'Toilets at other amenities' shows and asks freeform values for key 'toilets:door:width' (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:wheelchair=yes | toilets:wheelchair=designated)" - }, - { - "key": "toilets:position", - "description": "Layer 'Toilets at other amenities' shows toilets:position=seated with a fixed text, namely 'There are only seated toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "seated" - }, - { - "key": "toilets:position", - "description": "Layer 'Toilets at other amenities' shows toilets:position=urinal with a fixed text, namely 'There are only urinals here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "urinal" - }, - { - "key": "toilets:position", - "description": "Layer 'Toilets at other amenities' shows toilets:position=squat with a fixed text, namely 'There are only squat toilets here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "squat" - }, - { - "key": "toilets:position", - "description": "Layer 'Toilets at other amenities' shows toilets:position=seated;urinal with a fixed text, namely 'Both seated toilets and urinals are available here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "seated;urinal" - }, - { - "key": "changing_table", - "description": "Layer 'Toilets at other amenities' shows changing_table=yes with a fixed text, namely 'A changing table is available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "changing_table", - "description": "Layer 'Toilets at other amenities' shows changing_table=no with a fixed text, namely 'No changing table is available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "changing_table:location", - "description": "Layer 'Toilets at other amenities' shows and asks freeform values for key 'changing_table:location' (in the mapcomplete.org theme 'Personal theme') (This is only shown if changing_table=yes)" - }, - { - "key": "changing_table:location", - "description": "Layer 'Toilets at other amenities' shows changing_table:location=female_toilet with a fixed text, namely 'A changing table is in the toilet for women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if changing_table=yes)", - "value": "female_toilet" - }, - { - "key": "changing_table:location", - "description": "Layer 'Toilets at other amenities' shows changing_table:location=male_toilet with a fixed text, namely 'A changing table is in the toilet for men' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if changing_table=yes)", - "value": "male_toilet" - }, - { - "key": "changing_table:location", - "description": "Layer 'Toilets at other amenities' shows changing_table:location=wheelchair_toilet with a fixed text, namely 'A changing table is in the toilet for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if changing_table=yes)", - "value": "wheelchair_toilet" - }, - { - "key": "changing_table:location", - "description": "Layer 'Toilets at other amenities' shows changing_table:location=dedicated_room with a fixed text, namely 'A changing table is in a dedicated room' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if changing_table=yes)", - "value": "dedicated_room" - }, - { - "key": "toilets:handwashing", - "description": "Layer 'Toilets at other amenities' shows toilets:handwashing=yes with a fixed text, namely 'These toilets have a sink to wash your hands' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "toilets:handwashing", - "description": "Layer 'Toilets at other amenities' shows toilets:handwashing=no with a fixed text, namely 'These toilets don't have a sink to wash your hands' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "toilets:paper_supplied", - "description": "Layer 'Toilets at other amenities' shows toilets:paper_supplied=yes with a fixed text, namely 'This toilet is equipped with toilet paper' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:position!=urinal)", - "value": "yes" - }, - { - "key": "toilets:paper_supplied", - "description": "Layer 'Toilets at other amenities' shows toilets:paper_supplied=no with a fixed text, namely 'You have to bring your own toilet paper to this toilet' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:position!=urinal)", - "value": "no" - }, - { - "key": "toilets:menstrual_products", - "description": "Layer 'Toilets at other amenities' shows toilets:menstrual_products=yes with a fixed text, namely 'Free menstrual products are available to all visitors of these toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "toilets:menstrual_products", - "description": "Layer 'Toilets at other amenities' shows toilets:menstrual_products=limited with a fixed text, namely 'Free menstrual products are available to some visitors of these toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "toilets:menstrual_products", - "description": "Layer 'Toilets at other amenities' shows toilets:menstrual_products=no with a fixed text, namely 'No free menstrual products are available here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "toilets:menstrual_products:location", - "description": "Layer 'Toilets at other amenities' shows and asks freeform values for key 'toilets:menstrual_products:location' (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)" - }, - { - "key": "toilets:menstrual_products:location", - "description": "Layer 'Toilets at other amenities' shows toilets:menstrual_products:location=female_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", - "value": "female_toilet" - }, - { - "key": "toilets:menstrual_products:location", - "description": "Layer 'Toilets at other amenities' shows toilets:menstrual_products:location=male_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for men' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", - "value": "male_toilet" - }, - { - "key": "toilets:menstrual_products:location", - "description": "Layer 'Toilets at other amenities' shows toilets:menstrual_products:location=wheelchair_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", - "value": "wheelchair_toilet" - }, - { - "key": "toilets:description", - "description": "Layer 'Toilets at other amenities' shows and asks freeform values for key 'toilets:description' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Tool libraries showing features with this tag", - "value": "tool_library" - }, - { - "key": "id", - "description": "Layer 'Tool libraries' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Tool libraries allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Tool libraries allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Tool libraries allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Tool libraries allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "phone", - "description": "Layer 'Tool libraries' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Tool libraries' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Tool libraries' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Tool libraries' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Tool libraries' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Tool libraries' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Tool libraries' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:facebook", - "description": "Layer 'Tool libraries' shows and asks freeform values for key 'contact:facebook' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Tool libraries' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Tool libraries' shows opening_hours=\"by appointment\" with a fixed text, namely 'Only by appointment' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "\"by appointment\"" - }, - { - "key": "opening_hours", - "description": "Layer 'Tool libraries' shows opening_hours~^(\"by appointment\"|by appointment)$ with a fixed text, namely 'Only by appointment' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Tool libraries' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "membership", - "description": "Layer 'Tool libraries' shows membership=no with a fixed text, namely 'No membership is required to borrow tools here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "membership", - "description": "Layer 'Tool libraries' shows membership=required with a fixed text, namely 'A membership is required to use this tool library' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "required" - }, - { - "key": "membership", - "description": "Layer 'Tool libraries' shows membership=optional with a fixed text, namely 'A membership is possible but not required to use this tool library' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "optional" - }, - { - "key": "charge:membership", - "description": "Layer 'Tool libraries' shows and asks freeform values for key 'charge:membership' (in the mapcomplete.org theme 'Personal theme') (This is only shown if membership=required)" - }, - { - "key": "fee", - "description": "Layer 'Tool libraries' shows fee=no & membership=required with a fixed text, namely 'Borrowing tools is free (if one has a membership)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "membership", - "description": "Layer 'Tool libraries' shows fee=no & membership=required with a fixed text, namely 'Borrowing tools is free (if one has a membership)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "required" - }, - { - "key": "fee", - "description": "Layer 'Tool libraries' shows fee=no with a fixed text, namely 'Borrowing tools is free' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "fee", - "description": "Layer 'Tool libraries' shows fee=yes with a fixed text, namely 'A fee is asked when borrowing tools' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "fee", - "description": "Layer 'Tool libraries' shows fee=donation with a fixed text, namely 'A donation can be given when borrowing tools' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "donation" - }, - { - "key": "tourism", - "description": "The MapComplete theme Personal theme has a layer Tourism accomodation showing features with this tag", - "value": "hotel" - }, - { - "key": "tourism", - "description": "The MapComplete theme Personal theme has a layer Tourism accomodation showing features with this tag", - "value": "hostel" - }, - { - "key": "tourism", - "description": "The MapComplete theme Personal theme has a layer Tourism accomodation showing features with this tag", - "value": "apartment" - }, - { - "key": "tourism", - "description": "The MapComplete theme Personal theme has a layer Tourism accomodation showing features with this tag", - "value": "chalet" - }, - { - "key": "tourism", - "description": "The MapComplete theme Personal theme has a layer Tourism accomodation showing features with this tag", - "value": "motel" - }, - { - "key": "tourism", - "description": "The MapComplete theme Personal theme has a layer Tourism accomodation showing features with this tag", - "value": "guest_house" - }, - { - "key": "tourism", - "description": "The MapComplete theme Personal theme has a layer Tourism accomodation showing features with this tag", - "value": "camp_site" - }, - { - "key": "id", - "description": "Layer 'Tourism accomodation' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Tourism accomodation allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Tourism accomodation allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Tourism accomodation allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Tourism accomodation allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Tourism accomodation' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "brand", - "description": "Layer 'Tourism accomodation' shows and asks freeform values for key 'brand' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "nobrand", - "description": "Layer 'Tourism accomodation' shows nobrand=yes with a fixed text, namely 'Not part of a bigger brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "phone", - "description": "Layer 'Tourism accomodation' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Tourism accomodation' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "email", - "description": "Layer 'Tourism accomodation' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:email", - "description": "Layer 'Tourism accomodation' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator:email", - "description": "Layer 'Tourism accomodation' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Tourism accomodation' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Tourism accomodation' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "wheelchair", - "description": "Layer 'Tourism accomodation' shows wheelchair=designated with a fixed text, namely 'This place is specially adapted for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "designated" - }, - { - "key": "wheelchair", - "description": "Layer 'Tourism accomodation' shows wheelchair=yes with a fixed text, namely 'This place is easily reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "wheelchair", - "description": "Layer 'Tourism accomodation' shows wheelchair=limited with a fixed text, namely 'It is possible to reach this place in a wheelchair, but it is not easy' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "wheelchair", - "description": "Layer 'Tourism accomodation' shows wheelchair=no with a fixed text, namely 'This place is not reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "internet_access", - "description": "Layer 'Tourism accomodation' shows internet_access=wlan with a fixed text, namely 'This place offers wireless internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wlan" - }, - { - "key": "internet_access", - "description": "Layer 'Tourism accomodation' shows internet_access=no with a fixed text, namely 'This place does not offer internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "internet_access", - "description": "Layer 'Tourism accomodation' shows internet_access=yes with a fixed text, namely 'This place offers internet access' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "internet_access", - "description": "Layer 'Tourism accomodation' shows internet_access=terminal with a fixed text, namely 'This place offers internet access via a terminal or computer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "terminal" - }, - { - "key": "internet_access", - "description": "Layer 'Tourism accomodation' shows internet_access=wired with a fixed text, namely 'This place offers wired internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "wired" - }, - { - "key": "internet_access", - "description": "Layer 'Tourism accomodation' shows internet_access=terminal;wifi with a fixed text, namely 'This place offers both wireless internet and internet access via a terminal or computer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "terminal;wifi" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Tourism accomodation' shows internet_access:fee=yes with a fixed text, namely 'There is a fee for the internet access at this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "yes" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Tourism accomodation' shows internet_access:fee=no with a fixed text, namely 'Internet access is free at this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "no" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Tourism accomodation' shows internet_access:fee=customers with a fixed text, namely 'Internet access is free at this place, for customers only' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "customers" - }, - { - "key": "internet_access:ssid", - "description": "Layer 'Tourism accomodation' shows and asks freeform values for key 'internet_access:ssid' (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access~^(.*wlan.*)$)" - }, - { - "key": "internet_access:ssid", - "description": "Layer 'Tourism accomodation' shows internet_access:ssid=Telekom with a fixed text, namely 'Telekom' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if internet_access~^(.*wlan.*)$)", - "value": "Telekom" - }, - { - "key": "dog", - "description": "Layer 'Tourism accomodation' shows dog=yes with a fixed text, namely 'Dogs are allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "dog", - "description": "Layer 'Tourism accomodation' shows dog=no with a fixed text, namely 'Dogs are not allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "dog", - "description": "Layer 'Tourism accomodation' shows dog=leashed with a fixed text, namely 'Dogs are allowed, but they have to be leashed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "leashed" - }, - { - "key": "dog", - "description": "Layer 'Tourism accomodation' shows dog=unleashed with a fixed text, namely 'Dogs are allowed and can run around freely' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "unleashed" - }, - { - "key": "dog", - "description": "Layer 'Tourism accomodation' shows dog=outside with a fixed text, namely 'Dogs are allowed only outside' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "outside" - }, - { - "key": "type", - "description": "The MapComplete theme Personal theme has a layer Bus lines showing features with this tag", - "value": "route" - }, - { - "key": "route", - "description": "The MapComplete theme Personal theme has a layer Bus lines showing features with this tag", - "value": "bus" - }, - { - "key": "id", - "description": "Layer 'Bus lines' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "name", - "description": "Layer 'Bus lines' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "from", - "description": "Layer 'Bus lines' shows and asks freeform values for key 'from' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "via", - "description": "Layer 'Bus lines' shows and asks freeform values for key 'via' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "to", - "description": "Layer 'Bus lines' shows and asks freeform values for key 'to' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "colour", - "description": "Layer 'Bus lines' shows and asks freeform values for key 'colour' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "network", - "description": "Layer 'Bus lines' shows and asks freeform values for key 'network' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator", - "description": "Layer 'Bus lines' shows and asks freeform values for key 'operator' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "highway", - "description": "The MapComplete theme Personal theme has a layer Transit Stops showing features with this tag", - "value": "bus_stop" - }, - { - "key": "id", - "description": "Layer 'Transit Stops' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "name", - "description": "Layer 'Transit Stops' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "noname", - "description": "Layer 'Transit Stops' shows noname=yes & name= with a fixed text, namely 'This stop has no name' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "name", - "description": "Layer 'Transit Stops' shows noname=yes & name= with a fixed text, namely 'This stop has no name' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key name.", - "value": "" - }, - { - "key": "image", - "description": "The layer 'Transit Stops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Transit Stops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Transit Stops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Transit Stops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "shelter", - "description": "Layer 'Transit Stops' shows shelter=yes with a fixed text, namely 'This stop has a shelter' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "shelter", - "description": "Layer 'Transit Stops' shows shelter=no with a fixed text, namely 'This stop does not have a shelter' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "shelter", - "description": "Layer 'Transit Stops' shows shelter=separate with a fixed text, namely 'This stop has a shelter, that's separately mapped' (in the mapcomplete.org theme 'Personal theme')", - "value": "separate" - }, - { - "key": "bench", - "description": "Layer 'Transit Stops' shows bench=yes with a fixed text, namely 'This stop has a bench' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "bench", - "description": "Layer 'Transit Stops' shows bench=no with a fixed text, namely 'This stop does not have a bench' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "bench", - "description": "Layer 'Transit Stops' shows bench=separate with a fixed text, namely 'This stop has a bench, that's separately mapped' (in the mapcomplete.org theme 'Personal theme')", - "value": "separate" - }, - { - "key": "bin", - "description": "Layer 'Transit Stops' shows bin=yes with a fixed text, namely 'This stop has a bin' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "bin", - "description": "Layer 'Transit Stops' shows bin=no with a fixed text, namely 'This stop does not have a bin' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "bin", - "description": "Layer 'Transit Stops' shows bin=separate with a fixed text, namely 'This stop has a bin, that's separately mapped' (in the mapcomplete.org theme 'Personal theme')", - "value": "separate" - }, - { - "key": "wheelchair", - "description": "Layer 'Transit Stops' shows wheelchair=designated with a fixed text, namely 'This place is specially adapted for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "designated" - }, - { - "key": "wheelchair", - "description": "Layer 'Transit Stops' shows wheelchair=yes with a fixed text, namely 'This place is easily reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "wheelchair", - "description": "Layer 'Transit Stops' shows wheelchair=limited with a fixed text, namely 'It is possible to reach this place in a wheelchair, but it is not easy' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "limited" - }, - { - "key": "wheelchair", - "description": "Layer 'Transit Stops' shows wheelchair=no with a fixed text, namely 'This place is not reachable with a wheelchair' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "tactile_paving", - "description": "Layer 'Transit Stops' shows tactile_paving=yes with a fixed text, namely 'This stop has tactile paving' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "tactile_paving", - "description": "Layer 'Transit Stops' shows tactile_paving=no with a fixed text, namely 'This stop does not have tactile paving' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "lit", - "description": "Layer 'Transit Stops' shows lit=yes with a fixed text, namely 'This stop is lit' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "lit", - "description": "Layer 'Transit Stops' shows lit=no with a fixed text, namely 'This stop is not lit' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "departures_board", - "description": "Layer 'Transit Stops' shows departures_board=yes with a fixed text, namely 'This stop has a departures board of unknown type' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "departures_board", - "description": "Layer 'Transit Stops' shows departures_board=realtime with a fixed text, namely 'This stop has a board showing realtime departure information' (in the mapcomplete.org theme 'Personal theme')", - "value": "realtime" - }, - { - "key": "passenger_information_display", - "description": "Layer 'Transit Stops' shows passenger_information_display=yes with a fixed text, namely 'This stop has a board showing realtime departure information' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "departures_board", - "description": "Layer 'Transit Stops' shows departures_board=timetable with a fixed text, namely 'This stop has a timetable showing regular departures' (in the mapcomplete.org theme 'Personal theme')", - "value": "timetable" - }, - { - "key": "departures_board", - "description": "Layer 'Transit Stops' shows departures_board=interval with a fixed text, namely 'This stop has a timetable containing just the interval between departures' (in the mapcomplete.org theme 'Personal theme')", - "value": "interval" - }, - { - "key": "departures_board", - "description": "Layer 'Transit Stops' shows departures_board=no with a fixed text, namely 'This stop does not have a departures board' (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "natural", - "description": "The MapComplete theme Personal theme has a layer Tree showing features with this tag", - "value": "tree" - }, - { - "key": "id", - "description": "Layer 'Tree' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Tree allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Tree allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Tree allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Tree allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "species:wikidata", - "description": "Layer 'Tree' shows and asks freeform values for key 'species:wikidata' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "circumference", - "description": "Layer 'Tree' shows and asks freeform values for key 'circumference' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "height", - "description": "Layer 'Tree' shows and asks freeform values for key 'height' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "denotation", - "description": "Layer 'Tree' shows denotation=landmark with a fixed text, namely 'The tree is remarkable due to its size or prominent location. It is useful for navigation.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "landmark" - }, - { - "key": "denotation", - "description": "Layer 'Tree' shows denotation=natural_monument with a fixed text, namely 'The tree is a natural monument, e.g. because it is especially old, or of a valuable species.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "natural_monument" - }, - { - "key": "denotation", - "description": "Layer 'Tree' shows denotation=agricultural with a fixed text, namely 'The tree is used for agricultural purposes, e.g. in an orchard.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "agricultural" - }, - { - "key": "denotation", - "description": "Layer 'Tree' shows denotation=park with a fixed text, namely 'The tree is in a park or similar (cemetery, school grounds, …).' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "park" - }, - { - "key": "denotation", - "description": "Layer 'Tree' shows denotation=garden with a fixed text, namely 'The tree is in a residential garden.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "garden" - }, - { - "key": "denotation", - "description": "Layer 'Tree' shows denotation=avenue with a fixed text, namely 'This is a tree along an avenue.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "avenue" - }, - { - "key": "denotation", - "description": "Layer 'Tree' shows denotation=urban with a fixed text, namely 'The tree is in an urban area.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "urban" - }, - { - "key": "denotation", - "description": "Layer 'Tree' shows denotation=none with a fixed text, namely 'The tree is outside of an urban area.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "none" - }, - { - "key": "leaf_type", - "description": "Layer 'Tree' shows leaf_type=broadleaved with a fixed text, namely 'Broadleaved' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if species:wikidata=)", - "value": "broadleaved" - }, - { - "key": "leaf_type", - "description": "Layer 'Tree' shows leaf_type=needleleaved with a fixed text, namely 'Needleleaved' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if species:wikidata=)", - "value": "needleleaved" - }, - { - "key": "leaf_type", - "description": "Layer 'Tree' shows leaf_type=leafless with a fixed text, namely 'Permanently leafless' (in the mapcomplete.org theme 'Personal theme') (This is only shown if species:wikidata=)", - "value": "leafless" - }, - { - "key": "leaf_cycle", - "description": "Layer 'Tree' shows leaf_cycle=deciduous with a fixed text, namely 'Deciduous: the tree loses its leaves for some time of the year.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if leaf_type!~^(^leafless$)$ & species:wikidata=)", - "value": "deciduous" - }, - { - "key": "leaf_cycle", - "description": "Layer 'Tree' shows leaf_cycle=evergreen with a fixed text, namely 'Evergreen.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if leaf_type!~^(^leafless$)$ & species:wikidata=)", - "value": "evergreen" - }, - { - "key": "name", - "description": "Layer 'Tree' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme') (This is only shown if denotation=landmark | denotation=natural_monument | name~.+)" - }, - { - "key": "name", - "description": "Layer 'Tree' shows name= & noname=yes with a fixed text, namely 'The tree does not have a name.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key name. (This is only shown if denotation=landmark | denotation=natural_monument | name~.+)", - "value": "" - }, - { - "key": "noname", - "description": "Layer 'Tree' shows name= & noname=yes with a fixed text, namely 'The tree does not have a name.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if denotation=landmark | denotation=natural_monument | name~.+)", - "value": "yes" - }, - { - "key": "heritage", - "description": "Layer 'Tree' shows heritage=4 & heritage:operator=OnroerendErfgoed with a fixed text, namely 'Registered as heritage by Onroerend Erfgoed Flanders' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if denotation=landmark | denotation=natural_monument)", - "value": "4" - }, - { - "key": "heritage:operator", - "description": "Layer 'Tree' shows heritage=4 & heritage:operator=OnroerendErfgoed with a fixed text, namely 'Registered as heritage by Onroerend Erfgoed Flanders' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if denotation=landmark | denotation=natural_monument)", - "value": "OnroerendErfgoed" - }, - { - "key": "heritage", - "description": "Layer 'Tree' shows heritage=4 & heritage:operator=aatl with a fixed text, namely 'Registered as heritage by Direction du Patrimoine culturel Brussels' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if denotation=landmark | denotation=natural_monument)", - "value": "4" - }, - { - "key": "heritage:operator", - "description": "Layer 'Tree' shows heritage=4 & heritage:operator=aatl with a fixed text, namely 'Registered as heritage by Direction du Patrimoine culturel Brussels' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if denotation=landmark | denotation=natural_monument)", - "value": "aatl" - }, - { - "key": "heritage", - "description": "Layer 'Tree' shows heritage=yes & heritage:operator= with a fixed text, namely 'Registered as heritage by a different organisation' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if denotation=landmark | denotation=natural_monument)", - "value": "yes" - }, - { - "key": "heritage:operator", - "description": "Layer 'Tree' shows heritage=yes & heritage:operator= with a fixed text, namely 'Registered as heritage by a different organisation' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key heritage:operator. (This is only shown if denotation=landmark | denotation=natural_monument)", - "value": "" - }, - { - "key": "heritage", - "description": "Layer 'Tree' shows heritage=no & heritage:operator= with a fixed text, namely 'Not registered as heritage' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if denotation=landmark | denotation=natural_monument)", - "value": "no" - }, - { - "key": "heritage:operator", - "description": "Layer 'Tree' shows heritage=no & heritage:operator= with a fixed text, namely 'Not registered as heritage' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key heritage:operator. (This is only shown if denotation=landmark | denotation=natural_monument)", - "value": "" - }, - { - "key": "heritage", - "description": "Layer 'Tree' shows heritage~.+ with a fixed text, namely 'Registered as heritage by a different organisation' (in the mapcomplete.org theme 'Personal theme') (This is only shown if denotation=landmark | denotation=natural_monument)" - }, - { - "key": "ref:OnroerendErfgoed", - "description": "Layer 'Tree' shows and asks freeform values for key 'ref:OnroerendErfgoed' (in the mapcomplete.org theme 'Personal theme') (This is only shown if heritage=4 & heritage:operator=OnroerendErfgoed)" - }, - { - "key": "wikidata", - "description": "Layer 'Tree' shows and asks freeform values for key 'wikidata' (in the mapcomplete.org theme 'Personal theme') (This is only shown if denotation=landmark | denotation=natural_monument | wikidata~.+)" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Trolley Bays showing features with this tag", - "value": "trolley_bay" - }, - { - "key": "id", - "description": "Layer 'Trolley Bays' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "covered", - "description": "Layer 'Trolley Bays' shows covered=yes with a fixed text, namely 'This trolley bay is covered' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "covered", - "description": "Layer 'Trolley Bays' shows covered=no with a fixed text, namely 'This trolley bay is not covered' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "trolley:deposit", - "description": "Layer 'Trolley Bays' shows trolley:deposit=yes with a fixed text, namely 'A deposit is required for the trolleys' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "trolley:deposit", - "description": "Layer 'Trolley Bays' shows trolley:deposit=no with a fixed text, namely 'No deposit is required for the trolleys' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "trolley:deposit:denominations", - "description": "Layer 'Trolley Bays' shows trolley:deposit:denominations=0.50 EUR with a fixed text, namely '50 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if trolley:deposit=yes & _currency~^(.*EUR.*)$)", - "value": "0.50 EUR" - }, - { - "key": "trolley:deposit:denominations", - "description": "Layer 'Trolley Bays' shows trolley:deposit:denominations=1 EUR with a fixed text, namely '1 euro coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if trolley:deposit=yes & _currency~^(.*EUR.*)$)", - "value": "1 EUR" - }, - { - "key": "trolley:deposit:denominations", - "description": "Layer 'Trolley Bays' shows trolley:deposit:denominations=2 EUR with a fixed text, namely '2 euro coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if trolley:deposit=yes & _currency~^(.*EUR.*)$)", - "value": "2 EUR" - }, - { - "key": "trolley:magnifier", - "description": "Layer 'Trolley Bays' shows trolley:magnifier=yes with a fixed text, namely 'Trolleys with a magnifier are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "trolley:wheelchair", - "description": "Layer 'Trolley Bays' shows trolley:wheelchair=yes with a fixed text, namely 'Trolleys for wheelchair users are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "trolley:children", - "description": "Layer 'Trolley Bays' shows trolley:children=yes with a fixed text, namely 'Trolleys for children are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "trolley:seats", - "description": "Layer 'Trolley Bays' shows trolley:seats=yes with a fixed text, namely 'Trolleys with seats for children are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "trolley:flatbed", - "description": "Layer 'Trolley Bays' shows trolley:flatbed=yes with a fixed text, namely 'Trolleys with a flatbed are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "trolley:vertical", - "description": "Layer 'Trolley Bays' shows trolley:vertical=yes with a fixed text, namely 'Vertical trolleys for sheet-like goods are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Vending Machines showing features with this tag", - "value": "vending_machine" - }, - { - "key": "id", - "description": "Layer 'Vending Machines' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Vending Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Vending Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Vending Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Vending Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "level", - "description": "Layer 'Vending Machines' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Vending Machines' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Vending Machines' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Vending Machines' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Vending Machines' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Vending Machines' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows and asks freeform values for key 'vending' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=drinks with a fixed text, namely 'Drinks are sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "drinks" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=sweets with a fixed text, namely 'Sweets are sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sweets" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=food with a fixed text, namely 'Food is sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "food" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=cigarettes with a fixed text, namely 'Cigarettes are sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "cigarettes" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=condoms with a fixed text, namely 'Condoms are sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "condoms" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=coffee with a fixed text, namely 'Coffee is sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "coffee" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=water with a fixed text, namely 'Drinking water is sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "water" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=newspapers with a fixed text, namely 'Newspapers are sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "newspapers" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=bicycle_tube with a fixed text, namely 'Bicycle inner tubes are sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "bicycle_tube" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=milk with a fixed text, namely 'Milk is sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "milk" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=bread with a fixed text, namely 'Bread is sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "bread" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=eggs with a fixed text, namely 'Eggs are sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "eggs" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=ice_cream with a fixed text, namely 'Ice cream is sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "ice_cream" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=cheese with a fixed text, namely 'Cheese is sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "cheese" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=honey with a fixed text, namely 'Honey is sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "honey" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=potatoes with a fixed text, namely 'Potatoes are sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "potatoes" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=meat with a fixed text, namely 'Meat is sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "meat" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=fruit with a fixed text, namely 'Fruit is sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "fruit" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=strawberries with a fixed text, namely 'Strawberries are sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "strawberries" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=flowers with a fixed text, namely 'Flowers are sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "flowers" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=parking_tickets with a fixed text, namely 'Parking tickets are sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "parking_tickets" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=elongated_coin with a fixed text, namely 'Pressed pennies are sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "elongated_coin" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=public_transport_tickets with a fixed text, namely 'Public transport tickets are sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "public_transport_tickets" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=bicycle_light with a fixed text, namely 'Bicycle lights are sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "bicycle_light" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=gloves with a fixed text, namely 'Gloves are sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "gloves" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=bicycle_repair_kit with a fixed text, namely 'Bicycle repair kits are sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "bicycle_repair_kit" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=bicycle_pump with a fixed text, namely 'Bicycle pumps are sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "bicycle_pump" - }, - { - "key": "vending", - "description": "Layer 'Vending Machines' shows vending=bicycle_lock with a fixed text, namely 'Bicycle locks are sold' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "bicycle_lock" - }, - { - "key": "brand", - "description": "Layer 'Vending Machines' shows and asks freeform values for key 'brand' (in the mapcomplete.org theme 'Personal theme') (This is only shown if vending~^(.*bicycle_tube.*)$)" - }, - { - "key": "brand", - "description": "Layer 'Vending Machines' shows brand=Continental with a fixed text, namely 'Continental tubes are sold here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if vending~^(.*bicycle_tube.*)$)", - "value": "Continental" - }, - { - "key": "brand", - "description": "Layer 'Vending Machines' shows brand=Schwalbe with a fixed text, namely 'Schwalbe tubes are sold here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if vending~^(.*bicycle_tube.*)$)", - "value": "Schwalbe" - }, - { - "key": "opening_hours", - "description": "Layer 'Vending Machines' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'Vending Machines' shows opening_hours=24/7 with a fixed text, namely '24/7 opened (including holidays)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "24/7" - }, - { - "key": "opening_hours", - "description": "Layer 'Vending Machines' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "payment:cash", - "description": "Layer 'Vending Machines' shows payment:cash=yes with a fixed text, namely 'Cash is accepted here' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:cards", - "description": "Layer 'Vending Machines' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted here' (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:qr_code", - "description": "Layer 'Vending Machines' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:coins", - "description": "Layer 'Vending Machines' shows payment:coins=yes with a fixed text, namely 'Coins are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:notes", - "description": "Layer 'Vending Machines' shows payment:notes=yes with a fixed text, namely 'Bank notes are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:debit_cards", - "description": "Layer 'Vending Machines' shows payment:debit_cards=yes with a fixed text, namely 'Debit cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:credit_cards", - "description": "Layer 'Vending Machines' shows payment:credit_cards=yes with a fixed text, namely 'Credit cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Vending Machines' shows payment:coins:denominations=0.01 EUR with a fixed text, namely '1 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.01 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Vending Machines' shows payment:coins:denominations=0.02 EUR with a fixed text, namely '2 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.02 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Vending Machines' shows payment:coins:denominations=0.05 EUR with a fixed text, namely '5 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.05 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Vending Machines' shows payment:coins:denominations=0.10 EUR with a fixed text, namely '10 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.10 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Vending Machines' shows payment:coins:denominations=0.20 EUR with a fixed text, namely '20 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.20 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Vending Machines' shows payment:coins:denominations=0.50 EUR with a fixed text, namely '50 cent coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.50 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Vending Machines' shows payment:coins:denominations=1 EUR with a fixed text, namely '1 euro coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "1 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Vending Machines' shows payment:coins:denominations=2 EUR with a fixed text, namely '2 euro coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "2 EUR" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Vending Machines' shows payment:coins:denominations=0.05 CHF with a fixed text, namely '5 centimes coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.05 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Vending Machines' shows payment:coins:denominations=0.10 CHF with a fixed text, namely '10 centimes coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.10 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Vending Machines' shows payment:coins:denominations=0.20 CHF with a fixed text, namely '20 centimes coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.20 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Vending Machines' shows payment:coins:denominations=0.50 CHF with a fixed text, namely '½ franc coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "0.50 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Vending Machines' shows payment:coins:denominations=1 CHF with a fixed text, namely '1 franc coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "1 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Vending Machines' shows payment:coins:denominations=2 CHF with a fixed text, namely '2 francs coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "2 CHF" - }, - { - "key": "payment:coins:denominations", - "description": "Layer 'Vending Machines' shows payment:coins:denominations=5 CHF with a fixed text, namely '5 francs coins are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:coins=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "5 CHF" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Vending Machines' shows payment:notes:denominations=5 EUR with a fixed text, namely '5 euro notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "5 EUR" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Vending Machines' shows payment:notes:denominations=10 EUR with a fixed text, namely '10 euro notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "10 EUR" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Vending Machines' shows payment:notes:denominations=20 EUR with a fixed text, namely '20 euro notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "20 EUR" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Vending Machines' shows payment:notes:denominations=50 EUR with a fixed text, namely '50 euro notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "50 EUR" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Vending Machines' shows payment:notes:denominations=100 EUR with a fixed text, namely '100 euro notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "100 EUR" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Vending Machines' shows payment:notes:denominations=200 EUR with a fixed text, namely '200 euro notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "200 EUR" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Vending Machines' shows payment:notes:denominations=500 EUR with a fixed text, namely '500 euro notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "500 EUR" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Vending Machines' shows payment:notes:denominations=10 CHF with a fixed text, namely '10 francs notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "10 CHF" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Vending Machines' shows payment:notes:denominations=20 CHF with a fixed text, namely '20 francs notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "20 CHF" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Vending Machines' shows payment:notes:denominations=50 CHF with a fixed text, namely '50 francs notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "50 CHF" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Vending Machines' shows payment:notes:denominations=100 CHF with a fixed text, namely '100 francs notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "100 CHF" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Vending Machines' shows payment:notes:denominations=200 CHF with a fixed text, namely '200 francs notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "200 CHF" - }, - { - "key": "payment:notes:denominations", - "description": "Layer 'Vending Machines' shows payment:notes:denominations=1000 CHF with a fixed text, namely '1000 francs notes are accepted' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if (payment:notes=yes | payment:cash=yes) & (_currency~^(.*EUR.*)$ | _currency~^(.*CHF.*)$))", - "value": "1000 CHF" - }, - { - "key": "operator", - "description": "Layer 'Vending Machines' shows and asks freeform values for key 'operator' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "indoor", - "description": "Layer 'Vending Machines' shows indoor= with a fixed text, namely 'This vending machine is outdoors' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key indoor.", - "value": "" - }, - { - "key": "indoor", - "description": "Layer 'Vending Machines' shows indoor=yes with a fixed text, namely 'This vending machine is indoors' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "indoor", - "description": "Layer 'Vending Machines' shows indoor=no with a fixed text, namely 'This vending machine is outdoors' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "phone", - "description": "Layer 'Vending Machines' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'Vending Machines' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "website", - "description": "Layer 'Vending Machines' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'Vending Machines' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "charge", - "description": "Layer 'Vending Machines' shows and asks freeform values for key 'charge' (in the mapcomplete.org theme 'Personal theme') (This is only shown if vending~^(.*bicycle_tube.*)$)" - }, - { - "key": "charge", - "description": "Layer 'Vending Machines' shows and asks freeform values for key 'charge' (in the mapcomplete.org theme 'Personal theme') (This is only shown if vending~^(.*bicycle_light.*)$)" - }, - { - "key": "charge", - "description": "Layer 'Vending Machines' shows and asks freeform values for key 'charge' (in the mapcomplete.org theme 'Personal theme') (This is only shown if vending~^(.*condom.*)$)" - }, - { - "key": "operational_status", - "description": "Layer 'Vending Machines' shows operational_status= with a fixed text, namely 'This vending machine works' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key operational_status.", - "value": "" - }, - { - "key": "operational_status", - "description": "Layer 'Vending Machines' shows operational_status=broken with a fixed text, namely 'This vending machine is broken' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "broken" - }, - { - "key": "operational_status", - "description": "Layer 'Vending Machines' shows operational_status=closed with a fixed text, namely 'This vending machine is closed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "operational_status", - "description": "Layer 'Vending Machines' shows operational_status~.+ with a fixed text, namely 'The operational status is {operational_status}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer veterinary showing features with this tag", - "value": "veterinary" - }, - { - "key": "id", - "description": "Layer 'veterinary' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "website", - "description": "Layer 'veterinary' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:website", - "description": "Layer 'veterinary' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "phone", - "description": "Layer 'veterinary' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "contact:phone", - "description": "Layer 'veterinary' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'veterinary' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "opening_hours", - "description": "Layer 'veterinary' shows opening_hours=closed with a fixed text, namely 'Marked as closed for an unspecified time' (in the mapcomplete.org theme 'Personal theme')", - "value": "closed" - }, - { - "key": "name", - "description": "Layer 'veterinary' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "tourism", - "description": "The MapComplete theme Personal theme has a layer Viewpoint showing features with this tag", - "value": "viewpoint" - }, - { - "key": "id", - "description": "Layer 'Viewpoint' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Viewpoint allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Viewpoint allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Viewpoint allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Viewpoint allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "description", - "description": "Layer 'Viewpoint' shows and asks freeform values for key 'description' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Waste Basket showing features with this tag", - "value": "waste_basket" - }, - { - "key": "id", - "description": "Layer 'Waste Basket' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Waste Basket allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Waste Basket allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Waste Basket allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Waste Basket allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "waste", - "description": "Layer 'Waste Basket' shows waste= with a fixed text, namely 'A waste basket for general waste' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key waste.", - "value": "" - }, - { - "key": "waste", - "description": "Layer 'Waste Basket' shows waste=trash with a fixed text, namely 'A waste basket for general waste' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "trash" - }, - { - "key": "waste", - "description": "Layer 'Waste Basket' shows waste=dog_excrement with a fixed text, namely 'A waste basket for dog excrements' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "dog_excrement" - }, - { - "key": "waste", - "description": "Layer 'Waste Basket' shows waste=cigarettes with a fixed text, namely 'A waste basket for cigarettes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "cigarettes" - }, - { - "key": "waste", - "description": "Layer 'Waste Basket' shows waste=drugs with a fixed text, namely 'A waste basket for drugs' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "drugs" - }, - { - "key": "waste", - "description": "Layer 'Waste Basket' shows waste=sharps with a fixed text, namely 'A waste basket for needles and other sharp objects' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "sharps" - }, - { - "key": "waste", - "description": "Layer 'Waste Basket' shows waste=plastic with a fixed text, namely 'A waste basket for plastic' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "plastic" - }, - { - "key": "waste", - "description": "Layer 'Waste Basket' shows waste=pmd with a fixed text, namely 'A waste basket for plastic packaging, metal packaging and drink cartons (PMD)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "pmd" - }, - { - "key": "waste", - "description": "Layer 'Waste Basket' shows waste=paper with a fixed text, namely 'A waste basket for paper' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "paper" - }, - { - "key": "vending", - "description": "Layer 'Waste Basket' shows vending=excrement_bags & not:vending= with a fixed text, namely 'This waste basket has a dispenser for (dog) excrement bags' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if waste~^(.*dog_excrement.*)$ | waste~^(.*trash.*)$ | waste=)", - "value": "excrement_bags" - }, - { - "key": "not:vending", - "description": "Layer 'Waste Basket' shows vending=excrement_bags & not:vending= with a fixed text, namely 'This waste basket has a dispenser for (dog) excrement bags' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key not:vending. (This is only shown if waste~^(.*dog_excrement.*)$ | waste~^(.*trash.*)$ | waste=)", - "value": "" - }, - { - "key": "not:vending", - "description": "Layer 'Waste Basket' shows not:vending=excrement_bags & vending= with a fixed text, namely 'This waste basket does not have a dispenser for (dog) excrement bags' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if waste~^(.*dog_excrement.*)$ | waste~^(.*trash.*)$ | waste=)", - "value": "excrement_bags" - }, - { - "key": "vending", - "description": "Layer 'Waste Basket' shows not:vending=excrement_bags & vending= with a fixed text, namely 'This waste basket does not have a dispenser for (dog) excrement bags' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key vending. (This is only shown if waste~^(.*dog_excrement.*)$ | waste~^(.*trash.*)$ | waste=)", - "value": "" - }, - { - "key": "vending", - "description": "Layer 'Waste Basket' shows vending= with a fixed text, namely 'This waste basket does not have a dispenser for (dog) excrement bags' (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key vending. (This is only shown if waste~^(.*dog_excrement.*)$ | waste~^(.*trash.*)$ | waste=)", - "value": "" - }, - { - "key": "amenity", - "description": "The MapComplete theme Personal theme has a layer Waste Disposal Bins showing features with this tag", - "value": "waste_disposal" - }, - { - "key": "id", - "description": "Layer 'Waste Disposal Bins' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Waste Disposal Bins allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Waste Disposal Bins allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Waste Disposal Bins allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Waste Disposal Bins allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "amenity", - "description": "Layer 'Waste Disposal Bins' shows amenity=waste_disposal with a fixed text, namely 'This is a medium to large bin for disposal of (household) waste' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "waste_disposal" - }, - { - "key": "amenity", - "description": "Layer 'Waste Disposal Bins' shows amenity=recycling with a fixed text, namely 'This is actually a recycling container' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "recycling" - }, - { - "key": "access", - "description": "Layer 'Waste Disposal Bins' shows and asks freeform values for key 'access' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "access", - "description": "Layer 'Waste Disposal Bins' shows access=yes with a fixed text, namely 'This bin can be used by anyone' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "yes" - }, - { - "key": "access", - "description": "Layer 'Waste Disposal Bins' shows access=no with a fixed text, namely 'This bin is private' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "no" - }, - { - "key": "access", - "description": "Layer 'Waste Disposal Bins' shows access=residents with a fixed text, namely 'This bin is only for residents' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "residents" - }, - { - "key": "location", - "description": "Layer 'Waste Disposal Bins' shows location=underground with a fixed text, namely 'This is an underground container' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "underground" - }, - { - "key": "location", - "description": "Layer 'Waste Disposal Bins' shows location=indoor with a fixed text, namely 'This container is located indoors' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", - "value": "indoor" - }, - { - "key": "location", - "description": "Layer 'Waste Disposal Bins' shows location= with a fixed text, namely 'This container is located outdoors' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') Picking this answer will delete the key location.", - "value": "" - }, - { - "key": "generator:source", - "description": "The MapComplete theme Personal theme has a layer wind turbine showing features with this tag", - "value": "wind" - }, - { - "key": "id", - "description": "Layer 'wind turbine' 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 'Personal theme') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "generator:output:electricity", - "description": "Layer 'wind turbine' shows and asks freeform values for key 'generator:output:electricity' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "operator", - "description": "Layer 'wind turbine' shows and asks freeform values for key 'operator' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "height", - "description": "Layer 'wind turbine' shows and asks freeform values for key 'height' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "rotor:diameter", - "description": "Layer 'wind turbine' shows and asks freeform values for key 'rotor:diameter' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "start_date", - "description": "Layer 'wind turbine' shows and asks freeform values for key 'start_date' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "fixme", - "description": "Layer 'wind turbine' shows and asks freeform values for key 'fixme' (in the mapcomplete.org theme 'Personal theme')" - }, - { - "key": "image", - "description": "The layer 'wind turbine allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'wind turbine allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'wind turbine allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'wind turbine allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - } - ] -} \ No newline at end of file diff --git a/Docs/TagInfo/mapcomplete_pets.json b/Docs/TagInfo/mapcomplete_pets.json index b48fc831b..db0f037c4 100644 --- a/Docs/TagInfo/mapcomplete_pets.json +++ b/Docs/TagInfo/mapcomplete_pets.json @@ -31,19 +31,23 @@ }, { "key": "image", - "description": "The layer 'dog parks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'dog parks 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 'dog parks 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 'dog parks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'dog parks 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 'dog parks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'dog parks 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 'dog parks allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'dog parks 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": "name", @@ -122,19 +126,23 @@ }, { "key": "image", - "description": "The layer 'Dog friendly eateries allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Dog friendly eateries 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 'Dog friendly eateries 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 'Dog friendly eateries allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Dog friendly eateries 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 'Dog friendly eateries allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Dog friendly eateries 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 'Dog friendly eateries allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Dog friendly eateries 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": "name", @@ -352,35 +360,43 @@ }, { "key": "image", - "description": "The layer 'Dog friendly eateries shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Dog friendly eateries shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" + }, + { + "key": "panoramax", + "description": "The layer 'Dog friendly eateries shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "mapillary", - "description": "The layer 'Dog friendly eateries shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Dog friendly eateries shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikidata", - "description": "The layer 'Dog friendly eateries shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Dog friendly eateries shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikipedia", - "description": "The layer 'Dog friendly eateries shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Dog friendly eateries shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "image", - "description": "The layer 'Dog friendly eateries allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Dog friendly eateries 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 'Dog friendly eateries 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 'Dog friendly eateries allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Dog friendly eateries 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 'Dog friendly eateries allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Dog friendly eateries 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 'Dog friendly eateries allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Dog friendly eateries 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": "website:menu", @@ -423,7 +439,7 @@ }, { "key": "delivery", - "description": "Layer 'Dog friendly eateries' shows delivery=yes with a fixed text, namely 'This business does home delivery (eventually via a third party)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities')", + "description": "Layer 'Dog friendly eateries' shows delivery=yes with a fixed text, namely 'This business does home delivery (possibly via a third party)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities')", "value": "yes" }, { @@ -501,6 +517,101 @@ "description": "Layer 'Dog friendly eateries' shows diet:halal=only with a fixed text, namely 'Only halal options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine!=friture)", "value": "only" }, + { + "key": "organic", + "description": "Layer 'Dog friendly eateries' shows organic=no with a fixed text, namely 'There are no organic options available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine!=friture)", + "value": "no" + }, + { + "key": "organic", + "description": "Layer 'Dog friendly eateries' shows organic=yes with a fixed text, namely 'There is an organic menu' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine!=friture)", + "value": "yes" + }, + { + "key": "organic", + "description": "Layer 'Dog friendly eateries' shows organic=only with a fixed text, namely 'Only organic options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine!=friture)", + "value": "only" + }, + { + "key": "diet:vegetarian", + "description": "Layer 'Dog friendly eateries' shows diet:vegetarian=only with a fixed text, namely 'Serves only vegetarian snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", + "value": "only" + }, + { + "key": "diet:vegetarian", + "description": "Layer 'Dog friendly eateries' shows diet:vegetarian=yes with a fixed text, namely 'Vegetarian snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", + "value": "yes" + }, + { + "key": "diet:vegetarian", + "description": "Layer 'Dog friendly eateries' shows diet:vegetarian=limited with a fixed text, namely 'Only a small selection of snacks are vegetarian' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", + "value": "limited" + }, + { + "key": "diet:vegetarian", + "description": "Layer 'Dog friendly eateries' shows diet:vegetarian=no with a fixed text, namely 'No vegetarian snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", + "value": "no" + }, + { + "key": "diet:vegan", + "description": "Layer 'Dog friendly eateries' shows diet:vegan=only with a fixed text, namely 'Serves only vegan snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", + "value": "only" + }, + { + "key": "diet:vegan", + "description": "Layer 'Dog friendly eateries' shows diet:vegan=yes with a fixed text, namely 'Vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", + "value": "yes" + }, + { + "key": "diet:vegan", + "description": "Layer 'Dog friendly eateries' shows diet:vegan=limited with a fixed text, namely 'A small selection of vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", + "value": "limited" + }, + { + "key": "diet:vegan", + "description": "Layer 'Dog friendly eateries' shows diet:vegan=no with a fixed text, namely 'No vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", + "value": "no" + }, + { + "key": "organic", + "description": "Layer 'Dog friendly eateries' shows organic=yes with a fixed text, namely 'Organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", + "value": "yes" + }, + { + "key": "organic", + "description": "Layer 'Dog friendly eateries' shows organic=no with a fixed text, namely 'No organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", + "value": "no" + }, + { + "key": "organic", + "description": "Layer 'Dog friendly eateries' shows organic=only with a fixed text, namely 'Only organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", + "value": "only" + }, + { + "key": "friture:oil", + "description": "Layer 'Dog friendly eateries' shows friture:oil=vegetable with a fixed text, namely 'The frying is done with vegetable oil' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", + "value": "vegetable" + }, + { + "key": "friture:oil", + "description": "Layer 'Dog friendly eateries' shows friture:oil=animal with a fixed text, namely 'The frying is done with animal oil' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", + "value": "animal" + }, + { + "key": "reusable_packaging:accept", + "description": "Layer 'Dog friendly eateries' shows reusable_packaging:accept=yes with a fixed text, namely 'You can bring your own containers to get your order, saving on single-use packaging material and thus waste' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", + "value": "yes" + }, + { + "key": "reusable_packaging:accept", + "description": "Layer 'Dog friendly eateries' shows reusable_packaging:accept=no with a fixed text, namely 'Bringing your own container is not allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", + "value": "no" + }, + { + "key": "reusable_packaging:accept", + "description": "Layer 'Dog friendly eateries' shows reusable_packaging:accept=only with a fixed text, namely 'You must bring your own container to order here.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", + "value": "only" + }, { "key": "diet:sugar_free", "description": "Layer 'Dog friendly eateries' shows diet:sugar_free=only with a fixed text, namely 'This shop only sells sugar free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities')", @@ -561,101 +672,6 @@ "description": "Layer 'Dog friendly eateries' shows diet:lactose_free=no with a fixed text, namely 'No lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities')", "value": "no" }, - { - "key": "organic", - "description": "Layer 'Dog friendly eateries' shows organic=no with a fixed text, namely 'There are no organic options available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine!=friture)", - "value": "no" - }, - { - "key": "organic", - "description": "Layer 'Dog friendly eateries' shows organic=yes with a fixed text, namely 'There is an organic menu' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine!=friture)", - "value": "yes" - }, - { - "key": "organic", - "description": "Layer 'Dog friendly eateries' shows organic=only with a fixed text, namely 'Only organic options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine!=friture)", - "value": "only" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Dog friendly eateries' shows diet:vegetarian=only with a fixed text, namely 'Serves only vegetarian snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", - "value": "only" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Dog friendly eateries' shows diet:vegetarian=yes with a fixed text, namely 'Vegetarian snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Dog friendly eateries' shows diet:vegetarian=limited with a fixed text, namely 'Only a small selection of snacks are vegetarian' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", - "value": "limited" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Dog friendly eateries' shows diet:vegetarian=no with a fixed text, namely 'No vegetarian snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "diet:vegan", - "description": "Layer 'Dog friendly eateries' shows diet:vegan=only with a fixed text, namely 'Servers only vegan snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", - "value": "only" - }, - { - "key": "diet:vegan", - "description": "Layer 'Dog friendly eateries' shows diet:vegan=yes with a fixed text, namely 'Vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "diet:vegan", - "description": "Layer 'Dog friendly eateries' shows diet:vegan=limited with a fixed text, namely 'A small selection of vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", - "value": "limited" - }, - { - "key": "diet:vegan", - "description": "Layer 'Dog friendly eateries' shows diet:vegan=no with a fixed text, namely 'No vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "organic", - "description": "Layer 'Dog friendly eateries' shows organic=yes with a fixed text, namely 'Organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "organic", - "description": "Layer 'Dog friendly eateries' shows organic=no with a fixed text, namely 'No organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "organic", - "description": "Layer 'Dog friendly eateries' shows organic=only with a fixed text, namely 'Only organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", - "value": "only" - }, - { - "key": "friture:oil", - "description": "Layer 'Dog friendly eateries' shows friture:oil=vegetable with a fixed text, namely 'The frying is done with vegetable oil' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", - "value": "vegetable" - }, - { - "key": "friture:oil", - "description": "Layer 'Dog friendly eateries' shows friture:oil=animal with a fixed text, namely 'The frying is done with animal oil' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", - "value": "animal" - }, - { - "key": "reusable_packaging:accept", - "description": "Layer 'Dog friendly eateries' shows reusable_packaging:accept=yes with a fixed text, namely 'You can bring your own containers to get your order, saving on single-use packaging material and thus waste' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "reusable_packaging:accept", - "description": "Layer 'Dog friendly eateries' shows reusable_packaging:accept=no with a fixed text, namely 'Bringing your own container is not allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "reusable_packaging:accept", - "description": "Layer 'Dog friendly eateries' shows reusable_packaging:accept=only with a fixed text, namely 'You must bring your own container to order here.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if cuisine=friture)", - "value": "only" - }, { "key": "smoking", "description": "Layer 'Dog friendly eateries' shows smoking=yes with a fixed text, namely 'Smoking is allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if _country!~^(al|be)$)", @@ -795,19 +811,23 @@ }, { "key": "image", - "description": "The layer 'Dog-friendly shops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Dog-friendly shops 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 'Dog-friendly shops 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 'Dog-friendly shops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Dog-friendly shops 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 'Dog-friendly shops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Dog-friendly shops 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 'Dog-friendly shops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Dog-friendly shops 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": "name", @@ -1799,12 +1819,12 @@ }, { "key": "service:bicycle:retail", - "description": "Layer 'Dog-friendly shops' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", + "description": "Layer 'Dog-friendly shops' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself)", "value": "yes" }, { "key": "service:bicycle:retail", - "description": "Layer 'Dog-friendly shops' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", + "description": "Layer 'Dog-friendly shops' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself)", "value": "no" }, { @@ -1824,32 +1844,32 @@ }, { "key": "service:bicycle:repair", - "description": "Layer 'Dog-friendly shops' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Dog-friendly shops' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "yes" }, { "key": "service:bicycle:repair", - "description": "Layer 'Dog-friendly shops' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Dog-friendly shops' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "no" }, { "key": "service:bicycle:repair", - "description": "Layer 'Dog-friendly shops' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Dog-friendly shops' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "only_sold" }, { "key": "service:bicycle:repair", - "description": "Layer 'Dog-friendly shops' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Dog-friendly shops' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "brand" }, { "key": "service:bicycle:rental", - "description": "Layer 'Dog-friendly shops' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", + "description": "Layer 'Dog-friendly shops' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental)", "value": "yes" }, { "key": "service:bicycle:rental", - "description": "Layer 'Dog-friendly shops' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", + "description": "Layer 'Dog-friendly shops' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental)", "value": "no" }, { @@ -1976,21 +1996,21 @@ }, { "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Dog-friendly shops' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)" + "description": "Layer 'Dog-friendly shops' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)" }, { "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Dog-friendly shops' 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 'Veterinarians, dog parks and other pet-amenities') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", + "description": "Layer 'Dog-friendly shops' 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 'Veterinarians, dog parks and other pet-amenities') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", "value": "no" }, { "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Dog-friendly shops' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", + "description": "Layer 'Dog-friendly shops' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", "value": "yes" }, { "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Dog-friendly shops' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') 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 'Dog-friendly shops' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') 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": "" }, { @@ -2175,19 +2195,23 @@ }, { "key": "image", - "description": "The layer 'Animal shelters allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Animal shelters 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 'Animal shelters 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 'Animal shelters allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Animal shelters 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 'Animal shelters allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Animal shelters 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 'Animal shelters allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Animal shelters 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": "name", diff --git a/Docs/TagInfo/mapcomplete_playgrounds.json b/Docs/TagInfo/mapcomplete_playgrounds.json index e87c1ad58..ac5167f1e 100644 --- a/Docs/TagInfo/mapcomplete_playgrounds.json +++ b/Docs/TagInfo/mapcomplete_playgrounds.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Playgrounds allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Playgrounds 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 'Playgrounds 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 'Playgrounds allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Playgrounds 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 'Playgrounds allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Playgrounds 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 'Playgrounds allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Playgrounds 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": "fee", @@ -220,19 +224,23 @@ }, { "key": "image", - "description": "The layer 'Playground equipment allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Playground equipment 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 'Playground equipment 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 'Playground equipment allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Playground equipment 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 'Playground equipment allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Playground equipment 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 'Playground equipment allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Playground equipment 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": "playground", @@ -379,19 +387,23 @@ }, { "key": "image", - "description": "The layer 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches 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 'Benches 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 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches 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 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches 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 'Benches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Benches 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": "backrest", @@ -663,19 +675,23 @@ }, { "key": "image", - "description": "The layer 'Picnic tables allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Picnic tables 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 'Picnic tables 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 'Picnic tables allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Picnic tables 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 'Picnic tables allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Picnic tables 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 'Picnic tables allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Picnic tables 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": "level", @@ -741,19 +757,23 @@ }, { "key": "image", - "description": "The layer 'Waste Basket allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Waste Basket 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 'Waste Basket 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 'Waste Basket allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Waste Basket 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 'Waste Basket allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Waste Basket 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 'Waste Basket allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Waste Basket 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": "waste", @@ -836,19 +856,23 @@ }, { "key": "image", - "description": "The layer 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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 'Toilets 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 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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": "level", @@ -1123,19 +1147,23 @@ }, { "key": "image", - "description": "The layer 'BBQ allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'BBQ 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 'BBQ 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 'BBQ allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'BBQ 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 'BBQ allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'BBQ 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 'BBQ allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'BBQ 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": "access", diff --git a/Docs/TagInfo/mapcomplete_postboxes.json b/Docs/TagInfo/mapcomplete_postboxes.json index b53bc5cad..9cfda6105 100644 --- a/Docs/TagInfo/mapcomplete_postboxes.json +++ b/Docs/TagInfo/mapcomplete_postboxes.json @@ -21,19 +21,27 @@ }, { "key": "image", - "description": "The layer 'Postboxes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys 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": "panoramax", + "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": "mapillary", - "description": "The layer 'Postboxes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys 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": "wikidata", - "description": "The layer 'Postboxes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys 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": "wikipedia", - "description": "The layer 'Postboxes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys 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", @@ -51,19 +59,51 @@ }, { "key": "image", - "description": "The layer 'Post offices allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Post offices 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 'Post offices 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 'Post offices allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Post offices 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 'Post offices allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Post offices 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 'Post offices allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Post offices 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": "phone", + "description": "Layer 'Post offices' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Postbox and Post Office Map')" + }, + { + "key": "contact:phone", + "description": "Layer 'Post offices' shows contact:phone~.+ with a fixed text, namely '{link(&LBRACEcontact:phone&RBRACE,tel:&LBRACEcontact:phone&RBRACE,,,,)}' (in the mapcomplete.org theme 'Postbox and Post Office Map')" + }, + { + "key": "email", + "description": "Layer 'Post offices' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Postbox and Post Office Map')" + }, + { + "key": "contact:email", + "description": "Layer 'Post offices' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Postbox and Post Office Map')" + }, + { + "key": "operator:email", + "description": "Layer 'Post offices' shows operator:email~.+ with a fixed text, namely '{operator:email}' (in the mapcomplete.org theme 'Postbox and Post Office Map')" + }, + { + "key": "website", + "description": "Layer 'Post offices' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Postbox and Post Office Map')" + }, + { + "key": "contact:website", + "description": "Layer 'Post offices' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Postbox and Post Office Map')" }, { "key": "opening_hours", @@ -76,12 +116,12 @@ }, { "key": "post_office", - "description": "Layer 'Post offices' shows post_office=post_partner with a fixed text, namely 'This shop is a post partner' and allows to pick this as a default answer (in the mapcomplete.org theme 'Postbox and Post Office Map')", + "description": "Layer 'Post offices' shows post_office=post_partner with a fixed text, namely 'This shop is a post partner' and allows to pick this as a default answer (in the mapcomplete.org theme 'Postbox and Post Office Map') (This is only shown if amenity!=post_office)", "value": "post_partner" }, { "key": "post_office", - "description": "Layer 'Post offices' shows post_office= with a fixed text, namely 'This shop is not a post partner' and allows to pick this as a default answer (in the mapcomplete.org theme 'Postbox and Post Office Map') Picking this answer will delete the key post_office.", + "description": "Layer 'Post offices' shows post_office= with a fixed text, namely 'This shop is not a post partner' and allows to pick this as a default answer (in the mapcomplete.org theme 'Postbox and Post Office Map') Picking this answer will delete the key post_office. (This is only shown if amenity!=post_office)", "value": "" }, { @@ -238,19 +278,23 @@ }, { "key": "image", - "description": "The layer 'Parcel Lockers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parcel Lockers 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 'Parcel Lockers 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 'Parcel Lockers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parcel Lockers 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 'Parcel Lockers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parcel Lockers 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 'Parcel Lockers allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parcel Lockers 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": "brand", @@ -328,19 +372,23 @@ }, { "key": "image", - "description": "The layer 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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": "name", @@ -1332,12 +1380,12 @@ }, { "key": "service:bicycle:retail", - "description": "Layer 'Shop' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Postbox and Post Office Map') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", + "description": "Layer 'Shop' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Postbox and Post Office Map') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself)", "value": "yes" }, { "key": "service:bicycle:retail", - "description": "Layer 'Shop' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Postbox and Post Office Map') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", + "description": "Layer 'Shop' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Postbox and Post Office Map') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself)", "value": "no" }, { @@ -1357,32 +1405,32 @@ }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Postbox and Post Office Map') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Postbox and Post Office Map') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "yes" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Postbox and Post Office Map') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Postbox and Post Office Map') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "no" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Postbox and Post Office Map') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Postbox and Post Office Map') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "only_sold" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Postbox and Post Office Map') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Postbox and Post Office Map') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "brand" }, { "key": "service:bicycle:rental", - "description": "Layer 'Shop' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Postbox and Post Office Map') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", + "description": "Layer 'Shop' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Postbox and Post Office Map') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental)", "value": "yes" }, { "key": "service:bicycle:rental", - "description": "Layer 'Shop' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Postbox and Post Office Map') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", + "description": "Layer 'Shop' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Postbox and Post Office Map') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental)", "value": "no" }, { @@ -1509,21 +1557,21 @@ }, { "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Shop' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'Postbox and Post Office Map') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)" + "description": "Layer 'Shop' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'Postbox and Post Office Map') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)" }, { "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Shop' 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 'Postbox and Post Office Map') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", + "description": "Layer 'Shop' 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 'Postbox and Post Office Map') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", "value": "no" }, { "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Postbox and Post Office Map') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", + "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Postbox and Post Office Map') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", "value": "yes" }, { "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Postbox and Post Office Map') 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 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Postbox and Post Office Map') 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": "" }, { diff --git a/Docs/TagInfo/mapcomplete_rainbow_crossings.json b/Docs/TagInfo/mapcomplete_rainbow_crossings.json index 954e23657..832c8217c 100644 --- a/Docs/TagInfo/mapcomplete_rainbow_crossings.json +++ b/Docs/TagInfo/mapcomplete_rainbow_crossings.json @@ -36,19 +36,23 @@ }, { "key": "image", - "description": "The layer 'Crossings with rainbow paintings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Crossings with rainbow paintings 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 'Crossings with rainbow paintings 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 'Crossings with rainbow paintings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Crossings with rainbow paintings 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 'Crossings with rainbow paintings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Crossings with rainbow paintings 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 'Crossings with rainbow paintings allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Crossings with rainbow paintings 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": "surface:colour", diff --git a/Docs/TagInfo/mapcomplete_shops.json b/Docs/TagInfo/mapcomplete_shops.json index 606ae2670..09e6d0671 100644 --- a/Docs/TagInfo/mapcomplete_shops.json +++ b/Docs/TagInfo/mapcomplete_shops.json @@ -30,19 +30,23 @@ }, { "key": "image", - "description": "The layer 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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": "name", @@ -1034,12 +1038,12 @@ }, { "key": "service:bicycle:retail", - "description": "Layer 'Shop' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Shops') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", + "description": "Layer 'Shop' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Shops') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself)", "value": "yes" }, { "key": "service:bicycle:retail", - "description": "Layer 'Shop' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Shops') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", + "description": "Layer 'Shop' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Shops') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself)", "value": "no" }, { @@ -1059,32 +1063,32 @@ }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Shops') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Shops') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "yes" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Shops') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Shops') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "no" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Shops') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Shops') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "only_sold" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Shops') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Shops') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "brand" }, { "key": "service:bicycle:rental", - "description": "Layer 'Shop' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Shops') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", + "description": "Layer 'Shop' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Shops') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental)", "value": "yes" }, { "key": "service:bicycle:rental", - "description": "Layer 'Shop' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Shops') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", + "description": "Layer 'Shop' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Shops') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental)", "value": "no" }, { @@ -1211,21 +1215,21 @@ }, { "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Shop' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'Shops') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)" + "description": "Layer 'Shop' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'Shops') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)" }, { "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Shop' 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 'Shops') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", + "description": "Layer 'Shop' 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 'Shops') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", "value": "no" }, { "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Shops') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", + "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Shops') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", "value": "yes" }, { "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Shops') 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 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Shops') 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": "" }, { @@ -1372,19 +1376,23 @@ }, { "key": "image", - "description": "The layer 'Pharmacies allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Pharmacies 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 'Pharmacies 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 'Pharmacies allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Pharmacies 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 'Pharmacies allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Pharmacies 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 'Pharmacies allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Pharmacies 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": "name", @@ -1468,19 +1476,23 @@ }, { "key": "image", - "description": "The layer 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ice cream parlors 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 'Ice cream parlors 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 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ice cream parlors 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 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ice cream parlors 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 'Ice cream parlors allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ice cream parlors 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": "name", diff --git a/Docs/TagInfo/mapcomplete_ski.json b/Docs/TagInfo/mapcomplete_ski.json index a99c02494..b2cfe6639 100644 --- a/Docs/TagInfo/mapcomplete_ski.json +++ b/Docs/TagInfo/mapcomplete_ski.json @@ -26,19 +26,23 @@ }, { "key": "image", - "description": "The layer 'Ski and snowboard pistes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ski and snowboard pistes 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 'Ski and snowboard pistes 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 'Ski and snowboard pistes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ski and snowboard pistes 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 'Ski and snowboard pistes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ski and snowboard pistes 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 'Ski and snowboard pistes allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Ski and snowboard pistes 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": "piste:difficulty", @@ -80,19 +84,23 @@ }, { "key": "image", - "description": "The layer 'Aerialways allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Aerialways 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 'Aerialways 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 'Aerialways allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Aerialways 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 'Aerialways allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Aerialways 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 'Aerialways allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Aerialways 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": "aerialway", @@ -187,19 +195,23 @@ }, { "key": "image", - "description": "The layer 'Guideposts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Guideposts 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 'Guideposts 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 'Guideposts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Guideposts 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 'Guideposts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Guideposts 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 'Guideposts allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Guideposts 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": "bicycle", @@ -242,19 +254,23 @@ }, { "key": "image", - "description": "The layer 'Maps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer '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 '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 'Maps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer '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 'Maps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer '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 'Maps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer '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": "map_type", @@ -293,7 +309,7 @@ }, { "key": "map_size", - "description": "Layer 'Maps' shows map_size=city with a fixed text, namely ' A map of a city' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways')", + "description": "Layer 'Maps' shows map_size=city with a fixed text, namely 'A map of a city' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways')", "value": "city" }, { @@ -351,19 +367,23 @@ }, { "key": "image", - "description": "The layer 'Information boards allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Information boards 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 'Information boards 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 'Information boards allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Information boards 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 'Information boards allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Information boards 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 'Information boards allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Information boards 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": "emergency", @@ -376,19 +396,23 @@ }, { "key": "image", - "description": "The layer 'Mountain rescue stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Mountain rescue stations 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 'Mountain rescue stations 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 'Mountain rescue stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Mountain rescue stations 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 'Mountain rescue stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Mountain rescue stations 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 'Mountain rescue stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Mountain rescue stations 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": "amenity", @@ -401,19 +425,23 @@ }, { "key": "image", - "description": "The layer 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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 'Toilets 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 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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": "level", @@ -698,19 +726,23 @@ }, { "key": "image", - "description": "The layer 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Drinking water 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 'Drinking water 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 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Drinking water 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 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Drinking water 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 'Drinking water allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Drinking water 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": "operational_status", @@ -925,19 +957,23 @@ }, { "key": "image", - "description": "The layer 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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": "name", @@ -1155,35 +1191,43 @@ }, { "key": "image", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" + }, + { + "key": "panoramax", + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "mapillary", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikidata", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "wikipedia", - "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary" }, { "key": "image", - "description": "The layer 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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 'Restaurants and fast food allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Restaurants and fast food 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": "website:menu", @@ -1226,7 +1270,7 @@ }, { "key": "delivery", - "description": "Layer 'Restaurants and fast food' shows delivery=yes with a fixed text, namely 'This business does home delivery (eventually via a third party)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways')", + "description": "Layer 'Restaurants and fast food' shows delivery=yes with a fixed text, namely 'This business does home delivery (possibly via a third party)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways')", "value": "yes" }, { @@ -1304,6 +1348,101 @@ "description": "Layer 'Restaurants and fast food' shows diet:halal=only with a fixed text, namely 'Only halal options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine!=friture)", "value": "only" }, + { + "key": "organic", + "description": "Layer 'Restaurants and fast food' shows organic=no with a fixed text, namely 'There are no organic options available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine!=friture)", + "value": "no" + }, + { + "key": "organic", + "description": "Layer 'Restaurants and fast food' shows organic=yes with a fixed text, namely 'There is an organic menu' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine!=friture)", + "value": "yes" + }, + { + "key": "organic", + "description": "Layer 'Restaurants and fast food' shows organic=only with a fixed text, namely 'Only organic options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine!=friture)", + "value": "only" + }, + { + "key": "diet:vegetarian", + "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=only with a fixed text, namely 'Serves only vegetarian snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", + "value": "only" + }, + { + "key": "diet:vegetarian", + "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=yes with a fixed text, namely 'Vegetarian snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", + "value": "yes" + }, + { + "key": "diet:vegetarian", + "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=limited with a fixed text, namely 'Only a small selection of snacks are vegetarian' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", + "value": "limited" + }, + { + "key": "diet:vegetarian", + "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=no with a fixed text, namely 'No vegetarian snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", + "value": "no" + }, + { + "key": "diet:vegan", + "description": "Layer 'Restaurants and fast food' shows diet:vegan=only with a fixed text, namely 'Serves only vegan snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", + "value": "only" + }, + { + "key": "diet:vegan", + "description": "Layer 'Restaurants and fast food' shows diet:vegan=yes with a fixed text, namely 'Vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", + "value": "yes" + }, + { + "key": "diet:vegan", + "description": "Layer 'Restaurants and fast food' shows diet:vegan=limited with a fixed text, namely 'A small selection of vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", + "value": "limited" + }, + { + "key": "diet:vegan", + "description": "Layer 'Restaurants and fast food' shows diet:vegan=no with a fixed text, namely 'No vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", + "value": "no" + }, + { + "key": "organic", + "description": "Layer 'Restaurants and fast food' shows organic=yes with a fixed text, namely 'Organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", + "value": "yes" + }, + { + "key": "organic", + "description": "Layer 'Restaurants and fast food' shows organic=no with a fixed text, namely 'No organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", + "value": "no" + }, + { + "key": "organic", + "description": "Layer 'Restaurants and fast food' shows organic=only with a fixed text, namely 'Only organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", + "value": "only" + }, + { + "key": "friture:oil", + "description": "Layer 'Restaurants and fast food' shows friture:oil=vegetable with a fixed text, namely 'The frying is done with vegetable oil' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", + "value": "vegetable" + }, + { + "key": "friture:oil", + "description": "Layer 'Restaurants and fast food' shows friture:oil=animal with a fixed text, namely 'The frying is done with animal oil' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", + "value": "animal" + }, + { + "key": "reusable_packaging:accept", + "description": "Layer 'Restaurants and fast food' shows reusable_packaging:accept=yes with a fixed text, namely 'You can bring your own containers to get your order, saving on single-use packaging material and thus waste' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", + "value": "yes" + }, + { + "key": "reusable_packaging:accept", + "description": "Layer 'Restaurants and fast food' shows reusable_packaging:accept=no with a fixed text, namely 'Bringing your own container is not allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", + "value": "no" + }, + { + "key": "reusable_packaging:accept", + "description": "Layer 'Restaurants and fast food' shows reusable_packaging:accept=only with a fixed text, namely 'You must bring your own container to order here.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", + "value": "only" + }, { "key": "diet:sugar_free", "description": "Layer 'Restaurants and fast food' shows diet:sugar_free=only with a fixed text, namely 'This shop only sells sugar free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways')", @@ -1364,101 +1503,6 @@ "description": "Layer 'Restaurants and fast food' shows diet:lactose_free=no with a fixed text, namely 'No lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways')", "value": "no" }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=no with a fixed text, namely 'There are no organic options available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine!=friture)", - "value": "no" - }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=yes with a fixed text, namely 'There is an organic menu' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine!=friture)", - "value": "yes" - }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=only with a fixed text, namely 'Only organic options are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine!=friture)", - "value": "only" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=only with a fixed text, namely 'Serves only vegetarian snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", - "value": "only" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=yes with a fixed text, namely 'Vegetarian snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=limited with a fixed text, namely 'Only a small selection of snacks are vegetarian' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", - "value": "limited" - }, - { - "key": "diet:vegetarian", - "description": "Layer 'Restaurants and fast food' shows diet:vegetarian=no with a fixed text, namely 'No vegetarian snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "diet:vegan", - "description": "Layer 'Restaurants and fast food' shows diet:vegan=only with a fixed text, namely 'Servers only vegan snacks and burgers' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", - "value": "only" - }, - { - "key": "diet:vegan", - "description": "Layer 'Restaurants and fast food' shows diet:vegan=yes with a fixed text, namely 'Vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "diet:vegan", - "description": "Layer 'Restaurants and fast food' shows diet:vegan=limited with a fixed text, namely 'A small selection of vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", - "value": "limited" - }, - { - "key": "diet:vegan", - "description": "Layer 'Restaurants and fast food' shows diet:vegan=no with a fixed text, namely 'No vegan snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=yes with a fixed text, namely 'Organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=no with a fixed text, namely 'No organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "organic", - "description": "Layer 'Restaurants and fast food' shows organic=only with a fixed text, namely 'Only organic snacks are available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", - "value": "only" - }, - { - "key": "friture:oil", - "description": "Layer 'Restaurants and fast food' shows friture:oil=vegetable with a fixed text, namely 'The frying is done with vegetable oil' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", - "value": "vegetable" - }, - { - "key": "friture:oil", - "description": "Layer 'Restaurants and fast food' shows friture:oil=animal with a fixed text, namely 'The frying is done with animal oil' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", - "value": "animal" - }, - { - "key": "reusable_packaging:accept", - "description": "Layer 'Restaurants and fast food' shows reusable_packaging:accept=yes with a fixed text, namely 'You can bring your own containers to get your order, saving on single-use packaging material and thus waste' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", - "value": "yes" - }, - { - "key": "reusable_packaging:accept", - "description": "Layer 'Restaurants and fast food' shows reusable_packaging:accept=no with a fixed text, namely 'Bringing your own container is not allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", - "value": "no" - }, - { - "key": "reusable_packaging:accept", - "description": "Layer 'Restaurants and fast food' shows reusable_packaging:accept=only with a fixed text, namely 'You must bring your own container to order here.' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if cuisine=friture)", - "value": "only" - }, { "key": "smoking", "description": "Layer 'Restaurants and fast food' shows smoking=yes with a fixed text, namely 'Smoking is allowed' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if _country!~^(al|be)$)", @@ -1584,19 +1628,23 @@ }, { "key": "image", - "description": "The layer 'Viewpoint allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Viewpoint 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 'Viewpoint 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 'Viewpoint allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Viewpoint 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 'Viewpoint allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Viewpoint 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 'Viewpoint allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Viewpoint 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": "description", @@ -1613,19 +1661,23 @@ }, { "key": "image", - "description": "The layer 'Binoculars allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Binoculars 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 'Binoculars 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 'Binoculars allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Binoculars 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 'Binoculars allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Binoculars 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 'Binoculars allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Binoculars 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": "charge", diff --git a/Docs/TagInfo/mapcomplete_sport_pitches.json b/Docs/TagInfo/mapcomplete_sport_pitches.json index f862d4c1e..8edf44f5a 100644 --- a/Docs/TagInfo/mapcomplete_sport_pitches.json +++ b/Docs/TagInfo/mapcomplete_sport_pitches.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Sport pitches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sport pitches 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 'Sport pitches 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 'Sport pitches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sport pitches 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 'Sport pitches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sport pitches 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 'Sport pitches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sport pitches 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": "sport", diff --git a/Docs/TagInfo/mapcomplete_sports.json b/Docs/TagInfo/mapcomplete_sports.json index 390469ffa..92e790100 100644 --- a/Docs/TagInfo/mapcomplete_sports.json +++ b/Docs/TagInfo/mapcomplete_sports.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Sport pitches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sport pitches 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 'Sport pitches 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 'Sport pitches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sport pitches 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 'Sport pitches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sport pitches 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 'Sport pitches allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sport pitches 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": "sport", @@ -219,19 +223,23 @@ }, { "key": "image", - "description": "The layer 'Fitness Centres allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Fitness Centres 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 'Fitness Centres 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 'Fitness Centres allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Fitness Centres 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 'Fitness Centres allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Fitness Centres 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 'Fitness Centres allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Fitness Centres 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": "phone", @@ -330,19 +338,23 @@ }, { "key": "image", - "description": "The layer 'Fitness Stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Fitness Stations 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 'Fitness Stations 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 'Fitness Stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Fitness Stations 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 'Fitness Stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Fitness Stations 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 'Fitness Stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Fitness Stations 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": "name", @@ -507,19 +519,23 @@ }, { "key": "image", - "description": "The layer 'Sports centres allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sports centres 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 'Sports centres 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 'Sports centres allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sports centres 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 'Sports centres allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sports centres 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 'Sports centres allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Sports centres 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": "opening_hours", @@ -589,19 +605,23 @@ }, { "key": "image", - "description": "The layer 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shop 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": "name", @@ -1593,12 +1613,12 @@ }, { "key": "service:bicycle:retail", - "description": "Layer 'Shop' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Sports') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", + "description": "Layer 'Shop' shows service:bicycle:retail=yes with a fixed text, namely 'This shop sells new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Sports') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself)", "value": "yes" }, { "key": "service:bicycle:retail", - "description": "Layer 'Shop' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Sports') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=diy | shop=doityourself)", + "description": "Layer 'Shop' shows service:bicycle:retail=no with a fixed text, namely 'This shop doesn't sell new bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Sports') (This is only shown if service:bicycle:retail~.+ | shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself)", "value": "no" }, { @@ -1618,32 +1638,32 @@ }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Sports') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=yes with a fixed text, namely 'This shop repairs bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Sports') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "yes" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Sports') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=no with a fixed text, namely 'This shop doesn't repair bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Sports') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "no" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Sports') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=only_sold with a fixed text, namely 'This shop only repairs bikes bought here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Sports') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "only_sold" }, { "key": "service:bicycle:repair", - "description": "Layer 'Shop' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Sports') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", + "description": "Layer 'Shop' shows service:bicycle:repair=brand with a fixed text, namely 'This shop only repairs bikes of a certain brand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Sports') (This is only shown if service:bicycle:repair~.+ | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only)", "value": "brand" }, { "key": "service:bicycle:rental", - "description": "Layer 'Shop' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Sports') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", + "description": "Layer 'Shop' shows service:bicycle:rental=yes with a fixed text, namely 'This shop rents out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Sports') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental)", "value": "yes" }, { "key": "service:bicycle:rental", - "description": "Layer 'Shop' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Sports') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental)", + "description": "Layer 'Shop' shows service:bicycle:rental=no with a fixed text, namely 'This shop doesn't rent out bikes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Sports') (This is only shown if service:bicycle:rental~.+ | shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental)", "value": "no" }, { @@ -1770,21 +1790,21 @@ }, { "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Shop' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'Sports') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)" + "description": "Layer 'Shop' shows and asks freeform values for key 'service:bicycle:cleaning:charge' (in the mapcomplete.org theme 'Sports') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)" }, { "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Shop' 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 'Sports') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", + "description": "Layer 'Shop' 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 'Sports') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", "value": "no" }, { "key": "service:bicycle:cleaning:fee", - "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Sports') (This is only shown if amenity!=bike_wash & amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", + "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Sports') (This is only shown if amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+)", "value": "yes" }, { "key": "service:bicycle:cleaning:charge", - "description": "Layer 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Sports') 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 'Shop' shows service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge= with a fixed text, namely 'Free to use' (in the mapcomplete.org theme 'Sports') 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": "" }, { diff --git a/Docs/TagInfo/mapcomplete_street_lighting.json b/Docs/TagInfo/mapcomplete_street_lighting.json index d8512cbce..9e67a8090 100644 --- a/Docs/TagInfo/mapcomplete_street_lighting.json +++ b/Docs/TagInfo/mapcomplete_street_lighting.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Street Lamps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Street Lamps 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 'Street Lamps 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 'Street Lamps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Street Lamps 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 'Street Lamps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Street Lamps 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 'Street Lamps allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Street Lamps 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": "ref", @@ -215,19 +219,23 @@ }, { "key": "image", - "description": "The layer 'Lit streets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Lit streets 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 'Lit streets 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 'Lit streets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Lit streets 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 'Lit streets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Lit streets 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 'Lit streets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Lit streets 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": "lit", @@ -259,19 +267,23 @@ }, { "key": "image", - "description": "The layer 'All streets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'All streets 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 'All streets 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 'All streets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'All streets 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 'All streets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'All streets 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 'All streets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'All streets 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": "lit", diff --git a/Docs/TagInfo/mapcomplete_surveillance.json b/Docs/TagInfo/mapcomplete_surveillance.json index 686c585d6..a54716a47 100644 --- a/Docs/TagInfo/mapcomplete_surveillance.json +++ b/Docs/TagInfo/mapcomplete_surveillance.json @@ -36,19 +36,23 @@ }, { "key": "image", - "description": "The layer 'Surveillance camera's allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Surveillance camera's 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 'Surveillance camera's 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 'Surveillance camera's allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Surveillance camera's 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 'Surveillance camera's allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Surveillance camera's 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 'Surveillance camera's allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Surveillance camera's 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": "surveillance:type", @@ -200,19 +204,23 @@ }, { "key": "image", - "description": "The layer 'Speed Camera allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Speed Camera 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 'Speed Camera 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 'Speed Camera allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Speed Camera 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 'Speed Camera allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Speed Camera 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 'Speed Camera allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Speed Camera 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": "maxspeed", @@ -237,19 +245,23 @@ }, { "key": "image", - "description": "The layer 'Police stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Police stations 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 'Police stations 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 'Police stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Police stations 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 'Police stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Police stations 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 'Police stations allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Police stations 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": "name", diff --git a/Docs/TagInfo/mapcomplete_toilets.json b/Docs/TagInfo/mapcomplete_toilets.json index d9f06c773..7ca7e43c3 100644 --- a/Docs/TagInfo/mapcomplete_toilets.json +++ b/Docs/TagInfo/mapcomplete_toilets.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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 'Toilets 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 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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 'Toilets allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets 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": "level", @@ -308,19 +312,23 @@ }, { "key": "image", - "description": "The layer 'Toilets at other amenities allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets at other amenities 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 'Toilets at other amenities 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 'Toilets at other amenities allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets at other amenities 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 'Toilets at other amenities allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets at other amenities 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 'Toilets at other amenities allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Toilets at other amenities 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": "level", @@ -545,19 +553,23 @@ }, { "key": "image", - "description": "The layer 'Shower allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shower 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 'Shower 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 'Shower allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shower 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 'Shower allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shower 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 'Shower allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shower 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": "level", diff --git a/Docs/TagInfo/mapcomplete_transit.json b/Docs/TagInfo/mapcomplete_transit.json index f5124fe50..f189b9ec9 100644 --- a/Docs/TagInfo/mapcomplete_transit.json +++ b/Docs/TagInfo/mapcomplete_transit.json @@ -35,19 +35,23 @@ }, { "key": "image", - "description": "The layer 'Transit Stops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Transit Stops 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 'Transit Stops 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 'Transit Stops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Transit Stops 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 'Transit Stops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Transit Stops 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 'Transit Stops allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Transit Stops 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": "shelter", @@ -217,19 +221,23 @@ }, { "key": "image", - "description": "The layer 'Bike parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike parking 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 'Bike parking 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 'Bike parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike parking 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 'Bike parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike parking 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 'Bike parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Bike parking 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": "bicycle_parking", @@ -285,6 +293,11 @@ "description": "Layer 'Bike parking' shows bicycle_parking=lockers with a fixed text, namely 'A locker - the bicycles are enclosed completely individually or with a few bicycles together. The locker is too small to fit a person standing..' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bus routes')", "value": "lockers" }, + { + "key": "bicycle_parking", + "description": "Layer 'Bike parking' shows bicycle_parking=lean_and_stick with a fixed text, namely 'A lean-to bracket with possibility to use a lock through eyelet. The seat tube can be held by the stand by an anchor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bus routes')", + "value": "lean_and_stick" + }, { "key": "location", "description": "Layer 'Bike parking' shows location=underground with a fixed text, namely 'Underground parking' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bus routes')", @@ -340,7 +353,7 @@ }, { "key": "access", - "description": "Layer 'Bike parking' shows access=private with a fixed text, namely 'Access is limited to members of a school, company or organisation' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bus routes')", + "description": "Layer 'Bike parking' shows access=private with a fixed text, namely 'Private bicycle parking which is never available to the public, also not via a membership fee' and allows to pick this as a default answer (in the mapcomplete.org theme 'Bus routes')", "value": "private" }, { @@ -442,19 +455,23 @@ }, { "key": "image", - "description": "The layer 'Parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parking 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 'Parking 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 'Parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parking 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 'Parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parking 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 'Parking allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Parking 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": "level", @@ -574,19 +591,23 @@ }, { "key": "image", - "description": "The layer 'Shelter allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shelter 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 'Shelter 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 'Shelter allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shelter 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 'Shelter allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shelter 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 'Shelter allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Shelter 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" } ] } \ No newline at end of file diff --git a/Docs/TagInfo/mapcomplete_trees.json b/Docs/TagInfo/mapcomplete_trees.json index 4e6200a05..97e9873be 100644 --- a/Docs/TagInfo/mapcomplete_trees.json +++ b/Docs/TagInfo/mapcomplete_trees.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Tree allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Tree 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 'Tree 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 'Tree allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Tree 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 'Tree allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Tree 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 'Tree allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Tree 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": "species:wikidata", diff --git a/Docs/TagInfo/mapcomplete_vending_machine.json b/Docs/TagInfo/mapcomplete_vending_machine.json index 5effff030..7d0ef638b 100644 --- a/Docs/TagInfo/mapcomplete_vending_machine.json +++ b/Docs/TagInfo/mapcomplete_vending_machine.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Vending Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Vending Machines 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 'Vending Machines 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 'Vending Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Vending Machines 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 'Vending Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Vending Machines 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 'Vending Machines allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Vending Machines 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": "level", diff --git a/Docs/TagInfo/mapcomplete_waste.json b/Docs/TagInfo/mapcomplete_waste.json index dbdf6d532..5fbdd68c1 100644 --- a/Docs/TagInfo/mapcomplete_waste.json +++ b/Docs/TagInfo/mapcomplete_waste.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Waste Basket allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Waste Basket 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 'Waste Basket 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 'Waste Basket allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Waste Basket 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 'Waste Basket allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Waste Basket 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 'Waste Basket allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Waste Basket 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": "waste", @@ -116,19 +120,23 @@ }, { "key": "image", - "description": "The layer 'Recycling allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Recycling 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 'Recycling 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 'Recycling allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Recycling 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 'Recycling allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Recycling 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 'Recycling allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Recycling 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": "recycling_type", @@ -394,19 +402,23 @@ }, { "key": "image", - "description": "The layer 'Waste Disposal Bins allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Waste Disposal Bins 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 'Waste Disposal Bins 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 'Waste Disposal Bins allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Waste Disposal Bins 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 'Waste Disposal Bins allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Waste Disposal Bins 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 'Waste Disposal Bins allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Waste Disposal Bins 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": "amenity", diff --git a/Docs/TagInfo/mapcomplete_waste_basket.json b/Docs/TagInfo/mapcomplete_waste_basket.json index e6daedf24..cce0efbc0 100644 --- a/Docs/TagInfo/mapcomplete_waste_basket.json +++ b/Docs/TagInfo/mapcomplete_waste_basket.json @@ -21,19 +21,23 @@ }, { "key": "image", - "description": "The layer 'Waste Basket allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Waste Basket 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 'Waste Basket 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 'Waste Basket allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Waste Basket 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 'Waste Basket allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Waste Basket 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 'Waste Basket allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" + "description": "The layer 'Waste Basket 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": "waste", diff --git a/Docs/Tags_format.md b/Docs/Tags_format.md index 7f8bbe2bb..5bfec9379 100644 --- a/Docs/Tags_format.md +++ b/Docs/Tags_format.md @@ -26,10 +26,12 @@ you are building your theme. 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) 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) -10. [!:= Substitute {some_key} should not match key](#!=-substitute-{some_key}-should-not-match-key) -11. [<= >= < > Logical comparators](#<=->=-<->-logical-comparators) -12. [Logical operators](#logical-operators) +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. [!~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. [:= Substitute ... {some_key} ... and match key](#=-substitute-...-{some_key}-...-and-match-key) +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 ------- @@ -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 +## `~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` **This is an advanced feature - use with caution** diff --git a/Docs/Themes/advertising.md b/Docs/Themes/advertising.md index 634d41be6..688e3cae2 100644 --- a/Docs/Themes/advertising.md +++ b/Docs/Themes/advertising.md @@ -27,6 +27,9 @@ Available languages: - it - da - zh_Hans + - ru + - uk + - hu # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/aed.md b/Docs/Themes/aed.md index 8d3bd0713..49620c95e 100644 --- a/Docs/Themes/aed.md +++ b/Docs/Themes/aed.md @@ -36,6 +36,7 @@ Available languages: - cs - zgh - eu + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/artwork.md b/Docs/Themes/artwork.md index abd71c490..df29376cf 100644 --- a/Docs/Themes/artwork.md +++ b/Docs/Themes/artwork.md @@ -37,6 +37,7 @@ Available languages: - zgh - es - eu + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/atm.md b/Docs/Themes/atm.md index 5ed5abba3..e093ae95c 100644 --- a/Docs/Themes/atm.md +++ b/Docs/Themes/atm.md @@ -33,6 +33,8 @@ Available languages: - pl - da - zh_Hans + - uk + - hu # Table of contents @@ -52,7 +54,9 @@ Available languages: - [Basic tags for this layer](#basic-tags-for-this-layer) - [Supported attributes](#supported-attributes) + [images](#images) - + [minimap](#minimap) + + [phone](#phone) + + [email](#email) + + [website](#website) + [opening_hours](#opening_hours) + [Opening hours](#opening-hours) + [post_partner](#post_partner) @@ -169,6 +173,9 @@ Elements must match **all** of the following expressions: | attribute | type | values which are supported by this layer | -----|-----|----- | +| [phone](https://wiki.openstreetmap.org/wiki/Key:phone) | [phone](../SpecialInputElements.md#phone) | | +| [email](https://wiki.openstreetmap.org/wiki/Key:email) | [email](../SpecialInputElements.md#email) | | +| [website](https://wiki.openstreetmap.org/wiki/Key:website) | [url](../SpecialInputElements.md#url) | | | [opening_hours](https://wiki.openstreetmap.org/wiki/Key:opening_hours) | [opening_hours](../SpecialInputElements.md#opening_hours) | | | [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) | | [brand](https://wiki.openstreetmap.org/wiki/Key:brand) | [nsi](../SpecialInputElements.md#nsi) | | @@ -185,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_ *{image_carousel()}{image_upload()}* -### minimap +### phone -_This tagrendering has no question and is thus read-only_ -*{minimap(18): height: 5rem; overflow: hidden; border-radius:3rem; }* +The question is `What is the phone number of {title()}?` +*{link(&LBRACEphone&RBRACE,tel:&LBRACEphone&RBRACE,,,,)}* is shown if `phone` is set + + - *{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()}?` +*{email}* is shown if `email` is set + + - *{contact:email}* is shown if with contact:email~.+. _This option cannot be chosen as answer_ + - *{operator:email}* 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()}?` +*{website}* is shown if `website` is set + + - *{contact:website}* is shown if with contact:website~.+. _This option cannot be chosen as answer_ + +This tagrendering has labels +`contact` ### opening_hours diff --git a/Docs/Themes/bag.md b/Docs/Themes/bag.md index 2538a600a..e156f3abb 100644 --- a/Docs/Themes/bag.md +++ b/Docs/Themes/bag.md @@ -26,6 +26,7 @@ Available languages: - zh_Hant - pl - zh_Hans + - uk # Table of contents diff --git a/Docs/Themes/benches.md b/Docs/Themes/benches.md index bf97773ca..a4b6022ac 100644 --- a/Docs/Themes/benches.md +++ b/Docs/Themes/benches.md @@ -36,6 +36,7 @@ Available languages: - pl - pt - fil + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/bicycle_parkings.md b/Docs/Themes/bicycle_parkings.md index c36b3016b..13850f291 100644 --- a/Docs/Themes/bicycle_parkings.md +++ b/Docs/Themes/bicycle_parkings.md @@ -23,6 +23,9 @@ Available languages: - it - fil - cs + - ru + - uk + - hu # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/bicycle_rental.md b/Docs/Themes/bicycle_rental.md index 7b073e940..ab0338503 100644 --- a/Docs/Themes/bicycle_rental.md +++ b/Docs/Themes/bicycle_rental.md @@ -28,6 +28,9 @@ Available languages: - pl - zh_Hans - it + - ru + - uk + - hu # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/bicyclelib.md b/Docs/Themes/bicyclelib.md index f582e8f06..db119e58d 100644 --- a/Docs/Themes/bicyclelib.md +++ b/Docs/Themes/bicyclelib.md @@ -33,6 +33,7 @@ Available languages: - eu - pt - zh_Hans + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/binoculars.md b/Docs/Themes/binoculars.md index 7d12f2f61..f4670383a 100644 --- a/Docs/Themes/binoculars.md +++ b/Docs/Themes/binoculars.md @@ -28,6 +28,8 @@ Available languages: - eu - pl - zh_Hans + - ru + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/blind_osm.md b/Docs/Themes/blind_osm.md index bb49d1645..5945e4270 100644 --- a/Docs/Themes/blind_osm.md +++ b/Docs/Themes/blind_osm.md @@ -14,6 +14,8 @@ This theme contains the following layers: - [transit_stops](../Layers/transit_stops.md) - [elevator](../Layers/elevator.md) - [stairs](../Layers/stairs.md) + - [tactile_map](../Layers/tactile_map.md) + - [tactile_model](../Layers/tactile_model.md) Available languages: @@ -32,6 +34,8 @@ Available languages: - da - zh_Hans - fil + - uk + - hu # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/bookcases.md b/Docs/Themes/bookcases.md index 0443afe68..7facd1f04 100644 --- a/Docs/Themes/bookcases.md +++ b/Docs/Themes/bookcases.md @@ -31,6 +31,7 @@ Available languages: - pl - da - zh_Hans + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/cafes_and_pubs.md b/Docs/Themes/cafes_and_pubs.md index 03280dd83..1fd714715 100644 --- a/Docs/Themes/cafes_and_pubs.md +++ b/Docs/Themes/cafes_and_pubs.md @@ -32,6 +32,7 @@ Available languages: - eu - pl - zh_Hans + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/campersite.md b/Docs/Themes/campersite.md index fd64a03aa..af552333a 100644 --- a/Docs/Themes/campersite.md +++ b/Docs/Themes/campersite.md @@ -30,6 +30,7 @@ Available languages: - cs - eu - pl + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/charging_stations.md b/Docs/Themes/charging_stations.md index c902e289b..6f4d9187e 100644 --- a/Docs/Themes/charging_stations.md +++ b/Docs/Themes/charging_stations.md @@ -29,6 +29,7 @@ Available languages: - pa_PK - cs - pl + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/circular_economy.md b/Docs/Themes/circular_economy.md index bfae4d66a..2c32d8768 100644 --- a/Docs/Themes/circular_economy.md +++ b/Docs/Themes/circular_economy.md @@ -23,6 +23,9 @@ Available languages: - de - ca - cs + - uk + - hu + - pl # Table of contents @@ -452,7 +455,7 @@ The question is `Does this shop sell bikes?` - *This shop sells new bikes* is shown if with service:bicycle:retail=yes - *This shop doesn't sell new bikes* is shown if with service:bicycle:retail=no -This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=diy | shop=doityourself | service:bicycle:retail~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself | service:bicycle:retail~.+ ### bike_second_hand @@ -473,7 +476,7 @@ The question is `Does this shop repair bikes?` - *This shop only repairs bikes bought here* is shown if with service:bicycle:repair=only_sold - *This shop only repairs bikes of a certain brand* is shown if with service:bicycle:repair=brand -This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ +This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ ### bicycle_rental @@ -482,7 +485,7 @@ The question is `Does this shop rent out bikes?` - *This shop rents out bikes* is shown if with service:bicycle:rental=yes - *This shop doesn't rent out bikes* is shown if with service:bicycle:rental=no -This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ ### bicycle-types @@ -604,7 +607,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 service:bicycle:cleaning:fee=no - *Free to use* is shown if with service:bicycle:cleaning:fee=yes & 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~.+ ### internet @@ -725,7 +728,7 @@ This tagrendering has labels | id | question | osmTags | -----|-----|----- | | 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.3 | Liquor Store | shop=alcohol | | shop_types.4 | Anime / Manga Shop | shop=anime | diff --git a/Docs/Themes/climbing.md b/Docs/Themes/climbing.md index 5c16a0729..0d47a9797 100644 --- a/Docs/Themes/climbing.md +++ b/Docs/Themes/climbing.md @@ -36,6 +36,7 @@ Available languages: - cs - es - pl + - uk # Table of contents @@ -474,7 +475,7 @@ The question is `Does this shop sell bikes?` - *This shop sells new bikes* is shown if with service:bicycle:retail=yes - *This shop doesn't sell new bikes* is shown if with service:bicycle:retail=no -This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=diy | shop=doityourself | service:bicycle:retail~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself | service:bicycle:retail~.+ ### bike_second_hand @@ -495,7 +496,7 @@ The question is `Does this shop repair bikes?` - *This shop only repairs bikes bought here* is shown if with service:bicycle:repair=only_sold - *This shop only repairs bikes of a certain brand* is shown if with service:bicycle:repair=brand -This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ +This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ ### bicycle_rental @@ -504,7 +505,7 @@ The question is `Does this shop rent out bikes?` - *This shop rents out bikes* is shown if with service:bicycle:rental=yes - *This shop doesn't rent out bikes* is shown if with service:bicycle:rental=no -This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ ### bicycle-types @@ -626,7 +627,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 service:bicycle:cleaning:fee=no - *Free to use* is shown if with service:bicycle:cleaning:fee=yes & 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~.+ ### internet @@ -755,7 +756,7 @@ This tagrendering has labels | id | question | osmTags | -----|-----|----- | | 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.3 | Liquor Store | shop=alcohol | | shop_types.4 | Anime / Manga Shop | shop=anime | diff --git a/Docs/Themes/clock.md b/Docs/Themes/clock.md index 159981cf2..aebaa6ea8 100644 --- a/Docs/Themes/clock.md +++ b/Docs/Themes/clock.md @@ -24,6 +24,9 @@ Available languages: - pl - da - it + - ru + - uk + - hu # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/cycle_highways.md b/Docs/Themes/cycle_highways.md index 231c0245f..25a98ad9c 100644 --- a/Docs/Themes/cycle_highways.md +++ b/Docs/Themes/cycle_highways.md @@ -27,6 +27,7 @@ Available languages: - cs - pl - zh_Hant + - uk # Table of contents diff --git a/Docs/Themes/cycle_infra.md b/Docs/Themes/cycle_infra.md index 2bd416a1f..1a76fec5f 100644 --- a/Docs/Themes/cycle_infra.md +++ b/Docs/Themes/cycle_infra.md @@ -12,6 +12,7 @@ This theme contains the following layers: - [barrier](../Layers/barrier.md) - [crossings](../Layers/crossings.md) - [bicycle_counter](../Layers/bicycle_counter.md) + - [cyclist_waiting_aid](../Layers/cyclist_waiting_aid.md) Available languages: @@ -30,6 +31,7 @@ Available languages: - pa_PK - cs - pl + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/cyclestreets.md b/Docs/Themes/cyclestreets.md index d61527018..e476c24e9 100644 --- a/Docs/Themes/cyclestreets.md +++ b/Docs/Themes/cyclestreets.md @@ -30,6 +30,8 @@ Available languages: - cs - eu - pl + - ru + - uk # Table of contents diff --git a/Docs/Themes/cyclofix.md b/Docs/Themes/cyclofix.md index eefe46b22..d644ccf3e 100644 --- a/Docs/Themes/cyclofix.md +++ b/Docs/Themes/cyclofix.md @@ -44,6 +44,7 @@ Available languages: - da - cs - pl + - uk # Table of contents diff --git a/Docs/Themes/disaster_response.md b/Docs/Themes/disaster_response.md index 0e00cc051..0f2d2691e 100644 --- a/Docs/Themes/disaster_response.md +++ b/Docs/Themes/disaster_response.md @@ -30,6 +30,9 @@ Available languages: - ca - da - cs + - ru + - hu + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/drinking_water.md b/Docs/Themes/drinking_water.md index 61842c24f..4605a96fb 100644 --- a/Docs/Themes/drinking_water.md +++ b/Docs/Themes/drinking_water.md @@ -28,6 +28,7 @@ Available languages: - pa_PK - cs - pl + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/education.md b/Docs/Themes/education.md index b1c02ad9b..acac3d022 100644 --- a/Docs/Themes/education.md +++ b/Docs/Themes/education.md @@ -28,6 +28,9 @@ Available languages: - pl - zh_Hant - it + - ru + - hu + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/elongated_coin.md b/Docs/Themes/elongated_coin.md index f7d06de75..60b9f8d71 100644 --- a/Docs/Themes/elongated_coin.md +++ b/Docs/Themes/elongated_coin.md @@ -20,6 +20,8 @@ Available languages: - ca - cs - pl + - hu + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/etymology.md b/Docs/Themes/etymology.md index e8baa0152..13d953051 100644 --- a/Docs/Themes/etymology.md +++ b/Docs/Themes/etymology.md @@ -33,6 +33,7 @@ Available languages: - cs - es - pl + - uk # Table of contents diff --git a/Docs/Themes/facadegardens.md b/Docs/Themes/facadegardens.md index 23f9ce74b..6c19d6a27 100644 --- a/Docs/Themes/facadegardens.md +++ b/Docs/Themes/facadegardens.md @@ -26,6 +26,8 @@ Available languages: - da - cs - pl + - ru + - uk # Table of contents diff --git a/Docs/Themes/fireplace.md b/Docs/Themes/fireplace.md index c73e6be8d..7b0465e54 100644 --- a/Docs/Themes/fireplace.md +++ b/Docs/Themes/fireplace.md @@ -18,6 +18,8 @@ Available languages: - es - ca - cs + - hu + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/food.md b/Docs/Themes/food.md index eea1f3834..08d6e3e2c 100644 --- a/Docs/Themes/food.md +++ b/Docs/Themes/food.md @@ -29,6 +29,7 @@ Available languages: - cs - ru - pl + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/fritures.md b/Docs/Themes/fritures.md index 0a04258ce..d920df26f 100644 --- a/Docs/Themes/fritures.md +++ b/Docs/Themes/fritures.md @@ -23,6 +23,7 @@ Available languages: - cs - es - pl + - uk # Table of contents @@ -54,15 +55,15 @@ Available languages: + [Vegetarian (no friture)](#vegetarian-(no-friture)) + [Vegan (no friture)](#vegan-(no-friture)) + [halal (no friture)](#halal-(no-friture)) - + [sugar_free](#sugar_free) - + [gluten_free](#gluten_free) - + [lactose_free](#lactose_free) + [organic (no friture)](#organic-(no-friture)) + [friture-vegetarian](#friture-vegetarian) + [friture-vegan](#friture-vegan) + [friture-organic](#friture-organic) + [friture-oil](#friture-oil) + [friture-take-your-container](#friture-take-your-container) + + [sugar_free](#sugar_free) + + [gluten_free](#gluten_free) + + [lactose_free](#lactose_free) + [smoking](#smoking) + [service:electricity](#serviceelectricity) + [dog-access](#dog-access) @@ -118,15 +119,15 @@ Elements must match **all** of the following expressions: | [diet:vegetarian](https://wiki.openstreetmap.org/wiki/Key:diet:vegetarian) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Donly) [on_demand](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Don_demand) | | [diet:vegan](https://wiki.openstreetmap.org/wiki/Key:diet:vegan) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Donly) [on_demand](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Don_demand) | | [diet:halal](https://wiki.openstreetmap.org/wiki/Key:diet:halal) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Donly) | -| [diet:sugar_free](https://wiki.openstreetmap.org/wiki/Key:diet:sugar_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dno) | -| [diet:gluten_free](https://wiki.openstreetmap.org/wiki/Key:diet:gluten_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dno) | -| [diet:lactose_free](https://wiki.openstreetmap.org/wiki/Key:diet:lactose_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dno) | | [organic](https://wiki.openstreetmap.org/wiki/Key:organic) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dno) [yes](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:organic%3Donly) | | [diet:vegetarian](https://wiki.openstreetmap.org/wiki/Key:diet:vegetarian) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dno) | | [diet:vegan](https://wiki.openstreetmap.org/wiki/Key:diet:vegan) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dno) | | [organic](https://wiki.openstreetmap.org/wiki/Key:organic) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dno) [only](https://wiki.openstreetmap.org/wiki/Tag:organic%3Donly) | | [friture:oil](https://wiki.openstreetmap.org/wiki/Key:friture:oil) | Multiple choice | [vegetable](https://wiki.openstreetmap.org/wiki/Tag:friture:oil%3Dvegetable) [animal](https://wiki.openstreetmap.org/wiki/Tag:friture:oil%3Danimal) | | [reusable_packaging:accept](https://wiki.openstreetmap.org/wiki/Key:reusable_packaging:accept) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Dno) [only](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Donly) | +| [diet:sugar_free](https://wiki.openstreetmap.org/wiki/Key:diet:sugar_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dno) | +| [diet:gluten_free](https://wiki.openstreetmap.org/wiki/Key:diet:gluten_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dno) | +| [diet:lactose_free](https://wiki.openstreetmap.org/wiki/Key:diet:lactose_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dno) | | [smoking](https://wiki.openstreetmap.org/wiki/Key:smoking) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Dno) [outside](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Doutside) | | [service:electricity](https://wiki.openstreetmap.org/wiki/Key:service:electricity) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dlimited) [ask](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dask) [no](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dno) | | [dog](https://wiki.openstreetmap.org/wiki/Key:dog) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dno) [leashed](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dleashed) [unleashed](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dunleashed) [outside](https://wiki.openstreetmap.org/wiki/Tag:dog%3Doutside) | @@ -267,7 +268,7 @@ _This tagrendering has no question and is thus read-only_ ### add-menu-image _This tagrendering has no question and is thus read-only_ -*{image_upload(image:menu,Add an image from the menu)}* +*{image_upload(image:menu,Add an image from the menu,)}* ### menu-website @@ -295,7 +296,7 @@ The question is `Does this place offer take-away?` The question is `Does {title()} deliver food to your home?` - - *This business does home delivery (eventually via a third party)* is shown if with delivery=yes + - *This business does home delivery (possibly via a third party)* is shown if with delivery=yes - *This business does not deliver at home* is shown if with delivery=no ### Vegetarian (no friture) @@ -327,6 +328,65 @@ The question is `Does this restaurant offer a halal menu?` - *There is a halal menu* is shown if with diet:halal=yes - *Only halal options are available* is shown if with diet:halal=only +### organic (no friture) + +The question is `Does this restaurant offer organic food?` + + - *There are no organic options available* is shown if with organic=no + - *There is an organic menu* is shown if with organic=yes + - *Only organic options are available* is shown if with organic=only + +### friture-vegetarian + +The question is `Does this fries shop have vegetarian snacks?` + + - *Serves only vegetarian snacks and burgers* is shown if with diet:vegetarian=only + - *Vegetarian snacks are available* is shown if with diet:vegetarian=yes + - *Only a small selection of snacks are vegetarian* is shown if with diet:vegetarian=limited + - *No vegetarian snacks are available* is shown if with diet:vegetarian=no + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + +### friture-vegan + +The question is `Does this fries shop have vegan snacks?` + + - *Serves only vegan snacks and burgers* is shown if with diet:vegan=only + - *Vegan snacks are available* is shown if with diet:vegan=yes + - *A small selection of vegan snacks are available* is shown if with diet:vegan=limited + - *No vegan snacks are available* is shown if with diet:vegan=no + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + +### friture-organic + +The question is `Does this fries shop offer organic snacks?` + + - *Organic snacks are available* is shown if with organic=yes + - *No organic snacks are available* is shown if with organic=no + - *Only organic snacks are available* is shown if with organic=only + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + +### friture-oil + +The question is `Does this fries shop use vegetable or animal oil for cooking?` + + - *The frying is done with vegetable oil* is shown if with friture:oil=vegetable + - *The frying is done with animal oil* is shown if with friture:oil=animal + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + +### friture-take-your-container + +The question is `If you bring your own container (such as a cooking pot and small pots), is it used to package your order?` + + - *You can bring your own containers to get your order, saving on single-use packaging material and thus waste* is shown if with reusable_packaging:accept=yes + - *Bringing your own container is not allowed* is shown if with reusable_packaging:accept=no + - *You must bring your own container to order here.* is shown if with reusable_packaging:accept=only + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + ### sugar_free The question is `Does this shop have a sugar free offering?` @@ -363,65 +423,6 @@ The question is `Does {title()} have a lactose-free offering?` This tagrendering has labels `diets` -### organic (no friture) - -The question is `Does this restaurant offer organic food?` - - - *There are no organic options available* is shown if with organic=no - - *There is an organic menu* is shown if with organic=yes - - *Only organic options are available* is shown if with organic=only - -### friture-vegetarian - -The question is `Does this fries shop have vegetarian snacks?` - - - *Serves only vegetarian snacks and burgers* is shown if with diet:vegetarian=only - - *Vegetarian snacks are available* is shown if with diet:vegetarian=yes - - *Only a small selection of snacks are vegetarian* is shown if with diet:vegetarian=limited - - *No vegetarian snacks are available* is shown if with diet:vegetarian=no - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - -### friture-vegan - -The question is `Does this fries shop have vegan snacks?` - - - *Servers only vegan snacks and burgers* is shown if with diet:vegan=only - - *Vegan snacks are available* is shown if with diet:vegan=yes - - *A small selection of vegan snacks are available* is shown if with diet:vegan=limited - - *No vegan snacks are available* is shown if with diet:vegan=no - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - -### friture-organic - -The question is `Does this fries shop offer organic snacks?` - - - *Organic snacks are available* is shown if with organic=yes - - *No organic snacks are available* is shown if with organic=no - - *Only organic snacks are available* is shown if with organic=only - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - -### friture-oil - -The question is `Does this fries shop use vegetable or animal oil for cooking?` - - - *The frying is done with vegetable oil* is shown if with friture:oil=vegetable - - *The frying is done with animal oil* is shown if with friture:oil=animal - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - -### friture-take-your-container - -The question is `If you bring your own container (such as a cooking pot and small pots), is it used to package your order?` - - - *You can bring your own containers to get your order, saving on single-use packaging material and thus waste* is shown if with reusable_packaging:accept=yes - - *Bringing your own container is not allowed* is shown if with reusable_packaging:accept=no - - *You must bring your own container to order here.* is shown if with reusable_packaging:accept=only - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - ### smoking The question is `Is smoking allowed at {title()}?` diff --git a/Docs/Themes/ghostbikes.md b/Docs/Themes/ghostbikes.md index 4b8a9f0e3..57c640520 100644 --- a/Docs/Themes/ghostbikes.md +++ b/Docs/Themes/ghostbikes.md @@ -33,6 +33,7 @@ Available languages: - ca - cs - pt + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/ghostsigns.md b/Docs/Themes/ghostsigns.md index c82fa9b31..0a7f5764c 100644 --- a/Docs/Themes/ghostsigns.md +++ b/Docs/Themes/ghostsigns.md @@ -19,6 +19,7 @@ Available languages: - de - es - cs + - uk # Table of contents @@ -44,7 +45,7 @@ Available languages: - [Basic tags for this layer](#basic-tags-for-this-layer) - [Supported attributes](#supported-attributes) + [historic_or_not](#historic_or_not) - + [images](#images) + + [images_no_blur](#images_no_blur) + [artwork-artwork_type](#artwork-artwork_type) + [artwork-artist-wikidata](#artwork-artist-wikidata) + [artwork-artist_name](#artwork-artist_name) @@ -264,10 +265,10 @@ The question is `Is this artwork a historic advertisement?` - *This artwork is a historic advertisement* is shown if with historic=advertising - *This artwork is not a historic advertisement* is shown if with historic= -### 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 +### images_no_blur +Same as `images`, but uploaded request to disable blurring to the panoramax server _This tagrendering has no question and is thus read-only_ -*{image_carousel()}{image_upload()}* +*{image_carousel()}{image_upload(,,,true)}* ### artwork-artwork_type @@ -337,7 +338,7 @@ This tagrendering has labels The question is `Does this artwork serve as a memorial?` - *This artwork also serves as a memorial* is shown if with historic=memorial - - *This artwork does not serve as a bench* is shown if with historic= + - *This artwork does not serve as a memorial* is shown if with historic= ### memorial-type @@ -542,6 +543,25 @@ This tagrendering has labels | artwork-artwork_type.12 | Tilework | artwork_type=tilework | | 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) diff --git a/Docs/Themes/glutenfree.md b/Docs/Themes/glutenfree.md index 6fcdf4a34..7dd1cec73 100644 --- a/Docs/Themes/glutenfree.md +++ b/Docs/Themes/glutenfree.md @@ -23,6 +23,9 @@ Available languages: - es - ca - cs + - ru + - hu + - uk # Table of contents @@ -55,14 +58,14 @@ Available languages: + [Vegetarian (no friture)](#vegetarian-(no-friture)) + [Vegan (no friture)](#vegan-(no-friture)) + [halal (no friture)](#halal-(no-friture)) - + [sugar_free](#sugar_free) - + [lactose_free](#lactose_free) + [organic (no friture)](#organic-(no-friture)) + [friture-vegetarian](#friture-vegetarian) + [friture-vegan](#friture-vegan) + [friture-organic](#friture-organic) + [friture-oil](#friture-oil) + [friture-take-your-container](#friture-take-your-container) + + [sugar_free](#sugar_free) + + [lactose_free](#lactose_free) + [smoking](#smoking) + [service:electricity](#serviceelectricity) + [dog-access](#dog-access) @@ -190,14 +193,14 @@ Elements must match **all** of the following expressions: | [diet:vegetarian](https://wiki.openstreetmap.org/wiki/Key:diet:vegetarian) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Donly) [on_demand](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Don_demand) | | [diet:vegan](https://wiki.openstreetmap.org/wiki/Key:diet:vegan) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Donly) [on_demand](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Don_demand) | | [diet:halal](https://wiki.openstreetmap.org/wiki/Key:diet:halal) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Donly) | -| [diet:sugar_free](https://wiki.openstreetmap.org/wiki/Key:diet:sugar_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dno) | -| [diet:lactose_free](https://wiki.openstreetmap.org/wiki/Key:diet:lactose_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dno) | | [organic](https://wiki.openstreetmap.org/wiki/Key:organic) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dno) [yes](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:organic%3Donly) | | [diet:vegetarian](https://wiki.openstreetmap.org/wiki/Key:diet:vegetarian) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dno) | | [diet:vegan](https://wiki.openstreetmap.org/wiki/Key:diet:vegan) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dno) | | [organic](https://wiki.openstreetmap.org/wiki/Key:organic) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dno) [only](https://wiki.openstreetmap.org/wiki/Tag:organic%3Donly) | | [friture:oil](https://wiki.openstreetmap.org/wiki/Key:friture:oil) | Multiple choice | [vegetable](https://wiki.openstreetmap.org/wiki/Tag:friture:oil%3Dvegetable) [animal](https://wiki.openstreetmap.org/wiki/Tag:friture:oil%3Danimal) | | [reusable_packaging:accept](https://wiki.openstreetmap.org/wiki/Key:reusable_packaging:accept) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Dno) [only](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Donly) | +| [diet:sugar_free](https://wiki.openstreetmap.org/wiki/Key:diet:sugar_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dno) | +| [diet:lactose_free](https://wiki.openstreetmap.org/wiki/Key:diet:lactose_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dno) | | [smoking](https://wiki.openstreetmap.org/wiki/Key:smoking) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Dno) [outside](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Doutside) | | [service:electricity](https://wiki.openstreetmap.org/wiki/Key:service:electricity) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dlimited) [ask](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dask) [no](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dno) | | [dog](https://wiki.openstreetmap.org/wiki/Key:dog) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dno) [leashed](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dleashed) [unleashed](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dunleashed) [outside](https://wiki.openstreetmap.org/wiki/Tag:dog%3Doutside) | @@ -350,7 +353,7 @@ _This tagrendering has no question and is thus read-only_ ### add-menu-image _This tagrendering has no question and is thus read-only_ -*{image_upload(image:menu,Add an image from the menu)}* +*{image_upload(image:menu,Add an image from the menu,)}* ### menu-website @@ -378,7 +381,7 @@ The question is `Does this place offer take-away?` The question is `Does {title()} deliver food to your home?` - - *This business does home delivery (eventually via a third party)* is shown if with delivery=yes + - *This business does home delivery (possibly via a third party)* is shown if with delivery=yes - *This business does not deliver at home* is shown if with delivery=no ### Vegetarian (no friture) @@ -410,30 +413,6 @@ The question is `Does this restaurant offer a halal menu?` - *There is a halal menu* is shown if with diet:halal=yes - *Only halal options are available* is shown if with diet:halal=only -### sugar_free - -The question is `Does this shop have a sugar free offering?` - - - *This shop only sells sugar free products* is shown if with diet:sugar_free=only - - *This shop has a big sugar free offering* is shown if with diet:sugar_free=yes - - *This shop has a limited sugar free offering* is shown if with diet:sugar_free=limited - - *This shop has no sugar free offering* is shown if with diet:sugar_free=no - -This tagrendering has labels -`diets` - -### lactose_free - -The question is `Does {title()} have a lactose-free offering?` - - - *Only sells lactose free products* is shown if with diet:lactose_free=only - - *Big lactose free offering* is shown if with diet:lactose_free=yes - - *Limited lactose free offering* is shown if with diet:lactose_free=limited - - *No lactose free offering* is shown if with diet:lactose_free=no - -This tagrendering has labels -`diets` - ### organic (no friture) The question is `Does this restaurant offer organic food?` @@ -457,7 +436,7 @@ This tagrendering is only visible in the popup if the following condition is met The question is `Does this fries shop have vegan snacks?` - - *Servers only vegan snacks and burgers* is shown if with diet:vegan=only + - *Serves only vegan snacks and burgers* is shown if with diet:vegan=only - *Vegan snacks are available* is shown if with diet:vegan=yes - *A small selection of vegan snacks are available* is shown if with diet:vegan=limited - *No vegan snacks are available* is shown if with diet:vegan=no @@ -493,6 +472,30 @@ The question is `If you bring your own container (such as a cooking pot and smal This tagrendering is only visible in the popup if the following condition is met: cuisine=friture +### sugar_free + +The question is `Does this shop have a sugar free offering?` + + - *This shop only sells sugar free products* is shown if with diet:sugar_free=only + - *This shop has a big sugar free offering* is shown if with diet:sugar_free=yes + - *This shop has a limited sugar free offering* is shown if with diet:sugar_free=limited + - *This shop has no sugar free offering* is shown if with diet:sugar_free=no + +This tagrendering has labels +`diets` + +### lactose_free + +The question is `Does {title()} have a lactose-free offering?` + + - *Only sells lactose free products* is shown if with diet:lactose_free=only + - *Big lactose free offering* is shown if with diet:lactose_free=yes + - *Limited lactose free offering* is shown if with diet:lactose_free=limited + - *No lactose free offering* is shown if with diet:lactose_free=no + +This tagrendering has labels +`diets` + ### smoking The question is `Is smoking allowed at {title()}?` @@ -1250,7 +1253,7 @@ The question is `Does this shop sell bikes?` - *This shop sells new bikes* is shown if with service:bicycle:retail=yes - *This shop doesn't sell new bikes* is shown if with service:bicycle:retail=no -This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=diy | shop=doityourself | service:bicycle:retail~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself | service:bicycle:retail~.+ ### bike_second_hand @@ -1271,7 +1274,7 @@ The question is `Does this shop repair bikes?` - *This shop only repairs bikes bought here* is shown if with service:bicycle:repair=only_sold - *This shop only repairs bikes of a certain brand* is shown if with service:bicycle:repair=brand -This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ +This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ ### bicycle_rental @@ -1280,7 +1283,7 @@ The question is `Does this shop rent out bikes?` - *This shop rents out bikes* is shown if with service:bicycle:rental=yes - *This shop doesn't rent out bikes* is shown if with service:bicycle:rental=no -This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ ### bicycle-types @@ -1402,7 +1405,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 service:bicycle:cleaning:fee=no - *Free to use* is shown if with service:bicycle:cleaning:fee=yes & 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~.+ ### internet @@ -1518,7 +1521,7 @@ This tagrendering has labels | id | question | osmTags | -----|-----|----- | | 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.3 | Liquor Store | shop=alcohol | | shop_types.4 | Anime / Manga Shop | shop=anime | diff --git a/Docs/Themes/guideposts.md b/Docs/Themes/guideposts.md index 42bfdba9f..5efc58305 100644 --- a/Docs/Themes/guideposts.md +++ b/Docs/Themes/guideposts.md @@ -18,6 +18,8 @@ Available languages: - es - pl - ca + - ru + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/hackerspaces.md b/Docs/Themes/hackerspaces.md index d6dd6d644..d6f23d496 100644 --- a/Docs/Themes/hackerspaces.md +++ b/Docs/Themes/hackerspaces.md @@ -27,6 +27,7 @@ Available languages: - es - eu - pl + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/hailhydrant.md b/Docs/Themes/hailhydrant.md index b9478571f..301d2b607 100644 --- a/Docs/Themes/hailhydrant.md +++ b/Docs/Themes/hailhydrant.md @@ -30,6 +30,7 @@ Available languages: - da - cs - pl + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/healthcare.md b/Docs/Themes/healthcare.md index 96951c38a..68e38a69e 100644 --- a/Docs/Themes/healthcare.md +++ b/Docs/Themes/healthcare.md @@ -33,6 +33,8 @@ Available languages: - pl - zh_Hant - it + - hu + - uk # Table of contents @@ -471,7 +473,7 @@ The question is `Does this shop sell bikes?` - *This shop sells new bikes* is shown if with service:bicycle:retail=yes - *This shop doesn't sell new bikes* is shown if with service:bicycle:retail=no -This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=diy | shop=doityourself | service:bicycle:retail~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself | service:bicycle:retail~.+ ### bike_second_hand @@ -492,7 +494,7 @@ The question is `Does this shop repair bikes?` - *This shop only repairs bikes bought here* is shown if with service:bicycle:repair=only_sold - *This shop only repairs bikes of a certain brand* is shown if with service:bicycle:repair=brand -This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ +This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ ### bicycle_rental @@ -501,7 +503,7 @@ The question is `Does this shop rent out bikes?` - *This shop rents out bikes* is shown if with service:bicycle:rental=yes - *This shop doesn't rent out bikes* is shown if with service:bicycle:rental=no -This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ ### bicycle-types @@ -623,7 +625,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 service:bicycle:cleaning:fee=no - *Free to use* is shown if with service:bicycle:cleaning:fee=yes & 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~.+ ### internet @@ -756,7 +758,7 @@ This tagrendering has labels | id | question | osmTags | -----|-----|----- | | 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.3 | Liquor Store | shop=alcohol | | shop_types.4 | Anime / Manga Shop | shop=anime | diff --git a/Docs/Themes/hotels.md b/Docs/Themes/hotels.md index 051dce3d5..0ec7ab9d8 100644 --- a/Docs/Themes/hotels.md +++ b/Docs/Themes/hotels.md @@ -27,6 +27,9 @@ Available languages: - pl - zh_Hant - it + - ru + - hu + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/icecream.md b/Docs/Themes/icecream.md index 1624aa75a..3de1dd638 100644 --- a/Docs/Themes/icecream.md +++ b/Docs/Themes/icecream.md @@ -19,6 +19,9 @@ Available languages: - es - da - it + - ru + - hu + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/indoors.md b/Docs/Themes/indoors.md index e9f97ae1c..d05939d21 100644 --- a/Docs/Themes/indoors.md +++ b/Docs/Themes/indoors.md @@ -30,6 +30,9 @@ Available languages: - pl - zh_Hant - it + - ru + - hu + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/items_with_image.md b/Docs/Themes/items_with_image.md index 2c3cfe5f7..a5e9ad9de 100644 --- a/Docs/Themes/items_with_image.md +++ b/Docs/Themes/items_with_image.md @@ -16,6 +16,7 @@ Available languages: - de - es - cs + - hu # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/kerbs_and_crossings.md b/Docs/Themes/kerbs_and_crossings.md index 2e87b5a4e..ecc67c103 100644 --- a/Docs/Themes/kerbs_and_crossings.md +++ b/Docs/Themes/kerbs_and_crossings.md @@ -25,6 +25,8 @@ Available languages: - es - ca - pl + - hu + - uk # Table of contents @@ -36,7 +38,7 @@ Available languages: - [Supported attributes](#supported-attributes) + [images](#images) + [crossing-type](#crossing-type) - + [crossing-is-zebra](#crossing-is-zebra) + + [markings](#markings) + [crossing-bicycle-allowed](#crossing-bicycle-allowed) + [crossing-has-island](#crossing-has-island) + [crossing-tactile](#crossing-tactile) @@ -82,8 +84,8 @@ Elements must match the expression ** [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) | -| [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) | +| [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) | +| [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) | | [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) | | [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) | | [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) | @@ -107,18 +109,30 @@ The question is `What kind of crossing is this?` - *Crossing, without traffic lights* is shown if with crossing=uncontrolled - *Crossing with traffic signals* is shown if with crossing=traffic_signals - *Zebra crossing* is shown if with crossing=zebra. _This option cannot be chosen as answer_ - - *Crossing without crossing markings* is shown if with crossing=unmarked + - *Crossing without crossing markings* is shown if with crossing=unmarked. _This option cannot be chosen as answer_ This tagrendering is only visible in the popup if the following condition is met: highway=crossing -### 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 crossing_ref=zebra - - *This is not a zebra crossing* is shown if with crossing_ref= - -This tagrendering is only visible in the popup if the following condition is met: crossing=uncontrolled + - *This crossing has no markings* is shown if with crossing:markings=no + - *This crossing has zebra markings* is shown if with crossing:markings=zebra + - *This crossing has markings of an unknown type* is shown if with crossing:markings=yes. _This option cannot be chosen as answer_ + - *This crossings has lines on either side of the crossing* is shown if with crossing:markings=lines + - *This crossing has lines on either side of the crossing, along with bars connecting them* is shown if with crossing:markings=ladder + - *This crossing has dashed lines on either sides of the crossing* is shown if with crossing:markings=dashes + - *This crossing has dotted lines on either sides of the crossing* is shown if with crossing:markings=dots + - *This crossing is marked by using a different coloured surface* is shown if with crossing:markings=surface + - *This crossing has lines on either side of the crossing, along with angled bars connecting them* is shown if with crossing:markings=ladder:skewed + - *This crossing has zebra markings with an interruption in every bar* is shown if with crossing:markings=zebra:paired + - *This crossing has zebra markings in alternating colours* is shown if with crossing:markings=zebra:bicolour + - *This crossing has double zebra markings* is shown if with crossing:markings=zebra:double + - *This crossing has pictograms on the road* is shown if with crossing:markings=pictograms + - *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 crossing:markings=ladder:paired + - *This crossing has double lines on either side of the crossing* is shown if with crossing:markings=lines:paired ### crossing-bicycle-allowed diff --git a/Docs/Themes/lactosefree.md b/Docs/Themes/lactosefree.md index 2094d1437..7528bfb10 100644 --- a/Docs/Themes/lactosefree.md +++ b/Docs/Themes/lactosefree.md @@ -22,6 +22,8 @@ Available languages: - es - ca - cs + - hu + - uk # Table of contents @@ -54,14 +56,14 @@ Available languages: + [Vegetarian (no friture)](#vegetarian-(no-friture)) + [Vegan (no friture)](#vegan-(no-friture)) + [halal (no friture)](#halal-(no-friture)) - + [sugar_free](#sugar_free) - + [gluten_free](#gluten_free) + [organic (no friture)](#organic-(no-friture)) + [friture-vegetarian](#friture-vegetarian) + [friture-vegan](#friture-vegan) + [friture-organic](#friture-organic) + [friture-oil](#friture-oil) + [friture-take-your-container](#friture-take-your-container) + + [sugar_free](#sugar_free) + + [gluten_free](#gluten_free) + [smoking](#smoking) + [service:electricity](#serviceelectricity) + [dog-access](#dog-access) @@ -189,14 +191,14 @@ Elements must match **all** of the following expressions: | [diet:vegetarian](https://wiki.openstreetmap.org/wiki/Key:diet:vegetarian) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Donly) [on_demand](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Don_demand) | | [diet:vegan](https://wiki.openstreetmap.org/wiki/Key:diet:vegan) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Donly) [on_demand](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Don_demand) | | [diet:halal](https://wiki.openstreetmap.org/wiki/Key:diet:halal) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Donly) | -| [diet:sugar_free](https://wiki.openstreetmap.org/wiki/Key:diet:sugar_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dno) | -| [diet:gluten_free](https://wiki.openstreetmap.org/wiki/Key:diet:gluten_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dno) | | [organic](https://wiki.openstreetmap.org/wiki/Key:organic) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dno) [yes](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:organic%3Donly) | | [diet:vegetarian](https://wiki.openstreetmap.org/wiki/Key:diet:vegetarian) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dno) | | [diet:vegan](https://wiki.openstreetmap.org/wiki/Key:diet:vegan) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dno) | | [organic](https://wiki.openstreetmap.org/wiki/Key:organic) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dno) [only](https://wiki.openstreetmap.org/wiki/Tag:organic%3Donly) | | [friture:oil](https://wiki.openstreetmap.org/wiki/Key:friture:oil) | Multiple choice | [vegetable](https://wiki.openstreetmap.org/wiki/Tag:friture:oil%3Dvegetable) [animal](https://wiki.openstreetmap.org/wiki/Tag:friture:oil%3Danimal) | | [reusable_packaging:accept](https://wiki.openstreetmap.org/wiki/Key:reusable_packaging:accept) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Dno) [only](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Donly) | +| [diet:sugar_free](https://wiki.openstreetmap.org/wiki/Key:diet:sugar_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dno) | +| [diet:gluten_free](https://wiki.openstreetmap.org/wiki/Key:diet:gluten_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dno) | | [smoking](https://wiki.openstreetmap.org/wiki/Key:smoking) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Dno) [outside](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Doutside) | | [service:electricity](https://wiki.openstreetmap.org/wiki/Key:service:electricity) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dlimited) [ask](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dask) [no](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dno) | | [dog](https://wiki.openstreetmap.org/wiki/Key:dog) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dno) [leashed](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dleashed) [unleashed](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dunleashed) [outside](https://wiki.openstreetmap.org/wiki/Tag:dog%3Doutside) | @@ -349,7 +351,7 @@ _This tagrendering has no question and is thus read-only_ ### add-menu-image _This tagrendering has no question and is thus read-only_ -*{image_upload(image:menu,Add an image from the menu)}* +*{image_upload(image:menu,Add an image from the menu,)}* ### menu-website @@ -377,7 +379,7 @@ The question is `Does this place offer take-away?` The question is `Does {title()} deliver food to your home?` - - *This business does home delivery (eventually via a third party)* is shown if with delivery=yes + - *This business does home delivery (possibly via a third party)* is shown if with delivery=yes - *This business does not deliver at home* is shown if with delivery=no ### Vegetarian (no friture) @@ -409,30 +411,6 @@ The question is `Does this restaurant offer a halal menu?` - *There is a halal menu* is shown if with diet:halal=yes - *Only halal options are available* is shown if with diet:halal=only -### sugar_free - -The question is `Does this shop have a sugar free offering?` - - - *This shop only sells sugar free products* is shown if with diet:sugar_free=only - - *This shop has a big sugar free offering* is shown if with diet:sugar_free=yes - - *This shop has a limited sugar free offering* is shown if with diet:sugar_free=limited - - *This shop has no sugar free offering* is shown if with diet:sugar_free=no - -This tagrendering has labels -`diets` - -### gluten_free - -The question is `Does this shop have a gluten free offering?` - - - *This shop only sells gluten free products* is shown if with diet:gluten_free=only - - *This shop has a big gluten free offering* is shown if with diet:gluten_free=yes - - *This shop has a limited gluten free offering* is shown if with diet:gluten_free=limited - - *This shop has no gluten free offering* is shown if with diet:gluten_free=no - -This tagrendering has labels -`diets` - ### organic (no friture) The question is `Does this restaurant offer organic food?` @@ -456,7 +434,7 @@ This tagrendering is only visible in the popup if the following condition is met The question is `Does this fries shop have vegan snacks?` - - *Servers only vegan snacks and burgers* is shown if with diet:vegan=only + - *Serves only vegan snacks and burgers* is shown if with diet:vegan=only - *Vegan snacks are available* is shown if with diet:vegan=yes - *A small selection of vegan snacks are available* is shown if with diet:vegan=limited - *No vegan snacks are available* is shown if with diet:vegan=no @@ -492,6 +470,30 @@ The question is `If you bring your own container (such as a cooking pot and smal This tagrendering is only visible in the popup if the following condition is met: cuisine=friture +### sugar_free + +The question is `Does this shop have a sugar free offering?` + + - *This shop only sells sugar free products* is shown if with diet:sugar_free=only + - *This shop has a big sugar free offering* is shown if with diet:sugar_free=yes + - *This shop has a limited sugar free offering* is shown if with diet:sugar_free=limited + - *This shop has no sugar free offering* is shown if with diet:sugar_free=no + +This tagrendering has labels +`diets` + +### gluten_free + +The question is `Does this shop have a gluten free offering?` + + - *This shop only sells gluten free products* is shown if with diet:gluten_free=only + - *This shop has a big gluten free offering* is shown if with diet:gluten_free=yes + - *This shop has a limited gluten free offering* is shown if with diet:gluten_free=limited + - *This shop has no gluten free offering* is shown if with diet:gluten_free=no + +This tagrendering has labels +`diets` + ### smoking The question is `Is smoking allowed at {title()}?` @@ -1249,7 +1251,7 @@ The question is `Does this shop sell bikes?` - *This shop sells new bikes* is shown if with service:bicycle:retail=yes - *This shop doesn't sell new bikes* is shown if with service:bicycle:retail=no -This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=diy | shop=doityourself | service:bicycle:retail~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself | service:bicycle:retail~.+ ### bike_second_hand @@ -1270,7 +1272,7 @@ The question is `Does this shop repair bikes?` - *This shop only repairs bikes bought here* is shown if with service:bicycle:repair=only_sold - *This shop only repairs bikes of a certain brand* is shown if with service:bicycle:repair=brand -This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ +This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ ### bicycle_rental @@ -1279,7 +1281,7 @@ The question is `Does this shop rent out bikes?` - *This shop rents out bikes* is shown if with service:bicycle:rental=yes - *This shop doesn't rent out bikes* is shown if with service:bicycle:rental=no -This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ ### bicycle-types @@ -1401,7 +1403,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 service:bicycle:cleaning:fee=no - *Free to use* is shown if with service:bicycle:cleaning:fee=yes & 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~.+ ### internet @@ -1517,7 +1519,7 @@ This tagrendering has labels | id | question | osmTags | -----|-----|----- | | 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.3 | Liquor Store | shop=alcohol | | shop_types.4 | Anime / Manga Shop | shop=anime | diff --git a/Docs/Themes/lighthouses.md b/Docs/Themes/lighthouses.md index 2d50f9eb6..e4d64d97a 100644 --- a/Docs/Themes/lighthouses.md +++ b/Docs/Themes/lighthouses.md @@ -19,6 +19,8 @@ Available languages: - es - ca - cs + - hu + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/mapcomplete-changes.md b/Docs/Themes/mapcomplete-changes.md index 127c643d9..92a9ccb20 100644 --- a/Docs/Themes/mapcomplete-changes.md +++ b/Docs/Themes/mapcomplete-changes.md @@ -15,6 +15,8 @@ Available languages: - en - de + - cs + - es # Table of contents diff --git a/Docs/Themes/maproulette.md b/Docs/Themes/maproulette.md index 27b1a9921..3963cdee4 100644 --- a/Docs/Themes/maproulette.md +++ b/Docs/Themes/maproulette.md @@ -23,6 +23,7 @@ Available languages: - cs - zh_Hant - pl + - hu # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/maps.md b/Docs/Themes/maps.md index c82d1b5b0..3e1f96ba8 100644 --- a/Docs/Themes/maps.md +++ b/Docs/Themes/maps.md @@ -26,6 +26,8 @@ Available languages: - es - cs - pl + - hu + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/maxspeed.md b/Docs/Themes/maxspeed.md index 30758ee2c..c34a541c3 100644 --- a/Docs/Themes/maxspeed.md +++ b/Docs/Themes/maxspeed.md @@ -27,6 +27,8 @@ Available languages: - zh_Hant - eu - pl + - hu + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/memorials.md b/Docs/Themes/memorials.md index 94f4958cb..af471b517 100644 --- a/Docs/Themes/memorials.md +++ b/Docs/Themes/memorials.md @@ -24,6 +24,10 @@ Available languages: - da - sl - es + - cs + - ru + - hu + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/nature.md b/Docs/Themes/nature.md index 57f0f0cd7..9fa74bf72 100644 --- a/Docs/Themes/nature.md +++ b/Docs/Themes/nature.md @@ -34,6 +34,9 @@ Available languages: - es - zh_Hant - pl + - ru + - hu + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/notes.md b/Docs/Themes/notes.md index e806f6daa..0f1190ff5 100644 --- a/Docs/Themes/notes.md +++ b/Docs/Themes/notes.md @@ -25,6 +25,8 @@ Available languages: - cs - zh_Hant - pl + - ru + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/observation_towers.md b/Docs/Themes/observation_towers.md index c8f75ce07..035f37091 100644 --- a/Docs/Themes/observation_towers.md +++ b/Docs/Themes/observation_towers.md @@ -26,6 +26,7 @@ Available languages: - da - cs - pl + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/onwheels.md b/Docs/Themes/onwheels.md index 2185f6c7d..5f6cc8238 100644 --- a/Docs/Themes/onwheels.md +++ b/Docs/Themes/onwheels.md @@ -43,6 +43,8 @@ Available languages: - cs - eu - pl + - ru + - uk # Table of contents diff --git a/Docs/Themes/openlovemap.md b/Docs/Themes/openlovemap.md index 55f45775a..27ff9f681 100644 --- a/Docs/Themes/openlovemap.md +++ b/Docs/Themes/openlovemap.md @@ -24,6 +24,8 @@ Available languages: - en - de - es + - cs + - hu # Table of contents @@ -505,7 +507,7 @@ The question is `Does this shop sell bikes?` - *This shop sells new bikes* is shown if with service:bicycle:retail=yes - *This shop doesn't sell new bikes* is shown if with service:bicycle:retail=no -This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=diy | shop=doityourself | service:bicycle:retail~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself | service:bicycle:retail~.+ ### bike_second_hand @@ -526,7 +528,7 @@ The question is `Does this shop repair bikes?` - *This shop only repairs bikes bought here* is shown if with service:bicycle:repair=only_sold - *This shop only repairs bikes of a certain brand* is shown if with service:bicycle:repair=brand -This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ +This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ ### bicycle_rental @@ -535,7 +537,7 @@ The question is `Does this shop rent out bikes?` - *This shop rents out bikes* is shown if with service:bicycle:rental=yes - *This shop doesn't rent out bikes* is shown if with service:bicycle:rental=no -This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ ### bicycle-types @@ -657,7 +659,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 service:bicycle:cleaning:fee=no - *Free to use* is shown if with service:bicycle:cleaning:fee=yes & 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~.+ ### internet @@ -799,11 +801,11 @@ This tagrendering has labels | id | question | osmTags | -----|-----|----- | | fetish.0 | *Does this shop offer fetish gear?* (default) | | -| fetish.1 | This shop offers soft BDSM-gear, such as fluffy handcuffs, a 'fifty-shade-of-grey'-starterset, ... | fetish:bdsm:soft=yes | -| fetish.2 | This shop offers specialized BDSM-gear, 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 pet play accessories, such as puppy masks, animal masks, pony play, tails, hoof shoes, ... | fetish:pet_play=yes | -| fetish.4 | This shop offers leather gear, including pants and shirts usable in daily life up till leather harnesses | fetish:leather=yes | -| fetish.5 | This shop offers uniforms for roleplay, such nurse uniforms, military uniforms, police, school girl, french maid, ... | fetish:uniform=yes | +| fetish.1 | This shop offers soft BDSM-gear, such as fluffy handcuffs, a 'fifty-shade-of-grey'-starterset, ... | fetish:bdsm:soft~^(.+;)?yes(;.+)$ | +| fetish.2 | This shop offers specialized BDSM-gear, 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 pet play accessories, such as puppy masks, animal masks, pony play, tails, hoof shoes, ... | fetish:pet_play~^(.+;)?yes(;.+)$ | +| fetish.4 | This shop offers leather gear, including pants and shirts usable in daily life up till leather harnesses | fetish:leather~^(.+;)?yes(;.+)$ | +| fetish.5 | This shop offers uniforms for roleplay, such nurse uniforms, military uniforms, police, school girl, french maid, ... | fetish:uniform~^(.+;)?yes(;.+)$ | | id | question | osmTags | -----|-----|----- | @@ -816,7 +818,7 @@ This tagrendering has labels | id | question | osmTags | -----|-----|----- | | 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.3 | Liquor Store | shop=alcohol | | shop_types.4 | Anime / Manga Shop | shop=anime | diff --git a/Docs/Themes/openwindpowermap.md b/Docs/Themes/openwindpowermap.md index be8c5d317..7b057612d 100644 --- a/Docs/Themes/openwindpowermap.md +++ b/Docs/Themes/openwindpowermap.md @@ -28,6 +28,7 @@ Available languages: - cs - pl - da + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/osm_community_index.md b/Docs/Themes/osm_community_index.md index e838f0361..4b4bd67a2 100644 --- a/Docs/Themes/osm_community_index.md +++ b/Docs/Themes/osm_community_index.md @@ -20,6 +20,8 @@ Available languages: - ca - cs - pl + - hu + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/parkings.md b/Docs/Themes/parkings.md index 4f56e6757..1f8e231fc 100644 --- a/Docs/Themes/parkings.md +++ b/Docs/Themes/parkings.md @@ -32,6 +32,7 @@ Available languages: - cs - eu - pl + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/personal.md b/Docs/Themes/personal.md index 29b3cc511..e2800de7b 100644 --- a/Docs/Themes/personal.md +++ b/Docs/Themes/personal.md @@ -44,6 +44,7 @@ This theme contains the following layers: - [crossings](../Layers/crossings.md) - [current_view](../Layers/current_view.md) - [cycleways_and_roads](../Layers/cycleways_and_roads.md) + - [cyclist_waiting_aid](../Layers/cyclist_waiting_aid.md) - [defibrillator](../Layers/defibrillator.md) - [dentist](../Layers/dentist.md) - [disaster_response](../Layers/disaster_response.md) @@ -119,6 +120,8 @@ This theme contains the following layers: - [stairs](../Layers/stairs.md) - [street_lamps](../Layers/street_lamps.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) - [ticket_machine](../Layers/ticket_machine.md) - [toilet](../Layers/toilet.md) @@ -155,6 +158,9 @@ Available languages: - pa_PK - cs - pl + - ru + - hu + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/pets.md b/Docs/Themes/pets.md index cd8414054..30d4d1c73 100644 --- a/Docs/Themes/pets.md +++ b/Docs/Themes/pets.md @@ -30,6 +30,9 @@ Available languages: - zh_Hant - pl - it + - ru + - hu + - uk # Table of contents @@ -61,15 +64,15 @@ Available languages: + [Vegetarian (no friture)](#vegetarian-(no-friture)) + [Vegan (no friture)](#vegan-(no-friture)) + [halal (no friture)](#halal-(no-friture)) - + [sugar_free](#sugar_free) - + [gluten_free](#gluten_free) - + [lactose_free](#lactose_free) + [organic (no friture)](#organic-(no-friture)) + [friture-vegetarian](#friture-vegetarian) + [friture-vegan](#friture-vegan) + [friture-organic](#friture-organic) + [friture-oil](#friture-oil) + [friture-take-your-container](#friture-take-your-container) + + [sugar_free](#sugar_free) + + [gluten_free](#gluten_free) + + [lactose_free](#lactose_free) + [smoking](#smoking) + [service:electricity](#serviceelectricity) + [dog-access](#dog-access) @@ -174,15 +177,15 @@ Elements must match **all** of the following expressions: | [diet:vegetarian](https://wiki.openstreetmap.org/wiki/Key:diet:vegetarian) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Donly) [on_demand](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Don_demand) | | [diet:vegan](https://wiki.openstreetmap.org/wiki/Key:diet:vegan) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Donly) [on_demand](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Don_demand) | | [diet:halal](https://wiki.openstreetmap.org/wiki/Key:diet:halal) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dno) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dlimited) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:diet:halal%3Donly) | -| [diet:sugar_free](https://wiki.openstreetmap.org/wiki/Key:diet:sugar_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dno) | -| [diet:gluten_free](https://wiki.openstreetmap.org/wiki/Key:diet:gluten_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dno) | -| [diet:lactose_free](https://wiki.openstreetmap.org/wiki/Key:diet:lactose_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dno) | | [organic](https://wiki.openstreetmap.org/wiki/Key:organic) | Multiple choice | [no](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dno) [yes](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dyes) [only](https://wiki.openstreetmap.org/wiki/Tag:organic%3Donly) | | [diet:vegetarian](https://wiki.openstreetmap.org/wiki/Key:diet:vegetarian) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegetarian%3Dno) | | [diet:vegan](https://wiki.openstreetmap.org/wiki/Key:diet:vegan) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dno) | | [organic](https://wiki.openstreetmap.org/wiki/Key:organic) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:organic%3Dno) [only](https://wiki.openstreetmap.org/wiki/Tag:organic%3Donly) | | [friture:oil](https://wiki.openstreetmap.org/wiki/Key:friture:oil) | Multiple choice | [vegetable](https://wiki.openstreetmap.org/wiki/Tag:friture:oil%3Dvegetable) [animal](https://wiki.openstreetmap.org/wiki/Tag:friture:oil%3Danimal) | | [reusable_packaging:accept](https://wiki.openstreetmap.org/wiki/Key:reusable_packaging:accept) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Dno) [only](https://wiki.openstreetmap.org/wiki/Tag:reusable_packaging:accept%3Donly) | +| [diet:sugar_free](https://wiki.openstreetmap.org/wiki/Key:diet:sugar_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dno) | +| [diet:gluten_free](https://wiki.openstreetmap.org/wiki/Key:diet:gluten_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dno) | +| [diet:lactose_free](https://wiki.openstreetmap.org/wiki/Key:diet:lactose_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dno) | | [smoking](https://wiki.openstreetmap.org/wiki/Key:smoking) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Dno) [outside](https://wiki.openstreetmap.org/wiki/Tag:smoking%3Doutside) | | [service:electricity](https://wiki.openstreetmap.org/wiki/Key:service:electricity) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dlimited) [ask](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dask) [no](https://wiki.openstreetmap.org/wiki/Tag:service:electricity%3Dno) | | [dog](https://wiki.openstreetmap.org/wiki/Key:dog) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dno) [leashed](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dleashed) [unleashed](https://wiki.openstreetmap.org/wiki/Tag:dog%3Dunleashed) [outside](https://wiki.openstreetmap.org/wiki/Tag:dog%3Doutside) | @@ -323,7 +326,7 @@ _This tagrendering has no question and is thus read-only_ ### add-menu-image _This tagrendering has no question and is thus read-only_ -*{image_upload(image:menu,Add an image from the menu)}* +*{image_upload(image:menu,Add an image from the menu,)}* ### menu-website @@ -351,7 +354,7 @@ The question is `Does this place offer take-away?` The question is `Does {title()} deliver food to your home?` - - *This business does home delivery (eventually via a third party)* is shown if with delivery=yes + - *This business does home delivery (possibly via a third party)* is shown if with delivery=yes - *This business does not deliver at home* is shown if with delivery=no ### Vegetarian (no friture) @@ -383,6 +386,65 @@ The question is `Does this restaurant offer a halal menu?` - *There is a halal menu* is shown if with diet:halal=yes - *Only halal options are available* is shown if with diet:halal=only +### organic (no friture) + +The question is `Does this restaurant offer organic food?` + + - *There are no organic options available* is shown if with organic=no + - *There is an organic menu* is shown if with organic=yes + - *Only organic options are available* is shown if with organic=only + +### friture-vegetarian + +The question is `Does this fries shop have vegetarian snacks?` + + - *Serves only vegetarian snacks and burgers* is shown if with diet:vegetarian=only + - *Vegetarian snacks are available* is shown if with diet:vegetarian=yes + - *Only a small selection of snacks are vegetarian* is shown if with diet:vegetarian=limited + - *No vegetarian snacks are available* is shown if with diet:vegetarian=no + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + +### friture-vegan + +The question is `Does this fries shop have vegan snacks?` + + - *Serves only vegan snacks and burgers* is shown if with diet:vegan=only + - *Vegan snacks are available* is shown if with diet:vegan=yes + - *A small selection of vegan snacks are available* is shown if with diet:vegan=limited + - *No vegan snacks are available* is shown if with diet:vegan=no + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + +### friture-organic + +The question is `Does this fries shop offer organic snacks?` + + - *Organic snacks are available* is shown if with organic=yes + - *No organic snacks are available* is shown if with organic=no + - *Only organic snacks are available* is shown if with organic=only + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + +### friture-oil + +The question is `Does this fries shop use vegetable or animal oil for cooking?` + + - *The frying is done with vegetable oil* is shown if with friture:oil=vegetable + - *The frying is done with animal oil* is shown if with friture:oil=animal + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + +### friture-take-your-container + +The question is `If you bring your own container (such as a cooking pot and small pots), is it used to package your order?` + + - *You can bring your own containers to get your order, saving on single-use packaging material and thus waste* is shown if with reusable_packaging:accept=yes + - *Bringing your own container is not allowed* is shown if with reusable_packaging:accept=no + - *You must bring your own container to order here.* is shown if with reusable_packaging:accept=only + +This tagrendering is only visible in the popup if the following condition is met: cuisine=friture + ### sugar_free The question is `Does this shop have a sugar free offering?` @@ -419,65 +481,6 @@ The question is `Does {title()} have a lactose-free offering?` This tagrendering has labels `diets` -### organic (no friture) - -The question is `Does this restaurant offer organic food?` - - - *There are no organic options available* is shown if with organic=no - - *There is an organic menu* is shown if with organic=yes - - *Only organic options are available* is shown if with organic=only - -### friture-vegetarian - -The question is `Does this fries shop have vegetarian snacks?` - - - *Serves only vegetarian snacks and burgers* is shown if with diet:vegetarian=only - - *Vegetarian snacks are available* is shown if with diet:vegetarian=yes - - *Only a small selection of snacks are vegetarian* is shown if with diet:vegetarian=limited - - *No vegetarian snacks are available* is shown if with diet:vegetarian=no - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - -### friture-vegan - -The question is `Does this fries shop have vegan snacks?` - - - *Servers only vegan snacks and burgers* is shown if with diet:vegan=only - - *Vegan snacks are available* is shown if with diet:vegan=yes - - *A small selection of vegan snacks are available* is shown if with diet:vegan=limited - - *No vegan snacks are available* is shown if with diet:vegan=no - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - -### friture-organic - -The question is `Does this fries shop offer organic snacks?` - - - *Organic snacks are available* is shown if with organic=yes - - *No organic snacks are available* is shown if with organic=no - - *Only organic snacks are available* is shown if with organic=only - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - -### friture-oil - -The question is `Does this fries shop use vegetable or animal oil for cooking?` - - - *The frying is done with vegetable oil* is shown if with friture:oil=vegetable - - *The frying is done with animal oil* is shown if with friture:oil=animal - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - -### friture-take-your-container - -The question is `If you bring your own container (such as a cooking pot and small pots), is it used to package your order?` - - - *You can bring your own containers to get your order, saving on single-use packaging material and thus waste* is shown if with reusable_packaging:accept=yes - - *Bringing your own container is not allowed* is shown if with reusable_packaging:accept=no - - *You must bring your own container to order here.* is shown if with reusable_packaging:accept=only - -This tagrendering is only visible in the popup if the following condition is met: cuisine=friture - ### smoking The question is `Is smoking allowed at {title()}?` @@ -1022,7 +1025,7 @@ The question is `Does this shop sell bikes?` - *This shop sells new bikes* is shown if with service:bicycle:retail=yes - *This shop doesn't sell new bikes* is shown if with service:bicycle:retail=no -This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=diy | shop=doityourself | service:bicycle:retail~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself | service:bicycle:retail~.+ ### bike_second_hand @@ -1043,7 +1046,7 @@ The question is `Does this shop repair bikes?` - *This shop only repairs bikes bought here* is shown if with service:bicycle:repair=only_sold - *This shop only repairs bikes of a certain brand* is shown if with service:bicycle:repair=brand -This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ +This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ ### bicycle_rental @@ -1052,7 +1055,7 @@ The question is `Does this shop rent out bikes?` - *This shop rents out bikes* is shown if with service:bicycle:rental=yes - *This shop doesn't rent out bikes* is shown if with service:bicycle:rental=no -This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ ### bicycle-types @@ -1174,7 +1177,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 service:bicycle:cleaning:fee=no - *Free to use* is shown if with service:bicycle:cleaning:fee=yes & 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~.+ ### internet @@ -1303,7 +1306,7 @@ This tagrendering has labels | id | question | osmTags | -----|-----|----- | | 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.3 | Liquor Store | shop=alcohol | | shop_types.4 | Anime / Manga Shop | shop=anime | diff --git a/Docs/Themes/playgrounds.md b/Docs/Themes/playgrounds.md index 3af0fab88..a459d69b8 100644 --- a/Docs/Themes/playgrounds.md +++ b/Docs/Themes/playgrounds.md @@ -35,6 +35,7 @@ Available languages: - cs - eu - pl + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/postboxes.md b/Docs/Themes/postboxes.md index 35ac438d0..2034a7f88 100644 --- a/Docs/Themes/postboxes.md +++ b/Docs/Themes/postboxes.md @@ -12,6 +12,7 @@ This theme contains the following layers: - [postoffices](../Layers/postoffices.md) - [parcel_lockers](../Layers/parcel_lockers.md) - [shops](../Layers/shops.md) + - [walls_and_buildings](../Layers/walls_and_buildings.md) Available languages: @@ -28,6 +29,7 @@ Available languages: - es - cs - pl + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/rainbow_crossings.md b/Docs/Themes/rainbow_crossings.md index 805f581a0..1cd79255d 100644 --- a/Docs/Themes/rainbow_crossings.md +++ b/Docs/Themes/rainbow_crossings.md @@ -25,6 +25,8 @@ Available languages: - cs - zh_Hant - pl + - hu + - uk # Table of contents diff --git a/Docs/Themes/shops.md b/Docs/Themes/shops.md index 5ab5f437d..d5b1b650c 100644 --- a/Docs/Themes/shops.md +++ b/Docs/Themes/shops.md @@ -31,6 +31,7 @@ Available languages: - cs - eu - pl + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/ski.md b/Docs/Themes/ski.md index 52980bab8..32936283f 100644 --- a/Docs/Themes/ski.md +++ b/Docs/Themes/ski.md @@ -27,6 +27,9 @@ Available languages: - es - da - fr + - cs + - hu + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/sport_pitches.md b/Docs/Themes/sport_pitches.md index c4b723858..51f4d99fd 100644 --- a/Docs/Themes/sport_pitches.md +++ b/Docs/Themes/sport_pitches.md @@ -26,6 +26,7 @@ Available languages: - da - cs - pl + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/sports.md b/Docs/Themes/sports.md index 5c0e8ba26..6b6ca9f6c 100644 --- a/Docs/Themes/sports.md +++ b/Docs/Themes/sports.md @@ -28,6 +28,9 @@ Available languages: - eu - pl - it + - ru + - hu + - uk # Table of contents @@ -461,7 +464,7 @@ The question is `Does this shop sell bikes?` - *This shop sells new bikes* is shown if with service:bicycle:retail=yes - *This shop doesn't sell new bikes* is shown if with service:bicycle:retail=no -This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=diy | shop=doityourself | service:bicycle:retail~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=outdoor | shop=sport | shop=sports | shop=diy | shop=doityourself | service:bicycle:retail~.+ ### bike_second_hand @@ -482,7 +485,7 @@ The question is `Does this shop repair bikes?` - *This shop only repairs bikes bought here* is shown if with service:bicycle:repair=only_sold - *This shop only repairs bikes of a certain brand* is shown if with service:bicycle:repair=brand -This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ +This tagrendering is only visible in the popup if the following condition is met: service:bicycle:retail=yes | service:bicycle:second_hand=yes | service:bicycle:second_hand=only | shop=sport | shop=sports | shop=outdoor | shop=bicycle | service:bicycle:repair~.+ ### bicycle_rental @@ -491,7 +494,7 @@ The question is `Does this shop rent out bikes?` - *This shop rents out bikes* is shown if with service:bicycle:rental=yes - *This shop doesn't rent out bikes* is shown if with service:bicycle:rental=no -This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ +This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+ ### bicycle-types @@ -613,7 +616,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 service:bicycle:cleaning:fee=no - *Free to use* is shown if with service:bicycle:cleaning:fee=yes & 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~.+ ### internet @@ -742,7 +745,7 @@ This tagrendering has labels | id | question | osmTags | -----|-----|----- | | 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.3 | Liquor Store | shop=alcohol | | shop_types.4 | Anime / Manga Shop | shop=anime | diff --git a/Docs/Themes/stations.md b/Docs/Themes/stations.md index 6798a3c96..882f085ef 100644 --- a/Docs/Themes/stations.md +++ b/Docs/Themes/stations.md @@ -46,6 +46,7 @@ Available languages: - pl - da - it + - hu # Table of contents diff --git a/Docs/Themes/street_lighting.md b/Docs/Themes/street_lighting.md index 62432c148..94ce6a4c5 100644 --- a/Docs/Themes/street_lighting.md +++ b/Docs/Themes/street_lighting.md @@ -29,6 +29,7 @@ Available languages: - cs - it - pl + - uk # Table of contents diff --git a/Docs/Themes/surveillance.md b/Docs/Themes/surveillance.md index 2d778dbe3..f65d7162b 100644 --- a/Docs/Themes/surveillance.md +++ b/Docs/Themes/surveillance.md @@ -30,6 +30,8 @@ Available languages: - cs - pl - sl + - ru + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/toilets.md b/Docs/Themes/toilets.md index d42fe4372..6d4db8150 100644 --- a/Docs/Themes/toilets.md +++ b/Docs/Themes/toilets.md @@ -29,6 +29,7 @@ Available languages: - da - es - cs + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/transit.md b/Docs/Themes/transit.md index 0305e9d43..98da68c85 100644 --- a/Docs/Themes/transit.md +++ b/Docs/Themes/transit.md @@ -28,6 +28,9 @@ Available languages: - cs - zh_Hant - pl + - ru + - hu + - uk # Table of contents diff --git a/Docs/Themes/trees.md b/Docs/Themes/trees.md index 4f36d0435..6d97f7b76 100644 --- a/Docs/Themes/trees.md +++ b/Docs/Themes/trees.md @@ -32,6 +32,7 @@ Available languages: - pt_BR - eu - pt + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/velopark.md b/Docs/Themes/velopark.md index 132a8956c..982513fe9 100644 --- a/Docs/Themes/velopark.md +++ b/Docs/Themes/velopark.md @@ -249,6 +249,10 @@ This tagrendering has labels -----|-----|----- | | created-only.0 | Only unfinished tasks | mr_taskStatus=Created | +| id | question | osmTags | +-----|-----|----- | +| nmbs-only.0 | Only non-SNCB-bicycle parkings | ref:velopark!~^(https:\/\/data.velopark.be\/data\/NMBS.*)$ | + | id | question | osmTags | -----|-----|----- | | too-hard-only.0 | Only too-hard tasks | mr_taskStatus=Too_hard | @@ -279,7 +283,7 @@ Elements must match **all** of the following expressions: | attribute | type | values which are supported by this layer | -----|-----|----- | | [ref:velopark](https://wiki.openstreetmap.org/wiki/Key:ref:velopark) | [velopark](../SpecialInputElements.md#velopark) | | -| [bicycle_parking](https://wiki.openstreetmap.org/wiki/Key:bicycle_parking) | [string](../SpecialInputElements.md#string) | [stands](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dstands) [safe_loops](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dsafe_loops) [wall_loops](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dwall_loops) [handlebar_holder](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dhandlebar_holder) [rack](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Drack) [two_tier](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dtwo_tier) [shed](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dshed) [bollard](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dbollard) [floor](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dfloor) [lockers](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dlockers) | +| [bicycle_parking](https://wiki.openstreetmap.org/wiki/Key:bicycle_parking) | [string](../SpecialInputElements.md#string) | [stands](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dstands) [safe_loops](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dsafe_loops) [wall_loops](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dwall_loops) [handlebar_holder](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dhandlebar_holder) [rack](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Drack) [two_tier](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dtwo_tier) [shed](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dshed) [bollard](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dbollard) [floor](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dfloor) [lockers](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dlockers) [lean_and_stick](https://wiki.openstreetmap.org/wiki/Tag:bicycle_parking%3Dlean_and_stick) | | [location](https://wiki.openstreetmap.org/wiki/Key:location) | Multiple choice | [underground](https://wiki.openstreetmap.org/wiki/Tag:location%3Dunderground) [surface](https://wiki.openstreetmap.org/wiki/Tag:location%3Dsurface) [rooftop](https://wiki.openstreetmap.org/wiki/Tag:location%3Drooftop) | | [covered](https://wiki.openstreetmap.org/wiki/Key:covered) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:covered%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:covered%3Dno) | | [capacity](https://wiki.openstreetmap.org/wiki/Key:capacity) | [nat](../SpecialInputElements.md#nat) | | @@ -339,6 +343,7 @@ The question is `What is the type of this bicycle parking?` - *Bollard* is shown if with bicycle_parking=bollard - *An area on the floor which is marked for bicycle parking* is shown if with bicycle_parking=floor - *A locker - the bicycles are enclosed completely individually or with a few bicycles together. The locker is too small to fit a person standing..* is shown if with bicycle_parking=lockers + - *A lean-to bracket with possibility to use a lock through eyelet. The seat tube can be held by the stand by an anchor* is shown if with bicycle_parking=lean_and_stick ### Underground? @@ -369,7 +374,7 @@ The question is `Who can use this bicycle parking?` - *Publicly accessible* is shown if with access=yes - *Access is primarily for visitors to a business* is shown if with access=customers - *Access is limited to members of a school, company or organisation* is shown if with access=members - - *Access is limited to members of a school, company or organisation* is shown if with access=private + - *Private bicycle parking which is never available to the public, also not via a membership fee* is shown if with access=private ### fee diff --git a/Docs/Themes/vending_machine.md b/Docs/Themes/vending_machine.md index 6a9723f28..4367513ce 100644 --- a/Docs/Themes/vending_machine.md +++ b/Docs/Themes/vending_machine.md @@ -27,6 +27,9 @@ Available languages: - zh_Hant - da - it + - ru + - hu + - uk # Table of contents diff --git a/Docs/Themes/walkingnodes.md b/Docs/Themes/walkingnodes.md index 4ea10264a..5d5cc5bc3 100644 --- a/Docs/Themes/walkingnodes.md +++ b/Docs/Themes/walkingnodes.md @@ -20,6 +20,7 @@ Available languages: - nl - de - es + - cs # Table of contents diff --git a/Docs/Themes/walls_and_buildings.md b/Docs/Themes/walls_and_buildings.md index 622617ebb..3ae12680b 100644 --- a/Docs/Themes/walls_and_buildings.md +++ b/Docs/Themes/walls_and_buildings.md @@ -26,6 +26,7 @@ Available languages: - cs - zh_Hant - pl + - hu # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/waste.md b/Docs/Themes/waste.md index ff88c1b3e..9b1905d97 100644 --- a/Docs/Themes/waste.md +++ b/Docs/Themes/waste.md @@ -28,6 +28,8 @@ Available languages: - zh_Hant - eu - pl + - hu + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/Themes/waste_basket.md b/Docs/Themes/waste_basket.md index 6753d74d2..91a2e524f 100644 --- a/Docs/Themes/waste_basket.md +++ b/Docs/Themes/waste_basket.md @@ -27,6 +27,8 @@ Available languages: - es - cs - pl + - ru + - uk # Layers defined in this theme configuration file These layers can not be reused in different themes. diff --git a/Docs/URL_Parameters.md b/Docs/URL_Parameters.md index 6970322cd..a940d9ad8 100644 --- a/Docs/URL_Parameters.md +++ b/Docs/URL_Parameters.md @@ -44,9 +44,8 @@ This document gives an overview of which URL-parameters can be used to influence 33. [filter-public_bookcase-adult-books](#filter-public_bookcase-adult-books) 34. [filter-public_bookcase-inside](#filter-public_bookcase-inside) 35. [filter-public_bookcase-has_image](#filter-public_bookcase-has_image) -36. [layer-note_import_public_bookcase](#layer-note_import_public_bookcase) -37. [mode](#mode) -38. [layer-](#layer-) +36. [mode](#mode) +37. [layer-](#layer-) ## What is a URL parameter? @@ -113,7 +112,7 @@ The default value is _false_ Disables/Enables logging in and thus disables editing all together. This effectively puts MapComplete into read-only mode. -This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L103) +This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L97) The default value is _true_ @@ -121,7 +120,7 @@ The default value is _true_ Disables/Enables the search bar -This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L118) +This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L112) The default value is _true_ @@ -129,7 +128,7 @@ The default value is _true_ Disables/Enables the background layer control where a user can enable e.g. aerial imagery -This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L123) +This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L117) The default value is _true_ @@ -137,7 +136,7 @@ The default value is _true_ Disables/Enables the filter view where a user can enable/disable MapComplete-layers or filter for certain properties -This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L129) +This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L123) The default value is _true_ @@ -145,7 +144,7 @@ The default value is _true_ Disables/enables the help menu or welcome message -This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L135) +This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L129) The default value is _true_ @@ -153,7 +152,7 @@ The default value is _true_ Disables/enables the button to get in touch with the community -This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L140) +This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L134) The default value is _true_ @@ -161,7 +160,7 @@ The default value is _true_ Disables/Enables the extraLink button. By default, if in iframe mode and the welcome message is hidden, a popout button to the full mapcomplete instance is shown instead (unless disabled with this switch or another extraLink button is enabled) -This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L145) +This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L139) The default value is _true_ @@ -169,7 +168,7 @@ The default value is _true_ Disables/Enables the various links which go back to the index page with the theme overview -This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L150) +This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L144) The default value is _true_ @@ -177,7 +176,7 @@ The default value is _true_ Disables/Enables the 'Share-screen'-tab in the welcome message -This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L155) +This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L149) The default value is _true_ @@ -185,7 +184,7 @@ The default value is _true_ Disables/Enables the geolocation button -This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L160) +This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L154) The default value is _true_ @@ -193,7 +192,7 @@ The default value is _true_ If set to false, all layers will be disabled - except the explicitly enabled layers -This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L166) +This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L160) The default value is _true_ @@ -201,7 +200,7 @@ The default value is _true_ Always show all questions -This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L171) +This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L165) The default value is _false_ @@ -209,7 +208,7 @@ The default value is _false_ Enable the export as GeoJSON and CSV button -This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L177) +This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L171) The default value is _true_ @@ -217,7 +216,7 @@ The default value is _true_ Enable/disable caching from localStorage -This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L183) +This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L177) The default value is _true_ @@ -225,7 +224,7 @@ The default value is _true_ If true, 'dryrun' mode is activated. The app will behave as normal, except that changes to OSM will be printed onto the console instead of actually uploaded to osm.org -This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L198) +This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L192) The default value is _false_ @@ -233,7 +232,7 @@ The default value is _false_ If true, shows some extra debugging help such as all the available tags on every object -This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L204) +This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L198) The default value is _false_ @@ -241,7 +240,7 @@ The default value is _false_ If true, the location distance indication will not be written to the changeset and other privacy enhancing measures might be taken. -This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L210) +This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L204) The default value is _false_ @@ -249,7 +248,7 @@ The default value is _false_ Point mapcomplete to a different overpass-instance. Example: https://overpass-api.de/api/interpreter -This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L216) +This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L210) The default value is _https://overpass-api.de/api/interpreter,https://overpass.private.coffee/api/interpreter,https://overpass.osm.jp/api/interpreter_ @@ -257,7 +256,7 @@ The default value is _https://overpass-api.de/api/interpreter,https://overpass.p Set a different timeout (in seconds) for queries in overpass -This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L227) +This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L221) The default value is _30_ @@ -265,7 +264,7 @@ The default value is _30_ point to switch between OSM-api and overpass -This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L235) +This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L229) The default value is _16_ @@ -273,7 +272,7 @@ The default value is _16_ Tilesize when the OSM-API is used to fetch data within a BBOX -This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L243) +This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L237) The default value is _17_ @@ -322,8 +321,18 @@ One can use the [ID of an ELI-layer](./ELI-overview.md) or use one of the global - carto.positron_no_labels - carto.dark_matter_no_labels - carto.voyager_no_labels + - cyclosm + - EsriWorldImagery + - EsriWorldImageryClarity + - Mapbox + - OpenAerialMapMosaic + - osmfr-basque + - osmfr-breton + - osmfr + - HDM_HOT + - osmfr-occitan -This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L250) +This documentation is defined in the source code at [FeatureSwitchState.ts](/src/Logic/State/FeatureSwitchState.ts#L244) No default value set @@ -355,7 +364,7 @@ The default value is _0_ Used to complete the login -This documentation is defined in the source code at [ThemeViewState.ts](/src/Models/ThemeViewState.ts#L182) +This documentation is defined in the source code at [ThemeViewState.ts](/src/Models/ThemeViewState.ts#L189) No default value set @@ -371,7 +380,7 @@ The default value is _true_ State of filter kid-books -This documentation is defined in the source code at [FilterConfig.ts](/src/Models/ThemeConfig/FilterConfig.ts#L175) +This documentation is defined in the source code at [FilterConfig.ts](/src/Models/ThemeConfig/FilterConfig.ts#L185) The default value is _false_ @@ -379,7 +388,7 @@ The default value is _false_ State of filter adult-books -This documentation is defined in the source code at [FilterConfig.ts](/src/Models/ThemeConfig/FilterConfig.ts#L175) +This documentation is defined in the source code at [FilterConfig.ts](/src/Models/ThemeConfig/FilterConfig.ts#L185) The default value is _false_ @@ -387,7 +396,7 @@ The default value is _false_ State of filter inside -This documentation is defined in the source code at [FilterConfig.ts](/src/Models/ThemeConfig/FilterConfig.ts#L175) +This documentation is defined in the source code at [FilterConfig.ts](/src/Models/ThemeConfig/FilterConfig.ts#L185) The default value is _0_ @@ -395,23 +404,15 @@ The default value is _0_ State of filter has_image -This documentation is defined in the source code at [FilterConfig.ts](/src/Models/ThemeConfig/FilterConfig.ts#L175) +This documentation is defined in the source code at [FilterConfig.ts](/src/Models/ThemeConfig/FilterConfig.ts#L185) The default value is _0_ -## layer-note_import_public_bookcase - -Whether or not layer note_import_public_bookcase is shown - -This documentation is defined in the source code at [FilteredLayer.ts](/src/Models/FilteredLayer.ts#L110) - -The default value is _true_ - ## mode The mode the application starts in, e.g. 'map', 'dashboard' or 'statistics' -This documentation is defined in the source code at [generateDocs.ts](ervdvn/git2/MapComplete/scripts/generateDocs.ts#L436) +This documentation is defined in the source code at [generateDocs.ts](ervdvn/git/MapComplete/scripts/generateDocs.ts#L436) The default value is _map_ diff --git a/Docs/wikiIndex.txt b/Docs/wikiIndex.txt index ae9d14558..5621add51 100644 --- a/Docs/wikiIndex.txt +++ b/Docs/wikiIndex.txt @@ -4,7 +4,7 @@ {{service_item |name= [https://mapcomplete.org/personal personal] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:gl|en}}, {{#language:fr|en}}, {{#language:de|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:ru|en}}, {{#language:it|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:gl|en}}, {{#language:fr|en}}, {{#language:de|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:ru|en}}, {{#language:it|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: Create a personal theme based on all the available layers of all themes |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -13,7 +13,7 @@ {{service_item |name= [https://mapcomplete.org/cyclofix cyclofix] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:fr|en}}, {{#language:gl|en}}, {{#language:de|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:it|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:ca|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:fr|en}}, {{#language:gl|en}}, {{#language:de|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:it|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:ca|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: A map for cyclists to find the appropriate infrastructure for their needs, such as bicycle pumps, drinking water, bicycle shops, repair stations or parkings |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -22,7 +22,7 @@ {{service_item |name= [https://mapcomplete.org/etymology etymology] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:zh_Hant|en}}, {{#language:hu|en}}, {{#language:fr|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:zh_Hant|en}}, {{#language:hu|en}}, {{#language:fr|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:ru|en}}, {{#language:uk|en}} |descr= A MapComplete theme: What is the origin of a toponym? |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -31,7 +31,7 @@ {{service_item |name= [https://mapcomplete.org/waste waste] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:it|en}}, {{#language:ca|en}}, {{#language:da|en}}, {{#language:es|en}}, {{#language:cs|en}}, {{#language:zh_Hant|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:it|en}}, {{#language:ca|en}}, {{#language:da|en}}, {{#language:es|en}}, {{#language:cs|en}}, {{#language:zh_Hant|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: Map showing waste baskets and recycling facilities |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -40,7 +40,7 @@ {{service_item |name= [https://mapcomplete.org/food food] |region= Worldwide -|lang= {{#language:nl|en}}, {{#language:en|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:nb_NO|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:it|en}} +|lang= {{#language:nl|en}}, {{#language:en|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:nb_NO|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:it|en}}, {{#language:uk|en}} |descr= A MapComplete theme: Restaurants and fast food |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -49,7 +49,7 @@ {{service_item |name= [https://mapcomplete.org/cafes_and_pubs cafes_and_pubs] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:nb_NO|en}}, {{#language:pa_PK|en}}, {{#language:cs|en}}, {{#language:it|en}}, {{#language:zh_Hant|en}}, {{#language:eu|en}}, {{#language:pl|en}}, {{#language:zh_Hans|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:nb_NO|en}}, {{#language:pa_PK|en}}, {{#language:cs|en}}, {{#language:it|en}}, {{#language:zh_Hant|en}}, {{#language:eu|en}}, {{#language:pl|en}}, {{#language:zh_Hans|en}}, {{#language:uk|en}} |descr= A MapComplete theme: Coffeehouses, pubs and bars |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -58,7 +58,7 @@ {{service_item |name= [https://mapcomplete.org/shops shops] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:fr|en}}, {{#language:ja|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:nl|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:zh_Hant|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:fr|en}}, {{#language:ja|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:nl|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:zh_Hant|en}}, {{#language:pl|en}}, {{#language:ru|en}}, {{#language:uk|en}} |descr= A MapComplete theme: An editable map with basic shop information |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -67,7 +67,7 @@ {{service_item |name= [https://mapcomplete.org/healthcare healthcare] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:ca|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:nl|en}}, {{#language:cs|en}}, {{#language:es|en}}, {{#language:pl|en}}, {{#language:it|en}} +|lang= {{#language:en|en}}, {{#language:ca|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:nl|en}}, {{#language:cs|en}}, {{#language:es|en}}, {{#language:pl|en}}, {{#language:it|en}}, {{#language:uk|en}} |descr= A MapComplete theme: On this map, various healthcare related items are shown |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -76,7 +76,7 @@ {{service_item |name= [https://mapcomplete.org/sports sports] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:cs|en}}, {{#language:zh_Hant|en}}, {{#language:pl|en}}, {{#language:it|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:cs|en}}, {{#language:zh_Hant|en}}, {{#language:pl|en}}, {{#language:it|en}}, {{#language:uk|en}} |descr= A MapComplete theme: Map showing sport facilities. |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -85,7 +85,7 @@ {{service_item |name= [https://mapcomplete.org/artwork artwork] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:fr|en}}, {{#language:de|en}}, {{#language:id|en}}, {{#language:it|en}}, {{#language:ru|en}}, {{#language:es|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:nb_NO|en}}, {{#language:hu|en}}, {{#language:pl|en}}, {{#language:ca|en}}, {{#language:zh_Hans|en}}, {{#language:fil|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:zgh|en}}, {{#language:eu|en}}, {{#language:pt_BR|en}}, {{#language:pt|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:fr|en}}, {{#language:de|en}}, {{#language:id|en}}, {{#language:it|en}}, {{#language:ru|en}}, {{#language:es|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:nb_NO|en}}, {{#language:hu|en}}, {{#language:pl|en}}, {{#language:ca|en}}, {{#language:zh_Hans|en}}, {{#language:fil|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:zgh|en}}, {{#language:eu|en}}, {{#language:pt_BR|en}}, {{#language:pt|en}}, {{#language:uk|en}} |descr= A MapComplete theme: An open map of statues, busts, graffitis and other artwork all over the world |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -94,7 +94,7 @@ {{service_item |name= [https://mapcomplete.org/bookcases bookcases] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:ru|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:it|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:eu|en}}, {{#language:pl|en}}, {{#language:zh_Hans|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:ru|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:it|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:eu|en}}, {{#language:pl|en}}, {{#language:zh_Hans|en}}, {{#language:uk|en}} |descr= A MapComplete theme: A public bookcase is a small streetside cabinet, box, old phone booth or some other objects where books are stored |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -103,7 +103,7 @@ {{service_item |name= [https://mapcomplete.org/playgrounds playgrounds] |region= Worldwide -|lang= {{#language:nl|en}}, {{#language:en|en}}, {{#language:fr|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:ru|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:nb_NO|en}}, {{#language:id|en}}, {{#language:hu|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:pl|en}} +|lang= {{#language:nl|en}}, {{#language:en|en}}, {{#language:fr|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:ru|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:nb_NO|en}}, {{#language:id|en}}, {{#language:hu|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: A map with playgrounds |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -112,7 +112,7 @@ {{service_item |name= [https://mapcomplete.org/drinking_water drinking_water] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:fr|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:it|en}}, {{#language:ru|en}}, {{#language:de|en}}, {{#language:nb_NO|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:fr|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:it|en}}, {{#language:ru|en}}, {{#language:de|en}}, {{#language:nb_NO|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: On this map, publicly accessible drinking water spots are shown and can be easily added |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -121,7 +121,7 @@ {{service_item |name= [https://mapcomplete.org/toilets toilets] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:nl|en}}, {{#language:ru|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:pl|en}}, {{#language:it|en}}, {{#language:hu|en}}, {{#language:nb_NO|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:cs|en}} +|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:nl|en}}, {{#language:ru|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:pl|en}}, {{#language:it|en}}, {{#language:hu|en}}, {{#language:nb_NO|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:cs|en}}, {{#language:uk|en}} |descr= A MapComplete theme: A map of public toilets |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -130,7 +130,7 @@ {{service_item |name= [https://mapcomplete.org/vending_machine vending_machine] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:es|en}}, {{#language:pl|en}}, {{#language:it|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:es|en}}, {{#language:pl|en}}, {{#language:it|en}}, {{#language:uk|en}} |descr= A MapComplete theme: Find vending machines for everything |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -139,7 +139,7 @@ {{service_item |name= [https://mapcomplete.org/aed aed] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:fr|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:id|en}}, {{#language:it|en}}, {{#language:ru|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:sv|en}}, {{#language:pl|en}}, {{#language:pt_BR|en}}, {{#language:nb_NO|en}}, {{#language:hu|en}}, {{#language:sl|en}}, {{#language:zh_Hans|en}}, {{#language:da|en}}, {{#language:fil|en}}, {{#language:cs|en}}, {{#language:zgh|en}}, {{#language:eu|en}}, {{#language:pt|en}} +|lang= {{#language:en|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:fr|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:id|en}}, {{#language:it|en}}, {{#language:ru|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:sv|en}}, {{#language:pl|en}}, {{#language:pt_BR|en}}, {{#language:nb_NO|en}}, {{#language:hu|en}}, {{#language:sl|en}}, {{#language:zh_Hans|en}}, {{#language:da|en}}, {{#language:fil|en}}, {{#language:cs|en}}, {{#language:zgh|en}}, {{#language:eu|en}}, {{#language:pt|en}}, {{#language:uk|en}} |descr= A MapComplete theme: On this map, one can find and mark nearby defibrillators |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -148,7 +148,7 @@ {{service_item |name= [https://mapcomplete.org/clock clock] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:ca|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:cs|en}}, {{#language:fr|en}}, {{#language:pl|en}}, {{#language:da|en}}, {{#language:it|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:ca|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:cs|en}}, {{#language:fr|en}}, {{#language:pl|en}}, {{#language:da|en}}, {{#language:it|en}}, {{#language:uk|en}} |descr= A MapComplete theme: Map showing all public clocks |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -157,7 +157,7 @@ {{service_item |name= [https://mapcomplete.org/charging_stations charging_stations] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:it|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:nb_NO|en}}, {{#language:ru|en}}, {{#language:hu|en}}, {{#language:fr|en}}, {{#language:es|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:eu|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:it|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:nb_NO|en}}, {{#language:ru|en}}, {{#language:hu|en}}, {{#language:fr|en}}, {{#language:es|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:eu|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: A worldwide map of charging stations |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -166,7 +166,7 @@ {{service_item |name= [https://mapcomplete.org/surveillance surveillance] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:fr|en}}, {{#language:pl|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:hu|en}}, {{#language:da|en}}, {{#language:nb_NO|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:cs|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:fr|en}}, {{#language:pl|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:hu|en}}, {{#language:da|en}}, {{#language:nb_NO|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:cs|en}}, {{#language:uk|en}} |descr= A MapComplete theme: Surveillance cameras and other means of surveillance |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -175,7 +175,7 @@ {{service_item |name= [https://mapcomplete.org/advertising advertising] |region= Worldwide -|lang= {{#language:ca|en}}, {{#language:es|en}}, {{#language:en|en}}, {{#language:de|en}}, {{#language:cs|en}}, {{#language:fr|en}}, {{#language:nl|en}}, {{#language:zh_Hant|en}}, {{#language:eu|en}}, {{#language:pl|en}}, {{#language:zh_Hans|en}} +|lang= {{#language:ca|en}}, {{#language:es|en}}, {{#language:en|en}}, {{#language:de|en}}, {{#language:cs|en}}, {{#language:fr|en}}, {{#language:nl|en}}, {{#language:zh_Hant|en}}, {{#language:eu|en}}, {{#language:pl|en}}, {{#language:zh_Hans|en}}, {{#language:uk|en}} |descr= A MapComplete theme: Where I can find advertising features? |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -184,7 +184,7 @@ {{service_item |name= [https://mapcomplete.org/circular_economy circular_economy] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:es|en}}, {{#language:de|en}}, {{#language:ca|en}}, {{#language:cs|en}} +|lang= {{#language:en|en}}, {{#language:es|en}}, {{#language:de|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:uk|en}}, {{#language:pl|en}} |descr= A MapComplete theme: Various items which help people to share, reuse or recycle |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -193,7 +193,7 @@ {{service_item |name= [https://mapcomplete.org/atm atm] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:nl|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:nb_NO|en}}, {{#language:es|en}}, {{#language:id|en}}, {{#language:zh_Hant|en}}, {{#language:eu|en}}, {{#language:it|en}}, {{#language:pl|en}}, {{#language:da|en}}, {{#language:zh_Hans|en}} +|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:nl|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:nb_NO|en}}, {{#language:es|en}}, {{#language:id|en}}, {{#language:zh_Hant|en}}, {{#language:eu|en}}, {{#language:it|en}}, {{#language:pl|en}}, {{#language:da|en}}, {{#language:zh_Hans|en}}, {{#language:uk|en}} |descr= A MapComplete theme: This map shows ATMs to withdraw or deposit money |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -202,7 +202,7 @@ {{service_item |name= [https://mapcomplete.org/benches benches] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:nl|en}}, {{#language:it|en}}, {{#language:ru|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:nb_NO|en}}, {{#language:pt_BR|en}}, {{#language:hu|en}}, {{#language:id|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:zh_Hans|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:eu|en}}, {{#language:pl|en}}, {{#language:pt|en}}, {{#language:fil|en}} +|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:nl|en}}, {{#language:it|en}}, {{#language:ru|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:nb_NO|en}}, {{#language:pt_BR|en}}, {{#language:hu|en}}, {{#language:id|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:zh_Hans|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:eu|en}}, {{#language:pl|en}}, {{#language:pt|en}}, {{#language:fil|en}}, {{#language:uk|en}} |descr= A MapComplete theme: A map of benches |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -211,7 +211,7 @@ {{service_item |name= [https://mapcomplete.org/bicycle_parkings bicycle_parkings] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:zh_Hans|en}}, {{#language:it|en}}, {{#language:fil|en}}, {{#language:ca|en}}, {{#language:cs|en}} +|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:zh_Hans|en}}, {{#language:it|en}}, {{#language:fil|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:uk|en}}, {{#language:pl|en}} |descr= A MapComplete theme: A map showing all types of bicycle parkings |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -220,7 +220,7 @@ {{service_item |name= [https://mapcomplete.org/bicycle_rental bicycle_rental] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:id|en}}, {{#language:fr|en}}, {{#language:es|en}}, {{#language:nb_NO|en}}, {{#language:ca|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:eu|en}}, {{#language:pl|en}}, {{#language:zh_Hans|en}}, {{#language:it|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:id|en}}, {{#language:fr|en}}, {{#language:es|en}}, {{#language:nb_NO|en}}, {{#language:ca|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:eu|en}}, {{#language:pl|en}}, {{#language:zh_Hans|en}}, {{#language:it|en}}, {{#language:uk|en}} |descr= A MapComplete theme: A map with bicycle rental stations and bicycle rental shops |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -229,7 +229,7 @@ {{service_item |name= [https://mapcomplete.org/bicyclelib bicyclelib] |region= Worldwide -|lang= {{#language:nl|en}}, {{#language:en|en}}, {{#language:it|en}}, {{#language:ru|en}}, {{#language:ja|en}}, {{#language:fr|en}}, {{#language:zh_Hant|en}}, {{#language:de|en}}, {{#language:hu|en}}, {{#language:nb_NO|en}}, {{#language:ca|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:es|en}}, {{#language:eu|en}}, {{#language:pl|en}}, {{#language:zh_Hans|en}} +|lang= {{#language:nl|en}}, {{#language:en|en}}, {{#language:it|en}}, {{#language:ru|en}}, {{#language:ja|en}}, {{#language:fr|en}}, {{#language:zh_Hant|en}}, {{#language:de|en}}, {{#language:hu|en}}, {{#language:nb_NO|en}}, {{#language:ca|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:es|en}}, {{#language:eu|en}}, {{#language:pl|en}}, {{#language:zh_Hans|en}}, {{#language:uk|en}} |descr= A MapComplete theme: A bicycle library is a place where bicycles can be lent, often for a small yearly fee |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -238,7 +238,7 @@ {{service_item |name= [https://mapcomplete.org/binoculars binoculars] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:nb_NO|en}}, {{#language:zh_Hant|en}}, {{#language:hu|en}}, {{#language:fr|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:eu|en}}, {{#language:pl|en}}, {{#language:zh_Hans|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:nb_NO|en}}, {{#language:zh_Hant|en}}, {{#language:hu|en}}, {{#language:fr|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:eu|en}}, {{#language:pl|en}}, {{#language:zh_Hans|en}}, {{#language:uk|en}} |descr= A MapComplete theme: A map with fixed binoculars |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -247,7 +247,7 @@ {{service_item |name= [https://mapcomplete.org/blind_osm blind_osm] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:nl|en}}, {{#language:fr|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:nb_NO|en}}, {{#language:es|en}}, {{#language:eu|en}}, {{#language:it|en}}, {{#language:pl|en}}, {{#language:zh_Hans|en}} +|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:nl|en}}, {{#language:fr|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:nb_NO|en}}, {{#language:es|en}}, {{#language:eu|en}}, {{#language:it|en}}, {{#language:pl|en}}, {{#language:zh_Hans|en}}, {{#language:uk|en}} |descr= A MapComplete theme: Help to map features relevant for the blind |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -256,7 +256,7 @@ {{service_item |name= [https://mapcomplete.org/campersite campersite] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:it|en}}, {{#language:ru|en}}, {{#language:ja|en}}, {{#language:fr|en}}, {{#language:zh_Hant|en}}, {{#language:nl|en}}, {{#language:pt_BR|en}}, {{#language:de|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:pt|en}} +|lang= {{#language:en|en}}, {{#language:it|en}}, {{#language:ru|en}}, {{#language:ja|en}}, {{#language:fr|en}}, {{#language:zh_Hant|en}}, {{#language:nl|en}}, {{#language:pt_BR|en}}, {{#language:de|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:pt|en}}, {{#language:uk|en}} |descr= A MapComplete theme: Find sites to spend the night with your camper |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -265,7 +265,7 @@ {{service_item |name= [https://mapcomplete.org/climbing climbing] |region= Worldwide -|lang= {{#language:nl|en}}, {{#language:de|en}}, {{#language:en|en}}, {{#language:ru|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:fr|en}}, {{#language:it|en}}, {{#language:hu|en}}, {{#language:nb_NO|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:pl|en}} +|lang= {{#language:nl|en}}, {{#language:de|en}}, {{#language:en|en}}, {{#language:ru|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:fr|en}}, {{#language:it|en}}, {{#language:hu|en}}, {{#language:nb_NO|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: On this map you will find various climbing opportunities such as climbing gyms, bouldering halls and rocks in nature |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -274,7 +274,7 @@ {{service_item |name= [https://mapcomplete.org/cycle_infra cycle_infra] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:nb_NO|en}}, {{#language:zh_Hant|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:fr|en}}, {{#language:ca|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:nb_NO|en}}, {{#language:zh_Hant|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:fr|en}}, {{#language:ca|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: A map where you can view and edit things related to the bicycle infrastructure. |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -283,7 +283,7 @@ {{service_item |name= [https://mapcomplete.org/cyclestreets cyclestreets] |region= Worldwide -|lang= {{#language:nl|en}}, {{#language:en|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:nb_NO|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:hu|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:pl|en}} +|lang= {{#language:nl|en}}, {{#language:en|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:nb_NO|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:hu|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: A map of cyclestreets |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -292,7 +292,7 @@ {{service_item |name= [https://mapcomplete.org/disaster_response disaster_response] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:it|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:cs|en}} +|lang= {{#language:en|en}}, {{#language:it|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:uk|en}} |descr= A MapComplete theme: This map contains elements meant for disaster preparedness and response |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -301,7 +301,7 @@ {{service_item |name= [https://mapcomplete.org/education education] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:ca|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:es|en}}, {{#language:pl|en}}, {{#language:it|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:ca|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:es|en}}, {{#language:pl|en}}, {{#language:it|en}}, {{#language:uk|en}} |descr= A MapComplete theme: On this map, you'll find information about all types of schools and education and can easily add more information |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -310,7 +310,7 @@ {{service_item |name= [https://mapcomplete.org/elongated_coin elongated_coin] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: Find penny presses to create your own elongated coins |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -319,7 +319,7 @@ {{service_item |name= [https://mapcomplete.org/facadegardens facadegardens] |region= Worldwide -|lang= {{#language:nl|en}}, {{#language:en|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:it|en}}, {{#language:fr|en}}, {{#language:de|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:ca|en}}, {{#language:pl|en}} +|lang= {{#language:nl|en}}, {{#language:en|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:it|en}}, {{#language:fr|en}}, {{#language:de|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:ca|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: This map shows facade gardens with pictures and useful info about orientation, sunshine and plant types. |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -328,7 +328,7 @@ {{service_item |name= [https://mapcomplete.org/fireplace fireplace] |region= Worldwide -|lang= {{#language:de|en}}, {{#language:en|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:cs|en}} +|lang= {{#language:de|en}}, {{#language:en|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:uk|en}} |descr= A MapComplete theme: Outdoor place to make a fire or a fixed barbecue in an official place |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -337,7 +337,7 @@ {{service_item |name= [https://mapcomplete.org/fritures fritures] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: On this map, you'll find your favourite fries shop! |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -346,7 +346,7 @@ {{service_item |name= [https://mapcomplete.org/ghostbikes ghostbikes] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:fr|en}}, {{#language:it|en}}, {{#language:hu|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:fr|en}}, {{#language:it|en}}, {{#language:hu|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: A ghost bike is a memorial for a cyclist who died in a traffic accident, in the form of a white bicycle placed permanently near the accident location |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -355,7 +355,7 @@ {{service_item |name= [https://mapcomplete.org/ghostsigns ghostsigns] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:cs|en}} +|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:uk|en}} |descr= A MapComplete theme: A map showing disused signs on buildings |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -364,7 +364,7 @@ {{service_item |name= [https://mapcomplete.org/glutenfree glutenfree] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:cs|en}} +|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:uk|en}} |descr= A MapComplete theme: A crowdsourced map with glutenfree items |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -373,7 +373,7 @@ {{service_item |name= [https://mapcomplete.org/guideposts guideposts] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:cs|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:cs|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: Guideposts (also known as fingerposts or finger posts) are often found along official hiking, cycling, skiing or horseback riding routes to indicate the directions to different destinations The position of a signpost can be used by a hiker/biker/rider/s… @@ -384,7 +384,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/hackerspaces hackerspaces] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:zh_Hant|en}}, {{#language:hu|en}}, {{#language:nl|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:zh_Hant|en}}, {{#language:hu|en}}, {{#language:nl|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: A map of hackerspaces |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -393,7 +393,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/hailhydrant hailhydrant] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:ru|en}}, {{#language:fr|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:nl|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:ru|en}}, {{#language:fr|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:nl|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: Map to show hydrants, extinguishers, fire stations, and ambulance stations. |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -402,7 +402,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/hotels hotels] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:da|en}}, {{#language:nb_NO|en}}, {{#language:nl|en}}, {{#language:fr|en}}, {{#language:cs|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:pl|en}}, {{#language:it|en}} +|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:da|en}}, {{#language:nb_NO|en}}, {{#language:nl|en}}, {{#language:fr|en}}, {{#language:cs|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:pl|en}}, {{#language:it|en}}, {{#language:uk|en}} |descr= A MapComplete theme: On this map, you'll find hotels in your area |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -420,7 +420,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/indoors indoors] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:nl|en}}, {{#language:cs|en}}, {{#language:nb_NO|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:pl|en}}, {{#language:it|en}} +|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:nl|en}}, {{#language:cs|en}}, {{#language:nb_NO|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:pl|en}}, {{#language:it|en}}, {{#language:uk|en}} |descr= A MapComplete theme: On this map, publicly accessible indoor places are shown |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -429,7 +429,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/kerbs_and_crossings kerbs_and_crossings] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:nb_NO|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:nb_NO|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: A map showing kerbs and crossings |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -438,7 +438,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/lactosefree lactosefree] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:cs|en}} +|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:uk|en}} |descr= A MapComplete theme: A crowdsourced map with lactose free shops and restaurants |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -447,7 +447,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/lighthouses lighthouses] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:es|en}}, {{#language:cs|en}} +|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:es|en}}, {{#language:cs|en}}, {{#language:uk|en}} |descr= A MapComplete theme: Lighthouses are tall buildings with a light on top to guide marine traffic |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -456,7 +456,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/maps maps] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:fr|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:es|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:ca|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:fr|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:es|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:ca|en}}, {{#language:pl|en}}, {{#language:ru|en}}, {{#language:uk|en}} |descr= A MapComplete theme: This theme shows all (touristic) maps that OpenStreetMap knows of |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -465,7 +465,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/maxspeed maxspeed] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:nl|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:zh_Hant|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:nl|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:zh_Hant|en}}, {{#language:pl|en}}, {{#language:ru|en}}, {{#language:uk|en}} |descr= A MapComplete theme: This map shows the legally allowed maximum speed on every road. |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -474,7 +474,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/memorials memorials] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:nl|en}}, {{#language:es|en}} +|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:nl|en}}, {{#language:es|en}}, {{#language:cs|en}}, {{#language:uk|en}} |descr= A MapComplete theme: Memorials are physical objects permantently placed in the public space to remember a person or event |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -483,7 +483,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/nature nature] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:ca|en}}, {{#language:zh_Hant|en}}, {{#language:pl|en}}, {{#language:it|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:ca|en}}, {{#language:zh_Hant|en}}, {{#language:pl|en}}, {{#language:it|en}}, {{#language:ru|en}}, {{#language:uk|en}} |descr= A MapComplete theme: A map for nature lovers, with interesting POI's |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -492,7 +492,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/notes notes] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:hu|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:ca|en}}, {{#language:zh_Hant|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:hu|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:ca|en}}, {{#language:zh_Hant|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: A note is a pin on the map with some text to indicate something wrong |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -501,7 +501,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/observation_towers observation_towers] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:zh_Hant|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:fr|en}}, {{#language:nb_NO|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:ca|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:zh_Hant|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:fr|en}}, {{#language:nb_NO|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:ca|en}}, {{#language:pl|en}}, {{#language:ru|en}}, {{#language:uk|en}} |descr= A MapComplete theme: Publicly accessible towers to enjoy the view |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -510,7 +510,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/onwheels onwheels] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:nl|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:pl|en}}, {{#language:it|en}} +|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:nl|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:pl|en}}, {{#language:it|en}}, {{#language:uk|en}} |descr= A MapComplete theme: On this map, publicly weelchair accessible places are shown and can be easily added |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -519,7 +519,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/openwindpowermap openwindpowermap] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:fr|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:zh_Hant|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:nl|en}}, {{#language:da|en}}, {{#language:nb_NO|en}}, {{#language:cs|en}}, {{#language:ca|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:fr|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:zh_Hant|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:nl|en}}, {{#language:da|en}}, {{#language:nb_NO|en}}, {{#language:cs|en}}, {{#language:ca|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: A map for showing and editing wind turbines |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -528,7 +528,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/osm_community_index osm_community_index] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:nl|en}}, {{#language:fr|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:nl|en}}, {{#language:fr|en}}, {{#language:es|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: An index of community resources for OpenStreetMap. |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -537,7 +537,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/parkings parkings] |region= Worldwide -|lang= {{#language:nl|en}}, {{#language:en|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:nb_NO|en}}, {{#language:zh_Hant|en}}, {{#language:id|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:pl|en}} +|lang= {{#language:nl|en}}, {{#language:en|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:nb_NO|en}}, {{#language:zh_Hant|en}}, {{#language:id|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: This map shows different parking spots |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -546,7 +546,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/pets pets] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:da|en}}, {{#language:de|en}}, {{#language:nl|en}}, {{#language:fr|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:cs|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:da|en}}, {{#language:de|en}}, {{#language:nl|en}}, {{#language:fr|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:ru|en}}, {{#language:uk|en}} |descr= A MapComplete theme: On this map, you'll find various interesting places for you pets: veterinarians, dog parks, pet shops, dog-friendly restaurants, |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -555,7 +555,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/postboxes postboxes] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:zh_Hant|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:nl|en}}, {{#language:fr|en}}, {{#language:nb_NO|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:zh_Hant|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:nl|en}}, {{#language:fr|en}}, {{#language:nb_NO|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: A map showing postboxes and post offices |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -564,7 +564,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/rainbow_crossings rainbow_crossings] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:nl|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:cs|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:nl|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: On this map, rainbow-painted pedestrian crossings are shown and can be easily added |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -573,7 +573,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/ski ski] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:es|en}} +|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:cs|en}}, {{#language:uk|en}} |descr= A MapComplete theme: Everything you need to go skiing |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -582,7 +582,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/sport_pitches sport_pitches] |region= Worldwide -|lang= {{#language:nl|en}}, {{#language:fr|en}}, {{#language:en|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:ru|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:pl|en}} +|lang= {{#language:nl|en}}, {{#language:fr|en}}, {{#language:en|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:ru|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:hu|en}}, {{#language:es|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: A map showing sport pitches |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -591,7 +591,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/street_lighting street_lighting] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:zh_Hant|en}}, {{#language:hu|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:nb_NO|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:it|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:zh_Hant|en}}, {{#language:hu|en}}, {{#language:de|en}}, {{#language:es|en}}, {{#language:fr|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:nb_NO|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:it|en}}, {{#language:uk|en}} |descr= A MapComplete theme: On this map you can find everything about street lighting |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -609,7 +609,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/trees trees] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:fr|en}}, {{#language:it|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:ru|en}}, {{#language:pl|en}}, {{#language:de|en}}, {{#language:nb_NO|en}}, {{#language:hu|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:da|en}}, {{#language:cs|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:fr|en}}, {{#language:it|en}}, {{#language:ja|en}}, {{#language:zh_Hant|en}}, {{#language:ru|en}}, {{#language:pl|en}}, {{#language:de|en}}, {{#language:nb_NO|en}}, {{#language:hu|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:da|en}}, {{#language:cs|en}}, {{#language:uk|en}} |descr= A MapComplete theme: Map all the trees |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -618,7 +618,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/waste_basket waste_basket] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:zh_Hant|en}}, {{#language:hu|en}}, {{#language:fr|en}}, {{#language:nb_NO|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:cs|en}}, {{#language:pl|en}} +|lang= {{#language:en|en}}, {{#language:nl|en}}, {{#language:de|en}}, {{#language:it|en}}, {{#language:zh_Hant|en}}, {{#language:hu|en}}, {{#language:fr|en}}, {{#language:nb_NO|en}}, {{#language:da|en}}, {{#language:ca|en}}, {{#language:es|en}}, {{#language:cs|en}}, {{#language:pl|en}}, {{#language:uk|en}} |descr= A MapComplete theme: A map with waste baskets |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png diff --git a/README.md b/README.md index 98b5a9ba5..06e11ee14 100644 --- a/README.md +++ b/README.md @@ -114,8 +114,6 @@ A typical user journey would be: 7. At 250 changesets, the tags get linked to the wiki. -8. At 500 changesets, I expect contributors to be power users and to be comfortable with tagging schemes and such. The - custom theme generator is unlocked. ## License diff --git a/assets/layers/address/address.json b/assets/layers/address/address.json index d1f48c6f5..edc51c900 100644 --- a/assets/layers/address/address.json +++ b/assets/layers/address/address.json @@ -22,7 +22,8 @@ "pt_BR": "Endereços conhecidos no OSM", "eu": "OSMko helbide ezagunak", "pl": "Znane adresy w OSM", - "it": "Indirizzo presente su OSM" + "it": "Indirizzo presente su OSM", + "uk": "Відомі адреси в OSM" }, "description": { "en": "Addresses", @@ -47,7 +48,8 @@ "pt_BR": "Endereços", "he": "כתובות", "eu": "Helbideak", - "it": "Indirizzi" + "it": "Indirizzi", + "uk": "Адреси" }, "source": { "osmTags": { @@ -73,7 +75,7 @@ "fr": "Adresse connue", "pl": "Znany adres", "ru": "Известный адрес", - "es": "Domicilio conocido", + "es": "Dirección conocida", "zh_Hans": "已知的地址", "id": "Alamat yang diketahui", "nb_NO": "Kjent adresse", @@ -85,7 +87,8 @@ "he": "כתובת ידועה", "eu": "Helbide ezaguna", "it": "Indirizzo conosciuto", - "zh_Hant": "已知的地址" + "zh_Hant": "已知的地址", + "uk": "Відома адреса" } }, "pointRendering": [ @@ -162,7 +165,7 @@ "ru": "Номер дома {addr:housenumber}", "zh_Hans": "门牌号是 {addr:housenumber}", "id": "Nomor rumah ini {addr:housenumber}", - "es": "El número de puerta es {addr:housenumber}", + "es": "El número de la casa es {addr:housenumber}", "da": "Husnummeret er {addr:housenumber}", "cs": "Číslo domu je {addr:housenumber}", "pt": "O número da casa é {addr:housenumber}", @@ -172,7 +175,8 @@ "he": "מספר הבית הוא {addr:housenumber}", "eu": "Etxearen zenbakia {addr:housenumber} da", "it": "Il numero civico della casa è {addr:housenumber}", - "zh_Hant": "門牌號碼是 {addr:housenumber}" + "zh_Hant": "門牌號碼是 {addr:housenumber}", + "uk": "Номер будинку {addr:housenumber}" }, "question": { "en": "What is the number of this house?", @@ -194,7 +198,8 @@ "he": "מה המספר של הבית הזה?", "eu": "Zein da etxe honen zenbakia?", "it": "Qual è il numero civico di questa casa?", - "zh_Hant": "這間房子的門牌號碼是多少?" + "zh_Hant": "這間房子的門牌號碼是多少?", + "uk": "Який номер цього будинку?" }, "freeform": { "key": "addr:housenumber", @@ -221,7 +226,7 @@ "pl": "Ten budynek nie ma numeru", "ru": "У этого здания нет номера", "id": "Bangunan ini tidak memiliki nomor rumah", - "es": "Esta edificación no tiene número", + "es": "Este edificio no tiene número", "zh_Hans": "这个建筑物没有门牌号", "da": "Denne bygning har intet husnummer", "zh_Hant": "這棟建築沒有門牌", @@ -232,7 +237,8 @@ "pt_BR": "Este prédio não tem número", "he": "למבנה זה אין מספר בית", "eu": "Eraikin honek ez du etxe zenbakirik", - "it": "Questo edificio non ha indirizzo" + "it": "Questo edificio non ha indirizzo", + "uk": "Ця будівля не має номера будинку" } } ] @@ -248,7 +254,7 @@ "pl": "Ten adres znajduje się na ulicy {addr:street}", "zh_Hans": "这个地址位于{addr:street}街", "id": "Alamat ini ada di jalan {addr:street}", - "es": "La dirección está en esta calle {addr:street}", + "es": "Esta dirección está en la calle {addr:street}", "da": "Denne adresse er på gaden {addr:street}", "cs": "Tato adresa se nachází v ulici {addr:street}", "ca": "L'adreça està a aquest carrer {addr:street}", @@ -257,7 +263,8 @@ "he": "כתובת זו נמצאת ברחוב {addr:street}", "eu": "Helbide hau {addr:street} kalean dago", "it": "L’indirizzo è in via {addr:street}", - "zh_Hant": "此地址位於街道 {addr:street}" + "zh_Hant": "此地址位於街道 {addr:street}", + "uk": "Ця адреса знаходиться на вулиці {addr:street}" }, "question": { "en": "What street is this address located in?", @@ -278,7 +285,8 @@ "he": "באיזה רחוב נמצאת הכתובת הזו?", "eu": "Zein kaletan dago helbide hori?", "it": "Qual è la via in cui si trova?", - "zh_Hant": "地址所在的道路是?" + "zh_Hant": "地址所在的道路是?", + "uk": "На якій вулиці знаходиться ця адреса?" }, "freeform": { "key": "addr:street" @@ -317,7 +325,7 @@ "fr": "Précisez ce qui devrait être corrigé ici", "pl": "Co wymaga naprawy? Proszę wytłumaczyć", "id": "Apa yang harus diperbaiki di sini? Tolong jelaskan", - "es": "¿Qué debe corregirse aquí? Expóngalo", + "es": "¿Qué debería corregirse aquí? Explica", "nl": "Wat moet hier gecorrigeerd worden? Leg het uit", "zh_Hans": "这里应被如何修复?请做出解释", "da": "Hvad skal rettes her? Forklar venligst", @@ -329,7 +337,8 @@ "he": "מה צריך לתקן כאן? אנא הסבר", "eu": "Zer konpondu behar da hemen? Azaldu mesedez", "it": "Indica cosa deve essere corretto qui", - "ru": "Что исправить? Пожалуйста, предложите" + "ru": "Что исправить? Пожалуйста, предложите", + "uk": "Що тут треба виправити? Поясніть, будь ласка" }, "freeform": { "key": "fixme" diff --git a/assets/layers/advertising/advertising.json b/assets/layers/advertising/advertising.json index dc5be8404..e034e2f99 100644 --- a/assets/layers/advertising/advertising.json +++ b/assets/layers/advertising/advertising.json @@ -2,7 +2,7 @@ "id": "advertising", "name": { "ca": "Publicitat", - "es": "Anuncio", + "es": "Publicidad", "en": "Advertisement", "de": "Werbeeinrichtungen", "cs": "Reklama", @@ -16,11 +16,12 @@ "it": "Pubblicità", "zh_Hant": "廣告", "fr": "Publicité", - "ru": "Реклама" + "ru": "Реклама", + "uk": "Оголошення" }, "description": { "ca": "Completarem les dades dels elements publicitaris amb referència, operador i il·luminació", - "es": "Completaremos los datos de los elementos publicitarios con referencia, operador y iluminación", + "es": "Completaremos los datos de los elementos publicitarios con referencia, operador e iluminación", "en": "We will complete data from advertising features with reference, operator and lit", "de": "Wir vervollständigen Daten von Werbeanlagen mit Referenz-, Betreiber- und Beleuchtungsdaten", "cs": "Doplníme údaje z reklamních prvků s referencemi, provozovatelem a osvětlením", @@ -29,7 +30,8 @@ "pl": "Uzupełnimy dane z obiektów reklamowych o referencję, operatora i oświetlenie", "pt_BR": "Completaremos os dados das características de publicidade com referência, operador e iluminação", "it": "Completeremo i dati da caratteristiche pubblicitarie, con referenza, operatore e illuminazione", - "fr": "Nous allons compléter les information sur la publicité avec la référence, l'opérateur et l'éclairage" + "fr": "Nous allons compléter les information sur la publicité avec la référence, l'opérateur et l'éclairage", + "uk": "Ми доповнимо дані з рекламних об'єктів посиланням, оператором та освітленням" }, "source": { "osmTags": { @@ -72,7 +74,7 @@ }, "then": { "ca": "Tauló d'anuncis", - "es": "Tablon de anuncios", + "es": "Tablero", "en": "Board", "de": "Brett", "cs": "Deska", @@ -91,7 +93,7 @@ }, "then": { "ca": "Mupi", - "es": "Mupi", + "es": "Expositor de carteles", "en": "Poster Box", "de": "Posterbox", "cs": "Skříň na plakáty", @@ -193,7 +195,7 @@ }, "then": { "ca": "Cartell", - "es": "Cartel", + "es": "Letrero", "en": "Sign", "de": "Schild", "cs": "Cedule", @@ -254,7 +256,7 @@ }, "then": { "ca": "Paret Pintada", - "es": "Pared Pintada", + "es": "Mural", "en": "Wall painting", "de": "Wandmalerei", "cs": "Nástěnná malba", @@ -425,7 +427,7 @@ "title": { "en": "a billboard", "ca": "una tanca publicitària", - "es": "una valla publicitària", + "es": "una valla publicitaria", "de": "eine Werbetafel", "cs": "billboard", "pt": "um outdoor", @@ -437,12 +439,13 @@ "zh_Hans": "一块广告牌", "it": "un cartellone", "zh_Hant": "一塊告示牌", - "ru": "билборд" + "ru": "билборд", + "uk": "білборд" }, "description": { "en": "A large outdoor advertising structure, typically found in high-traffic areas such as alongside busy roads", "ca": "Una estructura publicitària gran a l'exterior, que normalment es troba a zones transitades com ara al costat de carreteres amb molta intensitat", - "es": "Una estructura publicitaria grande al aire libre, que normalmente se encuentra en áreas transitadas como carreteras con mucha intensidad", + "es": "Una gran estructura publicitaria exterior, que normalmente se encuentra en áreas de mucho tráfico, como junto a carreteras concurridas", "de": "Eine große Außenwerbung, die typischerweise in stark befahrenen Gebieten, z. B. entlang stark befahrener Straßen, zu finden ist", "cs": "Velká venkovní reklamní konstrukce, která se obvykle nachází na místech s velkým provozem, například podél frekventovaných silnic", "fr": "Un grand équipement extérieur, principalement disposé dans les zones à fort trafic comme une route", @@ -451,7 +454,8 @@ "eu": "Atari zabaleko publizitate-egitura handia, trafiko handiko eremuetan egon ohi dena, adibidez errepideen ondoan", "pl": "Duża struktura reklamowa na dworze, zwykle znajdująca się w obszarach z dużym ruchem, np. w pobliżu ruchliwych dróg", "pt_BR": "Uma grande estrutura de publicidade outdoor, geralmente encontrada em áreas com alto tráfego, como ao longo de estradas movimentadas", - "it": "Grande struttura pubblicitaria all'aperto, trovata normalmente in aree ad alto traffico come accanto a strade molto trafficate" + "it": "Grande struttura pubblicitaria all'aperto, trovata normalmente in aree ad alto traffico come accanto a strade molto trafficate", + "uk": "Велика зовнішня рекламна конструкція, зазвичай розташована в місцях з високим трафіком, наприклад, уздовж жвавих доріг" }, "exampleImages": [ "./assets/themes/advertising/KFC_Billboard.jpg", @@ -471,7 +475,8 @@ "de": "Eine an einer Wand montierte Werbetafel", "cs": "billboard připevněný na stěnu", "ca": "un cartell muntat a una paret", - "es": "una valla publicitaria montada en un muro" + "es": "una valla publicitaria montada en una pared", + "uk": "білборд, прикріплений до стіни" }, "description": { "en": "A large outdoor advertising structure, typically found in high-traffic areas such as alongside busy roads mounted on a wall", @@ -479,7 +484,8 @@ "cs": "Velká venkovní reklamní konstrukce, která se obvykle nachází na frekventovaných místech, například podél frekventovaných silnic, umístěná na zdi", "pl": "Duży obiekt reklamowy na zewnątrz, zazwyczaj znajduje się w obszarach z dużym ruchem, np. obok ruchliwych dróg na ścianie", "ca": "Una gran estructura publicitària exterior, que normalment es troba en zones de gran trànsit, com ara al costat de carreteres transitades muntades a una paret", - "es": "Una gran estructura de publicidad exterior, que suele encontrarse en zonas de mucho tráfico, por ejemplo, junto a carreteras muy transitadas" + "es": "Una gran estructura publicitaria exterior, que normalmente se encuentra en áreas de mucho tráfico, como junto a carreteras concurridas, montada en una pared", + "uk": "Велика зовнішня рекламна конструкція, зазвичай розташована в місцях з високим трафіком, наприклад, уздовж жвавих доріг, встановлена на стіні" }, "exampleImages": [ "./assets/themes/advertising/billboard_wall.jpg" @@ -492,7 +498,7 @@ "title": { "en": "a freestanding poster box", "ca": "un mupi", - "es": "un mupi", + "es": "un expositor de carteles independiente", "de": "eine freistehende Posterbox", "cs": "volně stojící plakátovací skříň", "pt": "uma caixa de pôster independente", @@ -500,7 +506,8 @@ "pl": "wolnostojąca skrzynka plakatowa", "pt_BR": "uma caixa expositora independente", "it": "un cartellone pubblicitario fissato a terra", - "zh_Hant": "獨自設立的海報框" + "zh_Hant": "獨自設立的海報框", + "uk": "окремо стояча коробка для плакатів" }, "exampleImages": [ "./assets/themes/advertising/Mupi_spain.jpg", @@ -514,7 +521,7 @@ "title": { "en": "a poster box mounted on a wall", "ca": "un mupi sobre la paret", - "es": "un mupi sobre la pared", + "es": "un expositor de carteles montado en una pared", "de": "eine wandmontierte Posterbox", "cs": "plakátovací skříň připevněná na stěnu", "pt": "uma caixa de pôster montada em uma parede", @@ -522,7 +529,8 @@ "pl": "skrzynka plakatowa montowana na ścianie", "pt_BR": "uma caixa de pôster montada em uma parede", "zh_Hans": "安装在墙上的海报盒子", - "it": "un cartellone pubblicitario fissato al muro" + "it": "un cartellone pubblicitario fissato al muro", + "uk": "коробка для плакатів, що кріпиться на стіну" }, "snapToLayer": [ "walls_and_buildings" @@ -538,9 +546,10 @@ "de": "ein Plakatkasten, der zu einem Unterstand für öffentliche Verkehrsmittel gehört", "fr": "Un affichage sur un abribus", "it": "un contenitore di poster pubblicitari di una pensilina del trasporto pubblico", - "es": "una caja de carteles que forma parte de una marquesina de transporte público", + "es": "un expositor de carteles que forma parte de un refugio de transporte público", "cs": "plakátovací skříňka, která je součástí přístřešku veřejné dopravy", - "ca": "un mupi que forma part d'un refugi de transport públic" + "ca": "un mupi que forma part d'un refugi de transport públic", + "uk": "афішна скринька, що є частиною зупинки громадського транспорту" }, "snapToLayer": [ "shelter" @@ -552,7 +561,7 @@ ], "title": { "ca": "un tauló d'anunis", - "es": "un tablón de anuncios", + "es": "un tablero", "en": "a board", "de": "ein Anschlagbrett", "cs": "billboard", @@ -561,11 +570,12 @@ "pt": "a bordo", "pl": "tablica", "pt_BR": "um painel publicitário", - "it": "un piccolo pannello" + "it": "un piccolo pannello", + "uk": "дошка" }, "description": { "en": "Small billboard for neighbourhood advertising, generally intended for pedestrians", - "es": "Un pequeño tablón de anuncios para anuncios del vecindario, normalmente destinado a peatones", + "es": "Pequeña valla publicitaria para publicidad vecinal, generalmente destinada a peatones", "ca": "Un xicotet tauló d'anuncics per a anuncis del veïnat, normalment destitat a peatons", "de": "Kleines Anschlagbrett für Nachbarschaftswerbung, normalerweise an Fußgänger gerichtet", "cs": "Malý billboard pro sousedskou reklamu, zpravidla určený pro chodce", @@ -574,7 +584,8 @@ "pt": "Pequeno outdoor para publicidade de bairro, geralmente destinado a pedestres", "pl": "Mały bilbord dla reklam lokalnych, przeznaczony głównie dla pieszych", "pt_BR": "Pequeno outdoor para publicidade local, geralmente destinado a pedestres", - "it": "PIccolo pannello per la pubblicità di vicinanza, generalmente destinato ai pedoni" + "it": "PIccolo pannello per la pubblicità di vicinanza, generalmente destinato ai pedoni", + "uk": "Невеликий білборд для місцевої реклами, в основному призначений для пішоходів" }, "exampleImages": [ "./assets/themes/advertising/local_Board.jpg", @@ -598,11 +609,12 @@ "pl": "kolumna", "pt_BR": "uma coluna", "it": "una colonna", - "ru": "столбец" + "ru": "столбец", + "uk": "стовпчик" }, "description": { "en": "A cylindrical outdoor structure which shows advertisements", - "es": "Una estructura cilíndrica exterior que muestra publicidad", + "es": "Una estructura cilíndrica exterior que muestra anuncios", "ca": "Una extructura cilíndica exterior que mostra publicitat", "de": "Eine zylindrische Struktur im Freien, die Werbung zeigt", "cs": "Válcová venkovní konstrukce, která zobrazuje reklamy", @@ -611,7 +623,8 @@ "pt": "Uma estrutura exterior cilíndrica que mostra anúncios", "pl": "Cylindryczna konstrukcja zewnętrzna, na której pokazywane są reklamy", "pt_BR": "Uma estrutura cilíndrica ao ar livre que exibe anúncios", - "it": "Una struttura cilindrica all'esterno con affissa della pubblicità" + "it": "Una struttura cilindrica all'esterno con affissa della pubblicità", + "uk": "Циліндрична зовнішня конструкція, що показує рекламу" }, "exampleImages": [ "./assets/themes/advertising/AdvertisingColumn_001.jpg", @@ -635,7 +648,8 @@ "pl": "flaga", "pt_BR": "uma bandeira", "zh_Hans": "一个旗子", - "it": "una bandiera" + "it": "una bandiera", + "uk": "прапор" }, "exampleImages": [ "./assets/themes/advertising/Advertising_flag.jpg", @@ -658,7 +672,8 @@ "pl": "ekran", "pt_BR": "uma tela", "zh_Hans": "一块屏幕", - "it": "uno schermo" + "it": "uno schermo", + "uk": "екран" }, "exampleImages": [ "./assets/themes/advertising/Screen_poster_box.jpg", @@ -671,7 +686,7 @@ ], "title": { "ca": "una patalla sobre una paret", - "es": "una pantalla sobre una pared", + "es": "una pantalla montada en una pared", "en": "a screen mounted on a wall", "de": "ein wandmontierter Bildschirm", "cs": "obrazovka připevněná na stěnu", @@ -681,7 +696,8 @@ "pl": "ekran zamontowany na ścianie", "pt_BR": "uma tela montada em uma parede", "zh_Hans": "一块挂在墙上的屏幕", - "it": "uno schermo fissato al muro" + "it": "uno schermo fissato al muro", + "uk": "екран, встановлений на стіні" }, "exampleImages": [ "./assets/themes/advertising/Subway_screen.jpg", @@ -703,9 +719,10 @@ "de": "ein Bildschirm, der an einem Wartehäuschen angebracht ist", "fr": "un écran fixé sur un abri de transport", "it": "uno schermo montato su una pensilina del traporto pubblico", - "es": "una pantalla montada en una marquesina de tránsito", + "es": "una pantalla montada en un refugio de transporte público", "cs": "obrazovka namontovaná na dopravním přístřešku", - "ca": "una pantalla muntada en una marquesina" + "ca": "una pantalla muntada en una marquesina", + "uk": "екран, встановлений на тимчасовому укритті" }, "snapToLayer": [ "shelter" @@ -728,12 +745,13 @@ "pl": "plandeka", "pt_BR": "uma lona", "zh_Hans": "防水布", - "it": "un telone" + "it": "un telone", + "uk": "брезент" }, "description": { "en": "A piece of waterproof textile with a printed message, permanently anchored on a wall", "ca": "Una peça de tèxtil impermeable amb un missatge imprès, fixada permanentment a una paret", - "es": "Una pieza de tela impermeable con un mensaje impreso, anclada permanentemente en una pared", + "es": "Un trozo de textil impermeable con un mensaje impreso, anclado permanentemente en una pared", "de": "Ein wasserfestes Textil mit einer aufgedruckten Botschaft, das dauerhaft an einer Wand verankert ist", "cs": "Kus nepromokavého textilu s natištěným vzkazem, trvale připevněný na stěnu", "nl": "Een stuk groot, weerbestendig textiel met opgedrukte reclameboodschap die permanent aan de muur hangt", @@ -741,7 +759,8 @@ "fr": "Une pièce de textile imperméable avec un message imprimé, ancrée de façon permanente sur un mur.", "pl": "Kawałek wodoodpornej tkaniny z nadrukowanym przesłaniem, trwale przymocowany do ściany", "pt_BR": "Um pedaço de tecido impermeável com uma mensagem impressa, permanentemente fixado a uma parede", - "it": "Un telo impermeabile con un messaggio stampato, fissato in modo permanente al muro" + "it": "Un telo impermeabile con un messaggio stampato, fissato in modo permanente al muro", + "uk": "Шматок водонепроникного текстилю з надрукованим повідомленням, постійно закріплений на стіні" }, "exampleImages": [ "./assets/themes/advertising/tarp_feder.jpg", @@ -767,7 +786,8 @@ "pl": "totem", "pt_BR": "um totem", "zh_Hans": "图腾", - "it": "un totem" + "it": "un totem", + "uk": "тотем" }, "exampleImages": [ "./assets/themes/advertising/AdvertisingTotem_004.jpg", @@ -781,7 +801,7 @@ ], "title": { "ca": "un lletrer", - "es": "un señal", + "es": "un letrero", "en": "a sign", "de": "ein Schild", "cs": "cedule", @@ -791,11 +811,12 @@ "eu": "letrero bat", "pl": "znak", "zh_Hans": "标志", - "it": "un'insegna" + "it": "un'insegna", + "uk": "знак" }, "description": { "en": "Used for advertising signs, neon signs, logos & institutional entrance signs", - "es": "Se utiliza para carteles publicitarios, letreros de neón, logotipos y carteles en entradas institucionales", + "es": "Se utiliza para carteles publicitarios, letreros de neón, logotipos y letreros de entrada institucionales", "ca": "S'utilitza per a cartells publicitaris, rètols de neó, logotips i cartells en entrades institucionals", "de": "Verwendet für Werbeschilder, Leuchtreklamen, Logos und institutionelle Eingangsschilder", "cs": "Používá se pro reklamní nápisy, neonové nápisy, loga a vstupní nápisy institucí", @@ -804,7 +825,8 @@ "eu": "Iragarki publizitarioetarako, neon-karteletarako, logotipoetarako eta erakundeen sarrera-seinaleetarako erabiltzen da", "pl": "Używany do znaków reklamowych, neonów, logo i znaków wejściowych do instytucji", "pt_BR": "Usado para placas de publicidade, letreiros de neon, logotipos e placas de entrada institucionais", - "it": "Utilizzato per insegna pubblicitaria, un'insegna al neon, i loghi o le indicazioni d'entrata" + "it": "Utilizzato per insegna pubblicitaria, un'insegna al neon, i loghi o le indicazioni d'entrata", + "uk": "Використовується для рекламних вивісок, неонових вивісок, логотипів та вхідних табличок установ" }, "exampleImages": [ "./assets/themes/advertising/Waitrose_sign.jpg", @@ -832,7 +854,8 @@ "pl": "rzeźba", "pt_BR": "uma escultura", "zh_Hans": "雕像", - "it": "una scultura" + "it": "una scultura", + "uk": "скульптура" }, "exampleImages": [ "./assets/themes/advertising/Aircraft_Sculpture.jpg", @@ -846,7 +869,7 @@ ], "title": { "ca": "una paret pintada", - "es": "una pared pintada", + "es": "un mural", "en": "a wall painting", "de": "eine Wandmalerei", "cs": "nástěnná malba", @@ -857,7 +880,8 @@ "pl": "mural ścienny", "pt_BR": "uma pintura mural", "zh_Hans": "墙上的画", - "it": "un murales" + "it": "un murales", + "uk": "настінний розпис" }, "exampleImages": [ "./assets/themes/advertising/Capitol_wall.jpg", @@ -875,7 +899,7 @@ "id": "type", "render": { "ca": "Açò és un {advertising}", - "es": "Esto es un {advertising}", + "es": "Se trata de un {advertising}", "en": "This is a {advertising}", "de": "Das ist ein/e {advertising}", "cs": "Toto je {advertising}", @@ -889,7 +913,7 @@ }, "question": { "ca": "Quin tipus d'element publicitari és aquest?", - "es": "¿Qué tipo de elemento publicitario es?", + "es": "¿Qué tipo de elemento publicitario es este?", "en": "Which type of advertising feature is this?", "de": "Welche Art von Werbung ist das?", "cs": "O jaký typ reklamního prvku se jedná?", @@ -907,7 +931,7 @@ "if": "advertising=billboard", "then": { "ca": "Açò és una tanca publicitària", - "es": "Esto es una valla publicitaria", + "es": "Se trata de una valla publicitaria", "en": "This is a billboard", "de": "Dies ist eine Werbetafel", "cs": "Toto je billboard", @@ -916,7 +940,8 @@ "he": "זה שלט חוצות", "pl": "To jest bilbord", "pt_BR": "Isso é um outdoor", - "zh_Hans": "这是一个广告牌" + "zh_Hans": "这是一个广告牌", + "uk": "Це білборд" }, "icon": { "path": "./assets/themes/advertising/billboard.svg", @@ -927,7 +952,7 @@ "if": "advertising=board", "then": { "ca": "Açò és un tauló d'anuncis", - "es": "Esto es un tablón de anuncios", + "es": "Se trata de un tablero", "en": "This is a board", "de": "Dies ist ein Brett", "cs": "Toto je deska", @@ -935,7 +960,8 @@ "pt": "Isso é uma placa", "pl": "To jest tablica", "pt_BR": "Isso é uma placa", - "zh_Hans": "这是一块板" + "zh_Hans": "这是一块板", + "uk": "Це дошка" }, "icon": { "path": "./assets/themes/advertising/board.svg", @@ -946,7 +972,7 @@ "if": "advertising=column", "then": { "ca": "Açò és una columna", - "es": "Esto es una columna", + "es": "Se trata de una columna", "en": "This is a column", "de": "Dies ist eine Litfaßsäule", "cs": "Toto je sloup", @@ -966,7 +992,7 @@ "if": "advertising=flag", "then": { "ca": "Açò és una bandera", - "es": "Esto es una bandera", + "es": "Se trata de una bandera", "en": "This is a flag", "de": "Dies ist eine Flagge", "cs": "Toto je vlajka", @@ -976,7 +1002,8 @@ "he": "זה דגל", "pl": "To jest flaga", "zh_Hans": "这是一面旗帜", - "pt": "Isto é uma bandeira" + "pt": "Isto é uma bandeira", + "uk": "Це прапор" }, "icon": { "path": "./assets/themes/advertising/flag.svg", @@ -987,7 +1014,7 @@ "if": "advertising=poster_box", "then": { "ca": "Açò és un mupi", - "es": "Esto es un mupi", + "es": "Se trata de un expositor de carteles", "en": "This is a poster Box", "de": "Dies ist eine Posterbox", "cs": "Toto je skříň na plakáty", @@ -995,7 +1022,8 @@ "pl": "To jest pudełko plakatowe", "pt_BR": "Isso é um quadro de pôster", "zh_Hans": "这是海报盒", - "pt": "Isto é um quadro de pôster" + "pt": "Isto é um quadro de pôster", + "uk": "Це скринька для плакатів" }, "icon": { "path": "./assets/themes/advertising/poster_box.svg", @@ -1006,7 +1034,7 @@ "if": "advertising=screen", "then": { "ca": "Açò és una pantalla", - "es": "Esto es una pantalla", + "es": "Se trata de una pantalla", "en": "This is a screen", "de": "Dies ist ein Bildschirm", "cs": "Toto je obrazovka", @@ -1014,7 +1042,8 @@ "pl": "To jest ekran", "pt_BR": "Isso é uma tela", "zh_Hans": "这是一个屏幕", - "pt": "Isto é um ecrã" + "pt": "Isto é um ecrã", + "uk": "Це екран" }, "icon": { "path": "./assets/themes/advertising/screen.svg", @@ -1025,7 +1054,7 @@ "if": "advertising=sculpture", "then": { "ca": "Açò és una esculptura", - "es": "Esto es una escultura", + "es": "Se trata de una escultura", "en": "This is a sculpture", "de": "Dies ist eine Skulptur", "cs": "Toto je socha", @@ -1033,7 +1062,8 @@ "pl": "To jest rzeźba", "pt_BR": "Isso é uma escultura", "zh_Hans": "这是一个雕塑", - "pt": "Isto é uma escultura" + "pt": "Isto é uma escultura", + "uk": "Це скульптура" }, "icon": { "path": "./assets/themes/advertising/sculpture.svg", @@ -1044,7 +1074,7 @@ "if": "advertising=sign", "then": { "ca": "Açò és un cartell", - "es": "Esto es un cartel", + "es": "Se trata de un letrero", "en": "This is a sign", "de": "Dies ist ein Schild", "cs": "Toto je cedule", @@ -1063,7 +1093,7 @@ "if": "advertising=tarp", "then": { "ca": "Açò és una lona (una peça de tèxtil impermeable amb un missatge publicitari)", - "es": "Esto es una lona (una pieza de tela resistente a la intemperie con un mensaje publicitario)", + "es": "Se trata de una lona (una pieza de textil impermeable con un mensaje publicitario)", "en": "This is a tarp (a weatherproof piece of textile with an advertising message)", "de": "Dies ist eine Plane (ein wetterfestes Textilstück mit einer Werbebotschaft)", "cs": "Toto je plachta (kus textilu s reklamním sdělením odolný proti povětrnostním vlivům)", @@ -1082,7 +1112,7 @@ "if": "advertising=totem", "then": { "ca": "Açò és un tòtem", - "es": "Esto es un tótem", + "es": "Se trata de un tótem", "en": "This is a totem", "de": "Dies ist ein Totem", "cs": "Toto je totem", @@ -1101,7 +1131,7 @@ "if": "advertising=wall_painting", "then": { "ca": "Açò és una paret pintada", - "es": "Esto es una pared pintada", + "es": "Se trata de un mural", "en": "This is a wall painting", "de": "Dies ist eine Wandmalerei", "cs": "Toto je nástěnná malba", @@ -1109,7 +1139,8 @@ "pl": "To jest mural ścienny", "pt_BR": "Isso é uma pintura mural", "zh_Hans": "这是一幅壁画", - "pt": "Isto é uma pintura mural" + "pt": "Isto é uma pintura mural", + "uk": "Це настінний розпис" }, "icon": { "path": "./assets/themes/advertising/wall_painting.svg", @@ -1122,7 +1153,8 @@ "en": "This is tilework - the advertisement is painted on tiles", "de": "Dies ist eine Kachelarbeit - die Werbung ist auf Fliesen gemalt", "cs": "Jedná se o dlaždice - reklama je namalovaná na dlaždicích", - "es": "Esto es un azulejería - la publicidad está pintada en azulejos" + "es": "Se trata de un trabajo en azulejo: el anuncio está pintado en azulejos", + "uk": "Це кахельна плитка - реклама намальована на плитці" } }, { @@ -1131,7 +1163,7 @@ "en": "This is a relief", "de": "Dies ist ein Relief", "cs": "Toto je reliéf", - "es": "Esto es un alivio" + "es": "Se trata de un relieve" } } ] @@ -1140,7 +1172,7 @@ "id": "animated", "question": { "ca": "Com canvien els anuncis d'aquest element?", - "es": "¿Pasa este anuncio por varios mensajes?", + "es": "¿Este anuncio muestra varios mensajes?", "en": "Does this advertisement cycle through multiple messages?", "de": "Werden mehrere Werbungen abwechselnd angezeigt?", "cs": "Zobrazuje tato reklama cyklicky několik zpráv?", @@ -1148,7 +1180,8 @@ "pt": "Este anúncio percorre várias mensagens?", "pl": "Czy ta reklama przechodzi przez wiele różnych wiadomości?", "pt_BR": "Este anúncio passa por várias mensagens em sequência?", - "zh_Hans": "该广告是否会在多条消息中循环播放?" + "zh_Hans": "该广告是否会在多条消息中循环播放?", + "uk": "Чи циркулює ця реклама через кілька повідомлень?" }, "condition": { "#": "Screens are _always_ animated; flags, tarps, and wall_paintings cannot be animated; signs can be anything so we don't make guesses", @@ -1174,7 +1207,8 @@ "pt": " Static, mostra sempre a mesma mensagem", "pl": "Statyczne, zawsze pokazuje tą samą wiadomość", "pt_BR": "Estático, mostra sempre a mesma mensagem", - "zh_Hans": "静态,始终显示相同的消息" + "zh_Hans": "静态,始终显示相同的消息", + "uk": "Статичний, завжди показує одне й те саме повідомлення" } }, { @@ -1182,14 +1216,15 @@ "then": { "en": "This object has a built-in digital display to show prices or some other message", "ca": "Aquest objecte té una pantalla digital integrada per a mostrar els preus o algun altre missatge", - "es": "Este objeto tiene una pantalla digital incorporada para mostrar precios o algún otro mensaje", + "es": "Este objeto tiene una pantalla digital incorporada para mostrar precios u otro mensaje", "de": "Digitale Anzeige, zeigt Preise oder anderen Mitteilungen", "cs": "Tento objekt má vestavěný digitální displej pro zobrazení cen nebo jiné zprávy", "fr": "Cet objet inclut un affichage digital pour indiquer des prix ou d'autres messages", "pt": "Este objeto possui um digital display embutido para mostrar preços ou alguma outra mensagem", "pl": "Ten obiekt ma wbudowany cyfrowy wyświetlacz do pokazywania cen lub innych informacji", "pt_BR": "Este objeto possui um display digital incorporado para mostrar preços ou alguma outra mensagem", - "zh_Hans": "该对象有一个内置的数字显示器来显示价格或其他一些消息" + "zh_Hans": "该对象有一个内置的数字显示器来显示价格或其他一些消息", + "uk": "Цей об'єкт має вбудований цифровий дисплей для відображення цін або іншого повідомлення" }, "hideInAnswer": { "and": [ @@ -1204,14 +1239,15 @@ "if": "animated=trivision_blades", "then": { "ca": "Trivision - la tanca publicitària consta de molts prismes triangulars que giren regularment", - "es": "Trivision - la valla publicitaria consta de muchos prismas triangulares que giran regularmente", + "es": "Trivisión: la valla publicitaria consta de muchos prismas triangulares que giran regularmente", "en": "Trivision - the billboard consists of many triangular prisms which regularly rotate", "de": "Trivision Anzeige, zeigt Werbung auf dreieckigen Prismen, die sich regelmäßig drehen", "cs": "Trivision - billboard se skládá z několika trojúhelníkových hranolů, které se pravidelně otáčejí", "fr": "Trivision - le panneau est constitué de lames triangulaires qui tournent régulièrement", "pt": "Trivision - o outdoor consiste em muitos prismas triangulares que giram regularmente", "pt_BR": "Trivision - o outdoor consiste em muitos prismas triangulares que giram regularmente", - "zh_Hans": "Trivision - 广告牌由许多有规律旋转的三棱柱组成" + "zh_Hans": "Trivision - 广告牌由许多有规律旋转的三棱柱组成", + "uk": "Поділ - білборд складається з багатьох трикутних призм, які регулярно обертаються" }, "icon": { "class": "large", @@ -1224,14 +1260,15 @@ "if": "animated=winding_posters", "then": { "ca": "Cartells Rotatius", - "es": "Cartells Rotatius", + "es": "Carteles desplazables", "en": "Scrolling posters", "de": "Rollierende Anzeige, zeigt abwechselnd durchlaufende Werbeplakate", "cs": "Rolující plakáty", "fr": "Affiches défilantes", "pt": "Pôsteres de rolagem", "pt_BR": "Pôsteres deslizantes", - "zh_Hans": "滚动海报" + "zh_Hans": "滚动海报", + "uk": "Прокрутка постерів" }, "hideInAnswer": { "and": [ @@ -1245,14 +1282,15 @@ "if": "animated=revolving", "then": { "ca": "Rota sobre si mateix", - "es": "Rota sobre si mismo", + "es": "Gira sobre sí mismo", "en": "Rotates on itself", "de": "Drehende Anzeige, die um die eigene Achse rotiert", "cs": "Sám se otáčí", "fr": "Tourne sur elle-même", "pt": "Gira sobre si mesmo", "pt_BR": "Gira sobre si mesmo", - "zh_Hans": "自行旋转" + "zh_Hans": "自行旋转", + "uk": "Обертається на себе" }, "hideInAnswer": { "and": [ @@ -1274,7 +1312,7 @@ "then": { "en": "This is a neon-tube light", "ca": "Aquesta és una llum de tub de neó", - "es": "Esta es una luz de tubo de neón", + "es": "Se trata de una luz de tubo de neón", "de": "Dies ist eine Neonröhrenleuchte", "cs": "Jedná se o neonové světlo", "nl": "Dit is een neonlamp", @@ -1283,7 +1321,8 @@ "he": "זהו תאורת ניאון", "pl": "To jest lampa neonowa", "pt_BR": "Isso é uma luz de neon", - "zh_Hans": "这是霓虹灯管" + "zh_Hans": "这是霓虹灯管", + "uk": "Це неонова лампа" }, "hideInAnswer": "advertising!=sign", "addExtraTags": [ @@ -1303,7 +1342,7 @@ "id": "operator", "render": { "ca": "L'operador és {operator}", - "es": "El operador es {operator}", + "es": "Operado por {operator}", "en": "Operated by {operator}", "de": "Betrieben von {operator}", "cs": "Provozuje {operator}", @@ -1313,11 +1352,12 @@ "pt_BR": "Operado por {operator}", "he": "מופעל על ידי {operator}", "pl": "Obsługiwane przez {operator}", - "zh_Hans": "由{operator}运营" + "zh_Hans": "由{operator}运营", + "uk": "Управляється {operator}" }, "question": { "ca": "Qui opera aquest element?", - "es": "¿Quien opera este elemento?", + "es": "¿Quién opera este elemento?", "en": "Who operates this feature?", "de": "Wer betreibt dieses Objekt?", "cs": "Kdo tento objekt provozuje?", @@ -1327,7 +1367,8 @@ "he": "מי מפעיל את התכונה הזו?", "pl": "Kto obsługuje ten obiekt?", "pt_BR": "Quem opera este recurso?", - "zh_Hans": "谁操作此物件?" + "zh_Hans": "谁操作此物件?", + "uk": "Хто керує цим об'єктом?" }, "freeform": { "addExtraTags": [], @@ -1338,7 +1379,7 @@ "id": "message_type", "question": { "ca": "Quin tipus de missatge es mostra?", - "es": "Que tipo de mensaje se muestra?", + "es": "¿Qué tipo de mensaje se muestra?", "en": "What kind of message is shown?", "de": "Welche Art von Nachricht wird angezeigt?", "cs": "Jaký typ zprávy je zobrazen?", @@ -1348,7 +1389,8 @@ "he": "איזה סוג הודעה מוצגת?", "pl": "Jaki rodzaj wiadomości jest pokazany?", "pt_BR": "Que tipo de mensagem é exibido?", - "zh_Hans": "显示什么样的消息?" + "zh_Hans": "显示什么样的消息?", + "uk": "Яке повідомлення відображається?" }, "mappings": [ { @@ -1366,7 +1408,8 @@ "he": "מסר מסחרי", "nl": "Commerciële boodschap", "pl": "Wiadomość komercyjna", - "zh_Hans": "商业留言" + "zh_Hans": "商业留言", + "uk": "Комерційне повідомлення" } }, { @@ -1374,7 +1417,7 @@ "ifnot": "message=", "then": { "ca": "Informació municipal", - "es": "Información municipal", + "es": "Información local", "en": "Local information", "de": "Lokale Informationen", "cs": "Místní informace", @@ -1384,7 +1427,8 @@ "nl": "Lokale informatie", "pl": "Informacja lokalna", "pt_BR": "Informações locais", - "zh_Hans": "本地信息" + "zh_Hans": "本地信息", + "uk": "Місцева інформація" } }, { @@ -1401,7 +1445,8 @@ "he": "מידע אבטחה", "pl": "Informacje dotyczące bezpieczeństwa", "pt_BR": "Informações de segurança", - "zh_Hans": "安全信息" + "zh_Hans": "安全信息", + "uk": "Інформація про безпеку" }, "hideInAnswer": { "and": [ @@ -1423,7 +1468,8 @@ "he": "פרסום בחירות", "pl": "Reklamy wyborcze", "pt_BR": "Propaganda eleitoral", - "zh_Hans": "选举广告" + "zh_Hans": "选举广告", + "uk": "Передвиборча реклама" } }, { @@ -1431,7 +1477,7 @@ "ifnot": "message=", "then": { "ca": "Informació sobre teatres, concerts, …", - "es": "Información sobre teatros, conciertos, …", + "es": "Información relacionada con teatro, conciertos,…", "en": "Information related to theatre, concerts, …", "de": "Informationen über Theater, Konzerte, …", "cs": "Informace týkající se divadla, koncertů, …", @@ -1442,7 +1488,8 @@ "eu": "Antzerkiari, kontzertuei eta abarri buruzko informazioa", "pl": "Informacje dotyczące teatru, koncertów, …", "pt_BR": "Informações relacionadas a teatro, concertos, …", - "zh_Hans": "与戏剧、音乐会等相关的信息……" + "zh_Hans": "与戏剧、音乐会等相关的信息……", + "uk": "Інформація, пов'язана з театром, концертами, …" }, "hideInAnswer": { "and": [ @@ -1455,7 +1502,7 @@ "ifnot": "message=", "then": { "ca": "Missatge d'organitzacions sense ànim de lucre", - "es": "Mensaje de organizaciones sin ánimo de lucro", + "es": "Mensaje de organizaciones sin fines de lucro", "en": "Message from non-profit organizations", "de": "Nachricht von gemeinnützigen Organisationen", "cs": "Zpráva od neziskových organizací", @@ -1464,7 +1511,8 @@ "pt": "Mensagem de organizações sem fins lucrativos", "pl": "Wiadomość od organizacji non-profit", "pt_BR": "Mensagens de organizações sem fins lucrativos", - "zh_Hans": "来自非营利组织的消息" + "zh_Hans": "来自非营利组织的消息", + "uk": "Повідомлення від неприбуткових організацій" } }, { @@ -1472,7 +1520,7 @@ "ifnot": "message=", "then": { "ca": "Per a expressar la teua opinió", - "es": "Exprese su opinión", + "es": "Para expresar tu opinión", "en": "To express your opinion", "de": "Um Ihre Meinung zu äußern", "cs": "Pro vyjádření vašeho názoru", @@ -1480,7 +1528,8 @@ "pt": "Para expressar sua opinião", "pl": "Żeby wyrazić swoją opinię", "pt_BR": "Para expressar sua opinião", - "zh_Hans": "表达您的意见" + "zh_Hans": "表达您的意见", + "uk": "Щоб висловити свою думку" }, "hideInAnswer": { "or": [ @@ -1504,7 +1553,8 @@ "pt_BR": "Mensagem religiosa", "he": "מסר דתי", "pl": "Przekaz religijny", - "zh_Hans": "宗教讯息" + "zh_Hans": "宗教讯息", + "uk": "Релігійне послання" } }, { @@ -1519,7 +1569,8 @@ "pt": "sinal de financiamento", "pl": "Znak finansowania", "pt_BR": "Placa de financiamento", - "zh_Hans": "资助标志" + "zh_Hans": "资助标志", + "uk": "Ознака фінансування" }, "hideInAnswer": { "or": [ @@ -1542,7 +1593,8 @@ "pt": "Um mapa", "pt_BR": "Um mapa", "pl": "Mapa", - "zh_Hans": "地图" + "zh_Hans": "地图", + "uk": "Карта" } } ], @@ -1564,16 +1616,17 @@ }, "question": { "ca": "Per quants costats pots veure publicitat?", - "es": "¿Por cuantos lados puedes ver publicidad?", + "es": "¿Desde cuántos lados se puede ver la publicidad?", "en": "From how many sides you can watch advertisments?", - "de": "Auf wie vielen Seiten wird Werbung angezeigt?", + "de": "Von wie vielen Seiten kann man Werbung betrachten?", "cs": "Z kolika stran můžete vidět reklamy?", "fr": "Sur combien de côtés peut-on voir de la publicité ?", "pt": "De quantos lados você pode assistir a anúncios?", "eu": "Zenbat aldetatik ikus dezakezu publizitatea?", "pl": "Z ilu stron można oglądać reklamy?", "pt_BR": "De quantos lados você consegue visualizar os anúncios?", - "zh_Hans": "您可以从几个侧面观看广告?" + "zh_Hans": "您可以从几个侧面观看广告?", + "uk": "Зі скількох сторін можна дивитися рекламу?" }, "mappings": [ { @@ -1581,7 +1634,7 @@ "then": { "en": "This object has advertisements on a single side", "ca": "Aquest mupi té publicitat a un únic costat", - "es": "Este objeto tiene publicidad en un único lado", + "es": "Este objeto tiene publicidad en un solo lado", "de": "Werbung wird nur auf einer Seite angezeigt", "cs": "Tento objekt má reklamy na jedné straně", "fr": "Cet objet a de la publicité sur un seul côté", @@ -1590,7 +1643,8 @@ "pl": "Ten obiekt ma reklamy po jednej stronie", "pt_BR": "Este objeto tem anúncios em um único lado", "zh_Hans": "该物体单面有广告", - "it": "Questo oggetto ha la pubblicità solo da un lato" + "it": "Questo oggetto ha la pubblicità solo da un lato", + "uk": "Цей об'єкт має рекламу з одного боку" } }, { @@ -1598,7 +1652,7 @@ "then": { "en": "This object has advertisements on both sides", "ca": "Aquest mupi té publicitat pels dos costas", - "es": "Este objeto tiene publicidad por los dos lados", + "es": "Este objeto tiene publicidad en ambos lados", "de": "Werbung wird auf beiden Seiten angezeigt", "cs": "Tento objekt má reklamy na obou stranách", "fr": "Cet objet a de la publicité des deux côtés", @@ -1606,7 +1660,8 @@ "eu": "Objektu honek iragarkiak ditu bi aldeetan", "pl": "Ten obiekt ma reklamy po dwóch stronach", "pt_BR": "Este objeto tem anúncios em ambos os lados", - "zh_Hans": "该物体双面有广告" + "zh_Hans": "该物体双面有广告", + "uk": "Цей об'єкт має рекламу з обох боків" } } ] @@ -1624,11 +1679,12 @@ "pt": "O número de referência é {ref}", "pt_BR": "O número de referência é {ref}", "pl": "Numer referencyjny to {ref}", - "zh_Hans": "编号是{ref}" + "zh_Hans": "编号是{ref}", + "uk": "Номер посилання: {ref}" }, "question": { "ca": "Quin és el número de refèrencia?", - "es": "¿Cual es el número de referencia?", + "es": "¿Cuál es el número de referencia?", "en": "Wich is the reference number?", "de": "Wie lautet die Referenznummer?", "cs": "Jaké je referenční číslo?", @@ -1637,7 +1693,8 @@ "pt": "Qual é o número de referência?", "pl": "Jaki jest numer referencyjny?", "pt_BR": "Qual é o número de referência?", - "zh_Hans": "编号是多少?" + "zh_Hans": "编号是多少?", + "uk": "Який номер посилання?" }, "freeform": { "key": "ref" @@ -1653,8 +1710,10 @@ "question": { "en": "Is this sign for a business that no longer exists or no longer being maintained?", "de": "Ist dieses Schild für ein Geschäft, das nicht mehr existiert oder nicht mehr gepflegt wird?", - "es": "¿Es este cartel de un negocio que ya no existe o que ya no se mantiene?", - "cs": "Je tato značka určena pro již neexistující nebo neudržovaný podnik?" + "es": "¿Este letrero es de un negocio que ya no existe o que ya no se mantiene?", + "cs": "Je tato značka určena pro již neexistující nebo neudržovaný podnik?", + "uk": "Це знак для бізнесу, який більше не існує або більше не підтримується?", + "fr": "Est-ce l'enseigne d'un commerce qui n'existe plus ou n'est plus en activité ?" }, "mappings": [ { @@ -1664,7 +1723,9 @@ "en": "This is a historic advertisement sign (an advertisement for a business that no longer exists or a very old sign with heritage value)", "de": "Es handelt sich um ein historisches Werbeschild (eine Werbung für ein Unternehmen, das nicht mehr existiert, oder ein sehr altes Schild mit historischem Wert)", "cs": "Jedná se o historický reklamní nápis (reklama na již neexistující podnik nebo velmi starý nápis s památkovou hodnotou)", - "es": "Esto es un cartel publicitario histórico (un anuncio para un negocio que ya no existe o un cartel con un gran valor patrimonial)" + "es": "Se trata de un anuncio histórico (un anuncio de un negocio que ya no existe o un cartel muy antiguo con valor patrimonial)", + "uk": "Це історична рекламна вивіска (реклама підприємства, яке більше не існує, або дуже стара вивіска, що має історичну цінність)", + "fr": "C'est une publicité historique (publicité pour un commerce qui n'existe plus ou une très vielle publicité avec un intérêt patrimonial)" } }, { @@ -1673,7 +1734,9 @@ "en": "This advertisement sign has no historic value (the business still exists and has no heritage value)", "de": "Dieses Werbeschild hat keinen historischen Wert (das Unternehmen existiert noch und hat keinen denkmalpflegerischen Wert)", "cs": "Tento reklamní nápis nemá žádnou historickou hodnotu (podnik stále existuje a nemá žádnou památkovou hodnotu)", - "es": "Este cartel publicitario no tiene valor histórico (el negocio todavía existe y no tiene valor patrimonial)" + "es": "Este anuncio no tiene valor histórico (el negocio sigue existiendo y no tiene valor patrimonial)", + "uk": "Ця рекламна вивіска не має історичної цінності (бізнес все ще існує і не має історичної цінності)", + "fr": "Cette publicité n'a pas de valeur historique (le commerce existe toujours, mais n'a pas de valeur patrimoniale particulière)" } } ] diff --git a/assets/layers/aerialway/aerialway.json b/assets/layers/aerialway/aerialway.json index aac26384d..f140424fc 100644 --- a/assets/layers/aerialway/aerialway.json +++ b/assets/layers/aerialway/aerialway.json @@ -4,12 +4,13 @@ "en": "Aerialways", "de": "Seilbahnen", "cs": "Letecké trasy", - "ca": "Vies aeries" + "ca": "Vies aeries", + "es": "Teleféricos" }, "description": { "en": "Various forms of transport for passengers and goods that use wires, including cable cars, gondolas, chair lifts, drag lifts, and zip lines. ", "de": "Alle Arten von seil- oder drahtgestütztem Personen- oder Gütertransport, wie Seilbahnen, Gondeln, Sessellifte, Schlepplifte. ", - "es": "Diversas formas de transporte de pasajeros y mercancías que utilizan cables, como teleféricos, telecabinas, telesillas, telesquíes y tirolinas. ", + "es": "Varias formas de transporte de pasajeros y mercancías que utilizan cables, incluyendo teleféricos, góndolas, telesillas, remontes y tirolinas. ", "pl": "Różne formy transportu dla pasażerów i dóbr, które używają lin, w tym kolejki gondolowe, wyciągi krzesełkowe i orczykowe oraz tyrolki. ", "cs": "Různé formy přepravy osob a zboží, které využívají dráty, včetně lanovek, gondol, sedačkových lanovek, vleků a lanových drah. ", "ca": "Diverses formes de transport per a passatgers i mercaderies que utilitzen cables, incloent-hi telefèrics, telecabines, telecadires, teleesquís i tiroleses. " @@ -28,7 +29,8 @@ "render": { "en": "Aerialway {name}", "de": "Seilbahn {name}", - "cs": "Dráha {name}" + "cs": "Dráha {name}", + "es": "Teleférico {name}" } }, "pointRendering": [ @@ -91,7 +93,8 @@ "question": { "en": "What type of aerialway is this?", "de": "Um welchen Seilbahntyp handelt es sich?", - "cs": "O jaký typ dráhy se jedná?" + "cs": "O jaký typ dráhy se jedná?", + "es": "¿Qué tipo de teleférico es este?" }, "id": "type", "mappings": [ @@ -100,7 +103,8 @@ "then": { "en": "This is a cable car where the car goes up and down again on the same cable.", "de": "Es handelt sich um eine Seilbahn, bei der die Kabine auf demselben Seil nach oben und wieder nach unten fährt.", - "cs": "Jedná se o lanovku, kde vagon jezdí nahoru a dolů po stejném laně." + "cs": "Jedná se o lanovku, kde vagon jezdí nahoru a dolů po stejném laně.", + "es": "Se trata de un teleférico donde la cabina sube y baja por el mismo cable." }, "icon": "./assets/layers/aerialway/cable_car.svg" }, @@ -109,7 +113,8 @@ "then": { "en": "This is a gondola where the cars go around in continuous circles", "de": "Es handelt sich um eine Seilbahn, bei der die Kabinen in ständigen Kreisen fahren", - "cs": "Jedná se o gondolu, kde vozy jezdí v nepřetržitých kruzích" + "cs": "Jedná se o gondolu, kde vozy jezdí v nepřetržitých kruzích", + "es": "Se trata de una góndola donde las cabinas giran en círculos continuos" }, "icon": "./assets/layers/aerialway/gondola_lift.svg" }, @@ -118,7 +123,8 @@ "then": { "en": "An open chairlift with seats to sit on and open to the outside air.", "de": "Ein offener Sessellift mit Sitzgelegenheiten und Zugang zur Außenluft.", - "cs": "Otevřená lanovka se sedačkami k sezení na čerstvém vzduchu." + "cs": "Otevřená lanovka se sedačkami k sezení na čerstvém vzduchu.", + "es": "Un telesilla abierto con asientos para sentarse y abierto al aire libre." }, "icon": "./assets/layers/aerialway/chair_lift.svg" }, @@ -127,7 +133,8 @@ "then": { "en": "An aerialway which has both chairs and gondolas in the same continuous track", "de": "Eine Seilbahn, die sowohl offene Sessel als auch geschlossene Gondeln auf einer durchgehenden Bahn hat", - "cs": "Lanová dráha, která má sedačky i gondoly na stejné souvislé dráze" + "cs": "Lanová dráha, která má sedačky i gondoly na stejné souvislé dráze", + "es": "Un teleférico que tiene tanto sillas como góndolas en la misma vía continua" } }, { @@ -136,7 +143,8 @@ "en": "A drag lift", "de": "Ein Schlepplift", "pl": "Wyciąg orczykowy", - "cs": "Vlek" + "cs": "Vlek", + "es": "Un remonte" }, "hideInAnswer": true }, @@ -145,7 +153,8 @@ "then": { "en": "A drag lift with T-shaped carriers for two passengers at a time", "de": "Ein Schlepplift mit T-förmigen Trägern für jeweils zwei Passagiere", - "cs": "Vlek s nosiči ve tvaru T pro dva cestující najednou" + "cs": "Vlek s nosiči ve tvaru T pro dva cestující najednou", + "es": "Un remonte con transportadores en forma de T para dos pasajeros a la vez" } }, { @@ -153,7 +162,8 @@ "then": { "en": "A drag lift with L-shaped bars for a single passenger at a time", "de": "Ein Schlepplift mit L-förmigen Trägern für jeweils einen Passagier", - "cs": "Vlek s tyčemi ve tvaru písmene L pro jednoho cestujícího" + "cs": "Vlek s tyčemi ve tvaru písmene L pro jednoho cestujícího", + "es": "Un remonte con barras en forma de L para un solo pasajero a la vez" } }, { @@ -161,7 +171,8 @@ "then": { "en": "A drag lift with a platter to drag a single passenger at a time", "de": "Ein Schlepplift mit einem Teller für jeweils einen Passagier", - "cs": "Vlek s talířem, který táhne jednoho cestujícího" + "cs": "Vlek s talířem, který táhne jednoho cestujícího", + "es": "Un remonte con una plataforma para arrastrar a un solo pasajero a la vez" } }, { @@ -169,7 +180,8 @@ "then": { "en": "A tow line which which drags skieers", "de": "Eine Schleppleine, die Skifahrer mit sich zieht", - "cs": "Vlečné lano, které táhne lyžaře" + "cs": "Vlečné lano, které táhne lyžaře", + "es": "Un cable de remolque que arrastra a los esquiadores" } }, { @@ -177,7 +189,8 @@ "then": { "en": "A magic carpet (a conveyor belt on the ground)", "de": "Ein magic carpet (ein Förderband auf dem Boden)", - "cs": "Kouzelný koberec (pásový dopravník na zemi)" + "cs": "Kouzelný koberec (pásový dopravník na zemi)", + "es": "Una alfombra mágica (una cinta transportadora en el suelo)" } }, { @@ -186,7 +199,8 @@ "en": "A zip line. (A touristical attraction where adventurous people go down at high speeds) ", "de": "Eine Seilrutsche. (Eine Touristenattraktion, bei der abenteuerlustige Menschen mit hoher Geschwindigkeit hinunterfahren) ", "pl": "Tyrolka. (Atrakcja turystyczna, która pozwala żądnym przygód zjechać z dużą szybkością) ", - "cs": "Lano na visuté dráze. (Turistická atrakce, kde se odvážlivci spouštějí vysokou rychlostí) " + "cs": "Lano na visuté dráze. (Turistická atrakce, kde se odvážlivci spouštějí vysokou rychlostí) ", + "es": "Una tirolina. (Una atracción turística donde la gente aventurera baja a altas velocidades) " } } ] @@ -198,7 +212,7 @@ "de": "Wie lange dauert eine Fahrt mit diesem Aufzug?", "fr": "Combien de temps dure le trajet dans cet ascenseur ?", "pl": "Jak długo trwa pojedynczy przejazd tą windą?", - "es": "¿Cuánto dura un viaje en este ascensor?", + "es": "¿Cuánto dura un viaje sencillo con este ascensor?", "cs": "Jak dlouho trvá jedna jízda tímto výtahem?", "ca": "Quant de temps triga un trajecte amb aquest ascensor?" }, @@ -207,7 +221,7 @@ "de": "Dies schließt die Wartezeit aus.", "fr": "Cela n'inclut pas le temps d'attente.", "pl": "To nie włącza czasu oczekiwania.", - "es": "Esto elimina el tiempo de espera.", + "es": "Esto no incluye el tiempo de espera.", "cs": "To nezahrnuje čekací dobu.", "ca": "Això exclou el temps d'espera." }, @@ -219,7 +233,7 @@ "de": "Eine Fahrt dauert {duration} Minuten", "fr": "Un aller simple dure {duration} minutes", "pl": "Pojedynczy przejazd trwa {duration} minut", - "es": "Un viaje dura {duration} minutos", + "es": "Un viaje sencillo tarda {duration} minutos", "cs": "Jedna jízda trvá {duration} minut", "ca": "Un viatge dura {duration} minuts" } @@ -233,7 +247,7 @@ "en": "How many people fit a single carriage?", "de": "Wie viele Leute passen in eine Kabine?", "pl": "Ile osób może pomieścić jeden wagon?", - "es": "¿Cuál es la capacidad de la cabina?", + "es": "¿Cuántas personas caben en una sola cabina?", "ca": "Quantes persones caben a la cabina?", "cs": "Kolik osob se vejde do jednoho vozu?" }, @@ -242,7 +256,7 @@ "de": "{aerialway:occupancy} Leute passen in eine Kabine", "pl": "{aerialway:occupancy} osób mieści się w jednym wagonie", "cs": "{aerialway:occupancy} osob se vejde do jednoho vozu", - "es": "{aerialway:occupancy} personas entran en un solo vagón" + "es": "En una sola cabina caben {aerialway:occupancy} personas" } }, "opening_hours", @@ -251,7 +265,8 @@ "question": { "en": "In what direction can this aerialway be taken?", "de": "In welche Richtung kann diese Seilbahn genutzt werden?", - "cs": "Jakým směrem tato dráha může vést?" + "cs": "Jakým směrem tato dráha může vést?", + "es": "¿En qué dirección se puede tomar este teleférico?" }, "mappings": [ { @@ -260,7 +275,8 @@ "then": { "en": "This aerialway can only be taken to the top", "de": "Diese Seilbahn kann nur nach oben gefahren werden", - "cs": "Touto lanovkou lze vyjet pouze na vrchol" + "cs": "Touto lanovkou lze vyjet pouze na vrchol", + "es": "Este teleférico solo se puede tomar hacia arriba" } }, { @@ -268,7 +284,8 @@ "then": { "en": "This aerialway can be taken in both directions", "de": "Diese Seilbahn kann in beide Richtungen befahren werden", - "cs": "Tuto dráhu lze využít v obou směrech" + "cs": "Tuto dráhu lze využít v obou směrech", + "es": "Este teleférico se puede tomar en ambas direcciones" } } ] @@ -279,7 +296,8 @@ "en": "This aerialway is {_length:km} kilometer long", "de": "Die Seilbahn hat eine Länge von {_length:km} km", "fr": "Cette voie aérienne fait {_length:km} kilomètre de long", - "cs": "Tato dráha je dlouhá {_length:km} kilometr" + "cs": "Tato dráha je dlouhá {_length:km} kilometr", + "es": "Este teleférico tiene {_length:km} kilómetros de longitud" } } ], diff --git a/assets/layers/ambulancestation/ambulancestation.json b/assets/layers/ambulancestation/ambulancestation.json index c6fa45448..1f67aab34 100644 --- a/assets/layers/ambulancestation/ambulancestation.json +++ b/assets/layers/ambulancestation/ambulancestation.json @@ -30,7 +30,7 @@ "hu": "A mentőállomás olyan terület, ahol mentőautókat, orvosi felszereléseket, egyéni védőfelszereléseket és egyéb orvosi felszereléseket tárolnak.", "ru": "Станция скорой помощи это полигон для хранения транспорта, медицинского оборудования, средств индивидуальной защиты и других медицинских принадлежностей.", "nl": "Een ambulancestation is een plaats waar ambulances, medisch materiaal, persoonlijk beschermingsmateriaal en aanverwanten worden bewaard.", - "es": "Una estación de ambulancias es una zona para almacenar vehículos de ambulancia, equipamiento médico, equipos de protección personal y otros suministros médicos.", + "es": "Una estación de ambulancias es un área para el almacenamiento de vehículos de ambulancia, equipo médico, equipo de protección personal y otros suministros médicos.", "da": "En ambulancestation er et område til opbevaring af ambulancekøretøjer, medicinsk udstyr, personlige værnemidler og andre medicinske forsyninger.", "cs": "Stanice záchranné služby je prostor pro umístění sanitních vozidel, zdravotnického vybavení, osobních ochranných prostředků a dalšího zdravotnického materiálu.", "ca": "Una estició d'abulàncies és una àrea per a emmagatzemar ambulàncies, equipament mèdic, equips de protecció personal i altres subministraments mèdics.", @@ -127,7 +127,7 @@ "nl": "Voeg een ambulancestation toe aan de kaart", "zh_Hans": "向地图中添加一个救护车站", "id": "Tambahkan stasiun ambulans ke peta", - "es": "Añadir una estación de ambulancias al mapa", + "es": "Agrega una estación de ambulancias al mapa", "nb_NO": "Legg til en ambulansestasjon på kartet", "da": "Tilføj en ambulancestation til kortet", "cs": "Přidat na mapu stanici záchranné služby", @@ -154,7 +154,7 @@ "de": "Wie heißt die Rettungswache?", "hu": "Mi a neve ennek a menőtállomásnak?", "nl": "Hoe heet dit ambulancestation?", - "es": "¿Cual es el nombre de esta estación de ambulancias?", + "es": "¿Cuál es el nombre de esta estación de ambulancias?", "nb_NO": "Hva er navnet på denne ambulansestasjonen?", "da": "Hvad hedder denne ambulancestation?", "cs": "Jak se jmenuje tato stanice záchranné služby?", @@ -200,7 +200,7 @@ "de": "In welcher Straße liegt die Rettungswache?", "hu": "Mi a neve annak az utcának, amelyben az állomás található?", "nl": "In welke straat ligt dit station?", - "es": "¿Cual es el nombre de la calle en la que se encuentra la estación?", + "es": "¿Cuál es el nombre de la calle donde se encuentra la estación?", "da": "Hvad er vejnavnet, hvor stationen ligger?", "cs": "Jak se jmenuje ulice, kde se stanice nachází?", "ca": "Quin és el nom del carrer on es troba l'estació?", @@ -208,7 +208,8 @@ "pl": "Jak nazywa się ulica, przy której znajduje się stacja?", "pt_BR": "Como é o nome da rua em que a estação está localizada?", "zh_Hans": "车站所在的街道名称是什么?", - "pt": "Como é o nome da rua em que a estação está localizada?" + "pt": "Como é o nome da rua em que a estação está localizada?", + "uk": "Як називається вулиця, на якій розташована станція?" }, "render": { "en": "This station is along a highway called {addr:street}.", @@ -219,7 +220,7 @@ "de": "Dieser Bahnhof liegt an der Straße {addr:street}.", "hu": "Ez az állomás a következő utcában van: {addr:street}.", "nl": "Straat waar dit station ligt: {addr:street}", - "es": "Esta estación se encuentra al lado de una via llamada {addr:street}.", + "es": "Esta estación se encuentra a lo largo de una carretera llamada {addr:street}.", "da": "Denne station ligger langs en vej, der hedder {addr:street}.", "cs": "Tato stanice se nachází podél dálnice s názvem {addr:street}.", "ca": "Aquesta estació es troba al costat d'una via anomenada {addr:street}.", @@ -240,14 +241,15 @@ "de": "Wo befindet sich die Rettungswache? (z. B. Name von Stadtviertel, Dorf oder Stadt)", "hu": "Hol található az állomás? (Pl. a falu, kisváros vagy városrész neve.)", "nl": "Waar ligt het station? (v.b. naam van de buurt, dorp of stad)", - "es": "¿Dónde se encuentra la estación? (ej. nombre del barrio, pueblo o ciudad)", + "es": "¿Dónde se encuentra la estación? (por ejemplo, nombre del barrio, aldea o ciudad)", "da": "Hvor ligger stationen? (f.eks. navn på kvarter, landsby eller by)", "cs": "Kde se stanice nachází? (např. název čtvrti, obce nebo města)", "ca": "On es troba aquesta estació? (p.e. nom del barri, poble o ciutat)", "he": "היכן ממוקמת התחנה? (למשל שם השכונה, הכפר או העיירה)", "pt_BR": "Onde está localizada a estação? (por exemplo, nome do bairro, vila ou cidade)", "zh_Hans": "车站位于哪里? (例如邻里、村庄或城镇的名称)", - "pt": "Onde está a estação localizada ? (por exemplo, nome do bairro, vila ou cidade)" + "pt": "Onde está a estação localizada ? (por exemplo, nome do bairro, vila ou cidade)", + "uk": "Де знаходиться станція? (наприклад, назва району, села чи міста)" }, "freeform": { "key": "addr:place" @@ -260,7 +262,7 @@ "de": "Diese Rettungswache befindet sich in {addr:place}.", "hu": "Ez az állomás itt található: {addr:place}.", "nl": "Dit station ligt in {addr:place}.", - "es": "Esta estación se encuentra en {addr:place}.", + "es": "Esta estación se encuentra dentro de {addr:place}.", "da": "Denne station findes i {addr:place}.", "cs": "Tato stanice se nachází v rámci {addr:place}.", "ca": "Aquesta estació es troba a {addr:place}.", @@ -300,7 +302,7 @@ "hu": "Az állomás üzemeltetője: {operator}.", "ru": "Эта станция управляется {operator}.", "nl": "Dit station wordt beheerd door {operator}.", - "es": "Esta estación la opera {operator}.", + "es": "Esta estación es operada por {operator}.", "da": "Denne station drives af {operator}.", "cs": "Tuto stanici provozuje společnost {operator}.", "ca": "Aquesta estació l'opera {operator}.", @@ -325,7 +327,7 @@ "de": "Wie kann der Betreiber der Rettungswache eingestuft werden?", "hu": "Hogyan sorolható be az állomás üzemeltetője?", "nl": "Wat voor een organisatie is de beheerder van dit station?", - "es": "¿Como está clasificada la operadora de la estación?", + "es": "¿Cómo se clasifica al operador de la estación?", "da": "Hvordan klassificeres stationsoperatøren?", "cs": "Jak je klasifikován provozovatel stanice?", "ca": "Com es classifica l'operador de l'estació?", @@ -343,7 +345,7 @@ "de": "Der Betreiber ist eine {operator:type}.", "hu": "Az üzemeltető egy {operator:type} jellegű szervezet.", "nl": "De beheerder is van het type {operator:type}.", - "es": "La operadora es una entidad de tipo {operator:type}.", + "es": "El operador es una entidad {operator:type}.", "da": "Operatøren er en (n) {operator:type} enhed.", "cs": "Operátor je {operator:type} entita.", "ca": "L'operadora és una entitat del tipus {operator:type}.", @@ -370,7 +372,7 @@ "hu": "A mentőállomást a kormány üzemelteti.", "ru": "Станция управляется правительством.", "nl": "Dit station wordt beheerd door de overheid.", - "es": "La estación la opera el gobierno.", + "es": "La estación es operada por el gobierno.", "da": "Stationen drives af staten.", "cs": "Provozovatelem stanice je vláda.", "ca": "El govern opera aquesta estació.", @@ -396,7 +398,7 @@ "hu": "Mentőállomást egy közösségi vagy nem hivatalos szervezet működteti.", "ru": "Станция управляется волонтёрами или частной организацией.", "nl": "Dit station wordt beheerd door een informele of community organisatie.", - "es": "La estación la opera una organización basada en la comunidad o informal.", + "es": "La estación es operada por una organización comunitaria o informal.", "da": "Stationen drives af en samfundsbaseret eller uformel organisation.", "cs": "Provozovatelem stanice je komunitní nebo neformální organizace.", "ca": "Aquesta estació l'opera una comunitat o organització informal.", @@ -421,7 +423,7 @@ "de": "Die Rettungswache wird von einer Freiwilligenorganisation betrieben.", "hu": "A mentőállomást egy önkéntesekből álló hivatalos csoport működteti.", "nl": "Dit station wordt beheerd door een formele groep vrijwilligers.", - "es": "La estación la opera un grupo formal de voluntarios.", + "es": "La estación es operada por un grupo formal de voluntarios.", "da": "Stationen drives af en formel gruppe af frivillige.", "cs": "Stanice je provozována formální skupinou dobrovolníků.", "ca": "Aquesta estació l'opera un grup formal de voluntaris.", @@ -446,7 +448,7 @@ "de": "Die Rettungswache wird von einer privaten Organisation betrieben.", "hu": "Az állomást egy magánkézben lévő szervezet működteti.", "nl": "Dit station wordt beheerd door een privé-organisatie.", - "es": "La estación se opera privadamente.", + "es": "La estación es de operación privada.", "da": "Stationen er privatdrevet.", "cs": "Stanice je provozována soukromým subjektem.", "ca": "Aquesta estació l'opera una entitat privada.", diff --git a/assets/layers/animal_shelter/animal_shelter.json b/assets/layers/animal_shelter/animal_shelter.json index 2cacd3259..e17f6e92f 100644 --- a/assets/layers/animal_shelter/animal_shelter.json +++ b/assets/layers/animal_shelter/animal_shelter.json @@ -3,17 +3,18 @@ "name": { "en": "Animal shelters", "de": "Tierheime", - "es": "Centros de acogida de animales", + "es": "Refugios de animales", "zh_Hans": "动物收容所", "pt": "Abrigo para animais", "ca": "Refugis d'animals", "pl": "Schroniska dla zwierząt", "fr": "Abri pour animaux", - "cs": "Útulky pro zvířata" + "cs": "Útulky pro zvířata", + "ru": "Приюты для животных" }, "description": { "en": "An animal shelter is a facility where animals in trouble are brought and facility's staff (volunteers or not) feeds them and cares of them, rehabilitating and healing them if necessary. This definition includes kennels for abandoned dogs, catteries for abandoned cats, shelters for other abandoned pets and wildlife recovery centres. ", - "es": "Un refugio de animales es una instalación donde se llevan animales con problemas y el personal de la instalación (voluntario o no) los alimenta y cuida, rehabilitándolos y curándolos si es necesario. Esta definición incluye las perreras para perros abandonados, los criaderos para gatos abandonados, los refugios para otros animales de compañía abandonados y los centros de recuperación de la fauna salvaje. ", + "es": "Un refugio de animales es una instalación donde se traen animales en problemas y el personal de la instalación (voluntarios o no) los alimenta y cuida, rehabilitándolos y curándolos si es necesario. Esta definición incluye perreras para perros abandonados, gaterías para gatos abandonados, refugios para otras mascotas abandonadas y centros de recuperación de fauna silvestre. ", "zh_Hans": "动物收容所是一个设施,将遇到麻烦的动物带到这里,设施的工作人员(志愿者或非志愿者)喂养并照顾它们,并在必要时使它们康复和治愈。该定义包括被遗弃的狗的狗舍、被遗弃的猫的猫舍、其他被遗弃的宠物的庇护所和野生动物恢复中心。 ", "de": "Ein Tierheim ist eine Einrichtung, in die notleidende Tiere gebracht werden und wo das Personal (ob freiwillig oder nicht) sie füttert und pflegt, sie rehabilitiert und bei Bedarf heilt. Diese Definition umfasst Zwinger für ausgesetzte Hunde, Katzenheime für ausgesetzte Katzen, Unterkünfte für andere ausgesetzte Haustiere und Wildtier-Auffangstationen. ", "cs": "Útulek pro zvířata je zařízení, kam se přivážejí zvířata v nesnázích a zaměstnanci zařízení (ať už dobrovolníci, nebo ne) je krmí, starají se o ně a v případě potřeby je rehabilitují a léčí. Tato definice zahrnuje chovné stanice pro opuštěné psy, chovné stanice pro opuštěné kočky, útulky pro jiná opuštěná zvířata a centra pro záchranu volně žijících zvířat. " @@ -25,7 +26,7 @@ "render": { "en": "Animal shelter", "de": "Tierheim", - "es": "Centro de acogida de animales", + "es": "Refugio de animales", "zh_Hans": "动物收容所", "pt": "Abrigo para animais", "ca": "Refugi d'animals", @@ -77,7 +78,7 @@ "title": { "en": "an animal shelter", "de": "ein Tierheim", - "es": "una protectora de animales", + "es": "un refugio de animales", "zh_Hans": "动物收容所", "pt": "um abrigo para animais", "ca": "un refugi d'animals", @@ -101,7 +102,7 @@ "question": { "en": "What is the name of this animal shelter?", "de": "Wie lautet der Name des Tierheims?", - "es": "¿Cómo se llama este refugio de animales?", + "es": "¿Cuál es el nombre de este refugio de animales?", "zh_Hans": "这个动物收容所叫什么名字?", "ca": "Quin nom té aquest refugi d'animals?", "pl": "Jak nazywa się to schronisko dla zwierząt?", @@ -126,7 +127,7 @@ "question": { "en": "What is the purpose of the animal shelter?", "de": "Was ist der Zweck des Tierheims?", - "es": "¿Cuál es la finalidad del refugio de animales?", + "es": "¿Cuál es el propósito del refugio de animales?", "zh_Hans": "动物收容所的目的是什么?", "ca": "Quina és la finalitat del refugi d'animals?", "pl": "Jaki jest cel tego schroniska dla zwierząt?", @@ -137,7 +138,7 @@ "then": { "en": "Animals are kept here until adopted by a new owner", "de": "Tiere werden hier bis zur Abgabe an einen neuen Besitzer untergebracht", - "es": "Los animales permanecen aquí hasta que son adoptados por un nuevo propietario", + "es": "Los animales se mantienen aquí hasta que son adoptados por un nuevo dueño", "zh_Hans": "动物被饲养在这里直到被新主人收养", "ca": "Els animals romanen ací fins que son adoptats per un nou propietari", "pl": "Zwierzęta są tutaj dopóki nie znajdą nowego właściciela", @@ -150,7 +151,7 @@ "then": { "en": "Animals are taken care of for the rest of their lives", "de": "Tiere werden hier bis zum Ende Ihres Lebens untergebracht", - "es": "Los animales reciben cuidados para el resto de su vida", + "es": "Los animales son cuidados por el resto de sus vidas", "zh_Hans": "动物的余生都得到照顾", "ca": "Els animals reben cures per a la resta de la seva vida", "fr": "Les animaux sont recueillis pour le reste de leur vie", @@ -162,7 +163,7 @@ "then": { "en": "Injured animals are rehabilitated here until they can be released in nature again ", "de": "Tiere werden hier untergebracht und gepflegt bis sie wieder in freier Natur ausgesetzt werden können ", - "es": "Los animales heridos se rehabilitan aquí hasta que pueden ser liberados de nuevo en la naturaleza ", + "es": "Los animales heridos son rehabilitados aquí hasta que pueden ser liberados en la naturaleza de nuevo ", "zh_Hans": "受伤的动物在这里康复,直到它们可以再次被释放到大自然中 ", "ca": "Els animals ferits es rehabiliten aquí fins que puguen ser alliberats de nou a la natura ", "pl": "Ranne zwierzęta przechodzą tutaj rehabilitację do momentu, kiedy mogą zostać wypuszczone na wolność ", @@ -182,7 +183,7 @@ "pl": "Jakie zwierzęta są tutaj przyjmowane?", "ca": "Quins animals s'accepten aquí?", "cs": "Která zvířata jsou zde přijímána?", - "es": "¿Qué animales se aceptan aquí?" + "es": "¿Qué animales son aceptados aquí?" }, "id": "boarded_animals", "mappings": [ @@ -193,7 +194,7 @@ "de": "Hunde werden hier gehalten", "pl": "Są tutaj trzymane psy", "cs": "Chovají se zde psi", - "es": "Aquí se guardan perros" + "es": "Aquí se mantienen perros" } }, { @@ -203,7 +204,7 @@ "de": "Katzen werden hier gehalten", "pl": "Są tutaj trzymane koty", "cs": "Chovají se zde kočky", - "es": "Aquí se guardan gatos" + "es": "Aquí se mantienen gatos" } }, { @@ -213,7 +214,7 @@ "de": "Pferde werden hier gehalten", "pl": "Są tutaj trzymane konie", "cs": "Chovají se zde koně", - "es": "Aquí se guardan caballos" + "es": "Aquí se mantienen caballos" } }, { @@ -223,7 +224,7 @@ "de": "Vögel werden hier gehalten", "pl": "Są tutaj trzymane ptaki", "cs": "Chovají se zde ptáci", - "es": "Aquí se guardan aves" + "es": "Aquí se mantienen aves" } }, { @@ -233,7 +234,7 @@ "de": "Wildtiere werden hier gehalten", "pl": "Są tutaj trzymane dzikie zwierzęta", "cs": "Chovají se zde divoká zvířata", - "es": "Aquí se guardan animales salvajes" + "es": "Aquí se mantienen animales salvajes" } } ], @@ -241,7 +242,7 @@ "en": "{animal_shelter} is kept here", "de": "{animal_shelter} wird hier gehalten", "cs": "{animal_shelter} je uložen zde", - "es": "Aquí se guardan {animal_shelter}" + "es": "{animal_shelter} se mantiene aquí" }, "freeform": { "key": "animal_shelter" diff --git a/assets/layers/artwork/artwork.json b/assets/layers/artwork/artwork.json index f3310947c..32f04bd45 100644 --- a/assets/layers/artwork/artwork.json +++ b/assets/layers/artwork/artwork.json @@ -31,7 +31,7 @@ "de": "Eine freie Karte mit Statuen, Büsten, Graffitis und anderen Kunstwerken auf der ganzen Welt", "it": "Una mappa libera delle statue, i busti, i graffiti e le altre opere d'arte di tutto il mondo", "ru": "Разнообразные произведения искусства", - "es": "Un mapa abierto de Estatuas, bustos, Graffitis y otras Obras de Arte en todo el mundo", + "es": "Un mapa abierto de estatuas, bustos, grafitis y otras obras de arte de todo el mundo", "ja": "多様な作品", "zh_Hant": "顯示全世界的雕像、半身像、塗鴉以及其他類型的藝術品的地圖", "id": "Peta terbuka patung, grafiti, dan karya seni lainnya di seluruh dunia", @@ -45,7 +45,8 @@ "zgh": "ⵢⴰⵜ ⵜⴽⴰⵕⴹⴰ ⵉⵕⵥⵎⵏ ⵅⴼ ⵉⵙⴼⵔⵉⵙⵏ, ⵉⵖⵔⴰⵙⵏ ⴷ ⵜⵡⵓⵔⵉⵡⵉⵏ ⵜⵉⵏⴰⵥⵓⵕⵉⵏ ⵢⴰⴹⵏⵉⵏ ⴳ ⵓⵎⴰⴹⴰⵍ", "eu": "Estatuen, bustoen, graffitien eta mundu osoko beste artelan batzuen mapa irekia", "pl": "Otwarta mapa posągów, popiersi, graffiti i innych dzieł sztuki z całego świata", - "pt_BR": "Um mapa aberto de estátuas, bustos, grafites e outras obras de arte em todo o mundo" + "pt_BR": "Um mapa aberto de estátuas, bustos, grafites e outras obras de arte em todo o mundo", + "uk": "Відкрита мапа статуй, бюстів, графіті та інших творів мистецтва по всьому світу" }, "source": { "osmTags": "tourism=artwork" @@ -174,7 +175,7 @@ "ca": "una obra d'art en una paret", "de": "ein Kunstwerk an einer Wand", "cs": "umělecké dílo na zdi", - "es": "una obra de arte en la pared", + "es": "una obra de arte en una pared", "fr": "une œuvre sur un mur", "pl": "Dzieło sztuki na ścianie", "pt_BR": "uma obra de arte em uma parede", @@ -187,7 +188,7 @@ } ], "tagRenderings": [ - "images", + "images_no_blur", { "labels": [ "artwork-question" @@ -199,7 +200,7 @@ "de": "Dies ist ein {artwork_type}", "it": "Si tratta di un {artwork_type}", "ru": "Это {artwork_type}", - "es": "Esta es un {artwork_type}", + "es": "Se trata de un {artwork_type}", "ja": "これは{artwork_type}です", "zh_Hant": "這是 {artwork_type}", "nb_NO": "Dette er et kunstverk av typen {artwork_type}", @@ -220,7 +221,7 @@ "de": "Um welche Art Kunstwerk handelt es sich?", "it": "Che tipo di opera d’arte è questo?", "ru": "К какому типу относится эта работа?", - "es": "¿Qué tipo de obra es esta pieza?", + "es": "¿Qué tipo de obra de arte es esta?", "ja": "この作品の種類は何ですか?", "zh_Hant": "這是什麼類型的藝術品?", "nb_NO": "Hvilken type kunstverk er dette?", @@ -264,7 +265,8 @@ "pt_BR": "Arquitetura", "he": "אדריכלות", "eu": "Arkitektura", - "zh_Hans": "建筑" + "zh_Hans": "建筑", + "uk": "Архітектура" } }, { @@ -291,7 +293,8 @@ "pt_BR": "Mural", "he": "ציור קיר", "eu": "Murala", - "zh_Hans": "壁画" + "zh_Hans": "壁画", + "uk": "Мурал" } }, { @@ -317,7 +320,8 @@ "he": "ציור", "eu": "Margolana", "pt_BR": "Pintura", - "zh_Hans": "喷绘" + "zh_Hans": "喷绘", + "uk": "Живопис" } }, { @@ -344,7 +348,8 @@ "pt_BR": "Escultura", "he": "פיסול", "eu": "Eskultura", - "zh_Hans": "雕塑" + "zh_Hans": "雕塑", + "uk": "Скульптура" } }, { @@ -369,7 +374,8 @@ "pt_BR": "Estátua", "he": "פסל", "eu": "Estatua", - "zh_Hans": "雕像" + "zh_Hans": "雕像", + "uk": "Статуя" } }, { @@ -393,7 +399,8 @@ "cs": "Busta", "pt_BR": "Busto", "eu": "Bustoa", - "zh_Hans": "半身像" + "zh_Hans": "半身像", + "uk": "Бюст" } }, { @@ -420,7 +427,8 @@ "pt_BR": "Pedra", "he": "אבן", "eu": "Harria", - "zh_Hans": "石头" + "zh_Hans": "石头", + "uk": "Камінь" } }, { @@ -445,7 +453,8 @@ "cs": "Instalace", "pt_BR": "Instalação", "eu": "Instalazioa", - "zh_Hans": "设施" + "zh_Hans": "设施", + "uk": "Інсталяція" } }, { @@ -470,7 +479,8 @@ "cs": "Grafiti", "eu": "Graffitia", "pt_BR": "Grafite", - "zh_Hans": "涂鸦/粗糙雕刻" + "zh_Hans": "涂鸦/粗糙雕刻", + "uk": "Графіті" } }, { @@ -494,7 +504,8 @@ "da": "Relief", "cs": "Reliéf", "eu": "Erliebea", - "pt_BR": "Relevo" + "pt_BR": "Relevo", + "uk": "Рельєф" } }, { @@ -513,12 +524,13 @@ "pt": "Azulejo (azulejo decorativo espanhol e português)", "hu": "Azulejo (portugál vagy spanyol dekoratív csempe)", "pl": "Azulejo (hiszpańskie płytka dekoracyjna)", - "es": "Azulejo (Baldosas decorativas Españolas y Portuguesas)", + "es": "Azulejo (trabajo decorativo en azulejos español)", "da": "Azulejo (spansk dekorativt flisebeklædning)", "cs": "Azulejo (španělské dekorativní dlaždice)", "ca": "Azulejo (Rajoles decoratives espanyoles i portugueses)", "pt_BR": "Azulejo (Revestimento de azulejos decorativos espanhóis)", - "zh_Hans": "Azulejo(西班牙装饰瓷砖)" + "zh_Hans": "Azulejo(西班牙装饰瓷砖)", + "uk": "Азулехо (іспанська декоративна плитка)" } }, { @@ -537,12 +549,13 @@ "hu": "Csempe", "pl": "Płyta ceramiczna (fliza)", "ca": "Enrajolat", - "es": "Cerámica", + "es": "Trabajo en azulejo", "da": "flisebeklædning", "cs": "Obklady a dlažba", "he": "יצירת פסיפס", "eu": "Keramika", - "pt_BR": "Azulejaria" + "pt_BR": "Azulejaria", + "uk": "Кахельна плитка" } }, { @@ -556,12 +569,13 @@ "fr": "Sculpture sur bois", "nb_NO": "Treskjæring", "ca": "Tallat a la fusta", - "es": "Tallado en madera", + "es": "Talla en madera", "he": "גילוף בעץ", "eu": "Egur taila", "pl": "Rzeźbienie w drewnie", "pt_BR": "Entalhe", - "it": "Scultura in legno" + "it": "Scultura in legno", + "uk": "Різьба по дереву" } } ], @@ -578,7 +592,7 @@ "nl": "Dit kunstwerk is gemaakt door {wikidata_label(artist:wikidata):font-weight:bold}
{wikipedia(artist:wikidata)}", "cs": "Toto dílo vytvořil {wikidata_label(artist:wikidata):font-weight:bold}
{wikipedia(artist:wikidata)}", "pt": "Esta obra de arte foi feita por {wikidata_label(artist:wikidata):font-weight:bold}
{wikipedia(artist:wikidata)}", - "es": "Esta obra de arte la creó {wikidata_label(artist:wikidata):font-weight:bold}
{wikipedia(artist:wikidata)}", + "es": "Esta obra de arte fue hecha por {wikidata_label(artist:wikidata):font-weight:bold}
{wikipedia(artist:wikidata)}", "ca": "Aquesta obra d'art la va crear {wikidata_label(artist:wikidata):font-weight:bold}
{wikipedia(artist:wikidata)}", "fr": "Cette oeuvre a été crée par {wikidata_label(artist:wikidata):font-weight:bold}
{wikipedia(artist:wikidata)}", "pl": "To dzieło sztuki zostało zrobione przez {wikidata_label(artist:wikidata):font-weight:bold}
{wikipedia(artist:wikidata)}", @@ -591,14 +605,15 @@ "nl": "Wie heeft dit kunstwerk gemaakt?", "cs": "Kdo je autorem tohoto díla?", "pt": "Quem fez essa obra de arte?", - "es": "¿Quién creó esta obra de arte?", + "es": "¿Quién hizo esta obra de arte?", "fr": "Qui a fait cette oeuvre d'art ?", "ca": "Qui va crear aquesta obra d'art?", "nb_NO": "Hvem laget dette kunstverket?", "he": "מי יצר את היצירה הזו?", "pl": "Kto stworzył to dzieło sztuki?", "pt_BR": "Quem fez essa obra de arte?", - "zh_Hans": "这件艺术品是谁创作的?" + "zh_Hans": "这件艺术品是谁创作的?", + "uk": "Хто створив цю роботу?" }, "freeform": { "key": "artist:wikidata", @@ -628,7 +643,7 @@ "pt": "Que artista criou isto?", "hu": "Melyik művész alkotása ezt?", "pl": "Który artysta to stworzył?", - "es": "¿Que artista creó esto?", + "es": "¿Qué artista lo creó?", "da": "Hvilken kunstner har lavet dette?", "cs": "Který umělec to vytvořil?", "ca": "Quin artista va crear açò?", @@ -796,7 +811,8 @@ "de": "Dient dieses Kunstwerk als Mahnmal?", "fr": "Cet œuvre a-t-elle un rôle de mémorial ?", "cs": "Slouží toto dílo jako památník?", - "es": "¿Sirve esta obra de arte como monumento conmemorativo?" + "es": "¿Esta obra de arte sirve como monumento?", + "uk": "Чи слугує ця робота меморіалом?" }, "mappings": [ { @@ -807,18 +823,19 @@ "ca": "Aquesta obra d'art també serveix com a memorial", "fr": "Cette œuvre est un mémorial", "cs": "Toto dílo slouží také jako památník", - "es": "Esta obra de arte también sirve como monumento conmemorativo" + "es": "Esta obra de arte también sirve como monumento", + "uk": "Цей витвір мистецтва також слугує меморіалом" } }, { "if": "historic=", "alsoShowIf": "historic!=memorial", "then": { - "en": "This artwork does not serve as a bench", - "de": "Dieses Kunstwerk dient nicht als Sitzbank", - "fr": "Cette œuvre ne sert pas de banc", - "cs": "Toto dílo neslouží jako lavička", - "es": "Esta obra de arte no sirve como banco" + "en": "This artwork does not serve as a memorial", + "de": "Dieses Kunstwerk dient nicht als Denkmal", + "uk": "Ця робота не є меморіалом", + "cs": "Toto umělecké dílo neslouží jako památník", + "es": "Esta obra de arte no sirve como monumento" } } ] @@ -846,9 +863,10 @@ "he": "האם היצירה הזו משמשת כספסל?", "pl": "Czy to dzieło sztuki pełni funkcję ławki?", "pt_BR": "Essa obra de arte serve como banco?", - "es": "¿Sirve esta obra de arte como banco?", + "es": "¿Esta obra de arte sirve como banco?", "pt": "Esta obra de arte serve como banco?", - "it": "Quest'opera d'arte funge da panchina?" + "it": "Quest'opera d'arte funge da panchina?", + "uk": "Чи слугує ця робота лавкою?" }, "mappings": [ { @@ -863,9 +881,10 @@ "he": "יצירה זו משמשת גם כספסל", "pl": "To dzieło sztuki pełni również funkcję ławki", "pt_BR": "Essa obra de arte também serve como banco", - "es": "Esta obra de arte también sirve de banco", + "es": "Esta obra de arte también sirve como banco", "pt": "Esta obra de arte também serve como banco", - "it": "Quest'opera d'arte funge anche da panchina" + "it": "Quest'opera d'arte funge anche da panchina", + "uk": "Цей витвір мистецтва також слугує лавкою" } }, { @@ -881,9 +900,10 @@ "he": "יצירה זו אינה משמשת כספסל", "pl": "To dzieło sztuki nie pełni funkcji ławki", "pt_BR": "Essa obra de arte não serve como banco", - "es": "Esta obra no sirve de banco", + "es": "Esta obra de arte no sirve como banco", "pt": "Esta obra de arte não serve como banco", - "it": "Quest'opera d'arte non funge anche da panchina" + "it": "Quest'opera d'arte non funge anche da panchina", + "uk": "Цей витвір мистецтва не слугує лавкою" } }, { @@ -899,7 +919,7 @@ "he": "יצירה זו אינה משמשת כספסל", "pl": "To dzieło sztuki nie pełni funkcji ławki", "pt_BR": "Essa obra de arte não serve como banco", - "es": "Esta obra no sirve de banco", + "es": "Esta obra de arte no sirve como banco", "pt": "Esta obra de arte não serve como banco", "it": "Quest'opera d'arte non funge anche da panchina" }, diff --git a/assets/layers/assembly_point/assembly_point.json b/assets/layers/assembly_point/assembly_point.json index b6012e91c..d23e1cf2b 100644 --- a/assets/layers/assembly_point/assembly_point.json +++ b/assets/layers/assembly_point/assembly_point.json @@ -5,14 +5,15 @@ "it": "Punti di raccolta per emergenze", "de": "Notfallsammelplätze", "cs": "Nouzová shromaždiště", - "es": "Puntos de encuentro por emergencia" + "es": "Puntos de reunión en caso de emergencia" }, "description": { "en": "This layer contains assembly points and waiting areas where all employees, passengers or a large crowd assemble in case of an emergency.", "it": "Questo livello contiene punti di raccolta e aree di attesa in cui tutti i dipendenti, i passeggeri o una grande folla si riuniscono in caso di emergenza.", "de": "Diese Ebene enthält Sammelplätze und Wartebereiche, in denen sich alle Mitarbeiter, Fahrgäste oder eine große Menschenmenge im Notfall versammeln.", "pl": "Ta warstwa zawiera punkty zbiórki oraz miejsca oczekiwania, gdzie wszyscy pracownicy, pasażerowie lub duży tłum gromadzą się w przypadku zagrożenia.", - "cs": "Tato vrstva obsahuje shromaždiště a čekací prostory, kde se v případě nouze shromažďují všichni zaměstnanci, cestující nebo velký dav lidí." + "cs": "Tato vrstva obsahuje shromaždiště a čekací prostory, kde se v případě nouze shromažďují všichni zaměstnanci, cestující nebo velký dav lidí.", + "es": "Esta capa contiene puntos de reunión y áreas de espera donde todos los empleados, pasajeros o una gran multitud se reúnen en caso de emergencia." }, "source": { "osmTags": { @@ -27,7 +28,7 @@ "en": "Assembly point during emergencies", "de": "Sammelplatz bei Notfällen", "cs": "Shromaždiště při mimořádných událostech", - "es": "Punto de encuentro durante emergencias" + "es": "Punto de reunión en caso de emergencia" } }, "pointRendering": [ @@ -53,7 +54,7 @@ "de": "ein Sammelplatz", "pl": "punkt zbiórki", "cs": "shromaždiště", - "es": "un punto de encuentro" + "es": "un punto de reunión" }, "tags": [ "emergency=assembly_point" @@ -73,7 +74,7 @@ "de": "Wie lautet der Name dieser Sammelstelle?", "pl": "Jak nazywa się ten punkt zbiórki?", "cs": "Jak se jmenuje toto shromaždiště?", - "es": "¿Cuál es el nombre de este punto de encuentro?" + "es": "¿Cuál es el nombre de este punto de reunión?" }, "render": { "en": "This assembly point is named {name}", @@ -81,7 +82,7 @@ "de": "Diese Sammelstelle hat den Namen {name}", "pl": "Ten punkt zbiórki nazywa się {name}", "cs": "Toto shromaždiště se jmenuje {name}", - "es": "Este punto de encuentro se llama {name}" + "es": "Este punto de reunión se llama {name}" } }, { @@ -91,14 +92,14 @@ "it": "Questo punto di raccolta è gestita da {operator}", "de": "Diese Sammelstelle wird von {operator} betrieben", "cs": "Toto shromaždiště provozuje {operator}", - "es": "Este punto de encuentro lo opera {operator}" + "es": "Este punto de reunión es operado por {operator}" }, "question": { "en": "What organization operates this assembly point?", "it": "Quale organizzazione gestisce questo punto di raccolta?", "de": "Welche Organisation betreibt diese Sammelstelle?", "cs": "Jaká organizace provozuje toto shromaždiště?", - "es": "¿Qué organización opera este punto de encuentro?" + "es": "¿Qué organización opera este punto de reunión?" }, "freeform": { "key": "operator", @@ -112,7 +113,7 @@ "it": "Per quali tipi di disastro è pensato questo punto di raccolta?", "de": "Für welche Art von Katastrophe ist diese Sammelstelle gedacht?", "cs": "Pro jaký typ katastrofy je toto shromaždiště určeno?", - "es": "¿A qué tipo de catástrofe está destinado este punto de encuentro?" + "es": "¿Para qué tipo de desastre está destinado este punto de reunión?" }, "multiAnswer": true, "mappings": [ @@ -141,7 +142,7 @@ "de": "Flut", "pl": "Powódź", "cs": "Povodně", - "es": "Riada" + "es": "Inundación" }, "icon": { "path": "./assets/layers/assembly_point/flood.svg", @@ -173,7 +174,7 @@ "de": "Erdrutsch", "pl": "Osuwisko", "cs": "Sesuv půdy", - "es": "Deslizamiento de tierra" + "es": "Deslave" }, "icon": { "path": "./assets/layers/assembly_point/landslide.svg", diff --git a/assets/layers/assisted_repair/assisted_repair.json b/assets/layers/assisted_repair/assisted_repair.json index 27bb448c8..4638d1d86 100644 --- a/assets/layers/assisted_repair/assisted_repair.json +++ b/assets/layers/assisted_repair/assisted_repair.json @@ -3,12 +3,14 @@ "name": { "en": "Repair cafés and assisted repair workshops", "de": "Repair-Cafés und unterstützte Reparaturwerkstätten", - "cs": "Opravárenské kavárny a asistované opravárenské dílny" + "cs": "Opravárenské kavárny a asistované opravárenské dílny", + "es": "Cafés de reparación y talleres de reparación asistida" }, "description": { "en": "A self-assisted workshop is a location where people can come and repair their goods with help of volunteers and with the tools available at the given location. A repair café is a type of event organized regularly along the same principles.", "de": "Eine Selbsthilfewerkstatt ist ein Ort, an dem Menschen ihre Gegenstände mit Hilfe von Freiwilligen und den vor Ort verfügbaren Werkzeugen reparieren können. Ein Repair-Café ist eine Art von Veranstaltung, die regelmäßig nach denselben Prinzipien organisiert wird.", - "cs": "Svépomocná dílna je místo, kam mohou lidé přijít a opravit si své zboží s pomocí dobrovolníků a nástrojů, které jsou na daném místě k dispozici. Opravárenská kavárna je typ akce, která se pravidelně pořádá na stejných principech." + "cs": "Svépomocná dílna je místo, kam mohou lidé přijít a opravit si své zboží s pomocí dobrovolníků a nástrojů, které jsou na daném místě k dispozici. Opravárenská kavárna je typ akce, která se pravidelně pořádá na stejných principech.", + "es": "Un taller de reparación asistida es un lugar donde la gente puede venir y reparar sus bienes con la ayuda de voluntarios y con las herramientas disponibles en el lugar. Un café de reparación es un tipo de evento organizado regularmente con los mismos principios." }, "source": { "osmTags": "repair=assisted_self_service" @@ -18,7 +20,8 @@ "render": { "en": "Workshop for assisted repair", "de": "Werkstatt für unterstützte Reparaturen", - "cs": "Dílna pro asistované opravy" + "cs": "Dílna pro asistované opravy", + "es": "Taller de reparación asistida" }, "mappings": [ { @@ -73,7 +76,8 @@ "title": { "en": "an assisted repair workshop", "de": "Eine unterstützte Reparaturwerkstatt", - "cs": "asistovaná opravárenská dílna" + "cs": "asistovaná opravárenská dílna", + "es": "un taller de reparación asistida" }, "tags": [ "amenity=workshop", @@ -82,7 +86,8 @@ "description": { "en": "A location with a permanent workshop where people can come to repair items with the help of volunteers.", "de": "Ein Ort mit einer festen Werkstatt, in der Menschen mit Hilfe von Freiwilligen Gegenstände reparieren können.", - "cs": "Místo se stálou dílnou, kam mohou lidé přijít a s pomocí dobrovolníků opravovat předměty." + "cs": "Místo se stálou dílnou, kam mohou lidé přijít a s pomocí dobrovolníků opravovat předměty.", + "es": "Un lugar con un taller permanente donde la gente puede venir a reparar artículos con la ayuda de voluntarios." } } ], @@ -116,7 +121,7 @@ "en": "What type of items are repaired here?", "de": "Welche Art von Gegenständen wird hier repariert?", "cs": "Jaké předměty se zde opravují?", - "es": "¿Qué tipo de objetos se reparan aquí?" + "es": "¿Qué tipo de artículos se reparan aquí?" }, "id": "item:repair", "mappings": [ @@ -202,7 +207,7 @@ "en": "Clothes are repaired here", "de": "Kleidung wird hier repariert", "cs": "Zde se opravují oděvy", - "es": "Aquí se reparan prendas textiles" + "es": "Aquí se repara ropa" }, "ifnot": "service:clothes:repair=no", "icon": "./assets/layers/recycling/clothes.svg" diff --git a/assets/layers/atm/atm.json b/assets/layers/atm/atm.json index 7eea7683c..d230f078a 100644 --- a/assets/layers/atm/atm.json +++ b/assets/layers/atm/atm.json @@ -67,7 +67,7 @@ "he": "כספומט {brand}", "pl": "Bankomat {brand}", "pt_BR": "Caixa eletrônico {brand}", - "es": "Cajero automático de {brand}", + "es": "Cajero automático {brand}", "pt": "Multibanco {brand}" } } @@ -127,7 +127,7 @@ "he": "שמו של כספומט זה הוא {name}", "pl": "Nazwa tego bankomatu to {name}", "pt_BR": "O nome desse caixa eletrônico é {name}", - "es": "El nombre del banco de este cajero automático es {name}", + "es": "El nombre de este cajero automático es {name}", "pt": "O nome deste multibanco é {name}", "it": "Il nome di questo sportello bancomat è {name}" }, @@ -146,7 +146,7 @@ "he": "איזה מותג הכספומט הזה?", "pl": "Jakiej marki jest ten bankomat?", "pt_BR": "De qual marca é esse caixa eletrônico?", - "es": "¿De qué banco es este cajero?", + "es": "¿De qué marca es este cajero automático?", "pt": "De qual marca é este multibanco?" }, "freeform": { @@ -166,7 +166,7 @@ "he": "שם מותג", "pl": "Nazwa handlowa", "pt_BR": "Nome da marca", - "es": "Marca", + "es": "Nombre de la marca", "pt": "Nome da marca" } }, @@ -180,7 +180,7 @@ "cs": "Značka tohoto bankomatu je {brand}", "he": "המותג של כספומט זה הוא {brand}", "pt_BR": "A marca desse caixa eletrônico é {brand}", - "es": "El banco de este cajero automático es {brand}", + "es": "La marca de este cajero automático es {brand}", "pt": "A marca deste multibanco é {brand}", "pl": "Marka tego bankomatu to {brand}" } @@ -199,7 +199,7 @@ "he": "איזו חברה מפעילה את הכספומט הזה?", "pl": "Jaka firma obsługuje ten bankomat?", "pt_BR": "Qual companhia opera esse caixa eletrônico?", - "es": "¿De qué banco es este cajero automático?", + "es": "¿Qué empresa opera este cajero automático?", "pt": "Qual companhia opera este multibanco?" }, "freeform": { @@ -231,7 +231,7 @@ "he": "הכספומט מופעל על ידי {operator}", "pl": "Ten bankomat jest obsługiwany przez {operator}", "pt_BR": "O caixa eletrônico é operado por {operator}", - "es": "El cajero lo opera {operator}", + "es": "El cajero automático es operado por {operator}", "pt": "O multibanco é operado por {operator}", "sl": "Ta bankomat upravlja {operator}" } @@ -248,7 +248,7 @@ "cs": "Lze z tohoto bankomatu vybírat hotovost?", "he": "האם אתה יכול למשוך מזומן מהכספומט הזה?", "pt_BR": "Você pode sacar dinheiro nesse caixa eletrônico?", - "es": "¿Se puede sacar dinero de este cajero?", + "es": "¿Se puede retirar efectivo de este cajero automático?", "pt": "Pode levantar dinheiro neste multibanco?", "it": "Puoi prelevare dei contanti da questo sportello bancomat?" }, @@ -265,7 +265,7 @@ "he": "אתה יכול למשוך מזומן מהכספומט הזה", "pl": "Z tego bankomatu można wypłacić pieniądze", "pt_BR": "Você pode sacar dinheiro nesse caixa eletrônico", - "es": "Puede retirar dinero de este cajero automático", + "es": "Se puede retirar efectivo de este cajero automático", "pt": "Pode levantar dinheiro neste multibanco", "it": "Puoi prelevare dei contanti da questo sportello bancomat" }, @@ -281,7 +281,7 @@ "cs": "Z tohoto bankomatu můžete vybírat hotovost", "he": "אתה יכול למשוך מזומן מהכספומט הזה", "pt_BR": "Você pode sacar dinheiro nesse caixa eletrônico", - "es": "Puede retirar dinero de este cajero automático", + "es": "Se puede retirar efectivo de este cajero automático", "pt": "Pode levantar dinheiro neste multibanco", "it": "Puoi prelevare dei contanti da questo sportello bancomat" } @@ -296,7 +296,7 @@ "cs": "Z tohoto bankomatu nelze vybírat hotovost", "he": "לא ניתן למשוך מזומן מכספומט זה", "pt_BR": "Você não pode sacar dinheiro nesse caixa eletrônico", - "es": "No puede retirar dinero de este cajero automático", + "es": "No se puede retirar efectivo de este cajero automático", "pt": "Não pode levantar dinheiro neste multibanco", "it": "Non puoi prelevare dei contanti da questo sportello bancomat" } @@ -315,7 +315,7 @@ "he": "האם אתה יכול להפקיד מזומן בכספומט הזה?", "pl": "Czy ten bankomat pozwala wpłacać pieniądze?", "pt_BR": "Você pode depositar dinheiro nesse caixa eletrônico?", - "es": "¿Se puede ingresar dinero en efectivo en este cajero?", + "es": "¿Se puede ingresar efectivo en este cajero automático?", "pt": "Pode depositar dinheiro neste multibanco?", "it": "Puoi depositare dei contanti in questo sportello bancomat?" }, @@ -333,7 +333,7 @@ "he": "כנראה שלא תוכל להפקיד מזומן בכספומט הזה", "pl": "Prawdopodobnie ten bankomat nie pozwala wpłacać pieniędzy", "pt_BR": "Você provavelmente não pode depositar dinheiro nesse caixa eletrônico", - "es": "Es probable que no pueda ingresar dinero en efectivo en este cajero automático", + "es": "Probablemente no se puede ingresar efectivo en este cajero automático", "pt": "Provavelmente não pode depositar dinheiro neste multibanco", "it": "Probabilmente non puoi depositare dei contanti in questo sportello bancomat" }, @@ -352,7 +352,7 @@ "he": "אתה יכול להפקיד מזומן לכספומט זה", "pl": "Ten bankomat pozwala wpłacać pieniądze", "pt_BR": "Você pode depositar dinheiro nesse caixa eletrônico", - "es": "Puede ingresar dinero en efectivo en este cajero automático", + "es": "Se puede ingresar efectivo en este cajero automático", "pt": "Pode depositar dinheiro neste mutibanco", "it": "Puoi depositare dei contanti in questo sportello bancomat" } @@ -370,7 +370,7 @@ "he": "לא ניתן להפקיד מזומן לכספומט זה", "pl": "Ten bankomat nie pozwala wpłacać pieniędzy", "pt_BR": "Você não pode depositar dinheiro nesse caixa eletrônico", - "es": "No se puede ingresar dinero en efectivo en este cajero automático", + "es": "No se puede ingresar efectivo en este cajero automático", "pt": "Não pode depositar dinheiro neste multibanco", "it": "Non puoi depositare dei contanti in questo sportello bancomat" } @@ -405,7 +405,7 @@ "ca": "Quins bitllets pots retirar aquí?", "pl": "Jakie banknoty można tutaj wypłacić?", "pt_BR": "Quais notas você pode sacar aqui?", - "es": "¿Qué billetes puede retirar aquí?", + "es": "¿Qué billetes se pueden retirar aquí?", "pt": "Quais notas pode levantar aqui?", "it": "Quali banconote si possono ritirare qui?" }, @@ -535,7 +535,7 @@ "cs": "Má tento bankomat hlasový výstup pro zrakově postižené uživatele?", "he": "האם לכספומט הזה יש פלט דיבור למשתמשים לקויי ראייה?", "pt_BR": "Esse caixa eletrônico tem saída de fala para usuários com deficiência visual?", - "es": "¿Dispone este cajero automático de salida de voz para usuarios con discapacidad visual?", + "es": "¿Este cajero automático tiene salida de voz para usuarios con discapacidad visual?", "pt": "Este multibanco tem saída de fala para utilizadores com deficiência visual?" }, "mappings": [ @@ -549,7 +549,7 @@ "cs": "Tento bankomat má řečový výstup, který je obvykle dostupný přes konektor pro sluchátka", "he": "לכספומט זה יש פלט דיבור, זמין בדרך כלל דרך שקע אוזניות", "pt_BR": "Este caixa eletrônico possui saída de fala, geralmente disponível por meio de um plug de fone de ouvido", - "es": "Este cajero automático tiene salida de voz, normalmente disponible a través de una toma de auriculares", + "es": "Este cajero automático tiene salida de voz, generalmente disponible a través de una toma de auriculares", "pt": "Este multibanco tem saída de fala, geralmente disponível por meio de um plug de auscultadores" } }, @@ -563,7 +563,7 @@ "cs": "Tento bankomat nemá hlasový výstup", "he": "לכספומט זה אין פלט דיבור", "pt_BR": "Esse caixa eletrônico não possui saída de fala", - "es": "Este cajero no tiene salida de voz", + "es": "Este cajero automático no tiene salida de voz", "pt": "Este multibanco não possui saída de fala" } } @@ -625,7 +625,7 @@ "cs": "S hlasovým výstupem", "he": "עם פלט דיבור", "pt_BR": "Com saída de fala", - "es": "Con salida de audio", + "es": "Con salida de voz", "pt": "Com saída de fala" }, "osmTags": "speech_output=yes" diff --git a/assets/layers/bank/bank.json b/assets/layers/bank/bank.json index 1b8f9ffd4..beae51476 100644 --- a/assets/layers/bank/bank.json +++ b/assets/layers/bank/bank.json @@ -70,7 +70,7 @@ "he": "האם לבנק הזה יש כספומט?", "pl": "Czy ten bank ma bankomat?", "pt_BR": "Esse banco tem caixa eletrônico?", - "es": "¿Tiene este banco cajero automático?", + "es": "¿Este banco tiene un cajero automático?", "pt": "Este banco tem multibanco?" }, "mappings": [ @@ -101,7 +101,7 @@ "cs": "Tato banka nemá bankomat", "pl": "Ten bank nie ma bankomatu", "pt_BR": "Este banco não tem um caixa eletrônico", - "es": "Este banco no tiene cajero automático", + "es": "Este banco no tiene un cajero automático", "pt": "Este banco não tem um multibanco" } }, @@ -114,7 +114,7 @@ "ca": "Aquest banc té un caixer, però està mapejat com a un element diferent", "cs": "Tato banka má bankomat, ale je namapován jako jiná ikona", "pt_BR": "Este banco tem um caixa eletrônico, mas está mapeado como um ícone diferente", - "es": "Este banco tiene un cajero automático, pero aparece con un icono diferente", + "es": "Este banco tiene un cajero automático, pero se muestra con un icono diferente", "pt": "Este banco tem um multibanco, mas está mapeado como um ícone diferente" } } diff --git a/assets/layers/barrier/barrier.json b/assets/layers/barrier/barrier.json index 6202f6204..1992de8f4 100644 --- a/assets/layers/barrier/barrier.json +++ b/assets/layers/barrier/barrier.json @@ -25,7 +25,7 @@ "de": "Hindernisse beim Fahrradfahren, wie zum Beispiel Poller und Fahrrad Barrieren", "hu": "Kerékpározás közbeni akadályok, például terelőoszlopok és kerékpárakadályok", "fr": "Obstacles à vélo, tels que des potelets ou des barrières", - "es": "Obstáculos durante el uso de la bicicleta, como bolardos y barreras para bicicletas", + "es": "Obstáculos al ciclar, como bolardos y barreras para bicicletas", "da": "Forhindringer under cykling, f.eks. pæle og cykelbarrierer", "cs": "Překážky při jízdě na kole, jako jsou patníky a zábrany pro cyklisty", "nb_NO": "Hindringer for sykling, som f.eks. pullerter og sykkelbarrièrer", @@ -86,7 +86,7 @@ "de": "Barriere für Radfahrer", "fr": "Barrière à vélos", "ca": "Barrera ciclista", - "es": "Barrera Ciclista", + "es": "Barrera para bicicletas", "da": "Cykelbarriere", "cs": "Cyklistická bariéra", "pt_BR": "Barreira para ciclistas", @@ -121,7 +121,7 @@ "ru": "Прикол", "fr": "une bollard", "hu": "Terelőoszlop", - "es": "una bolardo", + "es": "un bolardo", "ca": "una pilona", "da": "en pullert", "cs": "sloupek", @@ -158,7 +158,7 @@ "hu": "Kerékpárakadály", "fr": "une barrière cyclable", "da": "en stibom", - "es": "una barrera ciclista", + "es": "una barrera para bicicletas", "cs": "cyklistická bariéra", "nb_NO": "en sykkelbarrière", "ca": "una barrera ciclista", @@ -175,7 +175,7 @@ "hu": "A kerékpáros sebességét csökkentő kerékpárakadály", "fr": "Barrières cyclables, ralentissant les cyclistes", "da": "Stibomme, der fartdæmper cyklister", - "es": "Una barrera ciclista, que ralentiza a los ciclistas", + "es": "Barrera para bicicletas, que ralentiza a los ciclistas", "cs": "Bariéra pro cyklisty, která zpomaluje cyklisty", "nb_NO": "Sykkelbarrièrer, for å dempe farten", "ca": "Una barrera ciclista que relanteix als ciclistes", @@ -198,7 +198,7 @@ "de": "Kann ein Radfahrer das Hindernis passieren?", "hu": "Át lehet-e menni rajta kerékpárral?", "fr": "Est-ce qu'un vélo peut franchir cette barrière ?", - "es": "¿Una bicicleta puede pasar esta barrera?", + "es": "¿Puede pasar una bicicleta por esta barrera?", "da": "Kan en cykel køre forbi denne barriere?", "cs": "Může tuto bariéru překonat jízdní kolo?", "ca": "Una bicicleta pot passar aquesta barrera?", @@ -215,7 +215,7 @@ "fr": "Un cycliste peut franchir ceci.", "hu": "Kerékpárral át lehet hajtani.", "da": "En cyklist kan cykle forbi denne.", - "es": "Un ciclista puede pasar esto.", + "es": "Un ciclista puede pasar por aquí.", "cs": "Cyklista ji může projet.", "ca": "Un ciclista pot passar-hi.", "pt_BR": "Um ciclista pode passar por isso.", @@ -232,7 +232,7 @@ "fr": "Un cycliste ne peut pas franchir ceci.", "hu": "Kerékpárral nem lehet áthajtani.", "da": "En cyklist kan ikke cykle forbi denne.", - "es": "Un ciclista no puede pasar esto.", + "es": "Un ciclista no puede pasar por aquí.", "cs": "Cyklista tudy nemůže projet.", "ca": "Un ciclista no pot passar-hi.", "pt_BR": "Um ciclista não pode passar por isso.", @@ -254,7 +254,7 @@ "nl": "Dit is een enkel paaltje in de weg", "fr": "C'est un plot unique sur la route", "de": "Dies ist ein einzelner Poller auf der Straße", - "es": "Este es un único bolardo en la carretera", + "es": "Se trata de un solo bolardo en la carretera", "da": "Dette er en enkelt pullert på vejen", "cs": "Jedná se o jeden sloupek na silnici", "ca": "Aquest és un únic piló a la carretera", @@ -270,7 +270,7 @@ "hu": "Ez egy kerékpárakadály, amely lelassítja a kerékpárosokat", "fr": "C'est une barrière visant à ralentir les vélos", "de": "Dies ist eine Fahrradbarriere, die Radfahrer abbremst", - "es": "Esta es una barrera ciclista que ralentiza a los ciclistas", + "es": "Se trata de una barrera para bicicletas que ralentiza a los ciclistas", "da": "Dette er en cykelbarriere, der bremser cyklisterne", "cs": "Jedná se o cyklistickou bariéru, která zpomaluje cyklisty", "ca": "Açò és una barrera ciclista que relantitza als ciclistes", @@ -340,7 +340,7 @@ "fr": "Bollard qui peut être couché", "hu": "Lehajtható terelőoszlop", "da": "Pullert, der kan klappes ned", - "es": "Bolardo retráctil", + "es": "Bolardo que se puede plegar", "cs": "Sklopný sloupek", "ca": "Piló retràctil", "nb_NO": "Pullert som kan klappes ned", @@ -356,7 +356,7 @@ "de": "Flexibler Poller, meist aus Kunststoff", "fr": "Bollard flexible, généralement en plastique", "hu": "Rugalmas (általában műanyag) terelőoszlop", - "es": "Bolardo flexible, normalmente plástico", + "es": "Bolardo flexible, normalmente de plástico", "da": "Fleksibel pullert, normalt plast", "cs": "Pružný sloupek, obvykle plastový", "ca": "Piló flexible, normalment de plàstic", @@ -373,7 +373,7 @@ "de": "Ausfahrender Poller", "fr": "Bollard rétractable", "hu": "Felemelkedő terelőoszlop", - "es": "Bolardo levadizo", + "es": "Bolardo retráctil", "ca": "Pilona retràctil", "da": "Opstigende pullert", "cs": "Vyjíždějící sloupek", @@ -392,7 +392,7 @@ "de": "Um welche Art Fahrradhindernis handelt es sich?", "hu": "Milyen fajta kerékpárakadály ez?", "fr": "Quel est ce type de barrière cyclable ?", - "es": "¿Qué tipo de barrera ciclista es esta?", + "es": "¿Qué tipo de barrera para bicicletas es esta?", "da": "Hvad er det for en cykelbarriere?", "cs": "O jakou cyklistickou bariéru se jedná?", "nb_NO": "Hva slags sykkelbarrière er dette?", @@ -410,7 +410,7 @@ "de": "Einfach, nur zwei Barrieren mit einem Zwischenraum", "hu": "Egyszeres: csak két korlát, közöttük térköz", "fr": "Simple, deux barrières côte à côte", - "es": "Simple, simplemente dos barreras con un espacio en el medio", + "es": "Simple, solo dos barreras con un espacio entre ellas", "da": "Enkelt, kun to barrierer med et mellemrum", "cs": "Jednoduchý, jen dvě překážky s mezerou mezi nimi", "ca": "Simple, simplement dos barreres amb un espai al mig", @@ -430,7 +430,7 @@ "de": "Doppelt, zwei Barrieren hintereinander", "hu": "Kétszeres: két, egymáshoz képest eltolt korlát egymás után", "fr": "Double, deux barrières successives", - "es": "Doble, dos barreras una detrás de otra", + "es": "Doble, dos barreras una detrás de la otra", "da": "Dobbelt, to barrierer bag hinanden", "cs": "Dvojitý, dvě bariéry za sebou", "nb_NO": "Dobbel, to barrièrer etter hverandre", @@ -451,7 +451,7 @@ "de": "Dreifach, drei Barrieren hintereinander", "hu": "Háromszoros: három, egymáshoz képest eltolt korlát egymás után", "fr": "Triple, trois barrières successives", - "es": "Triple, tres barreras una detrás de otra", + "es": "Triple, tres barreras una detrás de la otra", "da": "Tredobbelt, tre barrierer bag hinanden", "cs": "Trojitá, tři bariéry za sebou", "nb_NO": "Trippel, tre barrièrer etter hverandre", @@ -472,7 +472,7 @@ "de": "Eine Durchfahrtsbeschränkung, Durchfahrtsbreite ist oben kleiner als unten", "hu": "Szűkítőkapu: a rés felül keskenyebb, mint alul", "fr": "Poire, l’espace en hauteur est plus faible qu’au sol", - "es": "Barrera de seguridad, el espacio es menor en la parte superior que en la inferior", + "es": "Puerta estrecha, el hueco es más pequeño en la parte superior que en la inferior", "da": "Squeeze gate, mellemrummet er mindre i toppen end i bunden", "ca": "Barrera de seguretat, l'espai és menor a la part superior que a l'inferior", "cs": "Zúžená brána, mezera nahoře je menší než dole", @@ -494,7 +494,7 @@ "de": "Maximale Durchfahrtsbreite: {maxwidth:physical} m", "fr": "Largeur maximale : {maxwidth:physical} m", "hu": "Legnagyobb szélesség: {maxwidth:physical} m", - "es": "Anchura máxima: {maxwidth:physical} m", + "es": "Ancho máximo: {maxwidth:physical} m", "da": "Maksimal bredde: {maxwidth:physical} m", "cs": "Maximální šířka: {maxwidth:physical} m", "pt": "Largura máxima: {maxwidth:physical} m", @@ -509,7 +509,7 @@ "de": "Welche Durchfahrtsbreite hat das Hindernis?", "hu": "Milyen széles az akadályon az a rés, amelyen át lehet haladni?", "fr": "Quelle est la largeur du passage ?", - "es": "¿Cómo de ancho es el hueco dejado fuera de la barrera?", + "es": "¿Qué ancho tiene el hueco que queda además de la barrera?", "da": "Hvor stort er mellemrummet udover barrieren?", "cs": "Jak široká je mezera, která zbývá vedle bariéry?", "ca": "Com d'ample és el buit que queda als costats de la barrera?", @@ -540,7 +540,7 @@ "de": "Abstand zwischen den Barrieren (entlang der Straße): {width:separation} m", "hu": "A korlátok közötti távolság (az út irányában): {width:separation} m", "fr": "Espace entre deux barrières successives : {width:separation} m", - "es": "Espacio entre barreras (a lo largo de la longitud de la carretera): {width:separation} m", + "es": "Espacio entre barreras (a lo largo de la carretera): {width:separation} m", "da": "Plads mellem barrierer (langs vejens længde): {width:separation} m", "cs": "Prostor mezi svodidly (po celé délce silnice): {width:separation} m", "ca": "Espai entre barreres (al llarg de la longitud de la carretera): {width:separation} m", @@ -553,7 +553,7 @@ "de": "Wie groß ist der Abstand zwischen den Barrieren (entlang der Straße)?", "hu": "Mekkora távolság van a korlátok között (az út irányában)?", "fr": "Combien d’espace sépare deux barrières successives ?", - "es": "¿Cuánto espacio hay entre las barreras (a lo largo de la longitud de la carretera)?", + "es": "¿Cuánto espacio hay entre las barreras (a lo largo de la carretera)?", "da": "Hvor meget plads er der mellem bommene (på langs af vejen)?", "cs": "Jak velký je prostor mezi svodidly (po celé délce silnice)?", "ca": "Quant espai hi ha entre les barreres (al llarg de la longitud de la carretera)?", @@ -583,7 +583,7 @@ "de": "Breite der Öffnung: {width:opening} m", "fr": "Largeur de l'ouverture : {width:opening} m", "hu": "Nyílás szélessége: {width:opening} m", - "es": "Anchura de la apertura: {width:opening} m", + "es": "Ancho de abertura: {width:opening} m", "da": "Bredde af åbning: {width:opening} m", "cs": "Šířka otvoru: {width:opening} m", "ca": "Amplada de l'apertura: {width:opening} m", @@ -596,7 +596,7 @@ "de": "Wie breit ist die kleinste Öffnung neben den Barrieren?", "hu": "Milyen széles a korlátok melletti legkisebb nyílás?", "fr": "Quelle est la largeur d'ouverture après la plus petite près de la barrière ?", - "es": "¿Que amplitud tiene la apertura más pequeña al lado de las barreras?", + "es": "¿Qué ancho tiene la abertura más pequeña junto a las barreras?", "da": "Hvor bred er den mindste åbning ved siden af barriererne?", "cs": "Jak široký je nejmenší otvor vedle bariér?", "ca": "Quina amplitud té l'obertura més petita al costat de les barreres?", @@ -626,7 +626,7 @@ "hu": "Átfedés: {overlap} m", "fr": "Chevauchement : {overlap} m", "nl": "Overlap: {overlap} m", - "es": "Solapado: {overlap} m", + "es": "Superposición: {overlap} m", "da": "Overlapning: {overlap} m", "cs": "Překrývání: {overlap} m", "ca": "Solapat: {overlap} m", @@ -639,7 +639,7 @@ "de": "Wie stark überschneiden sich die Barrieren?", "hu": "Mekkora a korlátok átfedése?", "fr": "Quel est le chevauchement des barrières ?", - "es": "¿Cuánto se solapan las barreras?", + "es": "¿Cuánta superposición tienen las barreras?", "da": "Hvor meget overlap har barriererne?", "cs": "Jak moc se bariéry překrývají?", "ca": "Quant es solapen les barreres?", diff --git a/assets/layers/bbq/bbq.json b/assets/layers/bbq/bbq.json index 025891645..c1f81c9e0 100644 --- a/assets/layers/bbq/bbq.json +++ b/assets/layers/bbq/bbq.json @@ -69,7 +69,8 @@ "question": { "en": "What is the permitted access?", "de": "Was ist der erlaubte Zugang?", - "cs": "Jaký přístup je povolen?" + "cs": "Jaký přístup je povolen?", + "es": "¿Cuál es el acceso permitido?" }, "mappings": [ { @@ -78,7 +79,7 @@ "de": "Öffentlich", "en": "Public", "cs": "Veřejné", - "es": "Pública" + "es": "Público" } }, { @@ -96,7 +97,7 @@ "de": "Privat", "en": "Private", "cs": "Soukromé", - "es": "Privada" + "es": "Privado" } }, { @@ -105,7 +106,7 @@ "de": "Zugang bis auf Widerruf", "en": "Access until revoked", "cs": "Přístup až do odvolání", - "es": "Acceso hasta que se anule" + "es": "Acceso hasta que se revoque" } }, { @@ -114,7 +115,7 @@ "de": "Zugang nur für Kunden", "en": "Access only for customers", "cs": "Přístup pouze pro zákazníky", - "es": "Acceso exclusivo para clientes" + "es": "Acceso solo para clientes" } }, { @@ -123,7 +124,7 @@ "de": "Zugang nur für Berechtigte", "en": "Access only for authorized persons", "cs": "Přístup pouze pro oprávněné osoby", - "es": "Acceso exclusivo a personal autorizado" + "es": "Acceso solo para personas autorizadas" } } ] @@ -161,7 +162,7 @@ "id": "fuel", "question": { "en": "How ist the grill fueled?", - "de": "Mit was wird die Grillstelle angefeuert?", + "de": "Womit wird der Grill befeuert?", "cs": "Jak je gril napájen?", "es": "¿Cómo se alimenta la parrilla?" }, diff --git a/assets/layers/bench/bench.json b/assets/layers/bench/bench.json index a9e5bca9d..116c35343 100644 --- a/assets/layers/bench/bench.json +++ b/assets/layers/bench/bench.json @@ -29,7 +29,7 @@ "en": "A bench is a wooden, metal, stone, … surface where a human can sit. This layers visualises them and asks a few questions about them.", "fr": "Un banc est une surface en bois, métal, pierre… sur laquelle un humain peut s'asseoir. Cette couche permet de les visualiser et pose des questions à leur sujet.", "de": "Diese Karte stellt Sitzbänke aus Holz, Metall, Stein, … dar und stellt ein paar Fragen, um weitere Informationen zu ergänzen.", - "es": "Un banco es una superficie de madera, metal, piedra, ... donde un humano se puede sentar. Estas capas los visualizan y hacen algunas preguntas sobre ellos.", + "es": "Un banco es una superficie de madera, metal, piedra,… donde un humano puede sentarse. Esta capa los visualiza y hace algunas preguntas sobre ellos.", "da": "En bænk er en træ-, metal-, sten-, ... overflade, hvor et menneske kan sidde. Dette lag visualiserer dem og stiller et par spørgsmål om dem.", "cs": "Lavička je dřevěná, kovová, kamenná, ... plocha, na které může člověk sedět. Tato vrstva je vizualizuje a klade si o nich několik otázek.", "ca": "Un banc és una superfície de madera, metall, pedra, … on un humà s’hi pot sentar. Aquesta capa els mostra i fa algunes preguntes sobre ells.", @@ -103,7 +103,7 @@ "de": "eine Sitzbank", "fr": "un banc", "nl": "een zitbank", - "es": "una banco", + "es": "un banco", "it": "una panchina", "ru": "cкамейка", "id": "bangku", @@ -140,12 +140,13 @@ "de": "Diese Bank ist zweiseitig und teilt sich die Rückenlehne", "ca": "Aquest banc té dues cares i comparteix el respatller", "cs": "Tato lavička je oboustranná a má společné opěradlo", - "es": "Este banco tiene dos caras y comparte el respaldo", + "es": "Este banco es de dos caras y comparte el respaldo", "he": "ספסל זה דו צדדי וחולק את משענת הגב", "fr": "Ce banc a deux côtés avec un dossier partagé", "pl": "Ta ławka jest dwustronna ze wspólnym oparciem", "pt_BR": "Esse banco é de dois lados e compartilha o encosto", - "pt": "Esse banco é de dois lados e partilha o encosto" + "pt": "Esse banco é de dois lados e partilha o encosto", + "uk": "Ця лавка двостороння і має спільну спинку" }, "icon": { "path": "./assets/layers/bench/two_sided.svg", @@ -160,7 +161,7 @@ "fr": "Ce banc a un dossier", "nl": "Heeft een rugleuning", "es": "Este banco tiene respaldo", - "hu": "Van háttámlája", + "hu": "A padnak van háttámlája", "id": "Sandaran: Ya", "it": "Schienale: Sì", "ru": "Со спинкой", @@ -174,7 +175,8 @@ "ca": "Aquest banc té espatller", "da": "Har et ryglæn", "cs": "Tato lavice má opěradlo", - "he": "יש משענת גב" + "he": "יש משענת גב", + "uk": "Ця лавка має спинку" }, "addExtraTags": [ "two_sided=no" @@ -191,7 +193,7 @@ "fr": "Ce banc n'a pas de dossier", "nl": "Heeft geen rugleuning", "es": "Este banco no tiene respaldo", - "hu": "Nincs háttámlája", + "hu": "A padnak nincs háttámlája", "id": "Sandaran: Tidak", "it": "Questa panchina non ha uno schienale", "ru": "Без спинки", @@ -204,7 +206,8 @@ "pt": "Não not tem um encosto", "ca": "Aquest banc No té espatller", "da": "Har ikke et ryglæn", - "cs": "Tato lavice nemá opěradlo" + "cs": "Tato lavice nemá opěradlo", + "uk": "Ця лавка не має спинки" } } ], @@ -213,7 +216,7 @@ "de": "Hat diese Sitzbank eine Rückenlehne?", "fr": "Ce banc dispose-t-il d'un dossier ?", "nl": "Heeft deze zitbank een rugleuning?", - "es": "¿Tiene este banco respaldo?", + "es": "¿Este banco tiene respaldo?", "hu": "Van-e háttámlája ennek a padnak?", "id": "Apakah bangku ini memiliki sandaran?", "it": "Questa panchina ha lo schienale?", @@ -227,7 +230,8 @@ "da": "Har denne bænk et ryglæn?", "cs": "Má tato lavička opěradlo?", "ca": "Aquest banc té respatller?", - "he": "האם לספסל הזה יש משענת?" + "he": "האם לספסל הזה יש משענת?", + "uk": "Чи є у цієї лавки спинка?" }, "id": "bench-backrest", "labels": [ @@ -243,7 +247,8 @@ "de": "Diese Sitzbank hat eine oder mehrere Armlehnen", "nl": "Deze bank heeft armleuningen", "cs": "Tato lavice má jednu nebo více opěrek na ruce", - "es": "Este banco dispone de uno o más reposabrazos" + "es": "Este banco tiene uno o más reposabrazos", + "uk": "Ця лавка має один або кілька підлокітників" } }, { @@ -253,7 +258,8 @@ "de": "Diese Sitzbank hat keine Armlehnen", "nl": "Deze bank heeft geen armleuningen", "cs": "Tato lavice nemá opěrky rukou", - "es": "Este banco not dispone de reposabrazos" + "es": "Este banco no tiene reposabrazos", + "uk": "Ця лавка не має підлокітників" } } ], @@ -262,7 +268,8 @@ "de": "Hat diese Sitzbank eine oder mehrere Armlehnen?", "nl": "Heeft deze bank armleuningen?", "cs": "Má tato lavice jednu nebo více opěrek?", - "es": "¿Dispone este banco de uno o más reposabrazos?" + "es": "¿Este banco tiene uno o más reposabrazos?", + "uk": "Чи має ця лавка один або кілька підлокітників?" }, "id": "bench-armrest", "labels": [ @@ -276,7 +283,7 @@ "fr": "{seats} places", "nl": "{seats} zitplaatsen", "es": "Este banco tiene {seats} asientos", - "hu": "{seats} ülőhely", + "hu": "A padra {seats} ember tud leülni", "id": "{seats} kursi", "it": "{seats} posti", "ru": "{seats} мест", @@ -532,7 +539,7 @@ "pt_BR": "De que é feito o banco (assento)?", "pl": "Z czego wykonana jest ławka (siedzisko)?", "pt": "De que é feito o banco (assento)?", - "es": "¿De que está hecho el banco (asiento)?", + "es": "¿De qué está hecho el banco (el asiento)?", "da": "Hvad er bænken (sædet) lavet af?", "cs": "Z čeho je vyrobena lavice (sedadlo)?", "ca": "De què està fent el banc (seient)?", @@ -557,7 +564,7 @@ "pt_BR": "Em que direção você olha quando está sentado no banco?", "pl": "W jakim kierunku patrzysz siedząc na ławce?", "pt": "Em que direção olha quando está sentado no banco?", - "es": "¿En qué dirección miras sentado en el banco?", + "es": "¿En qué dirección miras cuando te sientas en el banco?", "da": "I hvilken retning kigger du, når du sidder på bænken?", "cs": "Kterým směrem se díváte, když sedíte na lavičce?", "ca": "En quina direcció mires asseguts al banc?" @@ -575,7 +582,7 @@ "pl": "Siedząc na ławce, patrzy się w kierunku {direction}°.", "pt_BR": "Ao sentar-se no banco, olha-se para {direction} °.", "pt": "Ao sentar-se no banco, olha-se para {direction} °.", - "es": "Cuando se está sentado en el banco, se mira hacia a {direction}º.", + "es": "Cuando te sientas en el banco, miras hacia {direction}°.", "da": "Når man sidder på bænken, kigger man i retningen {direction}°.", "cs": "Když sedíte na lavičce, díváte se směrem v úhlu {direction}°.", "ca": "Quan s'està assegut al banc, es mira cap a {direction}º." @@ -861,7 +868,7 @@ "pt_BR": "Quando esta bancada foi pesquisada pela última vez?", "pl": "Kiedy ostatnio badano tę ławkę?", "pt": "Quando esta bancada foi pesquisada pela última vez?", - "es": "¿Cuándo fue la última vez que se inspeccionó este banco?", + "es": "¿Cuándo se inspeccionó por última vez este banco?", "da": "Hvornår blev denne bænk sidst kortlagt?", "cs": "Kdy byla tato lavička naposledy kontrolována?", "ca": "Quan va ser l'últim cop que s'ha inspeccionat aquest banc?", @@ -879,7 +886,7 @@ "pt_BR": "Esta bancada foi pesquisada pela última vez em {survey:date}", "pl": "Ławka ta była ostatnio badana w dniu {survey:date}", "pt": "Esta bancada foi pesquisada pela última vez em {survey:date}", - "es": "Este banco se inspeccionó por última vez el {survey:date}", + "es": "Este banco fue inspeccionado por última vez el {survey:date}", "da": "Denne bænk blev sidst kortlagt den {survey:date}", "cs": "Tato lavička byla naposledy zkontrolována dne {survey:date}", "ca": "Aquest banc s'ha inspeccionat per últim com el {survey:date}", @@ -902,7 +909,7 @@ "pt": "Pesquisado hoje!", "he": "נבדק היום!", "pt_BR": "Pesquisado hoje!", - "es": "¡Encuestado hoy!" + "es": "¡Inspeccionado hoy!" } } ], @@ -925,7 +932,8 @@ "cs": "Tato lavice má následující nápis:

{inscription}

", "pt": "Este banco tem a seguinte inscrição:

{inscription}

", "pt_BR": "Esse banco tem a seguinte inscrição:

{inscription}

", - "es": "Este banco tiene la siguiente inscripción:

{inscription}

" + "es": "Este banco tiene la siguiente inscripción:

{inscription}

", + "uk": "Ця лавка має такий напис:

{inscription}

" }, "question": { "en": "Does this bench have an inscription?", @@ -936,7 +944,8 @@ "cs": "Má tato lavička nápis?", "pt": "Esse banco tem inscrição?", "pt_BR": "Esse banco tem uma inscrição?", - "es": "¿Tiene este banco una inscripción?" + "es": "¿Este banco tiene alguna inscripción?", + "uk": "Чи є на цій лавці напис?" }, "freeform": { "key": "inscription", @@ -957,7 +966,8 @@ "cs": "Tato lavička nemá nápis", "pt": "Este banco não tem inscrição", "pt_BR": "Esse banco não tem uma inscrição", - "es": "Este banco no tiene inscripción" + "es": "Este banco no tiene ninguna inscripción", + "uk": "Ця лавка не має напису" }, "addExtraTags": [ "inscription=" @@ -970,11 +980,12 @@ "nl": "Deze bank heeft (waarschijnlijk) geen inscriptie", "de": "Diese Bank hat wahrscheinlich keine Inschrift", "fr": "Ce banc n'a (probablement) pas d'inscription", - "es": "Este banco (probablemente) no tiene inscripción", + "es": "Este banco probablemente no tiene ninguna inscripción", "ca": "Aquest banc (probablement) no té cap inscripció", "cs": "Tato lavička (pravděpodobně) nemá nápis", "pt_BR": "Esse banco provavelmente não tem uma inscrição", - "pt": "Esse banco provavelmente não tem uma inscrição" + "pt": "Esse banco provavelmente não tem uma inscrição", + "uk": "Ця лавка імовірно не має напису" }, "hideInAnswer": true } @@ -988,7 +999,8 @@ "cs": "Např. na připevněné desce, v opěradle, …", "pt": "Por exemplo: em placa montada, no encosto, ...", "pt_BR": "P. ex. em uma placa montada, no encosto, …", - "es": "Por ejemplo, en una placa montada, en el respaldo, …" + "es": "Por ejemplo, en una placa montada, en el respaldo,…", + "uk": "Наприклад, на вмонтованій табличці, в спинці крісла, …" } }, { @@ -1003,8 +1015,9 @@ "fr": "Est-ce que ce banc inclut un élément artistique ?", "pl": "Czy ta ławka ma wbudowane dzieło sztuki?", "pt_BR": "Esse banco tem um elemento artístico?", - "es": "¿Tiene este banco un elemento artístico?", - "pt": "Este banco tem um elemento artístico?" + "es": "¿Este banco tiene un elemento artístico?", + "pt": "Este banco tem um elemento artístico?", + "uk": "Чи є в цій лавці художній елемент?" }, "mappings": [ { @@ -1023,7 +1036,8 @@ "pl": "Ta ławka ma wbudowane dzieło sztuki", "pt_BR": "Esse banco tem uma obra de arte integrada", "es": "Este banco tiene una obra de arte integrada", - "pt": "Este banco tem uma obra de arte integrada" + "pt": "Este banco tem uma obra de arte integrada", + "uk": "Ця лавка має інтегрований арт-об'єкт" } }, { @@ -1039,7 +1053,8 @@ "he": "לספסל זה אין יצירת אמנות משולבת", "pl": "Ta ławka nie ma wbudowanego dzieła sztuki", "pt_BR": "Esse banco não tem uma obra de arte integrada", - "pt": "Este banco não tem uma obra de arte integrada" + "pt": "Este banco não tem uma obra de arte integrada", + "uk": "Ця лавка не має інтегрованого художнього оформлення" }, "addExtraTags": [ "tourism=" @@ -1070,8 +1085,9 @@ "fr": "Par ex. il intègre une peinture, statue ou autre élément non commune, travail créatif", "pl": "Np. jest na niej coś namalowane, ma rzeźbę lub inną nietrywialną pracę", "pt_BR": "Ex. possui uma pintura integrada, estátua ou outro trabalho criativo não trivial", - "es": "Por ejemplo, si lleva integrado un cuadro, una estatua u otra obra creativa no trivial", - "pt": "Ex. possui uma pintura integrada, estátua ou outro trabalho criativo não trivial" + "es": "Por ejemplo, tiene una pintura, estatua u otra obra creativa no trivial integrada", + "pt": "Ex. possui uma pintura integrada, estátua ou outro trabalho criativo não trivial", + "uk": "Наприклад, він має інтегровану картину, статую або іншу нетривіальну, творчу роботу" } }, { @@ -1101,7 +1117,7 @@ "pt": "Este banco serve como memorial para alguém ou algo?", "pl": "Czy ta ławka służy jako pomnik upamiętniający kogoś lub coś?", "pt_BR": "Esse banco serve como memorial para alguém ou alguma coisa?", - "es": "¿Actúa este banco como monumento conmemorativo de alguien o algo?" + "es": "¿Este banco actúa como monumento para alguien o algo?" }, "mappings": [ { @@ -1116,7 +1132,7 @@ "pt": "Este banco é um memorial para alguém ou algo", "pl": "Ta ławka jest pomnikiem upamiętniającym kogoś lub coś", "pt_BR": "Esse banco é um memorial para alguém ou alguma coisa", - "es": "Este banco es un memorial para alguien o algo" + "es": "Este banco es un monumento para alguien o algo" }, "addExtraTags": [ "memorial=bench", @@ -1140,7 +1156,7 @@ "pt": "Este banco não é um memorial para alguém ou algo", "pl": "Ta ławka nie jest pomnikiem upamiętniającym kogoś lub coś", "pt_BR": "Esse banco não é um memorial para alguém ou alguma coisa", - "es": "Este banco es un no memorial para alguien o algo" + "es": "Este banco no es un monumento para alguien o algo" }, "addExtraTags": [ "memorial=" @@ -1179,7 +1195,7 @@ "cs": "je památník", "he": "הוא אנדרטה", "pt_BR": "é um memorial", - "es": "es un monumento conmemorativo", + "es": "es un monumento", "pt": "é um memorial" } } @@ -1231,7 +1247,7 @@ "he": "אין משענת גב", "pl": "Nie ma oparcia", "pt_BR": "Não tem um encosto", - "es": "Sin respaldo", + "es": "No tiene respaldo", "pt": "Não tem um encosto" } } diff --git a/assets/layers/bench_at_pt/bench_at_pt.json b/assets/layers/bench_at_pt/bench_at_pt.json index b8153e73b..e0446271e 100644 --- a/assets/layers/bench_at_pt/bench_at_pt.json +++ b/assets/layers/bench_at_pt/bench_at_pt.json @@ -5,7 +5,7 @@ "de": "Sitzbänke an Haltestellen", "fr": "Bancs des arrêts de transport en commun", "nl": "Zitbanken aan bushaltes", - "es": "Bancos en una parada de transporte público", + "es": "Bancos en paradas de transporte público", "hu": "Padok megállókban", "it": "Panchine alle fermate del trasporto pubblico", "ru": "Скамейки на остановках общественного транспорта", @@ -21,7 +21,7 @@ }, "description": { "en": "A layer showing all public-transport-stops which do have a bench", - "es": "Una capa que muestra todas las paradas de transporte público que tienen bancos", + "es": "Una capa que muestra todas las paradas de transporte público que tienen un banco", "nl": "Een laag die stopplaatsen van openbaar vervoer toont waar er een zitbank is", "fr": "Une couche montrant tous les arrêts de transports publics qui ont un banc", "de": "Eine Ebene mit allen Haltestellen des öffentlichen Nahverkehrs, die über eine Sitzbank verfügen", @@ -93,7 +93,7 @@ "pt_BR": "Banco em ponto de transporte público", "pl": "Ławka na przystanku komunikacji miejskiej", "pt": "Banco em ponto de transporte público", - "es": "Banco en una parada de transporte público", + "es": "Banco en parada de transporte público", "da": "Bænk ved offentlig stoppested", "cs": "Lavička na zastávce veřejné dopravy", "ca": "Banc en una parada de transport públic", @@ -118,7 +118,7 @@ "zh_Hant": "涼亭內的長椅", "pt_BR": "Banco em abrigo", "pt": "Banco em abrigo", - "es": "Banco en marquesina", + "es": "Banco en refugio", "da": "Bænk i læskur", "cs": "Lavička v přístřešku", "ca": "Banc en marquesina", @@ -223,7 +223,7 @@ "ru": "Встаньте на скамейке", "zh_Hant": "站立長椅", "da": "Stå-op bænk", - "es": "Banco de pié", + "es": "Banco de pie", "cs": "Je zde lavička, o kterou se lze opřít", "ca": "Banc dempeus", "pt": "banco de pé", @@ -237,7 +237,7 @@ "fr": "Il n'y a pas de banc ici", "de": "Hier gibt es keine Bank", "nl": "Er is hier geen bank", - "es": "No hay ningún banco aquí", + "es": "No hay banco aquí", "da": "Der er ingen bænk her", "cs": "Zde není žádná lavička", "pt": "Não há nenhum banco aqui", @@ -255,7 +255,7 @@ "if": "bench=no", "then": { "en": "This bus stop does not have a bench (there never was one or it has been removed)", - "de": "Diese Bushaltestelle hat keine Bank (es gab nie eine oder sie wurde entfernt)", + "de": "Diese Bushaltestelle hat keine Sitzank (es gab nie eine oder sie wurde entfernt)", "fr": "Cette station de bus n'a pas de banc (il n'y en a jamais eu ou il a été retiré)", "nl": "Deze bushalte heeft geen zitbank (er is er nooit een geweest of deze is verwijderd)", "ca": "Aquesta para de bus no té un banc (mai n'ha tingut un o ha estat eliminat)", @@ -263,7 +263,8 @@ "pt": "Este ponto de ônibus não tem banco (nunca houve ou foi removido)", "pl": "Ten przystanek autobusowy nie ma ławki (nigdy jej nie było lub została usunięta)", "pt_BR": "Essa parada de ônibus não tem um banco (nunca teve ou ele foi removido)", - "es": "Esta parada de autobús no tiene banco (nunca lo hubo o lo han quitado)" + "es": "Esta parada de autobús no tiene banco (nunca lo tuvo o se ha quitado)", + "uk": "На цій зупинці немає лавки (ніколи не було або її прибрали)" } } ], @@ -280,7 +281,8 @@ "pt": "Este ponto de ônibus não é mais usado", "pl": "Ten przystanek autobusowy nie jest już używany", "pt_BR": "Essa parada de ônibus não é mais usada", - "es": "Esta parada ya no se usa" + "es": "Esta parada de autobús ya no se utiliza", + "uk": "Ця автобусна зупинка більше не використовується" } } ], diff --git a/assets/layers/bicycle_counter/bicycle_counter.json b/assets/layers/bicycle_counter/bicycle_counter.json index cf91d872b..d4a42a443 100644 --- a/assets/layers/bicycle_counter/bicycle_counter.json +++ b/assets/layers/bicycle_counter/bicycle_counter.json @@ -11,7 +11,7 @@ "nl": "Automatische fietstelpunten", "cs": "Vrstva zobrazující monitorovací stanice pro cyklistickou dopravu", "de": "Ebene mit Messstationen für den Fahrradverkehr", - "es": "Capa que muestra las estaciones de seguimiento para el tráfico de bicicletas" + "es": "Capa que muestra las estaciones de monitoreo del tráfico de bicicletas" }, "source": { "osmTags": { @@ -24,7 +24,9 @@ "title": { "render": { "en": "Bicycle counter", - "de": "Fahrradzählstelle" + "de": "Fahrradzählstelle", + "cs": "Počítadlo jízdních kol", + "es": "Contador de bicicletas" } }, "tagRenderings": [ @@ -34,7 +36,8 @@ "question": { "en": "Does this bicycle counter have a display showing the number of passing bicycles?", "cs": "Má tento počítač jízdních kol displej zobrazující počet projíždějících jízdních kol?", - "de": "Zeigt die Fahrradzählstelle die Anzahl gezählter Fahrräder an?" + "de": "Zeigt die Fahrradzählstelle die Anzahl gezählter Fahrräder an?", + "es": "¿Este contador de bicicletas tiene una pantalla que muestra el número de bicicletas que pasan?" }, "mappings": [ { @@ -42,7 +45,8 @@ "then": { "en": "This counter has a digital display", "cs": "Toto počítadlo má digitální displej", - "de": "Die Zählstelle hat eine digitale Anzeige" + "de": "Die Zählstelle hat eine digitale Anzeige", + "es": "Este contador tiene una pantalla digital" } }, { @@ -50,7 +54,8 @@ "then": { "en": "This counter has an analog display", "cs": "Toto počítadlo má analogový displej", - "de": "Die Zählstelle hat eine analoge Anzeige" + "de": "Die Zählstelle hat eine analoge Anzeige", + "es": "Este contador tiene una pantalla analógica" } }, { @@ -58,7 +63,8 @@ "then": { "en": "This counter has no display", "cs": "Toto počítadlo nemá žádný displej", - "de": "Die Zählstelle hat keine Anzeige" + "de": "Die Zählstelle hat keine Anzeige", + "es": "Este contador no tiene pantalla" } } ] @@ -68,7 +74,8 @@ "question": { "en": "What is the name of the counted location?", "cs": "Jak se jmenuje započítávaná lokalita?", - "de": "Wie lautet der Name des Zählorts?" + "de": "Wie lautet der Name des Zählorts?", + "es": "¿Cuál es el nombre del lugar contado?" }, "freeform": { "key": "name", @@ -76,31 +83,40 @@ "placeholder": { "en": "Name of the counted location", "cs": "Název započítávané lokality", - "de": "Name des Zählorts" + "de": "Name des Zählorts", + "es": "Nombre del lugar contado" } }, "render": { "en": "Name of the counted location: {name}", - "de": "Name des Zählorts: {name}" + "de": "Name des Zählorts: {name}", + "cs": "Název započítávaného místa: {name}", + "es": "Nombre del lugar contado: {name}" } }, { "id": "start_date", "question": { "en": "When did this counter start counting?", - "de": "Wann wurde die Zählstelle aufgestellt?" + "de": "Wann wurde die Zählstelle aufgestellt?", + "cs": "Kdy toto počítadlo začalo počítat?", + "es": "¿Cuándo comenzó a contar este contador?" }, "freeform": { "key": "start_date", "type": "date", "placeholder": { "en": "Start date of the counter", - "de": "Aufstelldatum der Zählstelle" + "de": "Aufstelldatum der Zählstelle", + "cs": "Datum spuštění počítadla", + "es": "Fecha de inicio del contador" } }, "render": { "en": "This counter started counting on {start_date}", - "de": "Die Zählstelle wurde am {start_date} aufgestellt" + "de": "Die Zählstelle wurde am {start_date} aufgestellt", + "cs": "Toto počítadlo se začalo počítat dne {start_date}", + "es": "Este contador comenzó a contar el {start_date}" } }, { @@ -108,7 +124,8 @@ "question": { "en": "Does this bicycle counter have a clock?", "cs": "Má toto počítadlo kol hodiny?", - "de": "Zeigt die Fahrradzählstelle die Uhrzeit an?" + "de": "Zeigt die Fahrradzählstelle die Uhrzeit an?", + "es": "¿Este contador de bicicletas tiene un reloj?" }, "mappings": [ { @@ -116,7 +133,8 @@ "then": { "en": "This counter has a clock", "cs": "Toto počítadlo je vybaveno hodinami", - "de": "Die Zählstelle zeigt die Uhrzeit an" + "de": "Die Zählstelle zeigt die Uhrzeit an", + "es": "Este contador tiene un reloj" } }, { @@ -124,7 +142,8 @@ "then": { "en": "This counter has no clock", "cs": "Toto počítadlo nemá žádné hodiny", - "de": "Die Zählstelle zeigt keine Uhrzeit an" + "de": "Die Zählstelle zeigt keine Uhrzeit an", + "es": "Este contador no tiene reloj" } } ] @@ -133,14 +152,18 @@ "id": "ref", "question": { "en": "What is the reference number of this counter?", - "de": "Wie lautet die Kennziffer der Zählstelle?" + "de": "Wie lautet die Kennziffer der Zählstelle?", + "cs": "Jaké je referenční číslo tohoto počítadla?", + "es": "¿Cuál es el número de referencia de este contador?" }, "freeform": { "key": "ref", "type": "string", "placeholder": { "en": "Reference number of the counter", - "de": "Kennziffer der Zählstelle" + "de": "Kennziffer der Zählstelle", + "cs": "Referenční číslo počítadla", + "es": "Número de referencia del contador" }, "addExtraTags": [ "noref=" @@ -148,14 +171,18 @@ }, "render": { "en": "Reference number of the counter: {ref}", - "de": "Kennziffer der Zählstelle: {ref}" + "de": "Kennziffer der Zählstelle: {ref}", + "cs": "Referenční číslo počítadla: {ref}", + "es": "Número de referencia del contador: {ref}" }, "mappings": [ { "if": "noref=yes", "then": { "en": "This counter has no reference number", - "de": "Die Zählstelle hat keine Kennziffer" + "de": "Die Zählstelle hat keine Kennziffer", + "cs": "Toto počítadlo nemá referenční číslo", + "es": "Este contador no tiene número de referencia" } } ] @@ -164,19 +191,25 @@ "id": "website", "question": { "en": "Is there a website for this bicycle counter?", - "de": "Gibt es eine Website für die Fahrradzählstelle?" + "de": "Gibt es eine Website für die Fahrradzählstelle?", + "cs": "Existuje webová stránka tohoto počítadla jízdních kol?", + "es": "¿Hay un sitio web para este contador de bicicletas?" }, "freeform": { "key": "website", "type": "url", "placeholder": { "en": "Website of the counter", - "de": "Website der Zählstelle" + "de": "Website der Zählstelle", + "cs": "Webové stránky počítadla", + "es": "Sitio web del contador" } }, "render": { "en": "Website of the counter: {website}", - "de": "Website der Zählstelle: {website}" + "de": "Website der Zählstelle: {website}", + "cs": "Webové stránky počítadla: {website}", + "es": "Sitio web del contador: {website}" } } ], diff --git a/assets/layers/bicycle_library/bicycle_library.json b/assets/layers/bicycle_library/bicycle_library.json index 98a7701b7..0bc683406 100644 --- a/assets/layers/bicycle_library/bicycle_library.json +++ b/assets/layers/bicycle_library/bicycle_library.json @@ -27,7 +27,7 @@ "pt_BR": "Uma instalação onde as bicicletas podem ser emprestadas por períodos mais longos", "pl": "Obiekt, w którym rowery można wypożyczyć na dłuższy okres", "pt": "Uma instalação onde as bicicletas podem ser emprestadas por períodos mais longos", - "es": "Una instalación donde se pueden alquilar bicicletas durante largos periodos de tiempo", + "es": "Una instalación donde se pueden prestar bicicletas por períodos de tiempo más largos", "da": "En facilitet, hvor cykler kan lånes i længere perioder", "cs": "Zařízení, kde si lze půjčit jízdní kola na delší dobu", "ca": "Una instal·lació on es poden cedir bicicletes per llargs períodes de temps" @@ -202,7 +202,7 @@ "pt_BR": "Quanto custa um empréstimo de bicicleta?", "pt": "Quanto custa um empréstimo de bicicleta?", "da": "Hvor meget koster det at leje en cykel?", - "es": "¿Cuánto cuesta alquilar una bicicleta?", + "es": "¿Cuánto cuesta prestar una bicicleta?", "cs": "Kolik stojí půjčení kola?", "ca": "Quant costa el préstec d'una bicicleta?" }, @@ -218,7 +218,7 @@ "zh_Hant": "租借單車需要 {charge}", "pt_BR": "Custos de empréstimo de bicicleta {charge}", "pt": "Custos de empréstimo de bicicleta {charge}", - "es": "Alquilar una bicicleta cuesta {charge}", + "es": "Prestar una bicicleta cuesta {charge}", "da": "Cykelleje koster {charge}", "cs": "Půjčení kola stojí {charge}", "ca": "El préstec d'una bicicleta costa {charge}" @@ -250,7 +250,7 @@ "pt_BR": "Emprestar uma bicicleta é grátis", "pt": "Emprestar uma bicicleta é grátis", "da": "Det er gratis at låne en cykel", - "es": "Alquilar una bicicleta es gratis", + "es": "Prestar una bicicleta es gratis", "cs": "Půjčení jízdního kola je zdarma", "ca": "El préstec d'una bicicleta és gratuït" } @@ -272,7 +272,7 @@ "ru": "Прокат велосипеда стоит €20/год и €20 залог", "pt_BR": "Emprestar uma bicicleta custa €20/ano e €20 de garantia", "pt": "Emprestar uma bicicleta custa €20/ano e €20 de garantia", - "es": "Alquilar una bicicleta cuesta 20€/año y 20€ de garantía", + "es": "Prestar una bicicleta cuesta €20/año y €20 de garantía", "da": "Udlån af en cykel koster 20 €/år og 20 € garanti", "cs": "Půjčení kola stojí 20 €/rok a 20 € záloha", "ca": "El préstec d'una bicicleta costa 20€/any i 20€ de garantia" @@ -296,7 +296,7 @@ "pt_BR": "Quem pode emprestar bicicletas aqui?", "pt": "Quem pode emprestar bicicletas aqui?", "da": "Hvem kan låne cykler her?", - "es": "¿Quién puede alquilar bicicletas aquí?", + "es": "¿Quién puede pedir prestadas bicicletas aquí?", "cs": "Kdo si zde může půjčit jízdní kolo?", "ca": "Qui pot llogar bicicletes aquí?" }, @@ -350,7 +350,7 @@ "zh_Hant": "有提供行動不便人士的單車", "pt_BR": "Bicicletas para deficientes físicos disponíveis", "pt": "Bicicletas para deficientes físicos disponíveis", - "es": "Bicicletas para discapacitados disponibles", + "es": "Bicicletas para personas con discapacidad disponibles", "da": "Cykler til handicappede til rådighed", "cs": "K dispozici jsou kola pro osoby se zdravotním postižením", "ca": "Bicicletes per a discapacitats disponibles" diff --git a/assets/layers/bicycle_rental/bicycle_rental.json b/assets/layers/bicycle_rental/bicycle_rental.json index 23f6b044a..1d1b14aec 100644 --- a/assets/layers/bicycle_rental/bicycle_rental.json +++ b/assets/layers/bicycle_rental/bicycle_rental.json @@ -112,7 +112,8 @@ "cs": "půjčovna jízdních kol", "ca": "una botiga de lloguer de bicicletes", "pt_BR": "uma loja de aluguel de bicicletas", - "pt": "uma loja de aluguel de bicicletas" + "pt": "uma loja de aluguel de bicicletas", + "uk": "пункт прокату велосипедів" }, "tags": [ "amenity=bicycle_rental", @@ -124,11 +125,12 @@ "fr": "Un magasin qui priorise la location de vélos", "de": "Ein Geschäft, das sich auf den Fahrradverleih konzentriert", "da": "En bemandet butik, der fokuserer på cykeludlejning", - "es": "Una tienda atendida que se centra en el alquiler de bicicletas", + "es": "Una tienda con personal que se centra en el alquiler de bicicletas", "cs": "Obsluhovaný obchod zaměřený na půjčování jízdních kol", "ca": "Una botiga atesa que es centra en el lloguer de bicicletes", "pt_BR": "Uma loja com atendimento pessoal que foca no aluguel de bicicletas", - "pt": "Uma loja com atendimento pessoal que foca no aluguel de bicicletas" + "pt": "Uma loja com atendimento pessoal que foca no aluguel de bicicletas", + "uk": "Магазин, який спеціалізується на прокаті велосипедів" } }, { @@ -178,13 +180,14 @@ "en": "This is a shop whose main focus is bicycle rental", "nl": "Dit is een zaak die focust op fietsverhuur", "de": "Dies ist ein Geschäft, dessen Schwerpunkt auf dem Fahrradverleih liegt", - "es": "Esta es una tienda que se centra en el alquiler de bicicletas", + "es": "Se trata de una tienda cuyo principal foco es el alquiler de bicicletas", "da": "Dette er en butik, hvis hovedfokus er cykeludlejning", "fr": "C'est un magasin dont l'activité principale est la location de vélo", "cs": "Jedná se o obchod, jehož hlavním zaměřením je půjčování jízdních kol", "ca": "Es tracta d'una botiga que té com a objectiu principal el lloguer de bicicletes", "pt_BR": "Essa é uma loja cujo foco principal é o aluguel de bicicletas", - "pt": "Esta é uma loja cujo foco principal é o aluguel de bicicletas" + "pt": "Esta é uma loja cujo foco principal é o aluguel de bicicletas", + "uk": "Це магазин, основним напрямком якого є прокат велосипедів" } }, { @@ -193,7 +196,7 @@ "en": "This is a rental business which rents out various objects and/or vehicles. It rents out bicycles too, but this is not the main focus", "nl": "Dit is een zaak die verschillende voorwerpen en/of voertuigen verhuurt, waaronder ook fietsen; al zijn fietsen niet de hoofdfocus", "de": "Dies ist ein Geschäft, das verschiedene Gegenstände und/oder Fahrzeuge vermietet. Es vermietet auch Fahrräder, aber das ist nicht der Hauptschwerpunkt", - "es": "Se trata de una empresa de alquiler que alquila diversos objetos y/o vehículos. También alquila bicicletas, pero este no es el objetivo principal", + "es": "Se trata de un negocio de alquiler que alquila varios objetos y/o vehículos. También alquila bicicletas, pero este no es el foco principal", "da": "Dette er en udlejningsvirksomhed, som udlejer forskellige genstande og/eller køretøjer. Den udlejer også cykler, men det er ikke det primære fokus", "fr": "C'est une agence louant diverses choses et/ou voitures. Elle loue également des vélos, mais ce n'est pas sa principale activité", "cs": "Jedná se o půjčovnu, která pronajímá různé předměty a/nebo vozidla. Pronajímá také jízdní kola, ale to není hlavní náplní", @@ -213,13 +216,14 @@ "en": "This is a shop which sells or repairs bicycles, but also rents out bicycles", "nl": "Dit is een fietsenmaker of fietswinkel die ook fietsen verhuurt", "de": "Dies ist ein Geschäft, das Fahrräder verkauft oder repariert, aber auch Fahrräder vermietet", - "es": "Esta es una tienda que vende o alquila bicicletas, pero también las alquila", + "es": "Se trata de una tienda que vende o repara bicicletas, pero también alquila bicicletas", "da": "Dette er en butik, der sælger eller reparerer cykler, men som også udlejer cykler", "fr": "C'est un magasin qui vend ou répare des vélos mais peut également en louer", "cs": "Jedná se o prodejnu, která prodává nebo opravuje jízdní kola, ale také je pronajímá", "ca": "Es tracta d'una botiga que ven o repara bicicletes, però també lloga bicicletes", "pt_BR": "Essa é uma loja que vende ou conserta bicicletas, mas também aluga elas", - "pt": "Esta é uma loja que vende ou conserta bicicletas, mas também aluga elas" + "pt": "Esta é uma loja que vende ou conserta bicicletas, mas também aluga elas", + "uk": "Це магазин, який продає або ремонтує велосипеди, а також здає їх напрокат" } }, { @@ -231,7 +235,7 @@ "en": "This is an automated docking station, where a bicycle is mechanically locked to a structure", "nl": "Dit is een docking station waar de fietsen mechanisch in een grotere structuur worden vastgemaakt", "de": "Dies ist eine automatisierte Radstation, bei der ein Fahrrad mechanisch an einer Struktur befestigt wird", - "es": "Se trata de una estación de bicicletas automatizada donde una bicicleta se fija mecánicamente a una estructura", + "es": "Se trata de una estación de acoplamiento automática, donde una bicicleta se bloquea mecánicamente a una estructura", "fr": "C'est un point d’attache automatisé où le vélo est attaché mécaniquement à une structure", "da": "Dette er en automatiseret dockingstation, hvor en cykel låses mekanisk fast i en struktur", "cs": "Jedná se o automatickou dokovací stanici, kde je jízdní kolo mechanicky uzamčeno ke konstrukci", @@ -250,7 +254,7 @@ "nl": "Hier is een machine die fietssleutels verdeelt en terugneemt, eventueel na aanmelden of betaling. De fietsen staan in de buurt geparkeerd", "hu": "Ez egy leadási pont: ennek a kerékpárkölcsönzőnek a kijelölt kerékpártárolója", "de": "Dies ist ein Automat, der Schlüssel ausgibt und annimmt, eventuell nach Authentifizierung und/oder Bezahlung. Die Fahrräder sind in der Nähe geparkt", - "es": "Una máquina que dispensa y acepta llaves, eventualmente después de la autenticación y/o el pago está presente. Las bicicletas están aparcadas cerca", + "es": "Hay una máquina que dispensa y acepta llaves, eventualmente después de la autenticación y/o el pago. Las bicicletas están aparcadas cerca", "fr": "Il y a un distributeur qui distribue et accepte les clés, éventuellement après identification et/ou payement. Les vélos sont stationnés à proximité", "da": "Der er en maskine til stede, som udleverer og modtager nøgler, eventuelt efter autentificering og/eller betaling. Cyklerne er parkeret i nærheden", "cs": "Přítomný je automat, který vydává a přijímá klíče, případně po ověření pravosti a/nebo zaplacení. Jízdní kola jsou zaparkována v blízkosti", @@ -268,13 +272,14 @@ "en": "This is a dropoff point, e.g. a reserved parking to place the bicycles clearly marked as being for the rental service only", "nl": "Dit is een dropzone, bv. een fietsparkeerplaats die is voorbehouden voor fietsverhuur", "de": "Dies ist ein Rückgabepunkt, z.B. ein reservierter Parkplatz, um die Fahrräder abzustellen, die eindeutig als nur für den Verleih gekennzeichnet sind", - "es": "Se trata de un punto de entrega, por ejemplo, un aparcamiento reservado para colocar las bicicletas claramente señalizado como exclusivo para el servicio de alquiler", + "es": "Se trata de un punto de entrega, por ejemplo, un aparcamiento reservado para colocar las bicicletas claramente marcadas como exclusivas del servicio de alquiler", "fr": "C'est un point de dépôt, p.ex. un emplacement de parking réservé aux vélos de location", "da": "Dette er et afleveringssted, f.eks. en reserveret parkeringsplads til cykler, som er tydeligt markeret som værende forbeholdt udlejningstjenesten", "cs": "Jedná se o místo předání, např. vyhrazené parkoviště pro umístění jízdních kol, zřetelně označené jako místo určené pouze pro půjčovnu", "ca": "Aquest és un punt de baixada, p. ex. un aparcament reservat per col·locar les bicicletes marcades clarament com a només per al servei de lloguer", "pt_BR": "Este é um ponto de devolução, p. ex. um estacionamento reservado para colocar as bicicletas claramente marcadas como sendo apenas para o serviço de aluguel", - "pt": "Este é um ponto de devolução, p. ex. um estacionamento reservado para pôr as bicicletas claramente marcadas como ser apenas para o serviço de aluguel" + "pt": "Este é um ponto de devolução, p. ex. um estacionamento reservado para pôr as bicicletas claramente marcadas como ser apenas para o serviço de aluguel", + "uk": "Це місце висадки, наприклад, зарезервована автостоянка, де велосипеди чітко позначені як такі, що призначені лише для послуги прокату" } } ], @@ -328,7 +333,7 @@ "en": "{rental} is rented here", "nl": "{rental} kunnen hier uitgeleend worden", "de": "{rental} können hier gemietet werden", - "es": "{rental} se alquilan aquí", + "es": "{rental} se alquila aquí", "da": "{rental} udlejes her", "fr": "{rental} est louable ici", "cs": "Zde si můžete půjčit {rental}", @@ -348,7 +353,7 @@ "en": "Normal city bikes can be rented here", "nl": "Gewone stadsfietsen kunnen hier gehuurd worden", "de": "Normale Stadtfahrräder können ausgeliehen werden", - "es": "Aquí se pueden alquilar bicis normales", + "es": "Se pueden alquilar bicicletas de ciudad normales aquí", "da": "Her kan man leje almindelige bycykler", "fr": "Des vélos de ville peuvent être loués ici", "cs": "Zde si můžete půjčit běžná městská kola", @@ -363,7 +368,7 @@ "en": "Electrical bikes can be rented here", "nl": "Elektrische fietsen kunnen hier gehuurd worden", "de": "Elektrofahrräder können ausgeliehen werden", - "es": "Aquí se pueden alquilar bicis eléctricas", + "es": "Se pueden alquilar bicicletas eléctricas aquí", "da": "El-cykler kan lejes her", "fr": "Des vélos électriques peuvent être loués ici", "cs": "Zde si můžete půjčit elektrokola", @@ -379,7 +384,7 @@ "en": "BMX bikes can be rented here", "nl": "BMX-fietsen kunnen hier gehuurd worden", "de": "BMX-Räder können ausgeliehen werden", - "es": "Aquí se pueden alquilar bicis BMX", + "es": "Se pueden alquilar bicicletas BMX aquí", "da": "BMX cykler kan lejes her", "fr": "Des BMX peuvent être loués ici", "cs": "Zde si můžete půjčit BMX kola", @@ -394,7 +399,7 @@ "en": "Mountainbikes can be rented here", "nl": "Mountainbikes kunnen hier gehuurd worden", "de": "Mountainbikes können ausgeliehen werden", - "es": "Aquí se pueden alquilar bicis de montaña", + "es": "Se pueden alquilar bicicletas de montaña aquí", "da": "Mountainbikes kan lejes her", "fr": "Des vélos de montagne peuvent être loués ici", "cs": "Zde si můžete půjčit horská kola", @@ -410,7 +415,7 @@ "en": "Bikes for children can be rented here", "nl": "Kinderfietsen kunnen hier gehuurd worden", "de": "Kinderfahrräder können ausgeliehen werden", - "es": "Aquí se pueden alquilar bicis infantiles", + "es": "Se pueden alquilar bicicletas para niños aquí", "da": "Børnecykler kan lejes her", "fr": "Des vélos d'enfants peuvent être loués ici", "cs": "Zde si můžete půjčit dětská kola", @@ -428,7 +433,7 @@ "de": "Tandems können ausgeliehen werden", "da": "Tandemcykler kan lejes her", "fr": "Des tandems peuvent être loués ici", - "es": "Aquí se pueden alquilar tándems", + "es": "Se pueden alquilar bicicletas tándem aquí", "cs": "Zde si můžete půjčit tandemová kola", "ca": "Aquí es poden llogar tàndems", "pt_BR": "Bicicletas tandem podem ser alugadas aqui", @@ -442,7 +447,7 @@ "en": "Race bicycles can be rented here", "nl": "Wielerfietsen (sportfietsen) kunnen hier gehuurd worden", "de": "Rennräder können ausgeliehen werden", - "es": "Aquí se pueden alquilar bicicletas de carreras", + "es": "Se pueden alquilar bicicletas de carreras aquí", "da": "Racercykler kan lejes her", "fr": "Des vélos de course peuvent être loués ici", "cs": "Zde si můžete půjčit závodní kola", @@ -456,7 +461,7 @@ "then": { "en": "Bike helmets can be rented here", "nl": "Fietshelmen kunnen hier gehuurd worden", - "es": "Aquí se pueden alquilar cascos", + "es": "Se pueden alquilar cascos para bicicletas aquí", "de": "Fahrradhelme können ausgeliehen werden", "fr": "Des casques de vélos peuvent être loués ici", "da": "Cykelhjelme kan lejes her", @@ -473,7 +478,8 @@ "en": "Cargo bikes can be rented here", "nl": "Bakfietsen kunnen hier gehuurd worden", "de": "Lastenräder können hier gemietet werden", - "es": "Aquí se pueden alquilar bicicletas de carga" + "es": "Se pueden alquilar bicicletas de carga aquí", + "cs": "Nákladní kola si můžete půjčit zde" } } ], @@ -495,7 +501,7 @@ "en": "city bikes", "nl": "stadsfietsen", "de": "Stadträder", - "es": "bicis de ciudad", + "es": "bicicletas de ciudad", "da": "bycykler", "eo": "urbaj bicikloj", "fr": "vélos de ville", @@ -512,7 +518,7 @@ "en": "electrical bikes", "nl": "elektrische fietsen", "de": "Elektrofahrräder", - "es": "bicis eléctricas", + "es": "bicicletas eléctricas", "da": "elektriske cykler", "eo": "elektraj bicikloj", "fr": "vélos électriques", @@ -529,7 +535,7 @@ "en": "bikes for children", "nl": "kinderfietsen", "de": "Kinderfahrräder", - "es": "bicis infantiles", + "es": "bicicletas para niños", "da": "børnecykler", "eo": "bicikloj por infanoj", "fr": "vélos d'enfants", @@ -546,7 +552,7 @@ "en": "BMX bikes", "nl": "BMX-fietsen", "de": "BMX-Räder", - "es": "bicis BMX", + "es": "bicicletas BMX", "da": "BMX-cykler", "eo": "BMX-bicikloj", "fr": "BMX", @@ -582,7 +588,7 @@ "nl": "fietstassen", "de": "Fahrradtaschen", "da": "cykeltasker", - "es": "alforjas de bicicleta", + "es": "alforjas para bicicletas", "fr": "sacoches pour vélo", "cs": "brašny na kolo", "ca": "maletes de bicicletes", @@ -622,7 +628,7 @@ "de": "Wie viele type_plural können hier gemietet werden?", "fr": "Combien de type_plural peuvent être loués ici ?", "cs": "Kolik typů kol si zde můžete pronajmout?", - "es": "¿Cuántos type_plural se pueden alquilar aquí?", + "es": "¿Cuántos tipos plurales se pueden alquilar aquí?", "ca": "Quants type_plural es poden llogar aquí?", "pt_BR": "Quantos type_plural podem ser alugados aqui?", "pt": "Quantos type_plural podem ser alugados aqui?" @@ -633,7 +639,7 @@ "de": "{capacity:bicycle_type} type_plural können hier gemietet werden", "fr": "{capacity:bicycle_type} type_plural peuvent être loués ici", "cs": "{capacity:bicycle_type} typů si můžete pronajmout zde", - "es": "{capacity:bicycle_type} type_plural pueden alquilarse aquí", + "es": "{capacity:bicycle_type} tipos plurales se pueden alquilar aquí", "ca": "{capacity:bicycle_type} type_plural es poden llogar aquí", "pt_BR": "{capacity:bicycle_type} type_plural podem ser alugados aqui", "pt": "{capacity:bicycle_type} type_plural podem ser alugados aqui" @@ -672,7 +678,8 @@ "cs": "{title()} je trvale uzavřen", "ca": "{title()} ha tancat permanentment", "pt_BR": "{title()} fechou permanentemente", - "pt": "{title()} fechou permanentemente" + "pt": "{title()} fechou permanentemente", + "uk": "{title()} закрито назавжди" }, "changesetMessage": "shop_closed" } @@ -689,12 +696,13 @@ "nl": "Deze fietszaak verhuurde vroeger fietsen, maar nu niet meer", "fr": "Ce magasin de vélo louait des vélos, mais n'en loue plus maintenant", "de": "Dieser Fahrradladen vermietete früher Fahrräder, aber jetzt nicht mehr", - "es": "Esta tienda de bicicletas alquilaba bicis, pero ya no lo hace", + "es": "Esta tienda de bicicletas solía alquilar bicicletas, pero ya no alquila más", "da": "Denne cykelbutik plejede at udleje cykler, men udlejer ikke længere cykler", "cs": "Tento obchod s koly dříve půjčoval kola, ale už je nepůjčuje", "ca": "Aquesta botiga de bicicletes solia llogar bicicletes, però ja no", "pt_BR": "Essa loja de bicicletas costumava alugar bicicletas, mas não aluga mais", - "pt": "Esta loja de bicicletas costumava alugar bicicletas, mas ja não as aluga" + "pt": "Esta loja de bicicletas costumava alugar bicicletas, mas ja não as aluga", + "uk": "У цьому веломагазині раніше видавали велосипеди напрокат, але більше не видають" } } ] diff --git a/assets/layers/bike_cafe/bike_cafe.json b/assets/layers/bike_cafe/bike_cafe.json index 384ea5ed8..375fa0dec 100644 --- a/assets/layers/bike_cafe/bike_cafe.json +++ b/assets/layers/bike_cafe/bike_cafe.json @@ -15,7 +15,7 @@ "ca": "Cafeteria per a bicicletes", "da": "Cykelcafé", "cs": "Cyklokavárna", - "es": "Cafetería para ciclistas" + "es": "Bike café" }, "description": { "en": "A bike café is a café geared towards cyclists, for example with services such as a pump, with lots of bicycle-related decoration, …", @@ -26,7 +26,8 @@ "cs": "Cyklokavárna je kavárna zaměřená na cyklisty, například se službami, jako je pumpa, se spoustou výzdoby související s jízdními koly, …", "ca": "Un cafè ciclista és un cafè enfocat a ciclistes, per exemple, amb serveis com una manxa, amb molta decoració relacionada amb el ciclisme, …", "pt_BR": "Um café para ciclistas é um café direcionado aos ciclistas, por exemplo, com serviços como uma bomba de ar, muita decoração relacionada a bicicletas, …", - "pt": "Um café para ciclistas é um café direcionado aos ciclistas, por exemplo, com serviços como uma bomba de ar, muita decoração relacionada a bicicletas, …" + "pt": "Um café para ciclistas é um café direcionado aos ciclistas, por exemplo, com serviços como uma bomba de ar, muita decoração relacionada a bicicletas, …", + "es": "Un bike café es un café orientado a ciclistas, por ejemplo, con servicios como una bomba, con mucha decoración relacionada con bicicletas,…" }, "source": { "osmTags": { @@ -69,7 +70,7 @@ "ca": "Cafeteria per a bicicletes", "da": "Cykelcafé", "cs": "Cyklokavárna", - "es": "Cafetería para ciclistas" + "es": "Bike café" }, "mappings": [ { @@ -89,7 +90,7 @@ "da": "Cykelcafé {name}", "cs": "Cyklokavárna {name}", "ca": "Cafè ciclista {name}", - "es": "Cafetería para ciclistas {name}" + "es": "Bike café {name}" } } ] @@ -136,7 +137,7 @@ "da": "en cykelcafé", "cs": "kavárna pro cyklisty", "ca": "un cafè ciclista", - "es": "una cafetería para ciclistas" + "es": "un bike café" }, "tags": [ "amenity=pub", @@ -162,7 +163,7 @@ "da": "Hvad hedder denne cykelcafé?", "cs": "Jak se jmenuje tato cyklokavárna?", "ca": "Quin és el nom d'aquest cafè ciclista?", - "es": "¿Cómo se llama la cafetería para ciclistas?" + "es": "¿Cuál es el nombre de este bike café?" }, "render": { "en": "This bike cafe is called {name}", @@ -179,7 +180,7 @@ "da": "Denne cykelcafé hedder {name}", "cs": "Tato cyklokavárna se jmenuje {name}", "ca": "Aquest cafè ciclista s'anomena {name}", - "es": "La cafetería para ciclistas se llama {name}" + "es": "Este bike café se llama {name}" }, "freeform": { "key": "name" @@ -203,7 +204,7 @@ "ca": "Aquest cafè ciclista ofereix una bomba de bicicletes per a qualsevol persona?", "pt_BR": "Esse café para ciclistas oferece uma bomba de ar para qualquer um usar?", "pt": "Este café para ciclistas oferece uma bomba de ar para qualquer um usar?", - "es": "¿Ofrece esta cafetería para ciclistas una bomba de aire para uso de cualquier persona?" + "es": "¿Este bike café ofrece una bomba de bicicleta para que la use cualquiera?" }, "mappings": [ { @@ -223,7 +224,7 @@ "ca": "Aquest cafè ciclista ofereix una bomba per a bicicletes per a qualsevol persona", "pt_BR": "Esse café para ciclistas oferece uma bomba de ar para todos", "pt": "Este café para ciclistas oferece uma bomba de ar para todos", - "es": "Esta cafetería para ciclistas ofrece una bomba de aire para cualquier persona" + "es": "Este bike café ofrece una bomba de bicicleta para cualquiera" } }, { @@ -243,7 +244,7 @@ "ca": "Aquest cafè ciclista no ofereix una bomba per a bicicletes per a qualsevol persona", "pt_BR": "Esse café para ciclistas não oferece uma bomba de ar para ninguém", "pt": "Este café para ciclistas não oferece uma bomba de ar para ninguém", - "es": "Esta cafetería para ciclistas no ofrece una bomba de aire para cualquier persona" + "es": "Este bike café no ofrece una bomba de bicicleta para cualquiera" } } ] @@ -284,7 +285,8 @@ "pt": "Este café de bicicleta oferece ferramentas de reparo faça você mesmo", "da": "Denne cykelcafé tilbyder værktøj til gør-det-selv-reparation", "cs": "Tato cyklokavárna nabízí nářadí pro kutilské opravy", - "ca": "Aquest cafè ciclista ofereix ferramentes per a la reparació DIY" + "ca": "Aquest cafè ciclista ofereix ferramentes per a la reparació DIY", + "es": "Este bike café ofrece herramientas para reparaciones DIY" } }, { @@ -303,7 +305,8 @@ "pt": "Este café de bicicleta não oferece ferramentas de reparo faça você mesmo", "da": "Denne cykelcafé tilbyder ikke værktøj til gør-det-selv-reparation", "cs": "Tato cyklokavárna nenabízí nářadí pro kutilské opravy", - "ca": "Aquest cafè ciclista no ofereix ferramentes per a la reparació DIY" + "ca": "Aquest cafè ciclista no ofereix ferramentes per a la reparació DIY", + "es": "Este bike café no ofrece herramientas para reparaciones DIY" } } ] @@ -324,7 +327,8 @@ "pt": "Este café de bicicleta conserta bicicletas?", "da": "Reparerer denne cykelcafé cykler?", "cs": "Opravuje tato cyklokavárna jízdní kola?", - "ca": "Aquest cafè ciclista repara bicicletes?" + "ca": "Aquest cafè ciclista repara bicicletes?", + "es": "¿Este bike café repara bicicletas?" }, "mappings": [ { @@ -343,7 +347,8 @@ "pt": "Este café de bicicleta conserta bicicletas", "da": "Denne cykelcafé reparerer cykler", "cs": "Tato cyklokavárna opravuje jízdní kola", - "ca": "Aquest cafè ciclista repara bicicletes" + "ca": "Aquest cafè ciclista repara bicicletes", + "es": "Este bike café repara bicicletas" } }, { @@ -362,7 +367,8 @@ "pt": "Este café de bicicleta não conserta bicicletas", "da": "Denne cykelcafé reparerer ikke cykler", "cs": "Tato cyklokavárna neopravuje kola", - "ca": "Aquest cafè ciclista no repara bicicletes" + "ca": "Aquest cafè ciclista no repara bicicletes", + "es": "Este bike café no repara bicicletas" } } ] @@ -386,7 +392,8 @@ "pt": "Quando este café de bicicleta abre?", "da": "Hvornår er denne cykelcafé åbent?", "cs": "Kdy byla tato cyklistická kavárna otevřena?", - "ca": "Quan obri aquest cafè ciclista?" + "ca": "Quan obri aquest cafè ciclista?", + "es": "¿Cuándo abre este bike café?" } } } diff --git a/assets/layers/bike_cleaning/bike_cleaning.json b/assets/layers/bike_cleaning/bike_cleaning.json index fedd79d62..78956543b 100644 --- a/assets/layers/bike_cleaning/bike_cleaning.json +++ b/assets/layers/bike_cleaning/bike_cleaning.json @@ -10,7 +10,7 @@ "pt_BR": "Serviço de limpeza de bicicletas", "pt": "Serviço de limpeza de bicicletas", "ru": "Услуги по чистке велосипедов", - "es": "Servicio de limpieza de bicis", + "es": "Servicio de limpieza de bicicletas", "da": "Cykelrengøring", "cs": "Služba mytí jízdních kol", "ca": "Servei de neteja de bicicletes", @@ -20,7 +20,7 @@ "en": "A layer showing facilities where one can clean their bike", "nl": "Een laag die plaatsen toont waar je je fiets kunt wassen", "de": "Eine Ebene mit Einrichtungen, in denen man sein Fahrrad reinigen kann", - "es": "Una capa que muestra instalaciones en las que uno puede limpiar su bici", + "es": "Una capa que muestra las instalaciones donde se puede limpiar la bicicleta", "da": "Et lag med faciliteter, hvor man kan rengøre sin cykel", "fr": "Une couche affichant les lieux où l'on peut nettoyer son vélo", "cs": "Vrstva zobrazující zařízení, kde si můžete umýt kolo", @@ -34,8 +34,7 @@ "or": [ "service:bicycle:cleaning=yes", "service:bicycle:cleaning=diy", - "amenity=bicycle_wash", - "amenity=bike_wash" + "amenity=bicycle_wash" ] } }, @@ -51,7 +50,7 @@ "pt_BR": "Serviço de limpeza de bicicletas", "pt": "Serviço de limpeza de bicicletas", "ru": "Услуги по чистке велосипедов", - "es": "Servicio de limpieza de bicis", + "es": "Servicio de limpieza de bicicletas", "da": "Cykel rengøringsservice", "cs": "Služba mytí jízdních kol", "ca": "Servei de neteja de bicicletes" @@ -68,7 +67,7 @@ "zh_Hant": "單車清理服務 {name}", "pt_BR": "Serviço de limpeza de bicicletas {name}", "pt": "Serviço de limpeza de bicicletas {name}", - "es": "Servicio de limpieza de bicis {name}", + "es": "Servicio de limpieza de bicicletas {name}", "da": "Cykelrengøringstjeneste {name}", "cs": "Služba mytí kol {name}", "ca": "Servei de neteja de bicicletes {name}" @@ -83,7 +82,6 @@ "if": { "and": [ "service:bicycle:cleaning~*", - "amenity!=bike_wash", "amenity!=bicycle_wash" ] }, @@ -106,7 +104,6 @@ ] } ], - "lineRendering": [], "presets": [ { "title": { @@ -119,7 +116,7 @@ "pt_BR": "uma serviço de limpeza de bicicletas", "pt": "uma serviço de limpeza de bicicletas", "ru": "Услуги по чистке велосипедов", - "es": "un servicio de limpieza de bicis", + "es": "un servicio de limpieza de bicicletas", "da": "en cykelrengøring", "cs": "služba mytí jízdních kol", "ca": "un servei de neteja de bicicletes", @@ -137,7 +134,7 @@ "en": "How much does it cost to use the cleaning service?", "de": "Wie viel kostet die Nutzung des Reinigungsdienstes?", "nl": "Hoeveel kost het gebruik van het fietsschoonmaakpunt?", - "es": "¿Cuánto cuesta utilizar el servicio de limpieza?", + "es": "¿Cuánto cuesta usar el servicio de limpieza?", "fr": "Combien coûte le service de nettoyage ?", "da": "Hvor meget koster det at bruge rengøringsservicen?", "cs": "Kolik stojí využívání služby mytí?", @@ -148,7 +145,7 @@ "en": "Using the cleaning service costs {service:bicycle:cleaning:charge}", "de": "Der Reinigungsservice kostet {service:bicycle:cleaning:charge}", "nl": "Het gebruik van het fietsschoonmaakpunt kost {service:bicycle:cleaning:charge}", - "es": "Utilizar el servicio de limpieza cuesta {service:bicycle:cleaning:charge}", + "es": "Usar el servicio de limpieza cuesta {service:bicycle:cleaning:charge}", "fr": "Le service de nettoyage coûte {service:bicycle:cleaning:charge}", "da": "Brug af rengøringsservice koster {service:bicycle:cleaning:charge}", "cs": "Využití služby mytí stojí {service:bicycle:cleaning:charge}", @@ -158,7 +155,6 @@ }, "condition": { "and": [ - "amenity!=bike_wash", "amenity!=bicycle_wash", "service:bicycle:cleaning!=no", "service:bicycle:cleaning!=" @@ -169,7 +165,7 @@ "addExtraTags": [ "service:bicycle:cleaning:fee=yes" ], - "inline": true + "inline": false }, "mappings": [ { @@ -201,7 +197,7 @@ "en": "Free to use", "de": "Kostenlose Nutzung", "nl": "Gratis te gebruiken", - "es": "Uso gratuito", + "es": "Gratuito", "fr": "Utilisation gratuite", "da": "Gratis at bruge", "cs": "Bezplatné používání", @@ -219,7 +215,7 @@ "en": "How much does it cost to use the cleaning service?", "de": "Wie viel kostet die Nutzung des Reinigungsdienstes?", "nl": "Hoeveel kost het gebruik van het fietsschoonmaakpunt?", - "es": "¿Cuánto cuesta utilizar el servicio de limpieza?", + "es": "¿Cuánto cuesta usar el servicio de limpieza?", "fr": "Combien cela coûte-t-il d'utiliser le service de nettoyage ?", "da": "Hvor meget koster det at bruge rengøringsservicen?", "cs": "Kolik stojí využívání služby mytí?", @@ -231,7 +227,7 @@ "en": "Using the cleaning service costs {charge}", "de": "Die Nutzung des Reinigungsdienstes kostet {charge}", "nl": "Het gebruik van het fietsschoonmaakpunt kost {charge}", - "es": "Utilizar el servicio de limpieza cuesta {charge}", + "es": "Usar el servicio de limpieza cuesta {charge}", "fr": "L’utilisation du service de nettoyage coûte {charge}", "da": "Brug af rengøringsservice koster {charge}", "cs": "Využití služby mytí stojí {charge}", @@ -241,7 +237,6 @@ }, "condition": { "or": [ - "amenity=bike_wash", "amenity=bicycle_wash" ] }, @@ -275,7 +270,7 @@ "then": { "en": "There is a fee to use this cleaning service", "nl": "Dit fietsschoonmaakpunt is betalend", - "es": "Este servicio de limpieza es de pago", + "es": "Hay un cargo por utilizar este servicio de limpieza", "ca": "Hi ha un cost per utilitzar aquest servei de neteja", "de": "Dieser Reinigungsservice ist kostenpflichtig", "cs": "Využití úklidové služby je zpoplatněno", @@ -285,6 +280,54 @@ } ], "id": "bike_cleaning-charge" + }, + { + "question": { + "en": "Is this bicycle cleaning service automated?", + "nl": "Is dit fietsschoonmaakpunt geautomatiseerd?" + }, + "id": "automated", + "mappings": [ + { + "if": "automated=no", + "then": { + "en": "This is a manual bike washing station", + "nl": "Dit is een handmatig fietsschoonmaakpunt" + } + }, + { + "if": "automated=yes", + "then": { + "en": "This is an automated bike wash", + "nl": "Dit is een automatisch fietsschoonmaakpunt" + } + } + ], + "condition": "amenity=bicycle_wash" + }, + { + "question": { + "nl": "Is dit fietsschoonmaakpunt zelfbediening?", + "en": "Is this cleaning service self-service?" + }, + "id": "self_service", + "mappings": [ + { + "if": "self_service=yes", + "then": { + "nl": "Dit fietsschoonmaakpunt is zelfbediening", + "en": "This cleaning service is self-service" + } + }, + { + "if": "self_service=no", + "then": { + "nl": "Dit fietsschoonmaakpunt wordt bediend door aanwezig personeel", + "en": "This cleaning service is operated by an employee" + } + } + ], + "condition": "amenity=bicycle_wash" } ], "deletion": { @@ -300,4 +343,4 @@ "enableRelocation": false, "enableImproveAccuracy": true } -} +} \ No newline at end of file diff --git a/assets/layers/bike_parking/bike_parking.json b/assets/layers/bike_parking/bike_parking.json index 9e3656521..9e3031f16 100644 --- a/assets/layers/bike_parking/bike_parking.json +++ b/assets/layers/bike_parking/bike_parking.json @@ -14,7 +14,7 @@ "pt_BR": "Estacionamento de bicicletas", "pt": "Estacionamento de bicicletas", "ca": "Aparcament per a bicicletes", - "es": "Aparcamiento de bicis", + "es": "Aparcamiento de bicicletas", "da": "Cykelparkering", "cs": "Parkování kol" }, @@ -22,7 +22,7 @@ "en": "A layer showing where you can park your bike", "nl": "Een laag die toont waar je je fiets kunt parkeren", "de": "Eine Ebene, die anzeigt, wo Sie Ihr Fahrrad abstellen können", - "es": "Una capa que muestra donde puedes aparcar tu bici", + "es": "Una capa que muestra dónde puedes aparcar tu bicicleta", "da": "Et lag, der viser, hvor man kan parkere sin cykel", "fr": "Une couche montrant où stationner son vélo", "cs": "Vrstva ukazující, kde můžete zaparkovat kolo", @@ -55,7 +55,7 @@ "pt_BR": "Estacionamento de bicicletas", "pt": "Estacionamento de bicicletas", "ca": "Aparcament per a bicicletes", - "es": "Aparcamiento de bicis", + "es": "Aparcamiento de bicicletas", "da": "Cykelparkering", "cs": "Parkování kol" } @@ -101,7 +101,7 @@ "pl": "Parking dla rowerów", "pt_BR": "uma estacionamento de bicicletas", "pt": "uma estacionamento de bicicletas", - "es": "un aparcamiento de bicis", + "es": "un aparcamiento de bicicletas", "da": "en cykelparkering", "cs": "parkování kol", "ca": "un aparcament per a bicis" @@ -127,10 +127,11 @@ "pl": "Jaki jest typ tego parkingu dla rowerów?", "pt_BR": "Qual o tipo deste estacionamento de bicicletas?", "pt": "Qual o tipo deste estacionamento de bicicletas?", - "es": "¿Cual es el tipo de este aparcamiento de bicicletas?", + "es": "¿Cuál es el tipo de este aparcamiento de bicicletas?", "da": "Hvilken type cykelparkering er det?", "cs": "Jaký je typ tohoto parkoviště pro jízdní kola?", - "ca": "Quin és el tipus d'aquest aparcament de bicicletes?" + "ca": "Quin és el tipus d'aquest aparcament de bicicletes?", + "uk": "Що це за тип велопарковки?" }, "render": { "en": "This is a bicycle parking of the type: {bicycle_parking}", @@ -145,10 +146,11 @@ "pl": "Jest to parking rowerowy typu: {bicycle_parking}", "pt_BR": "Este é um estacionamento de bicicletas do tipo: {bicycle_parking}", "pt": "Este é um estacionamento de bicicletas do tipo: {bicycle_parking}", - "es": "Este es un aparcamiento de bicicletas del tipo: {bicycle_parking}", + "es": "Se trata de un aparcamiento de bicicletas del tipo: {bicycle_parking}", "da": "Dette er en cykelparkering af typen: {bicycle_parking}", "cs": "Jde o typ parkoviště pro jízdní kola: {bicycle_parking}", - "ca": "Aquest és un aparcament de bicicletes del tipus: {bicycle_parking}" + "ca": "Aquest és un aparcament de bicicletes del tipus: {bicycle_parking}", + "uk": "Це велопарковка такого типу: {bicycle_parking}" }, "freeform": { "key": "bicycle_parking", @@ -172,7 +174,9 @@ "da": "Hæftestativer", "cs": "Stojany", "pt_BR": "Racks para prender a bicicleta", - "pl": "Stojaki" + "pl": "Stojaki", + "es": "Soportes", + "uk": "Стійки" }, "icon": { "path": "./assets/layers/bike_parking/staple.svg", @@ -185,7 +189,10 @@ "en": "Rack with side loops", "nl": "Rek met zijbeugel", "fr": "Rack à vélo avec arceau", - "de": "Radständer mit Seitenbügel" + "de": "Radständer mit Seitenbügel", + "cs": "Stojan s bočními smyčkami", + "es": "Racks con lazos laterales", + "uk": "Стійка з бічними петлями" }, "icon": { "path": "./assets/layers/bike_parking/safe_loops.svg", @@ -206,7 +213,8 @@ "ca": "Portarodes/bucles", "da": "Hjulstativ/løkker", "cs": "Stojan na kola / smyčky", - "pt_BR": "Suporte de rodas/loops" + "pt_BR": "Suporte de rodas/loops", + "es": "Curvadores de ruedas/rack" }, "icon": { "path": "./assets/layers/bike_parking/wall_loops.svg", @@ -227,7 +235,9 @@ "da": "Styrholder", "cs": "Držák na řídítka", "pt_BR": "Suporte para guidão", - "pt": "Suporte para guidão" + "pt": "Suporte para guidão", + "es": "Sujetador de manillar", + "uk": "Тримач керма" }, "icon": { "path": "./assets/layers/bike_parking/handlebar_holder.svg", @@ -250,7 +260,9 @@ "cs": "Stojan", "eu": "Rack-a", "pt_BR": "Suporte", - "pt": "Suporte" + "pt": "Suporte", + "es": "Rack", + "uk": "Стійка" }, "icon": { "path": "./assets/layers/bike_parking/rack.svg", @@ -273,7 +285,9 @@ "da": "To-lags", "cs": "Dvouúrovňové", "pt_BR": "De dois níveis", - "pt": "De dois níveis" + "pt": "De dois níveis", + "es": "De dos niveles", + "uk": "Дворівневий" }, "icon": { "path": "./assets/layers/bike_parking/two_tier.svg", @@ -292,7 +306,7 @@ "zh_Hant": "車棚", "it": "Rimessa", "ru": "Навес", - "es": "Caseta", + "es": "Cobertizo", "da": "Skur", "cs": "Přístřešek", "pa_PK": "شیڈ", @@ -300,7 +314,8 @@ "eu": "Etxola", "pt_BR": "Cabana", "pt": "Cabana", - "pl": "Wiata" + "pl": "Wiata", + "uk": "Навіс" }, "icon": { "path": "./assets/layers/bike_parking/shed.svg", @@ -323,7 +338,8 @@ "pa_PK": "بولارڈ", "eu": "Bolardo", "pt_BR": "Pilar", - "pt": "Pilar" + "pt": "Pilar", + "uk": "Стовпчик" }, "icon": { "path": "./assets/layers/bike_parking/bollard.svg", @@ -339,12 +355,13 @@ "it": "Una zona del terreno che è marcata per il parcheggio delle bici", "de": "Ein Bereich auf dem Boden, der für das Abstellen von Fahrrädern gekennzeichnet ist", "zh_Hant": "樓層當中標示為單車停車場的區域", - "es": "Una área en el suelo que está marcada para el aparcamiento de bicicletas", + "es": "Un área en el suelo que está marcada para el aparcamiento de bicicletas", "da": "Et område på gulvet, der er markeret til cykelparkering", "cs": "Plocha na zemi označená pro parkování jízdních kol", "ca": "Una zona al terra que està senyalitzada per a l'aparcament de bicicletes", "pt_BR": "Uma área no chão que é marcada para o estacionamento de bicicletas", - "pt": "Uma área no chão que é marcada para o estacionamento de bicicletas" + "pt": "Uma área no chão que é marcada para o estacionamento de bicicletas", + "uk": "Зона на поверсі, позначена для паркування велосипедів" } }, { @@ -352,7 +369,21 @@ "then": { "en": "A locker - the bicycles are enclosed completely individually or with a few bicycles together. The locker is too small to fit a person standing..", "nl": "Een fietskluis waar één of enkele fietsen staan en op slot kan en die te klein is om in recht te staan.", - "de": "Ein Schließfach - Fahrräder werden einzeln oder mit mehreren Fahrrädern zusammen eingeschlossen. Der Schrank ist zu klein für eine stehende Person." + "de": "Ein Schließfach - Fahrräder werden einzeln oder mit mehreren Fahrrädern zusammen eingeschlossen. Der Schrank ist zu klein für eine stehende Person.", + "cs": "Skříňka - kola jsou uzavřena zcela samostatně nebo s několika koly dohromady. Skříňka je příliš malá na to, aby se do ní vešla stojící osoba..", + "es": "Un casillero: las bicicletas están completamente encerradas individualmente o con unas pocas bicicletas juntas. El casillero es demasiado pequeño para que quepa una persona de pie.", + "uk": "Шафка - велосипеди зачиняються повністю індивідуально або разом з кількома велосипедами. Шафка замала, щоб у ній могла поміститися людина стоячи." + } + }, + { + "if": "bicycle_parking=lean_and_stick", + "then": { + "en": "A lean-to bracket with possibility to use a lock through eyelet. The seat tube can be held by the stand by an anchor", + "nl": "Een aanleunbeugel met klem waarbij je de zadelbuis in een anker kan vastklikken. Er is meestal een oog om een slot door te steken", + "cs": "Skloněný držák s možností použití zámku přes očko. Sedlovou trubku lze za stojan uchytit pomocí kotvy", + "de": "Ein Anlehnbügel mit der Möglichkeit, ein Schloss durch eine Öse zu verwenden. Das Sitzrohr kann durch den Ständer durch einen Anker gehalten werden", + "es": "Un soporte inclinado con posibilidad de usar un candado a través de un ojal. El tubo del sillín puede ser sujetado por el soporte mediante un ancla", + "uk": "Кронштейн з можливістю використання замка через вушко. Підсідельна труба може утримуватися на стійці за допомогою анкера" } } ], @@ -369,10 +400,11 @@ "pt_BR": "Qual a localização relativa deste estacionamento de bicicletas?", "de": "Wo befinden sich diese Fahrradabstellplätze?", "pt": "Qual a localização relativa deste estacionamento de bicicletas?", - "es": "¿Cual es la localización relativa de este aparcamiento de bicicletas?", + "es": "¿Cuál es la ubicación relativa de este aparcamiento de bicicletas?", "da": "Hvad er den relative placering af denne cykelparkering?", "cs": "Jaké je relativní umístění tohoto parkoviště pro jízdní kola?", - "ca": "Quina és la ubicació relativa d'aquest aparcament per a bicicletes?" + "ca": "Quina és la ubicació relativa d'aquest aparcament per a bicicletes?", + "uk": "Де знаходиться ця велопарковка?" }, "mappings": [ { @@ -390,7 +422,8 @@ "ca": "Aparcament subterrani", "es": "Aparcamiento subterráneo", "da": "Underjordisk parkering", - "cs": "Podzemní parkoviště" + "cs": "Podzemní parkoviště", + "uk": "Підземний паркінг" } }, { @@ -409,7 +442,8 @@ "es": "Aparcamiento a nivel de calle", "da": "Parkering i gade niveau", "cs": "Povrchové parkoviště", - "ca": "Aparcament a nivell de carrer" + "ca": "Aparcament a nivell de carrer", + "uk": "Наземний паркінг" } }, { @@ -426,10 +460,11 @@ "pt": "Estacionamento no telhado", "ru": "Парковка на крыше", "ca": "Aparcament al terrat", - "es": "Aparcamiento de azotea", + "es": "Aparcamiento en azotea", "da": "Tagparkering", "cs": "Parkoviště na střeše", - "pl": "Parking na dachu" + "pl": "Parking na dachu", + "uk": "Парковка на даху" } }, { @@ -466,7 +501,7 @@ "zh_Hant": "這個停車場是否有車棚?如果是室內停車場也請選擇\"遮蔽\"。", "pt_BR": "Este estacionamento é coberto? Também selecione \"coberto\" para estacionamentos internos.", "pt": "Este estacionamento é coberto? Também selecione \"coberto\" para estacionamentos internos.", - "es": "¿Está cubierto este aparcamiento? Selecciona \"cubierto\" también para aparcamientos interiores.", + "es": "¿Está cubierto este aparcamiento? Selecciona también \"cubierto\" para aparcamientos interiores.", "da": "Er denne parkering overdækket? Vælg også \"overdækket\" for indendørs parkeringspladser.", "cs": "Je toto parkoviště zastřešené? U vnitřních parkovišť vyberte také možnost \"kryté\".", "ca": "Aquest aparcament està cobert? També seleccioneu \"cobert\" per als aparcaments interiors." @@ -492,7 +527,7 @@ "ru": "Это крытая парковка (есть крыша/навес)", "pt_BR": "Este estacionamento é coberto (tem um telhado)", "pt": "Este estacionamento é coberto (tem um telhado)", - "es": "Este aparcamiento está cubierto (tiene un tejado)", + "es": "Este aparcamiento está cubierto (tiene techo)", "da": "Denne parkeringsplads er overdækket (den har et tag)", "cs": "Toto parkoviště je zastřešené (má střechu)", "ca": "Aquest aparcament està cobert (té un sostre)" @@ -532,7 +567,7 @@ "zh_Hant": "這個單車停車場能放幾台單車 (包括裝箱單車)?", "es": "¿Cuántas bicicletas caben en este aparcamiento de bicicletas?", "da": "Hvor mange cykler er der plads til på denne cykelparkering (inklusive mulige ladcykler)?", - "cs": "Kolik jízdních kol se vejde na toto parkoviště (včetně případných nákladních kol)?", + "cs": "Kolik jízdních kol se vejde na toto parkoviště?", "ca": "Quantes bicicletes caben en aquest aparcament de bicicletes?", "pt_BR": "Quantas bicicletas cabem nesse estacionamento de bicicletas (incluindo possíveis bicicletas de carga)?", "pt": "Quantas bicicletas cabem neste estacionamento de bicicletas (incluindo possíveis bicicletas de carga)?", @@ -543,7 +578,8 @@ "nl": "Dit is het totaal aantal gewone fietsen, bakfietsen, elektrische fietsen, ...", "de": "Dazu gehören reguläre Fahrräder, Lasträder, Ebikes,...", "pl": "To obejmuje zwykłe rowery, do transportu dóbr, elektryczne, ...", - "es": "Esto incluye bicis normales, de carga, eléctricas, ..." + "es": "Esto incluye bicicletas normales, bicicletas de carga, bicicletas eléctricas,…", + "cs": "Patří sem běžná jízdní kola, nákladní kola, elektrokola, ..." }, "render": { "en": "Place for {capacity} bikes", @@ -556,7 +592,7 @@ "ru": "Место для {capacity} велосипеда(ов)", "pt_BR": "Lugar para {capacity} bicicletas", "pt": "Lugar para {capacity} bicicletas", - "es": "Espacio para {capacity} bicis", + "es": "Espacio para {capacity} bicicletas", "da": "Plads til {capacity} cykler", "cs": "Místo pro {capacity} kol", "ca": "Espai per a {capacity} bicis", @@ -579,7 +615,7 @@ "ru": "Кто может пользоваться этой велопарковкой?", "pt_BR": "Quem pode usar este estacionamento de bicicletas?", "pt": "Quem pode usar este estacionamento de bicicletas?", - "es": "¿Quién puede utilizar este aparcamiento de bicicletas?", + "es": "¿Quién puede usar este aparcamiento de bicicletas?", "da": "Hvem kan bruge denne cykelparkering?", "cs": "Kdo může parkoviště pro jízdní kola využívat?", "ca": "Qui pot utilitzar aquest aparcament de bicicletes?", @@ -641,10 +677,11 @@ "pt_BR": "Acesso é principalmente para visitantes de uma empresa", "de": "Der Parkplatz darf von Kunden des Unternehmens genutzt werden", "pt": "Acesso é principalmente para visitantes de uma empresa", - "es": "El acceso es primariamente para visitantes a un negocio", + "es": "El acceso es principalmente para visitantes de un negocio", "da": "Adgang hovedsageligt for besøgende til en virksomhed", "cs": "Přístup je určen především pro návštěvníky podniku", - "ca": "L'accés és principalment per a visitants d'un negoci" + "ca": "L'accés és principalment per a visitants d'un negoci", + "uk": "Доступ надається насамперед відвідувачам бізнесу" } }, { @@ -656,29 +693,23 @@ "cs": "Přístup je omezen na členy školy, společnosti nebo organizace", "da": "Adgangen er begrænset til medlemmer af en skole, virksomhed eller organisation", "de": "Der Parkplatz darf nur von Mitgliedern einer Schule, Firma oder Organisation genutzt werden", - "es": "El acceso se limita a miembros de una escuela, compañía u organización", + "es": "El acceso está limitado a los miembros de una escuela, empresa u organización", "fr": "Accès limité aux membres d'une école, entreprise ou organisation", "it": "Accesso limitato ai membri di una scuola, una compagnia o un’organizzazione", "pt": "Acesso é limitado aos membros de uma escola, companhia ou organização", "pt_BR": "Acesso é limitado aos membros de uma escola, companhia ou organização", - "zh_Hant": "通行性僅限學校、公司或組織的成員" + "zh_Hant": "通行性僅限學校、公司或組織的成員", + "uk": "Доступ обмежений для членів школи, компанії або організації" } }, { "if": "access=private", "then": { - "en": "Access is limited to members of a school, company or organisation", - "nl": "Private fietsenstalling van een school, een bedrijf, ...", - "fr": "Accès limité aux membres d'une école, entreprise ou organisation", - "it": "Accesso limitato ai membri di una scuola, una compagnia o un’organizzazione", - "zh_Hant": "通行性僅限學校、公司或組織的成員", - "pt_BR": "Acesso é limitado aos membros de uma escola, companhia ou organização", - "de": "Der Parkplatz darf nur von Mitgliedern einer Schule, Firma oder Organisation genutzt werden", - "pt": "Acesso é limitado aos membros de uma escola, companhia ou organização", - "es": "El acceso se limita a miembros de una escuela, compañía u organización", - "da": "Adgangen er begrænset til medlemmer af en skole, virksomhed eller organisation", - "cs": "Přístup je omezen na členy školy, společnosti nebo organizace", - "ca": "L'accés està limitat a membres d'una escola, companyia o organització" + "en": "Private bicycle parking which is never available to the public, also not via a membership fee", + "nl": "Private fietsenstalling die niet voor het grote publiek toegankelijk is (dus ook niet met bv. een abonnement)", + "de": "Private Fahrradabstellplätze, die nie der Öffentlichkeit zur Verfügung stehen, auch nicht über einen Mitgliedsbeitrag", + "cs": "Soukromé parkoviště pro kola, které není nikdy přístupné veřejnosti, a to ani za členský poplatek", + "es": "Aparcamiento privado de bicicletas que nunca está disponible para el público, ni siquiera mediante una cuota de socio" } } ], @@ -691,7 +722,9 @@ "nl": "Is deze fietsenstalling gratis te gebruiken?", "de": "Sind die Fahrradparkplätze kostenlos zu benutzen?", "ca": "Aquests aparcaments de bicicletes són gratuïts?", - "es": "¿Son estos aparcamientos de bicicletras de uso gratuito?" + "es": "¿Son gratuitos estos aparcamientos de bicicletas?", + "cs": "Jsou tato parkoviště pro jízdní kola zdarma?", + "uk": "Чи є ці велопарковки безкоштовними?" }, "mappings": [ { @@ -701,7 +734,9 @@ "nl": "Betalende fietsparking", "de": "Man muss zahlen, um den Fahrradparkplatz zu nutzen", "fr": "L'utilisation de ce parking à vélo est payant", - "es": "Uno tiene que pagar para utilizar este aparcamiento de bicicletas" + "es": "Hay que pagar para usar este aparcamiento de bicicletas", + "cs": "Za použití tohoto parkoviště pro kola se musí platit", + "uk": "За користування цією велопарковкою потрібно платити" } }, { @@ -712,7 +747,8 @@ "nl": "Gratis te gebruiken", "de": "Die Nutzung ist kostenlos", "fr": "L'utilisation de ce parking à vélo est gratuit", - "es": "Uso gratuito" + "es": "Gratuito", + "cs": "Bezplatné použití" } } ] @@ -724,19 +760,22 @@ "en": "How much does it cost to park your bike here?", "nl": "Hoeveel kost het om een fiets te stallen?", "de": "Wie viel kostet es, Ihr Fahrrad hier zu parken?", - "es": "¿Cuánto cuesta aparcar aquí tu bici?" + "es": "¿Cuánto cuesta aparcar tu bicicleta aquí?", + "cs": "Kolik stojí zaparkování kola na tomto místě?" }, "questionHint": { "en": "This is the amount which is charged for a single bike", "nl": "Dit is de kostprijs voor een enkele fiets", "de": "Das ist der Betrag, der für ein einzelnes Fahrrad berechnet wird", - "es": "Esta es la cantidad que se cobra por una sola bici" + "es": "Esta es la cantidad que se cobra por una sola bicicleta", + "cs": "To je částka, která se účtuje za jedno jízdní kolo" }, "render": { "en": "Parking your bike costs {charge}", "nl": "Je fiets hier parkeren kost {charge}", "de": "Das Parken Ihres Fahrrads kostet {charge}", - "es": "Aparcar tu bici cuesta {charge}" + "es": "Aparcar tu bicicleta cuesta {charge}", + "cs": "Parkování kola stojí {charge}" }, "freeform": { "key": "charge", @@ -752,14 +791,16 @@ "de": "Wer unterhält diese Fahrradabstellplätze?", "fr": "Qui entretient ce parking à vélos ?", "ca": "Qui manté aquest aparcament per a bicis?", - "es": "¿Quién mantiene este aparcamiento de bicicletas?" + "es": "¿Quién mantiene este aparcamiento de bicicletas?", + "cs": "Kdo se stará o parkování jízdních kol?" }, "render": { "en": "This bicycle parking is maintained by {operator}", "nl": "Deze fietsenstalling wordt beheerd door {operator}", "de": "Dieser Fahrradparkplatz wird von {operator} bereitgestellt", "ca": "{operator} manté aquest aparcament per a bicis", - "es": "Este aparcamiento de bicicletas es mantenido por {operator}" + "es": "Este aparcamiento de bicicletas es mantenido por {operator}", + "cs": "Toto parkoviště pro jízdní kola spravuje {operator}" }, "freeform": { "key": "operator" @@ -772,13 +813,17 @@ "nl": "Wat is het telefoonnummer van de operator van deze fietsenstalling?", "de": "Wie lautet die Telefonnummer des Betreibers dieses Fahrradparkplatzes?", "ca": "Quin és el número de telèfon de l'operador d'aquest aparcament per a bicis?", - "es": "¿Cuál es número de teléfono del operador de este aparcamiento de bicicletas?" + "es": "¿Cuál es el número de teléfono del operador de este aparcamiento de bicicletas?", + "uk": "Який номер телефону оператора цієї велопарковки?", + "cs": "Jaké je telefonní číslo na provozovatele tohoto parkoviště pro jízdní kola?" }, "questionHint": { "en": "One might be able to call this number in case of problems, e.g. to remove unmaintained bicycles", "nl": "Men kan dit nummer bellen om bv. fietswrakken of defecten te melden", "de": "Man könnte diese Nummer anrufen, wenn es Probleme gibt, z. B. um nicht gewartete Fahrräder zu entfernen", - "ca": "És possible que es pugui trucar a aquest número en cas de problemes, p. per retirar les bicicletes abandonades" + "ca": "És possible que es pugui trucar a aquest número en cas de problemes, p. per retirar les bicicletes abandonades", + "cs": "Na toto číslo je možné volat v případě problémů, např. při odstraňování neudržovaných jízdních kol", + "es": "Se puede llamar a este número en caso de problemas, por ejemplo, para retirar bicicletas sin mantenimiento" }, "icon": "./assets/layers/questions/phone.svg", "freeform": { @@ -815,7 +860,9 @@ "en": "What is the website number of the operator of this bicycle parking?", "nl": "Wat is de website van de operator van deze fietsenstalling?", "de": "Wie lautet die Nummer auf der Website des Betreibers dieses Fahrradparkplatzes?", - "es": "¿Cuál es la página web del operador de este aparcamiento de bicicletas?" + "es": "¿Cuál es el número de sitio web del operador de este aparcamiento de bicicletas?", + "uk": "Яка адреса веб-сайту оператора цієї велопарковки?", + "cs": "Jaké je číslo internetové stránky provozovatele tohoto parkoviště pro jízdní kola?" }, "icon": "./assets/layers/icons/website.svg", "freeform": { @@ -853,7 +900,9 @@ "nl": "Wat is het emailadres van de beheerder van deze parking?", "de": "Wie lautet die E-Mail-Adresse des Betreibers dieses Fahrradparkplatzes?", "ca": "Quina és l'adreça de correu electrònic de l'operador d'aquest aparcament per a bicis?", - "es": "¿Cuál es la dirección de correo electrónico del operador de este aparcamiento de bicicletas?" + "es": "¿Cuál es la dirección de correo electrónico del operador de este aparcamiento de bicicletas?", + "cs": "Jaká je e-mailová adresa provozovatele tohoto parkoviště pro jízdní kola?", + "uk": "Яка електронна адреса оператора цієї велопарковки?" }, "icon": "./assets/svg/envelope.svg", "freeform": { @@ -873,7 +922,7 @@ "zh_Hant": "這個單車停車場有地方放裝箱的單車嗎?", "pt_BR": "O estacionamento de bicicletas tem vagas para bicicletas de carga?", "pt": "O estacionamento de bicicletas tem vagas para bicicletas de carga?", - "es": "¿Este aparcamiento de bicicletas tiene huecos para bicicletas de carga?", + "es": "¿Este aparcamiento de bicicletas tiene plazas para bicicletas de carga?", "da": "Har denne cykelparkering plads til ladcykler?", "cs": "Má toto parkoviště místa pro nákladní kola?", "ca": "Aquest aparcament de bicicletes té punts per a bicicletes de càrrega?" @@ -909,7 +958,7 @@ "zh_Hant": "這停車場有設計 (官方) 空間給裝箱的單車。", "pt_BR": "Este estacionamento tem vagas (oficiais) projetadas para bicicletas de carga.", "pt": "Este estacionamento tem vagas (oficiais) projetadas para bicicletas de carga.", - "es": "Este aparcamiento tiene huecos designados (oficialmente) para bicicletas de carga.", + "es": "Este aparcamiento tiene plazas designadas (oficiales) para bicicletas de carga.", "da": "Denne parkeringsplads har udpegede (officielle) pladser til ladcykler.", "cs": "Toto parkoviště má vyhrazená (oficiální) místa pro nákladní kola.", "ca": "Aquest aparcament hi han llocs designats (oficialment) per a bicicletes de càrrega." @@ -926,9 +975,9 @@ "it": "Il parcheggio delle bici cargo è proibito", "pt_BR": "Você não tem permissão para estacionar bicicletas de carga", "pt": "Não tem permissão para estacionar bicicletas de carga", - "es": "No está permitido aparcar bicicletas de carga", + "es": "No está permitido aparcar bicicletas de carga o no hay plazas previstas para bicicletas de carga", "da": "Det er ikke tilladt at parkere ladcykler", - "cs": "Není povoleno parkovat nákladní kola", + "cs": "Parkovat nákladní kola není povoleno nebo nejsou k dispozici žádná místa pro nákladní kola", "ca": "No teniu permís per aparcar bicicletes de càrrega o no hi ha places previstes per a bicicletes de càrrega" } } @@ -959,7 +1008,7 @@ "it": "Questo parcheggio può contenere {capacity:cargo_bike} bici cargo", "pt_BR": "Neste estacionamento cabem {capacity:cargo_bike} bicicletas de carga", "pt": "Neste estacionamento cabem {capacity:cargo_bike} bicicletas de carga", - "es": "En este aparcamiento caben {capacity:cargo_bike} bicicletas de carga", + "es": "Este aparcamiento cabe {capacity:cargo_bike} bicicletas de carga", "da": "Der er plads til {capacity:cargo_bike} på denne cykelparkering", "cs": "Toto parkoviště je vhodné pro {capacity:cargo_bike} nákladních kol", "ca": "A aquest aparcament caben {capacity:cargo_bike} bicicletes de càrrega" @@ -980,7 +1029,9 @@ "then": { "en": "There are no dedicated spaces for cargo bikes here or parking cargo bikes here is not allowed", "nl": "Hier zijn geen plaatsen voor bakfietsen voorzien of bakfietsen stallen is niet toegestaan ", - "de": "Es gibt hier keine speziellen Stellplätze für Lastenfahrräder oder das Abstellen von Lastenfahrrädern ist hier nicht erlaubt" + "de": "Es gibt hier keine speziellen Stellplätze für Lastenfahrräder oder das Abstellen von Lastenfahrrädern ist hier nicht erlaubt", + "cs": "Nejsou zde žádná vyhrazená místa pro nákladní kola nebo zde není parkování nákladních kol povoleno", + "es": "No hay espacios dedicados para bicicletas de carga aquí o no se permite aparcar bicicletas de carga aquí" }, "hideInAnswer": "capacity:cargo_bike=", "addExtraTags": [ @@ -997,12 +1048,15 @@ "nl": "Wat is de toegestane, maximale parkeerduur?", "de": "Was ist die maximal erlaubte Parkdauer?", "ca": "Quina és la durada màxima permesa d'estacionament?", - "es": "¿Cuál es la duración máxima permitida de estacionamiento?" + "es": "¿Cuál es la duración máxima de aparcamiento permitida?", + "cs": "Jaká je maximální povolená doba parkování?" }, "questionHint": { "en": "If the bicycle is parked for a longer amount, it might be removed by the operator", "nl": "Indien een fiets langer geparkeerd staat, kan deze verwijderd worden door de beheerder", - "de": "Wenn das Fahrrad für längere Zeit abgestellt wird, kann es vom Betreiber entfernt werden" + "de": "Wenn das Fahrrad für längere Zeit abgestellt wird, kann es vom Betreiber entfernt werden", + "cs": "Pokud je kolo zaparkované delší dobu, může ho provozovatel odstranit", + "es": "Si la bicicleta está aparcada durante más tiempo, el operador podría retirarla" }, "freeform": { "key": "maxstay", @@ -1013,7 +1067,8 @@ "nl": "Een fiets mag hier maximaal {canonical(maxstay)} parkeren", "de": "Ein Fahrrad kann hier höchstens für {canonical(maxstay)} geparkt werden", "ca": "Una bici pot aparcar aquí com a màxim {canonical(maxstay)}", - "es": "Se puede aparcar aquí una bici por como mucho {canonical(maxstay)}" + "es": "Una bicicleta se puede aparcar aquí como máximo durante {canonical(maxstay)}", + "cs": "Kolo zde může být zaparkováno maximálně po dobu {canonical(maxstay)}" } } ], diff --git a/assets/layers/bike_repair_station/bike_repair_station.json b/assets/layers/bike_repair_station/bike_repair_station.json index 932dad59d..1ff4fb7eb 100644 --- a/assets/layers/bike_repair_station/bike_repair_station.json +++ b/assets/layers/bike_repair_station/bike_repair_station.json @@ -19,7 +19,7 @@ "en": "A layer showing bicycle pumps and bicycle repair tool stands", "nl": "Deze laag toont fietspompen en herstelpunten voor fietsen", "de": "Eine Ebene mit Fahrradpumpen und Werkzeugständern für die Fahrradreparatur", - "es": "Una capa que muestra bombas de bicicletas y puestos de herramientas de reparación de bicicletas", + "es": "Una capa que muestra bombas de bicicleta y soportes de herramientas de reparación de bicicletas", "da": "Et lag med cykelpumper og cykelreværktøjsstativer", "fr": "Une couche montrant les pompes à vélo et les centres de réparation", "cs": "Vrstva zobrazující vzduchové kompresory na jízdní kola a stojany na nářadí pro opravu jízdních kol", @@ -45,7 +45,7 @@ "it": "Stazione bici (gonfiaggio & riparazione)", "pt_BR": "Estação de bicicletas (bomba e reparo)", "ru": "Велостанция (накачка шин и ремонт)", - "es": "Estación de bicis (bomba y reparación)", + "es": "Estación de bicicletas (bomba y reparación)", "da": "Cykelstation (pumpe og reparation)", "ca": "Estació de bicicletes (bomba i reparació)", "cs": "Cyklistická stanice (pumpa a opravna)", @@ -69,7 +69,7 @@ "pt_BR": "Estação de reparo de bicicletas", "pt": "Estação de reparo de bicicletas", "ru": "Станция обслуживания велосипедов", - "es": "Estación de reparación de bicis", + "es": "Estación de reparación de bicicletas", "da": "Cykelreparationsstation", "cs": "Stanice na opravu kol", "ca": "Estació de reparació de bicicletes", @@ -93,11 +93,12 @@ "pt_BR": "Estação de reparo de bicicletas", "pt": "Estação de reparo de bicicletas", "ru": "Станция обслуживания велосипедов", - "es": "Estación de reparación de bicis", + "es": "Estación de reparación de bicicletas", "da": "Cykelreparationsstation", "cs": "Stanice na opravu kol", "ca": "Estació de reparació de bicicletes", - "pl": "Stacja naprawy rowerów" + "pl": "Stacja naprawy rowerów", + "uk": "Станція ремонту велосипедів" } }, { @@ -146,7 +147,7 @@ "it": "Pompa per bici {name}", "ru": "Велосипедный насос {name}", "pt_BR": "Bomba de bicicleta {name}", - "es": "Bomba de bicicletas {name}", + "es": "Bomba de bicicleta {name}", "da": "Cykelpumpe {name}", "cs": "Vzduchový kompresor {name}", "ca": "Bomba per a bicicletes {name}", @@ -171,7 +172,7 @@ "ru": "Велосипедный насос", "pt_BR": "Bomba de bicicleta", "ca": "Bomba de bicicleta", - "es": "Bomba para bicicletas", + "es": "Bomba de bicicleta", "da": "Cykelpumpe", "cs": "Vzduchový kompresor", "pl": "Pompka do rowerów", @@ -327,7 +328,7 @@ "fi": "pyöräpumppu", "pl": "pompka do roweru", "pt_BR": "uma bomba de bicicleta", - "es": "una bomba de bicicletas", + "es": "una bomba de bicicleta", "da": "en cykelpumpe", "cs": "pumpa na kolo", "ca": "una manxa per a bicicletes", @@ -347,7 +348,7 @@ "pl": "Urządzenie do pompowania opon w stałym miejscu w przestrzeni publicznej.", "pt_BR": "Um dispositivo para encher seus pneus em um local fixa no espaço público.", "pt": "Um aparelho para encher os seus pneus num local fixa no espaço público.", - "es": "Un dispositivo para inflar tus ruedas en una posición fija en el espacio público.", + "es": "Un dispositivo para inflar los neumáticos en una ubicación fija en el espacio público.", "da": "En anordning til at fylde dine dæk op på et fast sted i det offentlige rum.", "cs": "Zařízení pro huštění pneumatik na pevném místě na veřejném místě.", "ca": "Un dispositiu per a unflar les teues rodes en una posició fixa a l'espai públic." @@ -382,8 +383,8 @@ "nl": "Een fietspomp en gereedschap om je fiets te herstellen in de publieke ruimte. Deze zijn op een vastgemaakt, bijvoorbeeld aan een paal.", "fr": "Un dispositif avec des outils pour réparer votre vélo combiné à une pompe a un emplacement fixe. Les outils sont souvent attachés par une chaîne pour empêcher le vol.", "it": "Un dispositivo con attrezzi per riparare la tua bici e una pompa in un luogo fisso. Gli attrezzi sono spesso attaccati ad una catena per prevenire il furto.", - "de": "Ein Gerät mit Werkzeugen zur Reparatur von Fahrrädern kombiniert mit einer Pumpe an einem festen Standort. Die Werkzeuge sind oft mit Ketten gegen Diebstahl gesichert.", - "es": "Una bomba de bicicletas y herramientas para reparar tu bicicleta en el espacio público. Las herramientas habitualmente están aseguradas con cadenas contra el robo.", + "de": "Ein Gerät mit Werkzeug zur Reparatur von Fahrrädern kombiniert mit einer Pumpe an einem festen Standort. Das Werkzeug ist oft mit Ketten gegen Diebstahl gesichert.", + "es": "Una bomba de bicicleta y herramientas para reparar la bicicleta en el espacio público. Las herramientas suelen estar aseguradas con cadenas contra robos.", "da": "En cykelpumpe og værktøj til at reparere din cykel i det offentlige rum. Værktøjet er ofte sikret med kæder mod tyveri.", "cs": "Vzduchový kompresor na kolo a nářadí na opravu kola na veřejném místě. Nářadí je často zajištěno řetězy proti krádeži.", "ca": "Una bomba per a bicicletes i eines per a reparar la teva bicicleta a l'espai públic. Les eines sovint estan assegurades amb cadenes contra robatoris.", @@ -417,8 +418,8 @@ "description": { "en": "Tools to repair your bike in the public space (without pump). The tools are secured against theft.", "nl": "Gereedschap om je fiets te herstellen in de publieke ruimte (zonder pomp). Deze zijn op een vastgemaakt, bijvoorbeeld aan een paal.", - "de": "Werkzeug, um Ihr Fahrrad im öffentlichen Raum zu reparieren (ohne Pumpe). Die Werkzeuge sind gegen Diebstahl gesichert.", - "es": "Herramientas para reparar tu bici en el espacio público (sin bomba).Las herramientas están aseguradas contra el robo.", + "de": "Werkzeug, um Ihr Fahrrad im öffentlichen Raum zu reparieren (ohne Pumpe). Das Werkzeug ist gegen Diebstahl gesichert.", + "es": "Herramientas para reparar la bicicleta en el espacio público (sin bomba). Las herramientas están aseguradas contra robos.", "da": "Værktøj til at reparere din cykel i det offentlige rum (uden pumpe). Værktøjet er sikret mod tyveri.", "fr": "Des outils pour réparer les vélos dans l’espace public (sans pompe). Les outils sont sécurisés contre le vol.", "cs": "nářadí pro opravu kola na veřejném místě (bez vzduchového kompresoru) Nářadí je zabezpečeno proti krádeži.", @@ -439,10 +440,11 @@ "it": "Quali servizi sono disponibili in questa stazione per bici?", "pt_BR": "Quais serviços estão disponíveis nesta estação de bicicletas?", "pt": "Quais serviços estão disponíveis nesta estação de bicicletas?", - "es": "¿Qué servicios están disponibles en esta localización?", + "es": "¿Qué servicios están disponibles en este lugar?", "da": "Hvilke tjenester er tilgængelige på dette sted?", "cs": "Jaké služby jsou na tomto místě k dispozici?", - "ca": "Quins serveis hi ha disponibles en aquesta ubicació?" + "ca": "Quins serveis hi ha disponibles en aquesta ubicació?", + "uk": "Які послуги доступні в цьому місці?" }, "mappings": [ { @@ -464,7 +466,8 @@ "es": "Solo hay una bomba presente", "da": "Der er kun en pumpe", "cs": "K dispozici je pouze vzduchový kompresor", - "ca": "Només hi ha una bomba present" + "ca": "Només hi ha una bomba present", + "uk": "Присутній тільки насос" } }, { @@ -483,10 +486,11 @@ "it": "Ci sono solo degli attrezzi (cacciaviti, pinze…) presenti", "pt_BR": "Há somente ferramentas (chaves de fenda, alicates...) presentes", "pt": "Há somente ferramentas (chaves de fenda, alicates...) presentes", - "es": "Solo hay herramientas (destornilladores, pinzas...) presentes", + "es": "Solo hay herramientas (destornilladores, alicates,…) presentes", "da": "Der er kun værktøj (skruetrækkere, tænger, ...) til stede", "cs": "K dispozici je pouze nářadí (šroubováky, kleště, …)", - "ca": "Només hi ha present ferramentes (tornavísos, pinces, …)" + "ca": "Només hi ha present ferramentes (tornavísos, pinces, …)", + "uk": "Присутні лише інструменти (викрутки, плоскогубці, ...)" } }, { @@ -505,10 +509,11 @@ "it": "Ci sono sia attrezzi che pompa presenti", "pt_BR": "Há tanto ferramentas e uma bomba presente", "pt": "Há tanto ferramentas e uma bomba presente", - "es": "Hay tanto herramientas como bombas", + "es": "Hay tanto herramientas como una bomba presentes", "da": "Der er både værktøj og pumpe", "cs": "K dispozici jsou nástroje i vzduchový kompresor", - "ca": "Hi ha tant eines com una bomba" + "ca": "Hi ha tant eines com una bomba", + "uk": "Присутні як інструменти, так і насос" } } ] @@ -523,10 +528,11 @@ "it": "La pompa per bici è sempre funzionante?", "ru": "Велосипедный насос все еще работает?", "pl": "Czy pompka rowerowa jest nadal sprawna?", - "es": "¿Todavía está operativa la bomba para bicicletas?", + "es": "¿La bomba de bicicleta sigue funcionando?", "da": "Fungerer cykelpumpen stadig?", "cs": "Je vzduchový kompresor na kolo stále funkční?", - "ca": "La bomba per a la bicicleta encara funciona?" + "ca": "La bomba per a la bicicleta encara funciona?", + "uk": "Велосипедний насос ще працює?" }, "condition": "service:bicycle:pump=yes", "mappings": [ @@ -541,10 +547,11 @@ "it": "La pompa per bici è guasta", "ru": "Велосипедный насос сломан", "pl": "Pompka rowerowa jest zepsuta", - "es": "La bomba para bicicletas está rota", + "es": "La bomba de bicicleta está rota", "da": "Cykelpumpen er i stykker", "cs": "Vzduchový kompresor na kolo je rozbitý", - "ca": "La bomba per a bicicletes està trencada" + "ca": "La bomba per a bicicletes està trencada", + "uk": "Велосипедний насос зламаний" } }, { @@ -558,10 +565,11 @@ "it": "La pompa per bici funziona", "ru": "Велосипедный насос работает", "pl": "Pompka rowerowa jest sprawna", - "es": "La bomba para bicicletas está operativa", + "es": "La bomba de bicicleta está operativa", "da": "Cykelpumpen er i drift", "cs": "Vzduchový kompresor na kolo je v provozu", - "ca": "La bomba per a la bicicleta està operativa" + "ca": "La bomba per a la bicicleta està operativa", + "uk": "Велосипедний насос працює" } } ], @@ -590,7 +598,7 @@ "en": "Who is allowed to use this repair station?", "nl": "Wie kan dit herstelpunt gebruiken?", "de": "Wer darf die Reparaturstation nutzen?", - "es": "¿A quién se le permite utilizar esta estación de reparación?", + "es": "¿Quién puede usar esta estación de reparación?", "da": "Hvem må bruge denne reparationsstation?", "fr": "Qui est autorisé à utiliser ce centre de réparation ?", "cs": "Kdo smí tuto opravnu používat?", @@ -645,7 +653,7 @@ "en": "Not accessible to the general public", "nl": "Niet publiek toegankelijk", "de": "Die Reparaturstation darf nicht öffentlich genutzt werden", - "es": "No accesible para el público general", + "es": "No accesible al público en general", "da": "Ikke tilgængelig for offentligheden", "fr": "Pas accessible au public", "cs": "Nepřístupné pro veřejnost", @@ -659,7 +667,7 @@ "en": "Not accessible to the general public", "nl": "Niet publiek toegankelijk", "de": "Nicht für die Allgemeinheit zugänglich", - "es": "No accesible para el público general", + "es": "No accesible al público en general", "da": "Ikke tilgængelig for offentligheden", "fr": "Pas accessible au public", "cs": "Nepřístupné pro veřejnost", @@ -682,7 +690,7 @@ "de": "Wer betreibt die Reparaturstation?", "pt_BR": "Quem faz a manutenção desta bomba de ciclo?", "pt": "Quem faz a manutenção desta bomba de ciclo?", - "es": "¿Quién mantiene esta bomba para bicicletas?", + "es": "¿Quién mantiene esta bomba de bicicleta?", "da": "Hvem vedligeholder denne cykluspumpe?", "cs": "Kdo udržuje tento vzduchový kompresor?", "ca": "Qui fa el manteniment d'aquesta bomba de cicle?" @@ -714,10 +722,11 @@ "nl": "Wat is het email-adres van de beheerder?", "de": "Wie lautet die E-Mail-Adresse des Betreibers?", "fr": "Quelle est l'adresse email du service de maintenance ?", - "es": "¿Es esta la dirección de correo electrónico del mantenedor?", + "es": "¿Cuál es la dirección de correo electrónico del mantenedor?", "da": "Hvad er e-mailadressen på vedligeholderen?", "cs": "Jaká je e-mailová adresa správce?", - "ca": "Quina és l'adreça de correu electrònic del responsable del manteniment?" + "ca": "Quina és l'adreça de correu electrònic del responsable del manteniment?", + "uk": "Яка адреса електронної пошти супровідника?" }, "freeform": { "key": "email", @@ -735,10 +744,11 @@ "nl": "Wat is het telefoonnummer van de beheerder?", "de": "Wie lautet die Telefonnummer des Betreibers?", "fr": "Quel est le numéro de téléphone du service de maintenance ?", - "es": "¿Cual es el número de teléfono del mantenedor?", + "es": "¿Cuál es el número de teléfono del mantenedor?", "da": "Hvad er telefonnummeret på vedligeholderen?", "cs": "Jaké je telefonní číslo správce?", - "ca": "Quin és el número de telèfon del responsable?" + "ca": "Quin és el número de telèfon del responsable?", + "uk": "Який номер телефону супровідника?" }, "freeform": { "key": "phone", @@ -756,7 +766,7 @@ "gl": "Esta estación de arranxo de bicicletas ten unha ferramenta especial para arranxar a cadea da túa bicicleta?", "de": "Verfügt diese Fahrrad-Reparaturstation über Spezialwerkzeug zur Reparatur von Fahrradketten?", "it": "Questa stazione di riparazione bici ha un attrezzo speciale per riparare la catena della bici?", - "es": "¿Esta estación de reparación tiene una herramienta especial para reparar la cadena de tu bici?", + "es": "¿Esta estación de reparación de bicicletas tiene una herramienta especial para reparar la cadena de la bicicleta?", "da": "Har denne cykelreparationsstation et specialværktøj til at reparere cykelkæder?", "cs": "Má tato opravna kol speciální nástroj na opravu řetězu?", "ca": "Aquesta estació de reparació de bicicletes té una eina especial per reparar la vostra cadena de la biciclete?" @@ -791,7 +801,7 @@ "it": "Non è presente un utensile per riparare la catena", "pt_BR": "Não há uma ferramenta de corrente", "pt": "Não há uma ferramenta de corrente", - "es": "No hay herramienta de cadenas", + "es": "No hay herramienta para cadenas", "da": "Der er ikke noget kædeværktøj", "cs": "Není k dispozici žádný nástroj na řetěz", "ca": "No hi ha ferramentes per a la cadena" @@ -808,10 +818,11 @@ "gl": "Esta estación de bicicletas ten un guindastre para pendurar a túa bicicleta ou un soporte para elevala?", "de": "Hat diese Fahrradstation einen Haken, an dem Sie Ihr Fahrrad aufhängen können, oder einen Ständer, um es anzuheben?", "it": "Questa stazione bici ha un gancio per tenere sospesa la bici o un supporto per alzarla?", - "es": "¿Esta estación tiene un gancho para colgar tu bici o un soporte para elevarla?", + "es": "¿Esta estación de bicicletas tiene un gancho para colgar la bicicleta o un soporte para elevarla?", "da": "Har denne cykelstation en krog til at hænge din cykel på eller et stativ til at hæve den?", "cs": "Má tato cyklistická stanice hák na zavěšení kola nebo stojan na jeho zvednutí?", - "ca": "Aquesta estació de bicicletes té un ganxo per penjar la bicicleta o un suport per aixecar-la?" + "ca": "Aquesta estació de bicicletes té un ganxo per penjar la bicicleta o un suport per aixecar-la?", + "uk": "Чи є на цій станції гачок, на який можна повісити велосипед, або підставка для його підйому?" }, "condition": "service:bicycle:tools=yes", "mappings": [ @@ -829,7 +840,8 @@ "es": "Hay un gancho o soporte", "da": "Der er en krog eller et stativ", "cs": "K dispozici je závěsný hák nebo stojan", - "ca": "Hi ha un ganxo o suport" + "ca": "Hi ha un ganxo o suport", + "uk": "Є гачок або підставка" } }, { @@ -843,10 +855,11 @@ "it": "Non c’è né un gancio né un supporto", "pt_BR": "Não há um gancho ou um suporte", "pt": "Não há um gancho ou um suporte", - "es": "No hay ningún gancho o soporte", + "es": "No hay gancho ni soporte", "da": "Der er ingen krog eller stativ", "cs": "Není zde žádný závěsný hák ani stojan", - "ca": "No hi ha ganxo ni suport" + "ca": "No hi ha ganxo ni suport", + "uk": "Немає гачка або підставки" } } ] @@ -866,7 +879,7 @@ "en": "Broken bicycle pump", "nl": "Kapotte fietspomp", "de": "Fahrradpumpe kaputt", - "es": "Bomba para bicicletas rota", + "es": "Bomba de bicicleta rota", "fr": "Pompe à vélo cassée", "da": "Cykelpumpe i stykker", "cs": "Rozbitý vzduchový kompresor", @@ -878,10 +891,11 @@ "nl": "Geachte\n\nGraag had ik u gemeld dat een fietspomp defect is. De fietspomp bevindt zich hier: https://mapcomplete.org/cyclofix?lat={_lat}&lon={_lon}&z=18#{id}.\n\nMet vriendelijke groeten.", "de": "Hallo,\n\nMit dieser E-Mail möchte ich Ihnen mitteilen, dass die Fahrradpumpe, die sich unter https://mapcomplete.org/cyclofix?lat={_lat}&lon={_lon}&z=18#{id} befindet, kaputt ist.\n\nMit freundlichen Grüßen", "da": "Hej,\n\nMed denne e-mail vil jeg gerne oplyse, at cykelpumpen, der befinder sig på https://mapcomplete.org/cyclofix?lat={_lat}&lon={_lon}&z=18#{id} er i stykker.\n\n Med venlig hilse", - "es": "Hola,\n\nCon este correo, me gustaría informar de que esta bomba para bicicletas situada en https://mapcomplete.org/cyclofix?lat={_lat}&lon={_lon}&z=18#{id} está rota.\n\nUn saludo", + "es": "Hola,\n\nCon este correo electrónico, me gustaría informarte de que la bomba de bicicleta ubicada en https://mapcomplete.org/cyclofix?lat={_lat}&lon={_lon}&z=18#{id} está rota.\n\nSaludos cordiales", "fr": "Bonjour,\n\nCe mail pour vous informer que la pompe à vélo située à https://mapcomplete.org/cyclofix?lat={_lat}&lon={_lon}&z=18#{id} est cassée.\n\nBien à vous.", "cs": "Dobrý den,\n\ntímto e-mailem bych Vás chtěl informovat, že vzduchový kompresor na kolo umístěný na adrese https://mapcomplete.org/cyclofix?lat={_lat}&lon={_lon}&z=18#{id} je rozbitý.\n\n S pozdravem", - "ca": "Hola,\n\nAmb aquest correu electrònic, m'agradaria informar-vos que la bomba de bicicleta situada a https://mapcomplete.org/cyclofix?lat={_lat}&lon={_lon}&z=18#{id} està trencada.\n\nSalutacions cordials" + "ca": "Hola,\n\nAmb aquest correu electrònic, m'agradaria informar-vos que la bomba de bicicleta situada a https://mapcomplete.org/cyclofix?lat={_lat}&lon={_lon}&z=18#{id} està trencada.\n\nSalutacions cordials", + "uk": "Доброго дня,\n\nЦим листом хочу повідомити, що велосипедний насос, розташований за адресою https://mapcomplete.org/cyclofix?lat={_lat}&lon={_lon}&z=18#{id}, вийшов з ладу.\n\n З повагою" }, "button_text": { "en": "Report this bicycle pump as broken", @@ -889,7 +903,7 @@ "fr": "Signaler cette pompe à vélo cassée", "de": "Melde diese Fahrradpumpe als kaputt", "da": "Anmeld denne cykelpumpe som værende i stykker", - "es": "Reportar esta bomba para bicicletas como rota", + "es": "Informar de esta bomba de bicicleta como rota", "cs": "Nahlásit tento vzduchový kompresor na kolo jako rozbitý", "ca": "Informar aquesta bomba de bicicleta com a trencada", "pl": "Zgłoś, że ta pompka rowerowa jest zepsuta" @@ -907,7 +921,7 @@ "de": "Welche Ventile werden unterstützt?", "it": "Quali valvole sono supportate?", "pl": "Jakie zawory są obsługiwane?", - "es": "¿Que válvulas se soportan?", + "es": "¿Qué válvulas son compatibles?", "da": "Hvilke ventiler understøttes?", "cs": "Jaké ventily jsou podporovány?", "ca": "Quines vàlvules són compatibles?" @@ -921,7 +935,7 @@ "it": "Questa pompa è compatibile con le seguenti valvole: {valves}", "ru": "Этот насос поддерживает следующие клапаны: {valves}", "pl": "Ta pompka obsługuje następujące zawory: {valves}", - "es": "Esta bomba soporta las siguiente válvulas: {valves}", + "es": "Esta bomba admite las siguientes válvulas: {valves}", "da": "Denne pumpe understøtter følgende ventiler: {valves}", "cs": "Tento vzduchový kompresor podporuje následující ventily: {valves}", "ca": "Aquesta bomba admet les vàlvules següents: {valves}" @@ -945,7 +959,7 @@ "it": "Sclaverand (detta anche Presta)", "ru": "Клапан Presta (также известный как французский клапан)", "da": "Sclaverand/Presta (cykeldæk med smal bredde)", - "es": "Sclaverand/Presta (neumáticos de bicicleta estrechos)", + "es": "Sclaverand/Presta (neumáticos de bicicleta de ancho estrecho)", "cs": "Sclaverand/Presta (úzké cyklistické pláště)", "ca": "Sclaverand/Presta (pneumàtics per a bicis estrets)" } @@ -997,7 +1011,7 @@ "it": "Questa pompa per bici è elettrica?", "ru": "Это электрический велосипедный насос?", "pl": "Czy jest to elektryczna pompka do roweru?", - "es": "¿Es una bomba eléctrica para bicis?", + "es": "¿Es una bomba de bicicleta eléctrica?", "da": "Er dette en elektrisk cykelpumpe?", "cs": "Je to elektrická pumpa na kolo?", "ca": "És una bomba per a bicicletes elèctrica?" @@ -1054,7 +1068,7 @@ "de": "Verfügt die Pumpe über einen Druckanzeiger oder ein Manometer?", "it": "Questa pompa ha l’indicatore della pressione o il manometro?", "pl": "Czy pompka posiada wskaźnik ciśnienia lub manometr?", - "es": "¿La bomba tiene un indicador de presión o manómetro?", + "es": "¿Tiene la bomba un indicador de presión o manómetro?", "da": "Har pumpen trykindikator eller manometer?", "cs": "Má vzduchový kompresor ukazatel tlaku nebo manometr?", "ca": "La bomba té un indicador de pressió o un manòmetre?" @@ -1093,7 +1107,7 @@ "pl": "Nie ma manometru", "pt_BR": "Não há um manômetro", "pt": "Não há um manômetro", - "es": "No hay ningún manometro", + "es": "No hay manómetro", "da": "Der er ikke noget manometer", "cs": "Není zde žádný manometr", "ca": "No hi ha manòmetre" @@ -1112,7 +1126,7 @@ "pl": "Jest manometr, ale jest uszkodzony", "pt_BR": "Há um manômetro mas está quebrado", "pt": "Há um manômetro mas está quebrado", - "es": "Hay un manómetro pero está roto", + "es": "Hay un manómetro, pero está roto", "da": "Der er et manometer, men det er i stykker", "cs": "Je zde manometr, ale je rozbitý", "ca": "Hi ha manòmetre però està trencat" diff --git a/assets/layers/bike_shop/bike_shop.json b/assets/layers/bike_shop/bike_shop.json index 959b267d7..14e594f89 100644 --- a/assets/layers/bike_shop/bike_shop.json +++ b/assets/layers/bike_shop/bike_shop.json @@ -11,7 +11,7 @@ "pt_BR": "Reparo/loja de bicicletas", "pt": "Reparo/loja de bicicletas", "ca": "Botiga/reparació de bicicletes", - "es": "Taller/tienda de bicis", + "es": "Reparación/tienda de bicicletas", "da": "Cykelreparation/butik", "cs": "Opravna/obchod s jízdními koly" }, @@ -24,7 +24,7 @@ "pt_BR": "Uma loja que vende especificamente bicicletas ou itens relacionados", "de": "Ein Geschäft, das speziell Fahrräder oder verwandte Artikel verkauft", "pt": "Uma loja que vende especificamente bicicletas ou itens relacionados", - "es": "Una tiene que vende específicamente bicis u objetos relacionados", + "es": "Una tienda que vende específicamente bicicletas o artículos relacionados", "da": "En butik, der specifikt sælger cykler eller relaterede varer", "ca": "Una botiga que ven específicament bicicletes o articles relacionats", "cs": "Obchod zaměřený na prodej jízdních kol nebo souvisejících předmětů" @@ -69,7 +69,7 @@ "pt": "Reparo/loja de bicicletas", "ca": "Botiga/reparació de bicicletes", "da": "Cykelværksted/butik", - "es": "Taller/tienda de bicis", + "es": "Reparación/tienda de bicicletas", "cs": "Oprava kol/obchod" }, "mappings": [ @@ -88,7 +88,7 @@ "de": "Sportartikelgeschäft {name}", "pt_BR": "Loja de equipamentos esportivos {name}", "pt": "Loja de equipamentos desportivos {name}", - "es": "Tienda de material deportivo {name}", + "es": "Tienda de artículos deportivos {name}", "da": "Butik med sportsudstyr {name}", "ca": "Botiga d'equipament esportiu {name}", "cs": "Obchod se sportovním vybavením {name}" @@ -119,7 +119,8 @@ "it": "Noleggio di biciclette {name}", "pt": "Aluguel de bicicletas {name}", "pt_BR": "Aluguel de bicicletas {name}", - "ru": "Прокат велосипедов {name}" + "ru": "Прокат велосипедов {name}", + "uk": "Пункт прокату велосипедів {name}" } }, { @@ -144,7 +145,7 @@ "de": "Fahrradwerkstatt {name}", "pt_BR": "Reparo de bicicletas {name}", "pt": "Reparo de bicicletas {name}", - "es": "Reparación de bicis {name}", + "es": "Reparación de bicicletas {name}", "da": "Cykelreparation {name}", "ca": "Reparació de bicis {name}", "cs": "Opravy kol {name}", @@ -168,7 +169,7 @@ "ru": "Магазин велосипедов {name}", "pt_BR": "Loja de bicicletas {name}", "pt": "Loja de bicicletas {name}", - "es": "Tienda de bicis {name}", + "es": "Tienda de bicicletas {name}", "da": "Cykelforretning {name}", "ca": "Botiga de bicis {name}", "cs": "Prodejna kol {name}" @@ -190,7 +191,7 @@ "ru": "Магазин велосипедов {name}", "pt_BR": "Loja/reparo de bicicletas {name}", "pt": "Loja/reparo de bicicletas {name}", - "es": "Taller/tienda de bicis {name}", + "es": "Reparación/tienda de bicicletas {name}", "da": "Cykelværksted{name}", "ca": "Taller/botiga de bicis {name}", "cs": "Oprava kol/obchod {name}" @@ -208,7 +209,7 @@ "pt_BR": "Loja/reparo de bicicletas {name}", "pt": "Loja/reparo de bicicletas {name}", "da": "Cykelværksted{name}", - "es": "Taller/tienda de bicis {name}", + "es": "Reparación/tienda de bicicletas {name}", "ca": "Taller/botiga de bicis {name}", "cs": "Oprava kol/obchod {name}" } @@ -325,7 +326,7 @@ "de": "eine Fahrradwerkstatt bzw. ein Fahrradgeschäft", "it": "una negozio/riparatore di bici", "ru": "Обслуживание велосипедов/магазин", - "es": "un taller/tienda de bicis", + "es": "una reparación/tienda de bicicletas", "da": "en cykelværksted/butik", "ca": "una botiga/reparació de bicicletes", "cs": "opravna/obchod s jízdními koly" @@ -375,7 +376,7 @@ "cs": "Nabízí opravy kol \"Udělej si sám\"", "fr": "Offre des services DIY", "ca": "Ofereix reparar un mateix la bici", - "es": "Ofrece herramientas para autorreparación de bicis" + "es": "Ofrece reparación de bicicletas DIY" }, "osmTags": { "or": [ diff --git a/assets/layers/bike_themed_object/bike_themed_object.json b/assets/layers/bike_themed_object/bike_themed_object.json index 680b7b2a6..537f4d6e2 100644 --- a/assets/layers/bike_themed_object/bike_themed_object.json +++ b/assets/layers/bike_themed_object/bike_themed_object.json @@ -6,7 +6,7 @@ "fr": "Objet cycliste", "de": "Weitere fahrradbezogene Objekte", "it": "Oggetto relativo alle bici", - "es": "Objeto relacionado con bicis", + "es": "Objeto relacionado con bicicletas", "da": "Cykelrelateret genstand", "ca": "Objectes relacionats amb bicicletes", "cs": "Objekt související s jízdním kolem", @@ -16,7 +16,7 @@ "en": "A layer with bike-themed objects but who don't match any other layer", "nl": "Een laag met fietsgerelateerde diensten, die in geen enkele andere laag konden ondergebracht worden", "de": "Eine Ebene mit Objekten zum Thema Fahrrad, die zu keiner anderen Ebene passen", - "es": "Una capa con los objetos relacionados con bicis pero que no coinciden con ninguna otra capa", + "es": "Una capa con objetos con temática de bicicletas, pero que no coinciden con ninguna otra capa", "fr": "Une couche sur le thème des vélos mais qui ne correspondent à aucune autre couche", "da": "Et lag med objekter med cykeltema, men som ikke matcher noget andet lag", "ca": "Una capa amb els objectes relacionats amb bicis però que no coinxideixen amb cap altra capa", @@ -45,7 +45,7 @@ "fr": "Objet cycliste", "de": "Fahrradbezogenes Objekt", "it": "Oggetto relativo alle bici", - "es": "Objeto relacionado con las bicicletas", + "es": "Objeto relacionado con bicicletas", "da": "Cykelrelateret objekt", "ca": "Objecte relacionat amb bicis", "cs": "Objekt související s jízdním kolem", @@ -66,7 +66,7 @@ "de": "Radweg", "ru": "Велотрек", "ca": "Pista ciclable", - "es": "Carril bici", + "es": "Pista ciclista", "da": "Cykelsti", "cs": "Pruh pro cyklisty" } diff --git a/assets/layers/binocular/binocular.json b/assets/layers/binocular/binocular.json index c01bdb7ca..6bc0b7b7c 100644 --- a/assets/layers/binocular/binocular.json +++ b/assets/layers/binocular/binocular.json @@ -95,7 +95,7 @@ "de": "Ein fest installiertes Teleskop oder Fernglas, für die öffentliche Nutzung. ", "fr": "Une longue-vue ou une paire de jumelles montée sur un poteau, disponible au public pour scruter les environs. ", "da": "Et teleskop eller en kikkert monteret på en stang, som offentligheden kan se sig omkring med. ", - "es": "Un telescopio o unos prismáticos montados en un poste, disponible para que el público mire alrededor. ", + "es": "Un telescopio o un par de prismáticos montados en un poste, disponibles para el público para mirar alrededor. ", "ca": "Un telescopi o un parell de prismàtics muntats en un pal, a disposició del públic per mirar al seu voltant. ", "cs": "Jednooký teleskop nebo dalekohled umístěný na stožáru, který je k dispozici veřejnosti k prohlídce. " } @@ -117,7 +117,7 @@ "nl": "Gratis te gebruiken", "de": "Kostenlose Nutzung", "da": "Gratis at bruge", - "es": "De uso gratuito", + "es": "Gratuito", "fr": "En libre service", "ca": "Debades", "cs": "Použití zdarma" @@ -134,7 +134,7 @@ "en": "Using these binoculars costs {charge}", "nl": "Deze verrekijker gebruiken kost {charge}", "de": "Die Benutzung dieses Fernglases kostet {charge}", - "es": "Utilizar estos prismáticos cuesta {charge}", + "es": "Usar estos prismáticos cuesta {charge}", "da": "Brug af denne kikkert koster {charge}", "fr": "L’utilisation des ces jumelles coûte {charge}", "ca": "L'ús d'aquests prismàtics costa {charge}", @@ -144,7 +144,7 @@ "en": "How much does one have to pay to use these binoculars?", "nl": "Hoeveel moet men betalen om deze verrekijker te gebruiken?", "de": "Wie viel muss man für die Nutzung dieser Ferngläser bezahlen?", - "es": "¿Cuánto hay que pagar para utilizar estos prismáticos?", + "es": "¿Cuánto hay que pagar para usar estos prismáticos?", "da": "Hvor meget koster det at bruge denne kikkert?", "fr": "Combien l’utilisation des ces jumelles coûte-t-elle ?", "ca": "Quant s'ha de pagar per utilitzar aquests prismàtics?", @@ -157,7 +157,7 @@ "en": "When looking through this binocular, in what direction does one look?", "nl": "Welke richting kijkt men uit als men door deze verrekijker kijkt?", "de": "In welche Richtung blickt man, wenn man durch dieses Fernglas schaut?", - "es": "¿Cuándo uno mira a través de estos prismáticos, en qué dirección lo hace?", + "es": "Al mirar a través de este prismático, ¿en qué dirección se mira?", "da": "I hvilken retning kigger man, når man ser gennem denne kikkert?", "fr": "Dans quelle direction regarde-t-on en utilisant ces jumelles ?", "ca": "En mirar a través d'aquest binocular, en quina direcció es mira?", @@ -167,7 +167,7 @@ "en": "Looks towards {direction}°", "nl": "Kijkt richting {direction}°", "de": "Blick in Richtung {direction}°", - "es": "Mira hacia {direction}º", + "es": "Mira hacia {direction}°", "da": "Kigger mod {direction}°", "fr": "Orienté à {direction}°", "ca": "Mira cap a {direction}°", diff --git a/assets/layers/birdhide/birdhide.json b/assets/layers/birdhide/birdhide.json index ba81970be..5b03da9dc 100644 --- a/assets/layers/birdhide/birdhide.json +++ b/assets/layers/birdhide/birdhide.json @@ -4,7 +4,7 @@ "en": "Bird watching places", "nl": "Vogelkijkhutten", "de": "Orte zur Vogelbeobachtung", - "es": "Lugares para ver aves", + "es": "Lugares de observación de aves", "da": "Steder til fugleobservation", "fr": "Lieu pour observer des oiseaux", "ca": "Llocs per a vore ocells", @@ -19,7 +19,7 @@ "fr": "Un observatoire ornithologique", "ca": "Un observatori d'ocells", "cs": "Pozorovatelna", - "es": "Un observatorio de aves" + "es": "Un escondite para pájaros" }, "source": { "osmTags": { @@ -37,7 +37,8 @@ "fr": "Lieu d’observation d’oiseaux", "da": "Plads til fugleobservation", "ca": "Lloc d'observació d'ocells", - "cs": "Místo pozorování ptáků" + "cs": "Místo pozorování ptáků", + "es": "Lugar de observación de aves" }, "mappings": [ { @@ -70,7 +71,8 @@ "de": "Vogelbeobachtungsplatz {name}", "fr": "Observatoire ornithologique {name}", "ca": "Observatori d'Ocells {name}", - "cs": "Ptačí pozorovatelna {name}" + "cs": "Ptačí pozorovatelna {name}", + "es": "Observatorio de aves {name}" } }, { @@ -86,7 +88,8 @@ "fr": "Camouflage d’observation ornithologique {name}", "da": "Fugletårn {name}", "ca": "Observatori d'ocells {name}", - "cs": "Ptačí pozorovatelna {name}" + "cs": "Ptačí pozorovatelna {name}", + "es": "Hide de aves {name}" } } ] @@ -135,13 +138,13 @@ "fr": "un observatoire ornithologique", "ca": "un observatori d'ocells", "cs": "pozorovatelna", - "es": "un observatorio de aves" + "es": "un escondite para pájaros" }, "description": { "en": "A covered shelter where one can watch birds comfortably", "nl": "Een overdekte hut waarbinnen er warm en droog naar vogels gekeken kan worden", "de": "Ein überdachter Unterstand, in dem man bequem Vögel beobachten kann", - "es": "Un refugio cubierto donde se pueden ver aves confortablemente", + "es": "Un refugio cubierto donde se pueden observar aves cómodamente", "da": "Et overdækket ly, hvor man kan se fugle i ro og mag", "fr": "Un abris couvert pour observer les oiseaux confortablement", "ca": "Un refugi cobert on es poden veure ocells confortablement", @@ -160,12 +163,13 @@ "de": "einen Sichtschutz zur Vogelbeobachtung", "fr": "un camouflage d’observation ornithologique", "da": "et fugletårn", - "ca": "un observatori d'ocells" + "ca": "un observatori d'ocells", + "es": "un escondrijo para pájaros" }, "description": { "en": "A screen or wall with openings to watch birds", "nl": "Een vogelkijkwand waarachter men kan staan om vogels te kijken", - "es": "Una pantalla o pared con aperturas para ver pájaros", + "es": "Una pantalla o pared con aberturas para observar aves", "da": "En skærm eller væg med åbninger til at se på fugle", "de": "Ein Schirm oder eine Wand mit Öffnungen zum Beobachten von Vögeln", "fr": "Un écran ou un mur avec des ouvertures pour observer les oiseaux", @@ -184,7 +188,8 @@ "de": "Ist dies nur ein Sichtschutz oder ein überdachter Unterstand zur Vogelbeobachtung?", "fr": "S’agit-il d’un camouflage ou d’un abris d’observation ?", "da": "Er dette en fugletårn eller et fuglekiggerskjul?", - "cs": "Jedná se o ptačí zástěnu nebo o úkryt pro pozorování ptáků?" + "cs": "Jedná se o ptačí zástěnu nebo o úkryt pro pozorování ptáků?", + "es": "¿Es un escondrijo para pájaros o un refugio para observar pájaros?" }, "mappings": [ { @@ -202,7 +207,8 @@ "fr": "Camouflage d’observation ornithologique", "da": "Fugletårn", "ca": "Observatori d'ocells", - "cs": "Ptačí pozorovatelna" + "cs": "Ptačí pozorovatelna", + "es": "Escondrijo para pájaros" } }, { @@ -220,7 +226,8 @@ "de": "Vogelbeobachtungsturm", "fr": "Observatoire ornithologique", "ca": "Observatori d'ocells", - "cs": "Ptačí skrýš" + "cs": "Ptačí skrýš", + "es": "Escondite para pájaros" } }, { @@ -237,7 +244,8 @@ "fr": "Tour d’observation ornithologique", "da": "Fugletårn skjul", "ca": "Torre d'observació d'ocells", - "cs": "Ptačí budka věž" + "cs": "Ptačí budka věž", + "es": "Escondite para pájaros en torre" } }, { @@ -254,7 +262,8 @@ "de": "Unterstand zur Vogelbeobachtung", "fr": "Abris d’observation ornithologique", "da": "Fuglekigger skjul", - "cs": "Úkryt pro pozorování ptáků" + "cs": "Úkryt pro pozorování ptáků", + "es": "Refugio para pájaros" }, "hideInAnswer": true } @@ -269,7 +278,8 @@ "de": "Ist der Ort rollstuhlgerecht gestaltet?", "fr": "Cet observatoire ornithologique est-il accessible en chaise roulante ?", "ca": "Aquest observatori d'ocells és accessible per als usuaris de cadira de rodes?", - "cs": "Je tato ptačí pozorovatelna přístupná pro vozíčkáře?" + "cs": "Je tato ptačí pozorovatelna přístupná pro vozíčkáře?", + "es": "¿Es este observatorio de aves accesible para usuarios de silla de ruedas?" }, "mappings": [ { @@ -281,7 +291,7 @@ "then": { "en": "There are special provisions for wheelchair users", "nl": "Er zijn speciale voorzieningen voor rolstoelen", - "es": "Hay provisiones especiales para usuarios de sillas de ruedas", + "es": "Hay provisiones especiales para usuarios de silla de ruedas", "de": "Für Rollstuhlfahrer gibt es besondere Vorrichtungen", "fr": "L’infrastructure est adaptée aux utilisateurs de chaises roulantes", "da": "Der er særlige bestemmelser for kørestolsbrugere", @@ -302,7 +312,8 @@ "de": "Der Ort ist rollstuhlgerecht gestaltet", "fr": "Cet observatoire ornithologique est facilement accessible en chaise roulante", "ca": "Una cadira de rodes pot utilitzar fàcilment aquest observador d'ocells", - "cs": "Invalidní vozík může snadno používat tuto ptačí pozorovatelnu" + "cs": "Invalidní vozík může snadno používat tuto ptačí pozorovatelnu", + "es": "Una silla de ruedas puede usar fácilmente este observatorio de aves" } }, { @@ -318,7 +329,8 @@ "de": "Der Ort ist nur eingeschränkt rollstuhlgerecht gestaltet", "fr": "Cet observatoire ornithologique est accessible en chaise roulante mais difficilement", "ca": "Aquest observatori d'ocells és accessible amb cadira de rodes, però no és fàcil", - "cs": "Tato ptačí pozorovatelna je dosažitelná na invalidním vozíku, ale není to snadné" + "cs": "Tato ptačí pozorovatelna je dosažitelná na invalidním vozíku, ale není to snadné", + "es": "Este observatorio de aves es accesible en silla de ruedas, pero no es fácil" } }, { @@ -331,7 +343,7 @@ "en": "Not accessible to wheelchair users", "nl": "Niet rolstoeltoegankelijk", "de": "Nicht zugänglich für Rollstuhlfahrer", - "es": "No accesible a usuarios con sillas de ruedas", + "es": "No accesible para usuarios de silla de ruedas", "da": "Ikke tilgængelig for kørestolsbrugere", "fr": "Pas accessible en chaise roulante", "ca": "No accessible per a persones amb cadira de rodes", @@ -363,7 +375,8 @@ "de": "Wer betreibt diesen Ort zur Vogelbeobachtung?", "fr": "Qui opère cet observatoire ornithologique ?", "ca": "Qui gestiona aquest observatori d'ocells?", - "cs": "Kdo provozuje tuto ptačí pozorovatelnu?" + "cs": "Kdo provozuje tuto ptačí pozorovatelnu?", + "es": "¿Quién opera este observatorio de aves?" }, "mappings": [ { @@ -388,7 +401,8 @@ "de": "Betrieben von einer Forst- bzw. Naturschutzbehörde", "fr": "Opéré par l’Agence Nature et Forêts", "da": "Drives af Natur- og Skovstyrelsen", - "cs": "Provozuje the Agency for Nature and Forests" + "cs": "Provozuje the Agency for Nature and Forests", + "es": "Operado por la Agencia para la Naturaleza y los Bosques" } } ], @@ -406,7 +420,7 @@ "de": "Zugänglich für Rollstuhlfahrer", "fr": "Accessible aux fauteuils roulants", "ca": "Accessible per a cadires de rodes", - "es": "Accesible con sillas de ruedas", + "es": "Accesible en silla de ruedas", "da": "Tilgængelig for kørestolsbrugere", "cs": "Bezbariérový přístup" }, @@ -431,7 +445,8 @@ "da": "Kun overdækkede fugleskjul", "fr": "Seulement les observatoires ornithologiques couverts", "ca": "Només observatoris d'ocells coberts", - "cs": "Pouze zakryté pozorovatelny" + "cs": "Pouze zakryté pozorovatelny", + "es": "Solo escondites cubiertos" }, "osmTags": { "and": [ diff --git a/assets/layers/brothel/brothel.json b/assets/layers/brothel/brothel.json index c82c2f0d7..1fa4ab990 100644 --- a/assets/layers/brothel/brothel.json +++ b/assets/layers/brothel/brothel.json @@ -2,11 +2,15 @@ "id": "brothel", "name": { "en": "Brothels", - "de": "Bordelle" + "de": "Bordelle", + "cs": "Nevěstince", + "es": "Burdeles" }, "description": { "en": "An establishment specifically dedicated to prostitution. ", - "de": "Eine Einrichtung, die speziell der Prostitution gewidmet ist. " + "de": "Eine Einrichtung, die speziell der Prostitution gewidmet ist. ", + "cs": "Zařízení zaměřené speciálně na prostituci. ", + "es": "Un establecimiento dedicado específicamente a la prostitución " }, "source": { "osmTags": "amenity=brothel" @@ -16,7 +20,9 @@ "render": { "en": "Brothel", "de": "Bordell", - "ca": "Bordell" + "ca": "Bordell", + "cs": "Nevěstinec", + "es": "Burdel" }, "mappings": [ { @@ -62,7 +68,9 @@ { "title": { "en": "a brothel", - "de": "ein Bordell" + "de": "ein Bordell", + "cs": "nevěstinec", + "es": "un burdel" }, "tags": [ "amenity=brothel" @@ -82,11 +90,15 @@ "question": { "en": "What is the name of this brothel?", "de": "Wie lautet der Name des Bordells?", - "ca": "Com es diu aquest bordell?" + "ca": "Com es diu aquest bordell?", + "cs": "Jak se jmenuje tento nevěstinec?", + "es": "¿Cuál es el nombre de este burdel?" }, "render": { "en": "This brothel is named {name}", - "de": "Der Name des Bordells lautet {name}" + "de": "Der Name des Bordells lautet {name}", + "cs": "Tento nevěstinec se jmenuje {name}", + "es": "Este burdel se llama {name}" } }, "opening_hours", diff --git a/assets/layers/cafe_pub/cafe_pub.json b/assets/layers/cafe_pub/cafe_pub.json index cb09fcbd6..df6bab66f 100644 --- a/assets/layers/cafe_pub/cafe_pub.json +++ b/assets/layers/cafe_pub/cafe_pub.json @@ -7,7 +7,7 @@ "fr": "Cafés et pubs", "zh_Hant": "咖啡廳與酒吧", "hu": "Kávézók és kocsmák", - "es": "Cafeterías y pubs", + "es": "Cafés y pubs", "da": "Caféer og pubber", "ca": "Cafés i bars", "pl": "Kawiarnie i puby", @@ -18,7 +18,7 @@ "hu": "Egy olyan réteg, amely kávézókat és kocsmákat jelenít meg, ahol össze lehet gyűlni egy ital köré. A réteg néhány lényeges kérdést tesz fel", "nl": "Een laag die kroegen en koffiehuizen toont waar je iets kunt drinken. De laag zal je enkele vragen stellen", "de": "Eine Ebene mit Cafés und Kneipen, in denen man sich auf ein Getränk treffen kann. Die Ebene fragt nach einigen relevanten Eigenschaften", - "es": "Una capa que muestra cafeterías y bares donde uno se puede reunir con una bebida. La capa hace algunas preguntas relevantes", + "es": "Una capa que muestra cafés y pubs donde uno puede reunirse alrededor de una bebida La capa hace algunas preguntas relevantes", "da": "Et lag med caféer og pubber, hvor man kan samles omkring en drink. Laget stiller nogle relevante spørgsmål", "fr": "Une couche montrant les cafés et pubs où l’on peut prendre un verre. Cette couche pose des questions y afférant.", "ca": "Una capa que mostra cafeteries i bars on un es pot reunir amb una beguda. La capa demana algunes preguntes rellevants", @@ -43,7 +43,7 @@ "ca": "Bar", "de": "Kneipe", "da": "Pub", - "es": "Bar", + "es": "Pub", "fr": "Bar", "pa_PK": "پب", "eu": "Edaritegia", @@ -76,7 +76,9 @@ "then": { "en": "Bar", "de": "Bar", - "ca": "Pub" + "ca": "Pub", + "cs": "Bar", + "es": "Bar" } }, { @@ -84,14 +86,18 @@ "then": { "en": "Cafe", "de": "Café", - "ca": "CAfè" + "ca": "CAfè", + "cs": "Kavárna", + "es": "Café" } }, { "if": "amenity=nightclub", "then": { "en": "Nightclub", - "de": "Nachtclub" + "de": "Nachtclub", + "cs": "Noční klub", + "es": "Discoteca" } } ] @@ -153,7 +159,7 @@ "hu": "kocsma", "ca": "un bar", "da": "en pub", - "es": "un bar", + "es": "un pub", "fr": "un pub", "pl": "pub", "cs": "hospoda" @@ -162,7 +168,7 @@ "en": "A pub, mostly for drinking beers in a warm, relaxed interior", "nl": "Dit is een bruin café of een kroeg waar voornamelijk bier wordt gedronken. De inrichting is typisch gezellig met veel houtwerk", "de": "Eine Kneipe, in der vor allem Bier in ruhiger, entspannter Atmosphäre getrunken wird", - "es": "Un bar, principalmente para beber cervezas en un interior templado y relajado", + "es": "Un pub, principalmente para beber cervezas en un ambiente cálido y relajado", "da": "En pub, mest et sted at drikke øl i et varme, afslappede omgivelser", "fr": "Un pub, principalement pour boire un verre dans une atmosphère chaleureuse et décontractée", "ca": "Un bar, principalment per a beure cerveses en un interior càlid i relaxat", @@ -181,7 +187,7 @@ "hu": "bár", "ca": "un bar de copes", "da": "en bar", - "es": "un bar de copas", + "es": "un bar", "fr": "un bar", "pl": "bar", "cs": "bar" @@ -191,7 +197,7 @@ "nl": "Dit is een bar waar men ter plaatse alcoholische drank nuttigt. De inrichting is typisch modern en commercieel, soms met lichtinstallatie en feestmuziek", "de": "Eine modernere und kommerzielle Bar, möglicherweise mit einer Musik- und Lichtinstallation", "da": "En mere moderne og kommerciel bar, eventuelt med en musik- og lysinstallation", - "es": "Un bar de copas más moderno y comercial, posiblemente con una instalación de música y luz", + "es": "Un bar más moderno y comercial, posiblemente con una instalación de música e iluminación", "fr": "Un bar plus moderne et commercial, avec éventuellement musique et jeux de lumière", "ca": "Un bar de copes més modern i comercial, possiblement amb equipació de música i llums", "cs": "Modernější a komerčnější bar, případně s hudební a světelnou instalací" @@ -209,7 +215,7 @@ "hu": "kávézó", "ca": "un cafè", "da": "en cafe", - "es": "una cafetería", + "es": "un café", "fr": "un café adama", "pl": "Kawiarnia", "cs": "kavárna" @@ -233,7 +239,7 @@ "en": "a nightclub or disco", "nl": "een nachtclub of disco", "de": "einen Club oder eine Diskothek", - "es": "un club nocturno o una discoteca", + "es": "una discoteca o club nocturno", "fr": "une boîte de nuit ou discothèque", "da": "en natklub eller et diskotek", "ca": "un club nocturn o discoteca", @@ -244,7 +250,7 @@ "en": "A nightclub or disco with a focus on dancing, music by a DJ with accompanying light show and a bar to get (alcoholic) drinks", "nl": "Een nachtclub met dansvloer, DJ met bijhorende lichteffecten en bar waar men (alcoholische) dranken kan nuttigen", "de": "Ein Club oder eine Diskothek mit Fokus auf Tanzen, Musik von einem DJ mit begleitender Lichtshow und einer Bar, an der man (alkoholische) Getränke bekommt", - "es": "Un club nocturno o discoteca centrada en bailar, la música de un DJ acompañado por un espectáculo de luces y un bar donde conseguir bebidas (alcohólicas)", + "es": "Una discoteca o club nocturno con enfoque en el baile, música de un DJ con espectáculo de luces y un bar para tomar bebidas (alcohólicas)", "fr": "Une boîte de nuit ou discothèque pour danser sur de la musique de DJ accompagnée de jeux de lumière et un bar pour prendre une boisson (alcoolisée)", "da": "En natklub eller diskotek med fokus på dans, musik af en DJ med tilhørende lysshow og en bar for at få (alkoholiske) drinks", "ca": "Un club nocturn o discoteca centrat en ballar, música d'un DJ acompanyat d'un espectacle de llums i una barra on obtindre begudes (alcohòliques)", @@ -263,20 +269,22 @@ "fr": "Quel est le nom de ce pub ?", "hu": "Mi a neve ennek a kocsmának?", "da": "Hvad hedder denne pub?", - "es": "¿Cuál es el nombre de esta empresa?", + "es": "¿Cuál es el nombre de este negocio?", "ca": "Quin és el nom d'aquest negoci?", - "cs": "Jak se tento podnik jmenuje?" + "cs": "Jak se tento podnik jmenuje?", + "uk": "Як називається цей бізнес?" }, "render": { "nl": "De naam van deze zaak is {name}", "en": "This business is named {name}", "de": "Das Unternehmen heißt {name}", "fr": "Ce pub se nomme {name}", - "hu": "A kocsma neve: {name}", + "hu": "A vállalkozás neve: {name}", "da": "Denne pub hedder {name}", - "es": "Esta empresa se llama {name}", + "es": "Este negocio se llama {name}", "ca": "Aquest negoci es diu {name}", - "cs": "Tento podnik se jmenuje {name}" + "cs": "Tento podnik se jmenuje {name}", + "uk": "Цей бізнес називається {name}" }, "freeform": { "key": "name" @@ -290,11 +298,12 @@ "de": "Was ist das für ein Café?", "hu": "Milyen fajta kávézó ez?", "da": "Hvilken slags cafe er dette?", - "es": "Qué tipo de cafe es este?", + "es": "¿Qué tipo de café es este?", "fr": "Quel genre de café est-ce ?", "ca": "Quin tipus de cafeteria és aquesta?", "pl": "Jakiego rodzaju jest to kawiarnia?", - "cs": "O jakou kavárnu se jedná?" + "cs": "O jakou kavárnu se jedná?", + "uk": "Що це за кафе?" }, "mappings": [ { @@ -303,11 +312,12 @@ "en": "A pub, mostly for drinking beers in a warm, relaxed interior", "nl": "Dit is een bruin café of een kroeg waar voornamelijk bier wordt gedronken. De inrichting is typisch gezellig met veel houtwerk", "de": "Eine Kneipe, in der vor allem Bier in ruhiger, entspannter Atmosphäre getrunken wird", - "es": "Un bar, principalmente para beber cervezas en un interior cálido y relajado", + "es": "Un pub, principalmente para beber cervezas en un ambiente cálido y relajado", "fr": "Un pub, principalement pour boire un verre dans une atmosphère chaleureuse et décontractée", "da": "En pub, mest et sted at drikke øl i hyggelige, afslappede omgivelser", "ca": "Un bar, principalment per a beure cerveses en un interior càlid i relaxat", - "cs": "Hospoda, kde se většinou pije pivo v příjemném a uvolněném interiéru" + "cs": "Hospoda, kde se většinou pije pivo v příjemném a uvolněném interiéru", + "uk": "Паб, переважно для пиття пива в теплому, розслабленому інтер'єрі" } }, { @@ -317,10 +327,11 @@ "nl": "Dit is een bar waar men ter plaatse alcoholische drank nuttigt. De inrichting is typisch modern en commercieel, soms met lichtinstallatie en feestmuziek", "de": "Eine modernere und kommerzielle Bar, möglicherweise mit einer Musik- und Lichtinstallation", "da": "En mere moderne og kommerciel bar, eventuelt med en musik- og lysinstallation", - "es": "Un bar de copas más moderno y comercial, posiblemente con una instalación de música y luz", + "es": "Un bar más moderno y comercial, posiblemente con una instalación de música e iluminación", "fr": "Un bar plus moderne et commercial, avec éventuellement musique et jeux de lumière", "ca": "Un bar de copes més modern i comercial, possiblement amb equipació de música i llums", - "cs": "Modernější a komerčnější bar, případně s hudební a světelnou instalací" + "cs": "Modernější a komerčnější bar, případně s hudební a světelnou instalací", + "uk": "Більш сучасний і комерційний бар, можливо, з музичною та світловою інсталяцією" } }, { @@ -330,10 +341,11 @@ "nl": "Dit is een cafe - een plaats waar men rustig kan zitten om een thee, koffie of alcoholische drank te nuttigen.", "de": "Ein Café, um in ruhiger Umgebung Tee, Kaffee oder ein alkoholisches Getränk zu trinken", "da": "En café til at drikke te, kaffe eller en alkoholisk drik i rolige omgivelser", - "es": "Una cafetería para beber té, café o una bebida alcohólica en un ambiente tranquilo", + "es": "Un café para tomar té, café o una bebida alcohólica en un ambiente tranquilo", "fr": "Un café pour boire du thé, du café ou une boisson alcoolisée au calme", "ca": "Una cafeteria per a a beure té, café o una beguda alcohólica en un ambient tranquil", - "cs": "kavárna, kde si můžete v klidném prostředí vypít čaj, kávu nebo alkoholický nápoj" + "cs": "kavárna, kde si můžete v klidném prostředí vypít čaj, kávu nebo alkoholický nápoj", + "uk": "Кафе, щоб випити чаю, кави чи алкогольного напою в тихій обстановці" } }, { @@ -343,10 +355,11 @@ "nl": "Dit is een restaurant waar men een maaltijd geserveerd krijgt", "de": "Ein Restaurant, in dem man ordentlich essen kann", "da": "En restaurant, hvor man kan få et ordentligt måltid", - "es": "Un restaurante donde se pueda comer como es debido", + "es": "Un restaurante donde se puede obtener una comida adecuada", "fr": "Un restaurant où l'on peut prendre un bon repas", "ca": "Un restaurant on es pot menjar bé", - "cs": "Restaurace, kde se dá pořádně najíst" + "cs": "Restaurace, kde se dá pořádně najíst", + "uk": "Ресторан де можна смачно поїсти" } }, { @@ -369,11 +382,12 @@ "en": "This is a nightclub or disco with a focus on dancing, music by a DJ with accompanying light show and a bar to get (alcoholic) drinks", "nl": "Dit is een nachtclub met dansvloer, DJ met bijhorende lichteffecten en bar waar men (alcoholische) dranken kan nuttigen", "de": "Dies ist ein Club oder eine Disco mit Fokus auf Tanzen, Musik von einem DJ mit begleitender Lichtshow und einer Bar, an der man (alkoholische) Getränke bekommt", - "es": "Este es un club nocturno o discoteca centrado en bailar, música de un DJ con un espectáculo de luces que la acompaña y un bar donde conseguir bebidas (alcohólicas)", + "es": "Este es un club nocturno o discoteca con enfoque en el baile, música de un DJ con espectáculo de luces y un bar para tomar bebidas (alcohólicas)", "fr": "Une boîte de nuit ou discothèque orientée danse, la musique d'un DJ avec un spectacle de lumière et un bar pour prendre des boissons (alcoolisées)", "da": "Dette er en natklub eller diskotek med fokus på dans, musik af en DJ med tilhørende lysshow og en bar, hvor man kan købe (alkoholiske) drikkevarer", "ca": "Açò és un club nocturn o discoteca centrat en ballar, música d'un DJ acompanyat d'un espectacle de llums i una barra on obtindre begudes (alcohòliques)", - "cs": "Jedná se o noční klub nebo diskotéku se zaměřením na tanec, hudbu DJ s doprovodnou světelnou show a bar, kde si můžete dát (alkoholické) nápoje" + "cs": "Jedná se o noční klub nebo diskotéku se zaměřením na tanec, hudbu DJ s doprovodnou světelnou show a bar, kde si můžete dát (alkoholické) nápoje", + "uk": "Це нічний клуб або дискотека з акцентом на танці, музикою від ді-джея з супроводом світлового шоу та баром, щоб отримати (алкогольні) напої" } } ], @@ -413,11 +427,12 @@ "nl": "{title()} is permanent gestopt", "en": "{title()} has closed down permanently", "de": "{title()} wurde dauerhaft geschlossen", - "es": "{title()} ha cerrado permanentemente", + "es": "{title()} ha cerrado definitivamente", "da": "{title()} er lukket permanent", "fr": "{title()} est définitivement fermé", "ca": "{title()} ha tancat permanentment", - "cs": "{title()} byla trvale uzavřena" + "cs": "{title()} byla trvale uzavřena", + "uk": "{title()} закрито назавжди" }, "changesetMessage": "shop_closed" } diff --git a/assets/layers/car_rental/car_rental.json b/assets/layers/car_rental/car_rental.json index 1be496d23..85161bd1c 100644 --- a/assets/layers/car_rental/car_rental.json +++ b/assets/layers/car_rental/car_rental.json @@ -7,7 +7,8 @@ "fr": "Société de location de véhicules", "ca": "Lloguer de cotxes", "pl": "Wypożyczalnia samochodów", - "cs": "Půjčovna aut" + "cs": "Půjčovna aut", + "es": "Alquiler de coches" }, "description": { "en": "Places where you can rent a car", @@ -16,7 +17,8 @@ "fr": "Lieu où vous pouvez louer une voiture", "ca": "Llocs on pots llogar un cotxe", "pl": "Miejsca, w których można wypożyczyć samochód", - "cs": "Místa, kde si můžete pronajmout auto" + "cs": "Místa, kde si můžete pronajmout auto", + "es": "Lugares donde puedes alquilar un coche" }, "source": { "osmTags": "amenity=car_rental" @@ -30,7 +32,8 @@ "fr": "Société de location de véhicules", "ca": "Lloguer de cotxes", "pl": "Wypożyczalnia samochodów", - "cs": "Půjčovna aut" + "cs": "Půjčovna aut", + "es": "Alquiler de coches" }, "mappings": [ { @@ -75,7 +78,8 @@ "fr": "Une société de location de véhicules", "ca": "un lloguer de cotxes", "pl": "wypożyczalnia samochodów", - "cs": "půjčovna aut" + "cs": "půjčovna aut", + "es": "un alquiler de coches" }, "description": { "en": "A place where you can rent a car", @@ -84,7 +88,8 @@ "fr": "Un lieu où vous pouvez louer une voiture", "ca": "Un lloc on pots llogar un cotxe", "pl": "Miejsce, w którym można wypożyczyć samochód", - "cs": "Místo, kde si můžete pronajmout auto" + "cs": "Místo, kde si můžete pronajmout auto", + "es": "Un lugar donde puedes alquilar un coche" } } ], @@ -105,7 +110,8 @@ "fr": "Nom de la société de location de véhicules", "ca": "Nom del lloguer de cotxes", "pl": "Nazwa wypożyczalni samochodów", - "cs": "Název autopůjčovny" + "cs": "Název autopůjčovny", + "es": "Nombre del alquiler de coches" } }, "question": { @@ -115,7 +121,8 @@ "fr": "Quel est le nom de cette société de location de véhicules ?", "ca": "Com es diu aquest lloguer de cotxes?", "pl": "Jaka jest nazwa tej wypożyczalni samochodów?", - "cs": "Jak se jmenuje tato půjčovna aut?" + "cs": "Jak se jmenuje tato půjčovna aut?", + "es": "¿Cuál es el nombre de este alquiler de coches?" }, "mappings": [ { @@ -130,7 +137,8 @@ "fr": "Cette société de location de véhicules n'a pas de nom", "ca": "Aquest lloguer de cotxes no té nom", "pl": "Ta wypożyczalnia samochodów nie ma nazwy", - "cs": "Tato autopůjčovna nemá jméno" + "cs": "Tato autopůjčovna nemá jméno", + "es": "Este alquiler de coches no tiene nombre" } } ], @@ -141,7 +149,8 @@ "fr": "Cette société de location de véhicules est appelée {name}", "ca": "Aquest lloguer de cotxes es diu {name}", "pl": "Ta wypożyczalnia samochodów nazywa się {name}", - "cs": "Tato autopůjčovna se jmenuje {name}" + "cs": "Tato autopůjčovna se jmenuje {name}", + "es": "Este alquiler de coches se llama {name}" } }, "website", diff --git a/assets/layers/caravansites/caravansites.json b/assets/layers/caravansites/caravansites.json index 2c02f7130..435f93f97 100644 --- a/assets/layers/caravansites/caravansites.json +++ b/assets/layers/caravansites/caravansites.json @@ -13,7 +13,7 @@ "hu": "Lakóautós megállóhely", "id": "Tempat camping", "ca": "Llocs d'acampada", - "es": "Sitios de Acampada", + "es": "Áreas para autocaravanas", "da": "Campingpladser", "pa_PK": "کیمب‌سائیٹاں", "cs": "Kempovací místa", @@ -34,7 +34,7 @@ "hu": "Lakóautós megállóhelyek", "id": "Tempat camping", "ca": "llocs d'acampada", - "es": "zonas de acampada", + "es": "Áreas para autocaravanas", "da": "autocamperpladser", "pa_PK": "کیمب‌سائیٹاں", "cs": "kempovací místa", @@ -66,7 +66,7 @@ "ca": "Lloc d'acampada {name}", "da": "Camperplads {name}", "cs": "Kempovací místo {name}", - "es": "Sitio de camping {name}", + "es": "Área para autocaravanas {name}", "pl": "Pole kamperowe {name}", "pt": "Local de acampamento {name}" }, @@ -91,7 +91,7 @@ "da": "Unavngiven autocamperplads", "pa_PK": "بے نام کیمپ‌سائیٹ", "cs": "Nepojmenované kempovací místo", - "es": "Camping sin nombre", + "es": "Área para autocaravanas sin nombre", "pl": "Nienazwane miejsce dla kamperów", "pt": "Locais de acampamento sem nome" } @@ -152,7 +152,7 @@ "nl": "een camperplaats", "hu": "lakóautós megállóhely", "ca": "un lloc d'acampada", - "es": "una zona de acampada", + "es": "un área para autocaravanas", "da": "en autocamperplads", "pa_PK": "اِک کیمپ‌سائیٹ", "cs": "kempovací místa", @@ -171,7 +171,7 @@ "nl": "Voeg een nieuwe officiële camperplaats toe. Dit zijn speciaal aangeduide plaatsen waar het toegestaan is om te overnachten met een camper. Ze kunnen er uitzien als een parking, of soms eerder als een camping. Soms staan ze niet ter plaatse aangeduid, maar heeft de gemeente wel degelijk beslist dat dit een camperplaats is. Een parking voor campers waar je niet mag overnachten is géén camperplaats. ", "zh_Hant": "新增正式露營地點,通常是設計給過夜的露營者的地點。看起來像是真的露營地或是一般的停車場,而且也許沒有任何指標,但在城鎮被定議地點。如果一般給露營者的停車場並不是用來過夜,則不是露營地點 ", "hu": "Új hivatalos lakóautóhely hozzáadása. Ez arra vannak kijelölve, hogy lakóautóval ott éjszakázzunk. Lehet, hogy úgy néz ki, mint egy igazi kemping, de az is lehet, hogy csak olyan, mint egy parkoló. Előfordulhat, hogy egyáltalán nem jelzik őket, hanem csak egy önkormányzati határozatban vannak kijelölve. A lakóautósoknak szánt olyan hagyományos parkolók, ahol nem várhatóan nem fognak éjszakázni, -nem minősül- lakóautóhelynek. ", - "es": "Añade un nuevo sitio de acampada oficial. Son lugares designados para pasar la noche con tu caravana. Pueden parecerse a un camping real o simplemente a un aparcamiento. Puede que no estén señalizados en absoluto, sino que simplemente estén definidos en una decisión municipal. Un aparcamiento normal destinado a los campistas en el que no se espera que se pase la noche, no es un camping. ", + "es": "Añade una nueva área para autocaravanas oficial. Estos son lugares designados para pasar la noche con tu autocaravana. Pueden parecer un camping real o simplemente un aparcamiento. Puede que no estén señalizados, sino definidos en una decisión municipal. Un aparcamiento normal destinado a autocaravanas donde no se espera pasar la noche, -no- es un área para autocaravanas ", "ca": "Afig un nou lloc d'acampada oficial. Són llocs designats per a passar la nit amb la teua caravana. Poden semblar-se a un càmping real o simplement a un aparcament. Pot ser que no estiguen senyalitzats en absolut, sinó que simplement estiguen definits per una decisió municipal. Un aparcament normal destinat als acampadors en el qual no s'espera que es passe la nit, no és un càmping. ", "da": "Tilføj en ny officiel campingplads. Disse er udpegede steder at overnatte med din autocamper. De kan ligne en rigtig campingplads eller bare ligne en parkeringsplads. De er måske slet ikke skiltet, men er blot defineret i en kommunal beslutning. En almindelig parkering beregnet til campister, hvor det ikke forventes at overnatte, er -ikke- en autocamperplads ", "cs": "Přidejte nové oficiální kempovací místo. Jedná se o místa, určená pro přenocování s karavanem. Mohou vypadat jako skutečný kemp nebo jen jako parkoviště. Takováto místa nemusí být označena, ale stačí, pokud jsou pouze definována v rozhodnutí obce. Běžné parkoviště určené pro táborníky, kde se nepovažuje za kempovací místo. ", @@ -267,7 +267,7 @@ "pt_BR": "Você precisa pagar para usar", "de": "Sie müssen für die Nutzung bezahlen", "id": "Anda perlu membayar untuk menggunakannya", - "es": "Necesitas pagar por su uso", + "es": "Tienes que pagar por el uso", "da": "Du skal betale for brug", "nb_NO": "Man må betale for bruk", "ca": "Heu de pagar per l'ús", @@ -292,7 +292,7 @@ "nl": "Kan gratis gebruikt worden", "pt_BR": "Pode ser usado de graça", "de": "Nutzung kostenlos", - "es": "Se puede usar de manera gratuita", + "es": "Se puede usar gratis", "da": "Kan bruges gratis", "ca": "Es pot utilitzar gratuïtament", "cs": "Lze použít zdarma", @@ -369,7 +369,7 @@ "pt_BR": "Este local tem uma estação de aterro sanitário?", "de": "Hat dieser Ort eine sanitäre Entsorgungsstation?", "id": "Apakah tempat ini memiliki tempat pembuangan sanitasi?", - "es": "¿Este lugar tiene un vertedero sanitario?", + "es": "¿Este lugar tiene un punto de vaciado de aguas grises?", "nl": "Heeft deze plaats een loosplaats?", "ca": "Aquest lloc té una estació d'abocament sanitari?", "da": "Har dette sted en sanitær afleveringsplads?", @@ -394,7 +394,7 @@ "pt_BR": "Este local tem uma estação de aterro sanitário", "de": "Dieser Ort hat eine sanitäre Entsorgungsstation", "id": "Tempat ini memiliki tempat pembuangan sanitasi", - "es": "Este lugar tiene un vertedero sanitario", + "es": "Este lugar tiene un punto de vaciado de aguas grises", "nl": "Deze plaats heeft een loosplaats", "ca": "Aquest lloc té una estació d'abocament sanitari", "da": "Dette sted har en sanitær afleveringsplads", @@ -419,7 +419,7 @@ "pt_BR": "Este local não tem uma estação de aterro sanitário", "de": "Dieser Ort hat keine sanitäre Entsorgungsstation", "id": "Tempat ini tidak memiliki tempat pembuangan sampah sanitasi", - "es": "Este lugar no tiene vertedero sanitario", + "es": "Este lugar no tiene un punto de vaciado de aguas grises", "nl": "Deze plaats heeft geen loosplaats", "ca": "Aquest lloc no té una estació d'abocament sanitari", "da": "Dette sted har ikke en sanitær afleveringsplads", @@ -441,7 +441,7 @@ "pt_BR": "{capacity} campistas podem usar este lugar ao mesmo tempo", "de": "{capacity} Wohnmobile können diesen Platz gleichzeitig nutzen", "nl": "{capacity} campers kunnen deze plaats tegelijk gebruiken", - "es": "{capacity} los campistas pueden utilizar este lugar al mismo tiempo", + "es": "{capacity} autocaravanas pueden usar este lugar al mismo tiempo", "da": "{capacity} campister kan bruge dette sted på samme tid", "ca": "{capacity} els acampadors poden utilitzar aquest lloc al mateix temps", "cs": "{capacity} táborníků může toto místo využívat současně", @@ -460,7 +460,7 @@ "pt_BR": "Quantos campistas podem ficar aqui? (pule se não houver um número óbvio de vagas ou veículos permitidos)", "de": "Wie viele Wohnmobile können hier parken? (Überspringen, wenn es keine offensichtliche Anzahl von Stellplätzen oder erlaubten Fahrzeugen gibt)", "nl": "Hoeveel campers kunnen hier overnachten? (sla dit over als er geen duidelijk aantal plaatsen of aangeduid maximum is)", - "es": "¿Cuántos campistas pueden alojarse aquí? (omitir si no hay un número evidente de plazas o vehículos permitidos)", + "es": "¿Cuántas autocaravanas pueden alojarse aquí? (omita si no hay un número obvio de plazas o vehículos permitidos)", "da": "Hvor mange campister kan bo her? (spring over, hvis der ikke er noget åbenlyst antal pladser eller tilladte køretøjer)", "ca": "Quants acampadors poden allotjar-se ací? (ometre si no hi ha un nombre evident de places o vehicles permesos)", "cs": "Kolik táborníků zde může zůstat? (přeskočte, pokud není zjevný počet míst nebo povolených vozidel)", @@ -488,7 +488,7 @@ "pt_BR": "Este lugar fornece acesso a internet?", "de": "Ist an diesem Ort ein Internetzugang vorhanden?", "nl": "Biedt deze plaats internettoegang?", - "es": "¿Este lugar tiene acceso a internet?", + "es": "¿Este lugar proporciona acceso a internet?", "da": "Er der internetadgang på dette sted?", "nb_NO": "Tilbyr stedet tilgang til Internett?", "ca": "Aquest lloc proporciona accés a Internet?", @@ -496,7 +496,8 @@ "eu": "Leku honek Interneterako sarbidea eskaintzen du?", "pl": "Czy to miejsce oferuje dostęp do internetu?", "pt": "Este lugar fornece acesso a internet?", - "zh_Hans": "这里有网络连接吗?" + "zh_Hans": "这里有网络连接吗?", + "uk": "Чи є в цьому місці доступ до Інтернету?" }, "mappings": [ { @@ -596,7 +597,7 @@ "pt_BR": "Você tem que pagar pelo acesso à internet?", "de": "Ist der Internetzugang gebührenpflichtig?", "nl": "Moet je betalen voor internettoegang?", - "es": "¿Tienes que pagar por el acceso a internet?", + "es": "¿Hay que pagar por el acceso a internet?", "da": "Skal man betale for internetadgang?", "nb_NO": "Må man betale for tilgang til Internett?", "ca": "Has de pagar per l'accés a Internet?", @@ -621,7 +622,7 @@ "pt_BR": "Você precisa pagar um extra pelo acesso à internet", "de": "Der Internetzugang ist gebührenpflichtig", "nl": "Je moet extra betalen voor internettoegang", - "es": "Tienes que pagar a mayores por el acceso a internet", + "es": "Tienes que pagar extra por el acceso a internet", "da": "Man skal betale ekstra for internetadgang", "nb_NO": "Tilgang til Internett koster ekstra", "ca": "Heu de pagar un extra per accedir a Internet", @@ -647,7 +648,7 @@ "pt_BR": "Você não precisa pagar um extra pelo acesso à internet", "de": "Der Internetzugang ist kostenlos", "nl": "Je hoeft niet extra te betalen voor internettoegang", - "es": "No tienes que pagar a mayores por el acceso a internet", + "es": "No tienes que pagar extra por el acceso a internet", "da": "Man behøver ikke at betale ekstra for internetadgang", "nb_NO": "Man må ikke betale ekstra for tilgang til Internett", "ca": "No cal pagar extra per l'accés a Internet", @@ -705,7 +706,7 @@ "de": "Dieser Ort verfügt über Toiletten", "nl": "Deze plaats heeft toiletten", "hu": "Itt van WC", - "es": "Este lugar cuenta con sanitarios", + "es": "Este lugar tiene baños", "da": "Dette sted har toiletter", "ca": "Aquest lloc té lavabos", "cs": "Toto místo má toalety", @@ -732,7 +733,7 @@ "de": "Dieser Ort verfügt nicht über Toiletten", "nl": "Deze plaats heeft geen toiletten", "hu": "Itt nincs WC", - "es": "Este lugar no tiene sanitarios", + "es": "Este lugar no tiene baños", "da": "Dette sted har ikke toiletter", "ca": "Aquest lloc no té lavabos", "cs": "Toto místo nemá toalety", @@ -756,7 +757,7 @@ "fr": "Site officiel : {website}", "pt_BR": "Site oficial: {website}", "de": "Offizielle Webseite: {website}", - "es": "Sitio web oficial: {website}", + "es": "Página web oficial: {website}", "ca": "Lloc web oficial: {website}", "da": "Officiel hjemmeside: {website}", "cs": "Oficiální webové stránky: {website}", @@ -779,7 +780,7 @@ "pt_BR": "Este lugar tem um website?", "de": "Hat dieser Ort eine Webseite?", "nl": "Heeft deze plaats een website?", - "es": "¿Este lugar tiene un sitio web?", + "es": "¿Este lugar tiene una página web?", "ca": "Aquest lloc té un lloc web?", "da": "Har dette sted et websted?", "cs": "Má toto místo webové stránky?", @@ -800,7 +801,7 @@ "fr": "Ce site permet-il la location longue durée ?", "pt_BR": "Este lugar oferece vagas para aluguel a longo prazo?", "de": "Gibt es a diesem Ort Plätze für Dauercamper?", - "es": "¿Este lugar ofrece huecos para alquilar a largo plazo?", + "es": "¿Este lugar ofrece plazas para alquiler a largo plazo?", "da": "Tilbyder dette sted pladser til langtidsleje?", "nl": "Kan men hier plekken huren voor langere termijn?", "nb_NO": "Tilbyr dette stedet plasser for langtidsleie?", @@ -825,7 +826,7 @@ "fr": "Il est possible d’y passer seulement une nuit", "pt_BR": "Sim, há alguns pontos para aluguel a longo prazo, mas você também pode ficar em uma base diária", "de": "Es gibt einige Plätze für Langzeitmieten, aber auch eine tageweise Anmietung ist möglich", - "es": "Hay algunas plazas de alquiler a largo plazo, pero también puedes alojarte por días", + "es": "Hay algunos lugares para alquiler a largo plazo, pero también puedes quedarte diariamente", "nl": "Er zijn enkele plaatsen om op lange termijn te huren, maar je kan ook enkele dagen blijven", "nb_NO": "Det finnes noen plasser for langtidsleie, men man kan også bruke dem på dagsbasis", "ca": "Hi ha alguns punts per al lloguer a llarg termini, però també es pot romandre diàriament", @@ -873,7 +874,7 @@ "it": "Puoi soggiornare qui solo se hai un contratto a lungo termine (se selezioni questa opzione, questo luogo sarà rimosso da questa mappa)", "fr": "C’est possible sous contrat (Cette option fera disparaître le site de la carte)", "de": "Es sind nur Plätze für Dauercamper vorhanden (wenn Sie diese Antwort auswählen, verschwindet der Ort von der Karte)", - "es": "Solo es posible permanecer aquí si tienes un contrato a largo plazo (este lugar desaparecerá de este mapa si escoges esto)", + "es": "Solo es posible alojarse aquí si tienes un contrato a largo plazo (este lugar desaparece de este mapa si eliges esto)", "da": "Det er kun muligt at bo her, hvis du har en langtidskontrakt (dette sted forsvinder fra kortet, hvis du vælger dette)", "nl": "Hier kan je enkel verblijven met een langetermijnscontract (deze plaats verdwijnt van deze kaart als je dit kiest)", "ca": "Només és possible romandre aquí si teniu un contracte a llarg termini (aquest lloc desapareixerà d'aquest mapa si trieu això)", @@ -896,7 +897,7 @@ "pt_BR": "Mais detalhes sobre este lugar: {description}", "de": "Mehr Details über diesen Ort: {description}", "nl": "Meer details over deze plaats: {description}", - "es": "Más detalles sobre este lugar:{description}", + "es": "Más detalles sobre este lugar: {description}", "da": "Flere oplysninger om dette sted: {description}", "ca": "Més detalls sobre aquest lloc: {description}", "cs": "Další podrobnosti o tomto místě: {description}", @@ -913,7 +914,7 @@ "fr": "Souhaitez-vous ajouter une description générale du lieu ? (Ne pas répéter les informations précédentes et rester neutre, les opinions vont dans les avis)", "de": "Möchten Sie eine allgemeine Beschreibung für diesen Ort hinzufügen? (Bitte wiederholen Sie keine Informationen, die Sie bereits zuvor angegeben haben. Bitte bleiben Sie objektiv - Meinungen gehen in die Bewertungen ein)", "nl": "Wil je graag een algemene beschrijving toevoegen van deze plaats? (Herhaal hier niet de antwoorden op de vragen die reeds gesteld zijn. Hou het objectief - je kan je mening geven via een review)", - "es": "¿Te gustaría añadir una descripción general de este lugar? (No repitas información previamente preguntada o mostrada arriba. Por favor mantenla objetiva - las opiniones van en la de opiniones)", + "es": "¿Te gustaría añadir una descripción general de este lugar? (no repitas información previamente solicitada o mostrada arriba Manténla objetiva - las opiniones van en las reseñas)", "ca": "T'agradaria afegir una descripció general d'aquest lloc? (No repeteixis informació prèviament preguntada o mostrada a dalt. Si us plau mantín-la objectiva - les opinions van en les «reviews»)", "da": "Vil du tilføje en generel beskrivelse af dette sted? (Gentag ikke oplysninger, der tidligere er blevet spurgt eller vist ovenfor. Hold dem venligst objektive - udtalelser går ind i anmeldelserne)", "nb_NO": "Vil du legge til en generell beskrivelse av dette stedet? (Ikke gjenta info det har blitt spurt om eller som vises ovenfor. Hold det objektivt. Meninger henvises til vurderingene.)", diff --git a/assets/layers/charging_station/charging_station.json b/assets/layers/charging_station/charging_station.json index cf0db46ef..dd27e3f36 100644 --- a/assets/layers/charging_station/charging_station.json +++ b/assets/layers/charging_station/charging_station.json @@ -4,7 +4,8 @@ "en": "Charging stations", "nl": "Oplaadpunten", "ca": "Estacions de càrrega", - "de": "Ladestationen" + "de": "Ladestationen", + "es": "Puntos de carga" }, "minzoom": 10, "source": { @@ -21,14 +22,12 @@ ] } }, - "keywords": {"nl": [ - "oplaadstations","oplaad stations","oplaad punten" - ]}, "title": { "render": { "en": "Charging station", "nl": "Oplaadpunt", - "de": "Ladestation" + "de": "Ladestation", + "es": "Punto de carga" }, "mappings": [ { @@ -46,7 +45,8 @@ "then": { "en": "Charging station for electrical bicycles", "nl": "Oplaadpunt voor elektrische fietsen", - "de": "Ladestation für Elektrofahrräder" + "de": "Ladestation für Elektrofahrräder", + "es": "Punto de carga para bicicletas eléctricas" } }, { @@ -64,7 +64,8 @@ "then": { "en": "Charging station for cars", "nl": "Oplaadpunt voor elektrische auto's", - "de": "Ladestation für Autos" + "de": "Ladestation für Autos", + "es": "Punto de carga para coches" } } ] @@ -74,6 +75,7 @@ "nl": "Oplaadpunten", "ca": "Una estació de càrrega", "de": "Eine Ladestation", + "es": "Un punto de carga", "fr": "Une station de recharge" }, "#": "no-question-hint-check", @@ -87,6 +89,7 @@ "nl": "Welke voertuigen kunnen hier opgeladen worden?", "ca": "Quins vehicles tenen permesa la càrrega aquí?", "de": "Welche Fahrzeuge können hier laden?", + "es": "¿Qué vehículos pueden cargar aquí?", "pl": "Jakie pojazdy mogą być tutaj ładowane?" }, "multiAnswer": true, @@ -99,6 +102,7 @@ "nl": "Elektrische fietsen kunnen hier opgeladen worden", "ca": "Aquí es poden carregar bicicletes", "de": "Hier können Fahrräder laden", + "es": "Aquí se pueden cargar bicicletas", "pl": "Mogą tutaj być ładowane rowery" } }, @@ -110,6 +114,7 @@ "nl": "Elektrische auto's kunnen hier opgeladen worden", "ca": "Aquí es poden carregar cotxes", "de": "Hier können Autos laden", + "es": "Aquí se pueden cargar coches", "pl": "Mogą tutaj być ładowane samochody" } }, @@ -121,6 +126,7 @@ "nl": "Elektrische scooters (snorfiets of bromfiets) kunnen hier opgeladen worden", "ca": "Aquí es poden carregar Scooters", "de": "Hier können Roller laden", + "es": "Aquí se pueden cargar patinetes", "pl": "Mogą być tutaj ładowane hulajnogi" } }, @@ -131,7 +137,8 @@ "en": "Heavy good vehicles (such as trucks) can be charged here", "nl": "Vrachtwagens kunnen hier opgeladen worden", "ca": "Aquí es poden carregar camions o trailers", - "de": "Hier können LKW laden" + "de": "Hier können LKW laden", + "es": "Aquí se pueden cargar vehículos de mercancías pesadas (como camiones)" } }, { @@ -142,6 +149,7 @@ "nl": "Bussen kunnen hier opgeladen worden", "ca": "Aquí es poden carregar autobusos", "de": "Hier können Busse laden", + "es": "Aquí se pueden cargar autobuses", "pl": "Mogą być tutaj ładowane autobusy" } } @@ -154,13 +162,16 @@ "nl": "Wie mag er dit oplaadpunt gebruiken?", "ca": "Qui pot utilitzar aquesta estació de càrrega?", "de": "Wer darf diese Ladestation benutzen?", + "es": "¿Quién puede usar este punto de carga?", "pl": "Kto może używać tej stacji ładowania?" }, "render": { "en": "Access is {access}", "nl": "Toegang voor {access}", "ca": "L'accés està {access}", - "de": "Zugang ist {access}" + "de": "Zugang ist {access}", + "es": "El acceso es {access}", + "uk": "Доступ – {access}" }, "freeform": { "key": "access", @@ -176,6 +187,7 @@ "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)", "de": "Jeder kann die Station nutzen (eventuell gegen Bezahlung)", + "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)" } }, @@ -186,6 +198,7 @@ "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)", "de": "Jeder kann diese Ladestation nutzen (eventuell gegen Bezahlung)", + "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 @@ -196,7 +209,8 @@ "en": "Only customers of the place this station belongs to can use this charging station
E.g. a charging station operated by hotel which is only usable by their guests", "nl": "Enkel klanten van de bijhorende plaats mogen dit oplaadpunt gebruiken
Bv. op de parking van een hotel en enkel toegankelijk voor klanten van dit hotel", "ca": "Sols cliente del lloc al que pertany aquest punt de càrrega poden utilitzar-lo
p.e. un punt de càrrega d'un hotel que sols poden utilizar-los els hostes", - "de": "Nur Kunden des Ortes, zu dem diese Station gehört, können diese Ladestation nutzen
Z.B. eine von einem Hotel betriebene Ladestation, die nur von dessen Gästen genutzt werden kann" + "de": "Nur Kunden des Ortes, zu dem diese Station gehört, können diese Ladestation nutzen
Z.B. eine von einem Hotel betriebene Ladestation, die nur von dessen Gästen genutzt werden kann", + "es": "Solo los clientes del lugar al que pertenece esta estación pueden usar este punto de carga
Por ejemplo, un punto de carga operado por un hotel que solo pueden usar sus huéspedes" } }, { @@ -205,7 +219,8 @@ "en": "A key must be requested to access this charging station
E.g. a charging station operated by hotel which is only usable by their guests, which receive a key from the reception to unlock the charging station", "nl": "Een sleutel is nodig om dit oplaadpunt te gebruiken
Bv. voor klanten van een hotel of een bar, die de sleutel aan de receptie kunnen krijgen", "ca": "S'ha de sol·licitar una clau per a utilitzar aquest punt de càrrega
p.e un punt de càrrega operat per un hotel nomes utilitzable pel seus hostes, els quals reben una clau des de recepció per a desbloquejar el punt de càrrega", - "de": "Für den Zugang zur Station muss ein Schlüssel angefordert werden
z.B. eine von einem Hotel betriebene Ladestation, die nur von dessen Gästen genutzt werden kann, die an der Rezeption einen Schlüssel erhalten, um die Ladestation aufzuschließen" + "de": "Für den Zugang zur Station muss ein Schlüssel angefordert werden
z.B. eine von einem Hotel betriebene Ladestation, die nur von dessen Gästen genutzt werden kann, die an der Rezeption einen Schlüssel erhalten, um die Ladestation aufzuschließen", + "es": "Se debe solicitar una llave para acceder a este punto de carga
Por ejemplo, un punto de carga operado por un hotel que solo pueden usar sus huéspedes, que reciben una llave de la recepción para desbloquear el punto de carga" } }, { @@ -214,7 +229,8 @@ "en": "Not accessible to the general public (e.g. only accessible to the owners, employees, ...)", "nl": "Niet toegankelijk voor het publiek
Bv. enkel toegankelijk voor de eigenaar, medewerkers ,... ", "ca": "No accessible per al públic general (p.e. només accessible pels propietaris, empleats, ...)", - "de": "Die Station ist nicht für die Allgemeinheit zugänglich (z. B. nur für die Eigentümer, Mitarbeiter, ...)" + "de": "Die Station ist nicht für die Allgemeinheit zugänglich (z. B. nur für die Eigentümer, Mitarbeiter, ...)", + "es": "No accesible al público en general (por ejemplo, solo accesible para los propietarios, empleados, ...)" } }, { @@ -223,7 +239,8 @@ "en": "This charging station is accessible to the public during certain hours or conditions. Restrictions might apply, but general use is allowed.", "nl": "Dit oplaadstation is publiek toegankelijk onder voorwaarden (bv. enkel tijdens bepaalde uren). ", "ca": "Aquesta estació de càrrega és accessible al públic durant certes hores o condicions. Es poden aplicar restriccions, però es permet l'ús general.", - "de": "Diese Ladestation ist zu gewissen Öffnungszeiten oder Bedingungen öffentlich zugänglich. Einschränkungen sind möglich, aber generelle Nutzung ist erlaubt." + "de": "Diese Ladestation ist zu gewissen Öffnungszeiten oder Bedingungen öffentlich zugänglich. Einschränkungen sind möglich, aber generelle Nutzung ist erlaubt.", + "es": "Este punto de carga es accesible al público durante ciertas horas o condiciones Pueden aplicarse restricciones, pero se permite el uso general" } } ] @@ -235,6 +252,7 @@ "nl": "{capacity} voertuigen kunnen hier op hetzelfde moment opgeladen worden", "ca": "Aquí poden carregar {capacity} vehicles a l'hora", "de": "Hier können {capacity} Fahrzeuge gleichzeitig laden", + "es": "{capacity} vehículos se pueden cargar aquí al mismo tiempo", "pl": "{capacity} pojazdów może być tutaj ładowanych jednocześnie" }, "question": { @@ -242,6 +260,7 @@ "nl": "Hoeveel voertuigen kunnen hier opgeladen worden?", "ca": "Quants vehicles poden carregar a la vegada?", "de": "Wie viele Fahrzeuge können hier gleichzeitig laden?", + "es": "¿Cuántos vehículos se pueden cargar aquí al mismo tiempo?", "pl": "Ile pojazdów może być tutaj ładowanych jednocześnie?" }, "freeform": { @@ -254,7 +273,8 @@ "question": { "en": "Which charging connections are available here?", "nl": "Welke aansluitingen zijn hier beschikbaar?", - "de": "Welche Ladeanschlüsse gibt es hier?" + "de": "Welche Ladeanschlüsse gibt es hier?", + "es": "¿Qué conexiones de carga están disponibles aquí?" }, "multiAnswer": true, "mappings": [ @@ -265,7 +285,8 @@ "en": "Schuko wall plug without ground pin (CEE7/4 type F)", "nl": "Schuko stekker zonder aardingspin (CEE7/4 type F)", "ca": "Endoll de paret Schuko sense pin a terra (CEE7/4 tipus F)", - "de": "Schuko-Stecker ohne Erdungsstift (CEE7/4 Typ F)" + "de": "Schuko-Stecker ohne Erdungsstift (CEE7/4 Typ F)", + "es": "Enchufe de pared Schuko sin pin de tierra (tipo CEE7/4 F)" }, "icon": { "path": "./assets/layers/charging_station/CEE7_4F.svg", @@ -360,7 +381,8 @@ "en": "Schuko wall plug without ground pin (CEE7/4 type F)", "nl": "Schuko stekker zonder aardingspin (CEE7/4 type F)", "ca": "Endoll de paret Schuko sense pin a terra (CEE7/4 tipus F)", - "de": "Schuko-Stecker ohne Erdungsstift (CEE7/4 Typ F)" + "de": "Schuko-Stecker ohne Erdungsstift (CEE7/4 Typ F)", + "es": "Enchufe de pared Schuko sin pin de tierra (tipo CEE7/4 F)" }, "hideInAnswer": true, "icon": { @@ -375,7 +397,8 @@ "en": "European wall plug with ground pin (CEE7/4 type E)", "nl": "Europese stekker met aardingspin (CEE7/4 type E)", "ca": "Endoll de paret Europeu amb pin a terra (CEE7/4 tipus E)", - "de": "Europäischer Netzstecker mit Erdungsstift (CEE7/4 Typ E)" + "de": "Europäischer Netzstecker mit Erdungsstift (CEE7/4 Typ E)", + "es": "Enchufe de pared europeo con pin de tierra (tipo CEE7/4 E)" }, "icon": { "path": "./assets/layers/charging_station/TypeE.svg", @@ -439,7 +462,8 @@ "en": "European wall plug with ground pin (CEE7/4 type E)", "nl": "Europese stekker met aardingspin (CEE7/4 type E)", "ca": "Endoll de paret Europeu amb pin a terra (CEE7/4 tipus E)", - "de": "Europäischer Netzstecker mit Erdungsstift (CEE7/4 Typ E)" + "de": "Europäischer Netzstecker mit Erdungsstift (CEE7/4 Typ E)", + "es": "Enchufe de pared europeo con pin de tierra (tipo CEE7/4 E)" }, "hideInAnswer": true, "icon": { @@ -454,7 +478,8 @@ "en": "Chademo", "nl": "Chademo", "ca": "CHAdeMo", - "de": "Chademo-Anschluss" + "de": "Chademo-Anschluss", + "es": "Chademo" }, "icon": { "path": "./assets/layers/charging_station/Chademo_type4.svg", @@ -498,7 +523,8 @@ "en": "Chademo", "nl": "Chademo", "ca": "CHAdeMo", - "de": "Chademo-Anschluss" + "de": "Chademo-Anschluss", + "es": "Chademo" }, "hideInAnswer": true, "icon": { @@ -513,7 +539,8 @@ "en": "Type 1 with cable (J1772)", "nl": "Type 1 met kabel (J1772)", "ca": "Tipus 1 amb cable", - "de": "Typ 1 mit Kabel (J1772)" + "de": "Typ 1 mit Kabel (J1772)", + "es": "Tipo 1 con cable (J1772)" }, "icon": { "path": "./assets/layers/charging_station/Type1_J1772.svg", @@ -557,7 +584,8 @@ "en": "Type 1 with cable (J1772)", "nl": "Type 1 met kabel (J1772)", "ca": "Tipus 1 amb cable", - "de": "Typ 1 mit Kabel (J1772)" + "de": "Typ 1 mit Kabel (J1772)", + "es": "Tipo 1 con cable (J1772)" }, "hideInAnswer": true, "icon": { @@ -572,7 +600,8 @@ "en": "Type 1 without cable (J1772)", "nl": "Type 1 zonder kabel (J1772)", "ca": "Tipus 1 sense cable", - "de": "Typ 1 ohne Kabel (J1772)" + "de": "Typ 1 ohne Kabel (J1772)", + "es": "Tipo 1 sin cable (J1772)" }, "icon": { "path": "./assets/layers/charging_station/Type1_J1772.svg", @@ -616,7 +645,8 @@ "en": "Type 1 without cable (J1772)", "nl": "Type 1 zonder kabel (J1772)", "ca": "Tipus 1 sense cable(J1772)", - "de": " Typ 1 ohne Kabel (J1772)" + "de": " Typ 1 ohne Kabel (J1772)", + "es": "Tipo 1 sin cable (J1772)" }, "hideInAnswer": true, "icon": { @@ -631,7 +661,8 @@ "en": "Type 1 CCS (aka Type 1 Combo)", "nl": "Type 1 CCS (ook gekend als Type 1 Combo)", "ca": "CSS Tipus 1 (també conegut com a Tipus 1 Combo)", - "de": "Typ 1 CCS (Typ 1 Combo)" + "de": "Typ 1 CCS (Typ 1 Combo)", + "es": "Tipo 1 CCS (también conocido como Tipo 1 Combo)" }, "icon": { "path": "./assets/layers/charging_station/Type1-ccs.svg", @@ -675,7 +706,8 @@ "en": "Type 1 CCS (aka Type 1 Combo)", "nl": "Type 1 CCS (ook gekend als Type 1 Combo)", "ca": "CSS Tipus 1 (també conegut com a Tipus 1 Combo)", - "de": " Typ 1 CCS (auch bekannt als Typ 1 Combo)" + "de": " Typ 1 CCS (auch bekannt als Typ 1 Combo)", + "es": "Tipo 1 CCS (también conocido como Tipo 1 Combo)" }, "hideInAnswer": true, "icon": { @@ -690,7 +722,8 @@ "en": "Tesla Supercharger", "nl": "Tesla Supercharger", "ca": "Supercarregador de Tesla", - "de": "Tesla Supercharger" + "de": "Tesla Supercharger", + "es": "Tesla Supercharger" }, "icon": { "path": "./assets/layers/charging_station/Tesla-hpwc-model-s.svg", @@ -734,7 +767,8 @@ "en": "Tesla Supercharger", "nl": "Tesla Supercharger", "ca": "Supercarregador de Tesla", - "de": "Tesla Supercharger" + "de": "Tesla Supercharger", + "es": "Tesla Supercharger" }, "hideInAnswer": true, "icon": { @@ -749,7 +783,8 @@ "en": "Type 2 (mennekes)", "nl": "Type 2 (mennekes)", "ca": "Tipus 2 (mennekes)", - "de": "Typ 2 (Mennekes)" + "de": "Typ 2 (Mennekes)", + "es": "Tipo 2 (mennekes)" }, "icon": { "path": "./assets/layers/charging_station/Type2_socket.svg", @@ -793,7 +828,8 @@ "en": "Type 2 (mennekes)", "nl": "Type 2 (mennekes)", "ca": "Tipus 2 (mennekes)", - "de": "Typ 2 (Mennekes)" + "de": "Typ 2 (Mennekes)", + "es": "Tipo 2 (mennekes)" }, "hideInAnswer": true, "icon": { @@ -808,7 +844,8 @@ "en": "Type 2 CCS (mennekes)", "nl": "Type 2 CCS (mennekes)", "ca": "CSS Tipus 2 (mennekes)", - "de": "Typ 2 CCS (Mennekes)" + "de": "Typ 2 CCS (Mennekes)", + "es": "Tipo 2 CCS (mennekes)" }, "icon": { "path": "./assets/layers/charging_station/Type2_CCS.svg", @@ -852,7 +889,8 @@ "en": "Type 2 CCS (mennekes)", "nl": "Type 2 CCS (mennekes)", "ca": "CSS Tipus 2 (mennekes)", - "de": "Typ 2 CCS (mennekes)" + "de": "Typ 2 CCS (mennekes)", + "es": "Tipo 2 CCS (mennekes)" }, "hideInAnswer": true, "icon": { @@ -866,7 +904,8 @@ "then": { "en": "Type 2 with cable (mennekes)", "nl": "Type 2 met kabel (J1772)", - "de": "Typ 2 mit Kabel (Mennekes)" + "de": "Typ 2 mit Kabel (Mennekes)", + "es": "Tipo 2 con cable (mennekes)" }, "icon": { "path": "./assets/layers/charging_station/Type2_tethered.svg", @@ -909,7 +948,8 @@ "then": { "en": "Type 2 with cable (mennekes)", "nl": "Type 2 met kabel (J1772)", - "de": "Typ 2 mit Kabel (mennekes)" + "de": "Typ 2 mit Kabel (mennekes)", + "es": "Tipo 2 con cable (mennekes)" }, "hideInAnswer": true, "icon": { @@ -923,7 +963,8 @@ "then": { "en": "Tesla Supercharger CCS (a branded type2_css)", "nl": "Tesla Supercharger CCS (een type2 CCS met Tesla-logo)", - "de": "Tesla Supercharger CCS (Typ 2 CSS von Tesla)" + "de": "Tesla Supercharger CCS (Typ 2 CSS von Tesla)", + "es": "Tesla Supercharger CCS (un tipo2_css de marca)" }, "icon": { "path": "./assets/layers/charging_station/Type2_CCS.svg", @@ -966,7 +1007,8 @@ "then": { "en": "Tesla Supercharger CCS (a branded type2_css)", "nl": "Tesla Supercharger CCS (een type2 CCS met Tesla-logo)", - "de": "Tesla Supercharger CCS (ein Markenzeichen von type2_css)" + "de": "Tesla Supercharger CCS (ein Markenzeichen von type2_css)", + "es": "Tesla Supercharger CCS (un tipo2_css de marca)" }, "hideInAnswer": true, "icon": { @@ -980,7 +1022,8 @@ "then": { "en": "Tesla Supercharger (destination)", "nl": "Tesla Supercharger (destination)", - "de": "Tesla Supercharger (Destination)" + "de": "Tesla Supercharger (Destination)", + "es": "Tesla Supercharger (destino)" }, "icon": { "path": "./assets/layers/charging_station/Tesla-hpwc-model-s.svg", @@ -1029,7 +1072,8 @@ "then": { "en": "Tesla Supercharger (destination)", "nl": "Tesla Supercharger (destination)", - "de": "Tesla Supercharger (Destination)" + "de": "Tesla Supercharger (Destination)", + "es": "Tesla Supercharger (destino)" }, "hideInAnswer": true, "icon": { @@ -1043,7 +1087,8 @@ "then": { "en": "Tesla supercharger (destination) (A Type 2 with cable branded as tesla)", "nl": "Tesla supercharger (destination (Een Type 2 met kabel en Tesla-logo)", - "de": "Tesla Supercharger (Destination) (Typ 2 mit Kabel von Tesla)" + "de": "Tesla Supercharger (Destination) (Typ 2 mit Kabel von Tesla)", + "es": "Supercargador Tesla (destino) (Un tipo 2 con cable de marca Tesla)" }, "icon": { "path": "./assets/layers/charging_station/Type2_tethered.svg", @@ -1092,7 +1137,8 @@ "then": { "en": "Tesla supercharger (destination) (A Type 2 with cable branded as tesla)", "nl": "Tesla supercharger (destination (Een Type 2 met kabel en Tesla-logo)", - "de": "Tesla supercharger (Destination) (Typ 2 mit Kabel von Tesla)" + "de": "Tesla supercharger (Destination) (Typ 2 mit Kabel von Tesla)", + "es": "Supercargador Tesla (destino) (Un tipo 2 con cable de marca Tesla)" }, "hideInAnswer": true, "icon": { @@ -1106,7 +1152,8 @@ "then": { "en": "USB to charge phones and small electronics", "nl": "USB om GSMs en kleine electronica op te laden", - "de": "USB zum Aufladen von Handys und kleinen Elektrogeräten" + "de": "USB zum Aufladen von Handys und kleinen Elektrogeräten", + "es": "USB para cargar teléfonos y pequeños dispositivos electrónicos" }, "icon": { "path": "./assets/layers/charging_station/usb_port.svg", @@ -1123,7 +1170,8 @@ "then": { "en": "USB to charge phones and small electronics", "nl": "USB om GSMs en kleine electronica op te laden", - "de": "USB zum Aufladen von Handys und kleinen Elektrogeräten" + "de": "USB zum Aufladen von Handys und kleinen Elektrogeräten", + "es": "USB para cargar teléfonos y pequeños dispositivos electrónicos" }, "hideInAnswer": true, "icon": { @@ -1137,7 +1185,8 @@ "then": { "en": "Bosch Active Connect with 3 pins and cable", "nl": "Bosch Active Connect met 3 pinnen aan een kabel", - "de": "Bosch Active Connect mit 3 Pins und Kabel" + "de": "Bosch Active Connect mit 3 Pins und Kabel", + "es": "Bosch Active Connect con 3 pines y cable" }, "icon": { "path": "./assets/layers/charging_station/bosch-3pin.svg", @@ -1176,7 +1225,8 @@ "then": { "en": "Bosch Active Connect with 3 pins and cable", "nl": "Bosch Active Connect met 3 pinnen aan een kabel", - "de": " Bosch Active Connect mit 3 Pins und Kabel" + "de": " Bosch Active Connect mit 3 Pins und Kabel", + "es": "Bosch Active Connect con 3 pines y cable" }, "hideInAnswer": true, "icon": { @@ -1190,7 +1240,8 @@ "then": { "en": "Bosch Active Connect with 5 pins and cable", "nl": "Bosch Active Connect met 5 pinnen aan een kabel", - "de": "Bosch Active Connect mit 5 Pins und Kabel" + "de": "Bosch Active Connect mit 5 Pins und Kabel", + "es": "Bosch Active Connect con 5 pines y cable" }, "icon": { "path": "./assets/layers/charging_station/bosch-5pin.svg", @@ -1229,7 +1280,8 @@ "then": { "en": "Bosch Active Connect with 5 pins and cable", "nl": "Bosch Active Connect met 5 pinnen aan een kabel", - "de": " Bosch Active Connect mit 5 Pins und Kabel" + "de": " Bosch Active Connect mit 5 Pins und Kabel", + "es": "Bosch Active Connect con 5 pines y cable" }, "hideInAnswer": true, "icon": { @@ -1243,7 +1295,8 @@ "then": { "en": "BS1363 (Type G)", "nl": "BS1363 (VK 3-pin)", - "de": "BS1363 (Typ G)" + "de": "BS1363 (Typ G)", + "es": "BS1363 (Tipo G)" }, "icon": { "path": "./assets/layers/charging_station/bs1363.svg", @@ -1310,7 +1363,8 @@ "then": { "en": "BS1363 (Type G)", "nl": "BS1363 (VK 3-pin)", - "de": "BS1363 (Typ G)" + "de": "BS1363 (Typ G)", + "es": "BS1363 (Tipo G)" }, "hideInAnswer": true, "icon": { @@ -1324,7 +1378,8 @@ "then": { "en": "NEMA 5-15 (Type B)", "nl": "NEMA 5-15 (VS 3-pin)", - "de": "NEMA 5-15 (Typ B)" + "de": "NEMA 5-15 (Typ B)", + "es": "NEMA 5-15 (Tipo B)" }, "icon": { "path": "./assets/layers/charging_station/nema-5-15.svg", @@ -1390,7 +1445,8 @@ "then": { "en": "NEMA 5-15 (Type B)", "nl": "NEMA 5-15 (VS 3-pin)", - "de": "NEMA 5-15 (Typ B)" + "de": "NEMA 5-15 (Typ B)", + "es": "NEMA 5-15 (Tipo B)" }, "hideInAnswer": true, "icon": { @@ -1404,7 +1460,8 @@ "then": { "en": "SEV 1011 T23 (Type J)", "nl": "SEV 1011 T23 (Zwitserse 3-pin)", - "de": "SEV 1011 T23 (Typ J)" + "de": "SEV 1011 T23 (Typ J)", + "es": "SEV 1011 T23 (Tipo J)" }, "icon": { "path": "./assets/layers/charging_station/typej.svg", @@ -1431,7 +1488,8 @@ "then": { "en": "SEV 1011 T23 (Type J)", "nl": "SEV 1011 T23 (Zwitserse 3-pin)", - "de": "SEV 1011 T23 (Typ J)" + "de": "SEV 1011 T23 (Typ J)", + "es": "SEV 1011 T23 (Tipo J)" }, "hideInAnswer": true, "icon": { @@ -1445,7 +1503,8 @@ "then": { "en": "AS3112 (Type I)", "nl": "AS3112 (Australische 3-pin)", - "de": "AS3112 (Typ I)" + "de": "AS3112 (Typ I)", + "es": "AS3112 (Tipo I)" }, "icon": { "path": "./assets/layers/charging_station/as3112.svg", @@ -1484,7 +1543,8 @@ "then": { "en": "AS3112 (Type I)", "nl": "AS3112 (Australische 3-pin)", - "de": "AS3112 (Typ I)" + "de": "AS3112 (Typ I)", + "es": "AS3112 (Tipo I)" }, "hideInAnswer": true, "icon": { @@ -1498,7 +1558,8 @@ "then": { "en": "NEMA 5-20 (Type B)", "nl": "NEMA 5-20 (VS 3-pin)", - "de": "NEMA 5-20 (Typ B)" + "de": "NEMA 5-20 (Typ B)", + "es": "NEMA 5-20 (Tipo B)" }, "icon": { "path": "./assets/layers/charging_station/nema-5-20.svg", @@ -1564,7 +1625,8 @@ "then": { "en": "NEMA 5-20 (Type B)", "nl": "NEMA 5-20 (VS 3-pin)", - "de": "NEMA 5-20 (Typ B)" + "de": "NEMA 5-20 (Typ B)", + "es": "NEMA 5-20 (Tipo B)" }, "hideInAnswer": true, "icon": { @@ -1593,7 +1655,8 @@ { "en": "Schuko wall plug without ground pin (CEE7/4 type F)", "nl": "Schuko stekker zonder aardingspin (CEE7/4 type F)", - "de": "Schuko-Stecker ohne Erdungsstift (CEE7/4 Typ F)" + "de": "Schuko-Stecker ohne Erdungsstift (CEE7/4 Typ F)", + "es": "Enchufe de pared Schuko sin pin de tierra (tipo CEE7/4 F)" }, "CEE7_4F.svg", [ @@ -1612,7 +1675,8 @@ { "en": "European wall plug with ground pin (CEE7/4 type E)", "nl": "Europese stekker met aardingspin (CEE7/4 type E)", - "de": "Europäischer Netzstecker mit Erdungsstift (CEE7/4 Typ E)" + "de": "Europäischer Netzstecker mit Erdungsstift (CEE7/4 Typ E)", + "es": "Enchufe de pared europeo con pin de tierra (tipo CEE7/4 E)" }, "TypeE.svg", [ @@ -1632,7 +1696,8 @@ { "en": "Chademo", "nl": "Chademo", - "de": "Chademo-Stecker" + "de": "Chademo-Stecker", + "es": "Chademo" }, "Chademo_type4.svg", [ @@ -1651,7 +1716,8 @@ { "en": "Type 1 with cable (J1772)", "nl": "Type 1 met kabel (J1772)", - "de": "Typ 1 mit Kabel (J1772)" + "de": "Typ 1 mit Kabel (J1772)", + "es": "Tipo 1 con cable (J1772)" }, "Type1_J1772.svg", [ @@ -1672,7 +1738,8 @@ { "en": "Type 1 without cable (J1772)", "nl": "Type 1 zonder kabel (J1772)", - "de": " Typ 1 ohne Kabel (J1772)" + "de": " Typ 1 ohne Kabel (J1772)", + "es": "Tipo 1 sin cable (J1772)" }, "Type1_J1772.svg", [ @@ -1695,7 +1762,8 @@ { "en": "Type 1 CCS (aka Type 1 Combo)", "nl": "Type 1 CCS (ook gekend als Type 1 Combo)", - "de": "Typ 1 CCS (Typ 1 Combo)" + "de": "Typ 1 CCS (Typ 1 Combo)", + "es": "Tipo 1 CCS (también conocido como Tipo 1 Combo)" }, "Type1-ccs.svg", [ @@ -1719,7 +1787,8 @@ { "en": "Tesla Supercharger", "nl": "Tesla Supercharger", - "de": "Tesla Supercharger" + "de": "Tesla Supercharger", + "es": "Tesla Supercharger" }, "Tesla-hpwc-model-s.svg", [ @@ -1741,7 +1810,8 @@ { "en": "Type 2 (mennekes)", "nl": "Type 2 (mennekes)", - "de": "Typ 2 (Mennekes)" + "de": "Typ 2 (Mennekes)", + "es": "Tipo 2 (mennekes)" }, "Type2_socket.svg", [ @@ -1763,7 +1833,8 @@ { "en": "Type 2 CCS (mennekes)", "nl": "Type 2 CCS (mennekes)", - "de": "Typ 2 CCS (Mennekes)" + "de": "Typ 2 CCS (Mennekes)", + "es": "Tipo 2 CCS (mennekes)" }, "Type2_CCS.svg", [ @@ -1784,7 +1855,8 @@ { "en": "Type 2 with cable (mennekes)", "nl": "Type 2 met kabel (J1772)", - "de": "Typ 2 mit Kabel (Mennekes)" + "de": "Typ 2 mit Kabel (Mennekes)", + "es": "Tipo 2 con cable (mennekes)" }, "Type2_tethered.svg", [ @@ -1806,7 +1878,8 @@ { "en": "Tesla Supercharger CCS (a branded type2_css)", "nl": "Tesla Supercharger CCS (een type2 CCS met Tesla-logo)", - "de": "Tesla Supercharger CCS (Typ 2 CSS von Tesla)" + "de": "Tesla Supercharger CCS (Typ 2 CSS von Tesla)", + "es": "Tesla Supercharger CCS (un tipo2_css de marca)" }, "Type2_CCS.svg", [ @@ -1827,7 +1900,8 @@ { "en": "Tesla Supercharger (destination)", "nl": "Tesla Supercharger (destination)", - "de": "Tesla Supercharger (Destination)" + "de": "Tesla Supercharger (Destination)", + "es": "Tesla Supercharger (destino)" }, "Tesla-hpwc-model-s.svg", [ @@ -1849,7 +1923,8 @@ { "en": "Tesla supercharger (destination) (A Type 2 with cable branded as tesla)", "nl": "Tesla supercharger (destination (Een Type 2 met kabel en Tesla-logo)", - "de": "Tesla Supercharger (Destination) (Typ 2 mit Kabel von Tesla)" + "de": "Tesla Supercharger (Destination) (Typ 2 mit Kabel von Tesla)", + "es": "Supercargador Tesla (destino) (Un tipo 2 con cable de marca Tesla)" }, "Type2_tethered.svg", [ @@ -1871,7 +1946,8 @@ { "en": "USB to charge phones and small electronics", "nl": "USB om GSMs en kleine electronica op te laden", - "de": "USB zum Aufladen von Handys und kleinen Elektrogeräten" + "de": "USB zum Aufladen von Handys und kleinen Elektrogeräten", + "es": "USB para cargar teléfonos y pequeños dispositivos electrónicos" }, "usb_port.svg", [ @@ -1892,7 +1968,8 @@ { "en": "Bosch Active Connect with 3 pins and cable", "nl": "Bosch Active Connect met 3 pinnen aan een kabel", - "de": " Bosch Active Connect mit 3 Pins und Kabel" + "de": " Bosch Active Connect mit 3 Pins und Kabel", + "es": "Bosch Active Connect con 3 pines y cable" }, "bosch-3pin.svg", [], @@ -1905,7 +1982,8 @@ { "en": "Bosch Active Connect with 5 pins and cable", "nl": "Bosch Active Connect met 5 pinnen aan een kabel", - "de": " Bosch Active Connect mit 5 Pins und Kabel" + "de": " Bosch Active Connect mit 5 Pins und Kabel", + "es": "Bosch Active Connect con 5 pines y cable" }, "bosch-5pin.svg", [], @@ -1918,7 +1996,8 @@ { "en": "BS1363 (Type G)", "nl": "BS1363 (VK 3-pin)", - "de": "BS1363 (Typ G)" + "de": "BS1363 (Typ G)", + "es": "BS1363 (Tipo G)" }, "bs1363.svg", [ @@ -1937,7 +2016,8 @@ { "en": "NEMA 5-15 (Type B)", "nl": "NEMA 5-15 (VS 3-pin)", - "de": "NEMA 5-15 (Typ B)" + "de": "NEMA 5-15 (Typ B)", + "es": "NEMA 5-15 (Tipo B)" }, "nema-5-15.svg", [ @@ -1956,7 +2036,8 @@ { "en": "SEV 1011 T23 (Type J)", "nl": "SEV 1011 T23 (Zwitserse 3-pin)", - "de": "SEV 1011 T23 (Typ J)" + "de": "SEV 1011 T23 (Typ J)", + "es": "SEV 1011 T23 (Tipo J)" }, "typej.svg", [ @@ -1975,7 +2056,8 @@ { "en": "AS3112 (Type I)", "nl": "AS3112 (Australische 3-pin)", - "de": "AS3112 (Typ I)" + "de": "AS3112 (Typ I)", + "es": "AS3112 (Tipo I)" }, "as3112.svg", [ @@ -1994,7 +2076,8 @@ { "en": "NEMA 5-20 (Type B)", "nl": "NEMA 5-20 (VS 3-pin)", - "de": "NEMA 5-20 (Typ B)" + "de": "NEMA 5-20 (Typ B)", + "es": "NEMA 5-20 (Tipo B)" }, "nema-5-20.svg", [ @@ -2025,12 +2108,14 @@ "ca": "Quants connectors del tipus {{description}} hi han disponibles aquí?", "cs": "Kolik zástrček typu {{description}} je k dispozici?", "da": "Hvor mange stik af typen {{description}} er tilgængelige her?", - "de": "Wie viele Stecker vom Typ {{description}} sind hier vorhanden?" + "de": "Wie viele Stecker vom Typ {{description}} sind hier vorhanden?", + "es": "¿Cuántos enchufes del tipo {{description}} hay disponibles aquí?" }, "render": { "en": "There are {{{key}}} plugs of type {{description}} available here", "nl": "Hier zijn {{{key}}} stekkers van het type {{description}}", - "de": "Hier sind {{{key}}} Stecker vom Typ {{description}} verfügbar" + "de": "Hier sind {{{key}}} Stecker vom Typ {{description}} verfügbar", + "es": "Hay {{{key}}} enchufes del tipo {{description}} disponibles aquí" }, "icon": "./assets/layers/charging_station/{{image}}", "freeform": { @@ -2053,12 +2138,14 @@ "en": "What voltage do the plugs with {{description}} offer?", "nl": "Welke spanning levert de stekker van type {{description}}", "cs": "Jaké napětí mají zástrčky s {{description}} ?", - "de": "Welche Spannung liefern die {{description}}?" + "de": "Welche Spannung liefern die {{description}}?", + "es": "¿Qué voltaje ofrecen los enchufes con {{description}}?" }, "render": { "en": "{{description}} outputs {canonical({{key}}:voltage)}", "nl": "{{description}} heeft een spanning van {canonical({{key}}:voltage)}", - "de": "{{description}} liefert {canonical({{key}}:voltage)}" + "de": "{{description}} liefert {canonical({{key}}:voltage)}", + "es": "{{description}} entrega {canonical({{key}}:voltage)}" }, "freeform": { "key": "{{key}}:voltage", @@ -2070,7 +2157,8 @@ "en": "{{description}} outputs {{commonVoltages}} volt", "nl": "{{description}} heeft een spanning van {{commonVoltages}} volt", "cs": "{{description}} výstup {{commonVoltages}} voltů", - "de": "{{description}} liefert {{commonVoltages}} Volt" + "de": "{{description}} liefert {{commonVoltages}} Volt", + "es": "{{description}} entrega {{commonVoltages}} voltios" } }, "condition": { @@ -2088,12 +2176,14 @@ "question": { "en": "What current do the plugs with {{description}} offer?", "nl": "Welke stroom levert de stekker van type {{description}}?", - "de": "Welchen Strom bieten die Stecker mit {{description}}?" + "de": "Welchen Strom bieten die Stecker mit {{description}}?", + "es": "¿Qué corriente ofrecen los enchufes con {{description}}?" }, "render": { "en": "{{description}} outputs at most {canonical({{key}}:current)}", "nl": "{{description}} levert een stroom van maximaal {canonical({{key}}:current)}", - "de": "{{description}} liefert maximal {canonical({{key}}:current)}" + "de": "{{description}} liefert maximal {canonical({{key}}:current)}", + "es": "{{description}} entrega como máximo {canonical({{key}}:current)}" }, "freeform": { "key": "{{key}}:current", @@ -2104,7 +2194,8 @@ "then": { "en": "{{description}} outputs at most {{commonCurrent}} A", "nl": "{{description}} levert een stroom van maximaal {{commonCurrent}} A", - "de": "{{description}} liefert maximal {{commonCurrent}} A" + "de": "{{description}} liefert maximal {{commonCurrent}} A", + "es": "{{description}} entrega como máximo {{commonCurrent}} A" } }, "condition": { @@ -2122,12 +2213,14 @@ "question": { "en": "What power output does a single plug of type {{description}} offer?", "nl": "Welk vermogen levert een enkele stekker van type {{description}}?", - "de": "Welche Leistung liefert ein einzelner Stecker des Typs {{description}}?" + "de": "Welche Leistung liefert ein einzelner Stecker des Typs {{description}}?", + "es": "¿Qué potencia de salida ofrece un solo enchufe del tipo {{description}}?" }, "render": { "en": "{{description}} outputs at most {canonical({{key}}:output)}", "nl": "{{description}} levert een vermogen van maximaal {canonical({{key}}:output)}", - "de": "{{description}} liefert maximal {canonical({{key}}:output)}" + "de": "{{description}} liefert maximal {canonical({{key}}:output)}", + "es": "{{description}} entrega como máximo {canonical({{key}}:output)}" }, "freeform": { "key": "{{key}}:output", @@ -2138,7 +2231,8 @@ "then": { "en": "{{description}} outputs at most {{commonOutput}} A", "nl": "{{description}} levert een vermogen van maximaal {{commonOutput}} A", - "de": "{{description}} liefert maximal {{commonOutput}} A" + "de": "{{description}} liefert maximal {{commonOutput}} A", + "es": "{{description}} entrega como máximo {{commonOutput}} A" } }, "condition": { @@ -2158,6 +2252,7 @@ "nl": "Wanneer is dit oplaadpunt beschikbaar??", "ca": "Quan està oberta aquesta estació de càrrega?", "de": "Wann ist die Ladestation geöffnet?", + "es": "¿Cuándo está abierto este punto de carga?", "pl": "Kiedy jest otwarta ta stacja ładowania?" } }, @@ -2169,7 +2264,8 @@ "en": "Does one have to pay to use this charging station?", "nl": "Moet men betalen om dit oplaadpunt te gebruiken?", "ca": "Hi ha que pagar per utilitzar aquest punt de càrrega?", - "de": "Muss man für die Nutzung dieser Ladestation bezahlen?" + "de": "Muss man für die Nutzung dieser Ladestation bezahlen?", + "es": "¿Hay que pagar para usar este punto de carga?" }, "mappings": [ { @@ -2185,7 +2281,8 @@ "nl": "Gratis te gebruiken (zonder aan te melden)", "en": "Free to use (without authenticating)", "ca": "Ús gratuït (sense autentificació)", - "de": "Die Nutzung ist kostenlos, keine Authentifizierung erforderlich" + "de": "Die Nutzung ist kostenlos, keine Authentifizierung erforderlich", + "es": "De uso gratuito (sin autenticación)" } }, { @@ -2201,7 +2298,8 @@ "nl": "Gratis te gebruiken, maar aanmelden met een applicatie is verplicht", "en": "Free to use, but one has to authenticate", "ca": "Ús gratuït, però un s'ha d'autentificar", - "de": "Die Nutzung ist kostenlos, Authentifizierung erforderlich" + "de": "Die Nutzung ist kostenlos, Authentifizierung erforderlich", + "es": "De uso gratuito, pero hay que autenticarse" } }, { @@ -2215,6 +2313,7 @@ "en": "Free to use", "ca": "Ús gratuït", "de": "Kostenlose Nutzung", + "es": "De uso gratuito", "pl": "Darmowa" }, "hideInAnswer": true @@ -2230,7 +2329,8 @@ "nl": "Betalend te gebruiken, maar gratis voor klanten van het bijhorende hotel/café/ziekenhuis/...", "en": "Paid use, but free for customers of the hotel/pub/hospital/... who operates the charging station", "ca": "De pagament, però gratuït per als clients de l'hotel/bar/hospital/... que gestiona l'estació de càrrega", - "de": "Die Nutzung ist kostenpflichtig, aber für Kunden des Betreibers der Einrichtung, wie Hotel, Krankenhaus, ... kostenlos" + "de": "Die Nutzung ist kostenpflichtig, aber für Kunden des Betreibers der Einrichtung, wie Hotel, Krankenhaus, ... kostenlos", + "es": "De pago, pero gratuito para clientes del hotel/pub/hospital/... que opera el punto de carga" } }, { @@ -2244,7 +2344,8 @@ "nl": "Betalend", "en": "Paid use", "ca": "Ús de pagament", - "de": "Die Nutzung ist kostenpflichtig" + "de": "Die Nutzung ist kostenpflichtig", + "es": "De pago" } } ] @@ -2255,13 +2356,15 @@ "en": "How much does one have to pay to use this charging station?", "nl": "Hoeveel moet men betalen om dit oplaadpunt te gebruiken?", "ca": "Quant cal pagar per utilitzar aquesta estació de càrrega?", - "de": "Wie viel muss man für die Nutzung dieser Ladestation bezahlen?" + "de": "Wie viel muss man für die Nutzung dieser Ladestation bezahlen?", + "es": "¿Cuánto hay que pagar para usar este punto de carga?" }, "render": { "en": "Using this charging station costs {charge}", "nl": "Dit oplaadpunt gebruiken kost {charge}", "ca": "Utilitzar aquesta estació de càrrega costa {charge}", - "de": "Die Nutzung dieser Ladestation kostet {charge}" + "de": "Die Nutzung dieser Ladestation kostet {charge}", + "es": "Usar este punto de carga cuesta {charge}" }, "freeform": { "key": "charge" @@ -2287,7 +2390,8 @@ "en": "What kind of authentication is available at the charging station?", "nl": "Hoe kan men zich aanmelden aan dit oplaadstation?", "ca": "Quin tipus d'autenticació hi ha disponible a l'estació de càrrega?", - "de": "Welche Art der Authentifizierung ist an der Ladestation möglich?" + "de": "Welche Art der Authentifizierung ist an der Ladestation möglich?", + "es": "¿Qué tipo de autenticación está disponible en el punto de carga?" }, "multiAnswer": true, "mappings": [ @@ -2299,6 +2403,7 @@ "nl": "Aanmelden met een lidkaart is mogelijk", "ca": "Autenticació mitjançant una targeta de soci", "de": "Authentifizierung durch eine Mitgliedskarte", + "es": "Autenticación mediante tarjeta de socio", "fr": "Authentification par carte de membre" } }, @@ -2310,6 +2415,7 @@ "nl": "Aanmelden via een applicatie is mogelijk", "ca": "Autenticació mitjançant una aplicació", "de": "Authentifizierung per App", + "es": "Autenticación mediante una aplicación", "fr": "Authentification par une application" } }, @@ -2320,6 +2426,7 @@ "en": "Authentication via phone call is available", "nl": "Aanmelden door te bellen naar een telefoonnummer is mogelijk", "de": "Authentifizierung per Anruf ist möglich", + "es": "Hay disponible autenticación por llamada telefónica", "fr": "Authentification possible par appel téléphonique" } }, @@ -2330,6 +2437,7 @@ "en": "Authentication via SMS is available", "nl": "Aanmelden via SMS is mogelijk", "de": "Authentifizierung per SMS ist möglich", + "es": "Hay disponible autenticación por SMS", "fr": "Authentification possible par SMS" } }, @@ -2340,7 +2448,8 @@ "en": "Authentication via NFC is available", "nl": "Aanmelden via NFC is mogelijk", "ca": "L'autenticació mitjançant NFC està disponible", - "de": "Authentifizierung per NFC ist möglich" + "de": "Authentifizierung per NFC ist möglich", + "es": "Hay disponible autenticación por NFC" } }, { @@ -2350,7 +2459,8 @@ "en": "Authentication via Money Card is available", "nl": "Aanmelden met Money Card is mogelijk", "ca": "L'autenticació mitjançant targeta de pagament està disponible", - "de": "Authentifizierung per Geldkarte ist möglich" + "de": "Authentifizierung per Geldkarte ist möglich", + "es": "Hay disponible autenticación por tarjeta de crédito" } }, { @@ -2360,7 +2470,8 @@ "en": "Authentication via debit card is available", "nl": "Aanmelden met een betaalkaart is mogelijk", "ca": "L'autenticació mitjançant targeta de debit està disponible", - "de": "Authentifizierung per Kreditkarte ist möglich" + "de": "Authentifizierung per Kreditkarte ist möglich", + "es": "Hay disponible autenticación por tarjeta de débito" } }, { @@ -2370,7 +2481,8 @@ "en": "Charging here is (also) possible without authentication", "nl": "Hier opladen is (ook) mogelijk zonder aan te melden", "ca": "Carregar aquí (també) és possible sense autenticació", - "de": "Das Laden ist hier (auch) ohne Authentifizierung möglich" + "de": "Das Laden ist hier (auch) ohne Authentifizierung möglich", + "es": "La carga aquí también es posible sin autenticación" } } ], @@ -2387,13 +2499,15 @@ "en": "Authenticate by calling or SMS'ing to {authentication:phone_call:number}", "nl": "Aanmelden door te bellen of te SMS'en naar {authentication:phone_call:number}", "ca": "Autentiqueu-vos trucant o enviant SMS a {authentication:phone_call:number}", - "de": "Authentifiziere dich, indem du anrufst oder eine SMS sendest an {authentication:phone_call:number}" + "de": "Authentifiziere dich, indem du anrufst oder eine SMS sendest an {authentication:phone_call:number}", + "es": "Autentifícate llamando o enviando un SMS a {authentication:phone_call:number}" }, "question": { "en": "What's the phone number for authentication call or SMS?", "nl": "Wat is het telefoonnummer dat men moet bellen of SMS'en om zich aan te melden?", "ca": "Quin és el número de telèfon per a la trucada d'autenticació o SMS?", - "de": "Wie lautet die Telefonnummer für den Authentifizierungsanruf oder die SMS?" + "de": "Wie lautet die Telefonnummer für den Authentifizierungsanruf oder die SMS?", + "es": "¿Cuál es el número de teléfono para la llamada o SMS de autenticación?" }, "freeform": { "key": "authentication:phone_call:number", @@ -2412,7 +2526,8 @@ "en": "What is the maximum amount of time one is allowed to stay here?", "nl": "Hoelang mag een voertuig hier blijven staan?", "ca": "Quina és la quantitat màxima de temps que es permet permaneixer aquí?", - "de": "Wie lange darf man hier maximal parken?" + "de": "Wie lange darf man hier maximal parken?", + "es": "¿Cuál es el tiempo máximo que se permite permanecer aquí?" }, "freeform": { "key": "maxstay", @@ -2422,7 +2537,8 @@ "en": "One can stay at most {canonical(maxstay)}", "nl": "De maximale parkeertijd hier is {canonical(maxstay)}", "ca": "Un pot quedar-se com a màxim {canonical(maxstay)}", - "de": "Die maximale Parkdauer beträgt {canonical(maxstay)}" + "de": "Die maximale Parkdauer beträgt {canonical(maxstay)}", + "es": "Se puede permanecer como máximo {canonical(maxstay)}" }, "mappings": [ { @@ -2431,7 +2547,8 @@ "en": "No timelimit on leaving your vehicle here", "nl": "Geen maximum parkeertijd", "ca": "No hi ha límit de temps per a deixar el teu vehicle aquí", - "de": "Keine Höchstparkdauer" + "de": "Keine Höchstparkdauer", + "es": "Sin límite de tiempo para dejar tu vehículo aquí" } } ], @@ -2451,14 +2568,18 @@ "nl": "Maakt deel uit van het {network}-netwerk", "ca": "Part de la xarxa {network}", "de": "Teil des Netzwerks {network}", - "pl": "Część sieci {network}" + "es": "Parte de la red {network}", + "pl": "Część sieci {network}", + "uk": "Частина мережі {network}" }, "question": { "en": "Is this charging station part of a network?", "nl": "Is dit oplaadpunt deel van een groter netwerk?", "ca": "Aquesta estació de càrrega forma part d'una xarxa?", "de": "Ist diese Ladestation Teil eines Netzwerks?", - "pl": "Czy ta stacja ładowania jest częścią sieci?" + "es": "¿Este punto de carga forma parte de una red?", + "pl": "Czy ta stacja ładowania jest częścią sieci?", + "uk": "Чи є ця зарядна станція частиною мережі?" }, "freeform": { "key": "network" @@ -2469,7 +2590,9 @@ "then": { "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", - "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", + "es": "No forma parte de una red mayor, por ejemplo, porque el punto de carga es mantenido por un negocio local", + "uk": "Не є частиною більшої мережі, наприклад, тому що зарядна станція обслуговується місцевим підприємством" } }, { @@ -2478,7 +2601,9 @@ "en": "Not part of a bigger network", "nl": "Maakt geen deel uit van een groter netwerk", "de": "Nicht Teil eines größeren Netzwerks", - "pl": "Nie jest częścią większej sieci" + "es": "No forma parte de una red mayor", + "pl": "Nie jest częścią większej sieci", + "uk": "Не є частиною великої мережі" }, "hideInAnswer": true }, @@ -2526,13 +2651,15 @@ "en": "Who is the operator of this charging station?", "nl": "Wie beheert dit oplaadpunt?", "ca": "Qui és l'operadora d'aquesta estació de càrrega?", - "de": "Wer ist der Betreiber dieser Ladestation?" + "de": "Wer ist der Betreiber dieser Ladestation?", + "es": "¿Quién es el operador de este punto de carga?" }, "render": { "en": "This charging station is operated by {operator}", "nl": "Wordt beheerd door {operator}", "ca": "Aquesta estació de càrrega l'opera {operator}", "de": "Die Station wird betrieben von {operator}", + "es": "Este punto de carga es operado por {operator}", "pl": "Ta stacja ładowania jest obsługiwana przez {operator}" }, "freeform": { @@ -2549,7 +2676,8 @@ "en": "Actually, {operator} is the network", "nl": "Eigenlijk is {operator} het netwerk waarvan het deel uitmaakt", "ca": "De fet, {operator} és la xarxa", - "de": "Eigentlich ist {operator} das Netzwerk" + "de": "Eigentlich ist {operator} das Netzwerk", + "es": "En realidad, {operator} es la red" }, "addExtraTags": [ "operator=" @@ -2566,6 +2694,7 @@ "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?", "de": "Welche Nummer kann man anrufen, wenn es ein Problem mit dieser Ladestation gibt?", + "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": { @@ -2573,6 +2702,7 @@ "nl": "Bij problemen, bel naar {phone}", "ca": "En cas de problemes, truqueu a {phone}", "de": "Bei Problemen, anrufen unter {phone}", + "es": "En caso de problemas, llama a {phone}", "pl": "W przypadku problemów zadzwoń na {phone}" }, "freeform": { @@ -2586,13 +2716,16 @@ "en": "What is the email address of the operator?", "nl": "Wat is het email-adres van de operator?", "ca": "Quin és el correu electrònic de l'operadora?", - "de": "Wie lautet die E-Mail-Adresse des Betreibers?" + "de": "Wie lautet die E-Mail-Adresse des Betreibers?", + "es": "¿Cuál es la dirección de correo electrónico del operador?", + "uk": "Яка електронна адреса оператора?" }, "render": { "en": "In case of problems, send an email to {email}", "nl": "Bij problemen, email naar {email}", "ca": "En cas de problemes, envia un email a {email}", "de": "Bei Problemen senden Sie bitte eine E-Mail an {email}", + "es": "En caso de problemas, envía un correo electrónico a {email}", "pl": "W przypadku problemów, wyślij emaila do {email}" }, "freeform": { @@ -2605,12 +2738,14 @@ "question": { "en": "What is the website where one can find more information about this charging station?", "nl": "Wat is de website waar men meer info kan vinden over dit oplaadpunt?", - "de": "Auf welcher Webseite kann man weitere Informationen über diese Ladestation finden?" + "de": "Auf welcher Webseite kann man weitere Informationen über diese Ladestation finden?", + "es": "¿Cuál es la página web donde se puede encontrar más información sobre este punto de carga?" }, "render": { "en": "More info on {website}", "nl": "Meer informatie op {website}", - "de": "Weitere Informationen unter {website}" + "de": "Weitere Informationen unter {website}", + "es": "Más información en {website}" }, "freeform": { "key": "website", @@ -2624,12 +2759,14 @@ "en": "What is the reference number of this charging station?", "nl": "Wat is het referentienummer van dit oplaadstation?", "de": "Welche Kennnummer hat die Ladestation?", + "es": "¿Cuál es el número de referencia de este punto de carga?", "pl": "Jaki jest numer referencyjny tej stacji ładowania?" }, "render": { "en": "Reference number is {ref}", "nl": "Het referentienummer van dit oplaadpunt is {ref}", "de": "Die Kennziffer ist {ref}", + "es": "El número de referencia es {ref}", "pl": "Numer referencyjny to {ref}" }, "freeform": { @@ -2644,7 +2781,8 @@ "en": "Is this charging point in use?", "nl": "Is dit oplaadpunt operationeel?", "ca": "Està en ús aquest punt de càrrega?", - "de": "Ist die Station in Betrieb?" + "de": "Ist die Station in Betrieb?", + "es": "¿Este punto de carga está en uso?" }, "mappings": [ { @@ -2662,6 +2800,7 @@ "nl": "Dit oplaadpunt werkt", "ca": "Aquesta estació de càrrega funciona", "de": "Die Station ist in Betrieb", + "es": "Este punto de carga funciona", "fr": "Cette station de recharge fonctionne", "pl": "Ta stacja ładowania działa" } @@ -2681,6 +2820,7 @@ "nl": "Dit oplaadpunt is kapot", "ca": "Aquesta estació de carrega està trencada", "de": "Die Station ist defekt", + "es": "Este punto de carga está roto", "pl": "Ta stacja ładowania jest zepsuta" } }, @@ -2699,6 +2839,7 @@ "nl": "Hier zal binnenkort een oplaadpunt gebouwd worden", "ca": "Aquí està prevista una estació de recàrrega", "de": "Die Station ist erst in Planung", + "es": "Aquí se planea un punto de carga", "pl": "Planowana jest tutaj stacja ładowania" } }, @@ -2716,6 +2857,7 @@ "en": "A charging station is constructed here", "nl": "Hier wordt op dit moment een oplaadpunt gebouwd", "de": "Die Station ist aktuell im Bau", + "es": "Aquí se está construyendo un punto de carga", "pl": "Budowana jest tutaj stacja ładowania" } }, @@ -2733,7 +2875,8 @@ "en": "This charging station has beed permanently disabled and is not in use anymore but is still visible", "nl": "Dit oplaadpunt is niet meer in gebruik maar is wel nog aanwezig", "ca": "Aquesta estació de recàrrega s'ha desactivat permanentment i ja no s'utilitza, però encara és visible", - "de": "Die Station ist dauerhaft geschlossen und nicht mehr in Nutzung, aber noch sichtbar" + "de": "Die Station ist dauerhaft geschlossen und nicht mehr in Nutzung, aber noch sichtbar", + "es": "Este punto de carga ha sido deshabilitado permanentemente y ya no está en uso, pero sigue siendo visible" } } ] @@ -2744,7 +2887,8 @@ "en": "Does one have to pay a parking fee while charging?", "nl": "Moet men parkeergeld betalen tijdens het opladen?", "ca": "Cal pagar una taxa d'aparcament mentre es carrega?", - "de": "Muss man während des Ladens eine Parkgebühr bezahlen?" + "de": "Muss man während des Ladens eine Parkgebühr bezahlen?", + "es": "¿Hay que pagar una tarifa de aparcamiento mientras se carga?" }, "mappings": [ { @@ -2753,7 +2897,8 @@ "en": "No additional parking cost while charging", "nl": "Geen extra parkeerkost tijdens het opladen", "ca": "No cal pagar una taxa addicional mentres carrega", - "de": "Keine zusätzlichen Parkkosten während des Ladens" + "de": "Keine zusätzlichen Parkkosten während des Ladens", + "es": "Sin coste de aparcamiento adicional mientras se carga" } }, { @@ -2762,7 +2907,8 @@ "en": "An additional parking fee should be paid while charging", "nl": "Tijdens het opladen moet er parkeergeld betaald worden", "ca": "Cal pagar una taxa addicional d'aparcament mentres carrega", - "de": "Während des Ladens ist eine zusätzliche Parkgebühr zu entrichten" + "de": "Während des Ladens ist eine zusätzliche Parkgebühr zu entrichten", + "es": "Se debe pagar una tarifa de aparcamiento adicional mientras se carga" } } ], @@ -2782,7 +2928,8 @@ "render": { "en": "

Technical questions

The questions below are very technical. Feel free to ignore them
{questions(technical)}", "nl": "

Technische vragen

De vragen hieronder zijn erg technisch - sla deze over indien je hier geen tijd voor hebt
{questions(technical)}", - "de": "

Technische Frage

Die nächsten Fragen sind sehr technisch. Du kannst diese auch überspringen.
{questions(technical)}" + "de": "

Technische Frage

Die nächsten Fragen sind sehr technisch. Du kannst diese auch überspringen.
{questions(technical)}", + "es": "

Preguntas técnicas

Las preguntas a continuación son muy técnicas Siéntete libre de ignorarlas
{questions(technical)}" } } ], @@ -2873,7 +3020,8 @@ "title": { "en": "charging station for electrical bikes", "nl": "oplaadpunt voor elektrische fietsen", - "de": "Ladestation für Elektrofahrräder" + "de": "Ladestation für Elektrofahrräder", + "es": "punto de carga para bicicletas eléctricas" } }, { @@ -2886,7 +3034,8 @@ "en": "charging station for cars", "nl": "oplaadstation voor elektrische auto's", "ca": "estació de càrrega per a cotxes", - "de": "Ladestation für Autos" + "de": "Ladestation für Autos", + "es": "punto de carga para coches" } } ], @@ -2900,6 +3049,7 @@ "nl": "Alle voertuigen", "ca": "Tots els tipus de vehicles", "de": "Ladestationen für alle Fahrzeugtypen", + "es": "Todos los tipos de vehículos", "fr": "Tous les types de véhicules", "it": "Tutti i tipi di veicoli" } @@ -2910,6 +3060,7 @@ "nl": "Oplaadpunten voor fietsen", "ca": "Punt de recàrrega per a bicicletes", "de": "Ladestationen für Fahrräder", + "es": "Punto de carga para bicicletas", "fr": "Station de recharge pour vélos", "it": "Stazione di ricarica per biciclette" }, @@ -2921,6 +3072,7 @@ "nl": "Oplaadpunten voor auto's", "ca": "Estació de càrrega per a cotxes", "de": "Ladestationen für Autos", + "es": "Punto de carga para coches", "fr": "Station de recharge pour voitures", "it": "Stazione di ricarica per auto" }, @@ -2942,6 +3094,7 @@ "nl": "Enkel werkende oplaadpunten", "ca": "Només estacions de recàrrega en funcionament", "de": "Nur Ladestationen in Betrieb", + "es": "Solo puntos de carga en funcionamiento", "fr": "Seulement les stations de recharge qui fonctionnent", "it": "Solo stazioni di ricarica funzionanti" }, @@ -2963,6 +3116,7 @@ "nl": "Alle types", "ca": "Tots els connectors", "de": "Alle Anschlüsse", + "es": "Todos los conectores", "it": "Tutti i connettori" } }, @@ -2971,7 +3125,8 @@ "en": "Has a
Schuko wall plug without ground pin (CEE7/4 type F)
connector", "nl": "Heeft een
Schuko stekker zonder aardingspin (CEE7/4 type F)
", "ca": "Té un connector
Schuko sense pin de terra (CEE7/4 tipus F)
", - "de": "Verfügt über einen
Schuko-Stecker ohne Erdungsstift (CEE7/4 Typ F)
" + "de": "Verfügt über einen
Schuko-Stecker ohne Erdungsstift (CEE7/4 Typ F)
", + "es": "Tiene un conector
Enchufe de pared Schuko sin pin de tierra (tipo CEE7/4 F)
" }, "osmTags": "socket:schuko~*" }, @@ -2980,7 +3135,8 @@ "en": "Has a
European wall plug with ground pin (CEE7/4 type E)
connector", "nl": "Heeft een
Europese stekker met aardingspin (CEE7/4 type E)
", "ca": "Té un connector
endoll de paret Europeu amb un pin de terra (CEE7/4 tipus F)
", - "de": "Verfügt über einen
europäischen Netzstecker mit Erdungsstift (CEE7/4 Typ E)
Anschluss" + "de": "Verfügt über einen
europäischen Netzstecker mit Erdungsstift (CEE7/4 Typ E)
Anschluss", + "es": "Tiene un conector
Enchufe de pared europeo con pin de tierra (tipo CEE7/4 E)
" }, "osmTags": "socket:typee~*" }, @@ -2989,7 +3145,8 @@ "en": "Has a
Chademo
connector", "nl": "Heeft een
Chademo
", "ca": "Té un connector
Chademo
", - "de": "Verfügt über einen
Chademo
Stecker" + "de": "Verfügt über einen
Chademo
Stecker", + "es": "Tiene un conector
Chademo
" }, "osmTags": "socket:chademo~*" }, @@ -2997,7 +3154,8 @@ "question": { "en": "Has a
Type 1 with cable (J1772)
connector", "nl": "Heeft een
Type 1 met kabel (J1772)
", - "de": "Verfügt über einen
Typ 1 (J1772)
Stecker mit Kabel" + "de": "Verfügt über einen
Typ 1 (J1772)
Stecker mit Kabel", + "es": "Tiene un conector
Tipo 1 con cable (J1772)
" }, "osmTags": "socket:type1_cable~*" }, @@ -3005,7 +3163,8 @@ "question": { "en": "Has a
Type 1 without cable (J1772)
connector", "nl": "Heeft een
Type 1 zonder kabel (J1772)
", - "de": "Verfügt über einen
Typ 1 (J1772)Stecker ohne Kabel
" + "de": "Verfügt über einen
Typ 1 (J1772)Stecker ohne Kabel
", + "es": "Tiene un conector
Tipo 1 sin cable (J1772)
" }, "osmTags": "socket:type1~*" }, @@ -3013,7 +3172,8 @@ "question": { "en": "Has a
Type 1 CCS (aka Type 1 Combo)
connector", "nl": "Heeft een
Type 1 CCS (ook gekend als Type 1 Combo)
", - "de": "Verfügt über einen
Typ 1 CCS (Typ 1 Combo)
Stecker" + "de": "Verfügt über einen
Typ 1 CCS (Typ 1 Combo)
Stecker", + "es": "Tiene un conector
Tipo 1 CCS (también conocido como Tipo 1 Combo)
" }, "osmTags": "socket:type1_combo~*" }, @@ -3021,7 +3181,8 @@ "question": { "en": "Has a
Tesla Supercharger
connector", "nl": "Heeft een
Tesla Supercharger
", - "de": "Verfügt über einen
Tesla Supercharger
Stecker" + "de": "Verfügt über einen
Tesla Supercharger
Stecker", + "es": "Tiene un conector
Tesla Supercharger
" }, "osmTags": "socket:tesla_supercharger~*" }, @@ -3029,7 +3190,8 @@ "question": { "en": "Has a
Type 2 (mennekes)
connector", "nl": "Heeft een
Type 2 (mennekes)
", - "de": "Hat einen
Typ 2 (Mennekes)
Anschluss" + "de": "Hat einen
Typ 2 (Mennekes)
Anschluss", + "es": "Tiene un conector
Tipo 2 (mennekes)
" }, "osmTags": "socket:type2~*" }, @@ -3037,7 +3199,8 @@ "question": { "en": "Has a
Type 2 CCS (mennekes)
connector", "nl": "Heeft een
Type 2 CCS (mennekes)
", - "de": "Hat einen
Typ 2 CCS (Mennekes)
Anschluss" + "de": "Hat einen
Typ 2 CCS (Mennekes)
Anschluss", + "es": "Tiene un conector
Tipo 2 CCS (mennekes)
" }, "osmTags": "socket:type2_combo~*" }, @@ -3046,7 +3209,8 @@ "en": "Has a
Type 2 with cable (mennekes)
connector", "nl": "Heeft een
Type 2 met kabel (J1772)
", "ca": "Té un connector
Tipus 2 amb cable (mennekes)
", - "de": "Hat einen
Typ 2 (Mennekes)
Anschluss mit Kabel" + "de": "Hat einen
Typ 2 (Mennekes)
Anschluss mit Kabel", + "es": "Tiene un conector
Tipo 2 con cable (mennekes)
" }, "osmTags": "socket:type2_cable~*" }, @@ -3054,7 +3218,8 @@ "question": { "en": "Has a
Tesla Supercharger CCS (a branded type2_css)
connector", "nl": "Heeft een
Tesla Supercharger CCS (een type2 CCS met Tesla-logo)
", - "de": "Hat einen
Tesla Supercharger CCS (Typ 2 CSS vonTesla)
Anschluss" + "de": "Hat einen
Tesla Supercharger CCS (Typ 2 CSS vonTesla)
Anschluss", + "es": "Tiene un conector
Tesla Supercharger CCS (un tipo2_css de marca)
" }, "osmTags": "socket:tesla_supercharger_ccs~*" }, @@ -3062,7 +3227,8 @@ "question": { "en": "Has a
Tesla Supercharger (destination)
connector", "nl": "Heeft een
Tesla Supercharger (destination)
", - "de": "Hat einen
Tesla Supercharger (Destination)
Anschluss" + "de": "Hat einen
Tesla Supercharger (Destination)
Anschluss", + "es": "Tiene un conector
Tesla Supercharger (destino)
" }, "osmTags": "socket:tesla_destination~*" }, @@ -3070,7 +3236,8 @@ "question": { "en": "Has a
Tesla supercharger (destination) (A Type 2 with cable branded as tesla)
connector", "nl": "Heeft een
Tesla supercharger (destination (Een Type 2 met kabel en Tesla-logo)
", - "de": "Hat einen
Tesla Supercharger (Destination) (Typ 2 von Tesla)
Anschluss mit Kabel" + "de": "Hat einen
Tesla Supercharger (Destination) (Typ 2 von Tesla)
Anschluss mit Kabel", + "es": "Tiene un conector
Supercargador Tesla (destino) (Un tipo 2 con cable de marca Tesla)
" }, "osmTags": "socket:tesla_destination~*" }, @@ -3078,7 +3245,8 @@ "question": { "en": "Has a
USB to charge phones and small electronics
connector", "nl": "Heeft een
USB om GSMs en kleine electronica op te laden
", - "de": "Hat einen
USB-Anschluss zum Aufladen von Telefonen und kleinen Elektrogeräten
" + "de": "Hat einen
USB-Anschluss zum Aufladen von Telefonen und kleinen Elektrogeräten
", + "es": "Tiene un conector
USB para cargar teléfonos y pequeños dispositivos electrónicos
" }, "osmTags": "socket:USB-A~*" }, @@ -3086,7 +3254,8 @@ "question": { "en": "Has a
Bosch Active Connect with 3 pins and cable
connector", "nl": "Heeft een
Bosch Active Connect met 3 pinnen aan een kabel
", - "de": "Hat einen
Bosch Active Connect Anschluss mit 3 Pins
und Kabel" + "de": "Hat einen
Bosch Active Connect Anschluss mit 3 Pins
und Kabel", + "es": "Tiene un conector
Bosch Active Connect con 3 pines y cable
" }, "osmTags": "socket:bosch_3pin~*" }, @@ -3094,7 +3263,8 @@ "question": { "en": "Has a
Bosch Active Connect with 5 pins and cable
connector", "nl": "Heeft een
Bosch Active Connect met 5 pinnen aan een kabel
", - "de": "Hat einen
Bosch Active Connect Anschluss mit 5 Pins
und Kabel" + "de": "Hat einen
Bosch Active Connect Anschluss mit 5 Pins
und Kabel", + "es": "Tiene un conector
Bosch Active Connect con 5 pines y cable
" }, "osmTags": "socket:bosch_5pin~*" }, @@ -3102,7 +3272,8 @@ "question": { "en": "Has a
BS1363 (Type G)
connector", "nl": "Heeft een
BS1363 (VK 3-pin)
", - "de": "Hat ein
BS1363 (Type G)
Anschluss" + "de": "Hat ein
BS1363 (Type G)
Anschluss", + "es": "Tiene un conector
BS1363 (Tipo G)
" }, "osmTags": "socket:bs1363~*" }, @@ -3110,7 +3281,8 @@ "question": { "en": "Has a
NEMA 5-15 (Type B)
connector", "nl": "Heeft een
NEMA 5-15 (VS 3-pin)
", - "de": "Hat ein
NEMA 5-15 (Type B)
Anschluss" + "de": "Hat ein
NEMA 5-15 (Type B)
Anschluss", + "es": "Tiene un conector
NEMA 5-15 (Tipo B)
" }, "osmTags": "socket:nema5_15~*" }, @@ -3118,7 +3290,8 @@ "question": { "en": "Has a
SEV 1011 T23 (Type J)
connector", "nl": "Heeft een
SEV 1011 T23 (Zwitserse 3-pin)
", - "de": "Hat ein
SEV 1011 T23 (Type J)
Anschluss" + "de": "Hat ein
SEV 1011 T23 (Type J)
Anschluss", + "es": "Tiene un conector
SEV 1011 T23 (Tipo J)
" }, "osmTags": "socket:sev1011_t23~*" }, @@ -3126,7 +3299,8 @@ "question": { "en": "Has a
AS3112 (Type I)
connector", "nl": "Heeft een
AS3112 (Australische 3-pin)
", - "de": "Hat ein
AS3112 (Type I)
Anschluss" + "de": "Hat ein
AS3112 (Type I)
Anschluss", + "es": "Tiene un conector
AS3112 (Tipo I)
" }, "osmTags": "socket:as3112~*" }, @@ -3134,7 +3308,8 @@ "question": { "en": "Has a
NEMA 5-20 (Type B)
connector", "nl": "Heeft een
NEMA 5-20 (VS 3-pin)
", - "de": "Hat ein
NEMA 5-20 (Type B)
Anschluss" + "de": "Hat ein
NEMA 5-20 (Type B)
Anschluss", + "es": "Tiene un conector
NEMA 5-20 (Tipo B)
" }, "osmTags": "socket:nema_5_20~*" } @@ -3348,4 +3523,4 @@ }, "neededChangesets": 10 } -} +} \ No newline at end of file diff --git a/assets/layers/cinema/cinema.json b/assets/layers/cinema/cinema.json index 3fdebc365..72df6701e 100644 --- a/assets/layers/cinema/cinema.json +++ b/assets/layers/cinema/cinema.json @@ -2,11 +2,13 @@ "id": "cinema", "name": { "en": "Cinema", - "de": "Kino" + "de": "Kino", + "es": "Cine" }, "description": { "en": " A place showing movies (films), generally open to the public for a fee. Commonly referred to as a movie theater in the US", - "de": " Ein Ort, an dem Filme gezeigt werden, die der Öffentlichkeit gegen Gebühr zugänglich sind" + "de": " Ein Ort, an dem Filme gezeigt werden, die der Öffentlichkeit gegen Gebühr zugänglich sind", + "es": " Un lugar donde se proyectan películas (cine), generalmente abierto al público por una tarifa Comúnmente conocido como cine en Estados Unidos" }, "source": { "osmTags": "amenity=cinema" @@ -23,7 +25,8 @@ ], "render": { "en": "Cinema", - "de": "Kino" + "de": "Kino", + "es": "Cine" } }, "pointRendering": [ @@ -53,21 +56,24 @@ "id": "cinema_type", "question": { "en": "What type of cinema is this?", - "de": "Um welche Art von Kino handelt es sich?" + "de": "Um welche Art von Kino handelt es sich?", + "es": "¿Qué tipo de cine es este?" }, "mappings": [ { "if": "cinema=", "then": { "en": "This is a normal cinema showing movies for all ages", - "de": "Dies ist ein normales Kino, das Filme für alle Altersgruppen zeigt" + "de": "Dies ist ein normales Kino, das Filme für alle Altersgruppen zeigt", + "es": "Este es un cine normal que proyecta películas para todas las edades" } }, { "if": "cinema=erotic", "then": { "en": "This is an erotic cinema showing adult movies", - "de": "Dies ist ein Sex-Kino, das Erwachsenenfilme zeigt" + "de": "Dies ist ein Sex-Kino, das Erwachsenenfilme zeigt", + "es": "Este es un cine erótico que proyecta películas para adultos" } } ] diff --git a/assets/layers/climbing/climbing.json b/assets/layers/climbing/climbing.json index 730074f3a..34133a701 100644 --- a/assets/layers/climbing/climbing.json +++ b/assets/layers/climbing/climbing.json @@ -5,7 +5,8 @@ "nl": "Een dummy-laag die tagrenderings bevat, gedeeld over de verschillende klimsport lagen", "de": "Eine Dummy-Ebene, die Tagrenderings enthält, die von den Kletterebenen gemeinsam genutzt werden", "cs": "Falešná vrstva, která obsahuje tagrenderingy sdílené mezi lezeckými vrstvami", - "ca": "Una capa fictícia que conté renderització d'etiquetes compartides entre les capes d'escalada" + "ca": "Una capa fictícia que conté renderització d'etiquetes compartides entre les capes d'escalada", + "es": "Una capa ficticia que contiene representaciones de etiquetas, compartidas entre las capas de escalada" }, "source": "special:library", "minzoom": 18, @@ -23,7 +24,8 @@ "ru": "Есть ли (неофициальный) веб-сайт с более подробной информацией (напр., topos)?", "fr": "Existe-t’il un site avec plus d’informations (ex : topographie) ?", "it": "C’è un sito web (anche non ufficiale) con qualche informazione in più (ad es. topografie)?", - "cs": "Existuje (neoficiální) webová stránka s více informacemi (např. topos)?" + "cs": "Existuje (neoficiální) webová stránka s více informacemi (např. topos)?", + "es": "¿Hay una página web (no oficial) con más información (p. ej., croquis)?" }, "condition": { "and": [ @@ -48,7 +50,7 @@ "ja": "ルートの長さは平均で{canonical(climbing:length)}です", "fr": "Les voies font {canonical(climbing:length)} de long en moyenne", "it": "Le vie sono lunghe mediamente {canonical(climbing:length)}", - "es": "Las rutas miden {canonical(climbing:length)} de media", + "es": "Las vías tienen una longitud promedio de {canonical(climbing:length)}", "ca": "Les rutes mesuren {canonical(climbing:length)} de mitja", "cs": "Cesty jsou {canonical(climbing:length)} v průměru dlouhé" }, @@ -59,7 +61,7 @@ "ja": "ルートの(平均)長さはメートル単位でいくつですか?", "fr": "Quelle est la longueur moyenne des voies en mètres ?", "it": "Quale è la lunghezza (media) delle vie in metri?", - "es": "¿Cual es la longitud (media) de las rutas en metros?", + "es": "¿Cuál es la longitud (promedio) de las vías en metros?", "ca": "Quina és la longitud (mitjana) de les rutes en metres?", "cs": "Jaká je (průměrná) délka tras v metrech?" }, @@ -77,7 +79,8 @@ "ja": "ここで一番簡単なルートのレベルは、フランスのランク評価システムで何ですか?", "fr": "Quel est le niveau de la voie la plus simple selon la classification franco-belge ?", "it": "Qual è il livello della via più facile qua, secondo il sistema di classificazione francese?", - "cs": "Jaký je stupeň nejjednodušší trasy podle francouzského klasifikačního systému?" + "cs": "Jaký je stupeň nejjednodušší trasy podle francouzského klasifikačního systému?", + "es": "¿Cuál es el grado de la vía más fácil aquí, según el sistema de clasificación francés?" }, "render": { "de": "Die leichteste Route hat hier die Schwierigkeit {climbing:grade:french:min} (französisch/belgisches System)", @@ -86,7 +89,8 @@ "ja": "フランス/ベルギーのランク評価システムでは、最小の難易度は{climbing:grade:french:min}です", "fr": "La difficulté minimale est {climbing:grade:french:min} selon la classification franco-belge", "it": "Il minimo livello di difficoltà è {climbing:grade:french:min} secondo il sistema francese/belga", - "cs": "Nejnižší stupeň je {climbing:grade:french:min} podle francouzského/belgického systému" + "cs": "Nejnižší stupeň je {climbing:grade:french:min} podle francouzského/belgického systému", + "es": "El grado más bajo es {climbing:grade:french:min} según el sistema francés/belga" }, "freeform": { "key": "climbing:grade:french:min" @@ -101,7 +105,8 @@ "ja": "フランスのランク評価によると、ここで一番難しいルートのレベルはどれくらいですか?", "fr": "Quel est le niveau de la voie la plus difficile selon la classification franco-belge ?", "it": "Qual è il livello della via più difficile qua, secondo il sistema di classificazione francese?", - "cs": "Jaká je zde trasa nejvyššího stupně podle francouzského klasifikačního systému?" + "cs": "Jaká je zde trasa nejvyššího stupně podle francouzského klasifikačního systému?", + "es": "¿Cuál es la vía de mayor grado aquí, según el sistema de clasificación francés?" }, "render": { "de": "Die schwierigste Route hat hier die Schwierigkeitsstufe {climbing:grade:french:max} (französisch/belgisches System)", @@ -110,7 +115,8 @@ "ja": "フランス/ベルギーのランク評価システムでは、最大の難易度は{climbing:grade:french:max}です", "fr": "La difficulté maximale est {climbing:grade:french:max} selon la classification franco-belge", "it": "Il massimo livello di difficoltà è {climbing:grade:french:max} secondo il sistema francese/belga", - "cs": "Nejvyšší stupeň je {climbing:grade:french:max} podle francouzského/belgického systému" + "cs": "Nejvyšší stupeň je {climbing:grade:french:max} podle francouzského/belgického systému", + "es": "El grado más alto es {climbing:grade:french:max} según el sistema francés/belga" }, "freeform": { "key": "climbing:grade:french:max" @@ -140,7 +146,8 @@ "fr": "L’escalade de bloc est-elle possible ici ?", "it": "È possibile praticare ‘bouldering’ qua?", "ca": "És possible fer escalda en bloc aquí?", - "cs": "Je zde možný bouldering?" + "cs": "Je zde možný bouldering?", + "es": "¿Es posible el búlder aquí?" }, "mappings": [ { @@ -154,7 +161,8 @@ "fr": "L’escalade de bloc est possible", "it": "L’arrampicata su massi è possibile qua", "ca": "Aquí és possible l'escalada en bloc", - "cs": "Bouldering je zde možný" + "cs": "Bouldering je zde možný", + "es": "El búlder es posible aquí" } }, { @@ -168,7 +176,8 @@ "fr": "L’escalade de bloc n’est pas possible", "it": "L’arrampicata su massi non è possibile qua", "ca": "Aquí no és possible l'escalada en bloc", - "cs": "Bouldering zde není možný" + "cs": "Bouldering zde není možný", + "es": "El búlder no es posible aquí" } }, { @@ -181,7 +190,8 @@ "fr": "L’escalade de bloc est possible, mais il n’y a que quelques problèmes", "it": "L’arrampicata su massi è possibile anche se su poche vie", "ca": "L'escalada en bloc és possible, tot i que només hi ha unes poques rutes", - "cs": "Bouldering je možný, i když je zde jen několik problémů" + "cs": "Bouldering je možný, i když je zde jen několik problémů", + "es": "El búlder es posible, aunque solo hay algunos problemas" } }, { @@ -194,7 +204,8 @@ "fr": "Il y a {climbing:boulder} problèmes de bloc", "it": "Sono presenti {climbing:boulder} vie di arrampicata su massi", "ca": "Hi han {climbing:boulder} problemes d'escalada en bloc", - "cs": "Existují {climbing:boulder} boulderové problémy" + "cs": "Existují {climbing:boulder} boulderové problémy", + "es": "Hay {climbing:boulder} problemas de búlder" }, "hideInAnswer": true } @@ -209,7 +220,8 @@ "ja": "ここでtoprope登坂はできますか?", "fr": "Est-il possible d’escalader à la moulinette ?", "it": "È possibile arrampicarsi con la corda dall’alto qua?", - "cs": "Je zde možné lezení po laně?" + "cs": "Je zde možné lezení po laně?", + "es": "¿Es posible la escalada con cuerda desde arriba aquí?" }, "mappings": [ { @@ -221,7 +233,8 @@ "ja": "ここでToprope登坂ができます", "fr": "L’escalade à la moulinette est possible", "it": "È possibile arrampicarsi con moulinette qua", - "cs": "Lezení po laně je zde možné" + "cs": "Lezení po laně je zde možné", + "es": "La escalada con cuerda desde arriba es posible aquí" } }, { @@ -233,7 +246,8 @@ "ja": "ここではToprope登坂はできません", "fr": "L’escalade à la moulinette n’est pas possible", "it": "Non è possibile arrampicarsi con moulinette qua", - "cs": "Lezení po laně zde není možné" + "cs": "Lezení po laně zde není možné", + "es": "La escalada con cuerda desde arriba no es posible aquí" } }, { @@ -245,7 +259,8 @@ "ja": "{climbing:toprope} 登坂ルートがある", "fr": "{climbing:toprope} voies sont équipées de moulinettes", "it": "Sono presenti {climbing:toprope} vie con moulinette", - "cs": "Je zde {climbing:toprope} tras pro lezení na laně" + "cs": "Je zde {climbing:toprope} tras pro lezení na laně", + "es": "Hay {climbing:toprope} vías de escalada con cuerda desde arriba" }, "hideInAnswer": true } @@ -259,7 +274,8 @@ "nl": "Is het mogelijk om hier te sportklimmen/voorklimmen op reeds aangebrachte haken?", "ja": "ここでは固定アンカー式のスポーツクライミングはできますか?", "it": "È possibile arrampicarsi qua con ancoraggi fissi?", - "cs": "Je zde možné sportovní lezení na fixní kotvy?" + "cs": "Je zde možné sportovní lezení na fixní kotvy?", + "es": "¿Es posible la escalada deportiva aquí en anclajes fijos?" }, "mappings": [ { @@ -273,7 +289,8 @@ "it": "L’arrampicata sportiva è possibile qua", "hu": "Itt lehetőség van sportmászásra", "fr": "De l’escalade est possible ici", - "cs": "Sportovní lezení je zde možné" + "cs": "Sportovní lezení je zde možné", + "es": "La escalada deportiva es posible aquí" } }, { @@ -287,7 +304,8 @@ "it": "L’arrampicata sportiva non è possibile qua", "hu": "Itt nincs lehetőség sportmászásra", "fr": "L’escalade est impossible ici", - "cs": "Sportovní lezení zde není možné" + "cs": "Sportovní lezení zde není možné", + "es": "La escalada deportiva no es posible aquí" } }, { @@ -298,7 +316,8 @@ "nl": "Er zijn hier {climbing:sport} sportklimroutes/voorklimroutes", "ja": "スポーツクライミングの {climbing:sport} ルートがある", "it": "Sono presenti {climbing:sport} vie di arrampicata sportiva", - "cs": "Existují {climbing:sport} sportovních lezeckých cest" + "cs": "Existují {climbing:sport} sportovních lezeckých cest", + "es": "Hay {climbing:sport} vías de escalada deportiva" }, "hideInAnswer": true } @@ -312,7 +331,8 @@ "nl": "Is het mogelijk om hier traditioneel te klimmen? ", "ja": "伝統的な登山はここで可能ですか?", "it": "È possibile arrampicarsi in maniera tradizionale qua?", - "cs": "Je zde možné tradiční lezení?" + "cs": "Je zde možné tradiční lezení?", + "es": "¿Es posible la escalada tradicional aquí?" }, "questionHint": { "en": "Using your own gear, e.g. chocks", @@ -320,7 +340,8 @@ "nl": "Dit is klimmen met klemblokjes en friends", "ja": "例えば、チョックのような独自のギアを使用して", "it": "usando attrezzi propri, ad es. dadi", - "cs": "Pomocí vlastního zařízení, např. klíny" + "cs": "Pomocí vlastního zařízení, např. klíny", + "es": "Usando tu propio equipo, p. ej., fisureros" }, "mappings": [ { @@ -331,7 +352,8 @@ "nl": "Traditioneel klimmen kan hier", "ja": "ここでは伝統的な登山が可能です", "it": "L’arrampicata tradizionale è possibile qua", - "cs": "Zde je možné provozovat tradiční lezení" + "cs": "Zde je možné provozovat tradiční lezení", + "es": "La escalada tradicional es posible aquí" } }, { @@ -342,7 +364,8 @@ "nl": "Traditioneel klimmen kan hier niet", "ja": "伝統的な登山はここではできない", "it": "L’arrampicata tradizionale non è possibile qua", - "cs": "Tradiční lezení zde není možné" + "cs": "Tradiční lezení zde není možné", + "es": "La escalada tradicional no es posible aquí" } }, { @@ -353,7 +376,8 @@ "nl": "Er zijn hier {climbing:traditional} traditionele klimroutes", "ja": "{climbing:traditional} の伝統的な登山ルートがある", "it": "Sono presenti {climbing:traditional} vie di arrampicata tradizionale", - "cs": "Existují {climbing:traditional} tradiční lezecké cesty" + "cs": "Existují {climbing:traditional} tradiční lezecké cesty", + "es": "Hay {climbing:traditional} vías de escalada tradicional" }, "hideInAnswer": true } @@ -365,12 +389,14 @@ "en": "How many bolts do routes in {title()} have at most?", "de": "Wie viele Haken haben die Routen in {title()} maximal?", "nl": "Wat is het maximum aantal bouten in routes ban {title()}?", - "cs": "Kolik šroubů na trasu {title()} je potřeba?" + "cs": "Kolik šroubů na trasu {title()} je potřeba?", + "es": "¿Cuántos parabolts tienen como máximo las vías en {title()}?" }, "render": { "en": "The sport climbing routes here have at most {climbing:bolts:max} bolts.
This is without relays and indicates how much quickdraws a climber needs
", "de": "Die Sportkletterrouten hier haben maximal {climbing:bolts:max} Haken.
Dies ist ohne Relais und gibt an, wie viel Schnellspanner ein Kletterer braucht
", - "nl": "De sportklimroutes hebben maximaal {climbing:bolts:max} bouten.
Hierbij worden relays niet meegteld. Dit geeft aan hoeveel klimsetjes een klimmer nodig heeft
" + "nl": "De sportklimroutes hebben maximaal {climbing:bolts:max} bouten.
Hierbij worden relays niet meegteld. Dit geeft aan hoeveel klimsetjes een klimmer nodig heeft
", + "es": "Las vías de escalada deportiva aquí tienen como máximo {climbing:bolts:max} parabolts.
Esto es sin reuniones e indica cuántos cintas exprés necesita un escalador
" }, "freeform": { "key": "climbing:bolts:max", @@ -385,7 +411,7 @@ "id": "fee", "question": { "en": "Is a fee required to climb here?", - "es": "¿Se requiere una tasa para escalar aquí?", + "es": "¿Se requiere una tarifa para escalar aquí?", "de": "Ist das Klettern hier gebührenpflichtig?", "nl": "Moet men betalen om hier te klimmen?", "fr": "Est-ce que la grimpe sur ce site est payante ?", @@ -395,7 +421,7 @@ "render": { "en": "A fee of {charge} should be paid for climbing here", "de": "Zum Klettern wird eine Gebühr von {charge} erhoben", - "es": "Se debe de pagar una tasa de {charge} para escalar aquí", + "es": "Se debe pagar una tarifa de {charge} para escalar aquí", "nl": "Men moet {charge} betalen om hier te klimmen", "fr": "Une taxe de {charge} doit être payée pour grimper ici", "ca": "S'ha de pagar una tarifa de {charge} per a escalar aquí", @@ -417,7 +443,7 @@ "then": { "en": "Climbing here is free of charge", "de": "Das Klettern ist hier kostenlos", - "es": "La escalada es gratis", + "es": "Escalar aquí es gratuito", "nl": "Hier klimmen is gratis", "fr": "Grimper ici est gratuit", "ca": "L'escalada en bloc aquí és gratuïta", @@ -433,7 +459,7 @@ }, "then": { "en": "Paying a fee is required to climb here", - "es": "Hay que pagar una tasa para escalar aquí", + "es": "Se requiere pagar una tarifa para escalar aquí", "de": "Zum Klettern ist eine Gebühr zu zahlen", "nl": "Men moet betalen om hier te klimmen", "fr": "Il faut payer une taxe pour grimper ici", diff --git a/assets/layers/climbing_area/climbing_area.json b/assets/layers/climbing_area/climbing_area.json index 569c646bf..3ff2ead8c 100644 --- a/assets/layers/climbing_area/climbing_area.json +++ b/assets/layers/climbing_area/climbing_area.json @@ -8,14 +8,16 @@ "fr": "Opportunité d’escalade", "it": "Opportunità di arrampicata", "ca": "Oportunitats d'escalada", - "cs": "Lezecké příležitosti" + "cs": "Lezecké příležitosti", + "es": "Posibilidades de escalada" }, "description": { "en": "An area where climbing is possible, e.g. a crag, site, boulder, … Contains aggregation of routes", "de": "Ein Gebiet, in dem Klettern möglich ist, z. B. ein Felsen, ein Klettergarten, eine Boulderhalle, … Enthält eine Sammlung von Routen", "nl": "Een gebied waar klimmen mogelijk is, bv. een klimsite, een bolder of klimrots,…", "ca": "Una àrea on l'escalada és possible, p.e. una penya, lloc, bloc, … Conté l'agregació de rutes", - "cs": "Oblast, kde je možné lezení, např. skalisko, místo, balvan, … Obsahuje agregaci cest" + "cs": "Oblast, kde je možné lezení, např. skalisko, místo, balvan, … Obsahuje agregaci cest", + "es": "Un área donde es posible escalar, p. ej., una pared, un sitio, un bloque de roca, ... Contiene una agregación de vías" }, "source": { "osmTags": { @@ -54,7 +56,8 @@ "fr": "Opportunité d’escalade", "it": "Opportunità di arrampicata", "ca": "Oportunitat d'escalada", - "cs": "Příležitost k lezení" + "cs": "Příležitost k lezení", + "es": "Posibilidad de escalada" }, "mappings": [ { @@ -65,7 +68,8 @@ "it": "Muro da arrampicata {name}", "de": "Klettergarten {name}", "nl": "Klimrots of klimzone {name}", - "cs": "Lezecká cesta {name}" + "cs": "Lezecká cesta {name}", + "es": "Pared de escalada {name}" } }, { @@ -86,7 +90,8 @@ "fr": "Zone d’escalade {name}", "de": "Klettergebiet {name}", "it": "Area di arrampicata {name}", - "cs": "Lezecká oblast {name}" + "cs": "Lezecká oblast {name}", + "es": "Área de escalada {name}" } }, { @@ -103,7 +108,8 @@ "de": "Klettergebiet", "it": "Sito di arrampicata", "ca": "Llocs d'escalada", - "cs": "Lezecká lokalita" + "cs": "Lezecká lokalita", + "es": "Sitio de escalada" } }, { @@ -115,7 +121,8 @@ "de": "Klettereinrichtung {name}", "it": "Opportunità di arrampicata {name}", "ca": "Oportunitat d'escalada {name}", - "cs": "Lezecká příležitost {name}" + "cs": "Lezecká příležitost {name}", + "es": "Posibilidad de escalada {name}" } } ] @@ -158,7 +165,8 @@ "fr": "une opportunité d’escalade", "it": "una opportunità di arrampicata", "ca": "una oportuinitat d'escalada", - "cs": "lezecká příležitost" + "cs": "lezecká příležitost", + "es": "una posibilidad de escalada" }, "description": { "nl": "Een klimgelegenheid", @@ -169,7 +177,8 @@ "fr": "Opportunité d’escalade", "it": "Un’opportunità di arrampicata", "ca": "Una oportunitat d'escalada", - "cs": "Lezecká příležitost" + "cs": "Lezecká příležitost", + "es": "Una posibilidad de escalada" } } ], @@ -186,7 +195,8 @@ "de": "

Längenübersicht

{histogram(_length_hist)}", "it": "

Riassunto della lunghezza

{histogram(_length_hist)}", "nl": "

Overzicht van lengtes

{histogram(_length_hist)}", - "cs": "

Přehled délky

{histogram(_length_hist)}" + "cs": "

Přehled délky

{histogram(_length_hist)}", + "es": "

Resumen de longitudes

{histogram(_length_hist)}" }, "condition": "_length_hist!~\\[\\]", "id": "Contained routes length hist" @@ -198,7 +208,8 @@ "de": "

Schwierigkeitsübersicht

{histogram(_difficulty_hist)}", "it": "

Riassunto delle difficoltà

{histogram(_difficulty_hist)}", "nl": "

Overzicht van moeilijkheidsgraden{histogram(_difficulty_hist)}", - "cs": "

Přehled hodnocení

{histogram(_difficulty_hist)}" + "cs": "

Přehled hodnocení

{histogram(_difficulty_hist)}", + "es": "

Resumen de grados

{histogram(_difficulty_hist)}" }, "condition": "_difficulty_hist!~\\[\\]", "id": "Contained routes hist" @@ -211,7 +222,8 @@ "de": "

Enthält {_contained_climbing_routes_count} Routen

    {_contained_climbing_routes}
", "nl": "

Bevat {_contained_climbing_routes_count} routes

    {_contained_climbing_routes}
", "ca": "

Conté {_contained_climbing_routes_count} rutes

    {_contained_climbing_routes}
", - "cs": "

Obsahuje {_contained_climbing_routes_count} tras

    {_contained_climbing_routes}
" + "cs": "

Obsahuje {_contained_climbing_routes_count} tras

    {_contained_climbing_routes}
", + "es": "

Contiene {_contained_climbing_routes_count} vías

    {_contained_climbing_routes}
" }, "condition": "_contained_climbing_routes~*", "id": "Contained_climbing_routes" @@ -228,7 +240,8 @@ "ja": "{name}", "it": "{name}", "eu": "{name}", - "cs": "{name}" + "cs": "{name}", + "es": "{name}" }, "question": { "en": "What is the name of this climbing opportunity?", @@ -237,7 +250,8 @@ "ja": "この登坂教室の名前は何ですか?", "fr": "Quel est le nom de ce site ?", "it": "Qual è il nome di questa opportunità di arrampicata?", - "cs": "Jak se jmenuje tato lezecká příležitost?" + "cs": "Jak se jmenuje tato lezecká příležitost?", + "es": "¿Cuál es el nombre de esta posibilidad de escalada?" }, "freeform": { "key": "name" @@ -257,7 +271,8 @@ "ja": "この登坂教室には名前がついていない", "fr": "Ce site n’a pas de nom", "it": "Questa opportunità di arrampicata non ha un nome", - "cs": "Tato lezecká příležitost nemá jméno" + "cs": "Tato lezecká příležitost nemá jméno", + "es": "Esta posibilidad de escalada no tiene nombre" } } ], @@ -275,7 +290,8 @@ "it": "Un masso per arrampicata (una singola roccia o falesia con una o poche vie di arrampicata che possono essere scalate in sicurezza senza una corda)", "nl": "Een klimboulder - een enkele rots of klif met één of enkele klimroutes die veilig zonder touw kunnen worden beklommen", "ca": "Una roca d'escalada: una única roca o penya-segat amb una o unes quantes vies d'escalada que es poden escalar amb seguretat sense corda", - "cs": "Lezecký balvan - jediná skála nebo útes s jednou nebo několika lezeckými cestami, na které lze bezpečně vylézt bez lana" + "cs": "Lezecký balvan - jediná skála nebo útes s jednou nebo několika lezeckými cestami, na které lze bezpečně vylézt bez lana", + "es": "Un bloque de escalada - una sola roca o acantilado con una o pocas vías de escalada que se pueden escalar de forma segura sin cuerda" } }, { @@ -286,14 +302,16 @@ "it": "Un muro da arrampicata (un singolo masso o falesia con almeno qualche via per arrampicata)", "de": "Ein Kletterfelsen - ein einzelner Fels oder eine Klippe mit mindestens einigen Kletterrouten", "nl": "Een klimzone - een enkele rots of klif met klimroutes", - "cs": "Lezecká skála - jediná skála nebo útes s alespoň několika lezeckými cestami" + "cs": "Lezecká skála - jediná skála nebo útes s alespoň několika lezeckými cestami", + "es": "Una pared de escalada - una sola roca o acantilado con al menos algunas vías de escalada" } }, { "if": "climbing=area", "then": { "en": "A climbing area with one or more climbing crags and/or boulders", - "de": "Ein Klettergebiet mit einem oder meheren Kletter- und/oder Boulderfelsen" + "de": "Ein Klettergebiet mit einem oder meheren Kletter- und/oder Boulderfelsen", + "es": "Un área de escalada con una o más paredes y/o bloques de escalada" } } ], @@ -307,7 +325,8 @@ "it": "Qual è il tipo di roccia qua?", "nl": "Wat is de rotssoort?", "ca": "Quin és el tipus de roca aquí?", - "cs": "Jaký je zde typ skály?" + "cs": "Jaký je zde typ skály?", + "es": "¿Cuál es el tipo de roca aquí?" }, "render": { "en": "The rock type is {rock}", @@ -316,7 +335,8 @@ "it": "Il tipo di roccia è {rock}", "nl": "De rotssoort is {rock}", "ca": "El tipus de roca és {rock}", - "cs": "Typ skály je {rock}" + "cs": "Typ skály je {rock}", + "es": "El tipo de roca es {rock}" }, "freeform": { "key": "rock" @@ -334,7 +354,8 @@ "eu": "Kareharria", "ca": "Calcària", "cs": "Vápenec", - "pl": "Wapień" + "pl": "Wapień", + "es": "Caliza" } } ], diff --git a/assets/layers/climbing_club/climbing_club.json b/assets/layers/climbing_club/climbing_club.json index 4ef258d4d..949ba281d 100644 --- a/assets/layers/climbing_club/climbing_club.json +++ b/assets/layers/climbing_club/climbing_club.json @@ -12,7 +12,8 @@ "it": "Club di arrampicata", "hu": "Mászóegyesület", "ca": "Club d'escalada", - "cs": "Lezecký klub" + "cs": "Lezecký klub", + "es": "Club de escalada" }, "description": { "de": "Ein Kletterverein oder -organisation", @@ -25,7 +26,8 @@ "it": "Un club o associazione di arrampacata", "hu": "Mászóegyesület vagy -szervezet", "ca": "Un club d'escalada o organització", - "cs": "Lezecký klub nebo organizace" + "cs": "Lezecký klub nebo organizace", + "es": "Un club u organización de escalada" }, "source": { "osmTags": { @@ -58,7 +60,8 @@ "fr": "Club d’escalade", "it": "Club di arrampicata", "ca": "Club d'escalada", - "cs": "Lezecký klub" + "cs": "Lezecký klub", + "es": "Club de escalada" }, "mappings": [ { @@ -72,7 +75,8 @@ "fr": "Association d’escalade", "it": "Associazione di arrampicata", "hu": "Mászószervezet", - "cs": "Nevládní lezecká organizace" + "cs": "Nevládní lezecká organizace", + "es": "ONG de escalada" } } ] @@ -124,7 +128,8 @@ "it": "una club di arrampicata", "hu": "Mászóegyesület", "ca": "un club d'escalada", - "cs": "lezecký klub" + "cs": "lezecký klub", + "es": "un club de escalada" }, "description": { "de": "Ein Kletterverein", @@ -137,7 +142,8 @@ "it": "Un club di arrampicata", "hu": "Egy mászóegyesület", "ca": "Un club d'escalada", - "cs": "Lezecký klub" + "cs": "Lezecký klub", + "es": "Un club de escalada" } }, { @@ -153,7 +159,8 @@ "fr": "une association d’escalade", "it": "una associazione di arrampicata", "hu": "Mászószervezet", - "cs": "lezecká nezisková organizace" + "cs": "lezecká nezisková organizace", + "es": "una ONG de escalada" }, "description": { "de": "Eine Organisation, die sich mit dem Klettern beschäftigt", @@ -163,7 +170,8 @@ "fr": "Une association d’escalade", "it": "Un’associazione che ha a che fare con l’arrampicata", "hu": "Mászással foglalkozó civil szervezet", - "cs": "Nevládní organizace působící v oblasti lezení" + "cs": "Nevládní organizace působící v oblasti lezení", + "es": "Una ONG que trabaja en torno a la escalada" } } ], @@ -181,7 +189,8 @@ "zh_Hant": "{name}", "it": "{name}", "hu": "{name}", - "cs": "{name}" + "cs": "{name}", + "es": "{name}" }, "question": { "en": "What is the name of this climbing club or NGO?", @@ -191,7 +200,8 @@ "fr": "Quel est le nom du club ou de l’association ?", "it": "Qual è il nome di questo club o associazione di arrampicata?", "hu": "Mi a neve ennek a mászóegyesületnek vagy szervezetnek?", - "cs": "Jak se jmenuje tento lezecký klub nebo nevládní organizace?" + "cs": "Jak se jmenuje tento lezecký klub nebo nevládní organizace?", + "es": "¿Cuál es el nombre de este club u ONG de escalada?" }, "freeform": { "key": "name" diff --git a/assets/layers/climbing_gym/climbing_gym.json b/assets/layers/climbing_gym/climbing_gym.json index 2a7d5f091..baa850f4a 100644 --- a/assets/layers/climbing_gym/climbing_gym.json +++ b/assets/layers/climbing_gym/climbing_gym.json @@ -9,7 +9,8 @@ "it": "Palestre di arrampicata", "ru": "Комплексы скалолазания", "ca": "Gimnasos d'escalada", - "cs": "Lezecké tělocvičny" + "cs": "Lezecké tělocvičny", + "es": "Gimnasios de escalada" }, "description": { "de": "Eine Kletterhalle", @@ -20,7 +21,8 @@ "it": "Una palestra di arrampicata", "ru": "Комплекс скалолазания", "ca": "Un gimnàs d'escalada", - "cs": "Lezecká tělocvična" + "cs": "Lezecká tělocvična", + "es": "Un gimnasio de escalada" }, "source": { "osmTags": { @@ -40,7 +42,8 @@ "fr": "Salle d’escalade", "it": "Palestra di arrampicata", "ru": "Комплекс скалолазания", - "cs": "Lezecká tělocvična" + "cs": "Lezecká tělocvična", + "es": "Gimnasio de escalada" }, "mappings": [ { @@ -52,7 +55,9 @@ "ja": "クライミングジム{name}", "fr": "Salle d’escalade {name}", "it": "Palestra di arrampicata {name}", - "cs": "Lezecká tělocvična {name}" + "cs": "Lezecká tělocvična {name}", + "es": "Gimnasio de escalada {name}", + "uk": "Скеледром {name}" } } ] @@ -96,7 +101,8 @@ "en": "Climbing gym", "nl": "Klimzaal", "de": "Kletterhalle", - "cs": "Lezecká tělocvična" + "cs": "Lezecká tělocvična", + "es": "Gimnasio de escalada" }, "tags": [ "leisure=sports_centre", @@ -117,7 +123,9 @@ "ja": "このクライミングジムは何という名前ですか?", "fr": "Quel est le nom de la salle d’escalade ?", "it": "Qual è il nome di questa palestra di arrampicata?", - "cs": "Jak se jmenuje tato lezecká tělocvična?" + "cs": "Jak se jmenuje tato lezecká tělocvična?", + "es": "¿Cuál es el nombre de este gimnasio de escalada?", + "uk": "Як називається цей скеледром?" }, "freeform": { "key": "name" @@ -144,7 +152,8 @@ "fr": "Peut-on louer des chaussures d'escalade ici ?", "de": "Kann man hier Kletterschuhe ausleihen?", "pl": "Czy można tutaj wypożyczyć buty do wspinaczki?", - "cs": "Lze si zde půjčit lezeckou obuv?" + "cs": "Lze si zde půjčit lezeckou obuv?", + "es": "¿Se pueden alquilar zapatillas de escalada aquí?" }, "mappings": [ { @@ -159,7 +168,8 @@ "nl": "Klimschoenen kunnen hier gratis geleend worden", "fr": "Les chaussures d'escalade peuvent être empruntées gratuitement ici", "de": "Kletterschuhe können hier kostenlos ausgeliehen werden", - "cs": "Lezeckou obuv si můžete zdarma vypůjčit zde" + "cs": "Lezeckou obuv si můžete zdarma vypůjčit zde", + "es": "Se pueden pedir prestadas zapatillas de escalada gratis aquí" }, "addExtraTags": [ "service:climbing_shoes:rental:charge=" @@ -177,7 +187,8 @@ "nl": "Klimschoenen kunnen hier gehuurd worden aan {service:climbing_shoes:rental:charge}", "fr": "Les chaussures d'escalade peuvent être louées ici pour {service:climbing_shoes:rental:charge}", "de": "Kletterschuhe können hier ausgeliehen werden für {service:climbing_shoes:rental:charge}", - "cs": "Lezeckou obuv si můžete zapůjčit zde za {service:climbing_shoes:rental:charge}" + "cs": "Lezeckou obuv si můžete zapůjčit zde za {service:climbing_shoes:rental:charge}", + "es": "Se pueden alquilar zapatillas de escalada aquí por {service:climbing_shoes:rental:charge}" }, "hideInAnswer": true }, @@ -194,7 +205,8 @@ "fr": "Les chaussures d'escalade peuvent être louées ici", "de": "Kletterschuhe können hier ausgeliehen werden", "pl": "Można tutaj wypożyczyć buty do wspinaczki", - "cs": "Lezeckou obuv si můžete půjčit zde" + "cs": "Lezeckou obuv si můžete půjčit zde", + "es": "Se pueden alquilar zapatillas de escalada aquí" }, "addExtraTags": [ "service:climbing_shoes:rental:charge=" @@ -208,7 +220,8 @@ "fr": "Les chaussures d'escalade ne peuvent pas être louées ici", "de": "Kletterschuhe können hier nicht ausgeliehen werden", "pl": "Nie można wypożyczyć tutaj butów do wspinaczki", - "cs": "Lezeckou obuv si zde nemůžete zapůjčit" + "cs": "Lezeckou obuv si zde nemůžete zapůjčit", + "es": "No se pueden alquilar zapatillas de escalada aquí" }, "addExtraTags": [ "service:climbing_shoes:rental:fee=", @@ -224,7 +237,8 @@ "nl": "Kan een klimgordel hier gehuurd worden?", "fr": "Peut-on louer un baudrier d'escalade ici ?", "de": "Kann man hier einen Klettergurt ausleihen?", - "cs": "Lze si zde zapůjčit horolezecký postroj?" + "cs": "Lze si zde zapůjčit horolezecký postroj?", + "es": "¿Se puede alquilar un arnés de escalada aquí?" }, "condition": { "or": [ @@ -245,7 +259,8 @@ "nl": "Een klimgordel kan hier gratis geleend worden", "fr": "Un baudrier d'escalade peut être emprunté gratuitement ici", "de": "Ein Klettergurt kann hier kostenlos ausgeliehen werden", - "cs": "Lezecký úvazek si můžete zdarma vypůjčit zde" + "cs": "Lezecký úvazek si můžete zdarma vypůjčit zde", + "es": "Se puede pedir prestado un arnés de escalada gratis aquí" }, "addExtraTags": [ "service:climbing_harness:rental:charge=" @@ -263,7 +278,8 @@ "nl": "Een klimgordel kan hier gehuurd worden aan {service:climbing_harness:rental:charge}", "fr": "Un baudrier d'escalade peut être loué ici pour {service:climbing_harness:rental:charge}", "de": "Ein Klettergurt kann hier ausgeliehen werden für {service:climbing_harness:rental:charge}", - "cs": "Lezecký postroj si zde můžete zapůjčit za {service:climbing_harness:rental:charge}" + "cs": "Lezecký postroj si zde můžete zapůjčit za {service:climbing_harness:rental:charge}", + "es": "Se puede alquilar un arnés de escalada aquí por {service:climbing_harness:rental:charge}" }, "hideInAnswer": true }, @@ -274,7 +290,8 @@ "nl": "Een klimgordel kan hier gehuurd worden", "fr": "Un baudrier d'escalade peut être loué ici", "de": "Ein Klettergurt kann hier ausgeliehen werden", - "cs": "Lezecký postroj si můžete půjčit zde" + "cs": "Lezecký postroj si můžete půjčit zde", + "es": "Se puede alquilar un arnés de escalada aquí" }, "addExtraTags": [ "service:climbing_harness:rental:fee=", @@ -288,7 +305,8 @@ "nl": "Hier kunnen geen klimgordels gehuurd worden", "fr": "Un baudrier d'escalade ne peut pas être loué ici", "de": "Ein Klettergurt kann hier nicht ausgeliehen werden", - "cs": "Lezecký úvazek si zde nemůžete zapůjčit" + "cs": "Lezecký úvazek si zde nemůžete zapůjčit", + "es": "No se puede alquilar un arnés de escalada aquí" }, "addExtraTags": [ "service:climbing_harness:rental:fee=", @@ -304,7 +322,8 @@ "nl": "Kan een zekeringsapparaat hier gehuurd worden?", "fr": "Peut-on louer un dispositif d'assurage ici ?", "de": "Kann man hier ein Sicherungsgerät ausleihen?", - "cs": "Lze si zde půjčit jištění?" + "cs": "Lze si zde půjčit jištění?", + "es": "¿Se puede alquilar un dispositivo de aseguramiento aquí?" }, "condition": { "or": [ @@ -320,7 +339,8 @@ "nl": "Een zekeringsapparaat is voorzien aan elk touw", "fr": "Un dispositif d'assurage est prévu à chaque corde", "de": "Jeder Seil hat ein Sicherungsgerät", - "cs": "U každého lana jsou k dispozici jistící zařízení" + "cs": "U každého lana jsou k dispozici jistící zařízení", + "es": "Se proporcionan dispositivos de aseguramiento en cada cuerda" }, "addExtraTags": [ "service:climbing_belay_device:rental=", @@ -340,7 +360,8 @@ "nl": "Een zekeringsapparaat kan hier gratis geleend worden", "fr": "Un dispositif d'assurage peut être emprunté gratuitement ici", "de": "Ein Sicherungsgerät kann hier kostenlos ausgeliehen werden", - "cs": "Jištění si můžete zdarma vypůjčit zde" + "cs": "Jištění si můžete zdarma vypůjčit zde", + "es": "Se puede pedir prestado un dispositivo de aseguramiento gratis aquí" }, "addExtraTags": [ "service:climbing_belay_device:provided_at_each_rope=", @@ -359,7 +380,8 @@ "nl": "Een zekeringsapparaat kan hier gehuurd worden aan {service:climbing_belay_device:rental:charge}", "fr": "Un dispositif d'assurage peut être loué ici pour {service:climbing_belay_device:rental:charge}", "de": "Ein Sicherungsgerät kann hier ausgeliehen werden für {service:climbing_belay_device:rental:charge}", - "cs": "Jištění si můžete půjčit zde za {service:climbing_belay_device:rental:charge}" + "cs": "Jištění si můžete půjčit zde za {service:climbing_belay_device:rental:charge}", + "es": "Se puede alquilar un dispositivo de aseguramiento aquí por {service:climbing_belay_device:rental:charge}" }, "hideInAnswer": true }, @@ -370,7 +392,8 @@ "nl": "Een zekeringsapparaat kan hier gehuurd worden", "fr": "Un dispositif d'assurage peut être loué ici", "de": "Ein Sicherungsgerät kann hier ausgeliehen werden", - "cs": "Jištění si můžete zapůjčit zde" + "cs": "Jištění si můžete zapůjčit zde", + "es": "Se puede alquilar un dispositivo de aseguramiento aquí" }, "addExtraTags": [ "service:climbing_belay_device:provided_at_each_rope=", @@ -385,7 +408,8 @@ "nl": "Hier kan geen zekeringsapparaat gehuurd worden", "fr": "Un dispositif d'assurage ne peut pas être loué ici", "de": "Ein Sicherungsgerät kann hier nicht ausgeliehen werden", - "cs": "Zde si nelze půjčit jištění" + "cs": "Zde si nelze půjčit jištění", + "es": "No se puede alquilar un dispositivo de aseguramiento aquí" }, "addExtraTags": [ "service:climbing_belay_device:provided_at_each_rope=", @@ -402,7 +426,8 @@ "nl": "Kan een klimtouw hier gehuurd worden?", "fr": "Peut-on louer une corde d'escalade ici ?", "de": "Kann man hier ein Kletterseil ausleihen?", - "cs": "Lze si zde půjčit lezecké lano?" + "cs": "Lze si zde půjčit lezecké lano?", + "es": "¿Se puede alquilar una cuerda de escalada aquí?" }, "condition": "climbing:sport!=no", "mappings": [ @@ -418,7 +443,8 @@ "nl": "Een klimtouw kan hier gratis geleend worden", "fr": "Une corde d'escalade peut être empruntée gratuitement ici", "de": "Ein Kletterseil kann hier kostenlos ausgeliehen werden", - "cs": "Lezecké lano si můžete zdarma vypůjčit zde" + "cs": "Lezecké lano si můžete zdarma vypůjčit zde", + "es": "Se puede pedir prestada una cuerda de escalada gratis aquí" }, "addExtraTags": [ "service:climbing_rope:rental:charge=" @@ -436,7 +462,8 @@ "nl": "Een klimtouw kan hier gehuurd worden aan {service:climbing_rope:rental:charge}", "fr": "Une corde d'escalade peut être louée ici pour {service:climbing_rope:rental:charge}", "de": "Ein Kletterseil kann hier ausgeliehen werden für {service:climbing_rope:rental:charge}", - "cs": "Za {service:climbing_rope:rental:charge} si zde můžete zapůjčit horolezecké lano" + "cs": "Za {service:climbing_rope:rental:charge} si zde můžete zapůjčit horolezecké lano", + "es": "Se puede alquilar una cuerda de escalada aquí por {service:climbing_rope:rental:charge}" }, "hideInAnswer": true }, @@ -447,7 +474,8 @@ "nl": "Een klimtouw kan hier gehuurd worden", "fr": "Une corde d'escalade peut être louée ici", "de": "Ein Kletterseil kann hier ausgeliehen werden", - "cs": "Lezecké lano si můžete půjčit zde" + "cs": "Lezecké lano si můžete půjčit zde", + "es": "Se puede alquilar una cuerda de escalada aquí" }, "addExtraTags": [ "service:climbing_rope:rental:fee=", @@ -461,7 +489,8 @@ "nl": "Hier kan geen klimtouw gehuurd worden", "fr": "Une corde d'escalade ne peut pas être louée ici", "de": "Ein Kletterseil kann hier nicht ausgeliehen werden", - "cs": "Lezecké lano si zde nemůžete zapůjčit" + "cs": "Lezecké lano si zde nemůžete zapůjčit", + "es": "No se puede alquilar una cuerda de escalada aquí" }, "addExtraTags": [ "service:climbing_rope:rental:fee=", @@ -498,7 +527,8 @@ "ja": "スピードクライミングウォールはありますか?", "it": "È presente una prete per l’arrampicata di velocità?", "fr": "Y a-t-il un mur d'escalade de vitesse ?", - "cs": "Je zde rychlostní lezecká stěna?" + "cs": "Je zde rychlostní lezecká stěna?", + "es": "¿Hay una pared de escalada de velocidad?" }, "mappings": [ { @@ -510,7 +540,8 @@ "ja": "スピードクライミングウォールがある", "it": "È presente una parete per l’arrampicata di velocità", "fr": "Il y a un mur d'escalade de vitesse", - "cs": "K dispozici je rychlostní lezecká stěna" + "cs": "K dispozici je rychlostní lezecká stěna", + "es": "Hay una pared de escalada de velocidad" } }, { @@ -522,7 +553,8 @@ "ja": "スピードクライミングウォールがない", "it": "Non è presente una parete per l’arrampicata di velocità", "fr": "Il n'y a pas de mur d'escalade de vitesse", - "cs": "Není zde žádná rychlostní lezecká stěna" + "cs": "Není zde žádná rychlostní lezecká stěna", + "es": "No hay una pared de escalada de velocidad" } }, { @@ -534,7 +566,8 @@ "ja": "{climbing:speed} のスピードクライミングウォールがある", "it": "Sono presenti {climbing:speed} pareti per l’arrampicata di velocità", "fr": "Il existe {climbing:speed} murs d'escalade de vitesse", - "cs": "K dispozici jsou {climbing:speed} rychlostní lezecké stěny" + "cs": "K dispozici jsou {climbing:speed} rychlostní lezecké stěny", + "es": "Hay {climbing:speed} paredes de escalada de velocidad" }, "hideInAnswer": true } diff --git a/assets/layers/climbing_opportunity/climbing_opportunity.json b/assets/layers/climbing_opportunity/climbing_opportunity.json index 2c8998dd8..8ae2fe138 100644 --- a/assets/layers/climbing_opportunity/climbing_opportunity.json +++ b/assets/layers/climbing_opportunity/climbing_opportunity.json @@ -8,13 +8,15 @@ "nb_NO": "Klatremuligheter?", "fr": "Opportunités d’escalade ?", "it": "Opportunità di arrampicata?", - "cs": "Lezecké příležitosti?" + "cs": "Lezecké příležitosti?", + "es": "¿Posibilidades de escalada?" }, "description": { "en": "Fallback layer with items on which climbing _might_ be possible. It is loaded when zoomed in a lot, to prevent duplicate items to be added", "de": "Rückfallebene mit Orten, auf denen Klettern eventuell möglich ist. Sie wird erst angezeigt, wenn man stark hineinzoomt, um zu verhindern, dass Elemente doppelt hinzugefügt werden", "nl": "Laag met plaatsen waar klimmen _misschien_ mogelijk is. Deze wordt geladen als je ver inzoomt, om te voorkomen dat je per ongeluk dubbels maakt", - "cs": "Záložní vrstva s předměty, na které je _možné_ lézt. Načítá se při velkém přiblížení, aby se zabránilo přidávání duplicitních položek" + "cs": "Záložní vrstva s předměty, na které je _možné_ lézt. Načítá se při velkém přiblížení, aby se zabránilo přidávání duplicitních položek", + "es": "Capa de reserva con elementos en los que la escalada _podría_ ser posible Se carga cuando se acerca mucho, para evitar que se añadan elementos duplicados" }, "source": { "osmTags": { @@ -44,7 +46,8 @@ "nb_NO": "Klatremulighet?", "fr": "Opportunité d’escalade ?", "it": "Opportunità di arrampicata?", - "cs": "Lezecká příležitost?" + "cs": "Lezecká příležitost?", + "es": "¿Posibilidad de escalada?" } }, "pointRendering": [ @@ -80,7 +83,8 @@ "nl": "{name}", "it": "{name}", "pl": "{name}", - "cs": "{name}" + "cs": "{name}", + "es": "{name}" }, "condition": "name~*" }, @@ -94,7 +98,8 @@ "fr": "Est-il possible d’escalader ici ?", "it": "È possibile arrampicarsi qua?", "nl": "Is klimmen hier mogelijk?", - "cs": "Je zde možné lezení?" + "cs": "Je zde možné lezení?", + "es": "¿Es posible la escalada aquí?" }, "mappings": [ { @@ -111,7 +116,8 @@ "nl": "Klimmen is hier niet toegelaten", "fr": "Escalader est possible", "it": "È possibile arrampicarsi qua", - "cs": "Lezení je zde možné" + "cs": "Lezení je zde možné", + "es": "La escalada es posible aquí" } }, { @@ -124,7 +130,8 @@ "nl": "Klimmen is hier niet toegelaten", "fr": "Escalader n’est pas possible", "it": "Non è possibile arrampicarsi qua", - "cs": "Lezení zde není možné" + "cs": "Lezení zde není možné", + "es": "La escalada no es posible aquí" } }, { @@ -141,7 +148,8 @@ "nl": "Klimmen is hier niet mogelijk", "fr": "Escalader n’est pas possible", "it": "Non è possibile arrampicarsi qua", - "cs": "Lezení zde není možné" + "cs": "Lezení zde není možné", + "es": "La escalada no es posible aquí" }, "hideInAnswer": true } @@ -151,7 +159,8 @@ "allowMove": false, "snapName": { "en": "a wall, cliff or rock", - "de": "eine Wand, eine Klippe oder einen Felsen" + "de": "eine Wand, eine Klippe oder einen Felsen", + "es": "una pared, un acantilado o una roca" }, "isCounted": false } diff --git a/assets/layers/climbing_route/climbing_route.json b/assets/layers/climbing_route/climbing_route.json index 746ff682c..babac0013 100644 --- a/assets/layers/climbing_route/climbing_route.json +++ b/assets/layers/climbing_route/climbing_route.json @@ -9,14 +9,16 @@ "fr": "Voies d’escalade", "it": "Vie di arrampicata", "ca": "Rutes d'escalada", - "cs": "Lezecké trasy" + "cs": "Lezecké trasy", + "es": "Vías de escalada" }, "description": { "en": "A single climbing route and its properties. Some properties are derived from the containing features", "de": "Eine einzelne Kletterroute und ihre Eigenschaften. Einige Eigenschaften werden von übergeordneten Objekten abgeleitet", "nl": "Een klimroute en de eigenschappen van deze klimroute. Sommige eigenschappen worden afgeleid van omliggende kaart-objecten", "fr": "Une seule voie d'escalade et ses propriétés. Certaines propriétés sont dérivées des objets qui les contiennent", - "cs": "Jedna lezecká cesta a její vlastnosti. Některé vlastnosti jsou odvozeny z obsahujících prvků" + "cs": "Jedna lezecká cesta a její vlastnosti. Některé vlastnosti jsou odvozeny z obsahujících prvků", + "es": "Una sola vía de escalada y sus propiedades Algunas propiedades se derivan de las características que la contienen" }, "source": { "osmTags": { @@ -37,7 +39,8 @@ "fr": "Voie d’escalade", "da": "Klatrerute", "ca": "Ruta d'escalada", - "cs": "Lezecká trasa" + "cs": "Lezecká trasa", + "es": "Vía de escalada" }, "mappings": [ { @@ -51,7 +54,8 @@ "fr": "Voie d’escalade {name}", "da": "Klatrerute {name}", "ca": "Ruta d'escalada {name}", - "cs": "Lezecká trasa {name}" + "cs": "Lezecká trasa {name}", + "es": "Vía de escalada {name}" } } ] @@ -107,7 +111,8 @@ "de": "eine Kletterroute", "it": "una via di arrampicata", "ca": "una ruta d'escalada", - "cs": "lezecká trasa" + "cs": "lezecká trasa", + "es": "una vía de escalada" }, "snapToLayer": [ "climbing_opportunity" @@ -133,7 +138,8 @@ "it": "{name}", "nb_NO": "{name}", "da": "{name}", - "cs": "{name}" + "cs": "{name}", + "es": "{name}" }, "question": { "en": "What is the name of this climbing route?", @@ -145,7 +151,8 @@ "nb_NO": "Hva er navnet på denne klatreruten?", "da": "Hvad hedder denne klatrerute?", "ca": "Quin és el nom d'aquesta ruta d'escalada?", - "cs": "Jak se jmenuje tato lezecká cesta?" + "cs": "Jak se jmenuje tato lezecká cesta?", + "es": "¿Cuál es el nombre de esta vía de escalada?" }, "freeform": { "key": "name" @@ -167,7 +174,8 @@ "fr": "Cette voie n’a pas de nom", "nb_NO": "Denne klatreruten har ikke noe navn", "da": "Denne klatrerute har ikke et navn", - "cs": "Tato lezecká trasa nemá jméno" + "cs": "Tato lezecká trasa nemá jméno", + "es": "Esta vía de escalada no tiene nombre" } } ], @@ -183,7 +191,8 @@ "nb_NO": "Hvor mange meter er klatreruten?", "da": "Hvor lang er denne klatrerute (i meter)?", "ca": "Quant dura aquesta via d'escalada (en metres)?", - "cs": "Jak dlouhá je tato lezecká trasa (v metrech)?" + "cs": "Jak dlouhá je tato lezecká trasa (v metrech)?", + "es": "¿Cuánto mide esta vía de escalada (en metros)?" }, "render": { "de": "Diese Route ist {canonical(climbing:length)} lang", @@ -193,7 +202,8 @@ "nb_NO": "Denne ruten er {canonical(climbing:length)} lang", "it": "Questo percorso è lungo {canonical(climbing:length)}", "fr": "Cette voie fait {canonical(climbing:length)} de long", - "cs": "Tato trasa je {canonical(climbing:length)} dlouhá" + "cs": "Tato trasa je {canonical(climbing:length)} dlouhá", + "es": "Esta vía mide {canonical(climbing:length)} de largo" }, "freeform": { "key": "climbing:length", @@ -209,7 +219,8 @@ "fr": "Quelle est la difficulté de cette voie selon le système franco-belge ?", "de": "Wie hoch ist der Schwierigkeitsgrad dieser Kletterroute nach dem französisch/belgischen System?", "ca": "Quin és el grau d'aquesta via d'escalada segons el sistema francès/belga?", - "cs": "Jaký je stupeň této lezecké cesty podle francouzského/belgického systému?" + "cs": "Jaký je stupeň této lezecké cesty podle francouzského/belgického systému?", + "es": "¿Cuál es el grado de esta vía de escalada según el sistema francés/belga?" }, "render": { "de": "Die Schwierigkeit ist {climbing:grade:french} entsprechend des französisch/belgischen Systems", @@ -218,7 +229,8 @@ "ja": "フランス/ベルギーのランク評価システムによると、{climbing:grade:french}の困難度です", "it": "Il grado di difficoltà è {climbing:grade:french} nel sistema francese/belga", "fr": "Selon le système franco-belge, la difficulté de cette voie est de {climbing:grade:french}", - "cs": "Stupeň je {climbing:grade:french} podle francouzského/belgického systému" + "cs": "Stupeň je {climbing:grade:french} podle francouzského/belgického systému", + "es": "El grado es {climbing:grade:french} según el sistema francés/belga" }, "freeform": { "key": "climbing:grade:french" @@ -233,14 +245,16 @@ "de": "Wie viele Haken gibt es auf dieser Kletterroute bevor der Umlenker bzw. Standhaken erreicht ist?", "it": "Quanti bulloni sono presenti in questo percorso prima di arrivare alla moulinette?", "nl": "Hoeveel bouten heeft deze route voordat je het relay bereikt?", - "cs": "Kolik šroubů má tato cesta před dosažením kotvy?" + "cs": "Kolik šroubů má tato cesta před dosažením kotvy?", + "es": "¿Cuántos parabolts tiene esta vía antes de llegar al anclaje?" }, "render": { "en": "This route has {climbing:bolts} bolts
This is without relays and indicates how much quickdraws a climber needs
", "fr": "Cette voie a {climbing:bolts} prises
C'est sans relai et indique de combien de dégaine un grimpeur a besoin
", "de": "Diese Route hat {climbing:bolts} Haken
Dies ist ohne Relais und gibt an, wie viel Schnellspanner ein Kletterer braucht
", "it": "Questo percorso ha {climbing:bolts} bulloni
Questa è senza collettori e indica di quanti bloccaggi rapidi ha bisogno un arrampicatore
", - "nl": "Deze route heeft {climbing:bolts} klimbouten.
Dit is zonder het relay mee te tellen. Een klimmer heeft dus minstens {climbing:bolts} klimsetjes nodig om boven te raken
" + "nl": "Deze route heeft {climbing:bolts} klimbouten.
Dit is zonder het relay mee te tellen. Een klimmer heeft dus minstens {climbing:bolts} klimsetjes nodig om boven te raken
", + "es": "Esta vía tiene {climbing:bolts} parabolts
Esto es sin reuniones e indica cuántos cintas exprés necesita un escalador
" }, "freeform": { "key": "climbing:bolts", @@ -259,7 +273,8 @@ "de": "Auf dieser Kletterroute sind keine Haken vorhanden", "it": "In questo percorso non sono presenti bulloni", "nl": "Deze route heeft geen bouten", - "cs": "Tato trasa není vyšroubovaná" + "cs": "Tato trasa není vyšroubovaná", + "es": "Esta vía no tiene parabolts" }, "addExtraTags": [ "climbing:bolts=" @@ -276,7 +291,8 @@ "it": "Il tipo di roccia è {_embedding_features_with_rock:rock} come dichiarato sul muro circostante", "de": "Der Gesteinstyp ist {_embedding_features_with_rock:rock}, wie auf dem umgebenden Felsen angegeben", "nl": "De steensoort is {_embedding_features_with_rock:rock} zoals vermeld op de omliggende klimzone", - "cs": "Typ skály je {_embedding_features_with_rock:rock}, jak je uvedeno na okolní skalní stěně" + "cs": "Typ skály je {_embedding_features_with_rock:rock}, jak je uvedeno na okolní skalní stěně", + "es": "El tipo de roca es {_embedding_features_with_rock:rock} como se indica en la pared circundante" }, "freeform": { "key": "_embedding_features_with_rock:rock" diff --git a/assets/layers/clock/clock.json b/assets/layers/clock/clock.json index 88d310dc6..29155fb40 100644 --- a/assets/layers/clock/clock.json +++ b/assets/layers/clock/clock.json @@ -6,7 +6,8 @@ "de": "Uhren", "ca": "Rellotges", "fr": "Horloges", - "cs": "Hodiny" + "cs": "Hodiny", + "es": "Relojes" }, "description": { "en": "Layer with public clocks", @@ -30,7 +31,8 @@ "ca": "Rellotge", "fr": "Horloge", "pl": "Zegar", - "cs": "Hodiny" + "cs": "Hodiny", + "es": "Reloj" } }, "pointRendering": [ @@ -80,7 +82,8 @@ "ca": "un rellotge", "fr": "une horloge", "pl": "zegar", - "cs": "hodiny" + "cs": "hodiny", + "es": "un reloj" }, "description": { "en": "A publicly visible clock", @@ -88,7 +91,8 @@ "de": "Eine öffentlich sichtbare Uhr", "ca": "Un rellotge visible públicament", "fr": "Une horloge visible de l'espace public", - "cs": "Veřejně viditelné hodiny" + "cs": "Veřejně viditelné hodiny", + "es": "Un reloj visible públicamente" } }, { @@ -103,7 +107,8 @@ "ca": "un rellotge muntat en un paret", "fr": "une horloge fixée au mur", "pl": "zegar na ścianie", - "cs": "hodiny na stěně" + "cs": "hodiny na stěně", + "es": "un reloj de pared" }, "description": { "en": "A publicly visible clock mounted on a wall", @@ -112,7 +117,25 @@ "ca": "Un rellotge visible públicament muntat en una paret", "fr": "Une horloge publique fixée sur un mur", "pl": "Publicznie widoczny zegar zamontowany na ścianie", - "cs": "Veřejně viditelné hodiny umístěné na stěně" + "cs": "Veřejně viditelné hodiny umístěné na stěně", + "es": "Un reloj visible públicamente montado en una pared" + }, + "snapToLayer": [ + "walls_and_buildings" + ] + }, + { + "tags": [ + "amenity=clock", + "support=wall" + ], + "title": { + "en": "a wall-mounted clock, mounted directly on a wall", + "nl": "een klok aan een muur, rechtstreeks bevestigd aan een muur" + }, + "description": { + "en": "A publicly visible clock mounted directly on a wall", + "nl": "Een publiekelijk zichtbare klok rechtstreeks bevestigd aan een muur" }, "snapToLayer": [ "walls_and_buildings" @@ -130,7 +153,8 @@ "ca": "De quina forma està muntat aquest rellotge?", "fr": "De quelle manière est fixée cette horloge ?", "pl": "W jaki sposób zamontowany jest ten zegar?", - "cs": "Jakým způsobem jsou hodiny namontovány?" + "cs": "Jakým způsobem jsou hodiny namontovány?", + "es": "¿De qué manera está montado el reloj?" }, "mappings": [ { @@ -142,19 +166,29 @@ "ca": "Aquest rellotge està muntat en un pal", "fr": "Cette horloge est montée sur un poteau", "pl": "Ten zegar jest zamontowany na słupie", - "cs": "Tyto hodiny jsou namontovány na sloupu" + "cs": "Tyto hodiny jsou namontovány na sloupu", + "es": "Este reloj está montado en un poste" } }, { "if": "support=wall_mounted", "then": { - "en": "This clock is mounted on a wall", - "nl": "Deze klok is bevestigd aan een muur", + "en": "This clock is mounted on a wall, usually through a support perpendicular to the wall", + "nl": "Deze klok is bevestigd aan een muur, meestal met een steun loodrecht op de muur", "de": "Diese Uhr ist an einer Wand montiert", "ca": "Aquest rellotge està muntat en una paret", "fr": "Cette horloge est fixée sur un mur", "pl": "Ten zegar jest zamontowany na ścianie", - "cs": "Tyto hodiny jsou namontovány na stěně" + "cs": "Tyto hodiny jsou namontovány na stěně", + "es": "Este reloj está montado en una pared" + } + }, + { + "if": "support=wall", + "then": { + "en": "This clock is mounted directly on a wall", + "nl": "Deze klok is rechtstreeks aan een muur bevestigd", + "es": "Este reloj forma parte de una cartelera" } }, { @@ -166,7 +200,9 @@ "ca": "Aquest rellotge està muntat en una tanca publicitària", "fr": "Cette horloge fait partie d'un panneau publicitaire", "pl": "Ten zegar jest częścią bilbordu", - "cs": "Tyto hodiny jsou součástí billboardu" + "cs": "Tyto hodiny jsou součástí billboardu", + "uk": "Цей годинник є частиною білборду", + "es": "Este reloj está en el suelo" } }, { @@ -178,7 +214,8 @@ "ca": "Aquest rellotge està al sòl", "fr": "Cette horloge est posée au sol", "pl": "Ten zegar jest na ziemi", - "cs": "Tyto hodiny jsou na zemi" + "cs": "Tyto hodiny jsou na zemi", + "es": "Este reloj está en el suelo" } } ] @@ -192,7 +229,8 @@ "ca": "Com mostra aquest rellotge l'hora?", "fr": "Comment cette horloge indique-t-elle l'heure ?", "pl": "Jak ten zegar wyświetla czas?", - "cs": "Jak tyto hodiny zobrazují čas?" + "cs": "Jak tyto hodiny zobrazují čas?", + "es": "¿Cómo muestra la hora este reloj?" }, "mappings": [ { @@ -204,7 +242,8 @@ "ca": "Aquest rellotge mostra l'hora amb mans", "fr": "Cette horloge indique l'heure avec des aiguilles", "pl": "Ten zegar pokazuje czas za pomocą wskazówek", - "cs": "Tyto hodiny zobrazují čas pomocí ručiček" + "cs": "Tyto hodiny zobrazují čas pomocí ručiček", + "es": "Este reloj muestra la hora con agujas" } }, { @@ -216,7 +255,8 @@ "ca": "Aquest rellotge mostra l'hora amb dígits", "fr": "Cette horloges indique l'heure avec des chiffres numériques", "pl": "Ten zegar wyświetla czas za pomocą cyfr", - "cs": "Tyto hodiny zobrazují čas s číslicemi" + "cs": "Tyto hodiny zobrazují čas s číslicemi", + "es": "Este reloj muestra la hora con dígitos" } }, { @@ -227,7 +267,8 @@ "de": "Diese Uhr zeigt die Zeit mit einer Sonnenuhr an", "ca": "Aquest rellotge mostra l'hora amb un rellotge de sol", "fr": "Cette horloge indique l'heure grâce au soleil", - "cs": "Tyto hodiny zobrazují čas pomocí slunečních hodin" + "cs": "Tyto hodiny zobrazují čas pomocí slunečních hodin", + "es": "Este reloj muestra la hora con una esfera de sol" } }, { @@ -239,11 +280,36 @@ "ca": "Aquest rellotge mostra l'hora d'una manera no estàndard, p.e. utilitzant binari, aigua o quelcom més", "fr": "Cette horloge indique l'heure d'une manière inhabituelle, par ex. en binaire, avec de l'eau, ou autre", "pl": "Ten zegar wyświetla czas w niestandardowy sposób, np. używając systemu binarnego, wody lub czegoś innego", - "cs": "Tyto hodiny zobrazují čas nestandardním způsobem, např. pomocí binárního systému, vody nebo něčeho jiného" + "cs": "Tyto hodiny zobrazují čas nestandardním způsobem, např. pomocí binárního systému, vody nebo něčeho jiného", + "es": "Este reloj muestra la hora de una manera no estándar, p. ej., usando binario, agua u otra cosa" } } ] }, + { + "builtin": "indoor", + "override": { + "question": { + "en": "Is this clock indoors?", + "nl": "Is deze klok binnen?" + }, + "mappings": [ + { + "then": { + "en": "This clock is indoors", + "nl": "Deze klok is binnen" + } + }, + { + "if": "indoor=no", + "then": { + "en": "This clock is outdoors", + "nl": "Deze klok is buiten" + } + } + ] + } + }, { "id": "visibility", "question": { @@ -253,7 +319,8 @@ "ca": "Com de visible és aquest rellotge?", "fr": "Quelle est la visibilité de cette horloge ?", "pl": "Jaka jest widoczność tego zegara?", - "cs": "Jak viditelné jsou tyto hodiny?" + "cs": "Jak viditelné jsou tyto hodiny?", + "es": "¿Qué tan visible es este reloj?" }, "mappings": [ { @@ -265,7 +332,8 @@ "ca": "Aquest rellotge és visible al voltant dels 5 metres de distància (un petit rellotge muntat a la paret)", "fr": "Cette horloge est visible d'environ 5 mètres (petite horloge fixée au mur)", "pl": "Ten zegar jest widoczny z około 5 metrów (mały zegar ścienny)", - "cs": "Tyto hodiny jsou viditelné ze vzdálenosti asi 5 metrů (malé nástěnné hodiny)" + "cs": "Tyto hodiny jsou viditelné ze vzdálenosti asi 5 metrů (malé nástěnné hodiny)", + "es": "Este reloj es visible desde unos 5 metros de distancia (reloj pequeño de pared)" } }, { @@ -277,7 +345,8 @@ "ca": "Aquest rellotge és visible al voltant dels 20 metres de distància (rellotge de tamany mig a una tanca publicitària)", "fr": "Cette horloge est visible d'environ 20 mètres (horloge sur un panneau publicitaire)", "pl": "Ten zegar jest widoczny z około 20 metrów (średniej wielkości zegar bilbordowy)", - "cs": "Tyto hodiny jsou viditelné ze vzdálenosti asi 20 metrů (středně velké billboardové hodiny)" + "cs": "Tyto hodiny jsou viditelné ze vzdálenosti asi 20 metrů (středně velké billboardové hodiny)", + "es": "Este reloj es visible desde unos 20 metros de distancia (reloj de cartelera de tamaño mediano)" } }, { @@ -289,10 +358,12 @@ "ca": "Aquest rellotge és visible des de més de 20 metres de distància (p. ex. el d'una església o estació de tren)", "fr": "Cette horloge est visible de plus de 20 mètres (par ex. horloge d'église ou de gare)", "pl": "Ten zegar jest widoczny z ponad 20 metrów (np. zegar kościelny lub stacyjny)", - "cs": "Tyto hodiny jsou viditelné ze vzdálenosti větší než 20 metrů (např. kostelní nebo nádražní hodiny)" + "cs": "Tyto hodiny jsou viditelné ze vzdálenosti větší než 20 metrů (např. kostelní nebo nádražní hodiny)", + "es": "Este reloj es visible desde más de 20 metros de distancia (p. ej., un reloj de iglesia o de estación)" } } - ] + ], + "condition": "indoor!=yes" }, { "id": "date", @@ -303,7 +374,8 @@ "ca": "Aquest rellotge també mostra la data?", "fr": "Cette horloge indique-t-elle également la date ?", "pl": "Czy ten zegar wyświetla datę?", - "cs": "Zobrazují tyto hodiny také datum?" + "cs": "Zobrazují tyto hodiny také datum?", + "es": "¿Este reloj también muestra la fecha?" }, "mappings": [ { @@ -315,7 +387,8 @@ "ca": "Aquest rellotge també mostra la data", "fr": "Cette horloge indique également la date", "pl": "Ten zegar wyświetla również datę", - "cs": "Tyto hodiny také zobrazují datum" + "cs": "Tyto hodiny také zobrazují datum", + "es": "Este reloj también muestra la fecha" } }, { @@ -327,7 +400,8 @@ "ca": "Aquest rellotge no mostra la data", "fr": "Cette horloge n'indique pas la date", "pl": "Ten zegar nie wyświetla daty", - "cs": "Tyto hodiny nezobrazují datum" + "cs": "Tyto hodiny nezobrazují datum", + "es": "Este reloj no muestra la fecha" } }, { @@ -339,7 +413,8 @@ "ca": "Aquest rellotge probablement no mostra la data", "fr": "Cette horloge n'affiche probablement pas la date", "pl": "Ten zegar prawdopodobnie nie wyświetla daty", - "cs": "Tyto hodiny pravděpodobně nezobrazují datum" + "cs": "Tyto hodiny pravděpodobně nezobrazují datum", + "es": "Este reloj probablemente no muestra la fecha" }, "hideInAnswer": true } @@ -354,7 +429,8 @@ "ca": "Aquest rellotge també mostra la temperatura?", "fr": "Est-ce que cette horloge affiche également la température ?", "pl": "Czy ten zegar wyświetla również temperaturę?", - "cs": "Zobrazují tyto hodiny také teplotu?" + "cs": "Zobrazují tyto hodiny také teplotu?", + "es": "¿Este reloj también muestra la temperatura?" }, "mappings": [ { @@ -366,7 +442,8 @@ "ca": "Aquest rellotge també mostra la temperatura", "fr": "Cette horloge affiche également la température", "pl": "Ten zegar wyświetla również temperaturę", - "cs": "Tyto hodiny také zobrazují teplotu" + "cs": "Tyto hodiny také zobrazují teplotu", + "es": "Este reloj también muestra la temperatura" } }, { @@ -378,7 +455,8 @@ "ca": "Aquest rellotge no mostra la temperatura", "fr": "Cette horloge n'affiche pas la température", "pl": "Ten zegar nie wyświetla temperatury", - "cs": "Tyto hodiny nezobrazují teplotu" + "cs": "Tyto hodiny nezobrazují teplotu", + "es": "Este reloj no muestra la temperatura" } }, { @@ -390,7 +468,8 @@ "ca": "Aquest rellotge probablement no mostra la temperatura", "fr": "Cette horloge n'indique probablement pas la date", "pl": "Ten zegar prawdopodobnie nie wyświetla temperatury", - "cs": "Tyto hodiny pravděpodobně nezobrazují teplotu" + "cs": "Tyto hodiny pravděpodobně nezobrazují teplotu", + "es": "Este reloj probablemente no muestra la temperatura" }, "hideInAnswer": true } @@ -405,7 +484,8 @@ "ca": "Aquest rellotge també mostra la pressió de l'aire?", "fr": "Est-ce que cette horloge affiche également la pression atmosphérique ?", "pl": "Czy ten zegar wyświetla ciśnienie?", - "cs": "Zobrazují tyto hodiny také tlak vzduchu?" + "cs": "Zobrazují tyto hodiny také tlak vzduchu?", + "es": "¿Este reloj también muestra la presión atmosférica?" }, "mappings": [ { @@ -417,7 +497,8 @@ "ca": "Aquest rellotge també mostra la pressió de l'aire", "fr": "Cette horloge affiche également la pression atmosphérique", "pl": "Ten zegar wyświetla również ciśnienie", - "cs": "Tyto hodiny také zobrazují tlak vzduchu" + "cs": "Tyto hodiny také zobrazují tlak vzduchu", + "es": "Este reloj también muestra la presión atmosférica" } }, { @@ -429,7 +510,8 @@ "ca": "Aquest rellotge no mostra la pressió de l'aire", "fr": "Cette horloge n'affiche pas la pression atmosphérique", "pl": "Ten zegar nie wyświetla ciśnienia", - "cs": "Tyto hodiny nezobrazují tlak vzduchu" + "cs": "Tyto hodiny nezobrazují tlak vzduchu", + "es": "Este reloj no muestra la presión atmosférica" } }, { @@ -441,7 +523,8 @@ "ca": "Aquest rellotge probablement no mostra la pressió de l'aire", "fr": "Cette horloge affiche probablement la pression atmosphérique", "pl": "Ten zegar prawdopodobnie nie wyświetla ciśnienia", - "cs": "Tyto hodiny pravděpodobně nezobrazují tlak vzduchu" + "cs": "Tyto hodiny pravděpodobně nezobrazují tlak vzduchu", + "es": "Este reloj probablemente no muestra la presión atmosférica" }, "hideInAnswer": true } @@ -456,7 +539,8 @@ "ca": "Aquest rellotge també mostra la humitat?", "fr": "Cette horloge indique-t-elle également l'humidité ?", "pl": "Czy ten zegar wyświetla również wilgotność?", - "cs": "Zobrazují tyto hodiny také vlhkost?" + "cs": "Zobrazují tyto hodiny také vlhkost?", + "es": "¿Este reloj también muestra la humedad?" }, "mappings": [ { @@ -468,7 +552,8 @@ "ca": "Aquest rellotge també mostra la humitat", "fr": "Cette horloge indique également l'humidité", "pl": "Ten zegar wyświetla również wilgotność", - "cs": "Tyto hodiny také zobrazují vlhkost" + "cs": "Tyto hodiny také zobrazují vlhkost", + "es": "Este reloj también muestra la humedad" } }, { @@ -480,7 +565,8 @@ "ca": "Aquest rellotge no mostra la humitat", "fr": "Cette horloge n'indique pas l'humidité", "pl": "Ten zegar nie wyświetla wilgotności", - "cs": "Tyto hodiny nezobrazují vlhkost" + "cs": "Tyto hodiny nezobrazují vlhkost", + "es": "Este reloj no muestra la humedad" } }, { @@ -492,7 +578,8 @@ "ca": "Aquest rellotge probablement no mostra la humitat", "fr": "Cette horloge n'indique probablement pas l'humidité", "pl": "Ten zegar prawdopodobnie nie wyświetla wilgotności", - "cs": "Tyto hodiny pravděpodobně nezobrazují vlhkost" + "cs": "Tyto hodiny pravděpodobně nezobrazují vlhkost", + "es": "Este reloj probablemente no muestra la humedad" }, "hideInAnswer": true } @@ -506,7 +593,8 @@ "de": "Wie viele Zifferblätter hat diese Uhr?", "ca": "Quantes cares té aquest rellotge?", "fr": "Combien de faces a cette horloge ?", - "cs": "Kolik ciferníků mají tyto hodiny?" + "cs": "Kolik ciferníků mají tyto hodiny?", + "es": "¿Cuántas caras tiene este reloj?" }, "freeform": { "key": "faces", @@ -518,7 +606,8 @@ "de": "Anzahl der Zifferblätter", "ca": "Nombre de cares", "fr": "Nombre de faces", - "cs": "Počet ciferníků" + "cs": "Počet ciferníků", + "es": "Número de caras" } }, "render": { @@ -527,7 +616,8 @@ "de": "Diese Uhr hat {faces} Zifferblätter", "ca": "Aquest rellotge té {faces} cares", "fr": "Cette horloge a {faces} faces", - "cs": "Tyto hodiny mají {faces} ciferníků" + "cs": "Tyto hodiny mají {faces} ciferníků", + "es": "Este reloj tiene {faces} caras" }, "mappings": [ { @@ -538,7 +628,8 @@ "de": "Diese Uhr hat ein Zifferblatt", "ca": "Aquest rellotge té una cara", "fr": "Cette horloge a une face", - "cs": "Tyto hodiny mají jeden ciferník" + "cs": "Tyto hodiny mají jeden ciferník", + "es": "Este reloj tiene una cara" } }, { @@ -549,7 +640,8 @@ "de": "Diese Uhr hat zwei Zifferblätter", "ca": "Aquest rellotge té dues cares", "fr": "Cette horloge a deux faces", - "cs": "Tyto hodiny mají dva ciferníky" + "cs": "Tyto hodiny mají dva ciferníky", + "es": "Este reloj tiene dos caras" } }, { @@ -560,7 +652,8 @@ "de": "Diese Uhr hat vier Zifferblätter", "ca": "Aquest rellotge té quatre cares", "fr": "Cette horloge a quatre faces", - "cs": "Tyto hodiny mají čtyři ciferníky" + "cs": "Tyto hodiny mají čtyři ciferníky", + "es": "Este reloj tiene cuatro caras" } } ] @@ -571,4 +664,4 @@ ], "deletion": true, "allowMove": true -} +} \ No newline at end of file diff --git a/assets/layers/crossings/crossing_unmarked.png b/assets/layers/crossings/crossing_unmarked.png new file mode 100644 index 000000000..629009d32 Binary files /dev/null and b/assets/layers/crossings/crossing_unmarked.png differ diff --git a/assets/layers/crossings/crossing_unmarked.png.license b/assets/layers/crossings/crossing_unmarked.png.license new file mode 100644 index 000000000..8bbbce063 --- /dev/null +++ b/assets/layers/crossings/crossing_unmarked.png.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: StenSoft +SPDX-License-Identifier: CC0 1.0 \ No newline at end of file diff --git a/assets/layers/crossings/crossings.json b/assets/layers/crossings/crossings.json index fd5fe6e66..6bdb8800a 100644 --- a/assets/layers/crossings/crossings.json +++ b/assets/layers/crossings/crossings.json @@ -7,7 +7,7 @@ "fr": "Traversée", "ca": "Encreuaments", "da": "Overgange", - "es": "Pasos", + "es": "Cruces", "pa_PK": "کراسنگاں", "cs": "Přechody" }, @@ -17,7 +17,7 @@ "de": "Übergänge für Fußgänger und Radfahrer", "fr": "Traversée pour piétons et cyclistes", "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", "cs": "Přechody pro chodce a cyklisty" }, @@ -91,7 +91,8 @@ ], "location": [ "point" - ] + ], + "anchor": "center" } ], "lineRendering": [ @@ -193,7 +194,7 @@ "en": "Crossing with traffic signals", "nl": "Oversteekplaats met verkeerslichten", "de": "Kreuzungen mit Ampeln", - "es": "Cruce con semáforo", + "es": "Cruce con semáforos", "fr": "Passage piéton avec des feux de signalisation", "ca": "Creuament amb semàfors", "cs": "Přechod se světelnou signalizací" @@ -206,7 +207,7 @@ "nl": "Zebrapad", "de": "Zebrastreifen", "ca": "Pas de zebra", - "es": "Paso de cebra", + "es": "Paso de peatones", "fr": "Passage piéton", "cs": "Zebra přechod" }, @@ -218,53 +219,185 @@ "en": "Crossing without crossing markings", "nl": "Oversteekplaats zonder kruispuntmarkeringen", "de": "Kreuzung ohne Kreuzungsmarkierungen", - "es": "Cruce sin señalizar", + "es": "Cruce sin marcas de cruce", "fr": "Passage piéton sans marquages", "ca": "Creuament sense senyalitzar", "cs": "Přechod bez označení přechodu" - } + }, + "hideInAnswer": true } ] }, { - "id": "crossing-is-zebra", + "id": "markings", "question": { - "en": "Is this is a zebra crossing?", - "nl": "Is dit een zebrapad?", - "de": "Ist das ein Zebrastreifen?", - "es": "¿Esto es un paso de cebra?", - "fr": "Est-ce un passage piéton ?", - "ca": "Açò és un pas de vianants?", - "pl": "Czy to jest przejście dla pieszych typu \"zebra\"?", - "cs": "Jedná se o zebra přechod?" + "en": "What kind of markings does this crossing have?", + "nl": "Wat voor markering heeft deze oversteekplaats?" }, - "condition": "crossing=uncontrolled", "mappings": [ { - "if": "crossing_ref=zebra", + "if": "crossing:markings=no", "then": { - "en": "This is a zebra crossing", - "nl": "Dit is een zebrapad", - "de": "Dies ist ein Zebrastreifen", - "es": "Esto es un paso de cebra", - "fr": "C'est un passage piéton", - "ca": "Açò és un pas de vianants", - "cs": "Toto je zebra přechod" + "en": "This crossing has no markings", + "nl": "Deze oversteekplaats heeft geen markeringen" + }, + "icon": { + "class": "large", + "path": "./assets/layers/crossings/crossing_unmarked.png" } }, { - "if": "crossing_ref=", + "if": "crossing:markings=zebra", "then": { - "en": "This is not a zebra crossing", - "nl": "Dit is geen zebrapad", - "de": "Dies ist kein Zebrastreifen", - "es": "Esto no es un paso de cebra", - "fr": "Ce n'est pas un passage piéton", - "ca": "Açò no és un pas de vianants", - "cs": "Tohle není zebra přechod" + "en": "This crossing has zebra markings", + "nl": "Deze oversteekplaats heeft een zebramarkering" + }, + "icon": { + "class": "large", + "path": "./assets/layers/crossings/markings_zebra.png" + } + }, + { + "hideInAnswer": true, + "then": { + "en": "This crossing has markings of an unknown type", + "nl": "Deze oversteekplaats heeft markeringen van een onbekend type" + }, + "if": "crossing:markings=yes" + }, + { + "if": "crossing:markings=lines", + "then": { + "en": "This crossings has lines on either side of the crossing", + "nl": "Deze oversteekplaats heeft lijnen aan beide kanten van de oversteekplaats" + }, + "icon": { + "class": "large", + "path": "./assets/layers/crossings/markings_lines.png" + } + }, + { + "if": "crossing:markings=ladder", + "then": { + "en": "This crossing has lines on either side of the crossing, along with bars connecting them", + "nl": "Deze oversteekplaats heeft lijnen aan beide kanten van de oversteekplaats, met strepen die ze verbinden" + }, + "icon": { + "class": "large", + "path": "./assets/layers/crossings/markings_ladder.png" + } + }, + { + "if": "crossing:markings=dashes", + "then": { + "en": "This crossing has dashed lines on either sides of the crossing", + "nl": "Deze oversteekplaats heeft onderbroken lijnen aan beide kanten van de oversteekplaats" + }, + "icon": { + "class": "large", + "path": "./assets/layers/crossings/markings_dashes.png" + } + }, + { + "if": "crossing:markings=dots", + "then": { + "en": "This crossing has dotted lines on either sides of the crossing", + "nl": "Deze oversteekplaats heeft stippellijnen aan beide kanten van de oversteekplaats" + }, + "icon": { + "class": "large", + "path": "./assets/layers/crossings/markings_dots.png" + } + }, + { + "if": "crossing:markings=surface", + "then": { + "en": "This crossing is marked by using a different coloured surface", + "nl": "Deze oversteekplaats is gemarkeerd door een anders gekleurd wegdek" + }, + "icon": { + "class": "large", + "path": "./assets/layers/crossings/markings_surface.png" + } + }, + { + "if": "crossing:markings=ladder:skewed", + "then": { + "en": "This crossing has lines on either side of the crossing, along with angled bars connecting them", + "nl": "Deze oversteekplaats heeft lijnen aan beide kanten van de oversteekplaats, met schuine strepen die ze verbinden" + }, + "icon": { + "class": "large", + "path": "./assets/layers/crossings/markings_ladder_skewed.png" + } + }, + { + "if": "crossing:markings=zebra:paired", + "then": { + "en": "This crossing has zebra markings with an interruption in every bar", + "nl": "Deze oversteekplaats heeft zebramarkeringen met een onderbreking van elke streep" + } + }, + { + "if": "crossing:markings=zebra:bicolour", + "then": { + "en": "This crossing has zebra markings in alternating colours", + "nl": "Deze oversteekplaats heeft een zebramarkering in afwisselende kleuren" + }, + "icon": { + "class": "large", + "path": "./assets/layers/crossings/markings_zebra_bicolour.png" + } + }, + { + "if": "crossing:markings=zebra:double", + "then": { + "en": "This crossing has double zebra markings", + "nl": "Deze oversteekplaats heeft een dubbele zebramarkering" + }, + "icon": { + "class": "large", + "path": "./assets/layers/crossings/markings_zebra_double.png" + } + }, + { + "if": "crossing:markings=pictograms", + "then": { + "en": "This crossing has pictograms on the road", + "nl": "Deze oversteekplaats heeft pictogrammen op de weg" + } + }, + { + "if": "crossing:markings=ladder:paired", + "then": { + "en": "This crossing has lines on either side of the crossing, along with bars connecting them, with an interruption in every bar", + "nl": "Deze oversteekplaats heeft lijnen aan beide kanten van de oversteekplaats, met strepen die ze verbinden, met een onderbreking van elke streep" + } + }, + { + "if": "crossing:markings=lines:paired", + "then": { + "en": "This crossing has double lines on either side of the crossing", + "nl": "Deze oversteekplaats heeft dubbele lijnen aan beide kanten van de oversteekplaats" + }, + "icon": { + "class": "large", + "path": "./assets/layers/crossings/markings_lines_paired.png" } } - ] + ], + "render": { + "en": "This crossing has {crossing:markings} markings", + "nl": "Deze oversteekplaats heeft {crossing:markings} markeringen" + }, + "freeform": { + "key": "crossing:markings", + "type": "string", + "addExtraTags": [ + "fixme=Free-form value used in MapComplete for crossing:markings" + ] + }, + "multiAnswer": true }, { "id": "crossing-bicycle-allowed", @@ -273,7 +406,7 @@ "nl": "Is deze oversteekplaats ook voor fietsers", "de": "Können Radfahrer diese Kreuzung nutzen?", "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?", "fr": "Est-ce que ce passage est également pour les vélos ?", "cs": "Je tento přechod i pro kola?" @@ -287,7 +420,7 @@ "nl": "Een fietser kan deze oversteekplaats gebruiken", "de": "Radfahrer können diese Kreuzung nutzen", "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", "fr": "Un cycliste peut utiliser ce passage", "cs": "Cyklista může tento přechod využít" @@ -300,7 +433,7 @@ "nl": "Een fietser kan deze oversteekplaats niet gebruiken", "de": "Radfahrer können diese Kreuzung nicht nutzen", "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", "fr": "Un cycliste ne peut pas utiliser ce passage", "cs": "Cyklista nemůže tento přechod použít" @@ -314,7 +447,7 @@ "en": "Does this crossing have an island in the middle?", "nl": "Heeft deze oversteekplaats een verkeerseiland in het midden?", "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 ?", "ca": "Aquest creuament té una illa al mig?", "cs": "Má tento přechod uprostřed ostrůvek?" @@ -353,7 +486,7 @@ "en": "Does this crossing have tactile paving?", "nl": "Heeft deze oversteekplaats een geleidelijn?", "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 ?", "ca": "Aquest creuament té superfície podotàctil?", "cs": "Má tento přechod hmatovou dlažbu?" @@ -366,7 +499,7 @@ "en": "This crossing has tactile paving", "nl": "Deze oversteekplaats heeft een geleidelijn", "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", "ca": "Este creuament té superfície podotàctil", "cs": "Tento přechod má hmatovou dlažbu" @@ -378,7 +511,7 @@ "en": "This crossing does not have tactile paving", "nl": "Deze oversteekplaats heeft geen geleidelijn", "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", "ca": "Este creuament no té superfície podotàctil", "cs": "Tento přechod nemá hmatovou dlažbu" @@ -390,7 +523,7 @@ "en": "This crossing has tactile paving, but is not correct", "nl": "Deze oversteekplaats heeft een geleidelijn, die incorrect is.", "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", "ca": "Este creuament té superfície podotàctil, però no correctament", "cs": "Tento přechod má hmatovou dlažbu, ale ne správně" @@ -405,7 +538,7 @@ "en": "Does this traffic light have a button to request green light?", "nl": "Heeft dit verkeerslicht een knop voor groen licht?", "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?", "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?" @@ -423,7 +556,7 @@ "en": "This traffic light has a button to request green light", "nl": "Dit verkeerslicht heeft een knop voor groen licht", "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", "fr": "Ce feu a un bouton pour demander le vert", "cs": "Tento semafor má tlačítko pro vyžádání zeleného světla" @@ -435,7 +568,7 @@ "en": "This traffic light does not have a button to request green light", "nl": "Dit verkeerlicht heeft geen knop voor groen licht", "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", "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" @@ -451,7 +584,8 @@ "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?", "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", "mappings": [ @@ -463,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.", "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.", - "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" } }, { @@ -474,7 +609,8 @@ "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.", "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" } }, { @@ -485,7 +621,8 @@ "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.", "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" } }, { @@ -496,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.", "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.", - "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" } } ] @@ -509,7 +647,9 @@ "nl": "Heeft dit verkeerslicht een element dat trilt om te helpen bij het oversteken? (meestal onderaan de oversteekknop geplaatst)", "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)", - "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": "Чи має цей світлофор вібраційні сигнали для полегшення переходу? (зазвичай розташовані внизу кнопки переходу)", + "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": { "and": [ @@ -526,7 +666,8 @@ "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é.", "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": { "path": "./assets/layers/crossings/Vibrating_button_illustration.jpg", @@ -541,7 +682,8 @@ "nl": "De knop bij dit verkeerslicht kan niet 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é.", "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" } } ] @@ -552,7 +694,8 @@ "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?", "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", "mappings": [ @@ -562,7 +705,8 @@ "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.", "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" } }, { @@ -571,7 +715,8 @@ "en": "This traffic light does not have an arrow pointing in the direction of crossing.", "de": "Diese Ampel hat keinen Pfeil, der in Richtung der Kreuzung zeigt.", "ca": "Aquest semàfor no té una fletxa apuntant en la direcció del creuament.", - "cs": "Na tomto semaforu není šipka ukazující směr přecházení." + "cs": "Na tomto semaforu není šipka ukazující směr přecházení.", + "es": "Este semáforo no tiene una flecha que apunta en la dirección del cruce" } } ] @@ -582,7 +727,8 @@ "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?", "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", "mappings": [ @@ -593,7 +739,8 @@ "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.", "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": { "path": "./assets/layers/crossings/180px-Trairvoja_mapeto.jpg", @@ -607,7 +754,8 @@ "de": "Die Ampel hat keine taktile Karte, die den Verlauf der Kreuzung zeigt.", "nl": "Dit verkeerlicht heeft geen voelkaart die de indeling van de oversteekplaats laat zien.", "ca": "Aquest semàfor no disposa d'un mapa tàctil que mostra el traçat del pas.", - "cs": "Tento semafor nemá hmatovou mapu zobrazující rozložení přechodu." + "cs": "Tento semafor nemá hmatovou mapu zobrazující rozložení přechodu.", + "es": "Este semáforo no tiene un mapa táctil que muestra el diseño del cruce" } } ] @@ -618,7 +766,7 @@ "en": "Can a cyclist turn right when the light is red?", "nl": "Mag een fietser rechtsaf slaan als het licht rood is?", "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 ?", "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á?" @@ -675,7 +823,7 @@ "en": "Can a cyclist go straight on when the light is red?", "nl": "Mag een fietser rechtdoor gaan als het licht rood is?", "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 ?", "ca": "Un ciclista pot seguir recte si el semàfor està en roig?", "cs": "Může cyklista jet rovně, když svítí červená?" @@ -688,7 +836,7 @@ "en": "A cyclist can go straight on if the light is red", "nl": "Een fietser mag wel rechtdoor gaan als het licht rood is", "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", "cs": "Cyklista může jet rovně, pokud svítí červená" }, @@ -704,7 +852,7 @@ "en": "A cyclist can go straight on if the light is red", "nl": "Een fietser mag wel rechtdoor gaan als het licht rood is", "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", "cs": "Cyklista může jet rovně, pokud svítí červená" }, @@ -716,7 +864,7 @@ "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", "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", "cs": "Cyklista nemůže jet rovně, pokud svítí červená" } diff --git a/assets/layers/crossings/license_info.json b/assets/layers/crossings/license_info.json index 22105ed13..cfed79075 100644 --- a/assets/layers/crossings/license_info.json +++ b/assets/layers/crossings/license_info.json @@ -39,6 +39,116 @@ "https://wiki.openstreetmap.org/wiki/File:Vibrating_button_illustration.jpg" ] }, + { + "path": "crossing_unmarked.png", + "license": "CC0 1.0", + "authors": [ + "StenSoft" + ], + "sources": [ + "https://wiki.openstreetmap.org/wiki/File:Crossing_without_markings.png" + ] + }, + { + "path": "markings_dashes.png", + "license": "CC0 1.0", + "authors": [ + "Popball" + ], + "sources": [ + "https://wiki.openstreetmap.org/wiki/File:Markings_dashes.png" + ] + }, + { + "path": "markings_dots.png", + "license": "CC0 1.0", + "authors": [ + "Popball" + ], + "sources": [ + "https://wiki.openstreetmap.org/wiki/File:Markings_dots.png" + ] + }, + { + "path": "markings_ladder.png", + "license": "CC0 1.0", + "authors": [ + "Popball" + ], + "sources": [ + "https://wiki.openstreetmap.org/wiki/File:Markings_ladder.png" + ] + }, + { + "path": "markings_ladder_skewed.png", + "license": "CC0 1.0", + "authors": [ + "Popball" + ], + "sources": [ + "https://wiki.openstreetmap.org/wiki/File:Markings_adder_skewed.png" + ] + }, + { + "path": "markings_lines.png", + "license": "CC0 1.0", + "authors": [ + "Popball" + ], + "sources": [ + "https://wiki.openstreetmap.org/wiki/File:Markings_lines.png" + ] + }, + { + "path": "markings_lines_paired.png", + "license": "CC0 1.0", + "authors": [ + "Popball" + ], + "sources": [ + "https://wiki.openstreetmap.org/wiki/File:Markings_lines_paired.png" + ] + }, + { + "path": "markings_surface.png", + "license": "CC0 1.0", + "authors": [ + "Popball" + ], + "sources": [ + "https://wiki.openstreetmap.org/wiki/File:Surface_crossing_markings.png" + ] + }, + { + "path": "markings_zebra.png", + "license": "CC0 1.0", + "authors": [ + "Popball" + ], + "sources": [ + "https://wiki.openstreetmap.org/wiki/File:Markings_zebra.png" + ] + }, + { + "path": "markings_zebra_bicolour.png", + "license": "CC0 1.0", + "authors": [ + "Popball" + ], + "sources": [ + "https://wiki.openstreetmap.org/wiki/File:Markings_zebra_bicolour.png" + ] + }, + { + "path": "markings_zebra_double.png", + "license": "CC0 1.0", + "authors": [ + "Popball" + ], + "sources": [ + "https://wiki.openstreetmap.org/wiki/File:Crossing_markings_zebra_double.png" + ] + }, { "path": "pedestrian_crossing.svg", "license": "CC-BY-SA-4.0", diff --git a/assets/layers/crossings/markings_dashes.png b/assets/layers/crossings/markings_dashes.png new file mode 100644 index 000000000..e562679c1 Binary files /dev/null and b/assets/layers/crossings/markings_dashes.png differ diff --git a/assets/layers/crossings/markings_dashes.png.license b/assets/layers/crossings/markings_dashes.png.license new file mode 100644 index 000000000..09b78e137 --- /dev/null +++ b/assets/layers/crossings/markings_dashes.png.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: Popball +SPDX-License-Identifier: CC0 1.0 \ No newline at end of file diff --git a/assets/layers/crossings/markings_dots.png b/assets/layers/crossings/markings_dots.png new file mode 100644 index 000000000..afd399b52 Binary files /dev/null and b/assets/layers/crossings/markings_dots.png differ diff --git a/assets/layers/crossings/markings_dots.png.license b/assets/layers/crossings/markings_dots.png.license new file mode 100644 index 000000000..09b78e137 --- /dev/null +++ b/assets/layers/crossings/markings_dots.png.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: Popball +SPDX-License-Identifier: CC0 1.0 \ No newline at end of file diff --git a/assets/layers/crossings/markings_ladder.png b/assets/layers/crossings/markings_ladder.png new file mode 100644 index 000000000..0cee129af Binary files /dev/null and b/assets/layers/crossings/markings_ladder.png differ diff --git a/assets/layers/crossings/markings_ladder.png.license b/assets/layers/crossings/markings_ladder.png.license new file mode 100644 index 000000000..09b78e137 --- /dev/null +++ b/assets/layers/crossings/markings_ladder.png.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: Popball +SPDX-License-Identifier: CC0 1.0 \ No newline at end of file diff --git a/assets/layers/crossings/markings_ladder_skewed.png b/assets/layers/crossings/markings_ladder_skewed.png new file mode 100644 index 000000000..a9d717d42 Binary files /dev/null and b/assets/layers/crossings/markings_ladder_skewed.png differ diff --git a/assets/layers/crossings/markings_ladder_skewed.png.license b/assets/layers/crossings/markings_ladder_skewed.png.license new file mode 100644 index 000000000..09b78e137 --- /dev/null +++ b/assets/layers/crossings/markings_ladder_skewed.png.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: Popball +SPDX-License-Identifier: CC0 1.0 \ No newline at end of file diff --git a/assets/layers/crossings/markings_lines.png b/assets/layers/crossings/markings_lines.png new file mode 100644 index 000000000..cbd7a9ec6 Binary files /dev/null and b/assets/layers/crossings/markings_lines.png differ diff --git a/assets/layers/crossings/markings_lines.png.license b/assets/layers/crossings/markings_lines.png.license new file mode 100644 index 000000000..09b78e137 --- /dev/null +++ b/assets/layers/crossings/markings_lines.png.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: Popball +SPDX-License-Identifier: CC0 1.0 \ No newline at end of file diff --git a/assets/layers/crossings/markings_lines_paired.png b/assets/layers/crossings/markings_lines_paired.png new file mode 100644 index 000000000..f33af47db Binary files /dev/null and b/assets/layers/crossings/markings_lines_paired.png differ diff --git a/assets/layers/crossings/markings_lines_paired.png.license b/assets/layers/crossings/markings_lines_paired.png.license new file mode 100644 index 000000000..09b78e137 --- /dev/null +++ b/assets/layers/crossings/markings_lines_paired.png.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: Popball +SPDX-License-Identifier: CC0 1.0 \ No newline at end of file diff --git a/assets/layers/crossings/markings_surface.png b/assets/layers/crossings/markings_surface.png new file mode 100644 index 000000000..f0048c67c Binary files /dev/null and b/assets/layers/crossings/markings_surface.png differ diff --git a/assets/layers/crossings/markings_surface.png.license b/assets/layers/crossings/markings_surface.png.license new file mode 100644 index 000000000..09b78e137 --- /dev/null +++ b/assets/layers/crossings/markings_surface.png.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: Popball +SPDX-License-Identifier: CC0 1.0 \ No newline at end of file diff --git a/assets/layers/crossings/markings_zebra.png b/assets/layers/crossings/markings_zebra.png new file mode 100644 index 000000000..6588af96f Binary files /dev/null and b/assets/layers/crossings/markings_zebra.png differ diff --git a/assets/layers/crossings/markings_zebra.png.license b/assets/layers/crossings/markings_zebra.png.license new file mode 100644 index 000000000..09b78e137 --- /dev/null +++ b/assets/layers/crossings/markings_zebra.png.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: Popball +SPDX-License-Identifier: CC0 1.0 \ No newline at end of file diff --git a/assets/layers/crossings/markings_zebra_bicolour.png b/assets/layers/crossings/markings_zebra_bicolour.png new file mode 100644 index 000000000..2e77a1996 Binary files /dev/null and b/assets/layers/crossings/markings_zebra_bicolour.png differ diff --git a/assets/layers/crossings/markings_zebra_bicolour.png.license b/assets/layers/crossings/markings_zebra_bicolour.png.license new file mode 100644 index 000000000..09b78e137 --- /dev/null +++ b/assets/layers/crossings/markings_zebra_bicolour.png.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: Popball +SPDX-License-Identifier: CC0 1.0 \ No newline at end of file diff --git a/assets/layers/crossings/markings_zebra_double.png b/assets/layers/crossings/markings_zebra_double.png new file mode 100644 index 000000000..6ab4c3a0b Binary files /dev/null and b/assets/layers/crossings/markings_zebra_double.png differ diff --git a/assets/layers/crossings/markings_zebra_double.png.license b/assets/layers/crossings/markings_zebra_double.png.license new file mode 100644 index 000000000..09b78e137 --- /dev/null +++ b/assets/layers/crossings/markings_zebra_double.png.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: Popball +SPDX-License-Identifier: CC0 1.0 \ No newline at end of file diff --git a/assets/layers/cycle_highways/cycle_highways.json b/assets/layers/cycle_highways/cycle_highways.json index f19a6605e..b772fbf8e 100644 --- a/assets/layers/cycle_highways/cycle_highways.json +++ b/assets/layers/cycle_highways/cycle_highways.json @@ -6,7 +6,7 @@ "ca": "vies ciclistes", "fr": "Aménagements cyclables", "nl": "fietssnelwegen", - "es": "autovías ciclistas", + "es": "Carreteras para bicicletas", "nb_NO": "sykkelmotorveier", "da": "cykelmotorveje", "pa_PK": "سائیکل‌وے", @@ -27,7 +27,7 @@ "ca": "via ciclista", "fr": "Aménagement cyclable", "nl": "fietssnelweg", - "es": "autovía ciclista", + "es": "Carretera para bicicletas", "nb_NO": "sykkelmotorvei", "da": "cykelmotorvej", "pa_PK": "سائیکل‌وے", diff --git a/assets/layers/cycleways_and_roads/cycleways_and_roads.json b/assets/layers/cycleways_and_roads/cycleways_and_roads.json index ea8a549b0..2dc5232b9 100644 --- a/assets/layers/cycleways_and_roads/cycleways_and_roads.json +++ b/assets/layers/cycleways_and_roads/cycleways_and_roads.json @@ -13,7 +13,7 @@ "en": "All infrastructure that someone can cycle over, accompanied with questions about this infrastructure", "nl": "Alle infrastructuur waar je over kunt fietsen, met vragen over die infrastructuur", "de": "Infrastruktur, die man mit dem Fahrrad befahren kann, begleitet von diesbezüglichen Fragen", - "es": "Todas las infraestructuras sobre las que se puede circular en bicicleta, acompañadas de preguntas sobre las mismas", + "es": "Toda la infraestructura por la que alguien puede circular en bicicleta, acompañada de preguntas sobre esta infraestructura", "fr": "Toutes les infrastructures sur lesquelles quelqu'un peut rouler, accompagnées de questions sur cette infrastructure", "ca": "Totes les infraestructures per les quals algú pot ciclar, acompanyades de preguntes sobre aquesta infraestructura", "cs": "Veškerá infrastruktura, kterou může někdo projet na kole, doplněná o otázky týkající se této infrastruktury" @@ -168,7 +168,8 @@ "de": "Straße mit Radweg neben der Straße {name}", "fr": "Route avec piste cyclable à côté de la route {name}", "ca": "Carretera amb via ciclista al costat de la carretera {name}", - "cs": "Silnice s cyklostezkou vedle silnice {name}" + "cs": "Silnice s cyklostezkou vedle silnice {name}", + "es": "Carretera con carril bici junto a la carretera {name}" } }, { @@ -179,7 +180,7 @@ "de": "Radweg neben der Straße", "fr": "Piste cyclable séparée de la route", "da": "Cykelsti ved siden af vejen", - "es": "Vía ciclista al lado de la carretera", + "es": "Carril bici junto a la carretera", "ca": "Via ciclista al costat de la carretera", "cs": "Cyklostezka vedle silnice" } @@ -197,7 +198,8 @@ "de": "Fahrradstraße {name}", "fr": "Rue cyclable {name}", "ca": "Ciclocarrer {name}", - "cs": "Cykloulice {name}" + "cs": "Cykloulice {name}", + "es": "Calle para bicicletas {name}" } }, { @@ -209,7 +211,7 @@ "fr": "Vélorue", "ca": "Carrer ciclista", "da": "Cykelgade", - "es": "Ciclocalle", + "es": "Calle para bicicletas", "pa_PK": "سائیکل سڑک", "cs": "Cykloulice" } @@ -310,7 +312,7 @@ "en": "There is a lane next to the road (separated with paint)", "nl": "Er is een fietspad aangrenzend aan de weg (gescheiden met verf)", "de": "Es gibt einen Radfahrstreifen neben der Straße (getrennt durch eine Straßenmarkierung)", - "es": "Hay un carril a lado de la carretera (separado con pintura)", + "es": "Hay un carril junto a la carretera (separado con pintura)", "fr": "Il y a une piste cyclable separée de la route", "ca": "Hi ha un carril al costat de la carretera (separat amb pintura)", "cs": "Vedle silnice je pruh (oddělený barvou)" @@ -322,7 +324,7 @@ "en": "There is a track, but no cycleway drawn separately from this road on the map.", "nl": "Er is een fietspad (los van de weg), maar geen fietspad afzonderlijk getekend naast deze weg.", "de": "Es gibt einen Weg, aber keinen Radweg, der auf der Karte getrennt von dieser Straße eingezeichnet ist.", - "es": "Hay una pista, pero no hay un carril bici dibujado separado de esta carretera en el mapa.", + "es": "Hay una pista, pero ningún carril bici dibujado por separado de esta carretera en el mapa", "fr": "Il y a une piste cyclable, mais elle n'est pas séparée de la route sur la carte.", "ca": "Hi ha una pista, però no hi ha una via ciclista dibuixada separada d'aquesta carretera al mapa.", "cs": "Na mapě je vyznačena stezka, ale žádná cyklostezka odděleně od této silnice." @@ -379,7 +381,7 @@ "nl": "Is deze weg verlicht?", "de": "Ist diese Straße beleuchtet?", "da": "Er denne gade belyst?", - "es": "¿Esta calle está iluminada?", + "es": "¿Está iluminada esta calle?", "fr": "Cette rue est-elle éclairée ?", "ca": "Aquesta carretera està il·luminada?", "pl": "Czy ta ulica jest oświetlona?", @@ -392,7 +394,7 @@ "en": "This street is lit", "nl": "Deze weg is verlicht", "de": "Diese Straße ist beleuchtet", - "es": "La calle está iluminada", + "es": "Esta calle está iluminada", "fr": "Cette rue est éclairée", "pl": "Ta ulica jest oświetlona", "ca": "Aquest carrer està il·luminat", @@ -450,7 +452,7 @@ "en": "Is this a cyclestreet?", "nl": "Is dit een fietsstraat?", "de": "Ist das eine Fahrradstraße?", - "es": "¿Esta es una ciclocalle?", + "es": "¿Es esta una calle para bicicletas?", "fr": "Est-ce une route cyclable ?", "ca": "Açò és un ciclocarrer?", "cs": "Je toto cyklostezka?" @@ -469,7 +471,7 @@ "en": "This is a cyclestreet, and a 30km/h zone.", "nl": "Dit is een fietsstraat, en dus een 30km/h zone", "de": "Dies ist eine Fahrradstraße in einer 30km/h Zone.", - "es": "Esta es una ciclocalle, y una zona 30km/h.", + "es": "Esta es una calle para bicicletas, y una zona de 30 km/h", "fr": "C'est une rue cyclable, et une zone à 30 km/h.", "ca": "Açò és un ciclocarrer, i una zona de 30km/h.", "cs": "Jedná se o cyklostezku a zónu s rychlostí 30 km/h." @@ -486,7 +488,7 @@ "en": "This is a cyclestreet", "nl": "Dit is een fietsstraat", "de": "Dies ist eine Fahrradstraße", - "es": "Esta es una ciclocalle", + "es": "Esta es una calle para bicicletas", "fr": "Ceci est une route cyclable", "ca": "Açò és un ciclocarrer", "cs": "Tohle je cyklostezka" @@ -499,7 +501,7 @@ "en": "This is not a cyclestreet.", "nl": "Dit is geen fietsstraat", "de": "Dies ist keine Fahrradstraße.", - "es": "Esta no es una ciclocalle.", + "es": "Esta no es una calle para bicicletas", "fr": "Ceci n'est pas une rue cyclable (vélorue)", "ca": "Açò no és un ciclocarrer.", "cs": "Toto není cyklostezka." @@ -542,7 +544,7 @@ "en": "The maximum speed is 20 km/h", "nl": "De maximumsnelheid is 20 km/u", "de": "Die Höchstgeschwindigkeit ist 20 km/h", - "es": "La velocidad máxima es de 20km/h", + "es": "La velocidad máxima es de 20 km/h", "fr": "La vitesse maximum est de 20 km/h", "pl": "Maksymalna prędkość tutaj to 20 km/h", "ca": "La velocitat màxima és de 20km/h", @@ -555,7 +557,7 @@ "en": "The maximum speed is 30 km/h", "nl": "De maximumsnelheid is 30 km/u", "de": "Die Höchstgeschwindigkeit ist 30 km/h", - "es": "La velocidad máxima es de 30km/h", + "es": "La velocidad máxima es de 30 km/h", "fr": "La vitesse maximum est de 30 km/h", "pl": "Maksymalna prędkość tutaj to 30 km/h", "ca": "La velocitat màxima és de 30km/h", @@ -568,7 +570,7 @@ "en": "The maximum speed is 50 km/h", "nl": "De maximumsnelheid is 50 km/u", "de": "Die Höchstgeschwindigkeit ist 50 km/h", - "es": "La velocidad máxima es de 50km/h", + "es": "La velocidad máxima es de 50 km/h", "fr": "La vitesse maximum est de 50 km/h", "pl": "Maksymalna prędkość tutaj to 50 km/h", "ca": "La velocitat màxima és de 50km/h", @@ -582,7 +584,7 @@ "nl": "De maximumsnelheid is 70 km/u", "de": "Die Höchstgeschwindigkeit ist 70 km/h", "id": "Kecepatan maksimum 70 km/jam", - "es": "La velocidad máxima es de 70km/h", + "es": "La velocidad máxima es de 70 km/h", "fr": "La vitesse maximum est de 70 km/h", "pl": "Maksymalna prędkość tutaj to 70 km/h", "ca": "La velocitat màxima és de 70km/h", @@ -596,7 +598,7 @@ "nl": "De maximumsnelheid is 90 km/u", "de": "Die Höchstgeschwindigkeit ist 90 km/h", "id": "Kecepatan maksimum 90 km/jam", - "es": "La velocidad máxima es de 90km/h", + "es": "La velocidad máxima es de 90 km/h", "fr": "La vitesse maximum est de 90 km/h", "ca": "La velocitat màxima és de 90km/h", "pl": "Maksymalna prędkość tutaj to 90 km/h", @@ -609,7 +611,7 @@ "nl": "Wat is de maximumsnelheid in deze straat?", "de": "Was ist die Höchstgeschwindigkeit auf dieser Straße?", "id": "Berapa kecepatan maksimum di jalan ini?", - "es": "¿Cual es la velocidad máxima en esta calle?", + "es": "¿Cuál es la velocidad máxima en esta calle?", "fr": "Quelle est la vitesse maximum dans cette rue ?", "ca": "Quina és la velocitat màxima a aquest carrer?", "pl": "Jaka jest maksymalna prędkość na tej ulicy?", @@ -682,7 +684,7 @@ "en": "This cycleway is made of smooth paving stones", "nl": "Dit fietspad is gemaakt van straatstenen", "de": "Dieser Fahrradweg besteht aus ebenen Pflastersteinen", - "es": "Este carril bici está hecho de piedras de pavimento suaves", + "es": "Este carril bici está hecho de adoquines lisos", "fr": "Cette piste cyclable est faite de petits pavés", "ca": "Aquesta via ciclista està feta de pedres de paviment suaus", "cs": "Tato cyklostezka je tvořena hladkou dlažbou" @@ -708,7 +710,8 @@ "de": "Dieser Radweg besteht aus Kopfsteinpflaster", "fr": "Cette piste cyclable est faite de pavés (taillé ou non)", "ca": "Aquesta via ciclista està feta de llambordes (sense tallar o muntar)", - "cs": "Tato cyklostezka je z dlážděných kamenů (neotesaných nebo usazených)" + "cs": "Tato cyklostezka je z dlážděných kamenů (neotesaných nebo usazených)", + "es": "Este carril bici está hecho de adoquines (sin labrar o de sillería)" }, "hideInAnswer": true }, @@ -720,7 +723,8 @@ "de": "Dieser Fahrradweg besteht aus unregelmäßigem, unbehauenem Kopfsteinpflaster", "fr": "Cette piste cyclable est en pavés bruts et naturels", "ca": "Aquesta via ciclista està feta de llambordes naturals", - "cs": "Tato cyklostezka je vyrobena ze surové přírodního kamene" + "cs": "Tato cyklostezka je vyrobena ze surové přírodního kamene", + "es": "Este carril bici está hecho de adoquines naturales sin labrar" } }, { @@ -731,7 +735,8 @@ "de": "Dieser Fahrradweg besteht aus regelmäßigem, behauenem Kopfsteinpflaster", "fr": "Cette piste cyclable est en pavés plats ou carrés", "ca": "Aquesta via ciclista està feta de llamborda plana i quadrada", - "cs": "Tato cyklostezka je tvořena plochou čtvercovou dlažbou" + "cs": "Tato cyklostezka je tvořena plochou čtvercovou dlažbou", + "es": "Este carril bici está hecho de adoquines planos y cuadrados" } }, { @@ -764,7 +769,7 @@ "en": "This cycleway is made of fine gravel", "nl": "Dit fietspad is gemaakt van fijn grind", "de": "Dieser Radweg besteht aus feinem Schotter", - "es": "Este carril bici está hecho de gravilla", + "es": "Este carril bici está hecho de grava fina", "fr": "Cette piste cyclable est faite en graviers fins", "ca": "Aquesta via ciclista està feta de grava fina", "cs": "Tato cyklostezka je tvořena jemným štěrkem" @@ -777,7 +782,8 @@ "nl": "Dit fietspad is gemaakt van kiezelsteentjes", "de": "Der Radweg ist aus Kies", "fr": "Cette piste cyclable est en cailloux", - "cs": "Tato cyklostezka je z oblázkového kamene" + "cs": "Tato cyklostezka je z oblázkového kamene", + "es": "Este carril bici está hecho de adoquines" } }, { @@ -786,7 +792,7 @@ "en": "This cycleway is made from raw ground", "nl": "Dit fietspad is gemaakt van aarde", "de": "Dieser Radweg besteht aus Rohboden", - "es": "Este carril bici está hecho de tierra natural", + "es": "Este carril bici está hecho de tierra", "fr": "Cette piste cyclable est faite en sol brut", "cs": "Tato cyklostezka je vyrobena ze surové zeminy" } @@ -796,7 +802,7 @@ "en": "What is the surface of the cycleway made from?", "nl": "Waaruit is het oppervlak van het fietspad van gemaakt?", "de": "Was ist der Belag dieses Radwegs?", - "es": "¿De qué superficie está hecho este carril bici?", + "es": "¿De qué material está hecha la superficie del carril bici?", "fr": "De quoi est faite la surface de la piste cyclable ?", "ca": "De quina superfície està fet aquesta via ciclista?", "cs": "Jaký je povrch cyklostezky?" @@ -807,11 +813,13 @@ "id": "incline", "question": { "en": "Does {title()} have an incline?", - "de": "Hat {title()} eine Steigung?" + "de": "Hat {title()} eine Steigung?", + "es": "¿Tiene {title()} una inclinación?" }, "render": { "en": "This road has an slope of {incline}", - "de": "Die Straße hat {incline} Steigung" + "de": "Die Straße hat {incline} Steigung", + "es": "Esta carretera tiene una pendiente de {incline}" }, "freeform": { "key": "incline", @@ -823,7 +831,8 @@ "then": { "en": "There is (probably) no incline here", "de": "Hier gibt es (wahrscheinlich) keine Steigung", - "nl": "De straat hier is (waarschijnlijk) zonder helling" + "nl": "De straat heeft hier (waarschijnlijk) geen helling", + "es": "Probablemente no hay inclinación aquí" }, "hideInAnswer": true }, @@ -837,7 +846,8 @@ }, "then": { "en": "This road has a slope", - "de": "Die Straße hat eine Steigung" + "de": "Die Straße hat eine Steigung", + "es": "Esta carretera tiene una pendiente" }, "hideInAnswer": true } @@ -848,7 +858,7 @@ "en": "What is the smoothness of this cycleway?", "nl": "Wat is de kwaliteit van dit fietspad?", "de": "Wie eben ist dieser Radweg?", - "es": "¿Cual es la suavidad de este carril bici?", + "es": "¿Cuál es la suavidad de este carril bici?", "fr": "Quel est l'état de la piste cyclable ?", "ca": "Quina és la suavitat d'aquesta via ciclista?", "cs": "Jaká je hladkost této cyklostezky?" @@ -869,7 +879,8 @@ "de": "Geeignet für dünne Rollen: Rollerblades, Skateboard", "fr": "Utilisable pour les patins : patins à roulettes, skateboard", "ca": "Utilitzable per a rodets prims: patins, monopatí", - "cs": "Použitelné pro malá kolečka: kolečkové brusle, skateboardy" + "cs": "Použitelné pro malá kolečka: kolečkové brusle, skateboardy", + "es": "Utilizable para ruedas finas: patines, monopatín" } }, { @@ -880,7 +891,8 @@ "de": "Geeignet für dünne Reifen: Rennrad", "fr": "Utilisable pour les roues fines : vélo de course", "ca": "Utilitzable per a rodes primes: bicicleta de carreres", - "cs": "Použitelné pro úzká kola: závodní kolo" + "cs": "Použitelné pro úzká kola: závodní kolo", + "es": "Utilizable para ruedas finas: bicicleta de carreras" } }, { @@ -889,7 +901,7 @@ "en": "Usable for normal wheels: city bike, wheelchair, scooter", "nl": "Geschikt voor normale wielen: stadsfiets, rolstoel, scooter", "de": "Geeignet für normale Reifen: Fahrrad, Rollstuhl, Scooter", - "es": "Utilizable para ruedas normales: bici de ciudad, sillas de ruedas, scooter", + "es": "Utilizable para ruedas normales: bicicleta urbana, silla de ruedas, patinete", "fr": "Utilisable pour les roues traditionelles : vélo, chaise roulante, trotinettes", "ca": "Utilitzable per a rodes normals: bici de ciutat, cadira de rodes, patinets", "cs": "Použitelné pro běžná kola: městské kolo, invalidní vozík, skútr" @@ -903,7 +915,8 @@ "de": "Geeignet für breite Reifen: Trekkingfahrrad, Auto, Rikscha", "fr": "Utilisable pour les roues robustes : VTT, voitures, pousse-pousse", "ca": "Utilitzable per a rodes robustes: bicicleta de senderisme, cotxe, rickshaw", - "cs": "Použitelné pro robustní kola: trekingové kolo, auto, rikša" + "cs": "Použitelné pro robustní kola: trekingové kolo, auto, rikša", + "es": "Utilizable para ruedas robustas: bicicleta de trekking, coche, rickshaw" } }, { @@ -914,7 +927,8 @@ "de": "Geeignet für Fahrzeuge mit großer Bodenfreiheit: leichte Geländewagen", "fr": "Utilisable pour les véhicules à dégagement élevé : véhicule tout-terrain léger", "ca": "Utilitzable per a vehicles amb gran espai lliure: vehicle tot terreny lleuger", - "cs": "Použitelné pro vozidla s vysokou světlou výškou: lehké terénní vozidlo" + "cs": "Použitelné pro vozidla s vysokou světlou výškou: lehké terénní vozidlo", + "es": "Utilizable para vehículos con altura libre al suelo alta: vehículo todoterreno ligero" } }, { @@ -925,7 +939,8 @@ "de": "Geeignet für Geländefahrzeuge: schwerer Geländewagen", "fr": "Utilisable pour les véhicules tout-terrain : véhicule tout-terrain lourd", "ca": "Utilitzable per a vehicles tot terreny: vehicle tot terreny resistent", - "cs": "Použitelné pro terénní vozidla: těžké terénní vozidlo" + "cs": "Použitelné pro terénní vozidla: těžké terénní vozidlo", + "es": "Utilizable para vehículos todoterreno: vehículo todoterreno pesado" } }, { @@ -936,7 +951,8 @@ "de": "Geeignet für Geländefahrzeuge: Traktor, ATV", "fr": "Utilisable pour les véhicules hors route spécialisés : tracteur, véhicule 4x4", "ca": "Utilitzable per a vehicles tot terreny especialitzats: tractor, ATV", - "cs": "Použitelné pro specializovaná terénní vozidla: traktor, ATV" + "cs": "Použitelné pro specializovaná terénní vozidla: traktor, ATV", + "es": "Utilizable para vehículos todoterreno especializados: tractor, ATV" } }, { @@ -946,7 +962,8 @@ "nl": "Niet geschikt voor voertuigen met wielen", "de": "Unpassierbar / Keine bereiften Fahrzeuge", "fr": "Impasse / Aucun véhicule roulant", - "cs": "Neprůjezdné / Zákaz vjezdu vozidel" + "cs": "Neprůjezdné / Zákaz vjezdu vozidel", + "es": "Intransitable / Ningún vehículo con ruedas" } } ], @@ -974,7 +991,8 @@ "nl": "Dit fietspad is onverhard", "de": "Dieser Radweg ist nicht befestigt", "fr": "Cette piste cycable est non durcie", - "cs": "Tato cyklostezka není zpevněná" + "cs": "Tato cyklostezka není zpevněná", + "es": "Este carril bici no está pavimentado" }, "hideInAnswer": true }, @@ -1013,7 +1031,8 @@ "de": "Dieser Fahrradweg besteht aus ebenen Pflastersteinen", "id": "Jalur sepeda ini terbuat dari batu paving halus", "fr": "Cette piste cyclable est faite en pavés lisses", - "cs": "Tato cyklostezka je tvořena hladkými dlažebními kostkami" + "cs": "Tato cyklostezka je tvořena hladkými dlažebními kostkami", + "es": "Este carril bici está hecho de adoquines lisos" } }, { @@ -1037,7 +1056,8 @@ "de": "Dieser Radweg besteht aus Kopfsteinpflaster", "id": "Jalur sepeda ini terbuat dari cobblestone (unhewn atau sett)", "fr": "Cette piste cyclable est faite de pavés (taillé ou non)", - "cs": "Tato cyklostezka je vyrobena z dlážděného kamene (netesaného nebo vydlabaného)" + "cs": "Tato cyklostezka je vyrobena z dlážděného kamene (netesaného nebo vydlabaného)", + "es": "Este carril bici está hecho de adoquines (sin labrar o de sillería)" }, "hideInAnswer": true }, @@ -1049,7 +1069,8 @@ "de": "Dieser Fahrradweg besteht aus unregelmäßigem, unbehauenem Kopfsteinpflaster", "id": "Jalur sepeda ini terbuat dari batu bulat alami", "fr": "Cette piste cyclable est en pavés bruts et naturels", - "cs": "Tato cyklostezka je vyrobena ze surového přírodního dlažebního kamene" + "cs": "Tato cyklostezka je vyrobena ze surového přírodního dlažebního kamene", + "es": "Este carril bici está hecho de adoquines naturales sin labrar" } }, { @@ -1059,7 +1080,8 @@ "nl": "Dit fietspad is gemaakt van vlakke, rechthoekige kasseien", "de": "Dieser Fahrradweg besteht aus regelmäßigem, behauenem Kopfsteinpflaster", "fr": "Cette piste cyclable est en pavés plats ou carrés", - "cs": "Tato cyklostezka je vyrobena z ploché čtvercové dlažební kostky" + "cs": "Tato cyklostezka je vyrobena z ploché čtvercové dlažební kostky", + "es": "Este carril bici está hecho de adoquines planos y cuadrados" } }, { @@ -1095,7 +1117,7 @@ "nl": "Dit fietspad is gemaakt van fijn grind", "de": "Dieser Radweg besteht aus feinem Schotter", "id": "Jalur sepeda ini terbuat dari kerikil halus", - "es": "Este carril bici está hecho de gravilla", + "es": "Este carril bici está hecho de grava fina", "fr": "Cette piste cyclable est faite en graviers fins", "ca": "Aquesta via ciclista està feta de gravilla", "cs": "Tato cyklostezka je vyrobena z jemného štěrku" @@ -1109,7 +1131,8 @@ "de": "Der Radweg ist aus Kies", "id": "Jalur sepeda ini terbuat dari batu kerikil", "fr": "Cette piste cyclable est en cailloux", - "cs": "Tato cyklostezka je z oblázků" + "cs": "Tato cyklostezka je z oblázků", + "es": "Este carril bici está hecho de adoquines" } }, { @@ -1120,7 +1143,8 @@ "de": "Dieser Radweg besteht aus Rohboden", "id": "Jalur sepeda ini terbuat dari tanah alami", "fr": "Cette piste cyclable est faite en sol brut", - "cs": "Tato cyklostezka je vyrobena ze surové půdy" + "cs": "Tato cyklostezka je vyrobena ze surové půdy", + "es": "Este carril bici está hecho de tierra" } } ], @@ -1129,7 +1153,7 @@ "nl": "Waaruit is het oppervlak van de straat gemaakt?", "de": "Was ist der Belag dieser Straße?", "id": "Permukaan jalannya terbuat dari apa?", - "es": "¿De qué esta hecha la superficie de esta calle?", + "es": "¿De qué material está hecha la superficie de la calle?", "fr": "De quel materiel est faite cette rue ?", "ca": "De què està feta la superfície d'aquest carrer?", "cs": "Z čeho je povrch ulice vyroben?" @@ -1141,7 +1165,7 @@ "en": "What is the smoothness of this street?", "nl": "Wat is de kwaliteit van deze straat?", "de": "Wie eben ist diese Straße?", - "es": "¿Cual es la suavidad de esta calle?", + "es": "¿Cuál es la suavidad de esta calle?", "fr": "Quelle est la douceur de cette rue ?", "cs": "Jak hladký je povrch této ulice?" }, @@ -1161,7 +1185,8 @@ "nl": "Bruikbaar voor kleine, harde wielen: rollerblade, skateboard", "fr": "Utilisable pour les patins : patins à roulettes, skateboard", "ca": "Utilitzable per rodets: patins en línia, monopatí", - "cs": "Použitelné pro malé kolečka: kolečkové brusle, skateboard" + "cs": "Použitelné pro malé kolečka: kolečkové brusle, skateboard", + "es": "Utilizable para ruedas finas: patines, monopatín" } }, { @@ -1173,7 +1198,8 @@ "nl": "Bruikbaar voor smalle wielen: racefiets", "fr": "Utilisable pour les roues fines : vélo de course", "ca": "Utilitzable per rodes fines: bicicletes de carrera", - "cs": "Použitelné pro tenká kola: závodní kolo" + "cs": "Použitelné pro tenká kola: závodní kolo", + "es": "Utilizable para ruedas finas: bicicleta de carreras" } }, { @@ -1185,7 +1211,8 @@ "nl": "Bruikbaar voor normale wielen: stadsfiets, rolwagen, step", "fr": "Utilisable pour les roues traditionelles : vélo, chaise roulante, trotinettes", "ca": "Utilitzable per rodes normals: Bicicletes de ciutat, cadires de rodes, scooter", - "cs": "Použitelné pro normální kola: městské kolo, invalidní vozík, skútr" + "cs": "Použitelné pro normální kola: městské kolo, invalidní vozík, skútr", + "es": "Utilizable para ruedas normales: bicicleta urbana, silla de ruedas, patinete" } }, { @@ -1197,7 +1224,8 @@ "nl": "Bruikbaar voor robuuste wielen: trekking fiets, auto, rickshaw", "fr": "Utilisable pour les roues robustes : VTT, voitures, pousse-pousse", "ca": "Utilitzable per rodes robustes; Bicicleta de treking, cotxes, bicitaxi", - "cs": "Použitelné pro robustní kola: trekingové kolo, auto, rikša" + "cs": "Použitelné pro robustní kola: trekingové kolo, auto, rikša", + "es": "Utilizable para ruedas robustas: bicicleta de trekking, coche, rickshaw" } }, { @@ -1207,7 +1235,8 @@ "de": "Geeignet für Fahrzeuge mit großer Bodenfreiheit: leichte Geländewagen", "nl": "Bruikbaar voor terreinvoertuigen: 4x4 personenwagens", "fr": "Utilisable pour les véhicules à dégagement élevé : véhicule tout-terrain léger", - "cs": "Použitelné pro vozidla s vysokou světlou výškou: lehké terénní vozidlo" + "cs": "Použitelné pro vozidla s vysokou světlou výškou: lehké terénní vozidlo", + "es": "Utilizable para vehículos con altura libre al suelo alta: vehículo todoterreno ligero" } }, { @@ -1218,7 +1247,8 @@ "id": "Dapat digunakan untuk kendaraan off-road: kendaraan off-road berat", "nl": "Bruikbaar voor terreinvoertuigen: zware 4x4 voertuigen", "fr": "Utilisable pour les véhicules tout-terrain : véhicule tout-terrain lourd", - "cs": "Použitelné pro terénní vozidla: těžké terénní vozidlo" + "cs": "Použitelné pro terénní vozidla: těžké terénní vozidlo", + "es": "Utilizable para vehículos todoterreno: vehículo todoterreno pesado" } }, { @@ -1229,7 +1259,8 @@ "id": "Dapat digunakan untuk kendaraan off-road khusus: traktor, ATV", "nl": "Bruikbaar voor uitzonderlijke terreinvoertuigen: tractor, ATV", "fr": "Utilisable pour les véhicules hors route spécialisés : tracteur, véhicule 4x4", - "cs": "Použitelný pro specializované terénní vozy: traktor, čtyřkolka" + "cs": "Použitelný pro specializované terénní vozy: traktor, čtyřkolka", + "es": "Utilizable para vehículos todoterreno especializados: tractor, ATV" } }, { @@ -1239,7 +1270,8 @@ "de": "Unpassierbar / Keine bereiften Fahrzeuge", "nl": "Onmogelijk om met een voertuig met wielen te passeren", "fr": "Impasse / Aucun véhicule roulant", - "cs": "Neprůjezdné / Pro vozidla" + "cs": "Neprůjezdné / Pro vozidla", + "es": "Intransitable / Ningún vehículo con ruedas" } } ], @@ -1259,7 +1291,8 @@ "de": "Die Fahrbahnbreite dieser Straße beträgt {width:carriageway}m", "fr": "La largeur de cette chaussée est de {width:carriageway}m", "ca": "L'amplada dels carrils d'aquesta carretera és {width:carriageway}m", - "cs": "Šířka vozovky této silnice je {width:carriageway}m" + "cs": "Šířka vozovky této silnice je {width:carriageway}m", + "es": "El ancho de la calzada de esta carretera es de {width:carriageway}m" }, "freeform": { "key": "width:carriageway", @@ -1275,7 +1308,8 @@ "de": "Wie groß ist die Fahrbahnbreite dieser Straße (in Metern)?", "fr": "Quelle est la largeur de cette chaussée (en mètres) ?", "ca": "Quina és l'amplada dels carrils d'aquesta carretera (en metres)?", - "cs": "Jaká je šířka vozovky této silnice (v metrech)?" + "cs": "Jaká je šířka vozovky této silnice (v metrech)?", + "es": "¿Cuál es el ancho de la calzada de esta carretera (en metros)?" }, "id": "width:carriageway", "questionHint": { @@ -1284,7 +1318,8 @@ "de": "Diese wird von Bordstein zu Bordstein gemessen und schließt daher die Breite von parallelen Parkspuren ein", "fr": "Elle est mesurée d'une bordure à l'autre et inclut donc la largeur des voies de stationnement parallèles", "ca": "Això es mesura de vorera a vorera i, per tant, inclou l'amplada dels aparcaments en línia", - "cs": "Jedná se o měření od krajnice ke krajnici a to včetně šířky paralelních parkovacích pruhů" + "cs": "Jedná se o měření od krajnice ke krajnici a to včetně šířky paralelních parkovacích pruhů", + "es": "Esto se mide de bordillo a bordillo e incluye el ancho de los carriles de aparcamiento paralelos" } }, { @@ -1324,7 +1359,8 @@ "id": "Jalur sepeda wajib", "ca": "Via ciclista obligatòria", "fr": "Piste cyclabe obligatoire", - "cs": "Povinná cyklostezka" + "cs": "Povinná cyklostezka", + "es": "Carril bici obligatorio" }, "hideInAnswer": "_country!=be", "icon": { @@ -1341,7 +1377,8 @@ "id": "Jalur sepeda wajib (dengan tanda tambahan)
", "fr": "Piste cyclable obligatoire (avec panneau supplémentaire)", "ca": "Ciclovia obligatòria (amb senyal suplementari)
", - "cs": "Povinná cyklostezka (s doplňkovým značením)
" + "cs": "Povinná cyklostezka (s doplňkovým značením)
", + "es": "Carril bici obligatorio (con señal complementaria)
" }, "hideInAnswer": true, "icon": { @@ -1358,7 +1395,8 @@ "id": "Jalur pejalan kaki/sepeda terpisah", "ca": "Via segregada a peu/ciclista", "fr": "Piste piétonne/cyclable séparée", - "cs": "Oddělená stezka pro pěší/cyklisty" + "cs": "Oddělená stezka pro pěší/cyklisty", + "es": "Carril bici/peatonal separado" }, "hideInAnswer": "_country!=be", "addExtraTags": [ @@ -1379,7 +1417,8 @@ "id": "Jalur pejalan kaki/sepeda tidak terpisah", "ca": "Via no segregada a peu/ciclista", "fr": "Piste piétonne/cyclable non séparée", - "cs": "Sdílená stezka pro pěší/cyklisty" + "cs": "Sdílená stezka pro pěší/cyklisty", + "es": "Carril bici/peatonal no separado" }, "hideInAnswer": "_country!=be", "addExtraTags": [ @@ -1398,7 +1437,7 @@ "nl": "Geen verkeersbord aanwezig", "de": "Kein Verkehrsschild vorhanden", "id": "Tidak ada rambu lalu lintas", - "es": "Sin señal de tráfico", + "es": "No hay señal de tráfico presente", "fr": "Aucun panneau de signalisation présent", "ca": "Sense senyal de trànsit", "cs": "Žádná dopravní značka" @@ -1412,7 +1451,7 @@ "en": "What traffic sign does this cycleway have?", "nl": "Welk verkeersbord heeft dit fietspad?", "de": "Welches Verkehrszeichen hat dieser Radweg?", - "es": "¿Qué seña de tráfico tiene este carril bici?", + "es": "¿Qué señal de tráfico tiene este carril bici?", "fr": "Quel panneau de signalisation cette a cette piste cyclable ?", "ca": "Quina senyal de trànsit té aquesta via ciclista?", "cs": "Jakou dopravní značku má tato cyklostezka?" @@ -1443,7 +1482,8 @@ "id": "Jalur sepeda wajib", "ca": "Via ciclista obligatòria", "fr": "Piste cyclabe obligatoire", - "cs": "Povinná cyklostezka" + "cs": "Povinná cyklostezka", + "es": "Carril bici obligatorio" }, "hideInAnswer": "_country!=be", "addExtraTags": [ @@ -1465,7 +1505,8 @@ "de": "Vorgeschriebener Radweg (mit Zusatzschild)
", "fr": "Piste cyclable obligatoire (avec panneau supplémentaire)", "ca": "Ciclovia obligatòria (amb senyal suplementari)
", - "cs": "Povinná cyklostezka (s doplňkovým značením)
" + "cs": "Povinná cyklostezka (s doplňkovým značením)
", + "es": "Carril bici obligatorio (con señal complementaria)
" }, "hideInAnswer": true, "icon": { @@ -1481,7 +1522,8 @@ "de": "Getrennter Fuß-/Radweg", "ca": "Via segregada a peu/ciclista", "fr": "Piste piétonne/cyclable séparée", - "cs": "Oddělená stezka pro pěší/cyklisty" + "cs": "Oddělená stezka pro pěší/cyklisty", + "es": "Carril bici/peatonal separado" }, "hideInAnswer": "_country!=be", "addExtraTags": [ @@ -1505,7 +1547,8 @@ "de": "Gemeinsamer Fuß-/Radweg", "ca": "Via no segregada a peu/ciclista", "fr": "Piste piétonne/cyclable non séparée", - "cs": "Sdílená stezka pro pěší/cyklisty" + "cs": "Sdílená stezka pro pěší/cyklisty", + "es": "Carril bici/peatonal no separado" }, "hideInAnswer": "_country!=be", "addExtraTags": [ @@ -1529,7 +1572,8 @@ "ca": "Via ciclista obligatòria", "de": "Verpflichtender Radweg", "fr": "Piste cyclabe obligatoire", - "cs": "Povinná cyklostezka" + "cs": "Povinná cyklostezka", + "es": "Carril bici obligatorio" }, "hideInAnswer": "_country!=nl", "addExtraTags": [ @@ -1549,7 +1593,8 @@ "de": "Verpflichtender (Moped-)Radweg", "fr": "Piste cyclable (cyclomoteur) obligatoire", "ca": "Ciclovia (ciclomotor) obligatòria", - "cs": "Povinná (mopedová) cyklostezka" + "cs": "Povinná (mopedová) cyklostezka", + "es": "Carril bici obligatorio (para ciclomotores)" }, "hideInAnswer": "_country!=nl", "addExtraTags": [ @@ -1569,7 +1614,8 @@ "de": "Radweg ohne Nutzungspflicht", "fr": "Piste cyclable non obligatoire", "ca": "via ciclista no obligatòria", - "cs": "Nepovinná cyklostezka" + "cs": "Nepovinná cyklostezka", + "es": "Carril bici no obligatorio" }, "hideInAnswer": "_country!=nl", "addExtraTags": [ @@ -1589,7 +1635,8 @@ "de": "Kein Verkehrsschild vorhanden", "fr": "Aucun panneau de signalisation présent", "ca": "No hi ha cap senyal de trànsit", - "cs": "Žádná dopravní značka" + "cs": "Žádná dopravní značka", + "es": "No hay señal de tráfico presente" } } ] @@ -1601,7 +1648,8 @@ "nl": "Heeft het verkeersbord D7 () een onderbord?", "de": "Hat das Verkehrszeichen D7 () ein Zusatzzeichen?", "fr": "Le panneau de signalisation D7 () a-t-il un panneau supplémentaire ?", - "cs": "Má dopravní značka D7 () doplňkovou značku?" + "cs": "Má dopravní značka D7 () doplňkovou značku?", + "es": "¿Tiene la señal de tráfico D7 () una señal complementaria?" }, "condition": { "or": [ @@ -1618,7 +1666,8 @@ "de": "Mopeds müssen den Radweg benutzen", "fr": "Les cyclomoteurs doivent utiliser la piste cyclable", "ca": "Els ciclomotors han d'utilitzar la via ciclista", - "cs": "Mopedy musí používat cyklostezku" + "cs": "Mopedy musí používat cyklostezku", + "es": "Los ciclomotores deben usar el carril bici" }, "hideInAnswer": "_country!=be", "addExtraTags": [ @@ -1636,7 +1685,8 @@ "nl": "Speedpedelec (Bromfiets klasse P) verplicht op het fietspad", "de": "Speed-Pedelecs müssen den Radweg benutzen", "fr": "Les VAE (Vélo à Assistance Electrique) rapides doivent utiliser la piste cyclable", - "cs": "Rychlá Elektrokola musí používat cyklostezku" + "cs": "Rychlá Elektrokola musí používat cyklostezku", + "es": "Las bicicletas de pedaleo asistido deben usar el carril bici" }, "hideInAnswer": "_country!=be", "addExtraTags": [ @@ -1654,7 +1704,8 @@ "nl": "Bromfiets klasse B en speedpedelec (Klasse P) verplicht op het fietspad", "de": "Mopeds und Speed-Pedelecs müssen den Radweg benutzen", "fr": "Les cyclomoteurs et les VAE doivent utiliser la piste cyclable", - "cs": "Mopedy a rychlá elektrokola musí používat cyklostezku" + "cs": "Mopedy a rychlá elektrokola musí používat cyklostezku", + "es": "Los ciclomotores y las bicicletas de pedaleo asistido deben usar el carril bici" }, "hideInAnswer": "_country!=be", "addExtraTags": [ @@ -1674,7 +1725,8 @@ "de": "Mopeds sind nicht zulässig", "fr": "Les cyclomoteurs ne sont pas autorisés", "ca": "Els ciclomotors no estan permesos", - "cs": "Mopedy nejsou povoleny" + "cs": "Mopedy nejsou povoleny", + "es": "Los ciclomotores no están permitidos" }, "hideInAnswer": "_country!=be", "addExtraTags": [ @@ -1692,7 +1744,8 @@ "nl": "Speedpedelec (bromfiets klasse P) verboden", "de": "Speed-Pedelecs sind nicht zulässig", "fr": "Les VAE ne sont pas autorisés", - "cs": "Rychlá elektrokola nejsou povoleny" + "cs": "Rychlá elektrokola nejsou povoleny", + "es": "Las bicicletas de pedaleo asistido no están permitidas" }, "hideInAnswer": "_country!=be", "addExtraTags": [ @@ -1710,7 +1763,8 @@ "nl": "Bromfiets klasse B en speedpedelec (klasse P) verboden", "de": "Mopeds und Speed-Pedelecs sind nicht zulässig", "fr": "Les cyclomoteurs et les VAE ne sont pas autorisés", - "cs": "Mopedy a rychlá elektrokola nejsou povoleny" + "cs": "Mopedy a rychlá elektrokola nejsou povoleny", + "es": "Los ciclomotores y las bicicletas de pedaleo asistido no están permitidos" }, "hideInAnswer": "_country!=be", "addExtraTags": [ @@ -1730,7 +1784,8 @@ "de": "Kein zusätzliches Verkehrszeichen vorhanden", "fr": "Aucun panneau de signalisation supplémentaire présent", "ca": "No hi ha cap senyal de trànsit addicional", - "cs": "Není přítomna doplňková dopravní značka" + "cs": "Není přítomna doplňková dopravní značka", + "es": "No hay señal de tráfico complementaria presente" } } ] @@ -1740,13 +1795,14 @@ "en": "The buffer besides this cycleway is {cycleway:buffer} m", "nl": "De schrikafstand van dit fietspad is {cycleway:buffer} m", "de": "Der Sicherheitsabstand zu diesem Radweg beträgt {cycleway:buffer} m", - "cs": "Nárazník vedle této cyklostezky je {cycleway:buffer} m" + "cs": "Nárazník vedle této cyklostezky je {cycleway:buffer} m", + "es": "El espacio junto a este carril bici es de {cycleway:buffer} m" }, "question": { "en": "How wide is the gap between the cycleway and the road?", "nl": "Hoe breed is de ruimte tussen het fietspad en de weg?", "de": "Wie breit ist der Abstand zwischen Radweg und Straße?", - "es": "¿Cómo de ancho es el hueco entre el carril bici y la carretera?", + "es": "¿Qué ancho tiene el espacio entre el carril bici y la carretera?", "fr": "Quelle est la distance entre la piste cyclable et la route ?", "ca": "Quina és la distància entre el carril bici i la carretera?", "cs": "Jak široká je mezera mezi cyklostezkou a silnicí?" @@ -1819,7 +1875,7 @@ "nl": "Dit fietspad is gescheiden van de weg met parkeervakken", "de": "Der Radweg ist abgegrenzt durch eine Parkspur", "id": "Jalur sepeda ini dipisahkan oleh jalur parkir", - "es": "Este carril bici está separado por una línea de aparcamiento", + "es": "Este carril bici está separado por un carril de aparcamiento", "fr": "Cette piste cyclable est séparée par une voie de stationnement", "ca": "Aquesta via ciclista està separat per una línia d'aparcament", "cs": "Tato cyklostezka je oddělena odstavným pruhem" @@ -1834,7 +1890,8 @@ "id": "Jalur sepeda ini dipisahkan oleh kerb", "fr": "Cette piste cyclable est séparée par une bordure", "ca": "Aquesta via ciclista està separada per una vorada", - "cs": "Tato cyklostezka je oddělena obrubníkem" + "cs": "Tato cyklostezka je oddělena obrubníkem", + "es": "Este carril bici está separado por un bordillo" } } ] @@ -1846,7 +1903,7 @@ "nl": "Hoe is dit fietspad gescheiden van de weg?", "de": "Wie ist der Radweg von der Straße abgegrenzt?", "id": "Bagaimana jalur sepeda ini dipisahkan dari jalan?", - "es": "¿Cómo esta separado este carril bici de la carretera?", + "es": "¿Cómo está separado este carril bici de la carretera?", "fr": "Comment cette piste cyclable est-elle séparée de la route ?", "ca": "Com està separat aquesta via ciclista?", "cs": "Jak je tato cyklostezka oddělena od silnice?" @@ -1891,7 +1948,7 @@ "nl": "Dit fietspad is gescheiden van de weg met parkeervakken", "de": "Der Radweg ist abgegrenzt durch eine Parkspur", "id": "Jalur sepeda ini dipisahkan oleh jalur parkir", - "es": "Este carril bici está separado por una línea de aparcamiento", + "es": "Este carril bici está separado por un carril de aparcamiento", "fr": "Cette piste cyclable est séparée par une voie de stationnement", "ca": "Aquesta via ciclista està separada per una línia d'aparcament", "cs": "Tato cyklostezka je oddělena odstavným pruhem" @@ -1906,7 +1963,8 @@ "id": "Jalur sepeda ini dipisahkan oleh kerb", "fr": "Cette piste cyclable est séparée par une bordure", "ca": "Aquesta via ciclista està separada per una vorada", - "cs": "Tato cyklostezka je oddělena obrubníkem" + "cs": "Tato cyklostezka je oddělena obrubníkem", + "es": "Este carril bici está separado por un bordillo" } } ] @@ -1917,6 +1975,7 @@ "snapName": { "en": "a road or a cycleway", "nl": "een weg, straat of fietspad", - "de": "eine Straße oder einen Radweg" + "de": "eine Straße oder einen Radweg", + "es": "una carretera o un carril bici" } } diff --git a/assets/layers/cyclist_waiting_aid/cyclist_waiting_aid.json b/assets/layers/cyclist_waiting_aid/cyclist_waiting_aid.json new file mode 100644 index 000000000..eb6ab3ea3 --- /dev/null +++ b/assets/layers/cyclist_waiting_aid/cyclist_waiting_aid.json @@ -0,0 +1,148 @@ +{ + "credits": "Robin van der Linde", + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "marker": [ + { + "icon": "pin", + "color": "#538EE8" + }, + { + "icon": "./assets/layers/cyclist_waiting_aid/waiting_aid.svg" + } + ], + "anchor": "bottom" + } + ], + "tagRenderings": [ + "images", + { + "question": { + "en": "What kind of components does this waiting aid have?" + }, + "id": "type", + "multiAnswer": true, + "mappings": [ + { + "if": "footrest=yes", + "then": { + "en": "There is a board or peg to rest your foot on here" + }, + "ifnot": "footrest=" + }, + { + "if": "handrest=yes", + "then": { + "en": "There is a rail or a handle to hold on to here" + }, + "ifnot": "handrest=" + } + ] + }, + { + "question": { + "en": "On what side of the road is this located?" + }, + "id": "side", + "mappings": [ + { + "if": "side=left", + "then": { + "en": "This waiting aid is located on the left side" + } + }, + { + "if": "side=right", + "then": { + "en": "This waiting aid is located on the right side" + } + }, + { + "if": "side=both", + "then": { + "en": "There are waiting aids on both sides of the road" + } + } + ] + }, + { + "condition": "direction~*", + "id": "direction", + "mappings": [ + { + "if": "direction=forward", + "then": { + "en": "This waiting aid can be used when going forward on this way" + } + }, + { + "if": "direction=backward", + "then": { + "en": "This waiting aid can be used when going backward on this way" + } + } + ], + "render": { + "en": "This waiting aid can be used when going in {direction} direction" + } + } + ], + "lineRendering": [ + { + "width": 1, + "color": "blue" + } + ], + "credits:uid": 5093765, + "id": "cyclist_waiting_aid", + "description": { + "en": "Various pieces of infrastructure that aid cyclists while they wait at a traffic light." + }, + "source": { + "osmTags": "highway=cyclist_waiting_aid" + }, + "name": { + "en": "Cyclist Waiting Aids" + }, + "title": { + "render": { + "en": "Cyclist Waiting Aid" + } + }, + "deletion": { + "softDeletionTags": { + "and": [ + "highway=", + "side=", + "footrest=", + "handrest=", + "material=", + "height=", + "support=", + "count=", + "capacity=" + ] + } + }, + "allowMove": false, + "presets": [ + { + "title": { + "en": "a cyclist waiting aid" + }, + "tags": [ + "highway=cyclist_waiting_aid" + ], + "description": { + "en": "A footrest, handrail or other aid, to improve comfort while waiting at traffic lights" + }, + "snapToLayer": [ + "cycleways_and_roads" + ] + } + ] +} \ No newline at end of file diff --git a/assets/layers/cyclist_waiting_aid/license_info.json b/assets/layers/cyclist_waiting_aid/license_info.json new file mode 100644 index 000000000..45b87f4de --- /dev/null +++ b/assets/layers/cyclist_waiting_aid/license_info.json @@ -0,0 +1,10 @@ +[ + { + "path": "waiting_aid.svg", + "license": "CC0-1.0", + "authors": [ + "Robin van der Linde" + ], + "sources": [] + } +] \ No newline at end of file diff --git a/assets/layers/cyclist_waiting_aid/waiting_aid.svg b/assets/layers/cyclist_waiting_aid/waiting_aid.svg new file mode 100644 index 000000000..f154e0c64 --- /dev/null +++ b/assets/layers/cyclist_waiting_aid/waiting_aid.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/layers/cyclist_waiting_aid/waiting_aid.svg.license b/assets/layers/cyclist_waiting_aid/waiting_aid.svg.license new file mode 100644 index 000000000..75299f884 --- /dev/null +++ b/assets/layers/cyclist_waiting_aid/waiting_aid.svg.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: Robin van der Linde +SPDX-License-Identifier: CC0-1.0 \ No newline at end of file diff --git a/assets/layers/defibrillator/defibrillator.json b/assets/layers/defibrillator/defibrillator.json index d4a37d68b..dd48eab4d 100644 --- a/assets/layers/defibrillator/defibrillator.json +++ b/assets/layers/defibrillator/defibrillator.json @@ -18,7 +18,7 @@ "nl": "Een laag die defibrillatoren toont die je kan gebruiken bij noodgevallen. Dit omvat zowel publiek beschikbare toestellen als defibrillatoren waarvoor het toestel enkel door personeel aangeboden kan worden", "sl": "Sloj prikazuje defibrilatorje, ki jih je možno uporabiti v primeru sile. Sloj poleg javno dostopnih defibrilatorjev vsebuje tudi tiste, ki za dostop morda potrebujejo pomoč osebja", "de": "Eine Ebene mit Defibrillatoren, die in Notfällen eingesetzt werden können. Diese Ebene enthält öffentliche Defibrillatoren, aber auch Defibrillatoren, bei denen möglicherweise Personal benötigt wird, um das Gerät zu holen", - "es": "Una capa que muestra desfibriladores que se pueden utilizar en caso de emergencia. Contiene desfibriladores públicos, pero también desfibriladores para los que se puede necesitar que el personal vaya a buscar el dispositivo", + "es": "Una capa que muestra desfibriladores que se pueden usar en caso de emergencia Esto incluye desfibriladores públicos, pero también desfibriladores que pueden necesitar personal para obtener el dispositivo real", "ca": "Una capa que mostra desfibril·ladors que es poden utilitzar en cas d'emergència. Conté desfibril·ladors públics, però també desfibril·ladors que poden necessitar de personal per agafar el dispositiu", "he": "שכבה המציגה דפיברילטורים שניתן להשתמש בהם במקרה חירום. זה מכיל דפיברילטורים ציבוריים, אך גם דפיברילטורים שעשויים להזדקק לצוות כדי להביא את המכשיר בפועל", "cs": "Vrstva zobrazující defibrilátory, které lze použít v případě nouze. To zahrnuje veřejné defibrilátory, ale také defibrilátory, které mohou vyžadovat personál, aby přinesl skutečné zařízení" @@ -123,7 +123,7 @@ "question": { "en": "Is this defibrillator located indoors?", "ca": "Està el desfibril·lador a l'interior?", - "es": "¿Esté el desfibrilador en interior?", + "es": "¿Este desfibrilador está ubicado en el interior?", "fr": "Ce défibrillateur est-il disposé en intérieur ?", "nl": "Hangt deze defibrillator binnen of buiten?", "de": "Befindet sich der Defibrillator in einem Gebäude?", @@ -138,7 +138,7 @@ "then": { "en": "This defibrillator is located indoors", "ca": "Aquest desfibril·lador està a l'interior", - "es": "Este desfibrilador está en interior", + "es": "Este desfibrilador está ubicado en el interior", "fr": "Ce défibrillateur est en intérieur (dans un batiment)", "nl": "Deze defibrillator bevindt zich in een gebouw", "de": "Der Defibrillator befindet sich in einem Gebäude", @@ -153,7 +153,7 @@ "then": { "en": "This defibrillator is located outdoors", "ca": "Aquest desfibril·lador està a l'exterior", - "es": "Este desfibrilador está en exterior", + "es": "Este desfibrilador está ubicado en el exterior", "fr": "Ce défibrillateur est situé en extérieur", "nl": "Deze defibrillator hangt buiten", "de": "Der Defibrillator befindet sich im Freien", @@ -169,7 +169,7 @@ "question": { "en": "Is this defibrillator freely accessible?", "ca": "Està el desfibril·lador accessible lliurement?", - "es": "¿Está el desfibrilador accesible libremente?", + "es": "¿Este desfibrilador es de libre acceso?", "fr": "Ce défibrillateur est-il librement accessible ?", "nl": "Is deze defibrillator vrij toegankelijk?", "de": "Ist der Defibrillator frei zugänglich?", @@ -188,7 +188,8 @@ "de": "Zugang ist {access}", "it": "Accesso è {access}", "sl": "Dostop je {access}", - "cs": "Přístup je {access}" + "cs": "Přístup je {access}", + "uk": "Доступ – {access}" }, "freeform": { "key": "access", @@ -202,7 +203,7 @@ "then": { "en": "Publicly accessible", "ca": "Accés lliure", - "es": "Acceso libre", + "es": "Accesible al público", "fr": "Librement accessible", "nl": "Publiek toegankelijk", "de": "Der Defibrillator ist öffentlich zugänglich", @@ -219,7 +220,7 @@ "then": { "en": "Publicly accessible", "ca": "Publicament accessible", - "es": "Publicament accesible", + "es": "Accesible al público", "fr": "Librement accessible", "nl": "Publiek toegankelijk", "de": "Öffentlich zugänglich", @@ -237,7 +238,7 @@ "then": { "en": "Only accessible to customers", "ca": "Només accessible a clients", - "es": "Sólo accesible a clientes", + "es": "Solo accesible para clientes", "fr": "Réservé aux clients du lieu", "nl": "Enkel toegankelijk voor klanten", "de": "Der Defibrillator ist nur für Kunden zugänglich", @@ -253,7 +254,7 @@ "then": { "en": "Not accessible to the general public (e.g. only accesible to staff, the owners, …)", "ca": "No accessible al públic en general (ex. només accesible a treballadors, propietaris, ...)", - "es": "No accesible al público en general (por ejemplo, sólo accesible para el personal, los propietarios, ...)", + "es": "No accesible al público en general (p. ej., solo accesible para el personal, los propietarios, …)", "fr": "Non accessible au public (par exemple réservé au personnel, au propriétaire…)", "nl": "Niet toegankelijk voor het publiek (bv. enkel voor personeel, de eigenaar, …)", "de": "Der Defibrillator ist nicht öffentlich zugänglich (z.B. nur für Personal, Eigentümer, …)", @@ -272,7 +273,7 @@ "it": "Non accessibile, potrebbe essere solo per uso professionale", "de": "Der Defibrillator ist nicht zugänglich, möglicherweise nur für betriebliche Nutzung", "sl": "Ni dostopen, morda samo za profesionalno rabo", - "es": "No accesible, posiblemente solo para el uso profesional", + "es": "No accesible, posiblemente solo para uso profesional", "ca": "No accessible, posiblemente només d'ús profesional", "pl": "Niedostępny, być może tylko do profesjonalnego użytku", "cs": "Nepřístupné, případně pouze pro profesionální použití" @@ -289,7 +290,7 @@ "it": "Si tratta di un normale defibrillatore automatico o un defibrillatore manuale riservato ai professionisti?", "de": "Ist dies ein normaler automatischer Defibrillator oder ein manueller Defibrillator nur für Profis?", "sl": "Ali je to navaden avtomatski defibrilator ali ročni defibrilator namenjen poklicnim reševalcem?", - "es": "¿Este es un desfibrilador automático normal o un desfibrilador manual solo para profesionales?", + "es": "¿Es este un desfibrilador automático normal o un desfibrilador manual solo para profesionales?", "ca": "És un desfibril·lador automàtic normal o un desfibril·lador manual només per a professionals?", "pl": "Czy to jest zwykły automatyczny defibrylator czy ręczny defibrylator tylko dla profesjonalistów?", "cs": "Jedná se o běžný automatický defibrilátor nebo manuální defibrilátor pouze pro profesionály?" @@ -357,7 +358,7 @@ "sl": "To je posebna vrsta defibrilatorja: {defibrillator}", "da": "Dette er en særlig type hjertestarter: {defibrillator}", "de": "Dies ist eine besondere Art von Defibrillator: {defibrillator}", - "es": "Este es un tipo de desfibrilador especial: {defibrillator}", + "es": "Este es un tipo especial de desfibrilador: {defibrillator}", "ca": "Aquest és un tipus especial de desfibril·lador: {defibrillator}", "pl": "To jest specjalny rodzaj defibrylatora: {defibrillator}", "cs": "Toto je speciální typ defibrilátoru: {defibrillator}" @@ -371,7 +372,7 @@ "question": { "en": "On which floor is this defibrillator located?", "ca": "A quina planta està el ubicat el desfibril·lador?", - "es": "¿En qué planta se encuentra el defibrilador localizado?", + "es": "¿En qué planta está ubicado este desfibrilador?", "fr": "À quel étage est situé ce défibrillateur ?", "nl": "Op welke verdieping bevindt deze defibrillator zich?", "de": "Auf welcher Etage befindet sich der Defibrillator?", @@ -392,7 +393,7 @@ "render": { "en": "This defibrillator is on floor {level}", "ca": "Aquest desfibril·lador és a la planta {level}", - "es": "El desfibrilador se encuentra en la planta {level}", + "es": "Este desfibrilador está en la planta {level}", "fr": "Ce défibrillateur est à l'étage {level}", "nl": "De defibrillator bevindt zicht op verdieping {level}", "de": "Dieser Defibrallator befindet sich im {level}. Stockwerk", @@ -411,7 +412,7 @@ "it": "Questo defibrillatore è al pian terreno", "de": "Der Defibrillator befindet sich im Erdgeschoss", "sl": "Ta defibrilator je v pritličju", - "es": "Este desfibrilador se encuentra en la planta baja", + "es": "Este desfibrilador está en la planta baja", "ca": "Aquest desfribil·lador està a la planta baixa", "pl": "Ten defibrylator jest na parterze", "cs": "Tento defibrilátor se nachází v přízemí" @@ -426,7 +427,7 @@ "it": "Questo defibrillatore è al primo piano", "de": "Der Defibrillator befindet sich in der ersten Etage", "sl": "Ta defibrilator je v prvem nadstropju", - "es": "Este desfibrilador se encuentra en la primera planta", + "es": "Este desfibrilador está en la primera planta", "ca": "Aquest desfribil·lador està a la primera planta", "pl": "Ten defibrylator jest na pierwszym piętrze", "cs": "Tento defibrilátor je v prvním patře" @@ -451,7 +452,7 @@ "question": { "en": "Please give some explanation on where the defibrillator can be found (in the local language)", "ca": "Dóna detalls d'on es pot trobar el desfibril·lador", - "es": "Da detalles de dónde se puede encontrar el desfibrilador (en el idioma local)", + "es": "Da una explicación de dónde se puede encontrar el desfibrilador (en el idioma local)", "fr": "Veuillez indiquez plus précisément où se situe le défibrillateur (dans la langue local)", "nl": "Gelieve meer informatie te geven over de exacte locatie van de defibrillator (in de plaatselijke taal)", "de": "Bitte geben Sie einen Hinweis, wo genau der Defibrillator zu finden ist (in lokaler Sprache)", @@ -474,7 +475,7 @@ "it": "Informazioni supplementari circa la posizione (in inglese):
{defibrillator:location:en}", "de": "Zusätzliche Informationen über den Standort (auf Englisch):
{defibrillator:location:en}", "sl": "Dodatne informacije o lokaciji (v Angleščini):
{defibrillator:location:en}", - "es": "Información a mayores sobre la localización (en Inglés):
{defibrillator:location:en}", + "es": "Información adicional sobre la ubicación (en inglés):
{defibrillator:location:en}", "ca": "Informació addicional sobre la ubicació (en anglès):
{defibrillator:location:en}", "pl": "Dodatkowe informacje o lokalizacji (po angielsku):
{defibrillator:location:en}", "cs": "Další informace o místě (v angličtině):
{defibrillator:location:en}" @@ -482,8 +483,8 @@ "question": { "en": "Please give some explanation on where the defibrillator can be found (in English)", "ca": "Dona detalls d'on es pot trobar el desfibril·lador (en anglès)", - "es": "Da detalles de dónde se puede encontrar el desfibrilador (en ingles)", - "fr": "Veuillez indiquez plus précisément où se situe le défibrillateur (en englais)", + "es": "Da una explicación de dónde se puede encontrar el desfibrilador (en inglés)", + "fr": "Veuillez indiquez plus précisément où se situe le défibrillateur (en anglais)", "nl": "Gelieve meer informatie te geven over de exacte locatie van de defibrillator (in het Engels)", "de": "Bitte geben Sie einen Hinweis, wo der Defibrillator zu finden ist (auf Englisch)", "it": "Indica più precisamente dove si trova il defibrillatore (in inglese)", @@ -505,7 +506,7 @@ "it": "Informazioni supplementari circa la posizione (in francese):
{defibrillator:location:fr}", "de": "Zusätzliche Informationen zum Standort (auf Französisch):
{defibrillator:location:fr}", "sl": "Dodatne informacije o lokaciji (v Francoščini):
{defibrillator:location:fr}", - "es": "Información a mayores sobre la localización (en Francés):
{defibrillator:location:fr}", + "es": "Información adicional sobre la ubicación (en francés):
{defibrillator:location:fr}", "ca": "Informació addicional sobre la ubicació (en francès):
{defibrillator:location:fr}", "pl": "Dodatkowe informacje o lokalizacji (po francusku):
{defibrillator:location:fr}", "cs": "Další informace o místě (ve francouzštině):
{defibrillator:location:fr}" @@ -513,7 +514,7 @@ "question": { "en": "Please give some explanation on where the defibrillator can be found (in French)", "ca": "Dóna detalls d'on es pot trobar el desfibril·lador (en francés)", - "es": "Da detalles de dónde se puede encontrar el desfibrilador (en frances)", + "es": "Da una explicación de dónde se puede encontrar el desfibrilador (en francés)", "fr": "Veuillez indiquez plus précisément où se situe le défibrillateur (en français)", "nl": "Gelieve meer informatie te geven over de exacte locatie van de defibrillator (in het Frans)", "de": "Bitte geben Sie einige Erläuterungen dazu, wo der Defibrillator zu finden ist (auf Französisch)", @@ -555,7 +556,7 @@ "it": "Qual è il numero identificativo ufficiale di questo dispositivo? (se visibile sul dispositivo)", "de": "Wie lautet die offizielle Identifikationsnummer des Geräts? (falls am Gerät sichtbar)", "sl": "Kakšna je uradna identifikacijska številka te naprave? (če je vidna na napravi)", - "es": "¿Cual es el número de identificación oficial de este dispositivo? (si está visible en el dispositivo)", + "es": "¿Cuál es el número de identificación oficial del dispositivo? (si es visible en el dispositivo)", "ca": "Quin és el número d'identificació oficial del dispositiu? (si està visible al dispositiu)", "cs": "Jaké je oficiální identifikační číslo zařízení? (pokud je na zařízení vidět)" }, @@ -584,7 +585,7 @@ "it": "Qual è l’indirizzo email per le domande riguardanti questo defibrillatore?", "de": "Wie lautet die E-Mail für Fragen zu diesem Defibrillator?", "sl": "Kakšen je email naslov za vprašanja o tem defibrilatorju?", - "es": "¿Cual es el correo electrónico para preguntas sobre este desfibrilador?", + "es": "¿Cuál es el correo electrónico para preguntas sobre este desfibrilador?", "ca": "Quin és el correu electrònic on preguntar sobre aquest desfibril·lador?", "cs": "Jaký je e-mail pro dotazy týkající se tohoto defibrilátoru?" }, @@ -603,7 +604,8 @@ "de": "Telefonnummer für Fragen zu diesem Defibrillator: {phone}", "sl": "Telefonska številka za vprašanja o tem defibrilatorju: {phone}", "ca": "Telèfon per a dubtes sobre aquest desfibril·lador: {phone}", - "cs": "Telefon pro dotazy ohledně tohoto defibrilátoru: {phone}" + "cs": "Telefon pro dotazy ohledně tohoto defibrilátoru: {phone}", + "es": "Teléfono para preguntas sobre este desfibrilador: {phone}" }, "question": { "en": "What is the phone number for questions about this defibrillator?", @@ -612,7 +614,7 @@ "it": "Qual è il numero di telefono per le domande riguardanti questo defibrillatore?", "de": "Wie lautet die Telefonnummer für Fragen zu diesem Defibrillator?", "sl": "Kakšna je telefonska številka za vprašanja o tem defibrilatorju?", - "es": "¿Cual es el número de teléfono para preguntas sobre este desfibrilador?", + "es": "¿Cuál es el número de teléfono para preguntas sobre este desfibrilador?", "ca": "Quin és el número de telèfon on preguntar sobre aquest desfibril·lador?", "cs": "Jaké je telefonní číslo pro dotazy k tomuto defibrilátoru?" }, @@ -662,7 +664,7 @@ "it": "Vi sono altre informazioni utili agli utenti che non è stato possibile aggiungere prima? (lasciare vuoto in caso negativo)", "de": "Gibt es nützliche Informationen für Benutzer, die Sie oben nicht beschreiben konnten? (leer lassen, wenn nein)", "sl": "Ali imate še kakšne uporabne informacije za uporabnike, ki jih niste mogli podati zgoraj? (pustite prazno če jih nimate)", - "es": "¿Hay alguna información útil para los usuarios que no hayas podido describir arriba? (dejar en blanco si no)", + "es": "¿Hay alguna información útil para los usuarios que no hayas podido describir anteriormente? (deja en blanco si no)", "ca": "Hi ha informació útil per als usuaris que no hagis pogut descriure més amunt? (deixeu en blanc si no)", "cs": "Existují nějaké užitečné informace pro uživatele, které jste nebyli schopni výše popsat? (nechte prázdné, pokud ne)" }, @@ -680,7 +682,7 @@ "it": "Quando è stato verificato per l’ultima volta questo defibrillatore?", "de": "Wann wurde der Defibrillator zuletzt überprüft?", "sl": "Kdaj je bil ta defibrilator nazadnje opažen?", - "es": "¿Cuándo se sondeó por última vez este desfibrilador?", + "es": "¿Cuándo se revisó por última vez este desfibrilador?", "ca": "Quan es va explorar per última vegada aquest desfibril·lador?", "cs": "Kdy byl tento defibrilátor naposledy zkoumán?" }, @@ -691,7 +693,7 @@ "it": "Questo defibrillatore è stato verificato per l‘ultima volta in data {survey:date}", "de": "Dieser Defibrillator wurde zuletzt am {survey:date} überprüft", "sl": "Ta defibrilator je bil nazadnje opažen {survey:date}", - "es": "Este desfibrilador se sondeó por última vez el {survey:date}", + "es": "Este desfibrilador fue revisado por última vez el {survey:date}", "ca": "El desfibrilador és va sondejar per ultima vegada el {survey:date}", "cs": "Tento defibrilátor byl naposledy zkoumán dne {survey:date}" }, @@ -711,7 +713,7 @@ "de": "Heute überprüft!", "sl": "Preverjeno danes!", "ca": "Comprovat avui!", - "es": "¡Comprobado hoy!", + "es": "¡Revisado hoy!", "pl": "Sprawdzone dzisiaj!", "cs": "Dnes zkontrolováno!" } @@ -728,7 +730,7 @@ "de": "Zusätzliche Informationen für OpenStreetMap-Experten: {fixme}", "ru": "Дополнительная информация для экспертов OpenStreetMap: {fixme}", "sl": "Dodatne informacije za OpenStreetMap strokovnjake: {fixme}", - "es": "Información extra para expertos en OpenStreetMap: {fixme}", + "es": "Información adicional para expertos de OpenStreetMap: {fixme}", "ca": "Informació addicional per als experts en OpenStreetMap: {fixme}", "pl": "Więcej informacji dla doświadczonych użytkowników OpenStreetMap: {fixme}", "cs": "Další informace pro experty OpenStreetMap: {fixme}" @@ -740,7 +742,7 @@ "it": "C’è qualcosa di sbagliato riguardante come è stato mappato, che non si è potuto correggere qua? (lascia una nota agli esperti di OpenStreetMap)", "de": "Gibt es einen Fehler in der Kartierung, den Sie hier nicht beheben konnten? (hinterlasse eine Notiz für OpenStreetMap-Experten)", "sl": "Ali je kaj narobe s tem vnosom na zemljevid, in tega niste mogli sami popraviti tu? (pustite opombo OpenStreetMap strokovnjakom)", - "es": "¿Hay algo mal con como esta mapeado, que no pudiste arreglar aquí? (deja una nota para los expertos de OpenStreetMap)", + "es": "¿Hay algo mal en cómo está mapeado esto, que no hayas podido arreglar aquí? (deja una nota para los expertos de OpenStreetMap)", "ca": "Hi ha alguna cosa malament en la manera de com està mapejat això, que no heu pogut solucionar aquí? (deixeu una nota als experts d'OpenStreetMap)", "cs": "Je na tom, jak je to zmapováno, něco v nepořádku, co jste zde nedokázali opravit? (zanechte poznámku odborníkům na OpenStreetMap)" }, diff --git a/assets/layers/dentist/dentist.json b/assets/layers/dentist/dentist.json index 094d62407..88ab0fe50 100644 --- a/assets/layers/dentist/dentist.json +++ b/assets/layers/dentist/dentist.json @@ -15,7 +15,8 @@ "nl": "Deze laag toont tandartsen", "pl": "Ta warstwa pokazuje gabinety dentystyczne", "ca": "Aquesta capa mostra clíniques dentals", - "cs": "Tato vrstva zobrazuje ordinace zubních lékařů" + "cs": "Tato vrstva zobrazuje ordinace zubních lékařů", + "es": "Esta capa muestra consultorios dentales" }, "source": { "osmTags": "amenity=dentist" @@ -28,7 +29,9 @@ "nl": "Tandartspraktijk {name}", "fr": "Cabinet medical {name}", "ca": "Clínica Dental {name}", - "cs": "Zubní ordinace {name}" + "cs": "Zubní ordinace {name}", + "uk": "Стоматологічний кабінет {name}", + "es": "Consultorio Dental {name}" } }, "pointRendering": [ @@ -56,7 +59,8 @@ "then": { "en": "{name}", "de": "{name}", - "ca": "{name}" + "ca": "{name}", + "es": "{name}" } } ] @@ -72,7 +76,8 @@ "nl": "een tandartspraktijk", "fr": "un cabinet de dentistes", "ca": "una clínica dental", - "cs": "zubní ordinace" + "cs": "zubní ordinace", + "es": "un consultorio dental" }, "tags": [ "amenity=dentist" @@ -92,7 +97,9 @@ "nl": "Hoe heet deze tandarts?", "ca": "Com s'anomena aquest dentista?", "pl": "Jaka jest nazwa tego gabinetu dentystycznego?", - "cs": "Jak se jmenuje tento zubař?" + "cs": "Jak se jmenuje tento zubař?", + "uk": "Як звуть цього стоматолога?", + "es": "¿Cuál es el nombre de este dentista?" }, "render": { "en": "This dentist is called {name}", @@ -100,7 +107,9 @@ "nl": "Deze tandarts heet {name}", "ca": "El dentista s'anomena {name}", "pl": "Nazwa tego gabinetu dentystycznego to {name}", - "cs": "Tento zubař se jmenuje {name}" + "cs": "Tento zubař se jmenuje {name}", + "uk": "Цього стоматолога звуть {name}", + "es": "Este dentista se llama {name}" }, "freeform": { "key": "name" diff --git a/assets/layers/direction/direction.json b/assets/layers/direction/direction.json index 0dc32332f..6cf983880 100644 --- a/assets/layers/direction/direction.json +++ b/assets/layers/direction/direction.json @@ -8,7 +8,8 @@ "ru": "Визуализация направления", "de": "Aufnahmewinkel der Kamera anzeigen", "ca": "Direcció de la visualització", - "cs": "Vizualizace směru" + "cs": "Vizualizace směru", + "es": "Visualización de direcciones" }, "description": { "en": "This layer visualizes directions", @@ -18,7 +19,8 @@ "de": "Diese Ebene visualisiert Richtungen", "ru": "Этот слой визуализирует направление", "ca": "Aquesta capa visualitza direccions", - "cs": "Tato vrstva zobrazuje směry" + "cs": "Tato vrstva zobrazuje směry", + "es": "Esta capa visualiza las direcciones" }, "source": { "osmTags": { diff --git a/assets/layers/disaster_response/disaster_response.json b/assets/layers/disaster_response/disaster_response.json index 896df6967..c6e20423c 100644 --- a/assets/layers/disaster_response/disaster_response.json +++ b/assets/layers/disaster_response/disaster_response.json @@ -3,13 +3,15 @@ "name": { "en": "Disaster response organizations", "de": "Katastrophenschutzorganisationen", - "ca": "Organitzacions de resposta a desastres" + "ca": "Organitzacions de resposta a desastres", + "es": "Organizaciones de respuesta a desastres" }, "description": { "en": "This layer contains organizations that have the main objective to help the civil population during and after natural or anthropogenic disasters by working in the affected area.", "it": "Questo livello contiene organizzazioni che hanno come obiettivo principale quello di aiutare la popolazione civile durante e dopo disastri naturali o antropogenici, lavorando nell'area colpita.", "de": "Diese Ebene umfasst Organisationen, deren Hauptziel es ist, der Zivilbevölkerung während und nach Natur- oder anthropogenen Katastrophen zu helfen, indem sie in dem betroffenen Gebiet tätig sind.", - "ca": "Aquesta capa conté organitzacions que tenen com a objectiu principal ajudar la població civil durant i després de desastres naturals o antropogènics treballant a la zona afectada." + "ca": "Aquesta capa conté organitzacions que tenen com a objectiu principal ajudar la població civil durant i després de desastres naturals o antropogènics treballant a la zona afectada.", + "es": "Esta capa contiene organizaciones que tienen como objetivo principal ayudar a la población civil durante y después de desastres naturales o antropogénicos trabajando en el área afectada" }, "source": { "osmTags": { @@ -24,7 +26,8 @@ "en": "Disaster response organization", "it": "Organizzazione per la risposta ai disastri", "de": "Katastrophenschutzorganisation", - "ca": "Organització de resposta a desastres" + "ca": "Organització de resposta a desastres", + "es": "Organización de respuesta a desastres" } }, "pointRendering": [ @@ -54,7 +57,8 @@ "en": "a disaster response organization", "it": "un'organizzazione per la risposta ai disastri", "de": "eine Katastrophenschutzorganisation", - "ca": "una organització de resposta a desastres" + "ca": "una organització de resposta a desastres", + "es": "una organización de respuesta a desastres" }, "tags": [ "emergency=disaster_response" @@ -73,12 +77,14 @@ "en": "What is the name of this organization?", "it": "Qual è il nome di questa organizzazione?", "de": "Wie lautet der Name dieser Organisation?", - "ca": "Quin és el nom d'aquesta organització?" + "ca": "Quin és el nom d'aquesta organització?", + "es": "¿Cuál es el nombre de esta organización?" }, "render": { "en": "This organization is named {name}", "it": "Questa organizzazione si chiama {name}", - "de": "Diese Organisation heißt {name}" + "de": "Diese Organisation heißt {name}", + "es": "Esta organización se llama {name}" } } ], diff --git a/assets/layers/doctors/doctors.json b/assets/layers/doctors/doctors.json index 66f9dd1f8..4deb5e7f2 100644 --- a/assets/layers/doctors/doctors.json +++ b/assets/layers/doctors/doctors.json @@ -8,7 +8,8 @@ "pa_PK": "ڈاکٹر", "ca": "Metges", "he": "רופאים", - "cs": "Lékaři" + "cs": "Lékaři", + "es": "Médicos" }, "description": { "en": "This layer shows doctor offices", @@ -17,7 +18,8 @@ "he": "שכבה זו מציגה מרפאות רופאים", "ca": "Aquesta capa mostra els consultoris mèdics", "cs": "Tato vrstva zobrazuje ordinace lékařů", - "fr": "Cette ocuhe montre les cabinets de médecin" + "fr": "Cette ocuhe montre les cabinets de médecin", + "es": "Esta capa muestra consultorios médicos" }, "source": { "osmTags": "amenity=doctors" @@ -30,7 +32,8 @@ "nl": "Dokterspraktijk {name}", "fr": "Cabinet medical {name}", "ca": "Consultori metge {name}", - "cs": "Lékařská ordinace {name}" + "cs": "Lékařská ordinace {name}", + "es": "Consultorio Médico {name}" } }, "pointRendering": [ @@ -61,7 +64,8 @@ "nl": "een dokterspraktijk", "fr": "un cabinet médical", "ca": "un consultori mèdic", - "cs": "lékařská ordinace" + "cs": "lékařská ordinace", + "es": "un consultorio médico" }, "tags": [ "amenity=doctors" @@ -78,7 +82,9 @@ "fr": "Comment s'appelle ce cabinet médical ?", "ca": "Com es diu aquesta consulta mèdica?", "he": "מה השם של מקום הרופאים הזה?", - "cs": "Jak se jmenuje toto místo lékařů?" + "cs": "Jak se jmenuje toto místo lékařů?", + "uk": "Як називається ця лікарня?", + "es": "¿Cuál es el nombre de este consultorio médico?" }, "render": { "en": "This doctors place is called {name}", @@ -86,7 +92,9 @@ "nl": "Deze dokterspraktijk heet {name}", "fr": "Ce cabinet médical s'appelle {name}", "ca": "Aquest consultori mèdic és diu {name}", - "cs": "Toto místo lékařů se jmenuje {name}" + "cs": "Toto místo lékařů se jmenuje {name}", + "uk": "Ця лікарня називається {name}", + "es": "Este consultorio médico se llama {name}" }, "freeform": { "key": "name" @@ -107,7 +115,8 @@ "he": "רופא זה מתמחה ב {healthcare:speciality}", "pl": "Ten lekarz specjalizuje się w {healthcare:speciality}", "ca": "Aquest metge està especialitzat en {healthcare:speciality}", - "cs": "Tento lékař se specializuje na {healthcare:speciality}" + "cs": "Tento lékař se specializuje na {healthcare:speciality}", + "es": "Este médico está especializado en {healthcare:speciality}" }, "question": { "en": "What is this doctor specialized in?", @@ -116,7 +125,8 @@ "fr": "En quoi ce médecin est-il spécialisé ?", "pl": "W czym specjalizuje się ten lekarz?", "ca": "En què està especialitzat aquest metge?", - "cs": "Na co se tento lékař specializuje?" + "cs": "Na co se tento lékař specializuje?", + "es": "¿En qué se especializa este médico?" }, "freeform": { "key": "healthcare:speciality" @@ -131,7 +141,8 @@ "nl": "Dit is een huisarts", "fr": "C'est un médecin généraliste", "ca": "Açò és un metge generalista", - "cs": "Jedná se o praktického lékaře" + "cs": "Jedná se o praktického lékaře", + "es": "Este es un médico de cabecera" } }, { @@ -143,7 +154,8 @@ "fr": "C'est un gynécologue", "pl": "To jest ginekolog", "ca": "Açò és un ginecòleg", - "cs": "Tohle je gynekolog" + "cs": "Tohle je gynekolog", + "es": "Este es un ginecólogo" } }, { @@ -155,7 +167,8 @@ "fr": "C'est un psychiatre", "pl": "To jest psychiatra", "ca": "Açò és un psiquiatra", - "cs": "Tohle je psychiatr" + "cs": "Tohle je psychiatr", + "es": "Este es un psiquiatra" } }, { @@ -167,7 +180,8 @@ "fr": "C'est un pédiatre", "pl": "To jest pediatra", "ca": "Açò és un pediatre", - "cs": "Tohle je pediatr" + "cs": "Tohle je pediatr", + "es": "Este es un pediatra" } } ] diff --git a/assets/layers/dogpark/dogpark.json b/assets/layers/dogpark/dogpark.json index 4aa930489..67da75e1b 100644 --- a/assets/layers/dogpark/dogpark.json +++ b/assets/layers/dogpark/dogpark.json @@ -4,10 +4,11 @@ "en": "dog parks", "da": "hundeskove", "de": "Hundeparks", - "es": "parques de perros", + "es": "Parques para perros", "nl": "hondenweides", "ca": "parcs de gossos", - "cs": "psí parky" + "cs": "psí parky", + "ru": "парки для собак" }, "description": "A layer showing dogparks, which are areas where dog are allowed to run without a leash", "source": { @@ -29,7 +30,7 @@ "en": "dog park", "da": "hundeskov", "de": "Hundepark", - "es": "parque para perros", + "es": "parque canino", "nl": "hondenweide", "ca": "parc per a gossos", "cs": "psí park" @@ -105,7 +106,7 @@ "en": "What is the name of this dog park?", "da": "Hvad hedder denne hundeskov?", "de": "Wie lautet der Name dieses Hundeparks?", - "es": "¿Cual es el nombre de este parque para perros?", + "es": "¿Cuál es el nombre de este parque para perros?", "nl": "Wat is de naam van deze hondenweide?", "ca": "Com s'anomena aquest parc per a gossos?", "cs": "Jak se jmenuje tento psí park?" @@ -131,7 +132,7 @@ "en": "It this dog park fenced in?", "da": "Er denne hundeskov indhegnet?", "de": "Ist dieser Hundepark umzäunt?", - "es": "¿Este parque para perros está vallado?", + "es": "¿Está vallado este parque para perros?", "nl": "Is deze hondenweide volledig omheind?", "ca": "Aquest parc de gossos està tancat?", "cs": "Je tento psí park oplocený?" @@ -143,7 +144,7 @@ "en": "This dogpark is fenced all around", "da": "Denne hundskov er indhegnet", "de": "Dieser Hundepark ist komplett umzäunt", - "es": "Este parque para perros está cerrado todo alrededor", + "es": "Este parque para perros está vallado por completo", "nl": "Deze hondenweide is volledig omheind", "ca": "Aquest parc per a gossos està tancat per tot arreu", "cs": "Tento psí park je kolem dokola oplocený" @@ -155,7 +156,7 @@ "en": "This dogpark is not fenced all around", "da": "Denne hundskov er ikke indhegnet", "de": "Dieser Hundepark ist nicht komplett umzäunt", - "es": "Este parque para perros no está cerrado todo alrededor", + "es": "Este parque para perros no está vallado por completo", "nl": "Deze hondenweide is niet volledig omheind", "ca": "Aquest parc de gossos no està tancat per tot el voltant", "cs": "Tento psí park není kolem dokola oplocený" @@ -172,7 +173,7 @@ "en": "Have separate area for puppies and small dogs", "da": "Har en indhegning til hvalpe og små hunde", "de": "Hat einen separaten Bereich für Hundewelpen und kleine Hunde", - "es": "Tiene un espacio separado para cachorros y perros pequeños", + "es": "Tiene un área separada para cachorros y perros pequeños", "nl": "Heeft gescheiden deel voor puppy's en kleine honden", "ca": "Té un espai separat per a cadells i gossos petits", "cs": "Má oddělený prostor pro štěňata a malé psy" @@ -184,7 +185,7 @@ "en": "Does not have a separate area for puppies and small dogs", "da": "Har ikke en indhegning til hvalpe og små hunde", "de": "Hat keinen separaten Bereich für Hundewelpen und kleine Hunde", - "es": "No tiene un espacio separado para cachorros y perros pequeños", + "es": "No tiene un área separada para cachorros y perros pequeños", "nl": "Heeft geen gescheiden deel voor puppy's en kleine honden", "ca": "No té un espai separat per a cadells i gossos petits", "cs": "Nemáoddělený prostor pro štěňata a malé psy" @@ -195,7 +196,7 @@ "en": "Does this dog park have a separate fenced in area for small dogs and puppies?", "da": "Har denne hundeskov et separat indhegnet område for små hunde og hvalpe (hvalpegård)?", "de": "Hat der Hundepark einen separaten Bereich für Hundewelpen und kleine Hunde?", - "es": "¿Este parque para perros tiene una zona separada vallada para perros pequeños y cachorros?", + "es": "¿Tiene este parque canino un área separada y cercada para perros pequeños y cachorros?", "nl": "Heeft deze hondenweide een gescheiden en omheind deel voor puppy's en kleine honden?", "ca": "Aquest parc per a gossos té una zona tancada per a gossos petits i cadells?", "cs": "Má tento psí park samostatný oplocený areál pro malé psy a štěňata?" @@ -207,7 +208,7 @@ "en": "This dogpark is {_surface:ha} ha big", "da": "Denne hundeskov er på {_surface:ha} hektar", "de": "Der Hundepark ist {_surface:ha} ha groß", - "es": "Este parque para perros tiene {_surface:ha} ha", + "es": "Este parque para perros tiene {_surface:ha} ha de superficie", "nl": "Deze hondenweide is {_surface:ha} hectaren groot", "ca": "Aquest parc per a gossos té {_surface:ha} ha", "cs": "Tento psí park je {_surface:ha} ha velký" diff --git a/assets/layers/drinking_water/drinking_water.json b/assets/layers/drinking_water/drinking_water.json index 5399a9403..a75e528ce 100644 --- a/assets/layers/drinking_water/drinking_water.json +++ b/assets/layers/drinking_water/drinking_water.json @@ -133,13 +133,15 @@ "id": "air minum", "hu": "ivóvíz", "ca": "una font d'aigua potable", - "cs": "pitná voda" + "cs": "pitná voda", + "es": "una fuente de agua potable" }, "description": { "en": "Typically a drinking fountain, water tap, water well or natural spring", "de": "Typischerweise ein Trinkbrunnen, Wasserhahn, Brunnen oder eine natürliche Quelle", "nl": "Meestal een drinkwaterfonteintje, waterkraan, waterput of natuurlijke bron", - "ca": "Normalment una font d'aigua, aixeta, pou d'aigua o font natural" + "ca": "Normalment una font d'aigua, aixeta, pou d'aigua o font natural", + "es": "Típicamente una fuente de agua potable, toma de agua, pozo de agua o manantial natural" }, "tags": [ "amenity=drinking_water" @@ -156,9 +158,10 @@ "fr": "Ce point d'eau potable est-il toujours opérationnel ?", "de": "Ist diese Trinkwasserstelle noch in Betrieb?", "hu": "Működik-e még ez az ivóvíznyerő hely?", - "es": "¿Todavía esta operativo este punto de agua potable?", + "es": "¿Sigue funcionando este punto de agua potable?", "ca": "Aquest punt d'aigua potable continua operatiu?", - "cs": "Je toto místo na pitnou vodu stále funkční?" + "cs": "Je toto místo na pitnou vodu stále funkční?", + "uk": "Чи працює цей пункт з питною водою?" }, "render": { "en": "The operational status is {operational_status}", @@ -167,10 +170,11 @@ "fr": "L'état opérationnel est {operational_status}", "de": "Der Betriebsstatus ist {operational_status}", "hu": "Működési állapota: {operational_status}", - "es": "El estado operacional es {operational_status}", + "es": "El estado operativo es {operational_status}", "ca": "L'estat operatiu és {operational_status}", "cs": "Provozní stav je {operational_status}", - "pt": "O estado operacional é: {operational_status}" + "pt": "O estado operacional é: {operational_status}", + "uk": "Робочий стан - це {operational_status}" }, "freeform": { "key": "operational_status" @@ -193,9 +197,10 @@ "fr": "Cette fontaine fonctionne", "de": "Diese Trinkwasserstelle ist in Betrieb", "hu": "Ez az ivóvízkút működik", - "es": "Esta agua potable funciona", + "es": "Esta fuente de agua potable funciona", "ca": "La font d'aigua funciona", - "cs": "Tato pitná voda funguje" + "cs": "Tato pitná voda funguje", + "uk": "Ця питна вода працює" } }, { @@ -207,9 +212,10 @@ "fr": "Cette fontaine est cassée", "de": "Diese Trinkwasserstelle ist kaputt", "hu": "Ez az ivóvízkút elromlott", - "es": "Esta agua potable está rota", + "es": "Esta fuente de agua potable está rota", "ca": "Aquesta font d'aigua potable està trencada", - "cs": "Tato pitná voda je rozbitá" + "cs": "Tato pitná voda je rozbitá", + "uk": "Цей пункт питної води зіпсований" } }, { @@ -221,9 +227,10 @@ "fr": "Cette fontaine est fermée", "de": "Diese Trinkwasserstelle wurde geschlossen", "hu": "Ez az ivóvízkút el van zárva", - "es": "Esta agua potable está cerrada", + "es": "Esta fuente de agua potable está cerrada", "ca": "Aquesta font d'aigua potable està tancada", - "cs": "Tato pitná voda je uzavřena" + "cs": "Tato pitná voda je uzavřena", + "uk": "Цей пункт питної води закритий" } }, { @@ -233,7 +240,9 @@ ], "then": { "en": "This drinking water is permanently closed", - "de": "Die Trinkwasserstelle ist dauerhaft geschlossen" + "de": "Die Trinkwasserstelle ist dauerhaft geschlossen", + "uk": "Цей пункт питної води постійно закритий", + "es": "Esta fuente de agua potable está cerrada permanentemente" } } ], @@ -245,7 +254,9 @@ "en": "What type of drinking water point is this?", "nl": "Wat voor soort drinkwaterpunt is dit?", "de": "Um welche Art von Trinkwasserentnahmestelle handelt es sich?", - "ca": "Quin tipus de punt d'aigua potable és aquest?" + "ca": "Quin tipus de punt d'aigua potable és aquest?", + "uk": "Що це за тип пункту питної води?", + "es": "¿Qué tipo de punto de agua potable es este?" }, "mappings": [ { @@ -254,7 +265,9 @@ "then": { "en": "This is a bubbler fountain. A water jet to drink from is sent upwards, typically controlled by a push button.", "nl": "Dit is een waterhappertje - een drinkwaterfonteintje waarbij een waterstraaltje omhoog spuit. Dit kan permanent werken of door op een drukknop te duwen.", - "de": "Dies ist ein Sprudelbrunnen. Ein Wasserstrahl zum Trinken wird nach oben gerichtet und in der Regel durch einen Druckknopf gesteuert." + "de": "Dies ist ein Sprudelbrunnen. Ein Wasserstrahl zum Trinken wird nach oben gerichtet und in der Regel durch einen Druckknopf gesteuert.", + "uk": "Це барботажний фонтан. Струмінь води, з якого можна пити, спрямовується вгору, зазвичай керується кнопкою.", + "es": "Esta es una fuente de chorro. Un chorro de agua para beber se envía hacia arriba, típicamente controlado por un botón." }, "addExtraTags": [ "man_made=" @@ -267,7 +280,9 @@ "en": "This is a bottle refill point where the water is sent downwards, typically controlled by a push button or a motion sensor. Drinking directly from the stream might be very hard or impossible.", "nl": "Dit is een hervulpunt voor drinkwaterflessen. De waterstraal wordt omlaag gestuurd wanneer op een drukknop geduwd wordt of wanneer er beweging gedetecteerd wordt. Rechtstreeks van de waterstraal drinking kan moeilijk of zelfs onmogelijk zijn.", "de": "Dies ist eine Flaschenauffüllstation, an der das Wasser nach unten geleitet wird, in der Regel durch einen Druckknopf oder einen Bewegungssensor gesteuert. Direkt aus dem Wasserstrahl zu trinken, kann sehr schwierig oder unmöglich sein.", - "ca": "Aquest és un punt de reomplida d'ampolles on l'aigua s'envia cap avall, normalment controlat per un polsador o un sensor de moviment. Beure directament del raig pot ser molt difícil o impossible." + "ca": "Aquest és un punt de reomplida d'ampolles on l'aigua s'envia cap avall, normalment controlat per un polsador o un sensor de moviment. Beure directament del raig pot ser molt difícil o impossible.", + "uk": "Це пункт наповнення пляшок, де вода спрямовується вниз, як правило, за допомогою кнопки або датчика руху. Пити безпосередньо зі струмка може бути дуже важко або неможливо.", + "es": "Este es un punto de recarga de botellas donde el agua se envía hacia abajo, normalmente controlado por un botón o un sensor de movimiento. Beber directamente del flujo podría ser muy difícil o imposible." }, "addExtraTags": [ "man_made=", @@ -281,7 +296,9 @@ "en": "This is a water tap. The water flows downward and the stream is controlled by a valve or push-button.", "nl": "Dit is een waterkraan. Het water strooomt naar beneden en het volume wordt door een knop of draaimechanisme geregeld.", "de": "Dies ist ein Wasserhahn. Das Wasser fließt nach unten und der Wasserstrahl wird durch ein Ventil oder einen Druckknopf gesteuert.", - "ca": "Això és una aixeta d'aigua. L'aigua flueix cap avall i el corrent és controlat per una vàlvula o polsador." + "ca": "Això és una aixeta d'aigua. L'aigua flueix cap avall i el corrent és controlat per una vàlvula o polsador.", + "uk": "Це водопровідний кран. Вода тече вниз, а керує потоком вентиль або кнопка.", + "es": "Esta es una toma de agua. El agua fluye hacia abajo y el chorro está controlado por una válvula o un botón." }, "addExtraTags": [ "fountain=" @@ -297,7 +314,7 @@ "it": "Quanto è facile riempire d’acqua le bottiglie?", "fr": "Est-il facile de remplir des bouteilles d'eau ?", "hu": "Mennyire könnyű itt vizespalackot tölteni?", - "es": "¿Cómo de fácil es rellenar botellas de agua?", + "es": "¿Qué tan fácil es rellenar botellas de agua?", "ca": "Com de fàcil és reomplir botelles d'aigua?", "ru": "Поместится ли здесь бутылка для воды?", "cs": "Jak snadné je plnit láhve s vodou?" @@ -327,7 +344,7 @@ "it": "Le bottiglie d’acqua potrebbero non entrare", "fr": "Les bouteilles d'eau peuvent ne pas passer", "hu": "Lehet, hogy nem fér alá egy vizespalack", - "es": "Las botellas de agua pueden no caber", + "es": "Es posible que las botellas no quepan", "ca": "Les botelles d'aigua podrien no cabre", "ru": "Бутылка для воды может не поместиться", "cs": "Láhve s vodou nemusí pasovat" @@ -343,7 +360,8 @@ "en": "Is this drinking water point free to use?", "nl": "Is dit drinkwaterpunt gratis te gebruiken?", "de": "Kann diese Trinkwasserstelle kostenlos genutzt werden?", - "ca": "Aquest punt d'aigua potable és d'ús gratuït?" + "ca": "Aquest punt d'aigua potable és d'ús gratuït?", + "es": "¿Es de libre uso este punto de agua potable?" }, "mappings": [ { @@ -352,7 +370,8 @@ "en": "Free to use", "nl": "Gratis te gebruiken", "de": "Die Nutzung ist kostenlos", - "ca": "D'us gratuït" + "ca": "D'us gratuït", + "es": "Libre de uso" } }, { @@ -361,7 +380,8 @@ "en": "One needs to pay to use this drinking water point", "nl": "Men moet betalen om dit drinkwaterpunt te gebruiken", "de": "Die Nutzung ist kostenpflichtig", - "ca": "Cal pagar per utilitzar aquest punt d'aigua potable" + "ca": "Cal pagar per utilitzar aquest punt d'aigua potable", + "es": "Hay que pagar para usar este punto de agua potable" } } ] @@ -373,7 +393,8 @@ "en": "Is this drinking water point available all year round?", "nl": "Is dit drinkwaterpunt heel het jaar door beschikbaar?", "de": "Ist die Trinkwasserstelle ganzjährig in Betrieb?", - "ca": "Aquest punt d'aigua potable està disponible tot l'any?" + "ca": "Aquest punt d'aigua potable està disponible tot l'any?", + "es": "¿Este punto de agua potable está disponible durante todo el año?" } } }, @@ -384,7 +405,9 @@ "en": "These are the opening hours if the drinking water fountain is operational.", "nl": "Tijdens deze openingsuren is dit drinkwaterpunt bruikbaar.", "de": "Dies sind die Öffnungszeiten des Trinkwasserbrunnens, wenn dieser in Betrieb ist.", - "ca": "Aquests són els horaris d'obertura si la font d'aigua potable està operativa." + "ca": "Aquests són els horaris d'obertura si la font d'aigua potable està operativa.", + "es": "Estos son los horarios de apertura si la fuente de agua potable está operativa.", + "uk": "Це години роботи фонтанчика з питною водою, якщо він працює." }, "+mappings": [ { @@ -426,7 +449,9 @@ "en": "This drinking water fountain is closed this season. As such, the opening hours are not shown.", "nl": "Dit drinkwaterpunt is dit seizoen gesloten. De openingsuren worden dus niet weergegeven.", "de": "Der Trinkwasserbrunnen ist derzeit nicht in Betrieb. Deshalb werden keine Öffnungszeiten angezeigt.", - "ca": "Aquesta font d'aigua potable està tancada aquesta temporada. Com a tal, l'horari d'obertura no es mostra." + "ca": "Aquesta font d'aigua potable està tancada aquesta temporada. Com a tal, l'horari d'obertura no es mostra.", + "es": "Esta fuente de agua potable está cerrada esta temporada, por lo que no se muestran los horarios de apertura.", + "uk": "У цьому сезоні фонтан з питною водою закритий. Тому години роботи не вказані." }, "hideInAnswer": true } @@ -439,7 +464,8 @@ "en": "Does this drinking water fountain have an artistic element?", "nl": "Heeft dit drinkwaterpunt een geintegreerd kunstwerk?", "de": "Verfügt der Trinkwasserbrunnen über ein künstlerisches Element?", - "ca": "Aquesta font d'aigua potable té un element artístic?" + "ca": "Aquesta font d'aigua potable té un element artístic?", + "es": "¿Tiene esta fuente de agua potable un elemento artístico?" }, "mappings": [ { @@ -451,7 +477,8 @@ "en": "This drinking water point has an integrated artwork", "nl": "Dit drinkwaterpunt heeft een geintegreerd kunstwerk", "de": "Die Trinkwasserstelle hat ein integriertes Kunstwerk", - "ca": "Aquest punt d'aigua potable té una obra d'art integrada" + "ca": "Aquest punt d'aigua potable té una obra d'art integrada", + "es": "Este punto de agua potable tiene una obra de arte integrada" } }, { @@ -460,7 +487,8 @@ "en": "This drinking water point does not have an integrated artwork", "nl": "Dit drinkwaterpunt heeft geen geïntegreerd kunstwerk", "de": "Die Trinkwasserstelle hat kein integriertes Kunstwerk", - "ca": "Aquest punt d'aigua potable no té una obra d'art integrada" + "ca": "Aquest punt d'aigua potable no té una obra d'art integrada", + "es": "Este punto de agua potable no tiene una obra de arte integrada" }, "addExtraTags": [ "tourism=" @@ -472,7 +500,9 @@ "en": "This drinking water point probably doesn't have an integrated artwork", "nl": "Dit drinkwaterpunt heeft waarschijnlijk geen geïntegreerd kunstwerk", "de": "Die Trinkwasserstelle hat wahrscheinlich kein integriertes Kunstwerk", - "ca": "Aquest punt d'aigua potable probablement no té una obra d'art integrada" + "ca": "Aquest punt d'aigua potable probablement no té una obra d'art integrada", + "uk": "Ця точка питної води ймовірно, не має інтегрованого художнього твору", + "es": "Este punto de agua potable probablemente no tiene una obra de arte integrada" }, "hideInAnswer": true } @@ -481,7 +511,8 @@ "en": "E.g. it has an integrated statue or other non-trivial, creative work", "nl": "Bijvoorbeeld een standbeeld of ander, niet-triviaal kunstwerk", "de": "Z.B. eine integrierte Statue oder andere künstlerische Werke", - "ca": "P. ex. té una estàtua integrada o un altre treball creatiu no trivial" + "ca": "P. ex. té una estàtua integrada o un altre treball creatiu no trivial", + "es": "Por ejemplo, tiene una estatua integrada u otra obra creativa no trivial" } }, { @@ -501,7 +532,8 @@ "hu": "Van egy másik ivóvízkút {_closest_other_drinking_water_distance} méter távolságra", "es": "Hay otra fuente de agua potable a {_closest_other_drinking_water_distance} metros", "ca": "Hi ha una altra font d'aigua potable a {_closest_other_drinking_water_distance} metres", - "cs": "Do {_closest_other_drinking_water_distance} metrů je další fontána s pitnou vodou" + "cs": "Do {_closest_other_drinking_water_distance} metrů je další fontána s pitnou vodou", + "uk": "На відстані {_closest_other_drinking_water_distance} метрів є ще один фонтан із питною водою" }, "condition": "_closest_other_drinking_water_id~*" } @@ -525,9 +557,10 @@ "en": "This is a decorative fountain of which the water is not drinkable by humans", "nl": "Dit is een decoratieve fontein waarvan het water niet geschikt is om te drinken door mensen", "de": "Dies ist ein Zierbrunnen, dessen Wasser für den Menschen nicht trinkbar ist", - "es": "Esta es una fuente decorativa con agua no potable", + "es": "Esta es una fuente decorativa, cuyo agua no es potable para humanos", "ca": "Es tracta d'una font decorativa amb aigua no potable", - "cs": "Jedná se o dekorativní fontánu, jejíž voda není pro lidi pitná" + "cs": "Jedná se o dekorativní fontánu, jejíž voda není pro lidi pitná", + "uk": "Це декоративний фонтан, вода з якого не придатна для пиття" } }, { @@ -542,9 +575,10 @@ "en": "This is a water tap or water pump with non-drinkable water.
Examples are water taps with rain water to tap water for nearby plants
", "nl": "Dit is een waterkraan of waterpomp met ondrinkbaar water.
Bijvoorbeeld een waterkraan met regenwater om planten water mee te gevenBeispiele sind Wasserhähne mit Regenwasser zum Zapfen von Wasser für nahe gelegene Pflanzen
", - "es": "Este es un grifo de agua o una bomba de agua con agua no potable.
Ejemplos son grifos con agua de lluvia o agua del grifo para plantas cercanas
", + "es": "Esta es una toma de agua o bomba de agua con agua no potable.
Ejemplos son tomas de agua con agua de lluvia o agua para regar plantas cercanas
", "ca": "Es tracta d'una aixeta d'aigua o bomba d'aigua amb aigua no potable.
Per exemple les aixetes d'aigua amb aigua de pluja per aprofitar i regar les plantes properes
", - "cs": "Jedná se o vodovodní kohoutek nebo vodní čerpadlo s nepitnou vodou.
Příkladem jsou vodovodní kohoutky s dešťovou vodou pro zalévání rostlin v okolí
" + "cs": "Jedná se o vodovodní kohoutek nebo vodní čerpadlo s nepitnou vodou.
Příkladem jsou vodovodní kohoutky s dešťovou vodou pro zalévání rostlin v okolí
", + "uk": "Це водопровідний кран або водяний насос з непитною водою.
Прикладами є водопровідні крани з дощовою водою для поливу прилеглих рослин
" } }, { @@ -560,7 +594,8 @@ "en": "This is a historic, manual water pump where no drinking water can be found", "nl": "Dit is een historische, manuele waterpomp waar geen drinkwater uitkomt", "de": "Dies ist eine historische, manuelle Wasserpumpe, an der kein Trinkwasser zu finden ist", - "ca": "Es tracta d'una bomba d'aigua manual històrica on no hi ha aigua potable" + "ca": "Es tracta d'una bomba d'aigua manual històrica on no hi ha aigua potable", + "es": "Esta es una bomba de agua histórica y manual donde no se puede encontrar agua potable" } } ] diff --git a/assets/layers/dumpstations/dumpstations.json b/assets/layers/dumpstations/dumpstations.json index bd4f3cf87..f4e3b77d6 100644 --- a/assets/layers/dumpstations/dumpstations.json +++ b/assets/layers/dumpstations/dumpstations.json @@ -14,7 +14,7 @@ "ca": "Estacions d'abocament sanitari", "da": "Sanitære afleveringspladser", "cs": "Sanitární skládky", - "es": "Estaciones sanitarias", + "es": "Estaciones de vaciado sanitario", "pl": "Stacje zrzutów sanitarnych", "pt": "Estações de despejo sanitário" }, @@ -32,7 +32,7 @@ "ca": "Estacions d'abocament sanitari", "da": "Sanitære afleveringspladser", "cs": "Sanitární skládky", - "es": "Vertederos Sanitarios", + "es": "Estaciones de vaciado sanitario", "pl": "Stacje zrzutów sanitarnych", "pt": "Estações de despejo sanitário" }, @@ -57,7 +57,7 @@ "zh_Hant": "{name} 垃圾站", "nl": "Loosplaats {name}", "ca": "Estació d'abocament {name}", - "es": "Vertedero {name}", + "es": "Estación de vaciado {name}", "cs": "Odpadní stanice {name}", "pl": "Stacja zrzutów {name}", "pt": "Estação de despejo {name}" @@ -80,7 +80,7 @@ "zh_Hant": "垃圾站", "nl": "Loosplaats", "ca": "Estació d'abocament", - "es": "Vertedero", + "es": "Estación de vaciado", "cs": "Odpadní stanice", "pl": "Stacja zrzutowa", "pt": "Estação de despejo" @@ -128,7 +128,7 @@ "da": "en sanitær afleveringsplads", "ca": "una estació d'abocament sanitari", "cs": "sanitární skládka", - "es": "un vertedero sanitario", + "es": "una estación de vaciado sanitario", "pl": "stacja zrzutu sanitarnego" }, "description": { @@ -142,7 +142,7 @@ "nl": "Voeg een nieuwe loosplaats toe. Dat is een plaats waar campers hun grijs water en toiletten kunnen lozen. Vaak is er ook een kraan om water te tanken en een stopcontact.", "da": "Tilføj en ny sanitær afleveringsplads. Dette er et sted, hvor autocamperchauffører kan dumpe spildevand eller kemisk toiletaffald. Ofte er der også drikkevand og el.", "cs": "Přidejte novou sanitární skládku. Toto je místo, kam mohou řidiči obytných vozů vypouštět odpadní vodu nebo odpad z chemických toalet. Často je zde také dostupná pitná voda a elektřina.", - "es": "Añadir un nuevo vertedero sanitario. Se trata de un lugar donde los autocaravanistas pueden verter las aguas residuales o los residuos químicos de los aseos. A menudo también hay agua potable y electricidad.", + "es": "Agrega una nueva estación de vaciado sanitario. Este es un lugar donde los autocaravanistas pueden vaciar aguas grises o residuos de inodoros químicos. A menudo también hay agua potable y electricidad.", "ca": "Afegir una nova estació d'abocador sanitari. Aquest és un lloc on els conductors de campers poden abocar aigües residuals o residus de vàter químic. Sovint també hi ha aigua potable i electricitat.", "pl": "Dodaj nową stację zrzutu sanitarnego. To miejsce, w którym kierowcy kamperów mogą wyrzucać ścieki lub odpady z toalet chemicznych. Często jest tam też woda pitna i prąd." } @@ -162,7 +162,7 @@ "de": "Wird hier eine Gebühr erhoben?", "zh_Hant": "這個地方需要付費嗎?", "nl": "Vraagt deze plaats een vergoeding?", - "es": "¿Este lugar cobra una tasa?", + "es": "¿Este lugar cobra una tarifa?", "da": "Opkræver dette sted et gebyr?", "ca": "Aquest lloc cobra una taxa?", "cs": "Účtuje si toto místo poplatek?", @@ -189,7 +189,7 @@ "zh_Hant": "你需要付費才能使用", "nb_NO": "Man må betale for bruk", "nl": "Je moet betalen voor het gebruik", - "es": "Tienes que pagar por el uso", + "es": "Hay que pagar por el uso", "da": "Du skal betale for brug", "ca": "Has de pagar per a utilitzar-ho", "cs": "Použití je zpoplatněno", @@ -215,7 +215,7 @@ "zh_Hant": "這裡可以免費使用", "nl": "Kan gratis gebruikt worden", "nb_NO": "Kan brukes gratis", - "es": "Se puede utilizar gratis", + "es": "Se puede usar gratis", "da": "Kan bruges gratis", "ca": "Es pot utilitzar gratuïtament", "cs": "Lze použít zdarma", @@ -237,7 +237,7 @@ "zh_Hant": "這個地方收費 {charge}", "nb_NO": "Dette stedet tar {charge}", "nl": "Deze loosplaats rekent {charge} aan", - "es": "Este lugar cobra {charge}", + "es": "Este lugar cuesta {charge}", "ca": "Aquest lloc costa {charge}", "da": "Dette sted opkræver {charge}", "cs": "Toto místo si účtuje {charge}", @@ -254,7 +254,7 @@ "de": "Wie hoch ist die Gebühr an diesem Ort?", "zh_Hant": "這個地方收費多少?", "nl": "Hoeveel kost het gebruik van deze loosplaats?", - "es": "¿Cuánto cobra este lugar?", + "es": "¿Cuánto cuesta este lugar?", "ca": "Quant costa aquest lloc?", "da": "Hvor meget koster det at bruge dette sted?", "cs": "Kolik si toto místo účtuje?", @@ -289,7 +289,7 @@ "da": "Har dette sted et vandpost?", "ca": "Aquest lloc té un punt d'aigua?", "cs": "Má toto místo vodní zdroj?", - "es": "¿Este lugar tiene toma de agua?", + "es": "¿Este lugar tiene un punto de agua?", "pl": "Czy to miejsce ma punkt z wodą?", "pt": "Este lugar tem um ponto de água?" }, @@ -314,7 +314,7 @@ "ca": "Aquest lloc té un punt d'aigua", "cs": "Na tomto místě se nachází vodní zdroj", "nb_NO": "Dette stedet har en vannpost", - "es": "Este lugar tiene una toma de agua", + "es": "Este lugar tiene un punto de agua", "eu": "Leku honek ur-hartune bat du", "pl": "To miejsce ma punkt poboru wody", "pt": "Este lugar tem um ponto de água" @@ -340,7 +340,7 @@ "ca": "Aquest lloc no té un punt d'aigua", "cs": "Toto místo nemá vodní zdroj", "nb_NO": "Dette stedet har ikke en vannpost", - "es": "Este lugar no tiene toma de agua", + "es": "Este lugar no tiene un punto de agua", "pl": "To miejsce nie ma punktu poboru wody", "pt": "Este lugar não tem um ponto de água" } @@ -362,7 +362,7 @@ "ca": "Aquí pots desfer-te de les aigües grises?", "cs": "Lze na tomto místě likvidovat šedou vodu?", "nb_NO": "Kan du kvitte deg med gråvann her?", - "es": "¿Puede desechar las aguas grises aquí?", + "es": "¿Puedes deshacerte de aguas grises aquí?", "pl": "Czy można tutaj pozbyć się szarej wody?" }, "mappings": [ @@ -385,7 +385,7 @@ "da": "Du kan bortskaffe gråt vand her", "cs": "Zde můžete likvidovat šedou vodu", "nb_NO": "Du kan kvitte deg med gråvann her", - "es": "Las aguas grises pueden eliminarse aquí", + "es": "Aquí puedes deshacerte de aguas grises", "pl": "Tutaj możesz pozbyć się szarej wody" } }, @@ -408,7 +408,7 @@ "ca": "Aquí no pots desfer-te de les aigües grises", "cs": "Zde nelze likvidovat šedou vodu", "nb_NO": "Du kan ikke kvitte deg med gråvann her", - "es": "No se pueden eliminar las aguas grises aquí", + "es": "Aquí no puedes deshacerte de aguas grises", "pl": "Nie można tu wylewać szarej wody" } } @@ -429,7 +429,7 @@ "da": "Kan man bortskaffe kemisk toiletaffald her?", "ca": "Aquí pots depositar els residus del vàter químic?", "cs": "Lze na tomto místě likvidovat chemický toaletní odpad?", - "es": "¿Se pueden tirar aquí los residuos químicos de los aseos?", + "es": "¿Puedes deshacerte de residuos de inodoros químicos aquí?", "pl": "Czy można tutaj wyrzucać odpady chemiczne z toalet?" }, "mappings": [ @@ -452,7 +452,7 @@ "da": "Her kan du bortskaffe kemisk toiletaffald", "ca": "Aquí pots depositar els residus del vàter químic", "cs": "Zde můžete likvidovat chemický toaletní odpad", - "es": "Puede eliminar aquí los residuos químicos de los aseos", + "es": "Aquí puedes deshacerte de residuos de inodoros químicos", "pl": "Tutaj możesz wyrzucić odpady chemiczne z toalet" } }, @@ -475,7 +475,7 @@ "da": "Du kan ikke bortskaffe kemisk toiletaffald her", "ca": "Aquí no pots depositar els residus del vàter químic", "cs": "Zde nemůžete likvidovat chemický toaletní odpad", - "es": "Aquí no se pueden tirar los residuos químicos de los aseos", + "es": "Aquí no puedes deshacerte de residuos de inodoros químicos", "pl": "Nie można tutaj wyrzucać odpadów chemicznych z toalet" } } @@ -495,7 +495,7 @@ "ca": "Qui pot utilitzar aquesta estació d'abocament?", "da": "Hvem kan bruge denne losseplads?", "cs": "Kdo může použít tuto skládku?", - "es": "¿Quien puede usar el vertedero?", + "es": "¿Quién puede usar esta estación de vaciado?", "eu": "Nork erabil dezake hondakindegia?", "pl": "Kto może korzystać z tej stacji zrzutów?" }, @@ -518,7 +518,7 @@ "da": "Du skal bruge en netværksnøgle/-kode for at bruge dette", "ca": "Necessites un codi/clau de xarxa per usar-lo", "cs": "K použití potřebujete síťový klíč/kód", - "es": "Necesitas una clave/código de red para usarlo", + "es": "Necesitas una clave/código de red para usar esto", "pl": "Aby z tego skorzystać, potrzebny jest klucz/kod sieci" } }, @@ -539,7 +539,7 @@ "ca": "Heu de ser client del càmping/lloc d'acampada per utilitzar aquest lloc", "da": "Du skal være kunde hos camping/campingplads for at bruge dette sted", "cs": "Abyste mohli toto místo používat, musíte být zákazníkem kempu/kempovacího místa", - "es": "Necesitas ser cliente del camping para usar este lugar", + "es": "Debes ser cliente del camping/área de acampada para usar este lugar", "pl": "Aby korzystać z tego miejsca, musisz być klientem kempingu/miejsca dla kamperów" } }, @@ -561,7 +561,7 @@ "ca": "Qualsevol pot utilitzar aquesta estació d'abocament", "da": "Alle kan bruge denne losseplads", "cs": "Tuto skládku může použít kdokoli", - "es": "Cualquiera puede utilizar este vertedero", + "es": "Cualquiera puede usar esta estación de vaciado", "eu": "Edonork erabil dezake hondakindegi hau", "pl": "Każdy może korzystać z tej stacji zrzutu" }, @@ -585,7 +585,7 @@ "ca": "Qualsevol pot utilitzar aquesta estació d'abocament", "da": "Alle kan bruge denne losseplads", "cs": "Tuto skládku může použít kdokoli", - "es": "Cualquiera puede usar este vertedero", + "es": "Cualquiera puede usar esta estación de vaciado", "eu": "Edonork erabil dezake hondakindegi hau", "pl": "Każdy może korzystać z tej stacji zrzutu" } @@ -602,11 +602,12 @@ "de": "Diese Station gehört zum Verbund/Netzwerk {network}", "zh_Hant": "這車站是屬於 {network} 網路的一部分", "nl": "Deze loosplaats is deel van het {network} netwerk", - "es": "Esta estación forma parte de la red {network}", + "es": "Esta estación es parte de la red {network}", "da": "Denne station er en del af netværket {network}", "ca": "Aquesta estació forma part de la xarxa {network}", "cs": "Tato stanice je součástí sítě {network}", - "pl": "Ta stacja jest częścią sieci {network}" + "pl": "Ta stacja jest częścią sieci {network}", + "uk": "Ця станція є частиною мережі {network}" }, "question": { "en": "What network is this place a part of? (skip if none)", @@ -617,11 +618,12 @@ "de": "Zu welchem Verbund/Netzwerk gehört dieser Ort? (Überspringen, wenn nicht zutreffend)", "zh_Hant": "這裡是屬於那個網路的? (沒有則跳過)", "nl": "Van welk netwerk vormt deze plaats een deel? (Sla over als het geen deel uitmaakt van een netwerk)", - "es": "¿A qué red forma parte este lugar? (saltar si a ninguna)", + "es": "¿De qué red forma parte este lugar? (omitir si no hay ninguna)", "da": "Hvilket netværk er dette sted en del af? (spring over hvis ingen)", "ca": "A quina xarxa forma part aquest lloc? (Salta si a cap)", "cs": "Jaké sítě je toto místo součástí? (přeskočte, pokud žádné)", - "pl": "Do jakiej sieci należy to miejsce? (pomiń, jeśli nie ma)" + "pl": "Do jakiej sieci należy to miejsce? (pomiń, jeśli nie ma)", + "uk": "Частиною якої мережі є цей заклад? (пропустіть, якщо немає)" }, "freeform": { "key": "network" diff --git a/assets/layers/elevator/elevator.json b/assets/layers/elevator/elevator.json index 2f58fbcec..cd3dc45df 100644 --- a/assets/layers/elevator/elevator.json +++ b/assets/layers/elevator/elevator.json @@ -8,7 +8,8 @@ "pa_PK": "ایلیویٹر", "ca": "Ascensor", "pl": "Winda", - "cs": "Výtah" + "cs": "Výtah", + "es": "Ascensor" }, "description": { "en": "This layer show elevators and asks for operational status and elevator dimensions. Useful for wheelchair accessibility information", @@ -17,7 +18,8 @@ "nl": "Deze laag toont liften en vraagt praktische info over de grootte van de lift en ofdat deze werkt, vooral met het oog op of de lift werkt of niet.", "ca": "Aquesta capa mostra ascensors i demana l'estat operatiu i les dimensions de l'ascensor. Útil per obtenir informació sobre l'accessibilitat en cadira de rodes", "cs": "Tato vrstva zobrazuje výtahy a ptá se na provozní stav a rozměry výtahu. Užitečné pro informace o bezbariérovém přístupu", - "pl": "Ta warstwa pokazuje windy i zadaje pytania o ich status i wymiary. Przydatne do informacji o dostępności dla wózków" + "pl": "Ta warstwa pokazuje windy i zadaje pytania o ich status i wymiary. Przydatne do informacji o dostępności dla wózków", + "es": "Esta capa muestra ascensores y solicita el estado operativo y las dimensiones del ascensor. Útil para información de accesibilidad para sillas de ruedas" }, "source": { "osmTags": "highway=elevator" @@ -32,7 +34,8 @@ "pa_PK": "ایلیویٹر", "pl": "Winda", "ca": "Ascensor", - "cs": "Výtah" + "cs": "Výtah", + "es": "Ascensor" } }, "pointRendering": [ @@ -75,7 +78,8 @@ "de": "einen Aufzug", "ca": "un ascensor", "pl": "winda", - "cs": "výtah" + "cs": "výtah", + "es": "un ascensor" }, "tags": [ "highway=elevator" @@ -94,7 +98,8 @@ "nl": "Werkt deze lift?", "pl": "Czy ta winda działa?", "ca": "Funciona aquest ascensor?", - "cs": "Funguje tento výtah?" + "cs": "Funguje tento výtah?", + "es": "¿Funciona este ascensor?" }, "mappings": [ { @@ -106,7 +111,8 @@ "nl": "Deze lift is kapot", "pl": "Ta winda jest zepsuta", "ca": "L'ascensor està trencat", - "cs": "Tento výtah je rozbitý" + "cs": "Tento výtah je rozbitý", + "es": "Este ascensor está roto" }, "icon": "close:red" }, @@ -119,7 +125,8 @@ "nl": "Deze lift is tijdelijk gesloten bijvoorbeeld door renovatiewerken", "pl": "Ta winda jest nieczynna np. z powodu renowacji", "ca": "L'ascensor està tancat p.e. perquè s'estan fent obres de reforma", - "cs": "Tento výtah je uzavřen např. protože probíhají renovační práce" + "cs": "Tento výtah je uzavřen např. protože probíhají renovační práce", + "es": "Este ascensor está cerrado ej. porque se están realizando obras de renovación" }, "icon": "invalid:red" }, @@ -132,7 +139,8 @@ "nl": "Deze lift werkt", "pl": "Ta winda działa", "ca": "L'ascesor funciona", - "cs": "Tento výtah funguje" + "cs": "Tento výtah funguje", + "es": "Este ascensor funciona" } }, { @@ -144,7 +152,8 @@ "nl": "Deze lift werkt", "ca": "Aquest ascensor funciona", "pl": "Ta winda działa", - "cs": "Tento výtah funguje" + "cs": "Tento výtah funguje", + "es": "Este ascensor funciona" }, "hideInAnswer": true } @@ -159,7 +168,8 @@ "nl": "De breedte van de liftdeur is {canonical(door:width)}", "pl": "Drzwi tej windy mają szerokość {canonical(door:width)}", "ca": "Les portes de l'ascensor tenen un amplada de {canonical(door:width)}", - "cs": "Dveře tohoto výtahu mají šířku {canonical(door:width)}" + "cs": "Dveře tohoto výtahu mají šířku {canonical(door:width)}", + "es": "Las puertas de este ascensor tienen un ancho de {canonical(door:width)}" }, "question": { "en": "What is the width of this elevator's entrance?", @@ -168,7 +178,8 @@ "nl": "Wat is de breedte van de liftdeur?", "ca": "Quina és l'amplada de l'entrada d'aquest ascensor?", "pl": "Jaka jest szerokość drzwi windy?", - "cs": "Jaká je šířka vstupu do tohoto výtahu?" + "cs": "Jaká je šířka vstupu do tohoto výtahu?", + "es": "¿Cuál es el ancho de la entrada de este ascensor?" }, "freeform": { "key": "door:width", @@ -181,7 +192,8 @@ "en": "What shape does this elevator have?", "de": "Welche Form hat dieser Aufzug?", "pl": "Jaki kształt ma ta winda?", - "ca": "Quina forma té aquest ascensor?" + "ca": "Quina forma té aquest ascensor?", + "es": "¿Qué forma tiene este ascensor?" }, "mappings": [ { @@ -192,7 +204,8 @@ "de": "Dieser Aufzug hat eine rechteckige Form", "fr": "Cet ascenseur est de forme rectangulaire", "pl": "Ta winda ma prostokątny kształt", - "ca": "Aquest ascensor té una forma rectangular" + "ca": "Aquest ascensor té una forma rectangular", + "es": "Este ascensor tiene forma rectangular" }, "icon": "./assets/svg/square.svg" }, @@ -202,7 +215,8 @@ "en": "This elevator has a circular shape", "de": "Dieser Aufzug hat eine kreisförmige Form", "pl": "Ta winda ma okrągły kształt", - "ca": "Aquest ascensor té una forma circular" + "ca": "Aquest ascensor té una forma circular", + "es": "Este ascensor tiene forma circular" }, "icon": "./assets/svg/circle.svg" } @@ -223,7 +237,8 @@ "nl": "Deze lift heeft een breedte van {canonical(width)}", "pl": "Szerokość tej windy to {canonical(width)}", "ca": "L'ascensor té una amplada de {canonical(width)}", - "cs": "Tento výtah má šířku {canonical(width)}" + "cs": "Tento výtah má šířku {canonical(width)}", + "es": "Este ascensor tiene un ancho de {canonical(width)}" }, "question": { "en": "What is the width of this elevator?", @@ -232,7 +247,8 @@ "nl": "Wat is de breedte van deze lift?", "pl": "Jaka jest szerokość tej windy?", "ca": "Quina és l'amplada d'aquest ascensor?", - "cs": "Jaká je šířka tohoto výtahu?" + "cs": "Jaká je šířka tohoto výtahu?", + "es": "¿Cuál es el ancho de este ascensor?" }, "freeform": { "key": "width", @@ -253,7 +269,8 @@ "de": "Dieser Aufzug hat eine Kabinentiefe von {canonical(length)}", "nl": "Deze lift heeft een diepte van {canonical(length)}", "ca": "L'ascensor té un profunditat de {canonical(length)}", - "cs": "Tento výtah má hloubku {canonical(length)}" + "cs": "Tento výtah má hloubku {canonical(length)}", + "es": "Este ascensor tiene una profundidad de {canonical(length)}" }, "question": { "en": "What is the depth of this elevator?", @@ -261,7 +278,8 @@ "de": "Wie tief ist die Kabine dieses Aufzugs?", "nl": "Wat is de diepte van deze lift?", "ca": "Quina és la profunditat de l'ascensor?", - "cs": "Jaká je hloubka tohoto výtahu?" + "cs": "Jaká je hloubka tohoto výtahu?", + "es": "¿Cuál es la profundidad de este ascensor?" }, "freeform": { "key": "length", @@ -277,11 +295,13 @@ }, "render": { "en": "This elevator has a diameter of {canonical(diameter)}", - "de": "Dieser Aufzug hat einen Durchmesser von {canonical(diameter)}" + "de": "Dieser Aufzug hat einen Durchmesser von {canonical(diameter)}", + "es": "Este ascensor tiene un diámetro de {canonical(diameter)}" }, "question": { "en": "What is the diameter of this elevator?", - "de": "Was ist der Durchmesser dieses Aufzugs?" + "de": "Was ist der Durchmesser dieses Aufzugs?", + "es": "¿Cuál es el diámetro de este ascensor?" }, "freeform": { "key": "diameter", @@ -295,7 +315,8 @@ "en": "Has this elevator tactile writing?", "ca": "Aquest ascensor té escriptura tàctil?", "de": "Hat dieser Aufzug taktile Schrift?", - "cs": "Má tento výtah hmatové písmo?" + "cs": "Má tento výtah hmatové písmo?", + "es": "¿Tiene este ascensor escritura táctil?" }, "mappings": [ { @@ -304,7 +325,8 @@ "en": "This elevator has tactile writing in Braille", "ca": "L'ascensor té escriptura tàctil en Braille", "de": "Dieser Aufzug hat eine taktile Schrift in Brailleschrift", - "cs": "Tento výtah má hmatové písmo v Braillově písmu" + "cs": "Tento výtah má hmatové písmo v Braillově písmu", + "es": "Este ascensor tiene escritura táctil en Braille" } }, { @@ -313,7 +335,8 @@ "en": "This elevator does not have tactile writing", "ca": "Aquest ascensor no té escriptura tàctil", "de": "Dieser Aufzug hat keine taktile Schrift", - "cs": "Tento výtah nemá hmatové psaní" + "cs": "Tento výtah nemá hmatové psaní", + "es": "Este ascensor no tiene escritura táctil" } } ] @@ -330,21 +353,24 @@ "de": "In welchen Sprachen hat der Aufzug taktile Schrift (Braille)?", "nl": "In welke talen heeft deze lift voelbaar schrift (braille)?", "ca": "Aquest ascensor en quins idiomes té l'escriptura tàctil (braille)?", - "cs": "Ve kterých jazycích má tento výtah hmatové písmo (braillovo písmo)?" + "cs": "Ve kterých jazycích má tento výtah hmatové písmo (braillovo písmo)?", + "es": "¿En qué idiomas tiene escritura táctil (Braille) este ascensor?" }, "render_list_item": { "en": "This elevator has tactile writing in {language()}", "de": "Der Aufzug hat taktile Schrift in {language()}", "nl": "Deze lift heeft voelbaar schrift in het {language()}", "ca": "Aquest ascensor té l'escriptura tàctil en {language()}", - "cs": "Tento výtah má hmatové písmo v {language()}" + "cs": "Tento výtah má hmatové písmo v {language()}", + "es": "Este ascensor tiene escritura táctil en {language()}" }, "render_single_language": { "en": "This elevator has tactile writing in {language()}", "de": "Der Aufzug hat taktile Schrift in {language()}", "nl": "Deze lift heeft voelbaar schrift in het {language()}", "ca": "Aquest ascensor té l'escriptura tàctil en {language()}", - "cs": "Tento výtah má hmatové písmo v {language()}" + "cs": "Tento výtah má hmatové písmo v {language()}", + "es": "Este ascensor tiene escritura táctil en {language()}" } } } @@ -354,14 +380,16 @@ "question": { "en": "Has this elevator speech output?", "de": "Verfügt der Aufzug über eine Sprachausgabe?", - "cs": "Má tento výtah hlasový výstup?" + "cs": "Má tento výtah hlasový výstup?", + "es": "¿Tiene este ascensor salida de voz?" }, "questionHint": { "en": "E.g. it announces the current floor", "de": "Z.B. werden Stockwerke angesagt", "ca": "P. e. anuncia la planta actual", "cs": "Např. oznamuje aktuální podlaží", - "pl": "Np. informuje o aktualnym piętrze" + "pl": "Np. informuje o aktualnym piętrze", + "es": "Ej. anuncia la planta actual" }, "mappings": [ { @@ -369,7 +397,8 @@ "then": { "en": "This elevator has speech output", "de": "Der Aufzug verfügt über eine Sprachausgabe", - "cs": "Tento výtah má hlasový výstup" + "cs": "Tento výtah má hlasový výstup", + "es": "Este ascensor tiene salida de voz" } }, { @@ -377,7 +406,8 @@ "then": { "en": "This elevator does not have speech output", "de": "Der Aufzug verfügt über keine Sprachausgabe", - "cs": "Tento výtah nemá hlasový výstup" + "cs": "Tento výtah nemá hlasový výstup", + "es": "Este ascensor no tiene salida de voz" } } ] @@ -394,21 +424,24 @@ "nl": "In welke talen heeft deze lift gesproken tekst?", "de": "In welchen Sprachen verfügt der Aufzug über eine Sprachausgabe?", "ca": "Aquest ascensor en quins idiomes té sortida de veu?", - "cs": "Ve kterých jazycích má tento výtah hlasový výstup?" + "cs": "Ve kterých jazycích má tento výtah hlasový výstup?", + "es": "¿En qué idiomas tiene salida de voz este ascensor?" }, "render_list_item": { "en": "This elevator has speech output in {language()}", "nl": "Deze lift heeft gesproken tekst in het {language()}", "de": "Der Aufzug hat eine Sprachausgabe in {language()}", "ca": "Aquest ascensor té sortida de veu en {language()}", - "cs": "Tento výtah má hlasový výstup v {language()}" + "cs": "Tento výtah má hlasový výstup v {language()}", + "es": "Este ascensor tiene salida de voz en {language()}" }, "render_single_language": { "en": "This elevator has speech output in {language()}", "nl": "Deze lift heeft gesproken tekst in het {language()}", "de": "Der Aufzug hat eine Sprachausgabe in {language()}", "ca": "Aquest ascensor té sortida de veu en {language()}", - "cs": "Tento výtah má hlasový výstup v {language()}" + "cs": "Tento výtah má hlasový výstup v {language()}", + "es": "Este ascensor tiene salida de voz en {language()}" } } } diff --git a/assets/layers/elongated_coin/elongated_coin.json b/assets/layers/elongated_coin/elongated_coin.json index e56b47ddf..4e2a6224c 100644 --- a/assets/layers/elongated_coin/elongated_coin.json +++ b/assets/layers/elongated_coin/elongated_coin.json @@ -3,14 +3,14 @@ "name": { "en": "Penny Presses", "de": "Münzprägeautomaten", - "es": "Prensas de centavo", + "es": "Prensa de Monedas", "ca": "Premses de cèntims", "cs": "Ražby mincí" }, "description": { "en": "Layer showing penny presses.", "de": "Ebene mit Münzprägeautomaten.", - "es": "Capa que muestra prensas de centavos.", + "es": "Capa que muestra prensas de monedas.", "ca": "Capa que mostra premses de cèntims.", "cs": "Vrstva zobrazující ražbu mincí." }, @@ -26,7 +26,7 @@ "render": { "en": "Penny Press", "de": "Prägeautomat", - "es": "Prensa de centavo", + "es": "Prensa de Monedas", "ca": "Premsa de cèntims", "cs": "Ražba mincí" } @@ -60,7 +60,7 @@ "title": { "en": "a penny press", "de": "Einen Münzprägeautomaten", - "es": "una prensa de centavo", + "es": "una prensa de monedas", "ca": "una premsa de cèntim", "cs": "ražba mincí" }, @@ -79,7 +79,7 @@ "question": { "en": "How many designs are available?", "de": "Wieviele Motive sind verfügbar?", - "es": "Cuántos diseños hay disponibles?", + "es": "¿Cuántos diseños hay disponibles?", "ca": "Quants dissenys hi han disponibles?", "cs": "Kolik designů je k dispozici?" }, @@ -89,7 +89,7 @@ "placeholder": { "en": "Number of designs (e.g. 5)", "de": "Motivanzahl (z.B. 5)", - "es": "Número de diseños (por ejemplo, 5)", + "es": "Número de diseños (ej. 5)", "ca": "Nombre de dissenys (p. e. 5)", "cs": "Počet vzorů (např. 5)" } @@ -97,7 +97,7 @@ "render": { "en": "This penny press has {coin:design_count} designs available.", "de": "Der Prägeautomat hat {coin:design_count} Motive zur Auswahl.", - "es": "Esta prensa tiene {coin:design_count} diseños disponibles.", + "es": "Esta prensa de monedas tiene {coin:design_count} diseños disponibles.", "ca": "Esta premsa té {coin:design_count} dissenys disponibles.", "cs": "Tento lis na centy má k dispozici {coin:design_count} vzory." }, @@ -107,7 +107,7 @@ "then": { "en": "This penny press has one design available.", "de": "Der Prägeautomat hat ein Motiv zur Auswahl.", - "es": "Esta prensa tiene un diseño disponible.", + "es": "Esta prensa de monedas tiene un diseño disponible.", "ca": "Esta premsa té un disseny disponible.", "cs": "Tento lis na peníze má k dispozici jeden design." } @@ -117,7 +117,7 @@ "then": { "en": "This penny press has two designs available.", "de": "Der Prägeautomat hat zwei Motive zur Auswahl.", - "es": "Esta prensa tiene dos diseños disponibles.", + "es": "Esta prensa de monedas tiene dos diseños disponibles.", "ca": "Esta premsa té dos dissenys disponibles.", "cs": "Tento lis na peníze má k dispozici dvě provedení." } @@ -127,7 +127,7 @@ "then": { "en": "This penny press has three designs available.", "de": "Der Prägeautomat hat drei Motive zur Auswahl.", - "es": "Esta prensa tiene tres diseños disponibles.", + "es": "Esta prensa de monedas tiene tres diseños disponibles.", "ca": "Esta premsa té tres dissenys disponibles.", "cs": "Tento lis na peníze má k dispozici tři provedení." } @@ -137,7 +137,7 @@ "then": { "en": "This penny press has four designs available.", "de": "Der Prägeautomat hat vier Motive zur Auswahl.", - "es": "Esta prensa tiene cuatro diseños disponibles.", + "es": "Esta prensa de monedas tiene cuatro diseños disponibles.", "ca": "Esta premsa té quatre dissenys disponibles.", "cs": "Tento lis na peníze má k dispozici čtyři provedení." } @@ -150,7 +150,8 @@ "en": "Does it cost money to press a penny?", "ca": "Costa diners premsar una moneda?", "de": "Ist das Prägen kostenpflichtig?", - "cs": "Ražba mincí stojí peníze?" + "cs": "Ražba mincí stojí peníze?", + "es": "¿Cuesta dinero prensar una moneda?" }, "mappings": [ { @@ -159,7 +160,8 @@ "en": "It costs money to press a penny.", "ca": "Costa diners premsar una moneda.", "de": "Das Prägen ist kostenpflichtig.", - "cs": "Ražba mincí stojí peníze." + "cs": "Ražba mincí stojí peníze.", + "es": "Cuesta dinero prensar una moneda." } }, { @@ -168,7 +170,8 @@ "en": "It costs money to press a penny.", "ca": "Costa diners premsar una moneda.", "de": "Das Prägen ist kostenpflichtig.", - "cs": "Ražba mincí stojí peníze." + "cs": "Ražba mincí stojí peníze.", + "es": "Cuesta dinero prensar una moneda." } }, { @@ -177,7 +180,8 @@ "en": "It is free to press a penny.", "ca": "És gratuït premsar una moneda.", "de": "Das Prägen ist kostenlos.", - "cs": "Ražba mincí je zdarma." + "cs": "Ražba mincí je zdarma.", + "es": "Es gratis prensar una moneda." }, "addExtraTags": [ "payment:qr_code=", @@ -205,7 +209,7 @@ "question": { "en": "What coin is used for pressing?", "de": "Welche Münzen können geprägt werden?", - "es": "Qué moneda se utiliza para prensar?", + "es": "¿Qué moneda se usa para prensar?", "ca": "Quina moneda s'utilitza per a premsar?", "cs": "Jaká mince se používá k ražbě?" }, @@ -215,7 +219,7 @@ "placeholder": { "en": "Coin type (e.g. 10cent)", "de": "Münzenart (z.B. 10 Cent)", - "es": "Tipo de moneda (por ejemplo, 10 centavos)", + "es": "Tipo de moneda (ej. 10 céntimos)", "pl": "Rodzaj monety (np. 10 centów)", "ca": "Tipus de moneda (p. e. 10 cèntims)", "cs": "Typ mince (např. 10 centů)" @@ -227,7 +231,7 @@ "then": { "en": "This penny press uses a 2 cent coin for pressing.", "de": "Der Automat prägt 2 Cent Münzen.", - "es": "Esta prensa de centavo utiliza una moneda de 2 centavos para prensar.", + "es": "Esta prensa de monedas usa una moneda de 2 céntimos para prensar.", "ca": "Esta premsa de cèntims utilitza una moneda de 2 cèntims per a premsar.", "cs": "Tento lis na haléře používá k lisování minci v hodnotě 2 centů." }, @@ -243,7 +247,7 @@ "then": { "en": "This penny press uses a 5 cent coin for pressing.", "de": "Der Automat prägt 5 Cent Münzen.", - "es": "Esta prensa de centavo utiliza una moneda de 5 centavos para prensar.", + "es": "Esta prensa de monedas usa una moneda de 5 céntimos para prensar.", "ca": "Esta premsa de cèntims utilitza una moneda de 5 cèntims per a premsar.", "cs": "Tento lis na haléře používá k lisování minci v hodnotě 5 centů." }, @@ -259,7 +263,7 @@ "then": { "en": "This penny press uses a 10 cent coin for pressing.", "de": "Der Automat prägt 10 Cent Münzen.", - "es": "Esta prensa de centavo utiliza una moneda de 10 centavos para prensar.", + "es": "Esta prensa de monedas usa una moneda de 10 céntimos para prensar.", "ca": "Esta premsa de cèntims utilitza una moneda de 10 cèntims per a premsar.", "cs": "Tento lis na haléře používá k lisování minci v hodnotě 10 centů." }, @@ -275,7 +279,7 @@ "then": { "en": "This penny press uses a 25 cent coin for pressing.", "de": "Der Automat prägt 25 Cent Münzen.", - "es": "Esta prensa de centavo utiliza una moneda de 25 centavos para prensar.", + "es": "Esta prensa de monedas usa una moneda de 25 céntimos para prensar.", "ca": "Esta premsa de cèntims utilitza una moneda de 25 cèntims per a premsar.", "cs": "Tento lis na haléře používá k lisování minci v hodnotě 25 centů." }, @@ -286,7 +290,7 @@ "then": { "en": "This penny press uses a 50 cent coin for pressing.", "de": "Der Automat prägt 50 Cent Münzen.", - "es": "Esta prensa de centavo utiliza una moneda de 50 centavos para prensar.", + "es": "Esta prensa de monedas usa una moneda de 50 céntimos para prensar.", "ca": "Esta premsa de cèntims utilitza una moneda de 50 cèntims per a premsar.", "cs": "Tento lis na haléře používá k lisování minci v hodnotě 50 centů." }, @@ -297,7 +301,8 @@ "then": { "en": "This penny press uses a 10 centimes coin for pressing.", "ca": "Esta premsa de cèntims utilitza una moneda de 10 cèntims per a premsar.", - "de": "Der Automat prägt 10 Centime Münzen." + "de": "Der Automat prägt 10 Centime Münzen.", + "es": "Esta prensa de monedas usa una moneda de 10 céntimos para prensar." }, "hideInAnswer": "_currency!~.*CHF.*" }, @@ -306,7 +311,8 @@ "then": { "en": "This penny press uses a 20 centimes coin for pressing.", "ca": "Esta premsa de cèntims utilitza una moneda de 20 cèntims per a premsar.", - "de": "Der Automat prägt 5 Centime Münzen." + "de": "Der Automat prägt 5 Centime Münzen.", + "es": "Esta prensa de monedas usa una moneda de 20 céntimos para prensar." }, "hideInAnswer": "_currency!~.*CHF.*" } @@ -314,7 +320,7 @@ "render": { "en": "This penny press uses a {coin:type} coin for pressing.", "de": "Der Automat prägt {coin:type} Cent Münzen.", - "es": "Esta prensa de centavo utiliza una moneda {coin:type} para prensar.", + "es": "Esta prensa de monedas usa una moneda de {coin:type} para prensar.", "ca": "Esta premsa de cèntims utilitza una moneda de {coin:type} per a premsar.", "cs": "Tento lis na centy používá k lisování minci {coin:type}." } @@ -331,7 +337,7 @@ "question": { "en": "How much does it cost to press a penny?", "de": "Wieviel kostet die Prägung einer Münze?", - "es": "¿Cuánto cuesta prensar un centavo?", + "es": "¿Cuánto cuesta prensar una moneda?", "ca": "Quant costa premsar un cèntim?", "cs": "Kolik stojí ražba mince?" }, @@ -341,7 +347,7 @@ "en": "Cost (e.g. 0.50 EUR)", "de": "Gebühr (z.B. 0,50 €)", "fr": "Coût (par ex. 0.50 EUR)", - "es": "Costo (por ejemplo, 0.50 euros)", + "es": "Costo (ej. 0,50 EUR)", "ca": "Cost (p. e, 0.50 euros)", "cs": "Cena (např. 0,50 EUR)" } @@ -352,7 +358,7 @@ "then": { "en": "It costs 1 euro to press a penny.", "de": "Die Prägung einer Münze kostet 1,00 €.", - "es": "Cuesta 1 euro prensar un centavo.", + "es": "Cuesta 1 euro prensar una moneda.", "ca": "Costa 1 euro premsar un cèntim.", "cs": "Ražba mince stojí 1 euro." }, @@ -363,7 +369,7 @@ "then": { "en": "It costs 2 euros to press a penny.", "de": "Die Prägung einer Münze kostet 2,00 €.", - "es": "Cuesta 2 euros prensa un centavo.", + "es": "Cuesta 2 euros prensar una moneda.", "ca": "Costa 2 euros premsar un cèntim.", "cs": "Ražba mince stojí 2 eura." }, @@ -375,7 +381,8 @@ "en": "It costs 2 Swiss francs to press a penny.", "ca": "Costa 2 francs suïssos premsar un cèntim.", "de": "Die Prägung einer Münze kostet 2 Schweizer Franken.", - "cs": "Ražba mince stojí 2 Švýcarské franky." + "cs": "Ražba mince stojí 2 Švýcarské franky.", + "es": "Cuesta 2 francos suizos prensar una moneda." }, "hideInAnswer": "_currency!~.*CHF.*" }, @@ -385,7 +392,8 @@ "en": "It costs 1 Swiss franc to press a penny.", "ca": "Costa 1 franc suís premsar un cèntim.", "de": "Die Prägung einer Münze kostet 1 Schweizer Franken.", - "cs": "Ražba mince stojí 1 Švýcarský frank." + "cs": "Ražba mince stojí 1 Švýcarský frank.", + "es": "Cuesta 1 franco suizo prensar una moneda." }, "hideInAnswer": "_currency!~.*CHF.*" } @@ -393,7 +401,7 @@ "render": { "en": "It costs {charge} to press a penny.", "de": "Die Prägung einer Münze kostet {charge}.", - "es": "Cuesta {charge} prensar un centavo.", + "es": "Cuesta {charge} prensar una moneda.", "ca": "Costa {charge} premsar un cèntim.", "cs": "Ražba mince stojí {charge}." } @@ -404,7 +412,7 @@ "question": { "en": "Is the penny press indoors?", "de": "Befindet sich der Prägeautomat im Inneren?", - "es": "La prensa de centavo esta al interior?", + "es": "¿Está la prensa de monedas en interiores?", "ca": "La premsa de cèntims està a l'interior?", "cs": "Je lis na mince uvnitř?" }, @@ -414,9 +422,10 @@ "then": { "en": "This penny press is located indoors.", "de": "Der Prägeautomat befindet sich im Inneren.", - "es": "Esta prensa está ubicada en interior.", + "es": "Esta prensa de monedas está ubicada en interiores.", "ca": "Esta premsa està ubicada en interior.", - "cs": "Tento lis na mince je umístěn v interiéru." + "cs": "Tento lis na mince je umístěn v interiéru.", + "uk": "Цей копійчаний прес розташований у приміщенні." } }, { @@ -424,9 +433,10 @@ "then": { "en": "This penny press is located outdoors.", "de": "Der Prägeautomat befindet sich im Freien.", - "es": "Esta prensa está ubicada al aire libre.", + "es": "Esta prensa de monedas está ubicada en exteriores.", "ca": "Esta premsa està ubicada a l'exterior.", - "cs": "Tento lis na mince je umístěn venku." + "cs": "Tento lis na mince je umístěn venku.", + "uk": "Цей копійчаний прес розташований на відкритому повітрі." } } ] diff --git a/assets/layers/entrance/entrance.json b/assets/layers/entrance/entrance.json index 7d7d64e42..faacebce0 100644 --- a/assets/layers/entrance/entrance.json +++ b/assets/layers/entrance/entrance.json @@ -15,7 +15,7 @@ "en": "A layer showing entrances and offering capabilities to survey some advanced data which is important for e.g. wheelchair users (but also bicycle users, people who want to deliver, …)", "nl": "Een laag met ingangen (van gebouwen etc.) waarmee je details kunt aanvullen die belangrijk zijn voor bijvoorbeeld rolstoelgebruikers (en fietsers, leveranciers, …)", "de": "Eine Ebene, die Eingänge anzeigt und die Möglichkeit bietet, weitere Daten zu erheben, die z. B. für Rollstuhlfahrer wichtig sind (aber auch für Radfahrer, Lieferpersonal, …)", - "es": "Una capa que muestra capas y ofrece la posibilidad de sondear algunos datos avanzados que son importantes para, por ejemplo, usuarios de sillas de ruedas (pero también incluye ciclistas, gente que quiere repartir, ...)", + "es": "Una capa que muestra entradas y ofrece capacidades para encuestar algunos datos avanzados que son importantes para, por ejemplo, usuarios de sillas de ruedas (pero también usuarios de bicicletas, personas que desean realizar entregas, etc.)", "fr": "Une couche montrant les entrées et offrant des capacités pour étudier certaines données avancées qui sont importantes, par exemple. les utilisateurs de fauteuils roulants (mais aussi les utilisateurs de vélos, les personnes qui veulent faire des livraisons, …)", "ca": "Una capa que mostra entrades i ofereix la possibilitat de sondejar algunes dades avançades que són importants per a, per exemple, usuaris de cadires de rodes (però també ciclistes, repartidors, …)", "cs": "Vrstva zobrazující vstupy a nabízející možnosti zjišťování některých pokročilých údajů, které jsou důležité např. pro vozíčkáře (ale také pro uživatele jízdních kol, osoby, které chtějí doručovat, ...)" @@ -78,7 +78,8 @@ "de": "einen Eingang", "nl": "een toegang", "ca": "una entrada", - "cs": "vchod" + "cs": "vchod", + "es": "una entrada" }, "tags": [ "entrance=yes" @@ -94,7 +95,8 @@ "de": "eine Innentür", "nl": "een binnendeur", "ca": "una porta interior", - "cs": "vnitřní dveře" + "cs": "vnitřní dveře", + "es": "una puerta interior" }, "tags": [ "indoor=door" @@ -117,7 +119,8 @@ "fr": "De quel type d'entrée s'agit-il ?", "pl": "Jakiego rodzaju jest to wejście?", "ca": "Quin tipus d'entrada és aquesta?", - "cs": "O jaký typ vchodu se jedná?" + "cs": "O jaký typ vchodu se jedná?", + "uk": "Що це за тип входу?" }, "mappings": [ { @@ -126,7 +129,7 @@ "en": "No specific entrance type is known", "nl": "Het specifieke type ingang is onbekend", "de": "Der Eingangstyp ist nicht bekannt", - "es": "No se conoce un tipo de entrada específico", + "es": "No se conoce ningún tipo de entrada específico", "fr": "Aucun type d'entrée spécifique n'est connu", "ca": "No es coneix cap tipus d'entrada específica", "cs": "Není znám žádný konkrétní typ vstupu" @@ -144,10 +147,11 @@ "en": "This is an indoor door, separating a room or a corridor within a single building", "nl": "Dit is een binnendeur, die een kamer of een gang volledig binnen hetzelfde gebouw afsluit", "de": "Dies ist eine Innentür, die Räume oder Gänge innerhalb eines Gebäudes verbindet", - "es": "Esta es una puerta interior, que separa una habitación o pasillo dentro de un único edificio", + "es": "Esta es una puerta interior, que separa una habitación o un pasillo dentro de un solo edificio", "fr": "C'est une porte intérieure, séparant une pièce ou un couloir d'un même bâtiment", "ca": "Es tracta d'una porta interior, que separa una habitació o un passadís dins d'un únic edifici", - "cs": "Jedná se o vnitřní dveře, oddělující místnost nebo chodbu v rámci jedné budovy" + "cs": "Jedná se o vnitřní dveře, oddělující místnost nebo chodbu v rámci jedné budovy", + "uk": "Це міжкімнатні двері, що відокремлюють кімнату або коридор в межах однієї будівлі" } }, { @@ -165,7 +169,8 @@ "fr": "Ceci est l'entrée principale", "pl": "To jest główne wejście", "ca": "Aquesta és l'entrada principal", - "cs": "Toto je hlavní vchod" + "cs": "Toto je hlavní vchod", + "uk": "Це головний вхід" } }, { @@ -182,7 +187,8 @@ "es": "Esta es una entrada secundaria", "fr": "C'est une entrée secondaire", "ca": "Aquesta és una entrada secundària", - "cs": "Toto je vedlejší vchod" + "cs": "Toto je vedlejší vchod", + "uk": "Це додатковий вхід" } }, { @@ -196,7 +202,7 @@ "en": "This is a service entrance - normally only used for employees, delivery, …", "nl": "Dit is een dienstingang - normaal gezien enkel gebruikt door werknemers, leveranciers, …", "de": "Dies ist ein Diensteingang - normalerweise nur für Mitarbeiter, Anlieferung, …", - "es": "Esta es una entrada de servicio - normalmente solo la utilizan empleados, repartidores, …", + "es": "Esta es una entrada de servicio, normalmente solo utilizada para empleados, entregas, etc.", "fr": "C'est une entrée de service - normalement utilisée uniquement pour les employés, la livraison, …", "ca": "Aquesta és una entrada de servei - normalment utilitzada per empleats, repartidors, …", "pl": "To jest wejście serwisowe - zazwyczaj używane tylko przez pracowników, dostawy, …", @@ -214,7 +220,7 @@ "en": "This is an exit where one can not enter", "nl": "Dit is enkel een uitgang, je kan hier niet naar binnen", "de": "Dies ist ein Ausgang, ohne Zutrittsmöglichkeit", - "es": "Esta es una salida por la cual no se puede entrar", + "es": "Esta es una salida por la que no se puede entrar", "fr": "C'est une sortie où l'on ne peut pas entrer", "pl": "To jest wyjście bez możliwości wejścia", "ca": "Aquesta és una sortida on no es pot entrar", @@ -269,7 +275,7 @@ "en": "This is the entrance to a private home", "nl": "Dit is de ingang van een private woning", "de": "Dies ist ein Eingang zu einem privaten Haus", - "es": "Esta es la entrada a una vivienda privada", + "es": "Esta es la entrada a una casa particular", "fr": "C'est l'entrée d'une maison privée", "pl": "To jest wejście do prywatnego domu", "ca": "Aquesta és l'entrada d'una casa particular", @@ -284,7 +290,7 @@ "en": "What is the type of this door?", "nl": "Om wat voor deur gaat het?", "de": "Welche Tür gibt es an diesem Eingang?", - "es": "¿Cual es el tipo de esta puerta?", + "es": "¿Cuál es el tipo de esta puerta?", "fr": "Quel est le type de cette porte ?", "ca": "Quin és el tipus d'aquesta porta?", "cs": "Jaký je typ těchto dveří?" @@ -309,7 +315,7 @@ "en": "A classical, hinged door supported by joints", "nl": "Een gewone deur die aan scharnieren ophangt en openzwaait", "de": "Der Eingang hat eine normale Tür mit seitlichem Anschlag", - "es": "Una puerta clásica, con bisagras soportadas por uniones", + "es": "Una puerta clásica con bisagras soportada por juntas", "fr": "Une porte battante classique soutenue par des joints", "ca": "Una porta clàssica, amb frontisses suportades per unions", "cs": "Klasické, pantové dveře podporované klouby" @@ -321,7 +327,7 @@ "en": "A revolving door which hangs on a central shaft, rotating within a cylindrical enclosure", "nl": "Een tourniquet-deur (draaideur) die in een cylinder rond een centrale as draait", "de": "Der Eingang hat eine Karusselltür, die sich um ihre eigene Achse dreht", - "es": "Una puerta giratoria que cuelga de un eje central y que rota dentro de una carcasa cilíndrica", + "es": "Una puerta giratoria que cuelga de un eje central, girando dentro de un recinto cilíndrico", "fr": "Une porte tournante suspendue à un arbre central, tournant dans une enceinte cylindrique", "ca": "Una porta giratòria que penja d'un eix central i que rota dins d'una carcasa cilíndrica", "cs": "Otočné dveře, které visí na centrálním hřídeli a otáčejí se uvnitř válcového krytu" @@ -333,7 +339,7 @@ "en": "A sliding door where the door slides sidewards, typically parallel with a wall", "nl": "Een schuifdeur or roldeur die bij het openen en sluiten zijwaarts beweegt", "de": "Der Eingang hat eine Schiebetür, bei der sich die Tür zur Seite bewegt", - "es": "Una puerta corredera donde la puerta se desliza hacia un lado, generalmente paralela a una pared", + "es": "Una puerta corredera donde la puerta se desliza hacia los lados, típicamente paralela a una pared", "fr": "Une porte coulissante où la porte coulisse latéralement, généralement parallèlement à un mur", "ca": "Una porta corredissa on la porta llisca cap als costats, normalment paral·lela a una paret", "cs": "Posuvné dveře, kde se dveře posouvají do strany, obvykle rovnoběžně se stěnou" @@ -347,7 +353,8 @@ "de": "Der Eingang hat ein Rolltor, das von oben nach unten rollt, typischerweise für Garagen", "fr": "Une porte qui roule du haut, généralement vue pour les garages", "ca": "Una porta que roda des de dalt, normalment es veu per als garatges", - "cs": "Dveře, které se otáčejí nad hlavou, obvykle se vyskytují u garáží" + "cs": "Dveře, které se otáčejí nad hlavou, obvykle se vyskytují u garáží", + "es": "Una puerta que se enrolla desde arriba, que se ve típicamente en los garajes" } }, { @@ -356,7 +363,7 @@ "en": "This is an entrance without a physical door", "nl": "Er is een toegang zonder een deur", "de": "Der Eingang hat eine keine Tür", - "es": "Esta es una entrada sin una puerta física", + "es": "Esta es una entrada sin puerta física", "fr": "Ceci est une entrée sans porte physique", "ca": "Açò és una entrada sense una porta física", "cs": "Toto je vchod bez fyzických dveří" @@ -368,7 +375,7 @@ "en": "Wether or not the door is automated is asked in the next question", "nl": "Of de deur al of niet automatisch werkt, vragen we hierna ", "de": "Ob die Tür automatisiert ist oder nicht, wird in der nächsten Frage gefragt", - "es": "En la siguiente pregunta se pregunta si la puerta está automatizada o no", + "es": "Si la puerta es automática o no se pregunta en la siguiente pregunta", "fr": "Le fait que la porte soit automatisée ou non est demandé dans la question suivante", "ca": "A la pregunta següent es pregunta si la porta està automatitzada o no", "cs": "Zda jsou dveře automatizované, se ptáte v další otázce" @@ -399,7 +406,7 @@ "en": "This door is not automated", "nl": "Deze deur is niet automatisch", "de": "Diese Tür ist nicht automatisiert", - "es": "Esta puerta no está automatizada", + "es": "Esta puerta no es automática", "fr": "Cette porte n'est pas automatisée", "ca": "Aquesta porta no està automatitzada", "pl": "Te drzwi nie są automatyczne", @@ -412,7 +419,7 @@ "en": "This door will open automatically when motion is detected", "nl": "De deur gaat automatisch open wanneer er beweging wordt gedetecteerd", "de": "Diese Tür öffnet sich automatisch, wenn Bewegung erkannt wird", - "es": "Esta puerta se abre automáticamente cuando se detecta movimiento", + "es": "Esta puerta se abrirá automáticamente cuando se detecte movimiento", "fr": "Cette porte s'ouvrira automatiquement lorsqu'un mouvement sera détecté", "pl": "Te drzwi automatycznie się otwierają, kiedy zostanie wykryty ruch", "ca": "Aquesta porta s'obrirà automàticament quan es detecti moviment", @@ -425,7 +432,7 @@ "en": "This door will open automatically when a sensor in the floor is triggered", "nl": "De deur gaat automatisch open wanneer een sensor in de vloer wordt geactiveerd", "de": "Diese Tür öffnet sich automatisch, wenn ein Sensor im Boden ausgelöst wird", - "es": "Esta puerta se abre automáticamente cuando se activa un sensor en el suelo", + "es": "Esta puerta se abrirá automáticamente cuando se active un sensor en el suelo", "fr": "Cette porte s'ouvrira automatiquement lorsqu'un capteur au sol est déclenché", "ca": "Aquesta porta s'obrirà automàticament quan s'active un sensor al terra", "cs": "Tyto dveře se automaticky otevřou, když se spustí senzor v podlaze" @@ -437,7 +444,7 @@ "en": "This door will open automatically when a button is pressed", "nl": "De deur gaat open wanneer een knop wordt ingedrukt", "de": "Diese Tür öffnet sich automatisch, wenn ein Taster betätigt wird", - "es": "Esta puerta se abre automáticamente cuando se pulsa un botón", + "es": "Esta puerta se abrirá automáticamente cuando se presione un botón", "fr": "Cette porte s'ouvrira automatiquement lorsqu'un bouton est pressé", "ca": "Aquesta porta s'obrirà automàticament quan es prem un botó", "cs": "Tyto dveře se automaticky otevřou po stisknutí tlačítka" @@ -449,7 +456,7 @@ "en": "This door revolves automatically all the time, but has a button to slow it down, e.g. for wheelchair users", "nl": "De deur draait continue automatisch, maar heeft een knop om te vertragen, bijvoorbeeld voor rolstoelgebruikers", "de": "Diese Tür dreht sich durchgehend automatisch, hat aber einenKnopf, um die Drehgeschwindigkeit zu reduzieren, z.B. für Rollstuhlnutzer", - "es": "Esta puerta gira automáticamente todo el rato, pero tiene un botón para ralentizarla, por ejemplo, para usuarios de sillas de ruedas", + "es": "Esta puerta gira automáticamente todo el tiempo, pero tiene un botón para reducir la velocidad, por ejemplo, para usuarios de sillas de ruedas", "fr": "Cette porte tourne automatiquement tout le temps, mais dispose d'un bouton pour la ralentir, par ex. pour les utilisateurs de fauteuils roulants", "ca": "Aquesta porta gira automàticament tot el temps, però té un botó per a frenar-la, p. e. per a usuaris de cadira de rodes", "cs": "Tyto dveře se neustále otáčí automaticky, ale mají tlačítko pro jejich zpomalení, např. pro vozíčkáře" @@ -462,7 +469,7 @@ "en": "This door revolves automatically all the time", "nl": "De deur draait continue automatisch", "de": "Diese Tür dreht sich durchgehend automatisch", - "es": "Esta puerta gira automáticamente todo el rato", + "es": "Esta puerta gira automáticamente todo el tiempo", "fr": "Cette porte tourne automatiquement tout le temps", "ca": "Aquesta porta gira automàticament tot el temps", "cs": "Tyto dveře se neustále automaticky otáčejí" @@ -475,7 +482,7 @@ "en": "This door will be opened by staff when requested by pressing a button", "nl": "De deur wordt geopend door personeel als je dat vraagt door op een knop te duwen", "de": "Diese Tür wird von Mitarbeitern geöffnet auf Anfrage per Rufknopf", - "es": "Esta puerta la abre el personal cuando se pide pulsando un botón", + "es": "Esta puerta será abierta por el personal cuando lo solicite pulsando un botón", "fr": "Cette porte sera ouverte par le personnel à la demande en appuyant sur un bouton", "ca": "Aquesta porta l'obri el personal quan es sol·licita polsant un botó", "cs": "Tyto dveře otevře personál na požádání stisknutím tlačítka" @@ -487,7 +494,7 @@ "en": "This door will be opened by staff when requested", "nl": "De deur wordt geopend door personeel wanneer je het vraagt", "de": "Diese Tür wird von Mitarbeitern geöffnet auf Anfrage", - "es": "Esta puerta la abrirá el personal cuando se pida", + "es": "Esta puerta será abierta por el personal cuando lo solicite", "fr": "Cette porte sera ouverte par le personnel sur demande", "ca": "Aquesta porta l'obrirà el personal quan es sol·liciti", "cs": "Tyto dveře otevře personál na požádání" @@ -501,7 +508,7 @@ "en": "This door has a width of {canonical(width)}", "nl": "Deze deur heeft een breedte van {canonical(width)}", "de": "Diese Tür hat eine Durchgangsbreite von {canonical(width)}", - "es": "Esta puerta tiene una ancho de {canonical(width)}", + "es": "Esta puerta tiene un ancho de {canonical(width)}", "fr": "Cette porte a une largeur de {canonical(width)} mètre", "ca": "Aquesta porta té una amplària de {canonical(width)}", "cs": "Tyto dveře mají šířku {canonical(width)}" @@ -510,7 +517,7 @@ "en": "What is the width of this door/entrance?", "nl": "Wat is de breedte van deze deur/toegang?", "de": "Wie breit ist diese Tür bzw. dieser Eingang?", - "es": "¿Cual es el ancho de esta puerta/entrada?", + "es": "¿Cuál es el ancho de esta puerta/entrada?", "fr": "Quelle est la largeur de cette porte/entrée ?", "ca": "Quina és l'amplada d'aquesta porta/entrada?", "cs": "Jaká je šířka těchto dveří/vchodu?" @@ -528,7 +535,8 @@ "de": "Wie hoch ist die Türschwelle?", "nl": "Hoe hoog is de drempel?", "ca": "Quina és l'altura d'aquest voral?", - "cs": "Jaká je výška tohoto obrubníku/prahu?" + "cs": "Jaká je výška tohoto obrubníku/prahu?", + "es": "¿Cuál es la altura de este bordillo?" }, "render": { "en": "The kerb height of this door is {kerb:height}", @@ -536,7 +544,8 @@ "de": "Die Höhe der Türschwelle ist {kerb:height}", "nl": "De drempel bij deze deur is {kerb:height}", "ca": "L'alçada del voral d'aquesta porta és {kerb:height}", - "cs": "Výška obrubníku/prahu těchto dveří je {kerb:height}" + "cs": "Výška obrubníku/prahu těchto dveří je {kerb:height}", + "es": "La altura del bordillo de esta puerta es {kerb:height}" }, "freeform": { "key": "kerb:height", @@ -547,7 +556,8 @@ "nl": "Hoogte van de drempel", "pl": "Wysokość progu w drzwiach", "ca": "Alçada de la vorada de la porta", - "cs": "Výška obrubníku/prahu dveří" + "cs": "Výška obrubníku/prahu dveří", + "es": "Altura del bordillo de la puerta" }, "type": "pnat" }, @@ -561,7 +571,8 @@ "de": "Diese Tür hat keine Türschwelle", "pl": "Te drzwi nie mają progu", "ca": "Aquesta porta no té voral", - "cs": "Tyto dveře nemají obrubník/práh" + "cs": "Tyto dveře nemají obrubník/práh", + "es": "Esta puerta no tiene bordillo" } } ] diff --git a/assets/layers/etymology/etymology.json b/assets/layers/etymology/etymology.json index cb249989c..c17d7bd7b 100644 --- a/assets/layers/etymology/etymology.json +++ b/assets/layers/etymology/etymology.json @@ -7,7 +7,9 @@ "fr": "A une étymologie", "ca": "Té etimologia", "cs": "Má etymologii", - "da": "Har etymologi" + "da": "Har etymologi", + "uk": "Має етимологію", + "es": "Tiene etimología" }, "description": { "en": "All objects which have an etymology known", @@ -17,7 +19,8 @@ "fr": "Tous les objets dont l’étymologie est connue", "ca": "Tots els objectes que tenen una etimologia coneguda", "cs": "Všechny objekty, které mají známou etymologii", - "da": "Alle objekter med kendt etymologi" + "da": "Alle objekter med kendt etymologi", + "es": "Todos los objetos que tienen una etimología conocida" }, "source": { "osmTags": { @@ -116,7 +119,8 @@ "de": "Was ist das Wikidata-Element, nach dem dieses Objekt benannt ist?", "fr": "Quel est l'Item Wikidata auquel l'objet fait référence ?", "cs": "Po jaké položce Wikidat je tento objekt pojmenován?", - "da": "Hvilket Wikidata-emne er dette objekt opkaldt efter?" + "da": "Hvilket Wikidata-emne er dette objekt opkaldt efter?", + "es": "¿Cuál es el elemento de Wikidata en honor a el cual se nombra este objeto?" }, "freeform": { "key": "name:etymology:wikidata", @@ -253,7 +257,8 @@ "fr": "

Article Wikipedia de la référence au nom

{wikipedia(name:etymology:wikidata):max-height:20rem}", "ca": "

Article de la Viquipèdia del nom donant

{wikipedia(name:etymology:wikidata):max-height:20rem}", "cs": "

Článek autora jména na Wikipedii

{wikipedia(name:etymology:wikidata):max-height:20rem}", - "da": "

Wikipedia-artikel om navnets ophav

{wikipedia(name:etymology:wikidata):max-height:20rem}" + "da": "

Wikipedia-artikel om navnets ophav

{wikipedia(name:etymology:wikidata):max-height:20rem}", + "es": "

Artículo de Wikipedia del que recibe el nombre

{wikipedia(name:etymology:wikidata):max-height:20rem}" } }, { @@ -263,7 +268,8 @@ "en": "Search on inventaris onroerend erfgoed", "de": "Suche auf inventaris onroerend erfgoed", "fr": "Chercher sur inventaris onroerend erfgoed", - "cs": "Hledání na inventaris onroerend erfgoed" + "cs": "Hledání na inventaris onroerend erfgoed", + "es": "Buscar en Inventaris Onroerend Erfgoed" }, "condition": "_country=be" }, @@ -276,7 +282,8 @@ "fr": "En référence à quoi cet objet est-il nommé ?", "pl": "Po czym nazwany jest ten obiekt?", "cs": "Po čem je tento objekt pojmenován?", - "da": "Hvad er dette objekt opkaldt efter?" + "da": "Hvad er dette objekt opkaldt efter?", + "es": "¿A qué se debe el nombre de este objeto?" }, "render": { "en": "Named after {name:etymology}", @@ -285,7 +292,8 @@ "da": "Opkaldt efter {name:etymology}", "fr": "Nommé en référence à {name:etymology}", "pl": "Nazwane po {name:etymology}", - "cs": "Pojmenováno po {name:etymology}" + "cs": "Pojmenováno po {name:etymology}", + "es": "Nombrado en honor a {name:etymology}" }, "freeform": { "key": "name:etymology", @@ -301,7 +309,8 @@ "da": "Oprindelsen af dette navn er ukendt i al litteratur", "fr": "L'origine de ce nom est inconnu", "ca": "L'origen d'aquest nom és desconegut en tota la literatura", - "cs": "Původ tohoto jména je neznámý v celé literatuře" + "cs": "Původ tohoto jména je neznámý v celé literatuře", + "es": "El origen de este nombre es desconocido en toda la literatura" } } ], @@ -317,7 +326,8 @@ "de": "Das könnte auf einem Straßenschild stehen", "fr": "Cela peut être indiqué sur le panneau de la rue", "ca": "Això podria estar escrit al cartell del nom del carrer", - "cs": "To může být napsáno na ceduli s názvem ulice" + "cs": "To může být napsáno na ceduli s názvem ulice", + "es": "Esto podría estar escrito en el letrero del nombre de la calle" } }, "questions", @@ -330,7 +340,8 @@ "fr": "{image_carousel(image:streetsign)}
{image_upload(image:streetsign, Ajouter une photo de la plaque de rue)}", "ca": "{image_carousel(image:streetsign)}
{image_upload(image:streetsign, Afegeix una imatge de la placa amb el nom del carrer)}", "cs": "{image_carousel(image:streetsign)}
{image_upload(image:streetsign, Add image of a street name sign)}", - "da": "{image_carousel(image:streetsign)}
{image_upload(image:streetsign, Tilføj foto af gadenavneskilt)}" + "da": "{image_carousel(image:streetsign)}
{image_upload(image:streetsign, Tilføj foto af gadenavneskilt)}", + "es": "{image_carousel(image:streetsign)}
{image_upload(image:streetsign, Agregar imagen de un letrero de nombre de calle)}" } }, { @@ -348,7 +359,8 @@ "fr": "{multi_apply(_same_name_ids, name:etymology:wikidata;name:etymology, Appliquer automatiquement aux segments avec le même nom, true)}", "ca": "{multi_apply(_same_name_ids, name:etymology:wikidata;name:etimology, aplicació automàtica de dades a tots els segments amb el mateix nom, vertader)}", "cs": "{multi_apply(_same_name_ids, name:etymology:wikidata;name:etymology, Auto-applying data on all segments with the same name, true)}", - "da": "{multi_apply(_same_name_ids, name:etymology:wikidata;name:etymology, Tilføjer automatisk til alle segmenter med samme navn, true)}" + "da": "{multi_apply(_same_name_ids, name:etymology:wikidata;name:etymology, Tilføjer automatisk til alle segmenter med samme navn, true)}", + "es": "{multi_apply(_same_name_ids, name:etymology:wikidata;name:etymology, Aplicando datos automáticamente en todos los segmentos con el mismo nombre, true)}" } }, { @@ -362,7 +374,8 @@ "pl": "Istnieje artykuł Wikipedii na temat tej ulicy:
{wikipedia():max-height:25rem}", "ca": "Existeix un article de la Viquipèdia sobre aquest carrer:
{wikipedia():max-height:25rem}", "cs": "Článek na Wikipedii o této ulici existuje:
{wikipedia():max-height:25rem}", - "da": "Der findes en Wikipedia-artikel om denne gade:
{wikipedia():max-height:25rem}" + "da": "Der findes en Wikipedia-artikel om denne gade:
{wikipedia():max-height:25rem}", + "es": "Existe un artículo de Wikipedia sobre esta calle:
{wikipedia():max-height:25rem}" }, "condition": "wikidata~*" } diff --git a/assets/layers/extinguisher/extinguisher.json b/assets/layers/extinguisher/extinguisher.json index 7bb41078c..83f1c2b94 100644 --- a/assets/layers/extinguisher/extinguisher.json +++ b/assets/layers/extinguisher/extinguisher.json @@ -25,7 +25,7 @@ "it": "Livello della mappa che mostra gli idranti antincendio.", "nl": "Kaartlaag met brandblussers.", "da": "Kortlag til visning af ildslukkere.", - "es": "Capa del mapa que muestra extintores.", + "es": "Capa del mapa para mostrar extintores.", "ca": "Capa que mostra extintors.", "pl": "Warstwa mapy pokazująca gaśnice.", "cs": "Mapová vrstva pro zobrazení hasicích přístrojů." @@ -99,7 +99,7 @@ "it": "Un estintore è un dispositivo portatile di piccole dimensioni usato per spegnere un incendio", "nl": "Een brandblusser is een klein, draagbaar apparaat om een brand te blussen", "da": "En ildslukker er en lille, bærbar beholder, der bruges til at stoppe en brand", - "es": "Un extintor es un dispositivo pequeño y portátil utilizado para parar un fuego", + "es": "Un extintor es un dispositivo pequeño y portátil que se utiliza para detener un incendio", "ca": "Un extintor és un dispositiu petit i portàtil utilitzat per a para un foc", "pl": "Gaśnica to małe, przenośne urządzenie do gaszenia ognia", "cs": "Hasicí přístroj je malé přenosné zařízení používané k zastavení požáru" @@ -118,7 +118,7 @@ "eo": "Loko: {location}", "it": "Posizione: {location}", "nl": "Locatie: {location}", - "es": "Localización: {location}", + "es": "Ubicación: {location}", "ca": "Ubicació: {location}", "pl": "Lokalizacja: {location}", "cs": "Místo: {location}" @@ -132,7 +132,7 @@ "it": "Dove è posizionato?", "nl": "Op welke locatie staat dit?", "da": "Hvor er den placeret?", - "es": "¿Dónde se encuentra?", + "es": "¿Dónde está colocado?", "ca": "On està situat?", "pl": "Gdzie się znajduje?", "cs": "Kde je umístěn?" @@ -153,7 +153,7 @@ "it": "Si trova all’interno.", "nl": "In een gebouw.", "da": "Findes indendørs.", - "es": "Se encuentra en el interior.", + "es": "Encontrado en interiores.", "ca": "Es troba a l'interior.", "pl": "Znajduje się wewnątrz budynku.", "cs": "Nalezen uvnitř." @@ -174,7 +174,7 @@ "it": "Si trova all’esterno.", "nl": "In open lucht.", "da": "Findes udendørs.", - "es": "Se encuentra en el exterior.", + "es": "Encontrado en exteriores.", "ca": "Es troba a l'aire lliure.", "pl": "Znajduje się na dworze.", "cs": "Nalezeno venku." diff --git a/assets/layers/filters/filters.json b/assets/layers/filters/filters.json index eeb9f8fbc..c2ef1a5c6 100644 --- a/assets/layers/filters/filters.json +++ b/assets/layers/filters/filters.json @@ -15,7 +15,7 @@ "nl": "Nu open", "de": "Jetzt geöffnet", "ca": "Obert ara", - "es": "Abierto", + "es": "Abierto ahora", "fr": "Ouvert maintenant", "hu": "Most nyitva van", "da": "Åbent nu", @@ -58,7 +58,7 @@ "en": "Accepts payment cards", "de": "Akzeptiert Kartenzahlung", "nl": "Accepteert betaalkaarten", - "es": "Acepta el pago por tarjeta", + "es": "Acepta tarjetas de pago", "fr": "Accepte les cartes de paiement", "pl": "Przyjmuje karty płatnicze", "ca": "Accepta el pagament amb targeta", @@ -78,7 +78,8 @@ "de": "Akzeptiert Debitkarten", "pl": "Przyjmuje karty debetowe", "ca": "Accepta targetes de dèbit", - "cs": "Přijímá debetní karty" + "cs": "Přijímá debetní karty", + "es": "Acepta tarjetas de débito" } } ] @@ -94,7 +95,8 @@ "de": "Akzeptiert Kreditkarten", "pl": "Przyjmuje karty kredytowe", "ca": "Accepta targetes de crèdit", - "cs": "Přijímá kreditní karty" + "cs": "Přijímá kreditní karty", + "es": "Acepta tarjetas de crédito" } } ] @@ -109,7 +111,8 @@ "de": "Mit und ohne Bild", "pl": "Z oraz bez zdjęć", "ca": "Amb i sense imatges", - "cs": "S obrázky i bez nich" + "cs": "S obrázky i bez nich", + "es": "Con y sin imágenes" } }, { @@ -119,7 +122,8 @@ "nl": "Heeft minstens één afbeelding", "pl": "Ma co najmniej jedno zdjęcie", "ca": "Té com a mínim una imatge", - "cs": "Má alespoň jeden obrázek" + "cs": "Má alespoň jeden obrázek", + "es": "Tiene al menos una imagen" }, "osmTags": { "or": [ @@ -139,7 +143,8 @@ "nl": "Heeft waarschijnlijk geen afbeelding", "pl": "Prawdopodobnie nie ma zdjęcia", "ca": "Probablement no té una imatge", - "cs": "Pravděpodobně nemá obrázek" + "cs": "Pravděpodobně nemá obrázek", + "es": "Probablemente no tiene imagen" }, "osmTags": { "and": [ @@ -165,7 +170,8 @@ "nl": "Met voelbare bestrating", "pl": "Z wypustkami dla niewidomych", "ca": "Amb superfícies podotàctils", - "cs": "S hmatovou dlažbou" + "cs": "S hmatovou dlažbou", + "es": "Con pavimento táctil" }, "osmTags": "tactile_paving=yes" } @@ -183,7 +189,8 @@ "nl": "Met of zonder voelbare bestrating", "pl": "Z lub bez wypustek dla niewidomych", "ca": "Amb o sense superfícies podotàctils", - "cs": "S nebo bez hmatové dlažby" + "cs": "S nebo bez hmatové dlažby", + "es": "Con o sin pavimento táctil" } }, { @@ -194,7 +201,8 @@ "nl": "Met voelbare bestrating", "pl": "Z wypustkami dla niewidomych", "ca": "Amb paviments superfícies podotàctils", - "cs": "S hmatovou dlažbou" + "cs": "S hmatovou dlažbou", + "es": "Con pavimento táctil" }, "osmTags": "tactile_paving=yes" }, @@ -206,7 +214,8 @@ "nl": "Zonder voelbare bestrating", "pl": "Bez wypustek dla niewidomych", "ca": "Sense superfície podotàctil", - "cs": "Bez hmatové dlažby" + "cs": "Bez hmatové dlažby", + "es": "Sin pavimento táctil" }, "osmTags": "tactile_paving=no" }, @@ -219,7 +228,8 @@ "nl": "Geen informatie over voelbare bestrating", "pl": "Brak informacji o wypustkach dla niewidomych", "ca": "No hi ha informació sobre superfícies podotàctils", - "cs": "Žádné informace o hmatové dlažbě" + "cs": "Žádné informace o hmatové dlažbě", + "es": "Sin información sobre pavimento táctil" } } ] @@ -239,7 +249,8 @@ "de": "Bio-Produkte im Angebot", "nl": "Heeft biologische opties", "ca": "Té opcions orgàniques", - "cs": "Má bio možnosti" + "cs": "Má bio možnosti", + "es": "Tiene opciones orgánicas" } } ] @@ -255,7 +266,8 @@ "fr": "Utilisation gratuite", "da": "Gratis at bruge", "ca": "Ús gratuït", - "cs": "Použití zdarma" + "cs": "Použití zdarma", + "es": "De uso gratuito" }, "osmTags": { "or": [ @@ -275,7 +287,8 @@ "en": "No preference towards dogs", "nl": "Geen voorkeur voor honden", "de": "Keine Bevorzugung von Hunden", - "cs": "Bez preference psů" + "cs": "Bez preference psů", + "es": "Sin preferencia por los perros" } }, { @@ -283,7 +296,8 @@ "en": "Dogs allowed", "nl": "Honden toegelaten", "de": "Hunde erlaubt", - "cs": "Psi povoleny" + "cs": "Psi povoleny", + "es": "Se permiten perros" }, "emoji": "🐕", "osmTags": { @@ -300,7 +314,8 @@ "nl": "Geen honden toegelaten", "de": "Keine Hunde erlaubt", "cs": "Psi nejsou povoleni", - "ca": "No s'admeten gossos" + "ca": "No s'admeten gossos", + "es": "No se permiten perros" }, "icon": "./assets/layers/questions/no_dogs.svg", "osmTags": "dog=no" @@ -314,7 +329,8 @@ "question": { "en": "Offers internet", "de": "Internetzugang vorhanden", - "cs": "Nabízí internet" + "cs": "Nabízí internet", + "es": "Ofrece internet" }, "icon": "wifi", "osmTags": { @@ -334,7 +350,8 @@ "question": { "en": "Offers electricity", "de": "Stromanschluss vorhanden", - "cs": "Nabízí elektřinu" + "cs": "Nabízí elektřinu", + "es": "Ofrece electricidad" }, "osmTags": "service:electricity=yes" } @@ -347,7 +364,8 @@ "question": { "en": "Has a sugar-free offering", "cs": "Má nabídku bez cukru", - "de": "Hat zuckerfreie Angebote" + "de": "Hat zuckerfreie Angebote", + "es": "Tiene una oferta sin azúcar" }, "osmTags": { "or": [ @@ -366,7 +384,8 @@ "question": { "en": "Has a gluten free offering", "cs": "Má bezlepkovou nabídku", - "de": "Hat glutenfreie Angebote" + "de": "Hat glutenfreie Angebote", + "es": "Tiene una oferta sin gluten" }, "icon": "./assets/layers/questions/glutenfree.svg", "osmTags": { @@ -386,7 +405,8 @@ "question": { "en": "Has a lactose free offering", "cs": "Má nabídku bez laktózy", - "de": "Hat laktosefreie Angebote" + "de": "Hat laktosefreie Angebote", + "es": "Tiene una oferta sin lactosa" }, "icon": "./assets/layers/questions/lactose_free.svg", "osmTags": { diff --git a/assets/layers/fire_station/fire_station.json b/assets/layers/fire_station/fire_station.json index 324538279..57ba4ec18 100644 --- a/assets/layers/fire_station/fire_station.json +++ b/assets/layers/fire_station/fire_station.json @@ -9,7 +9,7 @@ "fr": "Couche des stations de pompiers", "de": "Feuerwachen", "nl": "Kaart van de brandweerstations", - "es": "Mapa de parques de bomberos", + "es": "Mapa de estaciones de bomberos", "ca": "Mapa de parcs de bombers", "cs": "Mapa požárních stanic" }, @@ -21,7 +21,7 @@ "fr": "Couche des stations de pompiers.", "de": "Kartenebene zur Darstellung von Feuerwachen.", "nl": "Kaartlaag die de brandweerstations toont.", - "es": "Capa del mapa que muestra parques de bomberos.", + "es": "Capa del mapa para mostrar estaciones de bomberos.", "ca": "Capa del mapa que mostra els parcs de bombers.", "cs": "Vrstva mapy zobrazující požární stanice." }, @@ -43,7 +43,7 @@ "fr": "Station de pompiers", "de": "Feuerwache", "nl": "Brandweerstation", - "es": "Parque de bomberos", + "es": "Estación de Bomberos", "ca": "Parc de bombers", "cs": "Hasičská stanice" } @@ -83,7 +83,7 @@ "it": "una caserma dei vigili del fuoco", "nb_NO": "en brannstasjon", "nl": "een brandweerstation", - "es": "un parque de bomberos", + "es": "una estación de bomberos", "ca": "un parc de bombers", "cs": "požární stanice" }, @@ -94,9 +94,10 @@ "de": "Eine Feuerwache ist ein Ort, an dem Feuerwehrfahrzeuge und Feuerwehrleute untergebracht sind, wenn sie nicht im Einsatz sind.", "it": "Una caserma dei pompieri è un luogo dove si trovano i mezzi antincendio e i pompieri tra una missione e l’altra.", "nl": "Een brandweerstation is een plaats waar brandweerwagens en brandweerlieden gebaseerd zijn.", - "es": "Un parque de bomberos es donde los bomberos y los camiones de incendios se encuentran cuando no están en uso.", + "es": "Una estación de bomberos es un lugar donde se ubican los camiones de bomberos y los bomberos cuando no están en operación.", "ca": "Un parc de bombers és on els bombers i els camions es troben quan no estan en ús.", - "cs": "Hasičská zbrojnice je místo, kde se nacházejí hasičská vozidla a hasiči." + "cs": "Hasičská zbrojnice je místo, kde se nacházejí hasičská vozidla a hasiči.", + "uk": "Пожежна станція - це місце, де знаходяться пожежні машини та пожежники, коли вони не працюють." } } ], @@ -114,7 +115,7 @@ "fr": "Quel est le nom de la station ?", "de": "Wie ist der Name der Feuerwache?", "nl": "Wat is de naam van dit brandweerstation?", - "es": "¿Cual es el nombre de este parque de bomberos?", + "es": "¿Cuál es el nombre de esta estación de bomberos?", "ca": "Quin és el nom d'aquest parc de bombers?", "cs": "Jak se jmenuje tato požární stanice?" }, @@ -127,7 +128,7 @@ "nb_NO": "Denne stasjonen heter {name}.", "nl": "Dit station heet {name}.", "de": "Der Name der Feuerwache ist {name}.", - "es": "Este parque de bomberos se llama {name}.", + "es": "Esta estación se llama {name}.", "ca": "Aquest parc de bombers es diu {name}.", "cs": "Tato stanice se jmenuje {name}." } @@ -146,7 +147,9 @@ "nl": " Aan welke straat ligt dit station?", "de": " In welcher Straße ist die Feuerwache?", "ca": " Quin és el nom del carrer on es troba aquesta estació?", - "cs": " Jak se jmenuje ulice, kde se stanice nachází?" + "cs": " Jak se jmenuje ulice, kde se stanice nachází?", + "uk": " Як називається вулиця, на якій розташована станція?", + "es": " ¿Cuál es el nombre de la calle donde se encuentra la estación?" }, "render": { "en": "This station is along a highway called {addr:street}.", @@ -157,7 +160,8 @@ "nl": "Dit station ligt aan {addr:street}.", "de": "Die Feuerwache liegt an der Straße namens {addr:street}.", "ca": "Aquesta estació es troba al llarg d'una carretera anomenada {addr:street}.", - "cs": "Tato stanice je podél dálnice s názvem {addr:street}." + "cs": "Tato stanice je podél dálnice s názvem {addr:street}.", + "es": "Esta estación se encuentra en una carretera llamada {addr:street}." } }, { @@ -171,7 +175,9 @@ "nl": "Waar is dit station gelegen? (v.b. naam van de buurt, dorp of stad)", "de": "Wo befindet sich die Station? (z. B. Name des Viertels, des Dorfes oder der Stadt)", "ca": "On es troba aquesta estació? (p.e. nom del barri, poble o ciutat)", - "cs": "Kde se stanice nachází? (např. název čtvrti, obce nebo města)" + "cs": "Kde se stanice nachází? (např. název čtvrti, obce nebo města)", + "uk": "Де розташована станція? (наприклад, назва району, села чи міста)", + "es": "¿Dónde se encuentra la estación? (ej. nombre del barrio, aldea o ciudad)" }, "freeform": { "key": "addr:place" @@ -185,7 +191,8 @@ "nl": "Dit station ligt in {addr:place}.", "de": "Diese Station befindet sich innerhalb von {addr:place}.", "ca": "Aquesta estació es troba dins de {addr:place}.", - "cs": "Tato stanice se nachází v {addr:place}." + "cs": "Tato stanice se nachází v {addr:place}.", + "es": "Esta estación se encuentra en {addr:place}." } }, { @@ -197,7 +204,7 @@ "it": "Quale agenzia gestisce questa stazione?", "nl": "Welk agentschap beheert dit station?", "de": "Welche Organisation betreibt diese Station?", - "es": "¿Que agencia opera este parque?", + "es": "¿Qué agencia opera esta estación?", "ca": "Quina agència opera aquesta estació?", "cs": "Jaká agentura provozuje tuto stanici?" }, @@ -208,7 +215,7 @@ "it": "Questa stazione è gestita da {operator}.", "nl": "Dit station wordt beheerd door {operator}.", "de": "Diese Station wird betrieben von {operator}.", - "es": "Este parque lo opera {operator}.", + "es": "Esta estación está operada por {operator}.", "ca": "{operator} opera aquest parc.", "cs": "Tuto stanici provozuje společnost {operator}." }, @@ -231,7 +238,8 @@ "it": "Servizio antincendio governativo", "nl": "Brandveiligheidsbureau", "ca": "Bureau of Fire Protection (Filipines)", - "cs": "Úřad požární ochrany" + "cs": "Úřad požární ochrany", + "es": "Oficina de Protección contra Incendios" } } ] @@ -246,7 +254,8 @@ "nl": "Wat voor soort beheerder beheert dit station?", "de": "Wie kann der Betreiber der Feuerwache eingestuft werden?", "ca": "Com es classifica l'operador de l'estació?", - "cs": "Jak je klasifikován provozovatel stanice?" + "cs": "Jak je klasifikován provozovatel stanice?", + "es": "¿Cómo se clasifica el operador de la estación?" }, "render": { "en": "The operator is a(n) {operator:type} entity.", @@ -256,7 +265,8 @@ "nl": "De beheerder is een organisatie van type {operator:type} .", "de": "Der Betreiber ist {operator:type}.", "ca": "Aquest operador és una entitat {operator:type}.", - "cs": "Provozovatel je {operator:type} subjekt." + "cs": "Provozovatel je {operator:type} subjekt.", + "es": "El operador es una entidad {operator:type}." }, "freeform": { "key": "operator:type" @@ -276,7 +286,7 @@ "nb_NO": "Stasjonen drives av myndighetene.", "nl": "Dit station wordt beheerd door de overheid.", "de": "Die Station wird von einer Behörde betrieben.", - "es": "Este parque de bomberos lo opera el gobierno.", + "es": "La estación está operada por el gobierno.", "ca": "Aquest parc l'opera el govern.", "cs": "Provozovatelem stanice je vláda." } @@ -295,7 +305,8 @@ "nl": "Dit station wordt beheerd door een informele of gemeenschapsorganisatie.", "de": "Die Feuerwache wird von einer gemeinnützigen Organisation betrieben.", "ca": "Aquesta estació l'opera una comunitat o organització informal.", - "cs": "Provozovatelem stanice je komunitní nebo neformální organizace." + "cs": "Provozovatelem stanice je komunitní nebo neformální organizace.", + "es": "La estación está operada por una organización comunitaria o informal." } }, { @@ -312,7 +323,8 @@ "nl": "Dit station wordt beheerd door een formele groep vrijwilligers.", "de": "Die Feuerwache wird von einer Freiwilligenorganisation betrieben.", "ca": "Aquest operació l'opera un grup formal de voluntaris.", - "cs": "Stanice je provozována formální skupinou dobrovolníků." + "cs": "Stanice je provozována formální skupinou dobrovolníků.", + "es": "La estación está operada por un grupo formal de voluntarios." } }, { @@ -329,7 +341,8 @@ "nl": "Dit station wordt door private organisatie beheerd.", "de": "Die Feuerwache wird von einer privaten Organisation betrieben.", "ca": "Aquesta estació l'opera una entitat privada.", - "cs": "Stanice je provozována soukromě." + "cs": "Stanice je provozována soukromě.", + "es": "La estación está operada de forma privada." } } ] diff --git a/assets/layers/firepit/firepit.json b/assets/layers/firepit/firepit.json index eebc2d0ac..439f2fbcb 100644 --- a/assets/layers/firepit/firepit.json +++ b/assets/layers/firepit/firepit.json @@ -2,11 +2,13 @@ "id": "firepit", "name": { "en": "Firepit", - "de": "Feuerstelle" + "de": "Feuerstelle", + "es": "Hoguera" }, "description": { "en": "An outdoor place to make a fire, typically open to the public.", - "de": "Eine Stelle im Freien zum Feuermachen, typischerweise öffentlich zugänglich." + "de": "Eine Stelle im Freien zum Feuermachen, typischerweise öffentlich zugänglich.", + "es": "Un lugar al aire libre para hacer fuego, normalmente abierto al público." }, "source": { "osmTags": "leisure=firepit" @@ -15,7 +17,8 @@ "title": { "render": { "en": "Firepit", - "de": "Feuerstelle" + "de": "Feuerstelle", + "es": "Hoguera" } }, "titleIcons": [ @@ -44,11 +47,13 @@ { "title": { "en": "Firepit", - "de": "Feuerstelle" + "de": "Feuerstelle", + "es": "Hoguera" }, "description": { "de": "Eine Stelle im Freien zum Feuermachen, typischerweise öffentlich zugänglich.", - "en": "An outdoor place to make a fire, typically open to the public." + "en": "An outdoor place to make a fire, typically open to the public.", + "es": "Un lugar al aire libre para hacer fuego, normalmente abierto al público." }, "tags": [ "leisure=firepit" @@ -61,49 +66,56 @@ "id": "access", "question": { "en": "What is the permitted access?", - "de": "Was ist der erlaubte Zugang?" + "de": "Was ist der erlaubte Zugang?", + "es": "¿Cuál es el acceso permitido?" }, "mappings": [ { "if": "access=yes", "then": { "de": "Öffentlich", - "en": "Public" + "en": "Public", + "es": "Público" } }, { "if": "access=no", "then": { "de": "Kein Zugang", - "en": "No access" + "en": "No access", + "es": "Sin acceso" } }, { "if": "access=private", "then": { "de": "Privat", - "en": "Private" + "en": "Private", + "es": "Privado" } }, { "if": "access=permissive", "then": { "de": "Zugang bis auf Widerruf", - "en": "Access until revoked" + "en": "Access until revoked", + "es": "Acceso hasta que se revoque" } }, { "if": "access=customers", "then": { "de": "Zugang nur für Kunden", - "en": "Access only for customers" + "en": "Access only for customers", + "es": "Acceso solo para clientes" } }, { "if": "access=permit", "then": { "de": "Zugang nur für Berechtigte", - "en": "Access only for authorized" + "en": "Access only for authorized", + "es": "Acceso solo para autorizados" } } ] @@ -114,7 +126,8 @@ "question": { "en": "Is the firepit available all around the year?", "nl": "Is deze kampvuurplaats heel het jaar door beschikbaar?", - "de": "Ist diese Feuerstelle rund um das Jahr nutzbar?" + "de": "Ist diese Feuerstelle rund um das Jahr nutzbar?", + "es": "¿Está la hoguera disponible todo el año?" } } } diff --git a/assets/layers/fitness_centre/fitness_centre.json b/assets/layers/fitness_centre/fitness_centre.json index 8b7232ef9..0b8aadec8 100644 --- a/assets/layers/fitness_centre/fitness_centre.json +++ b/assets/layers/fitness_centre/fitness_centre.json @@ -5,14 +5,16 @@ "de": "Fitnessstudios", "ca": "Centre de fitnes o gimnàs", "nl": "Fitnesscentra", - "cs": "Fitness centra" + "cs": "Fitness centra", + "es": "Centros de Fitness" }, "description": { "en": "Layer showing fitness centres", "de": "Ebene mit Fitnessstudios", "ca": "Capa que mostra centres de fitnes o gimnasos", "nl": "Laag die fitnesscentra toon", - "cs": "Vrstva zobrazující fitness centra" + "cs": "Vrstva zobrazující fitness centra", + "es": "Capa que muestra centros de fitness" }, "source": { "osmTags": "leisure=fitness_centre" @@ -24,7 +26,8 @@ "de": "Fitnessstudio", "nl": "Fitness-centrum", "ca": "Centre de fitness", - "cs": "Fitness centrum" + "cs": "Fitness centrum", + "es": "Centro de Fitness" }, "mappings": [ { @@ -70,7 +73,8 @@ "de": "ein Fitnessstudio", "nl": "een fitness-centrum", "ca": "un centre de fitness", - "cs": "fitness centra" + "cs": "fitness centra", + "es": "un centro de fitness" }, "icon": "./assets/layers/fitness_centre/gym.svg" } @@ -83,7 +87,8 @@ "de": "Wie lautet der Name des Fitnessstudios?", "nl": "Wat is de naam van dit fitness-centrum?", "ca": "Quin és el nom d'aquest centre de fitness?", - "cs": "Jak se jmenuje toto fitness centrum?" + "cs": "Jak se jmenuje toto fitness centrum?", + "es": "¿Cuál es el nombre de este centro de fitness?" }, "freeform": { "key": "name", @@ -92,7 +97,8 @@ "de": "Name des Fitnessstudios", "nl": "Naam van dit fitness-centrum", "ca": "Nom del centre de fitness", - "cs": "Název fitness centra" + "cs": "Název fitness centra", + "es": "Nombre del centro de fitness" }, "type": "string" }, @@ -104,7 +110,8 @@ "de": "Das Fitnessstudio hat keinen Namen", "nl": "Dit fitness-centrum heeft geen naam", "ca": "Aquest centre de fitness no té nom", - "cs": "Tento fitness centrum nemá žádné jméno" + "cs": "Tento fitness centrum nemá žádné jméno", + "es": "Este centro de fitness no tiene nombre" } } ], @@ -113,7 +120,8 @@ "de": "Das Fitnessstudio heißt {name}", "nl": "Dit fitness-centrum heet {name}", "ca": "Aquest gimnàs / centre de fitness s'anomena {name}", - "cs": "Toto fitness centrum se jmenuje {name}" + "cs": "Toto fitness centrum se jmenuje {name}", + "es": "Este centro de fitness se llama {name}" } }, "images", diff --git a/assets/layers/fitness_station/fitness_station.json b/assets/layers/fitness_station/fitness_station.json index f13d6d47e..1da6760d5 100644 --- a/assets/layers/fitness_station/fitness_station.json +++ b/assets/layers/fitness_station/fitness_station.json @@ -5,14 +5,16 @@ "de": "Fitness-Stationen", "nl": "Fitness-toestel", "ca": "Estacions de fitness", - "cs": "Fitness stanice" + "cs": "Fitness stanice", + "es": "Estaciones de Fitness" }, "description": { "en": "Find a fitness station near you, and add missing ones.", "de": "Finden Sie eine Fitness-Station in der Nähe und fügen Sie fehlende hinzu.", "nl": "Vind een fitness-centrum in je buurt en voeg ontbrekende fitness-centra toe", "ca": "Troba una estació de fitness a prop teu i afegeix-ne les que falten.", - "cs": "Najděte fitness stanici ve svém okolí a přidejte chybějící." + "cs": "Najděte fitness stanici ve svém okolí a přidejte chybějící.", + "es": "Encuentra una estación de fitness cerca de ti y agrega las que faltan." }, "source": { "osmTags": "leisure=fitness_station" @@ -23,7 +25,8 @@ "en": "Fitness Station", "de": "Fitness-Station", "ca": "Estació de fitness", - "cs": "Fitness stanice" + "cs": "Fitness stanice", + "es": "Estación de Fitness" }, "mappings": [ { @@ -32,7 +35,8 @@ "en": "Fitness Station {name}", "de": "Fitness-Station {name}", "ca": "Estació de fitness {name}", - "cs": "Fitness stanice {name}" + "cs": "Fitness stanice {name}", + "es": "Estación de Fitness {name}" } } ] @@ -79,7 +83,8 @@ "de": "eine Fitness-Station", "nl": "een fitness-toestel", "ca": "una estació de fitness", - "cs": "fitness stanice" + "cs": "fitness stanice", + "es": "una estación de fitness" }, "icon": "./assets/layers/fitness_station/fitness.svg" } @@ -93,7 +98,8 @@ "de": "Wie lautet der Name der Fitness-Station?", "nl": "Wat is de naam van dit fitness-toestel?", "ca": "Quin és el nom d'aquesta estació de fitness?", - "cs": "Jak se tato fitness stanice jmenuje?" + "cs": "Jak se tato fitness stanice jmenuje?", + "es": "¿Cuál es el nombre de esta estación de fitness?" }, "freeform": { "key": "name", @@ -102,7 +108,8 @@ "de": "Name der Fitness-Station", "nl": "Naam van het fitness-toestell", "ca": "Nom de l'estació de fitness", - "cs": "Název fitness stanice" + "cs": "Název fitness stanice", + "es": "Nombre de la estación de fitness" }, "type": "string" }, @@ -114,7 +121,8 @@ "de": "Die Fitness-Station hat keinen Namen", "nl": "Dit fitness-toestel heeft geen naam", "ca": "L'estació de fitness no té nom", - "cs": "Tato fitness stanice nemá jméno" + "cs": "Tato fitness stanice nemá jméno", + "es": "Esta estación de fitness no tiene nombre" } } ], @@ -123,7 +131,8 @@ "de": "Die Fitness-Station heißt {name}", "nl": "Dit fitness-toestel heet {name}", "ca": "L'estació de fitness es diu {name}", - "cs": "Tato fitness stanice se jmenuje {name}" + "cs": "Tato fitness stanice se jmenuje {name}", + "es": "Esta estación de fitness se llama {name}" } }, { @@ -131,7 +140,8 @@ "question": { "en": "What kind of equipment does this fitness station have?", "de": "Welche Übungsgeräte gibt es an dieser Fitness-Station?", - "cs": "Jaké vybavení má tato fitness stanice?" + "cs": "Jaké vybavení má tato fitness stanice?", + "es": "¿Qué tipo de equipo tiene esta estación de fitness?" }, "mappings": [ { @@ -140,7 +150,8 @@ "en": "This fitness station has a horizontal bar, high enough for pull-ups.", "de": "Die Fitness-Station hat eine Reckstange für Klimmzüge.", "ca": "Aquesta estació de fitness té una barra horitzontal, prou alta per a fer traccions.", - "cs": "Tato posilovací stanice má hrazdu, dostatečně vysokou pro přítahy." + "cs": "Tato posilovací stanice má hrazdu, dostatečně vysokou pro přítahy.", + "es": "Esta estación de fitness tiene una barra horizontal, lo suficientemente alta para hacer dominadas." }, "icon": { "path": "./assets/layers/fitness_station/Trimm-Dich-Pfad_Grünwalder_Forst_Klimmzüge.jpg", @@ -153,7 +164,8 @@ "en": "This fitness station has a sign with instructions for a specific exercise.", "de": "Die Fitness-Station hat ein Schild mit Anweisungen für eine bestimmte Übung.", "ca": "Aquesta estació de fitness té un cartell amb instruccions per a un exercici concret.", - "cs": "Tato fitness stanice má ceduli s pokyny pro konkrétní cvičení." + "cs": "Tato fitness stanice má ceduli s pokyny pro konkrétní cvičení.", + "es": "Esta estación de fitness tiene un cartel con instrucciones para un ejercicio específico." }, "icon": { "path": "./assets/layers/fitness_station/Outdoor_fitness_station_sign.jpg", @@ -166,7 +178,8 @@ "en": "This fitness station has a facility for sit-ups.", "de": "Die Fitness-Station hat eine Einrichtung für Sit-ups.", "ca": "Aquesta estació de fitness té una instal·lació per fer abdominals.", - "cs": "Tato posilovna má zařízení pro sedy-lehy." + "cs": "Tato posilovna má zařízení pro sedy-lehy.", + "es": "Esta estación de fitness tiene un dispositivo para abdominales." }, "icon": { "path": "./assets/layers/fitness_station/Inclined_sit-up_bench.jpg", @@ -179,7 +192,8 @@ "en": "This fitness station has a facility for push-ups. Usually consists of one or more low horizontal bars.", "de": "Die Fitness-Station hat eine Vorrichtung für Liegestütze. In der Regel eine oder mehrere niedrige Reckstangen.", "ca": "Aquest estació de fitness té una instal·lació per a flexions. Normalment consta d'una o més barres horitzontals baixes.", - "cs": "Tato posilovna má zařízení pro kliky. Obvykle se skládá z jedné nebo více nízkých vodorovných tyčí." + "cs": "Tato posilovna má zařízení pro kliky. Obvykle se skládá z jedné nebo více nízkých vodorovných tyčí.", + "es": "Esta estación de fitness tiene un dispositivo para flexiones. Normalmente consiste en una o más barras horizontales bajas." }, "icon": { "path": "./assets/layers/fitness_station/Push-up_bars.jpg", @@ -192,7 +206,8 @@ "en": "This fitness station has bars for stretching.", "de": "Die Fitness-Station hat Stangen zum Dehnen.", "ca": "Aquesta estació de fitness disposa de barres per fer estiraments.", - "cs": "Tato posilovací stanice má tyče pro strečink." + "cs": "Tato posilovací stanice má tyče pro strečink.", + "es": "Esta estación de fitness tiene barras para estirar." }, "icon": { "path": "./assets/layers/fitness_station/Fitness_station_stretch_bars.jpg", @@ -205,7 +220,8 @@ "en": "This fitness station has a station for making hyperextensions.", "de": "Die Fitness-Station hat eine Vorrichtung für Rückenstrecker (Hyperextensions).", "ca": "Aquesta estació de fitness disposa d'una estació per fer hiperextensions.", - "cs": "Tato fitness stanice má stanici pro vytváření hyperextenzí." + "cs": "Tato fitness stanice má stanici pro vytváření hyperextenzí.", + "es": "Esta estación de fitness tiene una estación para realizar hiperextensiones." }, "icon": { "path": "./assets/layers/fitness_station/Inclined_sit-up_and_hyperextension_bench.jpg", @@ -218,7 +234,8 @@ "en": "This fitness station has rings for gymnastic exercises.", "de": "Die Fitness-Station hat Ringe für Gymnastikübungen.", "ca": "Aquesta estació de fitness disposa d'anelles per fer exercicis de gimnàstica.", - "cs": "Tato posilovací stanice má kruhy pro gymnastická cvičení." + "cs": "Tato posilovací stanice má kruhy pro gymnastická cvičení.", + "es": "Esta estación de fitness tiene anillas para ejercicios de gimnasia." }, "icon": { "path": "./assets/layers/fitness_station/Exercise9159.jpg", @@ -231,7 +248,8 @@ "en": "This fitness station has a horizontal ladder, also known as monkey bars.", "de": "Die Fitness-Station hat eine horizontale Leiter (Monkey Bars).", "ca": "Aquest gimnàs té una escala horitzontal, també coneguda com a barres de mico.", - "cs": "Tato fitness stanice má horizontální žebřík, známý také jako ručkovací žebřík." + "cs": "Tato fitness stanice má horizontální žebřík, známý také jako ručkovací žebřík.", + "es": "Esta estación de fitness tiene una escalera horizontal, también conocida como barras de mono." }, "icon": { "path": "./assets/layers/fitness_station/Horizontal_ladder.jpg", @@ -244,7 +262,8 @@ "en": "This fitness station has wall bars to climb on.", "de": "Die Fitness-Station hat eine Sprossenwand zum Klettern.", "ca": "Aquesta estació de fitness té barres per pujar-hi.", - "cs": "Tato fitness stanice má nástěnné tyče, na které lze lézt." + "cs": "Tato fitness stanice má nástěnné tyče, na které lze lézt.", + "es": "Esta estación de fitness tiene barras de pared para escalar." }, "icon": { "path": "./assets/layers/fitness_station/RIAN_archive_493268_Sports_at_a_kindergarten.jpg", @@ -257,7 +276,8 @@ "en": "This fitness station has posts for performing slalom exercises.", "de": "Die Fitness-Station hat Pfosten für Slalomübungen.", "ca": "Aquesta estació de fitness té llocs per fer exercicis d'eslàlom.", - "cs": "Tato fitness stanice má sloupky pro provádění slalomových cvičení." + "cs": "Tato fitness stanice má sloupky pro provádění slalomových cvičení.", + "es": "Esta estación de fitness tiene postes para realizar ejercicios de slalom." }, "icon": { "path": "./assets/layers/fitness_station/Fitness_station_slalom.jpg", @@ -270,7 +290,8 @@ "en": "This fitness station has stepping stones.", "de": "Die Fitness-Station hat Trittsteine.", "ca": "Aquesta estació de gimnàs té esglaons.", - "cs": "Tato fitness stanice má odrazové můstky." + "cs": "Tato fitness stanice má odrazové můstky.", + "es": "Esta estación de fitness tiene piedras para escalar." }, "icon": { "path": "./assets/layers/fitness_station/Fitness_station_stepping_stone.jpg", @@ -283,7 +304,8 @@ "en": "This fitness station has cones for performing leapfrog jumps.", "de": "Die Fitness-Station hat Hütchen für Bocksprünge.", "ca": "Aquesta estació de fitness disposa de cons per fer salts de granota.", - "cs": "Na této fitness stanici jsou kužely pro provádění skoků přes překážky." + "cs": "Na této fitness stanici jsou kužely pro provádění skoků přes překážky.", + "es": "Esta estación de fitness tiene conos para realizar saltos de rana." }, "icon": { "path": "./assets/layers/fitness_station/Fitness_station_leapfrog.jpg", @@ -296,7 +318,8 @@ "en": "This fitness station has beams to jump over.", "de": "Die Fitness-Station hat Balken zum überspringen.", "ca": "Aquesta estació de fitness té bigues per saltar.", - "cs": "Tato fitness stanice má trámy, přes které se skáče." + "cs": "Tato fitness stanice má trámy, přes které se skáče.", + "es": "Esta estación de fitness tiene vigas para saltar." }, "icon": { "path": "./assets/layers/fitness_station/Fitness_station_beam_jump.jpg", @@ -309,7 +332,8 @@ "en": "This fitness station has hurdles to cross.", "de": "Die Fitnessstation hat Hürden zum überspringen.", "ca": "Aquesta estació de fitness té obstacles per a travesar.", - "cs": "Tato fitness stanice má překážky, které je třeba překonat." + "cs": "Tato fitness stanice má překážky, které je třeba překonat.", + "es": "Esta estación de fitness tiene vallas para cruzar." }, "icon": { "path": "./assets/layers/fitness_station/Fitness_station_hurdling.jpg", @@ -322,7 +346,8 @@ "en": "This fitness station has a wall to climb on.", "de": "Die Fitness-Station hat eine Kletterwand.", "ca": "Aquesta estació de fitness té una paret per enfilar-se.", - "cs": "Tato fitness stanice má stěnu, na kterou se dá lézt." + "cs": "Tato fitness stanice má stěnu, na kterou se dá lézt.", + "es": "Esta estación de fitness tiene una pared para escalar." }, "icon": { "path": "./assets/layers/fitness_station/Fitness_station_wall.jpg", @@ -334,7 +359,8 @@ "then": { "en": "This fitness station has a balance beam.", "de": "Die Fitness-Station hat einen Schwebebalken.", - "cs": "Tato posilovací stanice má kladinu." + "cs": "Tato posilovací stanice má kladinu.", + "es": "Esta estación de fitness tiene una viga de equilibrio." }, "icon": { "path": "./assets/layers/fitness_station/Exercise9170.jpg", @@ -346,7 +372,8 @@ "then": { "en": "This fitness station has a log with a handle on the end to lift.", "de": "Die Fitness-Station hat einen Baumstamm mit Griff zum Anheben.", - "cs": "Tato posilovací stanice má na konci kládu s rukojetí ke zvedání." + "cs": "Tato posilovací stanice má na konci kládu s rukojetí ke zvedání.", + "es": "Esta estación de fitness tiene un tronco con un asa en el extremo para levantar." }, "icon": { "path": "./assets/layers/fitness_station/Log_lifting_exercise.jpg", @@ -358,7 +385,8 @@ "then": { "en": "This fitness station has a chair with only elbow supports and a rear (without seat), for performing leg raises.", "de": "Die Fitness-Station hat einen Stuhl ohne Sitzfläche, nur mit Arm- und Rückenlehne, für Beinheber.", - "cs": "Tato posilovací stanice má židli pouze s loketními opěrkami a zadní část (bez sedáku) pro provádění zvedání nohou." + "cs": "Tato posilovací stanice má židli pouze s loketními opěrkami a zadní část (bez sedáku) pro provádění zvedání nohou.", + "es": "Esta estación de fitness tiene una silla con solo soportes para los codos y una parte trasera (sin asiento), para realizar elevaciones de piernas." }, "icon": { "path": "./assets/layers/fitness_station/Captains_chair.jpg", @@ -370,7 +398,8 @@ "then": { "en": "This fitness station has a box that can be used for jumping.", "de": "Die Fitness-Station hat einen Kasten für Sprungübungen.", - "cs": "Tato fitness stanice má box, který lze použít pro skákání." + "cs": "Tato fitness stanice má box, který lze použít pro skákání.", + "es": "Esta estación de fitness tiene una caja que se puede usar para saltar." }, "icon": { "path": "./assets/layers/fitness_station/Exercise_Box.jpg", @@ -382,7 +411,8 @@ "then": { "en": "This fitness station has battling ropes.", "de": "Die Fitness-Station hat Kampfseile (battle ropes).", - "cs": "Tato fitness stanice má bojová lana." + "cs": "Tato fitness stanice má bojová lana.", + "es": "Esta estación de fitness tiene cuerdas de batalla." }, "icon": { "path": "./assets/layers/fitness_station/Battling_ropes.jpg", @@ -394,7 +424,8 @@ "then": { "en": "This fitness station has a stationary bicycle.", "de": "Die Fitness-Station hat ein Fahrradergometer.", - "cs": "Tato posilovna má stacionární kolo." + "cs": "Tato posilovna má stacionární kolo.", + "es": "Esta estación de fitness tiene una bicicleta estática." }, "icon": { "path": "./assets/layers/fitness_station/Outdoor_stationary_bicycle.jpg", @@ -406,7 +437,8 @@ "then": { "en": "This fitness station has a cross-trainer.", "de": "Die Fitness-Station hat einen Crosstrainer.", - "cs": "Tato fitness stanice má crossový trenažér." + "cs": "Tato fitness stanice má crossový trenažér.", + "es": "Esta estación de fitness tiene una elíptica." }, "icon": { "path": "./assets/layers/fitness_station/07-12-2016,_Fitness_trail,_Parque_da_Alfarrobeira,_Albufeira_2.jpg", @@ -418,7 +450,8 @@ "then": { "en": "This fitness station has an air walker.", "de": "Die Fitness-Station hat einen Air-Walker.", - "cs": "Tato posilovací stanice má chodítko ve vzduchu." + "cs": "Tato posilovací stanice má chodítko ve vzduchu.", + "es": "Esta estación de fitness tiene un caminador de aire." }, "icon": { "path": "./assets/layers/fitness_station/Ansan_Park_beind_the_city_hall_022.jpg", @@ -430,7 +463,8 @@ "then": { "en": "This fitness station has a rower.", "de": "Die Fitness-Station hat ein Rudergerät.", - "cs": "Tato fitness stanice má veslař." + "cs": "Tato fitness stanice má veslař.", + "es": "Esta estación de fitness tiene una máquina de remo." }, "icon": { "path": "./assets/layers/fitness_station/Annecy_-_rower.jpg", @@ -442,7 +476,8 @@ "then": { "en": "This fitness station has a slackline.", "de": "Die Fitness-Station hat eine Slackline.", - "cs": "Tato fitness stanice má slackline." + "cs": "Tato fitness stanice má slackline.", + "es": "Esta estación de fitness tiene una slackline." }, "icon": { "path": "./assets/layers/fitness_station/Slacklineanlage_im_Dietenbachpark.jpg", @@ -459,7 +494,8 @@ "de": "Wer betreibt die Fitness-Station?", "nl": "Wie beheert dit fitness-toestel?", "ca": "Qui manté l'estació de fitness?", - "cs": "Kdo spravuje tuto fitness stanici?" + "cs": "Kdo spravuje tuto fitness stanici?", + "es": "¿Quién mantiene esta estación de fitness?" }, "freeform": { "key": "operator", @@ -467,7 +503,8 @@ "en": "Operator of the fitness station", "de": "Betreiber der Fitness-Station", "nl": "Beheerder van het fitness-toestel", - "cs": "Provozovatel fitness stanice" + "cs": "Provozovatel fitness stanice", + "es": "Operador de la estación de fitness" }, "type": "string" }, @@ -476,7 +513,8 @@ "de": "Die Fitness-Station wird betrieben von {operator}.", "nl": "Dit fitness-toestel wordt beheerd door {operator}", "ca": "{operator} manté l'estació de fitness.", - "cs": "Fitness stanici spravuje {operator}." + "cs": "Fitness stanici spravuje {operator}.", + "es": "La estación de fitness es mantenida por {operator}." } }, "opening_hours_24_7" diff --git a/assets/layers/fixme/fixme.json b/assets/layers/fixme/fixme.json index 94e9dc765..b323e36aa 100644 --- a/assets/layers/fixme/fixme.json +++ b/assets/layers/fixme/fixme.json @@ -5,13 +5,15 @@ "de": "OSM-Objekte mit FIXME-Tags", "pl": "Obiekty OSM z znacznikami FIXME", "ca": "Objectes d'OSM amb etiquetes FIXME", - "cs": "Objekty OSM se značkami FIXME" + "cs": "Objekty OSM se značkami FIXME", + "es": "Objetos OSM con etiquetas FIXME" }, "description": { "en": "OSM objects that likely need to be fixed, based on a FIXME tag.", "de": "OSM-Objekte, die wahrscheinlich korrigiert werden müssen, basierend auf einem FIXME-Tag.", "ca": "Objectes OSM que probablement s'han de solucionar, basats en una etiqueta FIXME.", - "cs": "Objekty OSM, které je pravděpodobně nutné opravit na základě značky FIXME." + "cs": "Objekty OSM, které je pravděpodobně nutné opravit na základě značky FIXME.", + "es": "Objetos OSM que probablemente necesitan ser arreglados, basándose en una etiqueta FIXME." }, "source": { "osmTags": { @@ -28,7 +30,8 @@ "de": "OSM-Objekt mit FIXME-Tags", "pl": "Obiekt OSM z znacznikiem FIXME", "ca": "Objecte OSM amb etiqueta FIXME", - "cs": "Objekt OSM s tagem FIXME" + "cs": "Objekt OSM s tagem FIXME", + "es": "Objeto OSM con etiqueta FIXME" } }, "pointRendering": [ @@ -64,7 +67,8 @@ "de": "Was stimmt mit diesem Objekt nicht?", "pl": "Co jest nie tak z tym obiektem?", "ca": "Que hi ha mal amb aquest element?", - "cs": "Co je na této funkci špatného?" + "cs": "Co je na této funkci špatného?", + "es": "¿Qué está mal con este elemento?" }, "mappings": [ { @@ -74,7 +78,8 @@ "de": "Dieses Problem wurde behoben", "pl": "Ten problem został rozwiązany", "ca": "Aquest problema s'ha resolt", - "cs": "Tento problém byl vyřešen" + "cs": "Tento problém byl vyřešen", + "es": "Este problema ha sido resuelto" } } ], @@ -82,7 +87,8 @@ "en": "Fixme Text: {fixme}", "de": "Fixme Text: {fixme}", "ca": "Text Fixme: {fixme}", - "cs": "Fixme Text: {fixme}" + "cs": "Fixme Text: {fixme}", + "es": "Texto Fixme: {fixme}" } }, { @@ -94,7 +100,8 @@ "fr": "Texte de la note : {note}", "pl": "Tekst notatki: {note}", "ca": "Text de la nota: {note}", - "cs": "Text poznámky: {note}" + "cs": "Text poznámky: {note}", + "es": "Texto Nota: {note}" } }, "all_tags" diff --git a/assets/layers/food/food.json b/assets/layers/food/food.json index f54a878fc..7a6306b5a 100644 --- a/assets/layers/food/food.json +++ b/assets/layers/food/food.json @@ -15,7 +15,7 @@ "en": "A layer showing restaurants and fast-food amenities (with a special rendering for friteries)", "nl": "Een laag die restaurants en fast food toont (met een speciale weergave van frituren)", "de": "Eine Ebene mit Restaurants und Fast-Food-Einrichtungen (mit speziellem Rendering für Pommesbuden)", - "es": "Una capa mostrando restaurantes y locales de comida rápida (con un renderizado especial para friterías)", + "es": "Una capa que muestra restaurantes y establecimientos de comida rápida (con una representación especial para freidurías)", "fr": "Un calque montrant les restaurants et les lieux de restauration rapide (avec un rendu spécial pour les friteries)", "ca": "Una capa que mostra restaurants i locals de menjar ràpid (amb un renderitzat especial per a fregiduries)", "cs": "Vrstva zobrazující restaurace a zařízení rychlého občerstvení (se speciálním vykreslením pro fritézy)", @@ -83,7 +83,8 @@ "ca": "Lloc de menjar ràpid {name}", "es": "Comida rápida {name}", "fr": "Fast-food {name}", - "cs": "Rychlé občerstvení {name}" + "cs": "Rychlé občerstvení {name}", + "uk": "Фаст-фуд {name}" } }, { @@ -194,7 +195,7 @@ "nl": "Een eetgegelegenheid waar je aan tafel wordt bediend", "en": "A formal eating place with sit-down facilities selling full meals served by waiters", "de": "Ein klassisches Speiselokal mit Sitzgelegenheiten, in dem vollständige Mahlzeiten von Kellnern serviert werden", - "es": "Un lugar de comidas formal, con mesas y sillas y que vende comidas completas servidas por camareros", + "es": "Un lugar formal para comer con instalaciones para sentarse y que vende comidas completas servidas por camareros", "fr": "Un lieu de restauration formel avec des installations pour s'asseoir vendant des repas complets servis par des serveurs", "ca": "Un lloc per menjar formal amb instal·lacions per seure que venen àpats complets servits per cambrers", "cs": "Formální jídelna s posezením, kde se prodávají kompletní jídla podávaná číšníky", @@ -209,7 +210,8 @@ "de": "ein Schnellimbiss", "ca": "un negoci de menjar ràpid", "fr": "un fast-food", - "cs": "rychlé občerstvení" + "cs": "rychlé občerstvení", + "es": "un establecimiento de comida rápida" }, "tags": [ "amenity=fast_food" @@ -218,7 +220,7 @@ "nl": "Een zaak waar je snel bediend wordt, vaak met de focus op afhalen. Zitgelegenheid is eerder beperkt (of zelfs afwezig)", "en": "A food business concentrating on fast counter-only service and take-away food", "de": "Ein Lebensmittelunternehmen, das sich auf schnellen Thekendienst und Essen zum Mitnehmen konzentriert", - "es": "Un negocio de comida centrado en servicio rápido solo en mostrador y comida para llevar", + "es": "Un negocio de comida que se centra en el servicio rápido solo en el mostrador y comida para llevar", "fr": "Une entreprise alimentaire se concentrant sur le service rapide au comptoir et les plats à emporter", "ca": "Un negoci de menjar centrat en el servei ràpid sols en mostrador i menjar per a endur", "cs": "Potravinářský podnik se zaměřením na rychlou obsluhu u pultu a jídlo s sebou" @@ -231,7 +233,8 @@ "de": "eine Pommesbude", "fr": "Une friterie", "ca": "una botiga de patates fregides", - "cs": "obchod s hranolky" + "cs": "obchod s hranolky", + "es": "una freiduría" }, "tags": [ "amenity=fast_food", @@ -243,7 +246,8 @@ "de": "Eine Pommesbude", "fr": "Une restauration rapide centré sur la vente de frites", "ca": "Un local de menjar ràpid centrat en les patates fregides", - "cs": "Podnik s rychlým občerstvením zaměřený na hranolky" + "cs": "Podnik s rychlým občerstvením zaměřený na hranolky", + "es": "Un negocio de comida rápida centrado en papas fritas" } } ], @@ -258,7 +262,8 @@ "es": "¿Cuál es el nombre de este negocio?", "fr": "Quel est le nom de ce restaurant ?", "ca": "Quin és el nom d'aquest negoci?", - "cs": "Jak se tento podnik jmenuje?" + "cs": "Jak se tento podnik jmenuje?", + "uk": "Як називається цей бізнес?" }, "render": { "nl": "De naam van deze eetgelegeheid is {name}", @@ -267,7 +272,8 @@ "es": "El nombre de este negocio es {name}", "fr": "Le nom de ce restaurant est {name}", "ca": "El nom d'aquest negoci és {name}", - "cs": "Název tohoto podniku je {name}" + "cs": "Název tohoto podniku je {name}", + "uk": "Цей бізнес називається {name}" }, "freeform": { "key": "name" @@ -282,7 +288,8 @@ "es": "¿Qué tipo de negocio es este?", "fr": "Quel type de restaurant est-ce ?", "ca": "Quin tipus de negoci és aquest?", - "cs": "O jaký typ podnikání se jedná?" + "cs": "O jaký typ podnikání se jedná?", + "uk": "Що це за бізнес?" }, "mappings": [ { @@ -291,11 +298,12 @@ "en": "This is a fast-food business, focused on fast service. If seating is available, it is rather limited and functional.", "nl": "Dit is een fastfood-zaak. De focus ligt op snelle bediening, zitplaatsen zijn vaak beperkt en functioneel.", "de": "Es handelt sich um einen Schnellimbiss, mit Fokus auf schnelle Bedienung am Tresen. Sitzmöglichkeiten sind begrenzt und funktional.", - "es": "Se trata de un negocio de comida rápida, centrado en el servicio rápido. Si hay asientos disponibles, son más bien limitados y funcionales.", + "es": "Este es un negocio de comida rápida, centrado en el servicio rápido. Si hay asientos disponibles, son bastante limitados y funcionales.", "fr": "C'est un fast-food, centrée sur le service rapide. Si des places sont disponibles, elles sont plutôt limitées et fonctionnelles.", - "hu": "Ez egy gyorsétterem (büfé), amely a gyors kiszolgálásra összpontosít. Ha vannak is ülőhelyek, ezek meglehetősen korlátozottak és funkcionálisak.", + "hu": "Ez egy gyorsétterem (büfé), amely a gyors kiszolgálásra összpontosít. Ha van is ülőhely, az meglehetősen korlátozott és funkcionális.", "ca": "Aquest és un negoci de menjar ràpid, centrat en el servei ràpid. Si hi han seients disponibles, aquests seran limitats i funcionals.", - "cs": "Jedná se o podnik s rychlým občerstvením, zaměřený na rychlou obsluhu. Pokud je k dispozici místo k sezení, je spíše omezené a funkční." + "cs": "Jedná se o podnik s rychlým občerstvením, zaměřený na rychlou obsluhu. Pokud je k dispozici místo k sezení, je spíše omezené a funkční.", + "uk": "Це бізнес швидкого харчування, орієнтований на швидке обслуговування. Якщо місця для сидіння і є, то вони досить обмежені та функціональні." } }, { @@ -304,10 +312,11 @@ "en": "A restaurant, focused on creating a nice experience where one is served at the table", "nl": "Dit is een restaurant. De focus ligt op een aangename ervaring waar je aan tafel wordt bediend", "de": "Es handelt sich um ein Restaurant, mit Fokus auf eine nette Atmosphäre und Tischbedienung", - "es": "Un restaurante, centrado en crear una experiencia agradable en la que uno se sirve en mesa", + "es": "Un restaurante, centrado en crear una buena experiencia donde te atienden en la mesa", "fr": "Un restaurant, axé sur la création d'une expérience agréable où l'on est servi à table", "ca": "Un restaurant, centrat en crear una bona experiència on es serveix a taula", - "cs": "Restaurace zaměřená na vytvoření příjemného zážitku, kde se obsluhuje u stolu" + "cs": "Restaurace zaměřená na vytvoření příjemného zážitku, kde se obsluhuje u stolu", + "uk": "Ресторан, зосереджений на створенні приємних вражень, де обслуговують за столом" } } ], @@ -325,7 +334,7 @@ "nl": "Welk soort gerechten worden hier geserveerd?", "en": "What kind of food is served here?", "de": "Was für Essen gibt es hier?", - "es": "¿Qué tipo de comida sirven aquí?", + "es": "¿Qué tipo de comida se sirve aquí?", "fr": "Quelle type de nourriture est servie ici ?", "ca": "Quin tipus de menjar es serveix aquí?", "cs": "Jaké jídlo se zde podává?" @@ -334,7 +343,7 @@ "nl": "Deze plaats serveert vooral {cuisine}", "en": "This place mostly serves {cuisine}", "de": "An diesem Ort gibt es hauptsächlich {cuisine}", - "es": "Aquí se sirve principalmente {cuisine}", + "es": "Este lugar sirve principalmente {cuisine}", "fr": "Cet endroit sert principalement des plats {cuisine}", "ca": "Aquest lloc serveix principalment {cuisine}", "cs": "Toto místo většinou podává {cuisine}" @@ -369,7 +378,8 @@ "de": "Pommesbude", "fr": "Friterie", "ca": "Fregiduria", - "cs": "Hranolkárna" + "cs": "Hranolkárna", + "es": "Fritura" } }, { @@ -379,7 +389,7 @@ "en": "Serves mainly pasta", "nl": "Pastazaak", "de": "Bietet vorwiegend Pastagerichte an", - "es": "Principalmente sirve pasta", + "es": "Sirve principalmente pasta", "fr": "Restaurant Italien", "ca": "Principalment serveix pasta", "pl": "Podaje głównie makarony", @@ -393,7 +403,7 @@ "en": "Kebab shop", "nl": "Kebabzaak", "de": "Dönerladen", - "es": "Tienda de kebak", + "es": "Kebab", "fr": "Resto kebab", "pl": "To jest stoisko z kebabem", "ca": "Botiga de kebabs", @@ -409,7 +419,8 @@ "de": "Sandwichladen", "fr": "Sandwicherie", "ca": "Botiga d'entrepans", - "cs": "Toto je obchod se sendviči" + "cs": "Toto je obchod se sendviči", + "es": "Sandwichería" } }, { @@ -418,7 +429,7 @@ "then": { "en": "Burgersrestaurant", "nl": "Hamburgerrestaurant", - "es": "Hamburguesas", + "es": "Hamburguesería", "fr": "Des hamburgers sont servis ici", "ca": "Restaurant d'hamburgueses", "pl": "Są tu podawane burgery", @@ -433,7 +444,7 @@ "en": "Sushi restaurant", "nl": "Sushirestaurant", "de": "Hier wird Sushi serviert", - "es": "Aquí se sirve sushi", + "es": "Restaurante de sushi", "fr": "Des sushis sont servis ici", "ca": "Restaurant de shushi", "cs": "Podává se zde sushi" @@ -446,7 +457,7 @@ "en": "Coffeebar", "nl": "Koffiezaak", "de": "Hier wird Kaffee serviert", - "es": "Aquí se sirve café", + "es": "Cafetería", "fr": "C'est un café", "ca": "Cafeteria", "cs": "Podává se zde káva" @@ -459,7 +470,7 @@ "en": "Italian restaurant (which serves more than pasta and pizza)", "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)", - "es": "Este es un restaurante italiano (que sirve algo 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)", "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)" @@ -472,7 +483,7 @@ "en": "French restaurant", "nl": "Frans restaurant", "de": "Hier werden französische Gerichte serviert", - "es": "Aquí se sirven platos Franceses", + "es": "Restaurante francés", "fr": "Des plats français sont servis ici", "ca": "Restaurant francés", "cs": "Podávají se zde francouzská jídla" @@ -485,7 +496,7 @@ "en": "Chinese", "nl": "Chinees restaurant", "de": "Hier werden chinesische Gerichte serviert", - "es": "Aquí se sirven platos Chinos", + "es": "Chino", "fr": "Des plats chinois sont servis ici", "ca": "Xinés", "cs": "Podávají se zde čínské pokrmy" @@ -498,7 +509,7 @@ "en": "Greek", "nl": "Grieks restaurant", "de": "Hier werden griechische Gerichte serviert", - "es": "Aquí se sirven platos Griegos", + "es": "Griego", "fr": "Des plats grecs sont servis ici", "ca": "Grec", "cs": "Podávají se zde řecká jídla" @@ -511,7 +522,7 @@ "en": "Indian", "nl": "Indisch restaurant", "de": "Hier werden indische Gerichte serviert", - "es": "Aquí se sirven platos Indios", + "es": "Indio", "fr": "Des plats indiens sont servis ici", "ca": "Indi", "cs": "Podávají se zde indická jídla" @@ -524,7 +535,7 @@ "en": "Turkish restaurant", "nl": "Turks restaurant", "de": "Hier werden türkische Gerichte serviert", - "es": "Aquí se sirven platos Turcos", + "es": "Restaurante turco", "fr": "Des plats turcs sont servis ici", "ca": "Turc", "cs": "Podávají se zde turecké pokrmy" @@ -539,7 +550,8 @@ "de": "Hier werden thailändische Gerichte serviert", "fr": "Des plats thaïlandais sont servis ici", "ca": "Tailandés", - "cs": "Podávají se zde thajské pokrmy" + "cs": "Podávají se zde thajské pokrmy", + "es": "Restaurante tailandés" } }, { @@ -548,7 +560,8 @@ "then": { "en": "Mexican dishes are served here", "nl": "Dit is een mexicaans restaurant", - "de": "Hier werden mexikanische Gerichte serviert" + "de": "Hier werden mexikanische Gerichte serviert", + "es": "Aquí se sirven platillos mexicanos" } }, { @@ -557,7 +570,8 @@ "then": { "en": "Japanese dishes are served here", "nl": "Dit is een japans restaurant", - "de": "Hier werden japanische Gerichte serviert" + "de": "Hier werden japanische Gerichte serviert", + "es": "Aquí se sirven platillos japoneses" } }, { @@ -566,7 +580,8 @@ "then": { "en": "Chicken based dishes are served here", "nl": "Dit is een kiprestaurant", - "de": "Hier werden Hühnergerichte serviert" + "de": "Hier werden Hühnergerichte serviert", + "es": "Aquí se sirven platillos a base de pollo" } }, { @@ -575,7 +590,8 @@ "then": { "en": "Seafood dishes are served here", "nl": "Dit is een vis- en zeerestaurant", - "de": "Hier werden Fisch und Meeresfrüchte serviert" + "de": "Hier werden Fisch und Meeresfrüchte serviert", + "es": "Aquí se sirven platillos de mariscos" } } ], @@ -597,7 +613,8 @@ "label": { "en": "Add an image from the menu", "nl": "Voeg een foto van het menu toe", - "de": "Ein Bild aus dem Menü hinzufügen" + "de": "Ein Bild aus dem Menü hinzufügen", + "es": "Añadir una imagen del menú" } } } @@ -607,7 +624,8 @@ "question": { "en": "On what webpage is the menu published?", "de": "Auf welcher Webseite wird das Menü veröffentlicht?", - "ca": "A quina web està publicat el menú?" + "ca": "A quina web està publicat el menú?", + "es": "¿En qué página web se publica el menú?" }, "render": { "special": { @@ -615,7 +633,8 @@ "href": "{website:menu}", "text": { "en": "Consult the menu", - "de": "Das Menü einsehen" + "de": "Das Menü einsehen", + "es": "Consultar el menú" } } }, @@ -634,7 +653,8 @@ "ca": "És necessari reservar en aquest lloc?", "fr": "Est-il nécessaire de réserver à cet endroit ?", "pl": "Czy w tym miejscu rezerwacja jest wymagana?", - "cs": "Je pro toto místo nutná rezervace?" + "cs": "Je pro toto místo nutná rezervace?", + "es": "¿Se requiere reserva para este lugar?" }, "mappings": [ { @@ -645,7 +665,8 @@ "de": "Hier ist eine Reservierung erforderlich", "ca": "En aquest lloc cal reservar", "fr": "Il est nécessaire de réserver à cet endroit", - "cs": "Na tomto místě je nutná rezervace" + "cs": "Na tomto místě je nutná rezervace", + "es": "Se requiere reserva en este lugar" } }, { @@ -656,7 +677,8 @@ "de": "Eine Reservierung ist nicht erforderlich, wird aber empfohlen, damit Sie einen Tisch bekommen", "ca": "No cal fer reserva, però tot i així es recomana per assegurar-vos que teniu taula", "fr": "Une réservation n'est pas obligatoire, mais est recommandée pour être sûr d'avoir une table", - "cs": "Rezervace není nutná, ale přesto se doporučuje, abyste se ujistili, že dostanete stůl" + "cs": "Rezervace není nutná, ale přesto se doporučuje, abyste se ujistili, že dostanete stůl", + "es": "No se requiere reserva, pero aún así se recomienda para asegurar una mesa" } }, { @@ -668,7 +690,8 @@ "ca": "És possible reservar en aquest lloc", "fr": "La réservation est possible à cet endroit", "pl": "W tym miejscu możliwa jest rezerwacja", - "cs": "Rezervace je možná na tomto místě" + "cs": "Rezervace je možná na tomto místě", + "es": "Es posible reservar en este lugar" } }, { @@ -680,7 +703,8 @@ "ca": "En aquest lloc no es pot reservar", "fr": "Il n'est pas possible de réserver à cet endroit", "pl": "Rezerwacja nie jest możliwa w tym miejscu", - "cs": "Rezervace na tomto místě není možná" + "cs": "Rezervace na tomto místě není možná", + "es": "No es posible reservar en este lugar" } } ], @@ -691,10 +715,11 @@ "nl": "Biedt deze zaak een afhaalmogelijkheid aan?", "en": "Does this place offer take-away?", "de": "Werden Gerichte zum Mitnehmen angeboten?", - "es": "¿Este local ofrece comida para llevar?", + "es": "¿Este lugar ofrece comida para llevar?", "fr": "Cet établissement propose-t-il des plats à emporter ?", "ca": "Aquest lloc ofereix per a emportar?", - "cs": "Nabízí toto místo jídlo s sebou?" + "cs": "Nabízí toto místo jídlo s sebou?", + "uk": "Чи пропонують тут їжу на винос?" }, "mappings": [ { @@ -703,10 +728,11 @@ "en": "This is a take-away only business", "nl": "Hier is enkel afhaal mogelijk", "de": "Hier werden ausschließlich Gerichte zum Mitnehmen angeboten", - "es": "Este es un negocio solo para pedir para llevar", + "es": "Este negocio es solo para llevar", "fr": "Ce restaurant ne propose que de la vente à emporter", "ca": "Aquest és un negoci només per emportar", - "cs": "Jedná se o podnik jídlo pouze s sebou" + "cs": "Jedná se o podnik jídlo pouze s sebou", + "uk": "Це бізнес тільки на винос" } }, { @@ -715,10 +741,11 @@ "en": "Take-away is possible here", "nl": "Eten kan hier afgehaald worden", "de": "Hier werden auch Gerichte zum Mitnehmen angeboten", - "es": "Aquí es posible pedir para llevar", + "es": "Es posible llevarse la comida", "fr": "La vente à emporter est possible ici", "ca": "Aquí és possible demanar per emportar", - "cs": "Je zde možné vzít si s sebou" + "cs": "Je zde možné vzít si s sebou", + "uk": "Тут можна замовити їжу на винос" } }, { @@ -727,10 +754,11 @@ "en": "Take-away is not possible here", "nl": "Hier is geen afhaalmogelijkheid", "de": "Hier werden keine Gerichte zum Mitnehmen angeboten", - "es": "Aquí no es posible pedir para llevar", + "es": "No es posible llevarse la comida", "fr": "La vente à emporter n'est pas possible ici", "ca": "Aquí no és possible demanar per emportar", - "cs": "Jídlo sebou zde není možné" + "cs": "Jídlo sebou zde není možné", + "uk": "Замовлення на винос тут неможливе" } } ], @@ -744,18 +772,20 @@ "nl": "Levert {title()} aan huis?", "fr": "Est-ce que {title()} livre sa nourriture à domicile ?", "ca": "{title()} lliura el seu menjar a casa?", - "cs": "Doručuje {title()} jídlo až domů?" + "cs": "Doručuje {title()} jídlo až domů?", + "es": "¿{title()} entrega comida a domicilio?" }, "mappings": [ { "if": "delivery=yes", "then": { - "en": "This business does home delivery (eventually via a third party)", - "de": "Dieses Unternehmen liefert nach Hause (eventuell über eine dritte Partei)", + "en": "This business does home delivery (possibly via a third party)", + "de": "Dieses Unternehmen liefert nach Hause (möglicherweise über eine dritte Partei)", "fr": "Ce restaurant effectue la livraison à domicile (éventuellement via un tiers)", "nl": "Deze zaak levert aan huis (eventueel via een derde partij)", "ca": "Aquest negoci fa lliuraments a domicili (eventualment a través d'un tercer)", - "cs": "Tato firma zajišťuje doručování domů (případně prostřednictvím třetí strany)" + "cs": "Tato firma zajišťuje doručování domů (případně prostřednictvím třetí strany)", + "es": "Este negocio realiza entregas a domicilio (posiblemente a través de un tercero)" } }, { @@ -766,7 +796,8 @@ "fr": "Ce restaurant ne livre pas à domicile", "nl": "Deze zaak doet geen thuisleveringen", "ca": "Aquest negoci no fa lliurament a casa", - "cs": "Tato firma nedoručuje domů" + "cs": "Tato firma nedoručuje domů", + "es": "Este negocio no realiza entregas a domicilio" } } ] @@ -776,7 +807,7 @@ "nl": "Heeft deze eetgelegenheid een vegetarische optie?", "en": "Does this restaurant have a vegetarian option?", "de": "Werden hier vegetarische Gerichte angeboten?", - "es": "¿Este restaurante tiene una opción vegetariana?", + "es": "¿Este restaurante tiene opciones vegetarianas?", "fr": "Ce restaurant propose-t-il une option végétarienne ?", "ca": "Aquest restaurant té opció vegetariana?", "pl": "Czy ta restauracja ma danie wegetariańskie?", @@ -790,7 +821,7 @@ "en": "No vegetarian options are available", "nl": "Geen vegetarische opties beschikbaar", "de": "Hier werden keine vegetarischen Gerichte angeboten", - "es": "Sin opciones vegetarianas", + "es": "No hay opciones vegetarianas disponibles", "fr": "Aucune option végétarienne n'est disponible", "ca": "No hi ha opcions vegetarianes disponibles", "pl": "Brak dań wegetariańskich", @@ -803,7 +834,7 @@ "en": "Some vegetarian options are available", "nl": "Beperkte vegetarische opties zijn beschikbaar", "de": "Hier werden nur wenige vegetarische Gerichte angeboten", - "es": "Algunas opciones vegetarianas", + "es": "Hay algunas opciones vegetarianas disponibles", "fr": "Certaines options végétariennes sont disponibles", "ca": "Algunes opcions vegetarianes", "pl": "Pewne dania wegetariańskie są dostępne", @@ -817,7 +848,7 @@ "en": "Vegetarian options are available", "nl": "Vegetarische opties zijn beschikbaar", "de": "Hier werden vegetarische Gerichte angeboten", - "es": "Opciones vegetarianas disponibles", + "es": "Hay opciones vegetarianas disponibles", "fr": "Des options végétariennes sont disponibles", "ca": "Hi ha opcions vegetarianes disponibles", "pl": "Dostępne są dania wegetariańskie", @@ -831,7 +862,7 @@ "en": "All dishes are vegetarian", "nl": "Enkel vegetarische opties zijn beschikbaar", "de": "Hier werden ausschließlich vegetarische Gerichte angeboten", - "es": "Todos los platos son vegetarianos", + "es": "Todos los platillos son vegetarianos", "fr": "Tous les plats sont végétariens", "ca": "Tots els plats són vegetarians", "pl": "Wszystkie dania są wegetariańskie", @@ -843,7 +874,8 @@ "then": { "en": "Some dishes might be adapted to a vegetarian version, but this should be demanded", "nl": "Sommige gerechten kunnen op vraag vegetarisch gemaakt worden", - "de": "Einige Gerichte können auf Nachfrage in eine vegetarische Version umgewandelt werden" + "de": "Einige Gerichte können auf Nachfrage in eine vegetarische Version umgewandelt werden", + "es": "Algunos platillos podrían adaptarse a una versión vegetariana, pero esto debe solicitarse" } } ], @@ -855,7 +887,7 @@ "en": "Does this business serve vegan meals?", "nl": "Heeft deze eetgelegenheid een veganistische optie?", "de": "Werden hier vegane Gerichte angeboten?", - "es": "¿Este negocio sirve comida vegana?", + "es": "¿Este negocio sirve comidas veganas?", "fr": "Cet établissement sert-il des repas végétaliens ?", "ca": "Aquest negoci serveix menjars vegans?", "cs": "Podává tento podnik veganská jídla?" @@ -867,7 +899,7 @@ "en": "No vegan options available", "nl": "Geen veganistische opties beschikbaar", "de": "Hier werden keine veganen Gerichte angeboten", - "es": "Sin opciones veganas disponibles", + "es": "No hay opciones veganas disponibles", "fr": "Aucune option végétalienne disponible", "ca": "No hi ha opcions veganes disponibles", "pl": "Brak dań wegańskich", @@ -880,7 +912,7 @@ "en": "Some vegan options are available", "nl": "Beperkte veganistische opties zijn beschikbaar", "de": "Hier werden nur wenige vegane Gerichte angeboten", - "es": "Alguna opciones veganas disponibles", + "es": "Hay algunas opciones veganas disponibles", "fr": "Certaines options végétaliennes sont disponibles", "ca": "Hi ha algunes opcions veganes disponibles", "pl": "Pewne dania wegańskie są dostępne", @@ -893,7 +925,7 @@ "en": "Vegan options are available", "nl": "Veganistische opties zijn beschikbaar", "de": "Hier werden vegane Gerichte angeboten", - "es": "Opciones veganas disponibles", + "es": "Hay opciones veganas disponibles", "fr": "Des options végétaliennes sont disponibles", "ca": "Hi ha opcions veganes disponibles", "pl": "Dostępne są dania wegańskie", @@ -906,7 +938,7 @@ "en": "All dishes are vegan", "nl": "Enkel veganistische opties zijn beschikbaar", "de": "Hier werden ausschließlich vegane Gerichte angeboten", - "es": "Todos los platos son veganos", + "es": "Todos los platillos son veganos", "fr": "Tous les plats sont végétaliens", "ca": "Tots els plats són vegans", "pl": "Wszystkie dania są wegańskie", @@ -918,7 +950,8 @@ "then": { "en": "Some dishes might be adapted to a vegan version if asked for", "nl": "Op vraag kan een veganistische variant van een gerecht gemaakt worden", - "de": "Einige Gerichte können auf Nachfrage in eine vegane Version umgewandelt werden" + "de": "Einige Gerichte können auf Nachfrage in eine vegane Version umgewandelt werden", + "es": "Algunos platillos podrían adaptarse a una versión vegana si se solicita" } } ], @@ -932,7 +965,8 @@ "de": "Werden hier halal Gerichte angeboten?", "fr": "Ce restaurant propose-t-il un menu halal ?", "ca": "Aquest restaurant ofereix un menú halal?", - "cs": "Nabízí tato restaurace halal menu?" + "cs": "Nabízí tato restaurace halal menu?", + "es": "¿Este restaurante ofrece un menú halal?" }, "mappings": [ { @@ -943,7 +977,8 @@ "de": "Hier werden keine halal Gerichte angeboten", "fr": "Il n'y a pas d'options halal disponibles", "ca": "No hi ha opcions halal disponibles", - "cs": "Nejsou k dispozici žádné halal možnosti" + "cs": "Nejsou k dispozici žádné halal možnosti", + "es": "No hay opciones halal disponibles" } }, { @@ -954,7 +989,8 @@ "de": "Hier werden nur wenige halal Gerichte angeboten", "fr": "Il y a un petit menu halal", "ca": "Hi ha un petit menú halal", - "cs": "K dispozici je malé halal menu" + "cs": "K dispozici je malé halal menu", + "es": "Hay un pequeño menú halal" } }, { @@ -965,7 +1001,8 @@ "de": "Hier werden halal Gerichte angeboten", "fr": "Il y a un menu halal", "ca": "Hi ha un menú halal", - "cs": "K dispozici je halal menu" + "cs": "K dispozici je halal menu", + "es": "Hay un menú halal" } }, { @@ -976,7 +1013,8 @@ "de": "Hier werden ausschließlich halal Gerichte angeboten", "fr": "Seules les options halal sont disponibles", "ca": "Només hi ha opcions halal disponibles", - "cs": "K dispozici jsou pouze možnosti halal" + "cs": "K dispozici jsou pouze možnosti halal", + "es": "Solo hay opciones halal disponibles" } } ], @@ -991,7 +1029,8 @@ "nl": "Biedt dit restaurant biologisch eten?", "fr": "Ce restaurant propose-t-il de la nourriture bio ?", "ca": "Aquest restaurant ofereix menjar ecològic?", - "cs": "Nabízí tato restaurace biopotraviny?" + "cs": "Nabízí tato restaurace biopotraviny?", + "es": "¿Este restaurante ofrece comida orgánica?" }, "mappings": [ { @@ -1002,7 +1041,8 @@ "nl": "Er zijn geen biologische opties beschikbaar", "fr": "Il n'y a pas d'option bio disponible", "ca": "No hi ha opcions ecològiques disponibles", - "cs": "Nejsou k dispozici žádné BIO možnosti" + "cs": "Nejsou k dispozici žádné BIO možnosti", + "es": "No hay opciones orgánicas disponibles" } }, { @@ -1013,7 +1053,8 @@ "nl": "Er is een biologisch menu", "fr": "Il y a un menu bio", "ca": "Hi ha un menú ecològic", - "cs": "K dispozici je BIO menu" + "cs": "K dispozici je BIO menu", + "es": "Hay un menú orgánico" } }, { @@ -1024,7 +1065,8 @@ "nl": "Er zijn alleen biologische opties beschikbaar", "fr": "Bio uniquement", "ca": "Només hi ha opcions ecològiques disponibles", - "cs": "K dispozici je pouze BIO menu" + "cs": "K dispozici je pouze BIO menu", + "es": "Solo hay opciones orgánicas disponibles" } } ], @@ -1038,13 +1080,16 @@ "fr": "Cette friterie est-elle équipée de snacks végétariens ?", "de": "Hat dieser Frittenladen vegetarische Snacks?", "ca": "Aquesta botiga de patates fregides ofereix snacks vegetarians?", - "cs": "Má tento obchod s hranolky vegetariánské občerstvení?" + "cs": "Má tento obchod s hranolky vegetariánské občerstvení?", + "es": "¿Esta freiduría tiene refrigerios vegetarianos?" }, "mappings": [ { "if": "diet:vegetarian=only", "then": { - "en": "Serves only vegetarian snacks and burgers" + "en": "Serves only vegetarian snacks and burgers", + "de": "Nur vegetarische Snacks und Burger erhältlich", + "es": "Sirve solo refrigerios y hamburguesas vegetarianas" } }, { @@ -1055,7 +1100,8 @@ "fr": "Des collations végétariens sont disponibles", "de": "Vegetarische Snacks sind erhältlich", "ca": "Hi ha snacks vegetarians disponibles", - "cs": "Vegetariánské občerstvení je k dispozici" + "cs": "Vegetariánské občerstvení je k dispozici", + "es": "Hay refrigerios vegetarianos disponibles" } }, { @@ -1066,7 +1112,8 @@ "fr": "Quelques snacks végétariens seulement", "de": "Nur eine kleine Auswahl an vegetarischen Snacks ist erhältlich", "ca": "Només una petita selecció de snacks son vegetarians", - "cs": "Pouze malý výběr občerstvení je vegetariánský" + "cs": "Pouze malý výběr občerstvení je vegetariánský", + "es": "Solo una pequeña selección de refrigerios son vegetarianos" } }, { @@ -1077,7 +1124,8 @@ "fr": "Pas d'en-cas végétariens disponibles", "de": "Es sind keine vegetarischen Snacks erhältlich", "ca": "No hi han sacks disponibles", - "cs": "Vegetariánské občerstvení není k dispozici" + "cs": "Vegetariánské občerstvení není k dispozici", + "es": "No hay refrigerios vegetarianos disponibles" } } ], @@ -1091,13 +1139,16 @@ "fr": "Cette friterie est-elle équipée de snacks végétaliens ?", "de": "Gibt es in dieser Pommesbude auch vegane Snacks?", "ca": "Aquesta botiga de patates fregides té snacks vegans?", - "cs": "Má tento obchod s hranolky veganské občerstvení?" + "cs": "Má tento obchod s hranolky veganské občerstvení?", + "es": "¿Esta freiduría tiene refrigerios veganos?" }, "mappings": [ { "if": "diet:vegan=only", "then": { - "en": "Serves only vegan snacks and burgers" + "en": "Serves only vegan snacks and burgers", + "de": "Nur vegane Snacks und Burger erhältlich", + "es": "Sirve solo refrigerios y hamburguesas veganas" } }, { @@ -1108,7 +1159,8 @@ "fr": "Des collations végétaliens sont disponibles", "de": "Vegane Snacks sind erhältlich", "ca": "Hi han snacks vegans disponibles", - "cs": "Veganské občerstvení je k dispozici" + "cs": "Veganské občerstvení je k dispozici", + "es": "Hay refrigerios veganos disponibles" } }, { @@ -1119,7 +1171,8 @@ "fr": "Quelques snacks végétaliens seulement", "de": "Nur eine kleine Auswahl an veganen Snacks ist erhältlich", "ca": "Hi ha una petita selecció de snacks vegans disponibles", - "cs": "K dispozici je malý výběr veganského občerstvení" + "cs": "K dispozici je malý výběr veganského občerstvení", + "es": "Hay una pequeña selección de refrigerios veganos disponibles" } }, { @@ -1130,7 +1183,8 @@ "fr": "Pas d'en-cas végétaliens disponibles", "de": "Es sind keine veganen Snacks verfügbar", "ca": "No hi ha snacks vegans disponibles", - "cs": "Veganské občerstvení není k dispozici" + "cs": "Veganské občerstvení není k dispozici", + "es": "No hay refrigerios veganos disponibles" } } ], @@ -1143,7 +1197,8 @@ "nl": "Heeft deze frituur biologische snacks?", "de": "Bietet diese Pommesbude biologische Snacks an?", "ca": "Aquesta botiga de patates fregides ofereix snacks orgànics?", - "cs": "Nabízí tento obchod s hranolkami BIO občerstvení?" + "cs": "Nabízí tento obchod s hranolkami BIO občerstvení?", + "es": "¿Esta freiduría ofrece refrigerios orgánicos?" }, "mappings": [ { @@ -1153,7 +1208,8 @@ "nl": "Er zijn biologische snacks aanwezig", "de": "Biologische Snacks sind erhältlich", "ca": "Hi ha disponibles snacks orgànics", - "cs": "K dispozici je BIO občerstvení" + "cs": "K dispozici je BIO občerstvení", + "es": "Hay refrigerios orgánicos disponibles" } }, { @@ -1163,7 +1219,8 @@ "nl": "Geen biologische snacks beschikbaar", "de": "Es sind keine biologischen Snacks erhältlich", "ca": "No hi han disponibles snacks orgànics", - "cs": "Žádné BIO občerstvení k dispozici" + "cs": "Žádné BIO občerstvení k dispozici", + "es": "No hay refrigerios orgánicos disponibles" } }, { @@ -1173,7 +1230,8 @@ "nl": "Enkel biologische snacks zijn beschikbaar", "de": "Es sind nur biologische Snacks erhältlich", "ca": "Només hi han disponibles snacks orgànics", - "cs": "K dispozici je pouze BIO občerstvení" + "cs": "K dispozici je pouze BIO občerstvení", + "es": "Solo hay refrigerios orgánicos disponibles" } } ], @@ -1187,7 +1245,8 @@ "fr": "Cette friteuse fonctionne-t-elle avec de la graisse animale pour la cuisson ?", "de": "Wird in dieser Pommesbude pflanzliches oder tierisches Fett zum Frittieren verwendet?", "ca": "Aquesta botiga de patates fregides utilitza oli vegetal o animal per a cuinar?", - "cs": "Používá tato prodejna hranolek k pečení rostlinný nebo živočišný olej?" + "cs": "Používá tato prodejna hranolek k pečení rostlinný nebo živočišný olej?", + "es": "¿Esta freiduría usa aceite vegetal o animal para cocinar?" }, "mappings": [ { @@ -1227,7 +1286,7 @@ "en": "If you bring your own container (such as a cooking pot and small pots), is it used to package your order?", "ja": "お客様が持参容器(調理用の鍋や小さな鍋など)をもってきた場合は、注文の梱包に使用されますか?", "de": "Wenn Sie Ihr eigenes Behältnis mitbringen (z. B. einen Kochtopf und kleine Töpfe), wird es dann zum Verpacken Ihrer Bestellung verwendet?", - "es": "Si traes tu propio recipiente (como ollas de cocina y ollas pequeñas), ¿se utiliza para empaquetar tu pedido?", + "es": "¿Si traes tu propio recipiente (como una olla y ollas pequeñas), se utiliza para empacar tu pedido?", "ca": "Si portes el teu propi recipient (com olla de cuina o olles menudes), s'utilitza per a empaquetar la teua comanda?", "cs": "Pokud si přinesete vlastní obal (například hrnec na vaření a malé hrnce), používá se k zabalení vaší objednávky?" }, @@ -1240,7 +1299,7 @@ "en": "You can bring your own containers to get your order, saving on single-use packaging material and thus waste", "ja": "自分の容器を持ってきて、注文を受け取ることができ、使い捨ての梱包材を節約して、無駄を省くことができます", "de": "Sie können ihre eigenen Behälter mitbringen, um Ihre Bestellung zu erhalten, was Einwegverpackungsmaterial und damit Abfall spart", - "es": "Puedes traer tus propios recipientes para recoger tu pedido, ahorrando material de un solo uso y por tanto basura", + "es": "Puedes traer tus propios recipientes para recibir tu pedido, ahorrando material de embalaje de un solo uso y, por lo tanto, residuos", "ca": "Pots portar els teus propis recipients per a arreplegar la teua comanda, estalviant material d'un sol ús i, per tant, brossa", "cs": "Pro objednávku si můžete přinést vlastní obaly, čímž ušetříte na jednorázovém obalovém materiálu a tím i odpadu" } @@ -1267,7 +1326,7 @@ "ja": "自身の容器が注文に必要。", "fr": "Il est obligatoire d’apporter ses propres contenants.", "de": "Sie müssen Ihren eigenen Behälter mitbringen, um hier zu bestellen.", - "es": "Debes de traer tu propio recipiente para pedir aquí.", + "es": "Debes traer tu propio recipiente para pedir aquí.", "ca": "Has de portar el teu propi recipient per a demanar aquí.", "cs": "Zde si musíte přinést svůj vlastní obal." } @@ -1332,7 +1391,8 @@ "fr": "Seulement les fastfood", "pl": "Tylko fast-foody", "ca": "Només negocis de menjar ràpid", - "cs": "Pouze podniky rychlého občerstvení" + "cs": "Pouze podniky rychlého občerstvení", + "es": "Solo negocios de comida rápida" }, "osmTags": "amenity=fast_food" }, @@ -1343,7 +1403,8 @@ "fr": "Seulement les restaurants", "pl": "Tylko restauracje", "ca": "Només restaurants", - "cs": "Pouze restaurace" + "cs": "Pouze restaurace", + "es": "Solo restaurantes" }, "osmTags": "amenity=restaurant" } @@ -1407,7 +1468,7 @@ "nl": "Heeft een halal menu", "de": "Halal Gerichte im Angebot", "da": "Har en halalmenu", - "es": "Tiene menú halah", + "es": "Tiene menú halal", "fr": "A un menu halal", "ca": "Té menú halal", "cs": "Má halal menu" @@ -1440,7 +1501,8 @@ "nl": "Dit is eigenlijk een bruin cafe of kroeg", "pl": "To tak naprawdę jest pub", "ca": "Això és en realitat un bar", - "cs": "Tohle je vlastně hospoda" + "cs": "Tohle je vlastně hospoda", + "es": "Esto es en realidad un pub" } }, { @@ -1452,7 +1514,8 @@ "nl": "Dit is eigenlijk een cafe (een plaats waar men rustig kan zitten om een thee, koffie of alcoholische drank te nuttigen)", "pl": "To tak naprawdę jest kawiarnia", "ca": "Això és en realitat un cafè", - "cs": "Tohle je vlastně kavárna" + "cs": "Tohle je vlastně kavárna", + "es": "Esto es en realidad una cafetería" } } ], @@ -1468,11 +1531,12 @@ "nl": "{title()} is permanent gestopt", "en": "{title()} has closed down permanently", "de": "{title()} wurde dauerhaft geschlossen", - "es": "{title()} ha cerrado permanentemente", + "es": "{title()} ha cerrado definitivamente", "fr": "{title()} a fermé définitivement", "pl": "{title()} jest zamknięte na stałe", "ca": "{title()} ha tancat permanentment", - "cs": "{title()} byla trvale uzavřena" + "cs": "{title()} byla trvale uzavřena", + "uk": "{title()} закрився назавжди" }, "changesetMessage": "shop_closed" } diff --git a/assets/layers/food_courts/food_courts.json b/assets/layers/food_courts/food_courts.json index b0f21dbc1..436161b23 100644 --- a/assets/layers/food_courts/food_courts.json +++ b/assets/layers/food_courts/food_courts.json @@ -2,11 +2,13 @@ "id": "food_courts", "name": { "en": "Food Courts", - "de": "Food Courts" + "de": "Food Courts", + "es": "Plazas de comida" }, "description": { "en": "Food courts with a variety of food options.", - "de": "Food-Courts mit einer Vielzahl von Essensmöglichkeiten." + "de": "Food-Courts mit einer Vielzahl von Essensmöglichkeiten.", + "es": "Plazas de comida con una variedad de opciones gastronómicas." }, "source": { "osmTags": "amenity=food_court" @@ -15,7 +17,8 @@ "title": { "render": { "en": "Food Court", - "de": "Food Court" + "de": "Food Court", + "es": "Plaza de comida" }, "mappings": [ { @@ -56,19 +59,22 @@ "id": "name", "question": { "en": "What is the name of this food court?", - "de": "Wie lautet der Name dieses Food-Courts?" + "de": "Wie lautet der Name dieses Food-Courts?", + "es": "¿Cuál es el nombre de esta plaza de comida?" }, "freeform": { "key": "name", "type": "string", "placeholder": { "en": "Name of the food court", - "de": "Name des Food-Courts" + "de": "Name des Food-Courts", + "es": "Nombre de la plaza de comida" } }, "render": { "en": "This food court is called {name}.", - "de": "Dieser Food Court heißt {name}." + "de": "Dieser Food Court heißt {name}.", + "es": "Esta plaza de comida se llama {name}." } }, "reviews", diff --git a/assets/layers/ghost_bike/ghost_bike.json b/assets/layers/ghost_bike/ghost_bike.json index 89b91ec4c..0970f7200 100644 --- a/assets/layers/ghost_bike/ghost_bike.json +++ b/assets/layers/ghost_bike/ghost_bike.json @@ -7,7 +7,7 @@ "it": "Bici fantasma", "fr": "Vélos fantômes", "eo": "Fantombiciklo", - "es": "Bicicletas blanca", + "es": "Bicicletas fantasma", "fi": "Haamupyörä", "gl": "Bicicleta pantasma", "hu": "Emlékkerékpárok", @@ -29,7 +29,8 @@ "fr": "Une couche affichant les mémoriaux en l'hommage de cyclistes tuées lors d'accidents de la route", "pl": "Warstwa pokazujące miejsca upamiętnienia rowerzystów, którzy zginęli w wypadkach drogowych", "ca": "Una capa que mostra monuments commemoratius als ciclistes morts en accidents de trànsit", - "cs": "Vrstva zobrazující pomníky pro cyklisty zabité při dopravních nehodách" + "cs": "Vrstva zobrazující pomníky pro cyklisty zabité při dopravních nehodách", + "es": "Una capa que muestra monumentos conmemorativos para ciclistas, muertos en accidentes de tráfico" }, "source": { "osmTags": "memorial=ghost_bike" @@ -43,7 +44,7 @@ "it": "Bici fantasma", "fr": "Vélo fantôme", "eo": "Fantombiciklo", - "es": "Bicicleta blanca", + "es": "Bicicleta fantasma", "fi": "Haamupyörä", "gl": "Bicicleta pantasma", "hu": "Emlékkerékpár", @@ -68,7 +69,8 @@ "it": "Bici fantasma in ricordo di {subject}", "fr": "Vélo fantôme en souvenir de {subject}", "ca": "Bicicleta fantasma en el record de {subject}", - "cs": "Kolo duchů na památku {subject}" + "cs": "Kolo duchů na památku {subject}", + "es": "Bicicleta fantasma en memoria de {subject}" } }, { @@ -80,7 +82,8 @@ "it": "Bici fantasma in ricordo di {name}", "fr": "Vélo fantôme en souvenir de {name}", "ca": "Bicicleta fantasma en el record de {name}", - "cs": "Kolo duchů na památku {name}" + "cs": "Kolo duchů na památku {name}", + "es": "Bicicleta fantasma en memoria de {name}" } } ] @@ -110,7 +113,7 @@ "it": "una bici fantasma", "fr": "une vélo fantôme", "eo": "Fantombiciklo", - "es": "una bicicleta blanca", + "es": "una bicicleta fantasma", "fi": "Haamupyörä", "gl": "Bicicleta pantasma", "hu": "Emlékkerékpár", @@ -132,7 +135,8 @@ "it": "Una bici fantasma è il memoriale di un ciclista che è morto in un incidente stradale e che ha la forma di una bicicletta bianca piazzata in maniera stabile vicino al luogo dell’incidente.", "fr": "Un vélo fantôme est un monument commémoratif pour un cycliste décédé dans un accident de la route, sous la forme d'un vélo blanc placé en permanence près du lieu de l'accident.", "ca": "Una bicicleta fantasma és un memorial per a un ciclista que va morir en un accident de trànsit, en forma de bicicleta blanca col·locada permanentment a prop del lloc de l'accident.", - "cs": "kolo duchů je památník cyklisty, který zemřel při dopravní nehodě, v podobě bílého kola umístěného trvale v blízkosti místa nehody." + "cs": "kolo duchů je památník cyklisty, který zemřel při dopravní nehodě, v podobě bílého kola umístěného trvale v blízkosti místa nehody.", + "es": "Una bicicleta fantasma es un monumento conmemorativo para un ciclista que murió en un accidente de tráfico, en forma de una bicicleta blanca colocada permanentemente cerca del lugar del accidente." }, "tags": [ "historic=memorial", @@ -142,7 +146,7 @@ ], "tagRenderings": [ "preset_description", - "images", + "images_no_blur", { "question": { "en": "Whom is remembered by this ghost bike?", @@ -151,7 +155,8 @@ "it": "A chi è dedicata questa bici fantasma?", "fr": "À qui est dédié ce vélo fantôme ?", "ca": "A qui recorda aquesta bicicleta fantasma?", - "cs": "Na koho vzpomíná toto kolo duchů?" + "cs": "Na koho vzpomíná toto kolo duchů?", + "es": "¿A quién recuerda esta bicicleta fantasma?" }, "render": { "en": "In remembrance of {subject}", @@ -161,7 +166,8 @@ "fr": "En souvenir de {subject}", "ru": "В знак памяти о {subject}", "ca": "En record de {subject}", - "cs": "Na památku {subject}" + "cs": "Na památku {subject}", + "es": "En memoria de {subject}" }, "freeform": { "key": "subject", @@ -182,7 +188,8 @@ "ru": "В знак памяти о {name}", "ca": "En record de {name}", "pl": "Ku pamięci {name}", - "cs": "Na památku {name}" + "cs": "Na památku {name}", + "es": "En memoria de {name}" }, "hideInAnswer": true }, @@ -195,7 +202,8 @@ "it": "Nessun nome scritto sulla bici", "fr": "Aucun nom n'est marqué sur le vélo", "ca": "No hi ha cap nom marcat a la bicicleta", - "cs": "Na kole není vyznačeno žádné jméno" + "cs": "Na kole není vyznačeno žádné jméno", + "es": "No hay nombre marcado en la bicicleta" }, "addExtraTags": [ "name=", @@ -211,7 +219,8 @@ "it": "Rispetta la privacy (compila solo il nome se questo è stato ampiamente pubblicato o se è scritto sulla bici). Decidi se è il caso di non inserire il cognome.", "fr": "Veuillez respecter la vie privée – ajoutez le nom seulement s'il est largement publié ou marqué sur le vélo. Choisissez de ne pas indiquer le nom de famille.", "ca": "Si us plau, respecteu la privadesa: només ompliu el nom si està àmpliament publicat o marcat a la bicicleta. Opta per deixar de banda el cognom.", - "cs": "Respektujte prosím soukromí – jméno vyplňte pouze v případě, že je široce publikováno nebo označeno na cyklu. Rozhodněte se vynechat příjmení." + "cs": "Respektujte prosím soukromí – jméno vyplňte pouze v případě, že je široce publikováno nebo označeno na cyklu. Rozhodněte se vynechat příjmení.", + "es": "Respeta la privacidad: solo completa el nombre si se publica ampliamente o está marcado en la bicicleta. Opta por omitir el apellido." } }, { @@ -222,7 +231,8 @@ "it": "In quale pagina web si possono trovare informazioni sulla bici fantasma o l’incidente?", "fr": "Sur quelle page web peut-on trouver plus d'informations sur le Vélo fantôme ou l'accident ?", "ca": "En quina pàgina web es pot trobar més informació sobre la bicicleta blanca o l'accident?", - "cs": "Na jakém webu lze najít více informací o kole ducha nebo nehodě?" + "cs": "Na jakém webu lze najít více informací o kole ducha nebo nehodě?", + "es": "¿En qué página web se puede encontrar más información sobre la bicicleta fantasma o el accidente?" }, "render": { "special": { @@ -237,7 +247,8 @@ "fr": "Plus d'informations sont disponibles", "id": "Informasi lanjut tersedia", "ca": "Més informació disponible", - "cs": "Více informací k dispozici" + "cs": "Více informací k dispozici", + "es": "Más información disponible" } } }, @@ -255,7 +266,9 @@ "it": "Che cosa è scritto sulla bici fantasma?", "fr": "Quelle est l'inscription sur ce vélo fantôme ?", "ca": "Quina és la inscripció d'aquesta bicicleta fantasma?", - "cs": "Jaký je nápis na tomto kole duchů?" + "cs": "Jaký je nápis na tomto kole duchů?", + "uk": "Який напис на цьому примарному велосипеді?", + "es": "¿Cuál es la inscripción en esta bicicleta fantasma?" }, "render": { "en": "{inscription}", @@ -267,7 +280,9 @@ "ru": "{inscription}", "id": "{inscription}", "cs": "{inscription}", - "pl": "{inscription}" + "pl": "{inscription}", + "uk": "{inscription}", + "es": "{inscription}" }, "freeform": { "key": "inscription" @@ -282,7 +297,8 @@ "fr": "Quand ce vélo fantôme a-t-il été installée ?", "de": "Wann wurde dieses Geisterrad aufgestellt?", "ca": "Quan es va instal·lar aquesta bicicleta Ghost?", - "cs": "Kdy bylo toto kolo duchů nainstalováno?" + "cs": "Kdy bylo toto kolo duchů nainstalováno?", + "es": "¿Cuándo se instaló esta bicicleta fantasma?" }, "render": { "nl": "Geplaatst op {start_date}", @@ -292,7 +308,8 @@ "ru": "Установлен {start_date}", "de": "Aufgestellt am {start_date}", "ca": "Col·locat el {start_date}", - "cs": "Umístěno {start_date}" + "cs": "Umístěno {start_date}", + "es": "Colocación: {start_date}" }, "freeform": { "key": "start_date", @@ -309,7 +326,8 @@ }, "before": { "en": "

Wikipedia page about the deceased person

", - "de": "

Wikipedia-Seite über die verstorbene Person

" + "de": "

Wikipedia-Seite über die verstorbene Person

", + "es": "

Página de Wikipedia sobre la persona fallecida

" } }, "condition": "subject:wikidata~*" diff --git a/assets/layers/ghostsign/ghostsign.json b/assets/layers/ghostsign/ghostsign.json index 3e25ee744..77fa8cf37 100644 --- a/assets/layers/ghostsign/ghostsign.json +++ b/assets/layers/ghostsign/ghostsign.json @@ -4,7 +4,7 @@ "render": { "en": "Ghost Sign", "de": "Geisterzeichen", - "es": "Publicidad en una fachada", + "es": "Letrero fantasma", "ca": "Rètols fantasma", "cs": "Nápisy na zdech" } @@ -12,14 +12,14 @@ "description": { "en": "Layer showing disused signs on buildings", "de": "Ebene, die ungenutzte Zeichen auf Gebäuden zeigt", - "es": "Capa que muestra carteles en desuso en edificios", + "es": "Capa que muestra letreros en desuso en edificios", "ca": "Capa que mostra rètols en desús dels edificis", "cs": "Vrstva zobrazující nepoužívané nápisy na budovách" }, "name": { "en": "Ghost Signs", "de": "Geisterzeichen", - "es": "Señales fantasma" + "es": "Letreros fantasma" }, "source": { "osmTags": { @@ -44,8 +44,9 @@ "question": { "en": "What is the text on the sign?", "de": "Was ist der Text auf dem Schild?", - "es": "¿Cuál es el texto del cartel?", - "ca": "Quin és el text del rètol?" + "es": "¿Cuál es el texto en el letrero?", + "ca": "Quin és el text del rètol?", + "uk": "Який текст на вивісці?" }, "freeform": { "key": "inscription", @@ -53,14 +54,16 @@ "placeholder": { "en": "Text on the sign", "de": "Text auf dem Schild", - "es": "Texto en el cartel", - "ca": "Text en el rètol" + "es": "Texto en el letrero", + "ca": "Text en el rètol", + "uk": "Текст на табличці" } }, "render": { "en": "The text on the sign is: {inscription}", "de": "Der Text auf dem Schild ist: {inscription}", - "es": "El texto del cartel es: {inscription}" + "es": "El texto en el letrero es: {inscription}", + "uk": "Текст на табличці: {inscription}" } }, { @@ -68,7 +71,7 @@ "question": { "en": "For what business was this sign made?", "de": "Für welches Unternehmen wurde dieses Schild angefertigt?", - "es": "¿Para qué negocio se hizo este cartel?", + "es": "¿Para qué negocio se hizo este letrero?", "ca": "Per a quin negoci es va fer aquest rètol?", "cs": "Pro jaký účel byla tato značka vyrobena?" }, @@ -78,7 +81,7 @@ "placeholder": { "en": "Business name", "de": "Unternehmensname", - "es": "Nombre comercial", + "es": "Nombre del negocio", "it": "Nome dell'attività", "ca": "Nom comercial", "cs": "Název firmy" @@ -87,7 +90,7 @@ "render": { "en": "This sign was made for: {brand}", "de": "Dieses Schild wurde gemacht für: {brand}", - "es": "Este cartel se hizo para: {brand}", + "es": "Este letrero se hizo para: {brand}", "ca": "El rètol es va fer per a: {brand}", "cs": "Tato cedule byla vyrobena pro: {brand}" } @@ -121,7 +124,7 @@ "title": { "en": "a ghost sign", "de": "ein Geisterzeichen", - "es": "una señal fantasma", + "es": "un letrero fantasma", "ca": "un rètol fantasma", "cs": "nápis na zdi" }, diff --git a/assets/layers/governments/governments.json b/assets/layers/governments/governments.json index b3228b070..e5dbb0184 100644 --- a/assets/layers/governments/governments.json +++ b/assets/layers/governments/governments.json @@ -6,14 +6,16 @@ "nl": "Overheidsdiensten", "pa_PK": "سرکارسں", "ca": "Governs", - "cs": "vlády" + "cs": "vlády", + "es": "Edificios gubernamentales" }, "description": { "en": "This layer show governmental buildings. It was setup as commissioned layer for the client of OSOC '22", "de": "Diese Ebene zeigt Gebäude der öffentlichen Verwaltung. Sie wurde im Auftrag für den Kunden von OSOC '22 erstellt", "nl": "Deze laag toont overheidsgebouwen. Opgezet voor OSOC '22", "ca": "Aquesta capa mostra edificis governamentals. Es va configurar com a capa encarregada per al client d'OSOC '22", - "cs": "Tato vrstva zobrazuje vládní budovy. Byla nastavena jako zprovozněná vrstva pro klienta OSOC '22" + "cs": "Tato vrstva zobrazuje vládní budovy. Byla nastavena jako zprovozněná vrstva pro klienta OSOC '22", + "es": "Esta capa muestra edificios gubernamentales. Se configuró como capa encargada para el cliente de OSOC '22" }, "source": { "osmTags": { @@ -29,7 +31,8 @@ "de": "Behörde {name}", "nl": "Overheidsdienst {name}", "ca": "Oficina governamental {name}", - "cs": "Vládní úřad {name}" + "cs": "Vládní úřad {name}", + "es": "Oficina gubernamental {name}" } }, "pointRendering": [ @@ -59,7 +62,8 @@ "de": "ein Büro der öffentlichen Verwaltung", "nl": "een overheidsdienst", "ca": "una oficina Governamental", - "cs": "vládní úřad" + "cs": "vládní úřad", + "es": "una oficina gubernamental" }, "tags": [ "office=government" @@ -77,14 +81,16 @@ "de": "Wie lautet der Name dieser Behörde?", "nl": "Wat is de naam van deze overheidsdienst?", "ca": "Quin és el nom d'aquesta oficina gornavental?", - "cs": "Jak se jmenuje tento úřad vlády?" + "cs": "Jak se jmenuje tento úřad vlády?", + "es": "¿Cuál es el nombre de esta oficina gubernamental?" }, "render": { "en": "This Governmental Office is called {name}", "de": "Der Name der Behörde lautet {name}", "nl": "Deze overheidsdienst heet {name}", "ca": "Aquesta Oficina Governamental s'anomena {name}", - "cs": "Tento vládní úřad se jmenuje {name}" + "cs": "Tento vládní úřad se jmenuje {name}", + "es": "Esta oficina gubernamental se llama {name}" }, "freeform": { "key": "name" diff --git a/assets/layers/gps_track/gps_track.json b/assets/layers/gps_track/gps_track.json index 3f7f771a2..c827be9c1 100644 --- a/assets/layers/gps_track/gps_track.json +++ b/assets/layers/gps_track/gps_track.json @@ -7,7 +7,10 @@ "fr": "Votre chemin parcouru", "da": "Dit tilbagelagte spor", "ca": "La teva traça recorreguda", - "cs": "Vaše procestovaná trasa" + "cs": "Vaše procestovaná trasa", + "ru": "Ваш пройденный путь", + "uk": "Твій пройдений шлях", + "es": "Tu traza recorrida" }, "description": "Meta layer showing the previous locations of the user as single line with controls, e.g. to erase, upload or download this track. Add this to your theme and override the maprendering to change the appearance of the travelled track.", "source": "special", @@ -20,7 +23,8 @@ "de": "Deine zurückgelegte Strecke", "ca": "El teu camí recorregut", "fr": "Votre chemin", - "cs": "Ujetá cesta" + "cs": "Ujetá cesta", + "es": "Tu traza recorrida" } }, "pointRendering": [ @@ -54,7 +58,8 @@ "de": "Dies ist der Weg, den Sie seit dem Besuch dieser Webseite zurückgelegt haben. Keine Sorge - diese Daten sind nur für Sie sichtbar und für niemanden sonst. Ihre Standortdaten werden niemals an ein anderes Gerät gesendet.", "fr": "C'est le chemin que vous avez parcouru depuis l'ouverture de ce site. Ne vous inquiétez pas - ceci n'est visible que pour vous et personne d'autre. Vos données de localisation ne sont jamais envoyées hors de l'appareil.", "ca": "Aquest és el camí que heu recorregut des que s'ha obert aquest lloc web. No et preocupis: això només és visible per a tu i ningú més. Les vostres dades d'ubicació mai s'envien fora del dispositiu.", - "cs": "To je cesta, kterou jste urazili od otevření těchto webových stránek. Nemějte obavy - je viditelná pouze pro vás a pro nikoho jiného. Údaje o vaší poloze nejsou nikdy odesílány mimo zařízení." + "cs": "To je cesta, kterou jste urazili od otevření těchto webových stránek. Nemějte obavy - je viditelná pouze pro vás a pro nikoho jiného. Údaje o vaší poloze nejsou nikdy odesílány mimo zařízení.", + "es": "Esta es la traza que has recorrido desde que se abrió este sitio web. No te preocupes, solo tú puedes verla y nadie más. Tus datos de ubicación nunca se envían fuera del dispositivo." } }, "export_as_gpx", diff --git a/assets/layers/grave/grave.json b/assets/layers/grave/grave.json index b24307fc0..47042a7d3 100644 --- a/assets/layers/grave/grave.json +++ b/assets/layers/grave/grave.json @@ -2,11 +2,13 @@ "id": "grave", "name": { "en": "Gravestones", - "de": "Grabsteine" + "de": "Grabsteine", + "es": "Lápidas" }, "description": { "en": "Tombstones (and graves) indicate where a person was buried. On this map, those can be recorded and a link to Wikipedia can be made", - "de": "Grabsteine (und Gräber) zeigen an, wo eine Person begraben wurde. Auf dieser Karte können diese aufgezeichnet werden und ein Wikipedialink erstellt werden" + "de": "Grabsteine (und Gräber) zeigen an, wo eine Person begraben wurde. Auf dieser Karte können diese aufgezeichnet werden und ein Wikipedialink erstellt werden", + "es": "Las lápidas (y las tumbas) indican dónde fue enterrada una persona. En este mapa, estas pueden registrarse y se puede establecer un enlace a Wikipedia" }, "source": { "osmTags": "historic=tomb" @@ -15,7 +17,8 @@ "title": { "render": { "en": "Tombstone", - "de": "Grabstein" + "de": "Grabstein", + "es": "Lápida" } }, "pointRendering": [ @@ -39,14 +42,17 @@ { "title": { "en": "a tombstone", - "de": "ein Grabstein" + "de": "ein Grabstein", + "es": "una lápida" }, "tags": [ "historic=tomb" ], "description": { "en": "A tombstone is a physical object which indicates that one or more persons are buried here. It generally has the name, birth date and death date of the person or persons as inscription.", - "de": "Ein Grabstein ist ein physischer Gegenstand, der anzeigt, dass eine oder mehrere Personen hier begraben sind. Er trägt in der Regel den Namen, das Geburts- und das Sterbedatum der Person oder Personen als Inschrift." + "de": "Ein Grabstein ist ein physischer Gegenstand, der anzeigt, dass eine oder mehrere Personen hier begraben sind. Er trägt in der Regel den Namen, das Geburts- und das Sterbedatum der Person oder Personen als Inschrift.", + "uk": "Надгробок - це фізичний об'єкт, який вказує на те, що тут похована одна або кілька осіб. Як правило, на ньому викарбувано ім'я, дату народження та дату смерті особи чи осіб.", + "es": "Una lápida es un objeto físico que indica que una o más personas están enterradas aquí. Generalmente tiene el nombre, la fecha de nacimiento y la fecha de defunción de la persona o personas como inscripción." } } ], @@ -55,12 +61,14 @@ { "question": { "en": "What is the Wikipedia page of the person buried here?", - "de": "Wie lautet die Wikipedia-Seite der Person, die hier begraben ist?" + "de": "Wie lautet die Wikipedia-Seite der Person, die hier begraben ist?", + "es": "¿Cuál es la página de Wikipedia de la persona enterrada aquí?" }, "id": "buried:wikidata", "render": { "en": "{wikipedia(buried:wikidata)}", - "de": "{wikipedia(buried:wikidata)}" + "de": "{wikipedia(buried:wikidata)}", + "es": "{wikipedia(buried:wikidata)}" }, "freeform": { "key": "buried:wikidata", @@ -70,12 +78,14 @@ { "question": { "en": "What is the name of the person buried here?", - "de": "Wie lautet der Name der hier begrabenen Person?" + "de": "Wie lautet der Name der hier begrabenen Person?", + "es": "¿Cuál es el nombre de la persona enterrada aquí?" }, "id": "name", "render": { "en": "{name} is buried here", - "de": "{name} ist hier begraben" + "de": "{name} ist hier begraben", + "es": "{name} está enterrado aquí" }, "freeform": { "key": "name" @@ -89,20 +99,23 @@ { "question": { "en": "With or without wikidata", - "de": "Mit oder ohne Wikidata" + "de": "Mit oder ohne Wikidata", + "es": "Con o sin Wikidata" } }, { "question": { "en": "Has a link to Wikidata", - "de": "Hat einen Link zu Wikidata" + "de": "Hat einen Link zu Wikidata", + "es": "Tiene enlace a Wikidata" }, "osmTags": "buried:wikidata~*" }, { "question": { "en": "Has no link to Wikidata", - "de": "Hat keinen Link zu Wikidata" + "de": "Hat keinen Link zu Wikidata", + "es": "No tiene enlace a Wikidata" }, "osmTags": "buried:wikidata=" } diff --git a/assets/layers/guidepost/guidepost.json b/assets/layers/guidepost/guidepost.json index 45c8aae2f..de1cceed9 100644 --- a/assets/layers/guidepost/guidepost.json +++ b/assets/layers/guidepost/guidepost.json @@ -3,12 +3,14 @@ "name": { "en": "Guideposts", "cs": "Rozcestníky", - "de": "Wegweiser" + "de": "Wegweiser", + "es": "Postes indicadores" }, "description": { "en": "Guideposts (also known as fingerposts or finger posts) are often found along official hiking/cycling/riding/skiing routes to indicate the directions to different destinations", "cs": "Podél oficiálních turistických/cyklistických/jezdeckých/lyžařských tras se často nacházejí rozcestníky (také známé jako ukazatel směru nebo značky), které ukazují směry k různým cílům", - "de": "Wegweiser (auch als Wegzeiger oder Fingerschilder bekannt) sind entlang offizieller Wander-, Radfahr-, Reit- oder Skirouten oft zu finden, um die Richtungen zu verschiedenen Zielen anzuzeigen" + "de": "Wegweiser (auch als Wegzeiger oder Fingerschilder bekannt) sind entlang offizieller Wander-, Radfahr-, Reit- oder Skirouten oft zu finden, um die Richtungen zu verschiedenen Zielen anzuzeigen", + "es": "Los postes indicadores (también conocidos como señales o hitos) a menudo se encuentran a lo largo de rutas oficiales de senderismo/ciclismo/equitación/esquí para indicar las direcciones a diferentes destinos" }, "source": { "osmTags": "information=guidepost" @@ -17,7 +19,8 @@ "title": { "en": "Guideposts", "cs": "Rozcestník", - "de": "Wegweiser" + "de": "Wegweiser", + "es": "Postes indicadores" }, "pointRendering": [ { @@ -38,7 +41,8 @@ "title": { "en": "a guidepost", "cs": "rozcestník", - "de": "ein Wegweiser" + "de": "ein Wegweiser", + "es": "un poste indicador" }, "tags": [ "information=guidepost", @@ -47,7 +51,8 @@ "description": { "en": "A guidepost (also known as fingerpost) is often found along official hiking/cycling/riding/skiing routes to indicate the directions to different destinations", "cs": "Rozcestník (také známý jako ukazatel směru) se často nachází podél oficiálních turistických / cyklistických / jezdeckých / lyžařských tras, které ukazují směry k různým destinacím", - "de": "Ein Wegweiser (auch bekannt als Fingerschild) wird oft entlang offizieller Wander-, Radfahr-, Reit- oder Skirouten gefunden, um die Richtungen zu verschiedenen Zielen anzuzeigen" + "de": "Ein Wegweiser (auch bekannt als Fingerschild) wird oft entlang offizieller Wander-, Radfahr-, Reit- oder Skirouten gefunden, um die Richtungen zu verschiedenen Zielen anzuzeigen", + "es": "Un poste indicador (también conocido como señal) a menudo se encuentra a lo largo de rutas oficiales de senderismo/ciclismo/equitación/esquí para indicar las direcciones a diferentes destinos" }, "exampleImages": [ "./assets/layers/guidepost/guidepost_example.jpg" @@ -61,7 +66,8 @@ "question": { "en": "What kind of routes are shown on this guidepost?", "de": "Welche Arten von Routen werden auf diesem Wegweiser angezeigt?", - "fr": "Quel type d'itinéraire indique ce panneau ?" + "fr": "Quel type d'itinéraire indique ce panneau ?", + "es": "¿Qué tipo de rutas se muestran en este poste indicador?" }, "multiAnswer": true, "mappings": [ @@ -71,7 +77,8 @@ "then": { "en": "This guidepost shows bicycle routes", "de": "Dieser Wegweiser zeigt Fahrradwege", - "fr": "Un itinéraire vélo" + "fr": "Un itinéraire vélo", + "es": "Este poste indicador muestra rutas de bicicleta" } }, { @@ -80,7 +87,8 @@ "then": { "en": "This guidepost shows hiking routes", "de": "Dieser Wegweiser zeigt Wanderwege", - "fr": "un itinéraire de randonnée" + "fr": "un itinéraire de randonnée", + "es": "Este poste indicador muestra rutas de senderismo" } }, { @@ -89,7 +97,8 @@ "then": { "en": "This guidepost shows mountain bike routes", "de": "Dieser Wegweiser zeigt Mountainbike-Routen", - "fr": "un itinéraire de vtt" + "fr": "un itinéraire de vtt", + "es": "Este poste indicador muestra rutas de bicicleta de montaña" } }, { @@ -98,7 +107,8 @@ "then": { "en": "This guidepost shows horse riding routes", "de": "Dieser Wegweiser zeigt Reitwege", - "fr": "un itinéraire équestre" + "fr": "un itinéraire équestre", + "es": "Este poste indicador muestra rutas a caballo" } }, { @@ -107,7 +117,8 @@ "then": { "en": "This guidepost shows ski routes", "de": "Dieser Wegweiser zeigt Skirouten", - "fr": "un itinéraire de pistes de ski" + "fr": "un itinéraire de pistes de ski", + "es": "Este poste indicador muestra rutas de esquí" } } ] diff --git a/assets/layers/hackerspace/hackerspace.json b/assets/layers/hackerspace/hackerspace.json index 4e63bcfa1..0aaa1e8e5 100644 --- a/assets/layers/hackerspace/hackerspace.json +++ b/assets/layers/hackerspace/hackerspace.json @@ -6,7 +6,7 @@ "ru": "Хакерспейс", "zh_Hant": "駭客空間", "hu": "Hackerspace", - "es": "Espacio hacker", + "es": "Hackerspace", "nl": "Hackerspace", "pa_PK": "ہیکر دا تھاں", "ca": "Espai hacker", @@ -18,7 +18,7 @@ "ru": "Хакерспейс", "zh_Hant": "駭客空間", "hu": "Hackerspace", - "es": "Espacio hacker", + "es": "Hackerspace", "nl": "Hackerspace", "pa_PK": "ہیکر دا تھاں", "ca": "Espai hacker", @@ -39,7 +39,7 @@ "ru": "Хакерспейс", "zh_Hant": "駭客空間", "hu": "Hackerspace", - "es": "Espacio Hacker", + "es": "Hackerspace", "nl": "Hackerspace", "ca": "Espai hacker", "cs": "Hackerspace" @@ -109,7 +109,7 @@ "ru": "Хакерспейс", "zh_Hant": "駭客空間", "hu": "Hackerspace", - "es": "un espacio hacker", + "es": "un hackerspace", "nl": "een hackerspace", "ca": "un espai hacker", "cs": "hackerspace" @@ -119,7 +119,7 @@ "de": "Ein Hackerspace ist ein Ort, an dem sich Menschen treffen, die sich für Software interessieren", "zh_Hant": "駭客空間是對軟體有興趣的人聚集的地方", "hu": "A hackerspace egy olyan hely, ahol szoftverek iránt érdeklő emberek találkoznak", - "es": "Un espacio hacker es un lugar en el que gente interesada en software se reúne", + "es": "Un hackerspace es un área donde se reúnen personas interesadas en software", "nl": "Een hackerspace is een ruimte waar mensen met een interesse in software samenkomen", "ca": "Un espai hacker és un lloc on la gent interesada en el software es reuneix", "cs": "Hackerspace je oblast, kde se shromažďují lidé se zájmem o software" @@ -135,7 +135,7 @@ "de": "einen Makerspace", "zh_Hant": "創客空間", "hu": "Makerspace", - "es": "un espacio maker", + "es": "un makerspace", "nl": "een makerspace", "ca": "un espai maker" }, @@ -144,7 +144,7 @@ "de": "Ein Makerspace ist ein Ort, an dem Heimwerker-Enthusiasten zusammenkommen, um mit Elektronik zu experimentieren, wie Arduino, LED-Strips, …", "zh_Hant": "創客空間是 DIY 愛好者聚集在一起弄電子零件實驗,例如用 arduino、LEDstrips 等...", "hu": "A makerspace olyan hely, ahol a barkácsolás szerelmesei találkoznak, hogy olyan elektronikai eszközökkel kísérletezzenek, mint például az Arduino vagy a LEDstrips…", - "es": "Un espacio maker es un lugar donde entusiastas del DIY se reúnen para experimentar con electrónica, como arduino, …", + "es": "Un makerspace es un lugar donde se reúnen entusiastas del bricolaje para experimentar con electrónica como arduino, tiras de LED, etc.", "nl": "Een makerspace is een ruimte waar makers en creatievelingen samenkomen om met electronica te experimenteren en te bouwen, bv. met Arduino, LED-strips, 3D-printers, lasercutters, …", "ca": "Un espai maker és un lloc on entusiastes del DIY es reuneixen per a experimentar amb electrònica com arudino, tires LED, …", "cs": "Makerspace je místo, kde se scházejí kutilové, aby experimentovali s elektronikou, jako je arduino, LED pásky,…" @@ -161,7 +161,7 @@ "de": "Ist dies ein Hackerspace oder ein Makerspace?", "zh_Hant": "這邊是駭客空間還是創客空間?", "hu": "Ez hackerspace vagy makerspace?", - "es": "¿Esto es un espacio hacker o un espacio maker?", + "es": "¿Es un hackerspace o un makerspace?", "nl": "Is dit een hackerspace of een makerspace?", "ca": "Açò és un espai hacker o un espai maker?", "cs": "Je to hackerspace nebo makerspace?" @@ -174,7 +174,7 @@ "de": "Dies ist ein Makerspace", "zh_Hant": "這是創客空間", "hu": "Ez egy makerspace", - "es": "Este es un espacio maker", + "es": "Este es un makerspace", "nl": "Dit is een makerspace", "ca": "Aquest és un espai maker", "cs": "Toto je makerspace" @@ -187,7 +187,7 @@ "de": "Dies ist ein traditioneller (softwareorientierter) Hackerspace", "zh_Hant": "這是傳統的 (軟體導向) 駭客空間", "hu": "Ez egy hagyományos (szoftverekkel foglalkozó) hackerspace", - "es": "Este es un espacio hacker tradicional (orientado al software)", + "es": "Este es un hackerspace tradicional (orientado al software)", "nl": "Dit een een traditionele (software-gerichte) hackerspace", "ca": "Aquest és un espai hacker tradicional (orientat al software)", "cs": "Toto je tradiční (softwarově orientovaný) hackerský prostor" @@ -197,7 +197,9 @@ "if": "hackerspace=hacklab", "then": { "en": "This is a hacklab which is mostly focussed on basic computer skills, using recycled devices and/or providing internet to the community. This is typically located in autonomous spaces, squats or social facilities", - "de": "Dies ist ein Hackerspace/Hack-Lab, das sich hauptsächlich auf grundlegende Computerkenntnisse konzentriert, recycelte Geräte verwendet und/oder der Gemeinschaft Internet bereitstellt. Es befindet sich typischerweise in autonomen Räumen, besetzten Häusern oder sozialen Einrichtungen" + "de": "Dies ist ein Hackerspace/Hack-Lab, das sich hauptsächlich auf grundlegende Computerkenntnisse konzentriert, recycelte Geräte verwendet und/oder der Gemeinschaft Internet bereitstellt. Es befindet sich typischerweise in autonomen Räumen, besetzten Häusern oder sozialen Einrichtungen", + "uk": "Це хак-лабораторія, яка здебільшого зосереджена на базових комп'ютерних навичках, використовує перероблені пристрої та/або надає доступ до Інтернету громаді. Зазвичай вони розташовані в автономних приміщеннях, сквотах або соціальних об'єктах", + "es": "Este es un hacklab que se centra principalmente en habilidades informáticas básicas, utilizando dispositivos reciclados y/o proporcionando internet a la comunidad. Por lo general, se encuentra en espacios autónomos, okupas o instalaciones sociales" } } ] @@ -207,7 +209,7 @@ "en": "What is the name of this hackerspace?", "de": "Wie lautet der Name dieses Hackerspace?", "zh_Hant": "這個駭客空間的名稱是?", - "es": "¿Cual es el nombre de este espacio hacker?", + "es": "¿Cuál es el nombre de este hackerspace?", "nl": "Wat is de naam van deze hackerspace?", "ca": "Quin és el nom d'aquest espai hacker?", "cs": "Jak se jmenuje tento hackerspace?" @@ -216,7 +218,7 @@ "en": "This hackerspace is named {name}", "de": "Dieser Hackerspace heißt {name}", "zh_Hant": "這個駭客空間叫 {name}", - "es": "Este espacio hacker se llama {name}", + "es": "Este hackerspace se llama {name}", "nl": "Deze hackerspace heet {name}", "ca": "Aquest espai hacker es diu {name}", "cs": "Tento hackerský prostor se jmenuje {name}" @@ -238,7 +240,7 @@ "en": "When is this hackerspace opened?", "de": "Wann hat dieser Hackerspace geöffnet?", "zh_Hant": "這個駭客空間的營業時間?", - "es": "¿Cuándo está abierto este espacio hacker?", + "es": "¿Cuándo está abierto este hackerspace?", "nl": "Wanneer is deze hackerspace geopend?", "ca": "Quan obri aquest espai hacker?", "cs": "Kdy je tento prostor hackerů otevřen?" @@ -263,14 +265,16 @@ "nl": "een 3D-printer", "de": "einen 3D-Drucker", "ca": "una impressora 3D", - "cs": "3D tiskárna" + "cs": "3D tiskárna", + "es": "una impresora 3D" }, { "en": "3D-printer", "nl": "3D-printer", "de": "3D-Drucker", "ca": "Impressora 3D", - "cs": "3D-tiskárna" + "cs": "3D-tiskárna", + "es": "impresora 3D" }, "./assets/layers/hackerspace/3d_printer.svg", true @@ -282,14 +286,16 @@ "nl": "een lasercutter", "de": "einen Laserschneider", "ca": "un tallador laser", - "cs": "laserová řezačka" + "cs": "laserová řezačka", + "es": "una cortadora láser" }, { "en": "laser cutter", "nl": "lasercutter", "de": "Laserschneider", "ca": "tallador laser", - "cs": "laserová řezačka" + "cs": "laserová řezačka", + "es": "cortadora láser" }, "./assets/layers/hackerspace/lasercutter.svg", true @@ -301,14 +307,16 @@ "nl": "een CNC-boormachine", "de": "eine CNC-Fräse", "ca": "un trepant CNC", - "cs": "CNC vrtačka" + "cs": "CNC vrtačka", + "es": "un taladro CNC" }, { "en": "CNC drill", "nl": "CNC-boormachine", "de": "CNC-Fräse", "ca": "trepant CNC", - "cs": "CNC vrtačka" + "cs": "CNC vrtačka", + "es": "taladro CNC" }, "./assets/layers/hackerspace/cnc.svg", true @@ -318,12 +326,14 @@ { "en": "a multimedia studio", "nl": "een multimedia-studio", - "de": "ein Multimediastudio" + "de": "ein Multimediastudio", + "es": "un estudio multimedia" }, { "en": "multimedia studio", "nl": "multimedia-studio", - "de": "Multimediastudio" + "de": "Multimediastudio", + "es": "estudio multimedia" }, "./assets/layers/hackerspace/media_studio.svg", false @@ -333,12 +343,14 @@ { "en": "a sewing machine", "de": "eine Nähmaschine", - "nl": "een naaimachine" + "nl": "een naaimachine", + "es": "una máquina de coser" }, { "en": "sewing machine", "de": "Nähmaschine", - "nl": "naaimachine" + "nl": "naaimachine", + "es": "máquina de coser" }, "./assets/layers/hackerspace/sewing_machine.svg", true @@ -348,12 +360,14 @@ { "en": "a woodworking workshop", "nl": "een houtbewerkingsatelier", - "de": "eine Holzwerkstatt" + "de": "eine Holzwerkstatt", + "es": "un taller de carpintería" }, { "en": "woodworking workshop", "nl": "houtbewerkingsatelier", - "de": "Holzwerkstatt" + "de": "Holzwerkstatt", + "es": "taller de carpintería" }, "./assets/layers/hackerspace/woodworking.svg", false @@ -363,12 +377,14 @@ { "en": "a ceramics workshop", "nl": "een keramiekatelier", - "de": "eine Keramikwerkstatt" + "de": "eine Keramikwerkstatt", + "es": "un taller de cerámica" }, { "en": "ceramics workshop", "nl": "keramiekatelier", - "de": "Keramikwerkstatt" + "de": "Keramikwerkstatt", + "es": "taller de cerámica" }, "./assets/layers/hackerspace/ceramics.svg", false @@ -378,12 +394,14 @@ { "en": "a metal workshop", "nl": "een metaalatelier", - "de": "eine Metallwerkstatt" + "de": "eine Metallwerkstatt", + "es": "un taller de metal" }, { "en": "metal workshop", "nl": "metaalatelier", - "de": "Metallwerkstatt" + "de": "Metallwerkstatt", + "es": "taller de metal" }, "./assets/layers/hackerspace/metal.svg", false @@ -393,12 +411,14 @@ { "en": "a bicycle repair workshop", "nl": "een fietsherstelplaats", - "de": "eine Fahrradwerkstatt" + "de": "eine Fahrradwerkstatt", + "es": "un taller de reparación de bicicletas" }, { "en": "bicycle repair workshop", "nl": "fietsherstelplaats", - "de": "Fahrradwerkstatt" + "de": "Fahrradwerkstatt", + "es": "taller de reparación de bicicletas" }, "./assets/layers/hackerspace/bicycle.svg", false @@ -412,7 +432,8 @@ "nl": "Is er {device-name} beschikbaar in deze hackerspace?", "de": "Gibt es {device-name} in diesem Hackerspace?", "ca": "Hi ha {device-name} disponible a aquest espai hacker?", - "cs": "Je {device-name} dostupné v tomto hackerspace?" + "cs": "Je {device-name} dostupné v tomto hackerspace?", + "es": "¿Hay {device-name} disponible en este hackerspace?" }, "#iconsize": "large", "mappings": [ @@ -424,7 +445,8 @@ "nl": "Er is {device-name} beschikbaar in deze hackerspace", "de": "In diesem Hackerspace gibt es {device-name}", "ca": "Hi ha {device-name} disponible a aquest espai hacker", - "cs": "V tomto prostoru hackerů je k dispozici {device-name}" + "cs": "V tomto prostoru hackerů je k dispozici {device-name}", + "es": "Hay {device-name} disponible en este hackerspace" } }, { @@ -434,7 +456,8 @@ "nl": "Er is geen {negative-name} beschikbaar in deze hackerspace", "de": "In diesem Hackerspace gibt es kein {negative-name}", "ca": "No hi ha {negative-name} disponible a aquest espai hacker", - "cs": "V tomto prostoru hackerů není k dispozici žádný {negative-name}" + "cs": "V tomto prostoru hackerů není k dispozici žádný {negative-name}", + "es": "No hay {negative-name} disponible en este hackerspace" } }, { @@ -442,7 +465,8 @@ "then": { "en": "There is a limited {negative-name} available at this hackerspace", "nl": "Er is een beperkte {negative-name} beschikbaar in deze hackerspace", - "de": "Es gibt einen limitierten {negative-name} in diesem Hackerspace" + "de": "Es gibt einen limitierten {negative-name} in diesem Hackerspace", + "es": "Hay {negative-name} limitado disponible en este hackerspace" }, "hideInAnswer": "{hide_limited}" } @@ -459,7 +483,8 @@ "de": "Gibt es in diesem Hackerspace Club-Mate?", "zh_Hant": "這個駭客空間是否服務俱樂部伙伴?", "nl": "Biedt deze hackerspace Club-Mate aan?", - "cs": "Slouží tento hackerský prostor Club-Mate?" + "cs": "Slouží tento hackerský prostor Club-Mate?", + "es": "¿Este hackerspace sirve Club-Mate?" }, "mappings": [ { @@ -473,7 +498,8 @@ "de": "In diesem Hackerspace gibt es Club-Mate", "zh_Hant": "這個駭客空間服務俱樂部伙伴", "nl": "Deze hackerspace biedt Club-Mate aan", - "cs": "Tento hackerský prostor slouží Club-Mate" + "cs": "Tento hackerský prostor slouží Club-Mate", + "es": "Este hackerspace sirve Club-Mate" } }, { @@ -487,7 +513,8 @@ "de": "In diesem Hackerspace gibt es kein Club-Mate", "zh_Hant": "這個駭客空間沒有服務俱樂部伙伴", "nl": "Deze hackerspace biedt geen Club-Mate aan", - "cs": "Tento hackerský prostor neslouží Club-Mate" + "cs": "Tento hackerský prostor neslouží Club-Mate", + "es": "Este hackerspace no sirve Club-Mate" } } ] @@ -497,7 +524,7 @@ "en": "This hackerspace was founded at {start_date}", "de": "Dieser Hackerspace wurde gegründet am {start_date}", "zh_Hant": "這駭客空間是 {start_date} 成立的", - "es": "Este espacio hacker se fundó el {start_date}", + "es": "Este hackerspace fue fundado en {start_date}", "nl": "Deze hackerspace is opgericht op {start_date}", "ca": "Aquest espai hacker es va fundar el {start_date}", "cs": "Tento hackerský prostor byl založen {start_date}" @@ -506,7 +533,7 @@ "en": "When was this hackerspace founded?", "de": "Wann wurde dieser Hackerspace gegründet?", "zh_Hant": "這個駭客空間何時成立的?", - "es": "¿Cuándo se fundó este espacio hacker?", + "es": "¿Cuándo se fundó este hackerspace?", "nl": "Wanneer is deze hackerspace opgericht?", "ca": "Quan es va fundar aquest espai hacker?", "cs": "Kdy byl tento hackerský prostor založen?" @@ -533,7 +560,8 @@ }, "then": { "en": "This is an workshop for assisted self service, such as a repair café", - "de": "Dies ist eine Werkstatt für unterstützten Selbstservice, wie ein Repair-Café" + "de": "Dies ist eine Werkstatt für unterstützten Selbstservice, wie ein Repair-Café", + "es": "Este es un taller de autoservicio asistido, como un repair café" } }, { @@ -546,7 +574,8 @@ }, "then": { "en": "This is a coworking office", - "de": "Dies ist ein Coworking-Büro" + "de": "Dies ist ein Coworking-Büro", + "es": "Esta es una oficina de coworking" } } ] diff --git a/assets/layers/hospital/hospital.json b/assets/layers/hospital/hospital.json index 34038d41d..4caeec99f 100644 --- a/assets/layers/hospital/hospital.json +++ b/assets/layers/hospital/hospital.json @@ -7,14 +7,16 @@ "pa_PK": "ہسپتال", "ca": "Hospitals", "ru": "Больницы", - "cs": "Nemocnice" + "cs": "Nemocnice", + "es": "Hospitales" }, "description": { "en": "A layer showing hospital grounds", "de": "Eine Ebene mit Krankenhäusern", "nl": "Een laag die ziekehuizen toont", "ca": "Una capa que mostra els terrenys de l'hospital", - "cs": "Vrstva zobrazující areál nemocnice" + "cs": "Vrstva zobrazující areál nemocnice", + "es": "Una capa que muestra los terrenos del hospital" }, "source": { "osmTags": { @@ -34,7 +36,8 @@ "ru": "Больница", "ca": "Hospital", "cs": "Nemocnice", - "pl": "Szpital" + "pl": "Szpital", + "es": "Hospital" }, "mappings": [ { @@ -78,7 +81,9 @@ "nl": "Dit ziekenhuis heet {name}", "ru": "Эта больница называется {name}", "cs": "Tato nemocnice se jmenuje {name}", - "pl": "Nazwa tego szpitala to {name}" + "pl": "Nazwa tego szpitala to {name}", + "uk": "Ця лікарня називається {name}", + "es": "Este hospital se llama {name}" }, "question": { "en": "What is the name of this hospital?", @@ -87,7 +92,9 @@ "ca": "Quin és el nom d'aquest hospital?", "ru": "Как называется эта больница?", "cs": "Jak se jmenuje tato nemocnice?", - "pl": "Jak nazywa się ten szpital?" + "pl": "Jak nazywa się ten szpital?", + "uk": "Як називається ця лікарня?", + "es": "¿Cuál es el nombre de este hospital?" }, "freeform": { "key": "name" @@ -99,7 +106,9 @@ "en": "Does this facility admit inpatients?", "de": "Nimmt die Einrichtung stationäre Patienten auf?", "ca": "Aquesta instal·lació admet hospitalitzacions?", - "cs": "Přijímá toto zařízení pacienty na lůžko?" + "cs": "Přijímá toto zařízení pacienty na lůžko?", + "uk": "Чи приймає цей заклад стаціонарних пацієнтів?", + "es": "¿Esta instalación admite pacientes internados?" }, "mappings": [ { @@ -108,7 +117,9 @@ "en": "This is a clinic - patients can not stay overnight", "de": "Dies ist ein Medizinisches Versorgungszentrum - Patienten können nicht über Nacht bleiben", "ca": "Açò és una clínica: els pacients no poden passar la nit", - "cs": "Toto je klinika - pacienti nemohou zůstat přes noc" + "cs": "Toto je klinika - pacienti nemohou zůstat přes noc", + "uk": "Це клініка - пацієнти не можуть залишатися на ніч", + "es": "Esta es una clínica: los pacientes no pueden pasar la noche" } }, { @@ -117,7 +128,9 @@ "en": "This is a hospital - patients can be admitted here for multiple days", "de": "Dies ist ein Krankenhaus - Patienten können hier für mehrere Tage aufgenommen werden", "ca": "Es tracta d'un hospital: els pacients poden estar ingressats aquí durant diversos dies", - "cs": "Jedná se o nemocnici – pacienti zde mohou být přijímáni na více dní" + "cs": "Jedná se o nemocnici – pacienti zde mohou být přijímáni na více dní", + "uk": "Це лікарня - пацієнти можуть перебувати тут кілька днів", + "es": "Este es un hospital: los pacientes pueden ser ingresados aquí por varios días" } } ], @@ -125,7 +138,8 @@ "en": "An inpatient is a patient which stays for multiple days in the facility", "de": "Ein stationärer Patient ist ein Patient, der mehrere Tage in der Einrichtung bleibt", "ca": "Un pacient hospitalitzat és un pacient que roman diversos dies a la instal·lació", - "cs": "Hospitalizovaný pacient je pacient, který v zařízení pobývá více dní" + "cs": "Hospitalizovaný pacient je pacient, který v zařízení pobývá více dní", + "es": "Un paciente internado es un paciente que permanece varios días en la instalación" } }, "contact", @@ -135,13 +149,15 @@ "en": "When are visitors allowed to visit?", "de": "Wann ist der Besuch für Besucher gestattet?", "ca": "Quan poden anar els visitants?", - "cs": "Kdy je povolena návštěva?" + "cs": "Kdy je povolena návštěva?", + "es": "¿Cuándo se permite a los visitantes realizar visitas?" }, "questionHint": { "en": "These are the regular visitor hours. Some wands have different visitor hours or might allow visitors in emergencies", "de": "Dies sind die regulären Besuchszeiten. Einige Stationen haben andere Besuchszeiten oder erlauben Besucher in Notfällen", "ca": "Aquests són els horaris habituals dels visitants. Algunes plantes tenen diferents horaris de visita o poden permetre els visitants en cas d'emergència", - "cs": "Jedná se o pravidelné návštěvní hodiny. Některé oddělení mají jiné návštěvní hodiny nebo mohou povolit návštěvy v naléhavých případech" + "cs": "Jedná se o pravidelné návštěvní hodiny. Některé oddělení mají jiné návštěvní hodiny nebo mohou povolit návštěvy v naléhavých případech", + "es": "Este es el horario regular de visitas. Algunas varillas tienen horarios de visita diferentes o pueden permitir visitas en caso de emergencia" }, "freeform": { "key": "opening_hours:visitors", @@ -151,7 +167,8 @@ "en": "

Opening hours for visitors

Regular visitors are allowed at the following moments: {opening_hours_table(opening_hours:visitors)}

Some wands might have different opening hours. Many hospitals allow visits during emergencies too.

", "de": "

Öffnungszeiten für Besucher

Regelmäßige Besucher sind zu den folgenden Zeiten zugelassen: {opening_hours_table(opening_hours:visitors)}

Einige Krankenhäuser haben möglicherweise andere Öffnungszeiten. Viele Krankenhäuser erlauben Besuche auch in Notfällen.

", "ca": "

Horari d'obertura per a visitants

S'admeten visitants habituals en els moments següents: {opening_hours_table(opening_hours:visitors)}

Algunes palntes poden tenir un horari d'obertura diferent. Molts hospitals també permeten visites en cas d'emergència.

", - "cs": "

Otevírací doba pro návštěvníky

Běžným návštěvníkům je vstup povolen v následujících časech: {opening_hours_table(opening_hours:visitors)}

Některá oddělení mohou mít jinou otevírací dobu. Mnohé nemocnice povolují návštěvy i v době pohotovosti.

" + "cs": "

Otevírací doba pro návštěvníky

Běžným návštěvníkům je vstup povolen v následujících časech: {opening_hours_table(opening_hours:visitors)}

Některá oddělení mohou mít jinou otevírací dobu. Mnohé nemocnice povolují návštěvy i v době pohotovosti.

", + "es": "

Horario de visita para visitantes

Los visitantes regulares están permitidos en los siguientes momentos: {opening_hours_table(opening_hours:visitors)}

Algunas varillas pueden tener horarios de apertura diferentes. Muchos hospitales también permiten visitas en caso de emergencia.

" } } ], diff --git a/assets/layers/hydrant/hydrant.json b/assets/layers/hydrant/hydrant.json index d6bd0c0e2..66a5f2bd5 100644 --- a/assets/layers/hydrant/hydrant.json +++ b/assets/layers/hydrant/hydrant.json @@ -10,7 +10,7 @@ "de": "Hydranten", "it": "Mappa degli idranti", "nl": "Kaart van brandkranen", - "es": "Mapa de bocas de incendios", + "es": "Mapa de bocas de incendio", "ca": "Mapa d'hidrants", "cs": "Mapa hydrantů", "pl": "Mapa hydrantów" @@ -25,7 +25,7 @@ "de": "Kartenebene zur Anzeige von Hydranten.", "it": "Livello della mappa che mostra gli idranti antincendio.", "nl": "Kaartlaag met brandkranen.", - "es": "Un mapa que muestra bocas de incendios.", + "es": "Capa del mapa para mostrar bocas de incendio.", "ca": "Una capa que mostra hidrants.", "cs": "Mapová vrstva zobrazující požární hydranty.", "pl": "Warstwa mapy pokazująca hydranty." @@ -49,7 +49,7 @@ "it": "Idrante", "nl": "Brandkraan", "ca": "Hidrant", - "es": "Boca de incendios", + "es": "Boca de incendio", "pa_PK": "ہائڈرنٹ", "cs": "Hydrant", "pl": "Hydrant" @@ -90,7 +90,7 @@ "de": "einen Hydranten", "it": "una idrante antincendio", "nl": "een brandkraan", - "es": "una boca de incendios", + "es": "una boca de incendio", "ca": "un hidrant", "cs": "požární hydrant", "pl": "hydrant" @@ -102,7 +102,7 @@ "de": "Ein Hydrant ist ein Anschlusspunkt, an dem die Feuerwehr Wasser zapfen kann. Er kann sich unterirdisch befinden.", "it": "Un idrante è un punto di collegamento dove i pompieri possono estrarre acqua. Potrebbe trovarsi sottoterra.", "nl": "Een brandkraan is een kraan waar brandweerlieden een brandslang kunnen aansluiten. Soms zit deze ondergronds.", - "es": "Una boca de incendios es un punto de conexión en el que los bomberos pueden conseguir agua. Puede situarse bajo tierra.", + "es": "Una boca de incendio es un punto de conexión donde los bomberos pueden obtener agua. Puede estar ubicada bajo tierra.", "ca": "Un hidrant és un punt de connexió on els bombers poden aconseguir aigua. Pot estar baix terra.", "ru": "Гидрант – приспособление, с помощью которого пожарные могут подключаться к водопроводу. Гидранты могут быть под землёй.", "cs": "Hydrant je přípojné místo, odkud mohou hasiči čerpat vodu. Může být umístěn pod zemí." @@ -121,7 +121,7 @@ "de": "Welche Farbe hat der Hydrant?", "it": "Qual è il colore dell’idrante?", "nl": "Welke kleur heeft de brandkraan?", - "es": "¿De que color es la boca de incendios?", + "es": "¿De qué color es la boca de incendio?", "ca": "De quin color es l'hidrant?", "cs": "Jakou barvu má hydrant?", "pl": "Jakiego koloru jest ten hydrant?" @@ -135,7 +135,7 @@ "de": "Der Hydrant hat die Farbe {colour}", "it": "Il colore dell’idrante è {colour}", "nl": "De brandkraan is {colour}", - "es": "La boca de incendios es de color {colour}", + "es": "El color de la boca de incendio es {colour}", "ca": "L'hidrant és de color {colour}", "cs": "Barva hydrantu je {colour}", "pl": "Kolor tego hydrantu to {colour}" @@ -158,7 +158,7 @@ "de": "Die Farbe des Hydranten ist gelb.", "it": "Il colore dell’idrante è giallo.", "nl": "De brandkraan is geel.", - "es": "La boca de incendios es amarilla.", + "es": "El color de la boca de incendio es amarillo.", "ca": "L'hidrant és de color groc.", "cs": "Barva hydrantu je žlutá.", "pl": "Ten hydrant ma żółty kolor." @@ -179,7 +179,7 @@ "de": "Die Farbe des Hydranten ist rot.", "nl": "De brandkraan is rood.", "ca": "L'hidrant és de color roig.", - "es": "La boca de incendios es roja.", + "es": "El color de la boca de incendio es rojo.", "cs": "Barva hydrantu je červená.", "pl": "Ten hydrant ma czerwony kolor." } @@ -196,7 +196,7 @@ "fr": "De quel type de borne s’agit-il ?", "de": "Welche Bauform hat der Hydrant?", "nl": "Wat voor soort brandkraan is dit?", - "es": "¿De qué tipo es esta boca de incendios?", + "es": "¿Qué tipo de boca de incendio es?", "ca": "Quin tipus d'hidrant és?", "cs": "O jaký typ hydrantu se jedná?", "pl": "Jakiego rodzaju jest to hydrant?" @@ -212,7 +212,7 @@ "fr": " Type de borne : {fire_hydrant:type}", "de": " Hydranten-Typ: {fire_hydrant:type}", "nl": " Het type brandkraan is {fire_hydrant:type}", - "es": " Tipo de boca de incendios: {fire_hydrant:type}", + "es": " Tipo de boca de incendio: {fire_hydrant:type}", "ca": " Tipus d'hidrants: {fire_hydrant:type}", "cs": " Typ hydrantu: {fire_hydrant:type}" }, @@ -230,7 +230,7 @@ "de": "Überflurhydrant.", "it": "Soprasuolo.", "nl": "Pillaar type.", - "es": "De pilar.", + "es": "Tipo pilar.", "ca": "De pilar.", "ru": "Наземный.", "cs": "Typ sloupek." @@ -253,7 +253,7 @@ "de": "Druckloses Rohr.", "it": "Tubo.", "nl": "Buis type.", - "es": "De tubería.", + "es": "Tipo tubería.", "ca": "De tuberia.", "ru": "Труба.", "cs": "Typ potrubí." @@ -278,7 +278,7 @@ "de": "Wandhydrant.", "it": "A muro.", "nl": "Muur type.", - "es": "De pared.", + "es": "Tipo pared.", "ca": "De paret.", "cs": "Nástěnný typ." }, @@ -301,7 +301,7 @@ "it": "Sottosuolo.", "nl": "Ondergronds type.", "ca": "Subterrani.", - "es": "Bajo tierra.", + "es": "Tipo subterráneo.", "ru": "Подземный.", "cs": "Podzemní typ." }, @@ -321,7 +321,7 @@ "de": "Ist dieser Hydrant noch in Betrieb?", "it": "Questo idrante è ancora in funzione?", "nl": "Werkt deze brandkraan nog?", - "es": "¿Todavía funciona esta boca de incendios?", + "es": "¿Esta boca de incendio sigue funcionando?", "ca": "Encara funciona aquest hidrant?", "ru": "Этот гидрант в рабочем состоянии?", "cs": "Je tento hydrant stále funkční?", @@ -342,7 +342,7 @@ "de": "Der Hydrant ist (ganz oder teilweise) in Betrieb", "it": "L’idrante è (parzialmente o completamente) funzionante", "nl": "De brandkraan werkt (minstens gedeeltelijk)", - "es": "La boca de incendios funciona (total o parcialmente)", + "es": "La boca de incendio está (total o parcialmente) funcionando", "ca": "L'hidrant funciona (total o parcialment)", "cs": "Hydrant je (plně nebo částečně) funkční", "pl": "Ten hydrant (w pełni lub częściowo) działa" @@ -362,7 +362,7 @@ "de": "Der Hydrant ist nicht mehr in Betrieb", "it": "L’idrante è fuori servizio", "nl": "De brandkraan is niet beschikbaar", - "es": "La boca de incendios no está disponible", + "es": "La boca de incendio no está disponible", "ca": "L'hidrant no està disponible", "ru": "К гидранту нет доступа", "cs": "Hydrant je nedostupný", @@ -384,7 +384,7 @@ "de": "Der Hydrant wurde entfernt", "it": "L’idrante è stato rimosso", "nl": "Deze brandkraan is verwijderd", - "es": "La boca de incendios se ha retirado", + "es": "La boca de incendio ha sido retirada", "ca": "L'hidrant s'ha retirat", "cs": "Hydrant byl odstraněn", "pl": "Ten hydrant został usunięty" @@ -401,7 +401,8 @@ "ca": "Quin és el diàmetre d'aquest hidrant?", "ru": "Какой диаметр трубы у этого гидранта?", "fr": "Quel est le diamètre du tuyau de cette bouche d'incendie ?", - "cs": "Jaký je průměr trubky tohoto hydrantu?" + "cs": "Jaký je průměr trubky tohoto hydrantu?", + "es": "¿Cuál es el diámetro de la tubería de esta boca de incendio?" }, "freeform": { "key": "fire_hydrant:diameter", @@ -412,7 +413,8 @@ "ru": "Диаметр трубы", "ca": "Diàmetre de la canonada", "cs": "Průměr trubky", - "pl": "Średnica rury" + "pl": "Średnica rury", + "es": "Diámetro de la tubería" }, "type": "int" }, @@ -422,7 +424,8 @@ "nl": "Pijpdiameter:{canonical(fire_hydrant:diameter)}", "ru": "Диаметр трубы: {canonical(fire_hydrant:diameter)}", "ca": "Diàmetre de la canonada: {canonical(fire_hydrant:diameter)}", - "cs": "Průměr trubky: {canonical(fire_hydrant:diameter)}" + "cs": "Průměr trubky: {canonical(fire_hydrant:diameter)}", + "es": "Diámetro de la tubería: {canonical(fire_hydrant:diameter)}" } }, { @@ -433,7 +436,8 @@ "nl": "Hoe veel koppelingen bezit deze brandkraan?", "ca": "Quants acoblaments té aquest hidrant?", "fr": "Combien de raccords a cette bouche d'incendie ?", - "cs": "Kolik spojek má tento požární hydrant?" + "cs": "Kolik spojek má tento požární hydrant?", + "es": "¿Cuántos acoplamientos tiene esta boca de incendio?" }, "freeform": { "key": "couplings", @@ -442,7 +446,8 @@ "de": "Anzahl der Kupplungen", "nl": "Aantal koppelingen", "ca": "Nombre d'acoblaments", - "cs": "Počet spojek" + "cs": "Počet spojek", + "es": "Número de acoplamientos" }, "type": "int" }, @@ -451,7 +456,8 @@ "de": "Anzahl der Kupplungen: {couplings}", "nl": "Aantal koppelingen: {couplings}", "ca": "Nombre d'acoblaments: {couplings}", - "cs": "Počet spojek: {couplings}" + "cs": "Počet spojek: {couplings}", + "es": "Número de acoplamientos: {couplings}" } }, { @@ -462,7 +468,8 @@ "nl": "Welke soort koppeling heeft deze hydrant?", "ca": "Quin tipus d‘acoblament té aquest hidrant?", "ru": "Какого вида соединительные головки у этого гидранта?", - "cs": "Jaký typ spojky má tento hydrant?" + "cs": "Jaký typ spojky má tento hydrant?", + "es": "¿Qué tipo de acoplamientos tiene esta boca de incendio?" }, "freeform": { "key": "couplings:type", @@ -472,7 +479,8 @@ "nl": "Soort koppeling", "ru": "Тип соединительной головки", "ca": "Tipus d'acoblament", - "cs": "Typ spoje" + "cs": "Typ spoje", + "es": "Tipo de acoplamiento" }, "type": "string" }, @@ -485,7 +493,8 @@ "nl": "Storz-koppeling", "ca": "Acoblament Storz", "ru": "Головка типа Storz", - "cs": "Spojka Storz" + "cs": "Spojka Storz", + "es": "Acoplamiento Storz" }, "icon": { "path": "./assets/layers/hydrant/storz.jpg", @@ -500,7 +509,8 @@ "nl": "UNI-koppeling", "ca": "Acoblament UNI", "ru": "Головка типа UNI", - "cs": "Spojka UNI" + "cs": "Spojka UNI", + "es": "Acoplamiento UNI" } }, { @@ -511,7 +521,8 @@ "nl": "Barcelona-koppeling", "ca": "Acoblament Barcelona", "ru": "Головка типа Barcelona", - "cs": "Spojka Barcelona" + "cs": "Spojka Barcelona", + "es": "Acoplamiento Barcelona" }, "icon": { "path": "./assets/layers/hydrant/barcelona.jpg", @@ -526,7 +537,8 @@ "nl": "Koppelingen:{couplings:type}", "ru": "Соединительные головки: {couplings:type}", "ca": "Acoblaments: {couplings:type}", - "cs": "Spojky: {couplings:type}" + "cs": "Spojky: {couplings:type}", + "es": "Acoplamientos: {couplings:type}" } }, { @@ -537,7 +549,8 @@ "nl": "Welke diameter hebben de koppelingen van deze hydrant?", "ca": "Quin és el diàmetre dels acoblaments d'aquest hidrant?", "ru": "Какой диаметр соединительных головок у этого гидранта?", - "cs": "Jaký průměr mají spojky tohoto hydrantu?" + "cs": "Jaký průměr mají spojky tohoto hydrantu?", + "es": "¿Qué diámetro tienen los acoplamientos de esta boca de incendio?" }, "freeform": { "key": "couplings:diameters", @@ -547,7 +560,8 @@ "nl": "Koppeldiameters", "ru": "Диаметры соединительных головок", "ca": "Diàmetres d'acoblament", - "cs": "Průměr spojek" + "cs": "Průměr spojek", + "es": "Diámetro de los acoplamientos" } }, "render": { @@ -556,7 +570,8 @@ "nl": "Koppelingdiameters:{couplings:diameters}", "ru": "Диаметр соединительных головок: {couplings:diameters}", "ca": "Diàmetres d'acoblament: {couplings:diameters}", - "cs": "Průměry spojek: {couplings:diameters}" + "cs": "Průměry spojek: {couplings:diameters}", + "es": "Diámetro de los acoplamientos: {couplings:diameters}" } }, "images" diff --git a/assets/layers/ice_cream/ice_cream.json b/assets/layers/ice_cream/ice_cream.json index 791e759fd..702957dab 100644 --- a/assets/layers/ice_cream/ice_cream.json +++ b/assets/layers/ice_cream/ice_cream.json @@ -3,12 +3,14 @@ "name": { "en": "Ice cream parlors", "de": "Eisdielen", - "nl": "IJssalon" + "nl": "IJssalon", + "es": "Heladerías" }, "description": { "en": "A place where ice cream is sold over the counter", "de": "Ein Ort, an dem Eiscreme an der Theke verkauft wird", - "nl": "Een plaats waar voornamelijk ijsjes verkocht worden, bedoeld voor onmiddelijke consumptie" + "nl": "Een plaats waar voornamelijk ijsjes verkocht worden, bedoeld voor onmiddelijke consumptie", + "es": "Un lugar donde se vende helado en el mostrador" }, "source": { "osmTags": "amenity=ice_cream" @@ -18,7 +20,8 @@ "render": { "en": "Ice cream parlor", "de": "Eisdiele", - "nl": "IJssalon" + "nl": "IJssalon", + "es": "Heladería" }, "mappings": [ { @@ -27,7 +30,8 @@ "en": "{name}", "de": "{name}", "pl": "{name}", - "nl": "{name}" + "nl": "{name}", + "es": "{name}" } } ] @@ -66,7 +70,8 @@ "en": "an ice cream parlor", "de": "eine Eisdiele", "fr": "un glacier", - "nl": "een ijssalon" + "nl": "een ijssalon", + "es": "una heladería" }, "tags": [ "amenity=ice_cream" @@ -74,7 +79,8 @@ "description": { "en": "A shop where one can buy only icecream and related items. Ice cream is normally hand-scooped.", "de": "Ein Geschäft, in dem man nur Eiscreme und damit verbundene Artikel kaufen kann. Normalerweise wird das Eis mit der Hand portioniert.", - "nl": "Een plaats waar men voornamelijk ijsjes koopt, meestal met de hand geschept en bedoeld om onmiddellijk op te eten." + "nl": "Een plaats waar men voornamelijk ijsjes koopt, meestal met de hand geschept en bedoeld om onmiddellijk op te eten.", + "es": "Una tienda donde solo se puede comprar helado y artículos relacionados. El helado normalmente se sirve con cuchara." } } ], @@ -85,7 +91,8 @@ "question": { "en": "What is the name of this ice cream parlor?", "nl": "Wat is de naam van dit ijssalon?", - "de": "Wie heißt diese Eisdiele?" + "de": "Wie heißt diese Eisdiele?", + "es": "¿Cuál es el nombre de esta heladería?" }, "id": "1", "freeform": { @@ -94,7 +101,8 @@ "render": { "en": "This ice cream parlor is named {name}", "nl": "Dit ijssalon heet {name}", - "de": "Diese Eisdiele heißt {name}" + "de": "Diese Eisdiele heißt {name}", + "es": "Esta heladería se llama {name}" } }, "opening_hours", diff --git a/assets/layers/icons/icons.json b/assets/layers/icons/icons.json index 08f36855b..6b1d1fdf2 100644 --- a/assets/layers/icons/icons.json +++ b/assets/layers/icons/icons.json @@ -4,7 +4,8 @@ "en": "A layer acting as library for icon-tagrenderings, especially to show as badge next to a POI", "de": "Eine Ebene, die als Bibliothek für Symbol-Tag-Renderings dient, insbesondere um als Abzeichen neben einem POI angezeigt zu werden", "ca": "Una capa que actua com a biblioteca per a les icones d'etiquetes, especialment per mostrar-se com a insígnia al costat d'un PDI", - "cs": "Vrstva sloužící jako knihovna pro ikony-značky, zejména pro zobrazení jako odznak vedle bodu zájmu" + "cs": "Vrstva sloužící jako knihovna pro ikony-značky, zejména pro zobrazení jako odznak vedle bodu zájmu", + "es": "Una capa que actúa como biblioteca para representaciones de etiquetas de iconos, especialmente para mostrar como insignia junto a un PDI" }, "source": "special:library", "title": null, @@ -127,7 +128,9 @@ "en": "phone", "nl": "Telefoneer", "de": "Telefon", - "pl": "telefon" + "pl": "telefon", + "cs": "telefon", + "es": "teléfono" } } }, @@ -144,7 +147,9 @@ "en": "phone", "nl": "Telefoneer", "de": "Telefon", - "pl": "telefon" + "pl": "telefon", + "cs": "telefon", + "es": "teléfono" } } } @@ -329,7 +334,9 @@ "nl": "Bekijk op openstreetmap.org", "de": "Auf openstreetmap.org öffnen", "pl": "Otwórz na openstreetmap.org", - "da": "Åbn på openstreetmap.org" + "da": "Åbn på openstreetmap.org", + "cs": "Otevřít na openstreetmap.org", + "es": "Abrir en openstreetmap.org" } } }, @@ -352,7 +359,9 @@ "nl": "Bekijk op openstreetmap.org", "de": "Auf openstreetmap.org öffnen", "pl": "Otwórz na openstreetmap.org", - "da": "Åbn på openstreetmap.org" + "da": "Åbn på openstreetmap.org", + "cs": "Otevřít na openstreetmap.org", + "es": "Abrir en openstreetmap.org" } } } @@ -370,7 +379,9 @@ "nl": "Bekijk op openstreetmap.org", "de": "Auf openstreetmap.org öffnen", "pl": "Otwórz na openstreetmap.org", - "da": "Åbn på openstreetmap.org" + "da": "Åbn på openstreetmap.org", + "cs": "Otevřít na openstreetmap.org", + "es": "Abrir en openstreetmap.org" } } } diff --git a/assets/layers/indoors/indoors.json b/assets/layers/indoors/indoors.json index e283ad620..65406cb79 100644 --- a/assets/layers/indoors/indoors.json +++ b/assets/layers/indoors/indoors.json @@ -6,7 +6,8 @@ "nl": "Binnenruimtes", "pa_PK": "اندروں", "ca": "Interiors", - "cs": "Vnitřní prostory" + "cs": "Vnitřní prostory", + "es": "Interiores" }, "description": { "en": "Basic indoor mapping: shows room outlines", @@ -15,7 +16,7 @@ "cs": "Základní mapování interiérů: zobrazuje obrysy místností", "ca": "Mapeig interior bàsic: mostra els contorns de les habitacions", "pl": "Podstawowe mapowanie wnętrz: pokazuje kontury pomieszczeń", - "es": "Cartografía básica en interiores: muestra esquemas de espacio" + "es": "Cartografía interior básica: muestra los contornos de las habitaciones" }, "source": { "osmTags": { @@ -35,7 +36,8 @@ "de": "Innenbereich {name}", "nl": "Binnenruimte {name}", "ca": "Àrea interior {name}", - "cs": "Vnitřní prostor {name}" + "cs": "Vnitřní prostor {name}", + "es": "Área interior {name}" }, "mappings": [ { @@ -46,7 +48,8 @@ "nl": "Binnenruimte {name}", "pl": "Wewnętrzne pomieszczenie {name}", "ca": "Habitació interior {name}", - "cs": "Vnitřní místnost {name}" + "cs": "Vnitřní místnost {name}", + "es": "Habitación interior {name}" } }, { @@ -56,7 +59,8 @@ "de": "Innenbereich {name}", "nl": "Gebied in gebouw {name}", "ca": "Àrea interior {name}", - "cs": "Vnitřní prostor {name}" + "cs": "Vnitřní prostor {name}", + "es": "Área interior {name}" } }, { @@ -66,7 +70,8 @@ "de": "Innenwand {name}", "nl": "Muur in gebouw {name}", "ca": "Paret interior {name}", - "cs": "Vnitřní stěna {name}" + "cs": "Vnitřní stěna {name}", + "es": "Pared interior {name}" } }, { @@ -76,7 +81,8 @@ "de": "Innengang {name}", "nl": "Gang in gebouw {name}", "ca": "Passadis interior {name}", - "cs": "Vnitřní chodba {name}" + "cs": "Vnitřní chodba {name}", + "es": "Pasillo interior {name}" } }, { @@ -86,7 +92,8 @@ "de": "Innentür {name}", "nl": "Binnendeur {name}", "ca": "Porta interior {name}", - "cs": "Vnitřní dveře {name}" + "cs": "Vnitřní dveře {name}", + "es": "Puerta interior {name}" } }, { @@ -95,7 +102,8 @@ "en": "Indoor Level {name}", "de": "Geschoss {name}", "nl": "Verdieping in gebouw {name}", - "cs": "Vnitřní Level {name}" + "cs": "Vnitřní Level {name}", + "es": "Nivel interior {name}" } } ] @@ -232,7 +240,9 @@ "fr": "Quel est le numéro de référence de cette pièce ?", "pl": "Jaki jest numer referencyjny tego pomieszczenia?", "ca": "Quin és el número de referència d'aquesta habitació?", - "cs": "Jaké je referenční číslo této místnosti?" + "cs": "Jaké je referenční číslo této místnosti?", + "es": "¿Cuál es el número de referencia de esta habitación?", + "uk": "Який ідентифікаційний номер цієї кімнати?" }, "render": { "en": "This room has the reference number {ref}", @@ -240,7 +250,9 @@ "nl": "Deze ruimte heeft het referentienummer {ref}", "pl": "To pomieszczenie ma numer referencyjny {ref}", "ca": "Aquesta habitació té el número de referència {ref}", - "cs": "Tato místnost má referenční číslo {ref}" + "cs": "Tato místnost má referenční číslo {ref}", + "es": "Esta habitación tiene el número de referencia {ref}", + "uk": "Ця кімната має номер {ref}" }, "freeform": { "key": "ref", @@ -251,7 +263,8 @@ "nl": "Referentienummer van de ruimte (bv. '1.1' of A1' )", "ca": "Número de referència de l'habitació (p. e. '1.1' o 'A1')", "cs": "Referenční číslo místnosti (např. \"1.1\" nebo \"A1\")", - "pl": "Numer referencyjny tego pomieszczenia (np. \"1.1\" lub \"A1\")" + "pl": "Numer referencyjny tego pomieszczenia (np. \"1.1\" lub \"A1\")", + "es": "Número de referencia de la habitación (por ejemplo, '1.1' o 'A1')" } }, "condition": { @@ -271,7 +284,9 @@ "ru": "Как называется эта комната?", "ca": "Quin és el nom d'aquesta habitació?", "cs": "Jak se jmenuje tato místnost?", - "pl": "Jaka jest nazwa tego pomieszczenia?" + "pl": "Jaka jest nazwa tego pomieszczenia?", + "es": "¿Cuál es el nombre de esta habitación?", + "uk": "Як називається ця кімната?" }, "render": { "en": "This room is named {name}", @@ -281,7 +296,9 @@ "fr": "Cette pièce s'appelle {name}", "ca": "Aquesta habitació es diu {name}", "cs": "Tato místnost se jmenuje {name}", - "pl": "Nazwa tego pomieszczenia to {name}" + "pl": "Nazwa tego pomieszczenia to {name}", + "es": "Esta habitación se llama {name}", + "uk": "Ця кімната називається {name}" }, "freeform": { "key": "name", @@ -293,7 +310,8 @@ "ru": "Название комнаты", "ca": "Nom de l'habitació", "cs": "Název místnosti", - "pl": "Nazwa pomieszczenia" + "pl": "Nazwa pomieszczenia", + "es": "Nombre de la habitación" } }, "condition": { @@ -311,7 +329,8 @@ "ca": "Quin tipus d'habitació és aquesta?", "de": "Wie wird dieser Raum genutzt?", "cs": "O jaký typ pokoje se jedná?", - "pl": "Jakiego rodzaju jest to pomieszczenie?" + "pl": "Jakiego rodzaju jest to pomieszczenie?", + "es": "¿Qué tipo de habitación es esta?" }, "mappings": [ { @@ -319,7 +338,8 @@ "then": { "en": "This is a administrative room", "de": "Dies ist ein Verwaltungsraum", - "cs": "Jedná se o administrativní místnost" + "cs": "Jedná se o administrativní místnost", + "es": "Esta es una habitación administrativa" }, "icon": "./assets/layers/indoors/room_administration.svg" }, @@ -329,7 +349,8 @@ "en": "This is a auditorium", "de": "Dies ist ein Auditorium", "ca": "Açò és un auditori", - "cs": "Jedná se o posluchárnu" + "cs": "Jedná se o posluchárnu", + "es": "Este es un auditorio" }, "icon": "./assets/layers/indoors/room_auditorium.svg" }, @@ -340,7 +361,8 @@ "de": "Dies ist ein Schlafzimmer", "ca": "Açò és un dormitori", "cs": "Jedná se o ložnici", - "pl": "To jest sypialnia" + "pl": "To jest sypialnia", + "es": "Este es un dormitorio" }, "icon": "./assets/layers/indoors/room_bedroom.svg" }, @@ -351,7 +373,8 @@ "de": "Dies ist eine Kapelle", "ca": "Açò és una capella", "cs": "Jedná se o kapli", - "pl": "To jest kaplica" + "pl": "To jest kaplica", + "es": "Esta es una capilla" }, "icon": "./assets/layers/indoors/room_chapel.svg" }, @@ -363,7 +386,8 @@ "ca": "Açò és una aula", "cs": "Jedná se o učebnu", "fr": "C'est une salle de classe", - "pl": "To jest sala klasowa" + "pl": "To jest sala klasowa", + "es": "Esta es un aula" }, "icon": "./assets/layers/indoors/room_class.svg" }, @@ -374,7 +398,8 @@ "de": "Dies ist ein Klassenzimmer", "ca": "Açò és una aula", "cs": "Jedná se o učebnu", - "pl": "Jest to sala klasowa" + "pl": "Jest to sala klasowa", + "es": "Esta es un aula" }, "icon": "./assets/layers/indoors/room_class.svg", "hideInAnswer": true @@ -385,7 +410,8 @@ "en": "This is a computer room", "de": "Dies ist ein Computerraum", "cs": "Jedná se o počítačovou místnost", - "pl": "To jest sala komputerowa" + "pl": "To jest sala komputerowa", + "es": "Esta es una sala de ordenadores" }, "icon": "./assets/layers/indoors/room_computer.svg" }, @@ -396,7 +422,8 @@ "de": "Dies ist ein Konferenzraum", "ca": "Açò és una sala de conferències", "cs": "Jedná se o konferenční místnost", - "pl": "To jest sala konferencyjna" + "pl": "To jest sala konferencyjna", + "es": "Esta es una sala de conferencias" }, "icon": "./assets/layers/indoors/room_conference.svg" }, @@ -406,7 +433,8 @@ "en": "This is a crypt", "de": "Dies ist eine Krypta", "ca": "Açò és una cripta", - "cs": "Jedná se o kryptu" + "cs": "Jedná se o kryptu", + "es": "Esta es una cripta" }, "icon": "./assets/layers/indoors/room_crypt.svg" }, @@ -417,7 +445,8 @@ "de": "Dies ist eine Küche", "ca": "Açò és una cuina", "cs": "Jedná se o kuchyň", - "pl": "To jest kuchnia" + "pl": "To jest kuchnia", + "es": "Esta es una cocina" }, "icon": "./assets/layers/indoors/room_kitchen.svg" }, @@ -428,7 +457,8 @@ "de": "Dies ist ein Labor", "ca": "Açò és un laboratori", "cs": "Jedná se o laboratoř", - "pl": "To jest laboratorium" + "pl": "To jest laboratorium", + "es": "Este es un laboratorio" }, "icon": "./assets/layers/indoors/room_laboratory.svg" }, @@ -438,7 +468,8 @@ "en": "This is a library", "de": "Dies ist eine Bibliothek", "cs": "Jedná se o knihovnu", - "pl": "To jest biblioteka" + "pl": "To jest biblioteka", + "es": "Esta es una biblioteca" }, "icon": "./assets/layers/indoors/room_library.svg" }, @@ -447,7 +478,8 @@ "then": { "en": "This is a locker room", "de": "Dies ist ein Umkleideraum", - "cs": "Jedná se o šatnu" + "cs": "Jedná se o šatnu", + "es": "Este es un vestuario" }, "icon": "./assets/layers/indoors/room_locker.svg" }, @@ -456,7 +488,8 @@ "then": { "en": "This is a nursery", "de": "Dies ist ein Kinderzimmer", - "cs": "Jedná se o školku" + "cs": "Jedná se o školku", + "es": "Esta es una guardería" }, "icon": "./assets/layers/indoors/room_nursery.svg" }, @@ -468,7 +501,8 @@ "ca": "Açò és una oficina", "cs": "Jedná se o kancelář", "fr": "C'est un bureau", - "pl": "To jest biuro" + "pl": "To jest biuro", + "es": "Esta es una oficina" }, "icon": "./assets/layers/indoors/room_office.svg" }, @@ -476,7 +510,8 @@ "if": "room=printer", "then": { "en": "This is a copy room", - "de": "Dies ist ein Kopierraum" + "de": "Dies ist ein Kopierraum", + "es": "Esta es una sala de copias" } }, { @@ -485,7 +520,8 @@ "en": "This is a prison_cell", "de": "Dies ist eine Gefängniszelle", "cs": "Jedná se o vězeňskou celu", - "pl": "To jest cela więzienna" + "pl": "To jest cela więzienna", + "es": "Esta es una celda de prisión" }, "icon": "./assets/layers/indoors/room_prison_cell.svg" }, @@ -496,7 +532,8 @@ "de": "Dies ist ein Restaurant", "ca": "Açò és un restaurant", "cs": "Jedná se o restauraci", - "pl": "To jest restauracja" + "pl": "To jest restauracja", + "es": "Este es un restaurante" }, "icon": "./assets/layers/indoors/room_restaurant.svg" }, @@ -506,7 +543,8 @@ "en": "This is a room to perform security checks", "de": "Dies ist ein Raum für Sicherheitskontrollen", "cs": "Jedná se o místnost pro provádění bezpečnostních kontrol", - "pl": "To jest pomieszczenie do wykonywania kontroli bezpieczeństwa" + "pl": "To jest pomieszczenie do wykonywania kontroli bezpieczeństwa", + "es": "Esta es una sala para realizar controles de seguridad" }, "icon": "./assets/layers/indoors/room_security_check.svg" }, @@ -515,7 +553,8 @@ "then": { "en": "This is a sport room", "de": "Dies ist ein Raum um Sport zu treiben", - "cs": "Jedná se o sportovní místnost" + "cs": "Jedná se o sportovní místnost", + "es": "Esta es una sala de deportes" }, "icon": "./assets/layers/indoors/room_sport.svg" }, @@ -526,7 +565,8 @@ "ca": "Açò és un magatzem", "de": "Dies ist ein Lagerraum", "cs": "Jedná se o skladovací místnost", - "pl": "To jest magazyn" + "pl": "To jest magazyn", + "es": "Esta es una sala de almacenamiento" }, "icon": "./assets/layers/indoors/room_storage.svg" }, @@ -536,7 +576,8 @@ "en": "This is a technical room", "de": "Dies ist ein Technikraum", "cs": "Jedná se o technickou místnost", - "pl": "To jest pomieszczenie techniczne" + "pl": "To jest pomieszczenie techniczne", + "es": "Esta es una sala técnica" }, "icon": "./assets/layers/indoors/room_technical.svg" }, @@ -546,7 +587,8 @@ "en": "These are toilets", "de": "Dies ist ein WC-Raum", "cs": "Jedná se o toalety", - "pl": "To są toalety" + "pl": "To są toalety", + "es": "Estos son baños" }, "icon": "./assets/layers/indoors/room_toilets.svg", "addExtraTags": [ @@ -560,7 +602,8 @@ "ca": "Açò és una sala d'espera", "de": "Dies ist ein Wartezimmer", "cs": "Jedná se o čekárnu", - "pl": "To jest poczekalnia" + "pl": "To jest poczekalnia", + "es": "Esta es una sala de espera" }, "icon": "./assets/layers/indoors/room_waiting.svg" } @@ -572,7 +615,8 @@ "en": "How much people can at most fit in this room?", "de": "Wie viele Personen passen höchstens in diesen Raum?", "cs": "Kolik lidí se maximálně vejde do této místnosti?", - "pl": "Ile osób może pomieścić to pomieszczenie?" + "pl": "Ile osób może pomieścić to pomieszczenie?", + "es": "¿Cuántas personas pueden caber como máximo en esta habitación?" }, "condition": { "or": [ @@ -591,7 +635,8 @@ "en": "At most {capacity} people fit this room", "de": "Kapazität für höchstens {capacity} Personen", "cs": "Do této místnosti se vejde maximálně {capacity} osob", - "pl": "To pomieszczenie może pomieścić maksymalnie {capacity} osób" + "pl": "To pomieszczenie może pomieścić maksymalnie {capacity} osób", + "es": "En esta habitación caben como máximo {capacity} personas" }, "freeform": { "key": "capacity", @@ -624,6 +669,7 @@ "snapName": { "en": "an indoor wall", "nl": "een binnenmuur", - "de": "eine Innenwand" + "de": "eine Innenwand", + "es": "una pared interior" } } diff --git a/assets/layers/information_board/information_board.json b/assets/layers/information_board/information_board.json index 15ad25528..cb7178344 100644 --- a/assets/layers/information_board/information_board.json +++ b/assets/layers/information_board/information_board.json @@ -8,7 +8,7 @@ "de": "Informationstafeln", "ru": "Информационные щиты", "ca": "Panells d'informació", - "es": "Paneles informativos", + "es": "Paneles de información", "pl": "Tablice informacyjne", "cs": "Informační tabule" }, @@ -16,7 +16,7 @@ "en": "A layer showing touristical, road side information boards (e.g. giving information about the landscape, a building, a feature, a map, …)", "nl": "Deze laag toont informatieborden in de publieke ruimte die uitleg geven over een bezienswaardigheid (bv. uitleg over het landschap, een ruine, een kaart van de omgeving, ...)", "de": "Eine Ebene mit touristischen, straßenseitigen Informationstafeln (z. B. mit Informationen über die Landschaft, ein Gebäude, ein Merkmal, eine Karte, …)", - "es": "Una capa que muestra paneles informativos turísticos (ej. informan sobre el paisaje, una construcción, una característica, un mapa, ...)", + "es": "Una capa que muestra paneles de información turística y de carretera (por ejemplo, que brindan información sobre el paisaje, un edificio, una característica, un mapa, etc.)", "ca": "Una capa que mostra panells informatius turístics (p.e. informen sobre el paissatge, una construcció, una característica, un mapa, …)", "pl": "Warstwa pokazujące przydrożne tablice informacyjne dla turystów (np. informujące o krajobrazie, budynku, obiekcie, mapa, ...)", "cs": "Vrstva zobrazující turistické informační tabule u silnice (např. informace o krajině, budově, objektu, mapě, ...)" @@ -38,7 +38,7 @@ "de": "Informationstafel", "ru": "Информационный щит", "ca": "Panell d'informació", - "es": "Panel informativo", + "es": "Panel de información", "pl": "Tablica informacyjna", "cs": "Informační tabule" } @@ -75,7 +75,7 @@ "fr": "une panneau d'informations", "de": "eine Informationstafel", "ru": "информационный щит", - "es": "un panel informativo", + "es": "un panel de información", "ca": "un tauler informatiu", "pl": "tablica informacyjna", "cs": "informační tabule" diff --git a/assets/layers/item_with_image/item_with_image.json b/assets/layers/item_with_image/item_with_image.json index 5d52bfc63..8247711bc 100644 --- a/assets/layers/item_with_image/item_with_image.json +++ b/assets/layers/item_with_image/item_with_image.json @@ -2,7 +2,8 @@ "id": "item_with_image", "name": { "en": "Items with at least one image", - "de": "Element mit mindestens einem Bild" + "de": "Element mit mindestens einem Bild", + "es": "Elementos con al menos una imagen" }, "description": "All items with an image. All alone, not a layer which is relevant for any MapComplete theme, as it is a random collection of items. However, when put into the databank, this allows to quickly fetch (the URL of) pictures nearby a different object, to quickly link this", "source": { @@ -19,7 +20,20 @@ "image:7~*", "image:8~*", "image:9~*", - "image:10~*" + "image:10~*", + "panoramax~*", + "panoramax:0~*", + "panoramax:1~*", + "panoramax:2~*", + "panoramax:3~*", + "panoramax:4~*", + "panoramax:5~*", + "panoramax:6~*", + "panoramax:7~*", + "panoramax:8~*", + "panoramax:9~*", + "panoramax:10~*", + "mapillary~*" ] } }, @@ -27,7 +41,8 @@ "title": { "render": { "en": "POI with image", - "de": "POI mit Bild" + "de": "POI mit Bild", + "es": "PDI con imagen" }, "mappings": [ { @@ -56,4 +71,4 @@ "images" ], "allowMove": false -} +} \ No newline at end of file diff --git a/assets/layers/kerbs/kerbs.json b/assets/layers/kerbs/kerbs.json index 268be1117..fe65b56a4 100644 --- a/assets/layers/kerbs/kerbs.json +++ b/assets/layers/kerbs/kerbs.json @@ -9,7 +9,8 @@ "ru": "Бордюры", "pl": "Krawężniki", "ca": "Vroades", - "cs": "Obrubníky" + "cs": "Obrubníky", + "es": "Bordillos" }, "description": { "en": "A layer showing kerbs.", @@ -19,7 +20,8 @@ "ru": "Слой, изображающий бордюры.", "pl": "Warstwa pokazująca krawężniki.", "ca": "Una capa que mostra les vorades.", - "cs": "Vrstva zobrazující obrubníky." + "cs": "Vrstva zobrazující obrubníky.", + "es": "Una capa que muestra bordillos." }, "source": { "osmTags": "barrier=kerb" @@ -35,7 +37,8 @@ "ru": "Бордюр", "pl": "Krawężnik", "ca": "Vorada", - "cs": "Obrubník" + "cs": "Obrubník", + "es": "Bordillo" } }, "pointRendering": [ @@ -87,7 +90,8 @@ "ru": "бордюр", "pl": "krawężnik", "ca": "una vorada", - "cs": "obrubník" + "cs": "obrubník", + "es": "un bordillo" }, "tags": [ "barrier=kerb" @@ -97,7 +101,8 @@ "nl": "Stoeprand in een voetpad", "de": "Bordstein in einem Fußweg", "fr": "Bordure dans un trottoir", - "cs": "Obrubník na chodníku" + "cs": "Obrubník na chodníku", + "es": "Bordillo en una acera" }, "snapToLayer": [ "cycleways_and_roads", @@ -118,7 +123,8 @@ "ca": "Quina és l'altura d'aquest gual?", "ru": "Какая высота у этого бордюра?", "pl": "Jaka jest wysokość tego krawężnika?", - "cs": "Jaká je výška tohoto obrubníku?" + "cs": "Jaká je výška tohoto obrubníku?", + "es": "¿Cuál es la altura de este bordillo?" }, "mappings": [ { @@ -130,7 +136,8 @@ "fr": "Cette bordure est surélevée (>3 cm)", "ca": "Aquest gual està elevat (>3cm)", "pl": "Ten krawężnik jest wyniesiony (>3 cm)", - "cs": "Tento obrubník je zvýšený (>3 cm)" + "cs": "Tento obrubník je zvýšený (>3 cm)", + "es": "Este bordillo es elevado (>3 cm)" }, "icon": { "path": "./assets/layers/kerbs/raised.svg", @@ -147,7 +154,8 @@ "ca": "Aquest gual està rebaixat (~3 cm)", "ru": "Это пониженный бордюр (~3 см)", "pl": "Ten krawężnik jest obniżony (~3 cm)", - "cs": "Tento obrubník je snížený (~3 cm)" + "cs": "Tento obrubník je snížený (~3 cm)", + "es": "Este bordillo es rebajado (~3 cm)" }, "icon": { "path": "./assets/layers/kerbs/lowered.svg", @@ -163,7 +171,8 @@ "fr": "Cette bordure est affleurante (~0cm)", "ca": "Aquest gual està a ras (~0cm)", "ru": "Этот бордюр вровень с дорогой (~0 см)", - "cs": "Tento obrubník je v jedné rovině (~0 cm)" + "cs": "Tento obrubník je v jedné rovině (~0 cm)", + "es": "Este bordillo está a ras (~0cm)" }, "icon": { "path": "./assets/layers/kerbs/flush.svg", @@ -180,7 +189,8 @@ "ru": "Здесь нет бордюра", "pl": "Nie ma tutaj krawężnika", "ca": "Aquí no hi ha vorada", - "cs": "Není zde obrubník" + "cs": "Není zde obrubník", + "es": "Aquí no hay bordillo" }, "hideInAnswer": true, "icon": { @@ -197,7 +207,8 @@ "fr": "Il y a un trottoir de hauteur inconnue", "pl": "Jest krawężnik o nieznanej wysokości", "ca": "Hi ha una vorada d'altura desconeguda", - "cs": "Obrubník neznámé výšky" + "cs": "Obrubník neznámé výšky", + "es": "Hay un bordillo de altura desconocida" }, "hideInAnswer": true } @@ -214,7 +225,8 @@ "ca": "Hi ha una superfície podotàctil a aquest gual?", "ru": "Есть ли тактильная плитка у этого бордюра?", "pl": "Czy na tym krawężniku są wypustki dla niewidomych?", - "cs": "Je na tomto obrubníku hmatová dlažba?" + "cs": "Je na tomto obrubníku hmatová dlažba?", + "es": "¿Hay pavimento táctil en este bordillo?" }, "mappings": [ { @@ -227,7 +239,8 @@ "ca": "Aquest gual té superfície podotàctil.", "ru": "У этого бордюра есть тактильная плитка.", "pl": "Ten krawężnik ma wypustki dla niewidomych.", - "cs": "Tento obrubník má hmatovou dlažbu." + "cs": "Tento obrubník má hmatovou dlažbu.", + "es": "Este bordillo tiene pavimento táctil." } }, { @@ -240,7 +253,8 @@ "ca": "Aquest gual no té superfície podotàctil.", "ru": "У этого бордюра нет тактильной плитки.", "pl": "Ten krawężnik nie ma wypustek dla niewidomych.", - "cs": "Tento obrubník nemá hmatovou dlažbu." + "cs": "Tento obrubník nemá hmatovou dlažbu.", + "es": "Este bordillo no tiene pavimento táctil." } }, { @@ -253,7 +267,8 @@ "ca": "La vorera té superfície podotàctil, però és incorrecte.", "ru": "У этого бордюра неверно выложенная тактильная плитка.", "pl": "Ten krawężnik ma wypustki dla niewidomych, ale nieprawidłowe.", - "cs": "Tento obrubník má hmatovou dlažbu, ale je nesprávný." + "cs": "Tento obrubník má hmatovou dlažbu, ale je nesprávný.", + "es": "Este bordillo tiene pavimento táctil, pero es incorrecto." }, "hideInAnswer": true } @@ -270,7 +285,8 @@ "ca": "Quina és l'altura d'aquest gual?", "ru": "Какая высота у этого бордюра?", "pl": "Jaka jest wysokość tego krawężnika?", - "cs": "Jaká je výška tohoto obrubníku?" + "cs": "Jaká je výška tohoto obrubníku?", + "es": "¿Cuál es la altura de este bordillo?" }, "render": { "en": "Kerb height: {kerb:height}", @@ -280,7 +296,8 @@ "ru": "Высота бордюра: {kerb:height}", "pl": "Wysokość krawężnika: {kerb:height}", "ca": "Altura de la vorada {kerb:height}", - "cs": "Výška obrubníku: {kerb:height}" + "cs": "Výška obrubníku: {kerb:height}", + "es": "Altura del bordillo: {kerb:height}" }, "freeform": { "key": "kerb:height", @@ -292,7 +309,8 @@ "ru": "Высота бордюра", "pl": "Wysokość krawężnika", "ca": "Altura de la vorada", - "cs": "Výška obrubníku" + "cs": "Výška obrubníku", + "es": "Altura del bordillo" }, "type": "pnat" }, @@ -304,7 +322,8 @@ "de": "Der Bordstein ist bündig und niedriger als 1 cm.", "ca": "Aquest gual està rebaixat i és més baix que 1cm.", "nl": "Deze stoeprand is vlak en lager als 1 cm.", - "cs": "Tento obrubník je v jedné rovině a je nižší než 1 cm." + "cs": "Tento obrubník je v jedné rovině a je nižší než 1 cm.", + "es": "Este bordillo está a ras y tiene menos de 1 cm de altura." } } ] @@ -323,7 +342,8 @@ "ru": "Все виды бордюров", "pl": "Wszystkie rodzaje krawężników", "ca": "Tots els tipus de vorades", - "cs": "Všechny typy obrubníků" + "cs": "Všechny typy obrubníků", + "es": "Todos los tipos de bordillos" } }, { @@ -335,7 +355,8 @@ "fr": "Bordure surélevée (>3 cm)", "pl": "Podniesiony krawężnik (>3 cm)", "ca": "Vorada elevada (>3 cm)", - "cs": "Zvýšený obrubník (>3 cm)" + "cs": "Zvýšený obrubník (>3 cm)", + "es": "Bordillo elevado (>3 cm)" } }, { @@ -348,7 +369,8 @@ "ru": "Пониженный бордюр (~3 см)", "pl": "Obniżony krawężnik (~3 cm)", "ca": "Vorada rebaixada (~3 cm)", - "cs": "Snížený obrubník (~3 cm)" + "cs": "Snížený obrubník (~3 cm)", + "es": "Bordillo rebajado (~3 cm)" } }, { @@ -360,7 +382,8 @@ "fr": "Bordure affleurante (~0cm)", "ru": "Вровень с дорогой (~0 см)", "ca": "Vorada a ras (~0 cm)", - "cs": "Zapuštěný obrubník (~0 cm)" + "cs": "Zapuštěný obrubník (~0 cm)", + "es": "Bordillo a ras (~0 cm)" } }, { @@ -373,7 +396,8 @@ "ru": "Нет бордюра", "pl": "Brak krawężnika", "ca": "Sense vorada", - "cs": "Bez obrubníku" + "cs": "Bez obrubníku", + "es": "Sin bordillo" } }, { @@ -385,7 +409,8 @@ "fr": "Bordure de hauteur inconnue", "pl": "Krawężnik z nieznaną wysokością", "ca": "Vorada sense altura coneguda", - "cs": "Obrubník s neznámou výškou" + "cs": "Obrubník s neznámou výškou", + "es": "Bordillo con altura desconocida" } } ] @@ -409,6 +434,7 @@ ], "snapName": { "en": "a kerb", - "de": "ein Bordstein" + "de": "ein Bordstein", + "es": "un bordillo" } } diff --git a/assets/layers/kindergarten_childcare/kindergarten_childcare.json b/assets/layers/kindergarten_childcare/kindergarten_childcare.json index da586630c..45d8c7baa 100644 --- a/assets/layers/kindergarten_childcare/kindergarten_childcare.json +++ b/assets/layers/kindergarten_childcare/kindergarten_childcare.json @@ -6,7 +6,8 @@ "de": "Kindergärten und Kinderkrippen", "ca": "Llars d'infants i guarderies", "pl": "Przedszkola i żłobki", - "cs": "Mateřské školky a péče o děti" + "cs": "Mateřské školky a péče o děti", + "es": "Jardines de infancia y guarderías" }, "description": "Shows kindergartens and preschools. Both are grouped in one layer, as they are regularly confused with each other", "source": { @@ -28,7 +29,8 @@ "nl": "Kleuterschool {name}", "de": "Kindergarten {name}", "pl": "Przedszkole {name}", - "cs": "Mateřská škola {name}" + "cs": "Mateřská škola {name}", + "es": "Jardín de infancia {name}" } }, { @@ -38,7 +40,8 @@ "nl": "Kinderopvang {name}", "de": "Kinderkrippe {name}", "pl": "Żłobek {name}", - "cs": "Péče o děti {name}" + "cs": "Péče o děti {name}", + "es": "Guardería {name}" } } ] @@ -94,7 +97,8 @@ "ru": "детский сад", "ca": "una llar d'infants", "pl": "przedszkole", - "cs": "mateřská školka" + "cs": "mateřská školka", + "es": "un jardín de infancia" }, "description": "A kindergarten (also known as preschool) is a school where small kids receive early education.", "tags": [ @@ -110,7 +114,8 @@ "de": "eine Kinderkrippe", "ca": "una guarderia", "pl": "żłobek", - "cs": "péče o děti" + "cs": "péče o děti", + "es": "una guardería" }, "description": "A childcare (also known as a nursery or daycare) is a facility which looks after small kids, but does not offer them an education program.", "tags": [ @@ -127,7 +132,8 @@ "de": "Um welche Art von Einrichtung handelt es sich?", "pl": "Jaki to rodzaj placówki?", "ca": "Quin tipus d'instal·lació és aquesta?", - "cs": "O jaký typ zařízení se jedná?" + "cs": "O jaký typ zařízení se jedná?", + "es": "¿Qué tipo de centro es este?" }, "mappings": [ { @@ -138,7 +144,8 @@ "de": "Dies ist ein Kindergarten (auch bekannt als Vorschule), in dem kleine Kinder eine Früherziehung erhalten.", "ca": "Aquesta és una llar d'infants (també coneguda com a preescolar) on els nens petits reben educació primerenca.", "pl": "To jest przedszkole, gdzie małe dzieci otrzymują wczesną edukację.", - "cs": "Jedná se o mateřskou školu (známou také jako předškolní zařízení), kde se malým dětem dostává raného vzdělání." + "cs": "Jedná se o mateřskou školu (známou také jako předškolní zařízení), kde se malým dětem dostává raného vzdělání.", + "es": "Se trata de un jardín de infancia (también conocido como preescolar) donde los niños pequeños reciben educación temprana." }, "addExtraTags": [ "isced:level=0", @@ -151,7 +158,8 @@ "en": "This is a childcare facility, such as a nursery or daycare where small kids are looked after. They do not offer an education and are ofter run as private businesses", "nl": "Dit is een kinderopvang (ook een creche of onthaalmoeder genoemd) waar er voor kleine kinderen gezorgd wordt. Onderwijs is niet de hoofdfocus.", "de": "Dies ist eine Kinderbetreuungseinrichtung, z. B. ein Kinderkrippe oder eine Tagesmutter, in der Kleinkinder betreut werden. Sie bieten keine Ausbildung an und werden oft als Privatunternehmen geführt", - "cs": "Jedná se o zařízení péče o děti, jako jsou jesle nebo školka, kde se starají o malé děti. Neposkytují vzdělání a jsou často provozovány jako soukromé podniky" + "cs": "Jedná se o zařízení péče o děti, jako jsou jesle nebo školka, kde se starají o malé děti. Neposkytují vzdělání a jsou často provozovány jako soukromé podniky", + "es": "Se trata de un centro de cuidado infantil, como una guardería o una sala de juegos donde se cuida a los niños pequeños. No ofrecen educación y suelen ser empresas privadas" }, "addExtraTags": [ "isced:level=", @@ -168,7 +176,8 @@ "nl": "Wat is de naam van deze faciliteit?", "ca": "Com s'anomena aquesta instal·lació?", "pl": "Jaka jest nazwa tej placówki?", - "cs": "Jak se toto zařízení jmenuje?" + "cs": "Jak se toto zařízení jmenuje?", + "es": "¿Cuál es el nombre de este centro?" }, "render": { "en": "This facility is named {name}", @@ -176,7 +185,8 @@ "ca": "Aquesta instal·lació s'anomena {name}", "nl": "Deze faciliteit heet {name}", "pl": "Ta placówka nazywa się {name}", - "cs": "Toto zařízení se jmenuje {name}" + "cs": "Toto zařízení se jmenuje {name}", + "es": "Este centro se llama {name}" }, "freeform": { "key": "name" @@ -193,7 +203,8 @@ "nl": "Wanneer is deze kinderopvang geopend?", "de": "Wann ist diese Kinderbetreuung geöffnet?", "pl": "W jakich godzinach ten żłobek jest otwarty?", - "cs": "Kdy je tato péče o děti otevřena?" + "cs": "Kdy je tato péče o děti otevřena?", + "es": "¿Cuándo abre esta guardería?" }, "condition": "amenity=childcare" } @@ -206,7 +217,8 @@ "de": "Wie viele Kinder können hier maximal angemeldet werden?", "ca": "Quants nens (com a màxim) es poden inscriure aquí?", "pl": "Jak wiele dzieci (maksymalnie) może być tutaj zapisanych?", - "cs": "Kolik dětí (maximálně) zde může být zapsáno?" + "cs": "Kolik dětí (maximálně) zde může být zapsáno?", + "es": "¿Cuántos niños (como máximo) pueden inscribirse aquí?" }, "render": { "en": "This facility has room for {capacity} kids", @@ -214,7 +226,8 @@ "de": "Diese Einrichtung bietet Platz für {capacity} Kinder", "ca": "Aquesta instal·lació té espai per a {capacity} nens", "pl": "Ta placówka ma miejsce na {capacity} dzieci", - "cs": "Toto zařízení má prostor pro {capacity} dětí" + "cs": "Toto zařízení má prostor pro {capacity} dětí", + "es": "Este centro tiene capacidad para {capacity} niños" }, "freeform": { "key": "capacity", diff --git a/assets/layers/last_click/last_click.json b/assets/layers/last_click/last_click.json index 6b92391c4..7b8bb0227 100644 --- a/assets/layers/last_click/last_click.json +++ b/assets/layers/last_click/last_click.json @@ -52,7 +52,8 @@ "ca": "Afegeix un nou punt o nota", "fr": "Ajouter un nouveau point ou ajouter une note", "pl": "Dodaj nowy punkt lub dodaj notatkę", - "cs": "Přidání nového bodu nebo přidání poznámky" + "cs": "Přidání nového bodu nebo přidání poznámky", + "es": "Añadir un nuevo punto o añadir una nota" } }, { @@ -64,7 +65,8 @@ "ca": "Afegeix una nova nota", "fr": "Ajouter une nouvelle note", "pl": "Dodaj nową notatkę", - "cs": "Přidání nové poznámky" + "cs": "Přidání nové poznámky", + "es": "Añadir una nueva nota" } }, { @@ -76,7 +78,8 @@ "ca": "Afegeix un nou punt", "fr": "Ajouter un nouveau point", "pl": "Dodaj nowy punkt", - "cs": "Přidání nového bodu" + "cs": "Přidání nového bodu", + "es": "Añadir un nuevo punto" } } ] @@ -116,7 +119,7 @@ "da": "Klik her for at tilføje et nyt punkt", "de": "Hier klicken, um ein neues Element hinzuzufügen", "en": "Click here to add a new item", - "es": "Haga clic aquí para añadir un nuevo ítem", + "es": "Haz clic aquí para añadir un nuevo elemento", "fil": "I-click ito para mag-dagdag ng bagong bagay", "fr": "Cliquez ici pour ajouter un élément", "hu": "Új elem hozzáadásához kattints ide", @@ -126,7 +129,8 @@ "nl": "Klik hier om een item toe te voegen", "pt": "Adicionar novo item", "zh_Hant": "點這邊新增新項目", - "pl": "Kliknij tutaj, aby dodać nowy obiekt" + "pl": "Kliknij tutaj, aby dodać nowy obiekt", + "uk": "Натисніть тут, щоб додати новий об'єкт" }, "mappings": [ { @@ -143,7 +147,8 @@ "ca": "Crea una nova nota del mapa", "fr": "Créer une nouvelle note de carte", "pl": "Utwórz nową notatkę na mapie", - "cs": "Vytvoření nové mapové poznámky" + "cs": "Vytvoření nové mapové poznámky", + "es": "Crear una nueva nota del mapa" } } ] diff --git a/assets/layers/lighthouse/lighthouse.json b/assets/layers/lighthouse/lighthouse.json index f5917195a..883546c2f 100644 --- a/assets/layers/lighthouse/lighthouse.json +++ b/assets/layers/lighthouse/lighthouse.json @@ -2,7 +2,8 @@ "id": "lighthouse", "name": { "en": "lighthouse", - "de": "Leuchtturm" + "de": "Leuchtturm", + "es": "faro" }, "source": { "osmTags": "man_made=lighthouse" @@ -11,14 +12,16 @@ "title": { "render": { "en": "lighthouse", - "de": "Leuchtturm" + "de": "Leuchtturm", + "es": "faro" }, "mappings": [ { "if": "name~*", "then": { "en": "{name}", - "de": "{name}" + "de": "{name}", + "es": "{name}" } } ] @@ -45,7 +48,8 @@ ], "title": { "en": "a lighthouse", - "de": "ein Leuchtturm" + "de": "ein Leuchtturm", + "es": "un faro" } } ], @@ -55,11 +59,13 @@ { "render": { "en": "The height of this lighthouse is {height} metres.", - "de": "Die Höhe dieses Leuchtturms beträgt {height} Meter." + "de": "Die Höhe dieses Leuchtturms beträgt {height} Meter.", + "es": "La altura de este faro es de {height} metros." }, "question": { "en": "What is the height of this lighthouse, in metres?", - "de": "Wie hoch ist dieser Leuchtturm in Metern?" + "de": "Wie hoch ist dieser Leuchtturm in Metern?", + "es": "¿Cuál es la altura de este faro, en metros?" }, "freeform": { "key": "height", diff --git a/assets/layers/love_hotel/love_hotel.json b/assets/layers/love_hotel/love_hotel.json index 0497406ea..0e3713646 100644 --- a/assets/layers/love_hotel/love_hotel.json +++ b/assets/layers/love_hotel/love_hotel.json @@ -2,11 +2,13 @@ "id": "love_hotel", "name": { "en": "Love hotels", - "de": "Love Hotels" + "de": "Love Hotels", + "es": "Hoteles del amor" }, "description": { "en": "A love hotel is a type of short-stay hotel found around the world operated primarily for the purpose of allowing guests privacy for sexual activities", - "de": "Ein Love Hotel ist eine Art Kurzzeithotel, das in erster Linie zu dem Zweck betrieben wird, den Gästen Privatsphäre für sexuelle Aktivitäten zu bieten" + "de": "Ein Love Hotel ist eine Art Kurzzeithotel, das in erster Linie zu dem Zweck betrieben wird, den Gästen Privatsphäre für sexuelle Aktivitäten zu bieten", + "es": "Un hotel del amor es un tipo de hotel de corta estancia que se encuentra en todo el mundo y que funciona principalmente con el fin de ofrecer a los huéspedes privacidad para las actividades sexuales" }, "source": { "osmTags": "amenity=love_hotel" @@ -15,7 +17,8 @@ "title": { "render": { "en": "Love Hotel {name}", - "de": "Love Hotel {name}" + "de": "Love Hotel {name}", + "es": "Hotel del amor {name}" } }, "pointRendering": [ @@ -53,11 +56,13 @@ { "title": { "en": "a love hotel", - "de": "ein Love Hotel" + "de": "ein Love Hotel", + "es": "un hotel del amor" }, "description": { "en": "A love hotel is a type of short-stay hotel found around the world operated primarily for the purpose of allowing guests privacy for sexual activities.", - "de": "Ein Love Hotel ist eine Art Kurzzeithotel, das in erster Linie zu dem Zweck betrieben wird, den Gästen Privatsphäre für sexuelle Aktivitäten zu bieten." + "de": "Ein Love Hotel ist eine Art Kurzzeithotel, das in erster Linie zu dem Zweck betrieben wird, den Gästen Privatsphäre für sexuelle Aktivitäten zu bieten.", + "es": "Un hotel del amor es un tipo de hotel de corta estancia que se encuentra en todo el mundo y que funciona principalmente con el fin de ofrecer a los huéspedes privacidad para las actividades sexuales." }, "tags": [ "amenity=love_hotel" @@ -71,11 +76,13 @@ "id": "name", "question": { "en": "What is the name of this love hotel?", - "de": "Wie lautet der Name des Love Hotels?" + "de": "Wie lautet der Name des Love Hotels?", + "es": "¿Cuál es el nombre de este hotel del amor?" }, "render": { "en": "This love hotel is named {name}", - "de": "Der Name des Love Hotels lautet {name}" + "de": "Der Name des Love Hotels lautet {name}", + "es": "Este hotel del amor se llama {name}" }, "freeform": { "key": "name" diff --git a/assets/layers/map/map.json b/assets/layers/map/map.json index c8b15d456..6e53309bd 100644 --- a/assets/layers/map/map.json +++ b/assets/layers/map/map.json @@ -19,7 +19,7 @@ "it": "Una mappa, destinata ai turisti e che è sistemata in maniera permanente in uno spazio pubblico", "fr": "Une carte, destinée aux touristes, installée en permanence dans l'espace public", "de": "Eine Karte, die für Touristen gedacht ist und dauerhaft im öffentlichen Raum aufgestellt ist", - "es": "Un mapa, pensado para turistas y que está instalado de manera permanente en un espacio público", + "es": "Un mapa, pensado para turistas, que está instalado permanentemente en el espacio público", "pl": "Mapa, przeznaczona dla turystów, która jest zainstalowana w przestrzeni publicznej na stałe", "ca": "Un mapa", "cs": "Mapa určená pro turisty, která je trvale instalována na veřejném prostranství" @@ -141,7 +141,8 @@ "pl": "Jaki rodzaj mapy jest pokazany?", "ca": "Quin tipus de mapa es mostra?", "cs": "Jaký typ mapy je zobrazen?", - "fr": "De quel type de carte s'agit-il ?" + "fr": "De quel type de carte s'agit-il ?", + "es": "¿Qué tipo de mapa se muestra?" }, "mappings": [ { @@ -151,7 +152,8 @@ "de": "Topographische Katte

Die Karte enthält Höhenlinien.

", "ca": "Mapa topogràfic

El mapa conté línies de contorn.

", "cs": "Topografická mapa

Mapa obsahuje vrstevnice.

", - "fr": "Plan topographique" + "fr": "Plan topographique", + "es": "Mapa topográfico

El mapa contiene líneas de contorno.

" } }, { @@ -162,7 +164,8 @@ "pl": "Mapa z wszystkimi ulicami i ścieżkami w danym obszarze.

Ulica w większości mają nazwy; kąty, odległości itp. są poprawne

", "ca": "Un mapa amb tots els carrers o camins d'una àrea.

Els carrers estan majoritàriament nomenats; els angles, distàncies etc. són acurades

", "cs": "Mapa se všemi ulicemi nebo cestami v oblasti.

Ulice jsou většinou pojmenované, úhly, vzdálenosti atd. jsou přesné

", - "fr": "Une carte des rues du secteur.

Le nom des rues est généralement indiqué; les angles, distances, etc. sont précis

" + "fr": "Une carte des rues du secteur.

Le nom des rues est généralement indiqué; les angles, distances, etc. sont précis

", + "es": "Un mapa con todas las calles o vías de una zona.

Las calles suelen tener nombre; los ángulos, las distancias, etc., son precisos

" } }, { @@ -173,7 +176,8 @@ "pl": "To jest mapa schematyczna.

Mapa-szkic z tylko ważnymi drogami i POI. Kąty, odległości itp. są tylko ilustratywne, niedokładne.

", "ca": "Això és un mapa esquemàtic.

Un mapa esbossat amb només camins importants i PDI. Els angles, els trajectes etc. són merament il·lustratius, no acurat.

", "cs": "Jedná se o schematickou mapu.

Schematická mapa s vyznačením pouze důležitých cest a bodů zájmu. Úhly, vzdálenosti atd. jsou pouze ilustrativní, nikoliv přesné.

", - "fr": "Un plan schématique.

Une carte schématique sur laquelle seuls les éléments principaux sont indiqués (rues, POIs). Les angles, distances etc. peuvent être déformés pour rendre le plan plus lisible.

" + "fr": "Un plan schématique.

Une carte schématique sur laquelle seuls les éléments principaux sont indiqués (rues, POIs). Les angles, distances etc. peuvent être déformés pour rendre le plan plus lisible.

", + "es": "Este es un mapa esquemático.

Un mapa esquemático con sólo las vías y los PDI importantes. Los ángulos, las distancias, etc., son meramente ilustrativos, no precisos.

" } }, { @@ -183,7 +187,8 @@ "de": "Dies ist ein Toposkop.

Eine Markierung, die an hohen Stellen angebracht ist und die Richtung zu wichtigen Landschaftsobjekten anzeigt, die von diesem Punkt aus gesehen werden können

", "ca": "Això és un toposcope.

Un marcador erigit en llocs alts que indica la direcció cap als elements paisatgístics notables que es poden veure des d'aquest punt

", "cs": "Jedná se o toposkop.

Značka vztyčená na vyvýšených místech, která udává směr k pozoruhodným krajinným prvkům, které jsou z tohoto místa vidět

", - "fr": "Une table d'orientation.

Un élément érigé sur une hauteur qui indique la direction d'éléments paysagers remarquables visibles depuis ce point

" + "fr": "Une table d'orientation.

Un élément érigé sur une hauteur qui indique la direction d'éléments paysagers remarquables visibles depuis ce point

", + "es": "Este es un topoescopo.

Un marcador erigido en lugares altos que indica la dirección hacia características notables del paisaje que se pueden ver desde ese punto

" } } ] @@ -196,7 +201,8 @@ "pl": "Jaki jest rozmiar obszaru pokazanego na tej mapie?", "ca": "Quina és la mida de l'àrea mostrada en el mapa?", "cs": "Jak velká je zobrazená oblast na mapě?", - "fr": "Quelle est la taille de la zone visible sur la carte ?" + "fr": "Quelle est la taille de la zone visible sur la carte ?", + "es": "¿Cuál es el tamaño del área mostrada en el mapa?" }, "mappings": [ { @@ -207,7 +213,8 @@ "pl": "Plan pomieszczeń w budynku", "ca": "Un mapa de les habitacions dins d'un edifici", "cs": "Mapa místností uvnitř budovy", - "fr": "Plan d'intérieur de bâtiment, montrant les différentes pièces" + "fr": "Plan d'intérieur de bâtiment, montrant les différentes pièces", + "es": "Un mapa de las habitaciones dentro de un edificio" } }, { @@ -217,7 +224,8 @@ "de": "Eine Karte mit besonderen Orten, wie einem historischen Schloss, einem Park, einem Campus, einem Wald, ....", "ca": "Un mapa d'un lloc especial, com un castell històric, un parc, un campus, un bosc, …", "cs": "Mapa speciálního místa, například historického zámku, parku, areálu, lesa, ....", - "fr": "La carte d'un site particulier, comme un château, un parc, un campus, une forêt, ...." + "fr": "La carte d'un site particulier, comme un château, un parc, un campus, une forêt, ....", + "es": "Un mapa de un sitio especial, como un castillo histórico, un parque, un campus, un bosque, ..." } }, { @@ -228,7 +236,8 @@ "pl": "Mapa pokazująca wieś lub niewielkie miasto", "ca": "Un mapa que mostra el poble o la ciutat", "cs": "Mapa zobrazující vesnici nebo město", - "fr": "Une carte de village ou de petite ville" + "fr": "Une carte de village ou de petite ville", + "es": "Un mapa que muestra el pueblo o la ciudad" } }, { @@ -238,8 +247,9 @@ "de": "Stadt", "pl": " Mapa miasta", "ca": " Un mapa d'una ciutat", - "cs": " Mapa města", - "fr": " Une carte de ville" + "cs": "Mapa města", + "fr": " Une carte de ville", + "es": "Un mapa de una ciudad" } }, { @@ -250,7 +260,8 @@ "pl": "Mapa całego regionu, pokazująca wiele miast i wsi", "ca": "El mapa d'una regió sencera, mostrant múltiples ciutats i pobles", "cs": "Mapa celého regionu s několika městy a vesnicemi", - "fr": "La carte d'une région entière, montrant de nombreuses villes et villages" + "fr": "La carte d'une région entière, montrant de nombreuses villes et villages", + "es": "El mapa de toda una región, mostrando múltiples ciudades y pueblos" } } ] @@ -320,7 +331,7 @@ "it": "L’attribuzione a OpenStreetMap è presente?", "de": "Ist die OpenStreetMap-Attribution vorhanden?", "fr": "L’attribution à OpenStreetMap est elle-présente ?", - "es": "¿Hay una atribución a OpenStreetMap?", + "es": "¿Se proporciona la atribución de OpenStreetMap?", "ca": "Hi ha atribució a OpenStreetMap?", "cs": "Je uveden atribut OpenStreetMap?" }, @@ -337,7 +348,7 @@ "it": "L’attribuzione a OpenStreetMap è chiaramente specificata, inclusa la licenza ODBL", "de": "OpenStreetMap ist eindeutig attributiert, einschließlich der ODBL-Lizenz", "fr": "L’attribution est clairement inscrite ainsi que la licence ODBL", - "es": "Se atribuye claramente a OpenStreetMap, incluyendo la licencia ODBL", + "es": "OpenStreetMap está claramente atribuido, incluyendo la licencia ODBL", "pl": "Źródło, czyli OpenStreetMap, jest w widoczny sposób podane, zawiera informację o licencji ODBL", "ca": "OpenStreetMap està clarament atribuït, incloent la llicència ODBL", "cs": "OpenStreetMap je jasně popsán, včetně licence ODBL" @@ -355,7 +366,7 @@ "it": "L’attribuzione a OpenStreetMap è chiaramente specificata ma la licenza non compare", "de": "OpenStreetMap ist eindeutig attributiert, aber die Lizenz wird nicht erwähnt", "fr": "L’attribution est clairement inscrite mais la licence est absente", - "es": "Se atribuya claramente a OpenStreetMap, pero no se menciona la licencia", + "es": "OpenStreetMap está claramente atribuido, pero no se menciona la licencia", "ca": "OpenStreetMap està clarament atribuït, però no es menciona la llicència", "cs": "OpenStreetMap je jasně připsána, ale licence není uvedena", "pl": "Wyraźnie zaznaczono źródło jako OpenStreetMap, ale nie podano licencji" @@ -373,7 +384,7 @@ "it": "Non era presente alcun cenno a OpenStreetMap ma qualcuno vi ha attaccato un adesivo di OpenStreetMap", "de": "OpenStreetMap wurde nicht erwähnt, aber jemand hat einen OpenStreetMap-Aufkleber darauf geklebt", "fr": "OpenStreetMap n’est pas mentionné, un sticker OpenStreetMap a été collé", - "es": "No se mencionaba OpenStreetMap, pero alguien le pegó una pegatina de OpenStreetMap", + "es": "OpenStreetMap no se mencionó, pero alguien puso una pegatina de OpenStreetMap", "ca": "OpenStreetMap no es mencionava, però algú hi ha posat una enganxina d'OpenStreetMap", "cs": "OpenStreetMap nebyl zmíněn, ale někdo dal OpenStreetMap-nálepku na to" } @@ -390,7 +401,7 @@ "it": "Non c’è alcuna attribuzione", "fr": "Il n'y a aucune attribution", "de": "Es gibt überhaupt keine Namensnennung", - "es": "No hay atribución", + "es": "No hay ninguna atribución", "ca": "No hi ha atribució", "cs": "Neexistuje vůbec žádný atribut", "pl": "W ogóle nie podano źródła" @@ -408,7 +419,7 @@ "it": "Non c’è alcuna attribuzione", "fr": "Il n'y a aucune attribution", "de": "Es gibt überhaupt keine Namensnennung", - "es": "No hay atribución", + "es": "No hay ninguna atribución", "ca": "No hi ha atribució", "cs": "Neexistuje vůbec žádný atribut", "pl": "W ogóle nie podano źródła" diff --git a/assets/layers/maproulette/maproulette.json b/assets/layers/maproulette/maproulette.json index 607cef4d0..b50dbfcbb 100644 --- a/assets/layers/maproulette/maproulette.json +++ b/assets/layers/maproulette/maproulette.json @@ -6,7 +6,8 @@ "nl": "MapRoulette Taken", "pl": "Zadania MapRoulette", "ca": "Tasques de MapRoulette", - "cs": "Úkoly MapRoulette" + "cs": "Úkoly MapRoulette", + "es": "Tareas de MapRoulette" }, "description": { "en": "Layer showing all tasks in MapRoulette", @@ -15,7 +16,7 @@ "ca": "Capa que mostra totes les tasques de MapRoulette", "pl": "Warstwa pokazująca wszystkie zadania w MapRoulette", "cs": "Vrstva zobrazující všechny úlohy v MapRoulette", - "es": "Capa mostrando todas las tareas en MapRoulette", + "es": "Capa que muestra todas las tareas en MapRoulette", "fr": "Couche montrant toutes les tâches dans MapRoulette" }, "source": { @@ -31,7 +32,8 @@ "de": "MapRoulette-Element: {parentName}", "nl": "MapRoulette Item: {parentName}", "pl": "Obiekt MapRoulette: {parentName}", - "cs": "Položka MapRoulette: {parentName}" + "cs": "Položka MapRoulette: {parentName}", + "es": "Elemento de MapRoulette: {parentName}" } }, "titleIcons": [ @@ -105,7 +107,8 @@ "nl": "Taak werd gecreëerd", "ca": "Es crea la tasca", "pl": "Zadanie jest stworzone", - "cs": "Úkol je vytvořen" + "cs": "Úkol je vytvořen", + "es": "Tarea creada" } }, { @@ -117,7 +120,8 @@ "pl": "Zadanie jest naprawione", "ca": "La tasca està arreglada", "cs": "Úkol je opraven", - "fr": "La tâche est résolue" + "fr": "La tâche est résolue", + "es": "Tarea corregida" } }, { @@ -129,7 +133,8 @@ "pl": "Zadanie jest fałszywie pozytywne", "ca": "La tasca és un fals positiu", "cs": "Úkol je falešně pozitivní", - "fr": "Faux positif" + "fr": "Faux positif", + "es": "La tarea es un falso positivo" } }, { @@ -140,7 +145,8 @@ "nl": "Taak werd overgeslagen", "pl": "Zadanie jest pominięte", "ca": "La tasca s'ha botat", - "cs": "Úkol je přeskočen" + "cs": "Úkol je přeskočen", + "es": "Tarea omitida" } }, { @@ -151,7 +157,8 @@ "nl": "Taak werd verwijderd", "pl": "Zadania jest usunięte", "ca": "La tasca s'ha eliminat", - "cs": "Úkol je odstraněn" + "cs": "Úkol je odstraněn", + "es": "Tarea eliminada" } }, { @@ -162,7 +169,8 @@ "nl": "Taak was al opgelost", "pl": "Zadania jest już wykonane", "ca": "La tasca ja està arreglada", - "cs": "Úkol je již opraveno" + "cs": "Úkol je již opraveno", + "es": "La tarea ya está corregida" } }, { @@ -173,7 +181,8 @@ "nl": "Taak werd als te moeilijk ervaren", "pl": "Zadanie jest oznaczone jako zbyt trudne", "ca": "La tasca s'ha marcat com a molt difícil", - "cs": "Úkol je označen jako příliš těžký" + "cs": "Úkol je označen jako příliš těžký", + "es": "La tarea está marcada como demasiado difícil" } }, { @@ -185,7 +194,8 @@ "pl": "Zadanie jest wyłączone", "ca": "La tasca està deshabilitada", "cs": "Úloha je zakázána", - "fr": "La tâche est désactivée" + "fr": "La tâche est désactivée", + "es": "Tarea deshabilitada" } } ] @@ -203,7 +213,8 @@ "de": "Als behoben markieren", "ca": "Marca com a solucionat", "pl": "Oznacz jako naprawione", - "cs": "Označit jako opravené" + "cs": "Označit jako opravené", + "es": "Marcar como corregido" } } } @@ -221,7 +232,8 @@ "de": "Als nicht gefunden oder Falschmeldung markieren", "ca": "Marca com a no trobat o com a fals positiu", "pl": "Oznacz jako nieznalezione lub fałszywie pozytywne", - "cs": "Označit jako nenalezeno nebo falešně pozitivní" + "cs": "Označit jako nenalezeno nebo falešně pozitivní", + "es": "Marcar como no encontrado o falso positivo" }, "status": "2", "image": "close" @@ -241,7 +253,8 @@ "de": "Als zu schwer markieren", "ca": "Marca com a massa complicat", "pl": "Oznacz jako zbyt trudne", - "cs": "Označit jako příliš těžké" + "cs": "Označit jako příliš těžké", + "es": "Marcar como demasiado difícil" }, "status": "6", "image": "./assets/svg/not_found.svg" @@ -260,7 +273,8 @@ "nl": "Toon taken met alle statussen", "pl": "Pokaż zadania z wszystkimi statusami", "ca": "Mostra les tasques amb tots els estats", - "cs": "Zobrazit úkoly se všemi stavy" + "cs": "Zobrazit úkoly se všemi stavy", + "es": "Mostrar tareas con todos los estados" } }, { @@ -270,7 +284,8 @@ "nl": "Toon aangemaakte taken", "pl": "Pokaż zadania, które zostały stworzone", "ca": "Mostra les tasques que es creen", - "cs": "Zobrazit vytvořené úlohy" + "cs": "Zobrazit vytvořené úlohy", + "es": "Mostrar tareas que se han creado" }, "osmTags": "status=0" }, @@ -281,7 +296,8 @@ "nl": "Toon opgeloste taken", "ca": "Mostra les tasques que estan arreglades", "cs": "Zobrazit úkoly, které jsou opravené", - "pl": "Pokaż zadania, które zostały naprawione" + "pl": "Pokaż zadania, które zostały naprawione", + "es": "Mostrar tareas que se han corregido" }, "osmTags": "status=1" }, @@ -292,7 +308,8 @@ "nl": "Toon vals-positieve taken", "ca": "Mostra tasques que són falsos positius", "cs": "Ukažte úkoly, které jsou falešně pozitivní", - "pl": "Pokaż zadania, które dały fałszywie pozytywne wyniki" + "pl": "Pokaż zadania, które dały fałszywie pozytywne wyniki", + "es": "Mostrar tareas que son falsos positivos" }, "osmTags": "status=2" }, @@ -303,7 +320,8 @@ "nl": "Toon overgeslagen taken", "ca": "Mostra les tasques que s'han omès", "cs": "Zobrazit úkoly, které byly přeskočeny", - "pl": "Pokaż pominięte zadania" + "pl": "Pokaż pominięte zadania", + "es": "Mostrar tareas que se han omitido" }, "osmTags": "status=3" }, @@ -314,7 +332,8 @@ "nl": "Toon verwijderde taken", "ca": "Mostra les tasques que s'han suprimit", "cs": "Zobrazit úkoly, které byly odstraněny", - "pl": "Pokaż zadania, które zostały usunięte" + "pl": "Pokaż zadania, które zostały usunięte", + "es": "Mostrar tareas que se han eliminado" }, "osmTags": "status=4" }, @@ -325,7 +344,8 @@ "nl": "Toon al opgeloste taken", "pl": "Pokaż zadania, które zostały już naprawione", "ca": "Mostra les tasques que ja estan arreglades", - "cs": "Zobrazit úkoly, které jsou již opraveny" + "cs": "Zobrazit úkoly, které jsou již opraveny", + "es": "Mostrar tareas que ya están corregidas" }, "osmTags": "status=5" }, @@ -336,7 +356,8 @@ "nl": "Toon taken die als te lastig gemarkeerd zijn", "pl": "Pokaż zadania oznaczone jako zbyt trudne", "ca": "Mostra les tasques marcades com a massa difícils", - "cs": "Zobrazit úkoly, které jsou označeny jako příliš těžké" + "cs": "Zobrazit úkoly, které jsou označeny jako příliš těžké", + "es": "Mostrar tareas marcadas como demasiado difíciles" }, "osmTags": "status=6" }, @@ -347,7 +368,8 @@ "nl": "Toon uitgeschakelde taken", "pl": "Pokaż zadania, które są wyłączone", "ca": "Mostra les tasques que estan desactivades", - "cs": "Zobrazit úkoly, které jsou zakázány" + "cs": "Zobrazit úkoly, které jsou zakázány", + "es": "Mostrar tareas deshabilitadas" }, "osmTags": "status=9" } @@ -369,7 +391,8 @@ "nl": "Naam uitdaging bevat {search}", "pl": "Nazwa wyzwania zawiera {search}", "ca": "El nom del repte conté {search}", - "cs": "Název výzvy obsahuje {search}" + "cs": "Název výzvy obsahuje {search}", + "es": "El nombre del reto contiene {search}" } } ] @@ -390,7 +413,8 @@ "nl": "ID uitdaging is {search}", "pl": "ID wyzwania pasuje do {search}", "ca": "L'identificador de desafiament coincideix amb {search}", - "cs": "ID výzvy odpovídá {search}" + "cs": "ID výzvy odpovídá {search}", + "es": "El ID del reto coincide con {search}" } } ] diff --git a/assets/layers/maproulette_challenge/maproulette_challenge.json b/assets/layers/maproulette_challenge/maproulette_challenge.json index 06db90cc1..638b49c54 100644 --- a/assets/layers/maproulette_challenge/maproulette_challenge.json +++ b/assets/layers/maproulette_challenge/maproulette_challenge.json @@ -6,7 +6,8 @@ "de": "Ebene mit Aufgaben einer einzelnen MapRoulette-Herausforderung. Diese Ebene soll in Themen wiederverwendet und erweitert werden; Informationen dazu finden Sie in der [Dokumentation](https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Integrating_Maproulette.md).", "nl": "Laag met taken van een MapRoulette uitdaging", "ca": "Capa que mostra les tasques d'un sol repte de MapRoulette. Aquesta capa està pensada per ser reutilitzada i ampliada en temes; consulteu [la documentació](https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Integrating_Maproulette.md) sobre com fer-ho.", - "cs": "Vrstva zobrazující úkoly jedné výzvy MapRoulette. Tato vrstva je určena k opětovnému použití a rozšíření v tématech; naleznete v [dokumentaci](https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Integrating_Maproulette.md), jak to provést." + "cs": "Vrstva zobrazující úkoly jedné výzvy MapRoulette. Tato vrstva je určena k opětovnému použití a rozšíření v tématech; naleznete v [dokumentaci](https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Integrating_Maproulette.md), jak to provést.", + "es": "Capa que muestra las tareas de un único reto de MapRoulette. Esta capa está pensada para ser reutilizada y ampliada en temas; consulta la [documentación](https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Integrating_Maproulette.md) sobre cómo hacerlo." }, "source": { "osmTags": "mr_taskId~*", @@ -18,7 +19,8 @@ "de": "Aufgabe in MapRoulette", "nl": "Item uit MapRoulette", "ca": "Element a MapRoulette", - "cs": "Položka v MapRoulette" + "cs": "Položka v MapRoulette", + "es": "Elemento en MapRoulette" } }, "titleIcons": [ @@ -115,7 +117,8 @@ "nl": "Taak is aangemaakt", "ca": "La tasca s'ha creat", "cs": "Úkol je vytvořen", - "pl": "Zadanie jest stworzone" + "pl": "Zadanie jest stworzone", + "es": "Tarea creada" } }, { @@ -125,7 +128,8 @@ "de": "Aufgabe wurde erledigt", "nl": "Taak is opgelost", "ca": "La tasca està arreglada", - "cs": "Úkol je opraven" + "cs": "Úkol je opraven", + "es": "Tarea corregida" } }, { @@ -135,7 +139,8 @@ "de": "Aufgabe ist ein falsches Positiv", "nl": "Taak is vals positief", "ca": "La tasca és un fals positiu", - "cs": "Úkol je falešně pozitivní" + "cs": "Úkol je falešně pozitivní", + "es": "La tarea es un falso positivo" } }, { @@ -146,7 +151,8 @@ "nl": "Taak is overgeslagen", "ca": "S'ha saltat la tasca", "cs": "Úkol je přeskočen", - "fr": "La tâche est passée" + "fr": "La tâche est passée", + "es": "Tarea omitida" } }, { @@ -156,7 +162,8 @@ "de": "Aufgabe wurde gelöscht", "nl": "Taak is verwijderd", "ca": "S'ha suprimit la tasca", - "cs": "Úkol je odstraněn" + "cs": "Úkol je odstraněn", + "es": "Tarea eliminada" } }, { @@ -166,7 +173,8 @@ "de": "Aufgabe wurde bereits erledigt", "nl": "Taak is al opgelost", "ca": "La tasca ja està arreglada", - "cs": "Úkol je již opraveno" + "cs": "Úkol je již opraveno", + "es": "La tarea ya está corregida" } }, { @@ -176,7 +184,8 @@ "de": "Aufgabe wurde als zu schwer markiert", "nl": "Taak is gemarkeerd als te lastig", "ca": "La tasca està marcada com a massa difícil", - "cs": "Úkol je označen jako příliš těžký" + "cs": "Úkol je označen jako příliš těžký", + "es": "La tarea está marcada como demasiado difícil" } }, { @@ -186,7 +195,8 @@ "de": "Aufgabe wurde deaktiviert", "nl": "Taak is uitgeschakeld", "ca": "La tasca està desactivada", - "cs": "Úloha je zakázána" + "cs": "Úloha je zakázána", + "es": "Tarea deshabilitada" } } ] @@ -203,7 +213,8 @@ "nl": "Toon alle taken, ongeacht de status", "pl": "Pokaż zadania z wszystkimi statusami", "ca": "Mostra les tasques amb tots els estats", - "cs": "Zobrazit úkoly se všemi stavy" + "cs": "Zobrazit úkoly se všemi stavy", + "es": "Mostrar tareas con todos los estados" } }, { @@ -213,7 +224,8 @@ "nl": "Toon taken die zijn gecreëerd", "pl": "Pokaż zadania, które zostały stworzone", "ca": "Mostra les tasques que es creen", - "cs": "Zobrazit úkoly, které jsou vytvořeny" + "cs": "Zobrazit úkoly, které jsou vytvořeny", + "es": "Mostrar tareas que se han creado" }, "osmTags": "mr_taskStatus=Created" }, @@ -224,7 +236,8 @@ "nl": "Toon taken die zijn opgelost", "pl": "Pokaż zadania, które są już wykonane", "ca": "Mostra les tasques que estan arreglades", - "cs": "Zobrazit úkoly, které jsou opravené" + "cs": "Zobrazit úkoly, které jsou opravené", + "es": "Mostrar tareas que se han corregido" }, "osmTags": "mr_taskStatus=Fixed" }, @@ -234,7 +247,8 @@ "de": "Aufgaben anzeigen, die falsch positiv sind", "nl": "Toon taken die vals positief waren", "ca": "Mostra les tasques que son falsos positius", - "cs": "Zobrazit úkoly, které jsou falešné pozitivní" + "cs": "Zobrazit úkoly, které jsou falešné pozitivní", + "es": "Mostrar tareas que son falsos positivos" }, "osmTags": "mr_taskStatus=False positive" }, @@ -244,7 +258,8 @@ "de": "Aufgaben anzeigen, die übersprungen wurden", "nl": "Toon taken die zijn overgeslagen", "ca": "Mostra les tasques que s'han omès", - "cs": "Zobrazit úkoly, které byly přeskočeny" + "cs": "Zobrazit úkoly, které byly přeskočeny", + "es": "Mostrar tareas que se han omitido" }, "osmTags": "mr_taskStatus=Skipped" }, @@ -254,7 +269,8 @@ "de": "Aufgaben anzeigen, die gelöscht wurden", "nl": "Toon taken die zijn verwijderd", "ca": "Mostra tasques eliminades", - "cs": "Zobrazit úkoly, které byly odstraněny" + "cs": "Zobrazit úkoly, které byly odstraněny", + "es": "Mostrar tareas que se han eliminado" }, "osmTags": "mr_taskStatus=Deleted" }, @@ -264,7 +280,8 @@ "de": "Aufgaben anzeigen, die bereits erledigt wurden", "nl": "Toon taken die reeds opgelost waren", "ca": "Mostra les tasques que ja estan arreglades", - "cs": "Zobrazit úkoly, které jsou již opraveny" + "cs": "Zobrazit úkoly, které jsou již opraveny", + "es": "Mostrar tareas que ya están corregidas" }, "osmTags": "mr_taskStatus=Already fixed" }, @@ -275,7 +292,8 @@ "nl": "Toon taken die als te moeilijk waren ervaren", "ca": "Mostra les tasques marcades com a massa difícils", "cs": "Zobrazit úkoly, které jsou označeny jako příliš těžké", - "pl": "Pokaż zadania, które są oznaczone jako zbyt trudne" + "pl": "Pokaż zadania, które są oznaczone jako zbyt trudne", + "es": "Mostrar tareas marcadas como demasiado difíciles" }, "osmTags": "mr_taskStatus=Too hard" }, @@ -286,7 +304,8 @@ "nl": "Toon taken die zijn uitgeschakeld", "ca": "Mostra tasques que s'han desactivat", "cs": "Zobrazit úkoly, které jsou zakázány", - "pl": "Pokaż zadania, które są wyłączone" + "pl": "Pokaż zadania, które są wyłączone", + "es": "Mostrar tareas deshabilitadas" }, "osmTags": "mr_taskStatus=Disabled" } diff --git a/assets/layers/maxspeed/maxspeed.json b/assets/layers/maxspeed/maxspeed.json index 46e54b11d..6f8629560 100644 --- a/assets/layers/maxspeed/maxspeed.json +++ b/assets/layers/maxspeed/maxspeed.json @@ -2,7 +2,7 @@ "id": "maxspeed", "name": { "en": "Maxspeed", - "es": "Velocidad", + "es": "Velocidad máxima", "ca": "Velocitat", "de": "Höchstgeschwindigkeiten", "nl": "Maximumsnelheid", @@ -63,7 +63,8 @@ "fr": "Route sans nom", "ca": "Carretera sense nom", "cs": "Silnice bez názvu", - "pl": "Droga bez nazwy" + "pl": "Droga bez nazwy", + "es": "Carretera sin nombre" } } ] @@ -118,17 +119,19 @@ "ca": "La velocitat màxima permesa a aquesta via és {canonical(maxspeed)}", "fr": "La vitesse maximum autorisée sur cette route est {canonical(maxspeed)}", "cs": "Maximální povolená rychlost na této cestě je {canonical(maxspeed)}", - "pl": "Maksymalna prędkość dopuszczona na tej drodze to {canonical(maxspeed)}" + "pl": "Maksymalna prędkość dopuszczona na tej drodze to {canonical(maxspeed)}", + "es": "La velocidad máxima permitida en esta carretera es {canonical(maxspeed)}" }, "question": { - "es": "Qué es la velocidad máxima legal uno está permitido conducir en esta carretera?", + "es": "¿Cuál es la velocidad máxima legal a la que se permite conducir en esta carretera?", "ca": "Quina és la velocitat màxima legal que es permet conduir en aquesta carretera?", "en": "What is the legal maximum speed one is allowed to drive on this road?", "de": "Wie hoch ist die zulässige Höchstgeschwindigkeit, die man auf dieser Straße fahren darf?", "nl": "Wat is de legale maximumsnelheid voor deze weg?", "fr": "Quelle est la vitesse maximum autorisée sur cette route ?", "cs": "Jaká je zákonná maximální povolená rychlost na této silnici?", - "pl": "Jaka jest maksymalna prawnie dopuszczona prędkość na tej drodze?" + "pl": "Jaka jest maksymalna prawnie dopuszczona prędkość na tej drodze?", + "ru": "С какой максимальной скоростью разрешено ездить по этой дороге?" }, "freeform": { "key": "maxspeed", @@ -148,7 +151,8 @@ "de": "Dies ist eine Wohnstraße, auf der eine Höchstgeschwindigkeit von 20 km/h gilt", "fr": "C'est une zone de rencontre, avec une vitesse maximale de 20 km/h", "ca": "Aquest és un carrer residencial, que té una velocitat màxima de 20 km/h", - "cs": "Toto je obytná zóna, která má maximální rychlost 20 km/h" + "cs": "Toto je obytná zóna, která má maximální rychlost 20 km/h", + "es": "Esta es una calle residencial, que tiene una velocidad máxima de 20 km/h" }, "icon": { "path": "./assets/layers/maxspeed/living_street_be.svg", diff --git a/assets/layers/memorial/memorial.json b/assets/layers/memorial/memorial.json index 96ad225bb..c06bdcd34 100644 --- a/assets/layers/memorial/memorial.json +++ b/assets/layers/memorial/memorial.json @@ -4,7 +4,8 @@ "en": "Memorials", "de": "Denkmäler", "fr": "Mémoriaux", - "nl": "Gedenktekens" + "nl": "Gedenktekens", + "es": "Monumentos" }, "description": "Layer showing memorial plaques, based upon a unofficial theme. Can be expanded to have multiple types of memorials later on", "source": { @@ -22,7 +23,8 @@ "ca": "Placa commemorativa", "cs": "Pamětní deska", "de": "Gedenktafel", - "fr": "Plaque commémorative" + "fr": "Plaque commémorative", + "es": "Placa conmemorativa" }, "mappings": [ { @@ -32,7 +34,8 @@ "de": "Gedenktafel", "ca": "Placa commemorativa", "cs": "Pamětní deska", - "fr": "Plaque commémorative" + "fr": "Plaque commémorative", + "es": "Placa conmemorativa" } } ] @@ -78,12 +81,14 @@ "en": "a memorial", "de": "ein Denkmal", "fr": "un mémorial", - "nl": "een gedenkteken" + "nl": "een gedenkteken", + "es": "un monumento" }, "description": { "en": "A memorial is a physical object which remembers a person or event.", "de": "Ein Mahnmal ist ein physischer Gegenstand, der an eine Person oder ein Ereignis erinnert.", - "fr": "Un mémorial est un élément physique disposé en mémoire d'une personne ou d'un évènement." + "fr": "Un mémorial est un élément physique disposé en mémoire d'une personne ou d'un évènement.", + "es": "Un monumento es un objeto físico que recuerda a una persona o un evento." }, "tags": [ "historic=memorial" @@ -91,7 +96,7 @@ } ], "tagRenderings": [ - "images", + "images_no_blur", { "id": "memorial-type", "labels": [ @@ -101,7 +106,8 @@ "en": "What type of memorial is this?", "de": "Was für eine Art von Denkmal ist das?", "fr": "C'est un mémorial de guerre", - "sl": "Kakšne vrste spomenik je to?" + "sl": "Kakšne vrste spomenik je to?", + "es": "¿Qué tipo de monumento es este?" }, "mappings": [ { @@ -111,7 +117,8 @@ "de": "Das ist eine Statue", "fr": "C'est une statue", "nl": "Dit is een standbeeld", - "sl": "To je kip" + "sl": "To je kip", + "es": "Es una estatua" }, "addExtraTags": [ "tourism=artwork", @@ -124,7 +131,9 @@ "en": "This is a plaque", "de": "Dies ist eine Gedenktafel", "fr": "C'est une plaque", - "sl": "To je plošča" + "sl": "To je plošča", + "uk": "Це меморіальна дошка", + "es": "Es una placa" } }, { @@ -133,7 +142,8 @@ "en": "This is a commemorative bench", "de": "Dies ist eine Gedenkbank", "fr": "C'est un banc commémoratif", - "nl": "Dit is een zitbank die ook als herdenking dienst doet" + "nl": "Dit is een zitbank die ook als herdenking dienst doet", + "es": "Es un banco conmemorativo" }, "addExtraTags": [ "amenity=bench" @@ -145,17 +155,18 @@ "en": "This is a ghost bike - a bicycle painted white to remember a cyclist whom deceased because of a car crash", "de": "Dies ist ein Geisterrad - ein Fahrrad weiß lackiert, um an einen Radfahrer zu erinnern, der wegen eines Autounfalls verstorben ist", "fr": "C'est un vélo fantôme - un vélo blanc peint en mémoire d'un cycliste mort à cet endroit suite à un accident avec une voiture", - "nl": "Dit is een witte fiets of spookfiets - een witgeschilderede fiets die een omgekomen fietsen herdenkt" + "nl": "Dit is een witte fiets of spookfiets - een witgeschilderede fiets die een omgekomen fietsen herdenkt", + "es": "Es una bicicleta fantasma - una bicicleta pintada de blanco para recordar a un ciclista que falleció debido a un accidente de coche" } }, { "if": "memorial=stolperstein", - "alsoShowIf": "memorial:type=stolperstein", "then": { "en": "This is a stolperstein (stumbing stone)", "de": "Dies ist ein Stolperstein", "fr": "C'est un stolperstein (pierre d'achoppement)", - "nl": "Dit is een struikelsteen (stolperstein)" + "nl": "Dit is een struikelsteen (stolperstein)", + "es": "Es un stolperstein (piedra de tropiezo)" } }, { @@ -163,7 +174,8 @@ "then": { "en": "This is a stele", "de": "Das ist eine Stele", - "fr": "C'est une stèle" + "fr": "C'est une stèle", + "es": "Es una estela" } }, { @@ -172,7 +184,8 @@ "en": "This is a memorial stone", "de": "Das ist ein Gedenkstein", "fr": "C'est une pierre commémorative", - "sl": "To je spominski kamen" + "sl": "To je spominski kamen", + "es": "Es una piedra conmemorativa" } }, { @@ -181,7 +194,8 @@ "en": "This is a bust", "de": "Das ist eine Büste", "fr": "C'est un buste", - "sl": "To je doprsni kip" + "sl": "To je doprsni kip", + "es": "Es un busto" } }, { @@ -191,7 +205,8 @@ "de": "Dies ist eine Skulptur", "fr": "C'est une sculpture", "nl": "Dit is een sculptuur", - "sl": "To je skulptura" + "sl": "To je skulptura", + "es": "Es una escultura" } }, { @@ -221,7 +236,8 @@ "then": { "en": "This is a blue plaque", "de": "Dies ist eine blaue Plaque", - "fr": "C'est une plaque bleue (spécifique aux pays anglo-saxons)" + "fr": "C'est une plaque bleue (spécifique aux pays anglo-saxons)", + "es": "Es una placa azul" }, "onlyShowIf": "_country=gb" }, @@ -232,7 +248,8 @@ "de": "Dies ist ein historischer Panzer, der permanent in den öffentlichen Raum als Denkmal platziert wurde", "fr": "C'est un char historique, placé de manière permanente dans l'espace public comme mémorial", "nl": "Dit is een historische tank, permanent in de publieke ruimte geplaatst als gedenkteken", - "sl": "To je zgodovinski tank, ki je stalno postavljen v spomin na javnem kraju" + "sl": "To je zgodovinski tank, ki je stalno postavljen v spomin na javnem kraju", + "es": "Es un tanque histórico, colocado permanentemente en el espacio público como monumento" } }, { @@ -241,7 +258,8 @@ "en": "This is a memorial tree", "de": "Das ist ein Baumdenkmal", "fr": "C'est un arbre du souvenir", - "sl": "To je spominsko drevo" + "sl": "To je spominsko drevo", + "es": "Es un árbol conmemorativo" }, "addExtraTags": [ "natural=tree" @@ -253,7 +271,8 @@ "en": "This is a gravestone; the person is buried here", "de": "Dies ist ein Grabstein; die Person ist hier begraben", "sl": "To je nagrobni kamen; oseba je pokopana tu", - "fr": "C'est une pierre tombale, une personne est enterrée ici" + "fr": "C'est une pierre tombale, une personne est enterrée ici", + "es": "Es una lápida; la persona está enterrada aquí" }, "addExtraTags": [ "memorial=" @@ -265,11 +284,13 @@ "de": "Das ist ein {memorial}", "fr": "C'est un {memorial}", "sl": "To je {memorial}", - "ca": "Això és un {memorial}" + "ca": "Això és un {memorial}", + "es": "Se trata de un {memorial}" }, "freeform": { "key": "memorial" - } + }, + "filter": true }, { "id": "inscription", @@ -283,7 +304,9 @@ "de": "Wie lautet die Inschrift auf diesem Denkmal?", "fr": "Quelle est l'inscription sur cette plaque ?", "nl": "Wat is het opschrift van dit gedenkteken?", - "sl": "Kakšen je napis na tem spomeniku?" + "sl": "Kakšen je napis na tem spomeniku?", + "uk": "Який напис на цьому пам'ятнику?", + "es": "¿Cuál es la inscripción de este monumento?" }, "#:condition": "Benches have a separate inscription question", "condition": { @@ -297,7 +320,9 @@ "cs": "Nápis na této desce zní:

{inscription}

", "de": "Die Inschrift auf diesem Denkmal lautet:

{inscription}

", "fr": "L'inscription sur cette plaque indique:

{inscription}

", - "sl": "Napis na tem spomeniku je:

{inscription}

" + "sl": "Napis na tem spomeniku je:

{inscription}

", + "uk": "Напис на цьому меморіалі:

{inscription}

", + "es": "La inscripción de este monumento dice:

{inscription}

" }, "freeform": { "key": "inscription", @@ -311,7 +336,9 @@ "de": "Dieses Denkmal hat keine Inschrift", "fr": "Il n'y a aucune inscription sur cette plaque", "nl": "Dit gedenkteken heeft geen opschrift", - "sl": "Ta spomenik nima napisa" + "sl": "Ta spomenik nima napisa", + "uk": "Цей пам'ятник не має напису", + "es": "Este monumento no tiene inscripción" }, "addExtraTags": [ "inscription=" @@ -328,12 +355,14 @@ "question": { "en": "What is the Wikipedia page about this memorial?", "de": "Was ist die Wikipedia-Seite über dieses Denkmal?", - "fr": "Quelle est la page Wikipedia de ce mémorial ?" + "fr": "Quelle est la page Wikipedia de ce mémorial ?", + "es": "¿Cuál es la página de Wikipedia sobre este monumento?" }, "questionHint": { "en": "This is a about the memorial itself, not about the person or event that the memorial remembers. If this memorial does not have a Wikipedia page or Wikidata entity, skip this question.", "de": "Hier geht es um das Denkmal selbst, nicht um die Person oder das Ereignis, an das die Denkmal erinnert. Wenn diese Gedenkstätte keine Wikipedia-Seite oder Wikidata-Entität hat, überspringe diese Frage.", - "fr": "C'est la page Wikipédia du mémorial et non celle de la personne ou de l'évènement commémoré. Si le mémorial n'a pas de page Wikipédia ou d'entité Wikidata, passez cette question." + "fr": "C'est la page Wikipédia du mémorial et non celle de la personne ou de l'évènement commémoré. Si le mémorial n'a pas de page Wikipédia ou d'entité Wikidata, passez cette question.", + "es": "Se trata del propio monumento, no de la persona o el evento que recuerda el monumento. Si este monumento no tiene una página de Wikipedia o una entidad Wikidata, omite esta pregunta." }, "render": { "special": { @@ -343,7 +372,8 @@ "before": { "en": "

Wikipedia page about the memorial

", "de": "

Wikipedia-Seite über das Denkmal

", - "fr": "

Page Wikipedia du mémorial

" + "fr": "

Page Wikipedia du mémorial

", + "es": "

Página de Wikipedia sobre el monumento

" } } }, @@ -359,12 +389,14 @@ "question": { "en": "What is the Wikipedia page about the person or event that is remembered here?", "de": "Was ist die Wikipedia-Seite über die Person oder Veranstaltung, die hier erinnert wird?", - "fr": "Quelle est la page Wikipedia qui fait référence à cet évènement ou cette personne?" + "fr": "Quelle est la page Wikipedia qui fait référence à cet évènement ou cette personne?", + "es": "¿Cuál es la página de Wikipedia sobre la persona o el evento que se recuerda aquí?" }, "questionHint": { "en": "If the person or event does not have a Wikipedia page or Wikidata entity, skip this question.", "de": "Wenn die Person oder das Ereignis keine Wikipedia-Seite oder Wikidata-Entität hat, überspringe diese Frage.", - "fr": "Si la personne ou l'évènement n'a pas de page Wikipedia ou d'entité Wikidata, passez cette question." + "fr": "Si la personne ou l'évènement n'a pas de page Wikipedia ou d'entité Wikidata, passez cette question.", + "es": "Si la persona o el evento no tienen una página de Wikipedia o una entidad Wikidata, omite esta pregunta." }, "render": { "special": { @@ -374,7 +406,8 @@ "before": { "en": "

Wikipedia page about the remembered event or person

", "de": "

Wikipedia-Seite über das erinnerte Ereignis oder die Person

", - "fr": "

Page Wikipedia sur la personne ou l'évènement commémoré

" + "fr": "

Page Wikipedia sur la personne ou l'évènement commémoré

", + "es": "

Página de Wikipedia sobre el evento o la persona recordada

" } } }, @@ -382,7 +415,8 @@ "question": { "en": "When was this memorial installed?", "de": "Wann wurde dieses Denkmal installiert?", - "fr": "Quand ce mémorial a-t-il été installé ?" + "fr": "Quand ce mémorial a-t-il été installé ?", + "es": "¿Cuándo se instaló este monumento?" }, "render": { "nl": "Geplaatst op {start_date}", @@ -393,7 +427,8 @@ "de": "Aufgestellt am {start_date}", "ca": "Col·locat el {start_date}", "cs": "Umístěno {start_date}", - "sl": "Datum postavitve {start_date}" + "sl": "Datum postavitve {start_date}", + "es": "Colocación: {start_date}" }, "freeform": { "key": "start_date", diff --git a/assets/layers/mountain_rescue/mountain_rescue.json b/assets/layers/mountain_rescue/mountain_rescue.json index 160869ce8..65fa0b6b3 100644 --- a/assets/layers/mountain_rescue/mountain_rescue.json +++ b/assets/layers/mountain_rescue/mountain_rescue.json @@ -4,12 +4,14 @@ "en": "Mountain rescue stations", "de": "Bergrettungsstationen", "fr": "Postes de secours en montagne", - "pl": "Stacje ratownictwa górskiego" + "pl": "Stacje ratownictwa górskiego", + "es": "Refugios de montaña" }, "description": { "en": "A building where first aid responders store material and might be on watch", "de": "Ein Gebäude, in dem die Ersthelfer Material lagern und möglicherweise Wache halten", - "fr": "Un bâtiment où les organismes de secours stockent du matériel ou assurent la garde" + "fr": "Un bâtiment où les organismes de secours stockent du matériel ou assurent la garde", + "es": "Un edificio donde los socorristas guardan material y pueden estar de guardia" }, "source": { "osmTags": "emergency=mountain_rescue" @@ -20,7 +22,8 @@ "en": "Mountain rescue station", "de": "Bergrettungsstation", "fr": "Poste de secours en montagne", - "pl": "Stacja ratownictwa górskiego" + "pl": "Stacja ratownictwa górskiego", + "es": "Refugio de montaña" } }, "pointRendering": [ @@ -53,7 +56,8 @@ "en": "a mountain rescue station", "de": "eine Bergrettungsstation", "fr": "un poste de secours en montagne", - "pl": "stacja ratownictwa górskiego" + "pl": "stacja ratownictwa górskiego", + "es": "un refugio de montaña" }, "tags": [ "emergency=mountain_rescue" diff --git a/assets/layers/nature_reserve/nature_reserve.json b/assets/layers/nature_reserve/nature_reserve.json index 4dae74e07..181736567 100644 --- a/assets/layers/nature_reserve/nature_reserve.json +++ b/assets/layers/nature_reserve/nature_reserve.json @@ -4,7 +4,7 @@ "en": "Nature reserve", "nl": "Natuurgebied", "de": "Naturschutzgebiete", - "es": "Reserva Natural", + "es": "Reserva natural", "ca": "Reserva Natural", "cs": "Přírodní rezervace", "fr": "Réserve naturelle" @@ -15,7 +15,7 @@ "de": "Ein Naturschutzgebiet ist ein Gebiet, das der Natur überlassen wurde", "ca": "Una reserva natural és una zona on la natura pot seguir el seu curs", "cs": "Přírodní rezervace je území, kde se příroda může rozvíjet", - "es": "Una reserva natural es una zona donde la naturaleza puede seguir su curso" + "es": "Una reserva natural es un área donde la naturaleza puede seguir su curso" }, "source": { "osmTags": { @@ -41,7 +41,8 @@ "en": "Nature reserve", "de": "Naturschutzgebiet", "ca": "Reserva Natural", - "cs": "Přírodní rezervace" + "cs": "Přírodní rezervace", + "es": "Reserva natural" }, "mappings": [ { @@ -90,7 +91,8 @@ "de": "ein Schutzgebiet", "ca": "una reserva natural", "cs": "přírodní rezervace", - "fr": "une réserve naturelle" + "fr": "une réserve naturelle", + "es": "una reserva natural" }, "description": { "en": "Add a missing nature reserve", @@ -98,7 +100,8 @@ "de": "Ein fehlendes Naturschutzgebiet hinzufügen", "ca": "Afegeix una reserva natural que falta", "cs": "Přidat chybějící přírodní rezervaci", - "fr": "Ajouter une réserve naturelle manquante" + "fr": "Ajouter une réserve naturelle manquante", + "es": "Añadir una reserva natural que falta" } } ], @@ -110,7 +113,9 @@ "nl": "De toegankelijkheid van dit gebied is: {access:description}", "de": "Zugang zu diesem Naturschutzgebiet: {access:description}", "ca": "Accés a aquesta reserva natural: {access:description}", - "cs": "Přístup do této přírodní rezervace: {access:description}" + "cs": "Přístup do této přírodní rezervace: {access:description}", + "uk": "Доступ до цього природного заповідника: {access:description}", + "es": "Acceso a esta reserva natural: {access:description}" }, "question": { "en": "Is this nature reserve accessible to the public?", @@ -118,7 +123,8 @@ "de": "Ist das Gebiet öffentlich zugänglich?", "ca": "Aquesta reserva natural és accessible al públic?", "cs": "Je tato přírodní rezervace přístupná veřejnosti?", - "fr": "Est-ce que cette réserve naturelle est ouverte au public ?" + "fr": "Est-ce que cette réserve naturelle est ouverte au public ?", + "es": "¿Es accesible al público esta reserva natural?" }, "freeform": { "key": "access:description" @@ -137,7 +143,8 @@ "de": "Das Gebiet ist öffentlich zugänglich", "ca": "Accessible al públic", "cs": "Veřejně přístupné", - "fr": "Accessible au grand public" + "fr": "Accessible au grand public", + "es": "Acceso público" } }, { @@ -151,7 +158,7 @@ "en": "Not accessible", "nl": "Niet toegankelijk", "de": "Das Gebiet ist nicht zugänglich", - "es": "No accesible", + "es": "Sin acceso", "ca": "No accessible", "cs": "Nepřístupné", "fr": "Non accessible" @@ -168,7 +175,7 @@ "en": "Not accessible as this is a private area", "nl": "Niet toegankelijk, want privégebied", "de": "Das Gebiet ist privat und nicht zugänglich", - "es": "No accesible, ya que es una área privada", + "es": "Sin acceso, ya que es una zona privada", "ca": "No accessible perquè es tracta d'una zona privada", "cs": "Není přístupné, protože se jedná o soukromou oblast", "fr": "Non accessible car c'est une zone privée" @@ -185,7 +192,7 @@ "en": "Accessible despite being a privately owned area", "nl": "Toegankelijk, ondanks dat het privegebied is", "de": "Das Gebiet ist privat aber zugänglich", - "es": "Accesible a pesar de ser una área privada", + "es": "Accesible a pesar de ser una zona de propiedad privada", "ca": "Accessible tot i ser una propietat privada", "cs": "Přístupné, přestože se jedná o soukromý areál", "fr": "Accessible bien que ce soit une zone privée" @@ -202,7 +209,7 @@ "en": "Only accessible with a guide or during organised activities", "nl": "Enkel toegankelijk met een gids of tijdens een activiteit", "de": "Das Gebiet ist nur während Führungen oder organisierten Aktivitäten zugänglich", - "es": "Solo accesible con un guía o durante actividades organizadas", + "es": "Sólo accesible con guía o durante actividades organizadas", "ca": "Només accessible amb guia o durant les activitats organitzades", "cs": "Přístupné pouze s průvodcem nebo během organizovaných aktivit", "fr": "Seulement accessible avec un guide ou lors d'activités organisées" @@ -219,7 +226,7 @@ "en": "Accessible with fee", "nl": "Toegankelijk mits betaling", "de": "Das Gebiet ist nur gegen Bezahlung zugänglich", - "es": "Accesible con una tasa", + "es": "Accesible con pago", "ca": "Accessible amb una taxa", "cs": "Přístupné za poplatek", "fr": "Payant" @@ -233,7 +240,7 @@ "en": "Operated by {operator}", "nl": "Beheer door {operator}", "de": "Betrieben von {operator}", - "es": "Operado por {operator}", + "es": "Gestionado por {operator}", "ca": "Gestionat per {operator}", "cs": "Provozuje {operator}" }, @@ -241,7 +248,7 @@ "en": "Who operates this area?", "nl": "Wie beheert dit gebied?", "de": "Wer betreibt das Gebiet?", - "es": "¿Quién opera esta área?", + "es": "¿Quién gestiona esta área?", "ca": "Qui gestiona aquesta àrea?", "cs": "Kdo provozuje tuto oblast?" }, @@ -259,7 +266,7 @@ "en": "Operated by Natuurpunt", "nl": "Dit gebied wordt beheerd door Natuurpunt", "de": "Das Gebiet wird betrieben von Natuurpunt", - "es": "Operado por NatuurPunt", + "es": "Gestionado por Natuurpunt", "ca": "Gestionat per NatuurPunt", "cs": "Provozuje Natuurpunt" }, @@ -275,7 +282,7 @@ "en": "Operated by {operator}", "nl": "Dit gebied wordt beheerd door {operator}", "de": "Betrieben von {operator}", - "es": "Operado por {operator}", + "es": "Gestionado por {operator}", "ca": "Gestionat per {operator}", "cs": "Provozuje {operator}" }, @@ -293,7 +300,8 @@ "nl": "Dit gebied wordt beheerd door het Agentschap Natuur en Bos", "de": "Das Gebiet wird betrieben von Agentschap Natuur en Bos", "ca": "Gestionat per Agentschap Natuur en Bos", - "cs": "Provozováno Agentschap Natuur en Bos" + "cs": "Provozováno Agentschap Natuur en Bos", + "es": "Gestionado por Agentschap Natuur en Bos" }, "icon": "./assets/layers/nature_reserve/ANB.jpg" } @@ -313,7 +321,7 @@ "nl": "Wat is de naam van dit gebied?", "en": "What is the name of this area?", "de": "Wie heißt das Gebiet?", - "es": "¿Cual es el nombre de esta área?", + "es": "¿Cuál es el nombre de esta área?", "ca": "Quin és el nom d'aquesta àrea?", "cs": "Jaký je název této oblasti?" }, @@ -340,7 +348,7 @@ "en": "This area doesn't have a name", "nl": "Dit gebied heeft geen naam", "de": "Das Gebiet hat keinen Namen", - "es": "Esta área no tiene un nombre", + "es": "Esta área no tiene nombre", "ca": "Aquesta àrea no té un nom", "cs": "Tato oblast nemá jméno", "fr": "Ce lieu n'a pas de nom" @@ -357,7 +365,8 @@ "fr": "Les chiens sont-ils autorisés dans cette réserve naturelle ?", "de": "Sind Hunde in diesem Naturschutzgebiet erlaubt?", "ca": "Els gossos estan permesos en aquesta reserva natural?", - "cs": "Jsou v této přírodní rezervaci povoleni psi?" + "cs": "Jsou v této přírodní rezervaci povoleni psi?", + "es": "¿Se permiten perros en esta reserva natural?" }, "condition": { "or": [ @@ -375,7 +384,7 @@ "it": "I cani devono essere tenuti al guinzaglio", "fr": "Les chiens doivent être tenus en laisse", "de": "Hunde müssen angeleint sein", - "es": "Los perros deben de ir con correa", + "es": "Los perros deben llevar correa", "ca": "Els gossos han d'anar lligats", "cs": "Psi musí být na vodítku" } @@ -401,7 +410,7 @@ "it": "I cani sono liberi di girare liberi", "fr": "Les chiens sont autorisés à se promener librement", "de": "Hunde dürfen frei herumlaufen", - "es": "Los perros pueden ir sueltos", + "es": "Se permite la entrada de perros sin correa", "ca": "Els gossos poden anar solts", "cs": "Psi se mohou volně pohybovat" } @@ -418,7 +427,8 @@ "fr": "Qui est en charge de la conservation de la réserve ?", "de": "Wer verwaltet dieses Gebiet?", "ca": "Qui és el conservador d'aquesta reserva natural?", - "cs": "Kdo je správcem této přírodní rezervace?" + "cs": "Kdo je správcem této přírodní rezervace?", + "es": "¿Quién es el conservador de esta reserva natural?" }, "render": { "nl": "{curator} is de beheerder van dit gebied", @@ -427,7 +437,8 @@ "fr": "{curator} est en charge de la conservation de la réserve", "de": "{curator} ist der Pfleger dieses Naturschutzgebietes", "ca": "{curator} és el conservador d'aquesta reserva natural", - "cs": "{curator} je správcem této přírodní rezervace" + "cs": "{curator} je správcem této přírodní rezervace", + "es": "{curator} es el conservador de esta reserva natural" }, "freeform": { "key": "curator", @@ -441,7 +452,8 @@ "fr": "À ne remplir seulement que si le nom est diffusé au public", "de": "Respektieren Sie die Privatsphäre. Geben Sie nur dann einen Namen an, wenn dieser allgemein bekannt ist", "ca": "Respecteu la privadesa: només empleneu un nom si es publica àmpliament", - "cs": "Respektujte soukromí - jméno vyplňte pouze v případě, že je široce publikováno" + "cs": "Respektujte soukromí - jméno vyplňte pouze v případě, že je široce publikováno", + "es": "Respeta la privacidad: sólo rellena un nombre si esto se publica ampliamente" } }, { @@ -452,7 +464,8 @@ "fr": "À quelle adresse courriel peut-on envoyer des questions et des problèmes concernant cette réserve naturelle ?", "de": "An welche Email-Adresse kann man sich bei Fragen und Problemen zu diesem Gebiet wenden?", "ca": "A quina adreça de correu electrònic es pot enviar amb preguntes i problemes amb aquest parc natural?", - "cs": "Na jakou e-mailovou adresu lze poslat dotazy a problémy týkající se této přírodní rezervace?" + "cs": "Na jakou e-mailovou adresu lze poslat dotazy a problémy týkající se této přírodní rezervace?", + "es": "¿A qué dirección de correo electrónico se puede enviar preguntas y problemas con esta reserva natural?" }, "render": { "*": "{email}" @@ -469,7 +482,8 @@ "fr": "Respecter la vie privée – renseignez une adresse électronique personnelle seulement si celle-ci est largement publiée", "de": "Respektieren Sie die Privatsphäre. Geben Sie nur dann eine persönliche Email-Adresse an, wenn diese allgemein bekannt ist", "ca": "Respecteu la privadesa: només ompliu una adreça de correu electrònic personal si es publica àmpliament", - "cs": "Respektujte soukromí - osobní e-mailovou adresu vyplňte pouze v případě, že je široce publikována" + "cs": "Respektujte soukromí - osobní e-mailovou adresu vyplňte pouze v případě, že je široce publikována", + "es": "Respeta la privacidad: sólo rellena una dirección de correo electrónico personal si esto se publica ampliamente" } }, { @@ -480,7 +494,8 @@ "fr": "Quel numéro de téléphone peut-on appeler pour poser des questions et résoudre des problèmes concernant cette réserve naturelle ?", "de": "Welche Telefonnummer kann man bei Fragen und Problemen zu diesem Gebiet anrufen?", "ca": "A quin número de telèfon es pot trucar amb preguntes i problemes amb aquest parc natural?", - "cs": "Na jaké telefonní číslo lze volat v případě dotazů a problémů s touto přírodní rezervací?" + "cs": "Na jaké telefonní číslo lze volat v případě dotazů a problémů s touto přírodní rezervací?", + "es": "¿Qué número de teléfono se puede llamar para preguntas y problemas con esta reserva natural?" }, "render": { "*": "{phone}" @@ -497,7 +512,8 @@ "fr": "Respecter la vie privée – renseignez un numéro de téléphone personnel seulement si celui-ci est largement publié", "de": "Respektieren Sie die Privatsphäre. Geben Sie nur dann eine Telefonnummer an, wenn diese allgemein bekannt ist", "ca": "Respecteu la privadesa: només empleneu una adreça de número de telèfon personal si es publica àmpliament", - "cs": "Respektujte soukromí - adresu s osobním telefonním číslem vyplňte pouze v případě, že je široce zveřejněna" + "cs": "Respektujte soukromí - adresu s osobním telefonním číslem vyplňte pouze v případě, že je široce zveřejněna", + "es": "Respeta la privacidad: sólo rellena una dirección de número de teléfono personal si esto se publica ampliamente" } }, { @@ -564,7 +580,8 @@ "nl": "Vrij te bezoeken", "de": "Frei zugänglich", "ca": "De lliure accés", - "cs": "Volně přístupné" + "cs": "Volně přístupné", + "es": "Acceso libre" }, "osmTags": "access=yes" } @@ -580,7 +597,8 @@ "de": "Alle Naturschutzgebiete", "ca": "Totes les reserves naturals", "cs": "Všechny přírodní rezervace", - "fr": "Toutes les réserves naturelles" + "fr": "Toutes les réserves naturelles", + "es": "Todas las reservas naturales" } }, { @@ -590,7 +608,8 @@ "de": "Hunde dürfen frei herumlaufen", "ca": "Els gossos poden anar lliurement", "cs": "Psi se mohou volně pohybovat", - "fr": "Les chiens sont autorisés sans laisse" + "fr": "Les chiens sont autorisés sans laisse", + "es": "Se permite la entrada de perros sin correa" }, "osmTags": "dog=yes" }, @@ -601,7 +620,8 @@ "de": "Hunde nur erlaubt, wenn sie angeleint sind", "ca": "S'admeten gossos si van lligats", "cs": "Psi jsou povoleni, pokud jsou na vodítku", - "fr": "Les chiens sont autorisés tenus en laisse" + "fr": "Les chiens sont autorisés tenus en laisse", + "es": "Se permite la entrada de perros con correa" }, "osmTags": { "or": [ diff --git a/assets/layers/note/note.json b/assets/layers/note/note.json index 61df64781..271336a11 100644 --- a/assets/layers/note/note.json +++ b/assets/layers/note/note.json @@ -63,7 +63,9 @@ "nl": "Bekijk op OpenStreetMap.org", "de": "Auf OpenStreetMap.org ansehen", "da": "Se på OpenStreetMap.org", - "fr": "Voir sur OpenStreetMap.org" + "fr": "Voir sur OpenStreetMap.org", + "cs": "Zobrazit na OpenStreetMap.org", + "es": "Ver en OpenStreetMap.org" }, "render": "" } @@ -122,7 +124,7 @@ "before": { "en": "

Nearby images

The pictures below are nearby geotagged images and might be helpful to handle this note.", "de": "

Bilder aus der Nähe

Die folgenden Bilder sind mit Geotags versehene Bilder aus der Nähe und könnten für die Bearbeitung dieser Notiz hilfreich sein.", - "es": "

Imágenes cercanas

Las imágenes de debajo son imágenes geoetiquetadas cercanas y pueden ser útiles para encargarse de esta nota.", + "es": "

Imágenes cercanas

Las imágenes que aparecen a continuación son imágenes geoetiquetadas cercanas y pueden ser útiles para gestionar esta nota.", "nl": "

Afbeeldingen in de buurt

Onderstaande afbeeldingen zijn afbeeldingen met geo-referentie en die in de buurt genomen zijn. Mogelijks zijn ze nuttig om deze kaartnota af te handelen.", "ca": "

Imatges properes

Les imatges de sota són imatges geoetiquetades properes i poden ser útils per a encarregar-se d'aquesta nota.", "cs": "

Obrázky v okolí

Obrázky níže jsou obrázky s geografickými značkami v okolí a mohou vám pomoci s touto poznámkou.", @@ -140,7 +142,7 @@ "en": "Report {_first_user} for spam or inappropriate messages", "nl": "{_first_user} melden voor spam of ongepaste opmerkingen", "de": "", - "es": "Reportar {_first_user} por spam o mensajes inapropiados", + "es": "Denunciar a {_first_user} por correo basura o mensajes inapropiados", "ca": "Reporta {_first_user} per spam o missatges inapropiats", "cs": "Nahlásit uživateli {_first_user} spam nebo nevhodné zprávy", "fr": "Signaler {_first_user} pour du spam ou des messages inapropriés" @@ -153,7 +155,7 @@ "en": "Report this note as spam or inappropriate", "nl": "Deze note melden als spam of ongepast", "de": "Notiz als Spam oder unangemessen melden", - "es": "Reporta esta nota como spam o inapropiada", + "es": "Denunciar esta nota como correo basura o inapropiada", "ca": "Reporta aquesta nota com spam o inapropiada", "cs": "Nahlásit tuto poznámku jako spam nebo nevhodnou", "fr": "Signaler cette note comme spam ou contenu inapproprié" @@ -170,7 +172,7 @@ "en": "Only show notes opened by an anonymous contributor", "nl": "Toon enkel de Notes geopend door een anonieme bijdrager", "de": "Nur Notizen anzeigen, die anonym erstellt wurden", - "es": "Solo mostrar las notas abiertas por contributores anómimos", + "es": "Sólo mostrar notas abiertas por un colaborador anónimo", "ca": "Sols mostrar les notes obertes per contribuïdors anònims", "cs": "Zobrazovat pouze poznámky otevřené anonymním přispěvatelem", "fr": "Montrer uniquement les notes ouvertes par un contributeur anonyme" @@ -187,7 +189,7 @@ "en": "Only show open notes", "nl": "Toon enkel open Notes", "de": "Nur offene Notizen anzeigen", - "es": "Solo mostrar las notas abiertas", + "es": "Sólo mostrar notas abiertas", "ca": "Sols mostra les notes obertes", "cs": "Zobrazit pouze otevřené poznámky", "fr": "Montrer uniquement les notes ouvertes" @@ -215,7 +217,7 @@ "en": "Hide import notes", "nl": "Verberg import Notes", "de": "Importnotizen ausblenden", - "es": "Ocultar las notas de importación", + "es": "Ocultar notas de importación", "ca": "Oculta les notes d'importació", "cs": "Skrýt poznámky k importu" } @@ -226,7 +228,7 @@ "en": "Show only import Notes", "nl": "Toon enkel import Notes", "de": "Nur Importnotizen anzeigen", - "es": "Solo mostrar las notas de importación", + "es": "Mostrar sólo notas de importación", "ca": "Mostrar només les notes d'importació", "cs": "Zobrazit pouze poznámky k importu" } @@ -266,7 +268,8 @@ ], "question": { "en": "Should mention {search} in any comment", - "de": "Sollte {search} in jedem Kommentar erwähnen" + "de": "Sollte {search} in jedem Kommentar erwähnen", + "es": "Debe mencionar {search} en cualquier comentario" } } ] @@ -285,7 +288,7 @@ "en": "Should not mention {search} in the first comment", "nl": "Mag in de eerste opmerking niet \"{search}\" bevatten", "de": "Sollte nicht {search} im ersten Kommentar erwähnen", - "es": "No debe mencionar {search} en el primer comentario", + "es": "No debe mencionar {search} en el primer comentario", "ca": "No s'ha de mencionar {search} al primer comentari", "cs": "V prvním komentáři by jste neměli zmiňovat {search}" } @@ -304,7 +307,8 @@ ], "question": { "en": "Should not mention {search} in any comment", - "de": "Sollte {search} in keinem Kommentar erwähnen" + "de": "Sollte {search} in keinem Kommentar erwähnen", + "es": "No debe mencionar {search} en ningún comentario" } } ] @@ -323,7 +327,7 @@ "en": "Opened by contributor {search}", "nl": "Geopend door bijdrager {search}", "de": "Erstellt von {search}", - "es": "Abierto por el contributor {search}", + "es": "Abierto por el colaborador {search}", "fr": "Ouverte par {search}", "ca": "Obert pel contribuïdor {search}", "cs": "Otevřeno přispěvatelem {search}" @@ -345,7 +349,7 @@ "en": "Not opened by contributor {search}", "nl": "Niet geopend door bijdrager {search}", "de": "Nicht geöffnet von Beitragendem {search}", - "es": "No abierto por el contributor {search}", + "es": "No abierto por el colaborador {search}", "ca": "No obert pel contribuïdor {search}", "cs": "Není otevřeno přispěvatelem {search}", "fr": "Exclureles notes ouvertes par {search}" @@ -365,7 +369,8 @@ ], "question": { "en": "Edited or commented on by any user with name {search}", - "de": "Bearbeitet oder kommentiert von jedem Benutzer mit Namen {search}" + "de": "Bearbeitet oder kommentiert von jedem Benutzer mit Namen {search}", + "es": "Editado o comentado por cualquier usuario con el nombre {search}" } } ] @@ -384,11 +389,12 @@ "en": "Last edited by contributor {search}", "nl": "Laatst bewerkt door bijdrager {search}", "de": "Zuletzt bearbeitet von {search}", - "es": "Editada por última vez por el contributor {search}", + "es": "Última edición por el colaborador {search}", "ca": "Editat per última vega pel contribuïdor {search}", "cs": "Naposledy upravil přispěvatel {search}", "da": "Senest redigeret af bidragsyder {search}", - "fr": "Dernière modification par {search}" + "fr": "Dernière modification par {search}", + "hu": "Legutóbb {search} felhasználó szerkesztette" } } ] @@ -405,7 +411,9 @@ ], "question": { "en": "Not edited as last by {search}", - "de": "Nicht zuletzt bearbeitet von {search}" + "de": "Nicht zuletzt bearbeitet von {search}", + "hu": "Legutóbb nem {search} felhasználó szerkesztette", + "es": "No editado por última vez por {search}" } } ] @@ -425,7 +433,7 @@ "en": "Created before {search}", "nl": "Aangemaakt voor {search}", "de": "Erstellt vor dem {search}", - "es": "Creada antes de {search}", + "es": "Creado antes de {search}", "ca": "Creada abans de {search}", "cs": "Vytvořeno před {search}", "fr": "Créée avant le {search}" @@ -448,7 +456,7 @@ "en": "Created after {search}", "nl": "Aangemaakt na {search}", "de": "Erstellt nach dem {search}", - "es": "Creada después de {search}", + "es": "Creado después de {search}", "ca": "Creada després de {search}", "cs": "Vytvořeno po {search}", "fr": "Créée après le {search}" @@ -469,7 +477,9 @@ ], "question": { "en": "Last edited before {search}", - "de": "Zuletzt bearbeitet vor dem {search}" + "de": "Zuletzt bearbeitet vor dem {search}", + "hu": "Legutóbb {search} előtt szerkesztették", + "es": "Última edición antes de {search}" } } ] @@ -487,7 +497,9 @@ ], "question": { "en": "Last edited after {search}", - "de": "Zuletzt bearbeitet nach dem {search}" + "de": "Zuletzt bearbeitet nach dem {search}", + "hu": "Legutóbb {search} után szerkesztették", + "es": "Última edición después de {search}" } } ] diff --git a/assets/layers/observation_tower/observation_tower.json b/assets/layers/observation_tower/observation_tower.json index 9f373d81b..b30db0f3d 100644 --- a/assets/layers/observation_tower/observation_tower.json +++ b/assets/layers/observation_tower/observation_tower.json @@ -14,7 +14,7 @@ "en": "Towers with a panoramic view", "nl": "Torens om van het uitzicht te genieten", "de": "Türme zur Aussicht auf die umgebende Landschaft", - "es": "Torres con vista panorámica", + "es": "Torres con vistas panorámicas", "pl": "Wieże z panoramicznym widokiem", "ca": "Torres amb vista panoràmica", "cs": "Věže s panoramatickým výhledem" @@ -81,7 +81,7 @@ "en": "What is the name of this tower?", "nl": "Heeft deze toren een naam?", "de": "Wie ist der Name des Turms?", - "es": "¿Cual es el nombre de esta torre?", + "es": "¿Cuál es el nombre de esta torre?", "ca": "Com s'anomena aquesta torre?", "pl": "Jaka jest nazwa tej wieży?", "cs": "Jak se jmenuje tato věž?" @@ -119,7 +119,7 @@ "en": "What is the height of this tower?", "nl": "Hoe hoog is deze toren?", "de": "Wie hoch ist dieser Turm?", - "es": "¿Cual es la altura de esta torre?", + "es": "¿Cuál es la altura de esta torre?", "ca": "Quina és l'alçada d'aquesta torre?", "pl": "Jaka jest wysokość tej wieży?", "cs": "Jaká je výška této věže?" @@ -128,7 +128,7 @@ "en": "This tower is {height} high", "nl": "Deze toren is {height} hoog", "de": "Dieser Turm ist {height} hoch", - "es": "Esta torre mide {height}", + "es": "Esta torre mide {height} de alto", "pl": "Ta wieża ma wysokość {height}", "ca": "Aquesta torre fa {height}", "cs": "Tato věž je {height} vysoká" @@ -156,7 +156,7 @@ "en": "This tower is publicly accessible", "nl": "Deze toren is publiek toegankelijk", "de": "Der Turm ist öffentlich zugänglich", - "es": "Esta torre es accesible públicamente", + "es": "Esta torre es de acceso público", "ca": "Aquesta torre és d'accés públic", "pl": "Ta wieża jest publicznie dostępna", "cs": "Tato věž je veřejně dostupná" @@ -168,7 +168,7 @@ "en": "This tower can only be visited with a guide", "nl": "Deze toren can enkel bezocht worden met een gids", "de": "Der Turm darf nur in Begleitung eines Führers betreten werden", - "es": "A esta torre solo se puede acceder con un guía", + "es": "Esta torre sólo se puede visitar con guía", "ca": "Aquesta torre només es pot visitar amb un guia", "pl": "Ta wieża można być zwiedzana tylko z przewodnikiem", "cs": "Tuto věž lze navštívit pouze s průvodcem" @@ -214,7 +214,8 @@ "nl": "Gratis te bezoeken", "de": "Eintritt kostenlos", "pl": "Darmowe wejście", - "cs": "Zdarma k návštěvě" + "cs": "Zdarma k návštěvě", + "es": "Entrada gratuita" } } ], @@ -258,7 +259,7 @@ "en": "This tower has {step_count} steps to reach the top", "nl": "Deze toren heeft {step_count} traptredes", "de": "Dieser Turm hat {step_count} Stufen, um die Spitze zu erreichen", - "es": "Esta torre tiene {step_count} escalones para lllegar a l a cima", + "es": "Esta torre tiene {step_count} escalones para llegar a la cima", "ca": "Aquesta torre té {step_count} esglaons per arribar al cim", "pl": "Ta wieża ma {step_count} stopni na górę", "cs": "Na vrchol této věže vede {step_count} schodů" @@ -276,7 +277,7 @@ "en": "Does this tower have an elevator?", "nl": "Heeft deze toren een lift?", "de": "Hat dieser Turm einen Aufzug?", - "es": "¿Esta torre tiene ascensor?", + "es": "¿Tiene esta torre ascensor?", "pl": "Czy ta wieża ma windę?", "ca": "Aquesta torre té ascensor?", "cs": "Má tato věž výtah?" @@ -328,7 +329,7 @@ "nl": "Wordt onderhouden door {operator}", "en": "Maintained by {operator}", "de": "Betrieben von {operator}", - "es": "Mantenida por {operator}", + "es": "Mantenido por {operator}", "pl": "Obsługiwana przez {operator}", "ca": "Mantés per {operator}", "cs": "Udržováno {operator}" diff --git a/assets/layers/osm_community_index/osm_community_index.json b/assets/layers/osm_community_index/osm_community_index.json index 05b2c783b..0f5078256 100644 --- a/assets/layers/osm_community_index/osm_community_index.json +++ b/assets/layers/osm_community_index/osm_community_index.json @@ -6,7 +6,8 @@ "ca": "Índex de comunitats d'OSM", "fr": "Index des communautés OSM", "pl": "Indeks społeczności OSM", - "cs": "OSM Community Index" + "cs": "OSM Community Index", + "es": "Índice de la comunidad OSM" }, "description": { "en": "A layer showing the OpenStreetMap Communities", @@ -14,7 +15,8 @@ "ca": "Una capa que mostra les comunitats d'OpenStreetMap", "fr": "Une couche affichant les communautés OpenStreetMap", "pl": "Warstwa pokazująca społeczności OpenStreetMap", - "cs": "Vrstva zobrazující komunity OpenStreetMap" + "cs": "Vrstva zobrazující komunity OpenStreetMap", + "es": "Una capa que muestra las comunidades de OpenStreetMap" }, "source": { "geoJson": "https://raw.githubusercontent.com/pietervdvn/MapComplete-data/main/community_index/tile_{z}_{x}_{y}.geojson", @@ -31,7 +33,8 @@ "ca": "Índex de comunitats d'OSM", "fr": "Index des communautés OSM", "pl": "Indeks społeczności OSM", - "cs": "OSM Community Index" + "cs": "OSM Community Index", + "es": "Índice de la comunidad OSM" } }, "pointRendering": [ @@ -84,7 +87,8 @@ "ca": "País", "fr": "Pays", "pl": "Kraj", - "cs": "Země" + "cs": "Země", + "es": "País" }, "osmTags": "level=country" } @@ -98,7 +102,8 @@ "en": "Sub Country Group", "de": "Regionale Gruppe", "ca": "Subgrup de països", - "cs": "Skupina dílčích zemí" + "cs": "Skupina dílčích zemí", + "es": "Grupo de subpaíses" }, "osmTags": "level=subcountryGroup" } @@ -115,7 +120,8 @@ "ca": "Regió", "fr": "Région", "pl": "Region", - "cs": "Region" + "cs": "Region", + "es": "Región" }, "osmTags": "level=region" } @@ -129,7 +135,8 @@ "en": "Intermediate Region", "de": "Mittlere Region", "ca": "Regió intermèdia", - "cs": "Střední region" + "cs": "Střední region", + "es": "Región intermedia" }, "osmTags": "level=intermediateRegion" } @@ -145,7 +152,8 @@ "ca": "Territori", "fr": "Territoire", "pl": "Terytorium", - "cs": "Území" + "cs": "Území", + "es": "Territorio" }, "osmTags": "level=territory" } @@ -162,7 +170,8 @@ "ca": "Món", "fr": "Monde", "pl": "Świat", - "cs": "Svět" + "cs": "Svět", + "es": "Mundo" }, "osmTags": "level=world" } @@ -178,7 +187,8 @@ "ca": "Altres Comunitats", "fr": "Autres communautés", "pl": "Inne społeczności", - "cs": "Ostatní komunity" + "cs": "Ostatní komunity", + "es": "Otras comunidades" }, "osmTags": "level=" } diff --git a/assets/layers/outdoor_seating/outdoor_seating.json b/assets/layers/outdoor_seating/outdoor_seating.json index 23d508c19..0b04fa4aa 100644 --- a/assets/layers/outdoor_seating/outdoor_seating.json +++ b/assets/layers/outdoor_seating/outdoor_seating.json @@ -2,11 +2,13 @@ "id": "outdoor_seating", "name": { "en": "Outdoor Seating", - "de": "Außenbestuhlung" + "de": "Außenbestuhlung", + "es": "Asientos al aire libre" }, "description": { "en": "Outdoor seating areas, usually located near cafes and restaurants.", - "de": "Sitzgelegenheiten im Freien, die sich in der Regel in der Nähe von Cafés und Restaurants befinden." + "de": "Sitzgelegenheiten im Freien, die sich in der Regel in der Nähe von Cafés und Restaurants befinden.", + "es": "Áreas de asientos al aire libre, generalmente ubicadas cerca de cafés y restaurantes." }, "source": { "osmTags": "leisure=outdoor_seating" @@ -15,7 +17,8 @@ "title": { "render": { "en": "Outdoor Seating area", - "de": "Sitzbereich im Freien" + "de": "Sitzbereich im Freien", + "es": "Área de asientos al aire libre" }, "mappings": [ { @@ -50,28 +53,32 @@ "id": "access", "question": { "en": "Who can use this outdoor seating area?", - "de": "Wer kann diesen Sitzbereich im Freien nutzen?" + "de": "Wer kann diesen Sitzbereich im Freien nutzen?", + "es": "¿Quién puede usar esta área de asientos al aire libre?" }, "mappings": [ { "if": "access=yes", "then": { "en": "Anyone can use this outdoor seating area.", - "de": "Dieser Sitzbereich im Freien kann von jedermann genutzt werden." + "de": "Dieser Sitzbereich im Freien kann von jedermann genutzt werden.", + "es": "Cualquiera puede usar esta área de asientos al aire libre." } }, { "if": "access=customers", "then": { "en": "Only customers can use this outdoor seating area.", - "de": "Dieser Sitzbereich im Freien kann nur von Kunden genutzt werden." + "de": "Dieser Sitzbereich im Freien kann nur von Kunden genutzt werden.", + "es": "Sólo los clientes pueden usar esta área de asientos al aire libre." } }, { "if": "access=private", "then": { "en": "This outdoor seating area is private.", - "de": "Dieser Sitzbereich im Freien ist privat." + "de": "Dieser Sitzbereich im Freien ist privat.", + "es": "Esta área de asientos al aire libre es privada." } } ] @@ -80,7 +87,8 @@ "id": "seasonal", "question": { "en": "Is this outdoor seating area seasonal?", - "de": "Ist dieser Sitzbereich im Freien saisonabhängig?" + "de": "Ist dieser Sitzbereich im Freien saisonabhängig?", + "es": "¿Es esta área de asientos al aire libre de temporada?" }, "multiAnswer": true, "mappings": [ @@ -88,42 +96,48 @@ "if": "seasonal=no", "then": { "en": "This outdoor seating area is available all year round.", - "de": "Dieser Sitzbereich im Freien ist das ganze Jahr über verfügbar." + "de": "Dieser Sitzbereich im Freien ist das ganze Jahr über verfügbar.", + "es": "Esta área de asientos al aire libre está disponible todo el año." } }, { "if": "seasonal=spring", "then": { "en": "This outdoor seating area is available in spring.", - "de": "Dieser Sitzbereich im Freien ist im Frühjahr verfügbar." + "de": "Dieser Sitzbereich im Freien ist im Frühjahr verfügbar.", + "es": "Esta área de asientos al aire libre está disponible en primavera." } }, { "if": "seasonal=summer", "then": { "en": "This outdoor seating area is available in summer.", - "de": "Dieser Sitzbereich im Freien ist im Sommer verfügbar." + "de": "Dieser Sitzbereich im Freien ist im Sommer verfügbar.", + "es": "Esta área de asientos al aire libre está disponible en verano." } }, { "if": "seasonal=autumn", "then": { "en": "This outdoor seating area is available in autumn.", - "de": "Dieser Sitzbereich im Freien ist im Herbst verfügbar." + "de": "Dieser Sitzbereich im Freien ist im Herbst verfügbar.", + "es": "Esta área de asientos al aire libre está disponible en otoño." } }, { "if": "seasonal=winter", "then": { "en": "This outdoor seating area is available in winter.", - "de": "Dieser Sitzbereich im Freien ist im Winter verfügbar." + "de": "Dieser Sitzbereich im Freien ist im Winter verfügbar.", + "es": "Esta área de asientos al aire libre está disponible en invierno." } }, { "if": "seasonal=dry_season", "then": { "en": "This outdoor seating area is available in the dry season.", - "de": "Dieser Sitzbereich im Freien ist in der Trockenzeit verfügbar." + "de": "Dieser Sitzbereich im Freien ist in der Trockenzeit verfügbar.", + "es": "Esta área de asientos al aire libre está disponible en la estación seca." } } ] @@ -136,21 +150,24 @@ "id": "heating", "question": { "en": "Is this outdoor seating area heated?", - "de": "Ist dieser Außensitzbereich beheizt?" + "de": "Ist dieser Außensitzbereich beheizt?", + "es": "¿Tiene calefacción esta área de asientos al aire libre?" }, "mappings": [ { "if": "heating=yes", "then": { "en": "This outdoor seating area is heated.", - "de": "Dieser Außensitzbereich ist beheizt." + "de": "Dieser Außensitzbereich ist beheizt.", + "es": "Esta área de asientos al aire libre tiene calefacción." } }, { "if": "heating=no", "then": { "en": "This outdoor seating area is not heated.", - "de": "Dieser Außensitzbereich ist nicht beheizt." + "de": "Dieser Außensitzbereich ist nicht beheizt.", + "es": "Esta área de asientos al aire libre no tiene calefacción." } } ] @@ -159,21 +176,24 @@ "id": "covered", "question": { "en": "Is this outdoor seating area covered?", - "de": "Ist dieser Sitzbereich im Freien überdacht?" + "de": "Ist dieser Sitzbereich im Freien überdacht?", + "es": "¿Está cubierta esta área de asientos al aire libre?" }, "mappings": [ { "if": "covered=yes", "then": { "en": "This outdoor seating area is covered.", - "de": "Dieser Sitzbereich im Freien ist überdacht." + "de": "Dieser Sitzbereich im Freien ist überdacht.", + "es": "Esta área de asientos al aire libre está cubierta." } }, { "if": "covered=no", "then": { "en": "This outdoor seating area is not covered.", - "de": "Dieser Sitzbereich im Freien ist nicht überdacht." + "de": "Dieser Sitzbereich im Freien ist nicht überdacht.", + "es": "Esta área de asientos al aire libre no está cubierta." } } ] diff --git a/assets/layers/parcel_lockers/parcel_lockers.json b/assets/layers/parcel_lockers/parcel_lockers.json index 108a7f5d5..14137ea2d 100644 --- a/assets/layers/parcel_lockers/parcel_lockers.json +++ b/assets/layers/parcel_lockers/parcel_lockers.json @@ -7,7 +7,8 @@ "ca": "bústies intel·ligents", "fr": "Casiers à colis", "pl": "Paczkomaty", - "cs": "Schránky na balíky" + "cs": "Schránky na balíky", + "es": "Taquillas de Paquetes" }, "description": { "en": "Layer showing parcel lockers for collecting and sending parcels.", @@ -16,7 +17,8 @@ "ca": "Capa que mostra les bústies intel·ligents per recollir i enviar paquets.", "fr": "Couche affichant les casiers pour récupérer ou envoyer des colis.", "pl": "Warstwa pokazująca paczkomaty umożliwiające odbieranie i wysyłanie przesyłek.", - "cs": "Vrstva se schránkami na balíky pro vyzvedávání a odesílání balíků." + "cs": "Vrstva se schránkami na balíky pro vyzvedávání a odesílání balíků.", + "es": "Capa que muestra taquillas para recoger y enviar paquetes." }, "source": { "osmTags": { @@ -40,7 +42,8 @@ "ca": "Bústia intel·ligent", "fr": "Casier à colis", "pl": "Paczkomat", - "cs": "Schránka na balíky" + "cs": "Schránka na balíky", + "es": "Taquilla de Paquetes" }, "mappings": [ { @@ -52,7 +55,8 @@ "ca": "{brand} bústia intel·ligent", "fr": "Casier à colis {brand}", "pl": "Paczkomat {brand}", - "cs": "{brand} schránka na balíky" + "cs": "{brand} schránka na balíky", + "es": "Taquilla de paquetes {brand}" } } ] @@ -92,7 +96,8 @@ "ca": "una bústia intel·ligent", "fr": "un casier à colis", "pl": "paczkomat", - "cs": "schránky na balíky" + "cs": "schránky na balíky", + "es": "una taquilla de paquetes" }, "tags": [ "amenity=parcel_locker" @@ -110,7 +115,8 @@ "ca": "Quina és la marca d'aquesta bústia intel·ligent?", "fr": "Quelle est la marque de ce casier à colis ?", "pl": "Jakiej marki jest ten paczkomat?", - "cs": "Jaká je značka schránky na balíky?" + "cs": "Jaká je značka schránky na balíky?", + "es": "¿Cuál es la marca de la taquilla de paquetes?" }, "freeform": { "key": "brand", @@ -125,7 +131,8 @@ "ca": "Marca", "fr": "Marque", "pl": "Marka", - "cs": "Značka" + "cs": "Značka", + "es": "Marca" } }, "render": { @@ -135,7 +142,8 @@ "ca": "Açò és una bústia intel·ligent de {brand}", "fr": "C'est un casier à colis {brand}", "pl": "To jest paczkomat marki {brand}", - "cs": "To je {brand} schránka na balíky" + "cs": "To je {brand} schránka na balíky", + "es": "Esta es una taquilla de paquetes {brand}" } }, { @@ -146,7 +154,8 @@ "nl": "Wat is de beheerder van deze pakketautomaat?", "ca": "Qui gestiona aquesta bústia intel·ligent?", "fr": "Quel est l'exploitant de ce casier à colis ?", - "cs": "Kdo je provozovatelem schránky na balíky?" + "cs": "Kdo je provozovatelem schránky na balíky?", + "es": "¿Cuál es el operador de la taquilla de paquetes?" }, "freeform": { "key": "operator", @@ -158,7 +167,8 @@ "ca": "Gestor", "fr": "Exploitant", "pl": "Operator", - "cs": "Operátor" + "cs": "Operátor", + "es": "Operador" } }, "render": { @@ -168,7 +178,8 @@ "ca": "Aquesta bústia intel·ligent la gestiona {operator}", "fr": "Ce casier à colis est exploité par {operator}", "pl": "Ten paczkomat jest obsługiwany przez {operator}", - "cs": "Tuto schránku na balíky provozuje {operator}" + "cs": "Tuto schránku na balíky provozuje {operator}", + "es": "Esta taquilla de paquetes es operada por {operator}" } }, "opening_hours_24_7", @@ -180,7 +191,8 @@ "nl": "Wat is het referentienummer/identificator van deze pakketautomaat?", "ca": "Quin és el nombre de referència/identificador d'aquesta bústia intel·ligent?", "fr": "Quel est le numéro de référence/d'identification de ce casier à colis ?", - "cs": "Jaké je referenční číslo/identifikátor této schránky na balíky?" + "cs": "Jaké je referenční číslo/identifikátor této schránky na balíky?", + "es": "¿Cuál es el número de referencia/identificador de esta taquilla de paquetes?" }, "freeform": { "key": "ref", @@ -192,7 +204,8 @@ "pa_PK": "ہوالہ", "ca": "Referència", "fr": "Référence", - "cs": "Reference" + "cs": "Reference", + "es": "Referencia" } }, "render": { @@ -201,7 +214,8 @@ "nl": "Deze pakketautomaat heeft de referentie {ref}", "ca": "Aquesta bústia intel·ligent té la referència {ref}", "fr": "Ce casier a colis porte la référence {ref}", - "cs": "Tato schránka na balíky má referenční číslo {ref}" + "cs": "Tato schránka na balíky má referenční číslo {ref}", + "es": "Esta taquilla de paquetes tiene la referencia {ref}" } }, { @@ -213,7 +227,8 @@ "ca": "Pots enviar paquets des d'aquesta bústia intel·ligent?", "fr": "Peut-on envoyer des colis depuis ce casier ?", "pl": "Czy z tego paczkomatu można wysyłać przesyłki?", - "cs": "Lze z této schránky na balíky odesílat balíky?" + "cs": "Lze z této schránky na balíky odesílat balíky?", + "es": "¿Puedes enviar paquetes desde esta taquilla?" }, "mappings": [ { @@ -225,7 +240,8 @@ "ca": "Pots enviar paquets des d'aquesta bústia intel·ligent", "fr": "On peut envoyer des colis depuis ce casier", "pl": "Z tego paczkomatu można wysyłać przesyłki", - "cs": "Z této schránky na balíky můžete posílat balíky" + "cs": "Z této schránky na balíky můžete posílat balíky", + "es": "Puedes enviar paquetes desde esta taquilla" } }, { @@ -237,7 +253,8 @@ "ca": "No pots enviar paquets des d'aquesta bústia intel·ligent", "fr": "On ne peut pas envoyer de colis depuis ce casier", "pl": "Z tego paczkomatu nie można wysyłać przesyłek", - "cs": "Z této schránky na balíky nemůžete posílat balíky" + "cs": "Z této schránky na balíky nemůžete posílat balíky", + "es": "No puedes enviar paquetes desde esta taquilla" } } ], @@ -252,7 +269,8 @@ "ca": "Pots arreplegar paquets a aquest armari intel·ligent?", "fr": "Peut-on retirer des colis depuis ce casier ?", "pl": "Czy z tego paczkomatu można odbierać przesyłki?", - "cs": "Můžete si vyzvednout balíčky z této schránky na balíky?" + "cs": "Můžete si vyzvednout balíčky z této schránky na balíky?", + "es": "¿Puedes recoger paquetes de esta taquilla?" }, "mappings": [ { @@ -264,7 +282,8 @@ "ca": "Pots arreplegar paquets a aquesta bústia intel·ligent", "fr": "On peut retirer des colis depuis ce casier", "pl": "Z tego paczkomatu można odbierać przesyłki", - "cs": "Balíčky si můžete vyzvednout v této schránce na balíky" + "cs": "Balíčky si můžete vyzvednout v této schránce na balíky", + "es": "Puedes recoger paquetes de esta taquilla" } }, { @@ -276,7 +295,8 @@ "ca": "No pots arreplegar paquets a aquesta bústia intel·ligent", "fr": "On ne peut pas retirer de colis depuis ce casier", "pl": "Z tego paczkomatu nie można odbierać przesyłek", - "cs": "Z této schránky na balíky nemůžete vyzvedávat balíky" + "cs": "Z této schránky na balíky nemůžete vyzvedávat balíky", + "es": "No puedes recoger paquetes de esta taquilla" } } ], diff --git a/assets/layers/parking/parking.json b/assets/layers/parking/parking.json index 9b8287cc3..e19631b03 100644 --- a/assets/layers/parking/parking.json +++ b/assets/layers/parking/parking.json @@ -15,7 +15,7 @@ "en": "A layer showing car parkings", "nl": "Deze laag toont autoparkings", "de": "Eine Ebene mit Parkplätzen", - "es": "Una capa que muestra aparcamientos para coches", + "es": "Una capa que muestra aparcamientos.", "fr": "Un calque montrant les parkings", "ca": "Una capa que mostra aparcaments per a cotxes", "pl": "Warstwa pokazująca parkingi samochodowe", @@ -30,7 +30,7 @@ "nl": "Parking voor auto's", "en": "Car parking", "de": "Parkplatz", - "es": "Aparcamiento de coches", + "es": "Aparcamiento", "fr": "Lieu de stationnement", "pl": "Parking samochodowy", "ca": "Aparcament de cotxes", @@ -78,7 +78,7 @@ "nl": "een parking voor auto's", "en": "a car parking", "de": "einen Parkplatz", - "es": "un aparcamiento de coches", + "es": "un aparcamiento", "fr": "un lieu de stationnement pour voitures", "ca": "un aparcament per a cotxes", "pl": "parking samochodowy", @@ -100,7 +100,8 @@ "de": "Dies ist ein oberirdischer Parkplatz", "fr": "C'est un parking en surface", "ca": "Aquest és un aparcament en superfície", - "cs": "Jedná se o povrchové parkoviště" + "cs": "Jedná se o povrchové parkoviště", + "es": "Este es un aparcamiento en superficie" } }, { @@ -111,7 +112,8 @@ "de": "Dies ist eine Parkbucht neben einer Straße", "fr": "C'est un lieu de stationnement à côté d'une route", "ca": "Es tracta d'un aparcament al costat d'un carrer", - "cs": "Jedná se o parkoviště vedle ulice" + "cs": "Jedná se o parkoviště vedle ulice", + "es": "Esta es una bahía de aparcamiento junto a una calle" } }, { @@ -123,7 +125,8 @@ "fr": "C'est un parking souterrain", "ca": "Aquest és un aparcament subterrani", "pl": "To jest podziemny parking", - "cs": "Jedná se o podzemní garáž" + "cs": "Jedná se o podzemní garáž", + "es": "Este es un aparcamiento subterráneo" } }, { @@ -135,7 +138,8 @@ "fr": "C'est un parking à plusieurs étages", "pl": "To jest wielopiętrowy parking", "ca": "Es tracta d'un garatge de diverses plantes", - "cs": "Jedná se o vícepodlažní parkovací garáž" + "cs": "Jedná se o vícepodlažní parkovací garáž", + "es": "Este es un aparcamiento de varios pisos" } }, { @@ -145,7 +149,8 @@ "nl": "Dit is een parkeerdek op een dak", "de": "Dies ist ein Parkdeck auf dem Dach", "fr": "C'est un parking sur le toit", - "cs": "Jedná se o střešní parkoviště" + "cs": "Jedná se o střešní parkoviště", + "es": "Este es un aparcamiento en azotea" } }, { @@ -157,7 +162,8 @@ "fr": "C'est une voie de stationnement sur la route", "pl": "To jest pas do parkowania na jezdni", "ca": "Aquest és un carril per aparcar al carrer", - "cs": "Jedná se o pruh pro parkování na silnici" + "cs": "Jedná se o pruh pro parkování na silnici", + "es": "Este es un carril para aparcar en la carretera" } }, { @@ -167,7 +173,8 @@ "nl": "Dit is parking overdekt met carports", "de": "Dies ist ein durch Carports überdachter Parkplatz", "fr": "C'est un parking couvert avec des abris auto", - "cs": "Jedná se o parkoviště kryté přístřešky pro auta" + "cs": "Jedná se o parkoviště kryté přístřešky pro auta", + "es": "Este aparcamiento está cubierto por cocheras" } }, { @@ -177,7 +184,8 @@ "nl": "Dit is een parking bestaande uit garageboxen", "de": "Dies ist ein Parkplatz bestehend aus Garagenboxen", "fr": "C'est un parking composé de box de garage", - "cs": "Jedná se o parkoviště skládající se z garážových boxů" + "cs": "Jedná se o parkoviště skládající se z garážových boxů", + "es": "Este es un aparcamiento que consta de boxes de garaje" } }, { @@ -188,7 +196,8 @@ "de": "Hier gibt es Parkmöglichkeiten auf einem kleinen Rastplatz", "fr": "C'est un parking sur une aire de stationnement", "ca": "Aquest és un aparcament en una zona de descans", - "cs": "Jedná se o parkoviště na odpočívadle" + "cs": "Jedná se o parkoviště na odpočívadle", + "es": "Este es un aparcamiento en una zona de descanso" } }, { @@ -198,7 +207,8 @@ "nl": "Dit is een parking bestaande uit schuren", "de": "Hier gibt es Parkmöglichkeiten unter einer offenen Dachkonstruktion", "fr": "C'est un parking composé de cabanons", - "cs": "Jedná se o parkoviště tvořené přístřešky" + "cs": "Jedná se o parkoviště tvořené přístřešky", + "es": "Este es un aparcamiento que consta de cobertizos" } } ], @@ -209,7 +219,8 @@ "fr": "De quel type de stationnement s'agit-il ?", "ca": "Quin tipus d'aparcament és aquest?", "pl": "Jaki to rodzaj parkingu?", - "cs": "Jaký je druh parkování?" + "cs": "Jaký je druh parkování?", + "es": "¿Qué tipo de aparcamiento es este?" } }, { @@ -224,7 +235,8 @@ "fr": "Nombre de places de stationnement réservées aux personnes à mobilité réduite", "ca": "Quantitat de places d'aparcament reservades per a persones amb mobilitat reduïda", "pl": "Liczba miejsc parkingowych przeznaczonych dla niepełnosprawnych", - "cs": "Počet parkovacích míst vyhrazených pro osoby se zdravotním postižením" + "cs": "Počet parkovacích míst vyhrazených pro osoby se zdravotním postižením", + "es": "Cantidad de plazas de aparcamiento reservadas para personas con discapacidad" } }, "mappings": [ @@ -237,7 +249,8 @@ "fr": "Il y a des places de stationnement pour personnes à mobilité réduite, mais on ne sait pas combien", "ca": "Hi ha places d'aparcament per a gent amb mobilitat reduïda, però no es sap quantes", "pl": "Są tutaj miejsca parkingowe dla niepełnosprawnych, ale nie wiadomo ile", - "cs": "K dispozici jsou parkovací místa pro osoby se zdravotním postižením, ale není známo, kolik jich je" + "cs": "K dispozici jsou parkovací místa pro osoby se zdravotním postižením, ale není známo, kolik jich je", + "es": "Hay plazas de aparcamiento para discapacitados, pero no se sabe cuántas" }, "hideInAnswer": true }, @@ -250,7 +263,8 @@ "fr": "Il n'y a pas de places de stationnement pour personnes à mobilité réduite", "pl": "Nie ma tutaj żadnych miejsc parkingowych dla niepełnosprawnych", "ca": "No hi ha places d'aparcament per a minusvàlids", - "cs": "Nejsou zde žádná parkovací místa pro osoby se zdravotním postižením" + "cs": "Nejsou zde žádná parkovací místa pro osoby se zdravotním postižením", + "es": "No hay plazas de aparcamiento para discapacitados" }, "hideInAnswer": true }, @@ -263,7 +277,8 @@ "fr": "Il n'y a pas de places de stationnement pour personnes à mobilité réduite", "ca": "No hi ha places d'aparcament per a persones amb mobilitat reduïda", "pl": "Nie ma tutaj żadnych miejsc parkingowych dla niepełnosprawnych", - "cs": "Nejsou zde žádná parkovací místa pro osoby se zdravotním postižením" + "cs": "Nejsou zde žádná parkovací místa pro osoby se zdravotním postižením", + "es": "No hay plazas de aparcamiento para discapacitados" } } ], @@ -274,7 +289,8 @@ "fr": "Combien y a-t-il de places de stationnement pour personnes à mobilité réduite dans ce parking ?", "ca": "Quantes places d'aparcament per a persones amb mobilitat reduïda hi ha al parking?", "pl": "Jak wiele miejsc parkingowych dla niepełnosprawnych znajduje się na tym parkingu?", - "cs": "Kolik je na tomto parkovišti parkovacích míst pro osoby se zdravotním postižením?" + "cs": "Kolik je na tomto parkovišti parkovacích míst pro osoby se zdravotním postižením?", + "es": "¿Cuántas plazas de aparcamiento para discapacitados hay en este aparcamiento?" }, "render": { "en": "There are {capacity:disabled} disabled parking spots", @@ -283,7 +299,8 @@ "fr": "Il y a {capacity:disabled} places de stationnement pour personnes à mobilité réduite", "ca": "Hi ha {capacity:disabled} places d'aparcament per a discapacitats", "pl": "Jest {capacity:disabled} miejsc parkingowych dla niepełnosprawnych", - "cs": "K dispozici je {capacity:disabled} parkovacích míst pro osoby se zdravotním postižením" + "cs": "K dispozici je {capacity:disabled} parkovacích míst pro osoby se zdravotním postižením", + "es": "Hay {capacity:disabled} plazas de aparcamiento para discapacitados" } }, { @@ -298,7 +315,8 @@ "fr": "Nombre de places de stationnement", "ca": "Quantitat de places d'aparcament", "pl": "Liczba miejsc parkingowych", - "cs": "Počet parkovacích míst" + "cs": "Počet parkovacích míst", + "es": "Cantidad de plazas de aparcamiento" } }, "question": { @@ -308,7 +326,8 @@ "fr": "Combien de places de stationnement y a-t-il dans ce parking ?", "ca": "Quantes places d'aparcament hi han a aquest aparcament?", "pl": "Ile miejsc parkingowych jest na tym parkingu?", - "cs": "Kolik je na tomto parkovišti parkovacích míst?" + "cs": "Kolik je na tomto parkovišti parkovacích míst?", + "es": "¿Cuántas plazas de aparcamiento hay en este aparcamiento?" }, "render": { "en": "There are {capacity} parking spots", @@ -317,7 +336,8 @@ "fr": "Il y a {capacity} places de stationnement", "ca": "Hi han {capacity} places d'aparcament", "pl": "Jest {capacity} miejsc parkingowych", - "cs": "Počet parkovacích míst {capacity}" + "cs": "Počet parkovacích míst {capacity}", + "es": "Hay {capacity} plazas de aparcamiento" } } ], diff --git a/assets/layers/parking_spaces/parking_spaces.json b/assets/layers/parking_spaces/parking_spaces.json index 29b3d7114..40d84b2d3 100644 --- a/assets/layers/parking_spaces/parking_spaces.json +++ b/assets/layers/parking_spaces/parking_spaces.json @@ -6,7 +6,8 @@ "nl": "Parkeerplekken", "pl": "Miejsca parkingowe", "ca": "Places d'aparcament", - "cs": "Parkovací místa" + "cs": "Parkovací místa", + "es": "Plazas de Aparcamiento" }, "description": { "en": "Layer showing individual parking spaces.", @@ -14,7 +15,8 @@ "nl": "Laag met individuele parkeerplekken.", "pl": "Warstwa pokazująca pojedyncze miejsca parkingowe.", "ca": "Capa que mostra aparcaments de cotxes individuals.", - "cs": "Vrstva zobrazující jednotlivá parkovací místa." + "cs": "Vrstva zobrazující jednotlivá parkovací místa.", + "es": "Capa que muestra plazas de aparcamiento individuales." }, "source": { "osmTags": "amenity=parking_space" @@ -26,7 +28,8 @@ "de": "Stellplatz", "nl": "Parkeerplek", "ca": "Espai d'aparcament", - "cs": "Parkovací místo" + "cs": "Parkovací místo", + "es": "Plaza de Aparcamiento" }, "mappings": [ { @@ -35,7 +38,8 @@ "en": "Disabled Parking Space", "nl": "Parkeerplek voor gehandicapten", "de": "Behindertenparkplatz", - "cs": "Parkovací místo pro osoby se zdravotním postižením" + "cs": "Parkovací místo pro osoby se zdravotním postižením", + "es": "Plaza de Aparcamiento para Discapacitados" } }, { @@ -43,7 +47,8 @@ "then": { "en": "Electric Vehicle Charging Parking Space", "nl": "Parkeerplek voor opladen van elektrische voertuigen", - "de": "Parkplatz zum Laden von Elektrofahrzeugen" + "de": "Parkplatz zum Laden von Elektrofahrzeugen", + "es": "Plaza de Aparcamiento para Vehículos Eléctricos" } } ] @@ -98,7 +103,8 @@ "de": "Welche Art von Stellplatz ist dies?", "nl": "Wat voor parkeerplek is dit?", "ca": "Quin tipus d'espai d'aparcament és aquest?", - "cs": "Co je to za parkovací místo?" + "cs": "Co je to za parkovací místo?", + "es": "¿Qué tipo de plaza de aparcamiento es esta?" }, "mappings": [ { @@ -109,7 +115,8 @@ "nl": "Dit is een normale parkeerplek.", "ca": "És un lloc normal d'aparcament.", "pl": "To jest zwykłe miejsce parkingowe.", - "cs": "To je normální parkovací místo." + "cs": "To je normální parkovací místo.", + "es": "Esta es una plaza de aparcamiento normal." }, "hideInAnswer": true }, @@ -121,7 +128,8 @@ "nl": "Dit is een normale parkeerplek.", "pl": "To jest zwykłe miejsce parkingowe.", "ca": "Aquesta és una plaça d'aparcament normal.", - "cs": "To je normální parkovací místo." + "cs": "To je normální parkovací místo.", + "es": "Esta es una plaza de aparcamiento normal." } }, { @@ -132,7 +140,8 @@ "nl": "Dit is een gehandicaptenparkeerplaats.", "pl": "To jest miejsce parkingowe dla niepełnosprawnych.", "ca": "Aquesta és una plaça d'aparcament per a minusvàlids.", - "cs": "Jedná se o parkovací místo pro osoby se zdravotním postižením." + "cs": "Jedná se o parkovací místo pro osoby se zdravotním postižením.", + "es": "Esta es una plaza de aparcamiento para discapacitados." } }, { @@ -143,7 +152,8 @@ "nl": "Deze parkeerplek is gereserveerd voor het opladen van voertuigen.", "pl": "To miejsce parkingowe jest zarezerwowane dla ładowania pojazdów.", "ca": "Es tracta d'una plaça d'aparcament reservada per a la recàrrega de vehicles.", - "cs": "Jedná se o parkovací místo vyhrazené pro nabíjení vozidel." + "cs": "Jedná se o parkovací místo vyhrazené pro nabíjení vozidel.", + "es": "Esta es una plaza de aparcamiento reservada para la carga de vehículos." } }, { @@ -154,7 +164,8 @@ "nl": "Deze parkeerplek is gereserveerd voor leveringen.", "pl": "To miejsce parkingowe jest przeznaczone dla dostaw.", "ca": "Es tracta d'una plaça d'aparcament reservada per a repartidors.", - "cs": "Jedná se o parkovací místo vyhrazené pro dodávky." + "cs": "Jedná se o parkovací místo vyhrazené pro dodávky.", + "es": "Esta es una plaza de aparcamiento reservada para entregas." } }, { @@ -163,7 +174,8 @@ "en": "This is parking space reserved for heavy goods vehicles.", "de": "Dies ist ein Stellplatz, der für Lastkraftwagen reserviert ist.", "nl": "Deze parkeerplek is gereserveerd voor vrachtwagens.", - "cs": "Jedná se o parkovací místo vyhrazené pro těžká nákladní vozidla." + "cs": "Jedná se o parkovací místo vyhrazené pro těžká nákladní vozidla.", + "es": "Esta es una plaza de aparcamiento reservada para vehículos pesados." } }, { @@ -172,7 +184,8 @@ "en": "This is parking space reserved for caravans or RVs.", "de": "Dieser Stellplatz ist für Wohnwagen oder Wohnmobile reserviert.", "nl": "Deze parkeerplek is gereserveerd voor caravans of campers.", - "cs": "Jedná se o parkovací místo vyhrazené pro karavany nebo obytná vozidla." + "cs": "Jedná se o parkovací místo vyhrazené pro karavany nebo obytná vozidla.", + "es": "Esta es una plaza de aparcamiento reservada para caravanas o autocaravanas." } }, { @@ -183,7 +196,8 @@ "nl": "Deze parkeerplek is gereserveerd voor bussen.", "pl": "To miejsce parkingowe jest przeznaczone dla busów.", "ca": "Es tracta d'una plaça d'aparcament reservada per a autobusos.", - "cs": "Jedná se o parkovací místo vyhrazené pro autobusy." + "cs": "Jedná se o parkovací místo vyhrazené pro autobusy.", + "es": "Esta es una plaza de aparcamiento reservada para autobuses." } }, { @@ -194,7 +208,8 @@ "nl": "Deze parkeerplek is gereserveerd voor motoren.", "pl": "To miejsce parkingowe jest przeznaczone dla motocykli.", "ca": "Es tracta d'una plaça d'aparcament reservada per a motos.", - "cs": "Jedná se o parkovací místo vyhrazené pro motocykly." + "cs": "Jedná se o parkovací místo vyhrazené pro motocykly.", + "es": "Esta es una plaza de aparcamiento reservada para motocicletas." } }, { @@ -205,7 +220,8 @@ "nl": "Deze parkeerplek is gereserveerd voor ouders met kinderen.", "pl": "To miejsce jest przeznaczone dla rodziców z dziećmi.", "ca": "Es tracta d'una plaça d'aparcament reservada per a pares amb fills.", - "cs": "Jedná se o parkovací místo vyhrazené pro rodiče s dětmi." + "cs": "Jedná se o parkovací místo vyhrazené pro rodiče s dětmi.", + "es": "Esta es una plaza de aparcamiento reservada para padres con niños." } }, { @@ -216,7 +232,8 @@ "nl": "Deze parkeerplek is gereserveerd voor personeel.", "pl": "To jest miejsce parkingowe przeznaczone dla pracowników.", "ca": "Es tracta d'una plaça d'aparcament reservada al personal.", - "cs": "Jedná se o parkovací místo vyhrazené pro zaměstnance." + "cs": "Jedná se o parkovací místo vyhrazené pro zaměstnance.", + "es": "Esta es una plaza de aparcamiento reservada para el personal." } }, { @@ -227,7 +244,8 @@ "nl": "Deze parkeerplek is gereserveerd voor taxis.", "pl": "To miejsce parkingowe jest przeznaczone dla taksówek.", "ca": "Aquest espai d'aparcament està reservat per a taxi.", - "cs": "Jedná se o parkovací místo vyhrazené pro taxíky." + "cs": "Jedná se o parkovací místo vyhrazené pro taxíky.", + "es": "Esta es una plaza de aparcamiento reservada para taxis." } }, { @@ -236,7 +254,8 @@ "en": "This is a parking space reserved for vehicles towing a trailer.", "de": "Dies ist ein Stellplatz, der für Fahrzeuge mit Anhänger reserviert ist.", "nl": "Deze parkeerplek is gereserveerd voor voertuigen met een aanhanger.", - "cs": "Jedná se o parkovací místo vyhrazené pro vozidla táhnoucí přívěs." + "cs": "Jedná se o parkovací místo vyhrazené pro vozidla táhnoucí přívěs.", + "es": "Esta es una plaza de aparcamiento reservada para vehículos que remolcan un remolque." } }, { @@ -245,7 +264,8 @@ "en": "This is a parking space reserved for car sharing.", "de": "Dies ist ein Stellplatz, der für Carsharing reserviert ist.", "nl": "Deze parkeerplek is gereserveerd voor autodelen.", - "cs": "Jedná se o parkovací místo vyhrazené pro sdílení automobilů." + "cs": "Jedná se o parkovací místo vyhrazené pro sdílení automobilů.", + "es": "Esta es una plaza de aparcamiento reservada para coches compartidos." } } ] @@ -257,7 +277,8 @@ "de": "Dieser Parkplatz hat {capacity} Stellplätze.", "nl": "Deze parkeerplek heeft {capacity} plaatsen.", "ca": "Aquests espais d'aparcament tenen {capacity} places.", - "cs": "Toto parkoviště má {capacity} míst." + "cs": "Toto parkoviště má {capacity} míst.", + "es": "Esta plaza de aparcamiento tiene {capacity} plazas." }, "mappings": [ { @@ -267,7 +288,8 @@ "de": "Dieser Parkplatz hat 1 Stellplatz.", "nl": "Deze parkeerplek heeft 1 plaats.", "ca": "Aquest espai d'aparcament té 1 plaça.", - "cs": "Toto parkoviště má 1 místo." + "cs": "Toto parkoviště má 1 místo.", + "es": "Esta plaza de aparcamiento tiene 1 plaza." } } ] diff --git a/assets/layers/parking_ticket_machine/parking_ticket_machine.json b/assets/layers/parking_ticket_machine/parking_ticket_machine.json index 2715cb370..7b9ce77cf 100644 --- a/assets/layers/parking_ticket_machine/parking_ticket_machine.json +++ b/assets/layers/parking_ticket_machine/parking_ticket_machine.json @@ -4,7 +4,8 @@ "en": "Parking Ticket Machines", "nl": "Parkeerkaartautomaten", "de": "Parkscheinautomaten", - "cs": "Parkovací automaty" + "cs": "Parkovací automaty", + "es": "Máquinas de Tickets de Aparcamiento" }, "description": { "en": "Layer with parking ticket machines to pay for parking.", @@ -12,7 +13,8 @@ "de": "Ebene mit Parkscheinautomaten zum Bezahlen des Parkens.", "fr": "Couche avec les distributeurs de tickets pour payer le parking.", "ca": "Capa amb màquines de bitllets d'aparcament per pagar l'aparcament.", - "cs": "Vrstva s parkovacími automaty pro placení parkovného." + "cs": "Vrstva s parkovacími automaty pro placení parkovného.", + "es": "Capa con máquinas expendedoras de tickets de aparcamiento para pagar el aparcamiento." }, "source": { "osmTags": { @@ -29,7 +31,8 @@ "nl": "Parkeerkaartautomaat", "de": "Parkscheinautomat", "ca": "Màquina de bitllets d'aparcament", - "cs": "Parkovací automat" + "cs": "Parkovací automat", + "es": "Máquina de Tickets de Aparcamiento" } }, "pointRendering": [ @@ -63,7 +66,8 @@ "nl": "een parkeerkaartautomaat", "de": "Ein Parkscheinautomat", "ca": "una màquina de tiquets d'aparcament", - "cs": "parkovací automat" + "cs": "parkovací automat", + "es": "una máquina de tickets de aparcamiento" } } ], @@ -79,7 +83,8 @@ "nl": "Wat is het referentienummer van deze parkeerkaartautomaat?", "de": "Wie lautet die Referenznummer dieses Parkscheinautomaten?", "ca": "Quin és el número de referència d'aquesta màquina de bitllets d'aparcament?", - "cs": "Jaké je referenční číslo tohoto parkovacího automatu?" + "cs": "Jaké je referenční číslo tohoto parkovacího automatu?", + "es": "¿Cuál es el número de referencia de esta máquina de tickets de aparcamiento?" }, "freeform": { "key": "ref", @@ -90,7 +95,8 @@ "de": "Referenznummer", "ca": "Número de referència", "fr": "Numéro de référence", - "cs": "Referenční číslo" + "cs": "Referenční číslo", + "es": "Número de referencia" } }, "render": { @@ -98,7 +104,8 @@ "nl": "Deze parkeerkaartautomaat heeft het referentienummer {ref}", "de": "Dieser Parkscheinautomat hat die Referenznummer {ref}", "ca": "Aquesta màquina de tiquets d'aparcament té el número de referència {ref}", - "cs": "Tento parkovací automat má referenční číslo {ref}" + "cs": "Tento parkovací automat má referenční číslo {ref}", + "es": "Esta máquina de tickets de aparcamiento tiene el número de referencia {ref}" }, "mappings": [ { @@ -108,7 +115,8 @@ "nl": "Deze parkeerkaartautomaat heeft geen referentienummer", "de": "Dieser Parkscheinautomat hat keine Referenznummer", "ca": "Aquesta màquina de tiquets d'aparcament no té número de referència", - "cs": "Tento parkovací automat nemá žádné referenční číslo" + "cs": "Tento parkovací automat nemá žádné referenční číslo", + "es": "Esta máquina de tickets de aparcamiento no tiene número de referencia" } } ] diff --git a/assets/layers/pedestrian_path/pedestrian_path.json b/assets/layers/pedestrian_path/pedestrian_path.json index d6eb09c23..b936ea472 100644 --- a/assets/layers/pedestrian_path/pedestrian_path.json +++ b/assets/layers/pedestrian_path/pedestrian_path.json @@ -6,7 +6,8 @@ "de": "Fußgängerwege", "fr": "Sentiers piétons", "ca": "Camins per a vianants", - "cs": "Cesty pro chodce" + "cs": "Cesty pro chodce", + "es": "Aceras peatonales" }, "description": { "en": "Pedestrian footpaths, especially used for indoor navigation and snapping entrances to this layer", @@ -14,7 +15,8 @@ "de": "Fußgängerwege, insbesondere für die Navigation in Gebäuden und die Aufnahme von Eingängen in diese Ebene", "fr": "Sentiers piétonniers, particulièrement utilisés pour la navigation intérieure et les entrées d'accrochage à cette couche", "ca": "Senderes per a vianants, especialment utilitzades per a la navegació interior i les entrades ràpides a aquesta capa", - "cs": "Chodníky pro pěší, používané zejména pro navigaci v interiéru a zachycení vstupů do této vrstvy" + "cs": "Chodníky pro pěší, používané zejména pro navigaci v interiéru a zachycení vstupů do této vrstvy", + "es": "Aceras peatonales, especialmente usadas para navegación interior y para ajustar entradas a esta capa" }, "source": { "osmTags": { @@ -49,6 +51,7 @@ "allowMove": false, "snapName": { "en": "a pedestrian path", - "de": "ein Fußweg" + "de": "ein Fußweg", + "es": "una acera peatonal" } } diff --git a/assets/layers/pharmacy/pharmacy.json b/assets/layers/pharmacy/pharmacy.json index 248bb99a3..258a88d04 100644 --- a/assets/layers/pharmacy/pharmacy.json +++ b/assets/layers/pharmacy/pharmacy.json @@ -7,7 +7,8 @@ "pa_PK": "فارمیسی", "ca": "Farmàcies", "fr": "Pharmacies", - "cs": "Lékárny" + "cs": "Lékárny", + "es": "Farmacias" }, "description": { "en": "A layer showing pharmacies, which (probably) dispense prescription drugs", @@ -15,7 +16,8 @@ "nl": "Deze laag toont apotheken, welke (waarschijnlijk) ook medicijnen onder voorschrift verkopen", "fr": "Une couche affichant les pharmacie qui (probablement) délivrent des médicaments", "ca": "Una capa que mostra les farmàcies, que (probablement) distribueixen medicaments amb recepta", - "cs": "Vrstva zobrazující lékárny, které (pravděpodobně) vydávají léky na předpis" + "cs": "Vrstva zobrazující lékárny, které (pravděpodobně) vydávají léky na předpis", + "es": "Una capa que muestra farmacias, que (probablemente) dispensan medicamentos con receta" }, "source": { "osmTags": { @@ -33,7 +35,8 @@ "fr": "{name}", "ca": "{name}", "cs": "{name}", - "pl": "{name}" + "pl": "{name}", + "es": "{name}" }, "mappings": [ { @@ -46,7 +49,8 @@ "fr": "Pharmacie", "ca": "Farmàcia", "cs": "Lékárna", - "pl": "Apteka" + "pl": "Apteka", + "es": "Farmacia" } } ] @@ -92,7 +96,8 @@ "de": "eine Apotheke", "fr": "une pharmacie", "ca": "una farmàcia", - "cs": "lékárna" + "cs": "lékárna", + "es": "una farmacia" } } ], @@ -110,7 +115,8 @@ "nl": "Naam van de apotheek", "fr": "Nom de la pharmacie", "ca": "Nom de la farmàcia", - "cs": "Název lékárny" + "cs": "Název lékárny", + "es": "Nombre de la farmacia" } }, "question": { @@ -120,7 +126,9 @@ "fr": "Quel est le nom de cette pharmacie ?", "ca": "Quin és el nom de la farmàcia?", "cs": "Jak se lékárna jmenuje?", - "pl": "Jak nazywa się ta apteka?" + "pl": "Jak nazywa się ta apteka?", + "es": "¿Cuál es el nombre de la farmacia?", + "uk": "Як називається аптека?" }, "render": { "en": "This pharmacy is called {name}", @@ -129,7 +137,9 @@ "ca": "Aquesta farmàcia es diu {name}", "fr": "Cette pharmacie s'appelle {name}", "cs": "Tato lékárna se jmenuje {name}", - "pl": "Nazwa tej apteki to {name}" + "pl": "Nazwa tej apteki to {name}", + "es": "Esta farmacia se llama {name}", + "uk": "Ця аптека називається {name}" } }, "opening_hours", @@ -143,7 +153,8 @@ "nl": "Is het mogelijk om deze apotheek te bereiken met een rolstoel?", "ca": "És fàcil accedir a aquesta farmàcia amb una cadira de rodes?", "fr": "Cette pharmacie est-elle facilement accessible en chaise roulante ?", - "cs": "Je tato lékárna snadno přístupná na invalidním vozíku?" + "cs": "Je tato lékárna snadno přístupná na invalidním vozíku?", + "es": "¿Es esta farmacia de fácil acceso en silla de ruedas?" }, "mappings": [ { @@ -155,7 +166,8 @@ "nl": "Deze apotheek is makkelijk te bereiken met een rolstoel", "fr": "Cette pharmacie est facile d'accès en chaise roulante", "cs": "Tato lékárna je snadno přístupná na invalidním vozíku", - "pl": "Ta apteka jest łatwo dostępna na wózku" + "pl": "Ta apteka jest łatwo dostępna na wózku", + "es": "Esta farmacia es de fácil acceso en silla de ruedas" } }, { @@ -166,7 +178,8 @@ "nl": "Deze apotheek is moeilijk te bereiken met een rolstoel", "ca": "Aquesta farmàcia es difícil d'accedir amb una cadira de rodes", "fr": "Cette pharmacie est difficilement accessible en chaise roulante", - "cs": "Tato lékárna je těžko přístupná na invalidním vozíku" + "cs": "Tato lékárna je těžko přístupná na invalidním vozíku", + "es": "Esta farmacia es de difícil acceso en silla de ruedas" } }, { @@ -177,7 +190,8 @@ "nl": "Deze apotheek is bereikbaar met een rolstoel, maar het is niet makkelijk", "ca": "Aquesta farmàcia té un accés limitat per a usuaris amb cadira de rodes", "fr": "L'accès à cette pharmacie est limité en chaise roulante", - "cs": "Tato lékárna má omezený přístup pro vozíčkáře" + "cs": "Tato lékárna má omezený přístup pro vozíčkáře", + "es": "Esta farmacia tiene acceso limitado para usuarios de silla de ruedas" } } ] @@ -194,7 +208,8 @@ "nl": "Heeft een drive-through", "fr": "A une drive", "ca": "Té autoservei", - "cs": "Má průjezd" + "cs": "Má průjezd", + "es": "¿Tiene servicio de auto-recogida?" }, "osmTags": "drive_through=yes" } @@ -210,7 +225,8 @@ "nl": "Deze apotheek verdeelt medicijnen met voorschrift", "fr": "Pharmacie pouvant délivrer des médicaments sous prescription", "ca": "Farmàcia que subministra medicaments amb recepta", - "cs": "Lékárna schopná poskytovat léky na předpis" + "cs": "Lékárna schopná poskytovat léky na předpis", + "es": "¿La farmacia puede proporcionar medicamentos con receta?" }, "osmTags": "dispensing=yes" } diff --git a/assets/layers/physiotherapist/physiotherapist.json b/assets/layers/physiotherapist/physiotherapist.json index 1f90d7410..cd3342cc7 100644 --- a/assets/layers/physiotherapist/physiotherapist.json +++ b/assets/layers/physiotherapist/physiotherapist.json @@ -6,7 +6,8 @@ "de": "Physiotherapeuten", "ca": "Fisioterapeuta", "cs": "Fyzioterapeut", - "pl": "Fizjoterapeuta" + "pl": "Fizjoterapeuta", + "es": "Fisioterapeuta" }, "description": { "en": "This layer shows physiotherapists", @@ -14,7 +15,8 @@ "de": "Diese Ebene zeigt Physiotherapeuten", "ca": "Aquesta capa mostra fisioterapeutes", "cs": "Tato vrstva zobrazuje fyzioterapeuty", - "pl": "Ta warstwa pokazuje fizjoterapeutów" + "pl": "Ta warstwa pokazuje fizjoterapeutów", + "es": "Esta capa muestra fisioterapeutas" }, "source": { "osmTags": "healthcare=physiotherapist" @@ -27,7 +29,8 @@ "de": "Physiotherapeut {name}", "ca": "Fisioterapeuta {name}", "cs": "Fyzioterapeut {name}", - "pl": "Fizjoterapeuta {name}" + "pl": "Fizjoterapeuta {name}", + "es": "Fisioterapeuta {name}" } }, "pointRendering": [ @@ -58,7 +61,8 @@ "nl": "een fysiotherapeutenpraktijk", "fr": "un cabinet de kinésithérapeutes", "ca": "una consulta fisioterapèutica", - "cs": "ordinace fyzioterapeuta" + "cs": "ordinace fyzioterapeuta", + "es": "un consultorio de fisioterapia" }, "tags": [ "healthcare=physiotherapist" @@ -73,14 +77,16 @@ "nl": "Wat is de naam van deze kinesistenpraktijk?", "de": "Wie heißt die Praxis des Physiotherapeuten?", "ca": "Quin és el nom d'aquesta consulta fisioterapèutica?", - "cs": "Jak se jmenuje ordinace fyzioterapeuta?" + "cs": "Jak se jmenuje ordinace fyzioterapeuta?", + "es": "¿Cuál es el nombre de este consultorio de fisioterapia?" }, "render": { "en": "This physiotherapists office is called {name}", "nl": "Deze kinesistenpraktijk heet {name}", "de": "Die Praxis des Physiotherapeuten heißt {name}", "ca": "Aquesta consulta fisioterapèutica es diu {name}", - "cs": "Tato ordinace fyzioterapeuta se jmenuje {name}" + "cs": "Tato ordinace fyzioterapeuta se jmenuje {name}", + "es": "Este consultorio de fisioterapia se llama {name}" }, "freeform": { "key": "name" diff --git a/assets/layers/picnic_table/picnic_table.json b/assets/layers/picnic_table/picnic_table.json index c0b9acb42..9eb0f021d 100644 --- a/assets/layers/picnic_table/picnic_table.json +++ b/assets/layers/picnic_table/picnic_table.json @@ -8,7 +8,7 @@ "fr": "Tables de pique-nique", "de": "Picknick-Tische", "ca": "Taules de pícnic", - "es": "Mesas de pícnic", + "es": "Mesas de Picnic", "cs": "Piknikové stoly" }, "description": { @@ -18,7 +18,7 @@ "fr": "La couche montrant les tables de pique-nique", "ru": "Слой, отображающий столы для пикника", "de": "Die Ebene zeigt Picknicktische an", - "es": "Una capa que muestra mesas de pícnic", + "es": "La capa que muestra mesas de picnic", "ca": "La capa mostra taules de pícnic", "cs": "Vrstva zobrazující piknikové stoly" }, @@ -35,7 +35,7 @@ "fr": "Table de pique-nique", "de": "Picknick-Tisch", "ca": "Taula de pícnic", - "es": "Mesa de pícnic", + "es": "Mesa de Picnic", "cs": "Piknikový stůl" } }, @@ -71,7 +71,7 @@ "ru": "стол для пикника", "de": "einen Picknick-Tisch", "fr": "une table de pique-nique", - "es": "una mesa de pícnic", + "es": "una mesa de picnic", "ca": "una taula de pícnic", "cs": "piknikový stůl" } @@ -88,9 +88,10 @@ "de": "Aus welchem Material besteht dieser Picknicktisch?", "ru": "Из чего изготовлен этот стол для пикника?", "fr": "En quel matériau est faite la table de pique-nique ?", - "es": "¿De qué material está hecha esta mesa de pícnic?", + "es": "¿De qué material está hecha esta mesa de picnic?", "ca": "De quin material està feta aquesta taula de pícnic?", - "cs": "Z jakého materiálu je vyroben tento piknikový stůl?" + "cs": "Z jakého materiálu je vyroben tento piknikový stůl?", + "uk": "З якого матеріалу виготовлений цей стіл для пікніка?" }, "render": { "en": "This picnic table is made of {material}", @@ -99,7 +100,7 @@ "de": "Dieser Picknicktisch besteht aus {material}", "ru": "Этот стол для пикника сделан из {material}", "fr": "La table est faite en {material}", - "es": "Esta mesa de pícnic está hecha de {material}", + "es": "Esta mesa de picnic está hecha de {material}", "ca": "Aquesta taula de pícnic està feta de {material}", "cs": "Tento piknikový stůl je vyroben z {material}" }, @@ -116,9 +117,10 @@ "ru": "Это деревянный стол для пикника", "de": "Dies ist ein Picknicktisch aus Holz", "fr": "C’est une table en bois", - "es": "Esta es una mesa de pícnic de madera", + "es": "Esta es una mesa de picnic de madera", "ca": "Aquesta és una taula de pícnic de fusta", - "cs": "Jedná se o dřevěný piknikový stůl" + "cs": "Jedná se o dřevěný piknikový stůl", + "uk": "Це деревʼяний стіл для пікніка" } }, { @@ -130,7 +132,7 @@ "ru": "Это бетонный стол для пикника", "de": "Dies ist ein Picknicktisch aus Beton", "fr": "C’est une table en béton", - "es": "Esta es una mesa de pícnic de hormigón", + "es": "Esta es una mesa de picnic de hormigón", "ca": "Açò és una taula de pícnic de formigó", "cs": "Jedná se o betonový piknikový stůl" } @@ -141,7 +143,7 @@ "en": "This picnic table is made from (recycled) plastic", "nl": "Deze picknictafel is gemaakt uit (gerecycleerd) plastiek", "de": "Dieser Picknicktisch ist aus (recyceltem) Kunststoff hergestellt", - "es": "Esta es una mesa de picnic hecha de plástico reciclado", + "es": "Esta mesa de picnic está hecha de plástico (reciclado)", "fr": "Cette table de pique-nique est en plastique (recyclé)", "ca": "Açò és una taula de pícnic feta de plàstic reciclat", "cs": "Tento piknikový stůl je vyroben z plastu (recyklované)" @@ -152,7 +154,8 @@ "then": { "en": "This picnic table is made from metal", "nl": "Deze picnictafel is gemaakt uit metaal", - "de": "Der Picknicktisch ist aus Metall" + "de": "Der Picknicktisch ist aus Metall", + "es": "Esta mesa de picnic está hecha de metal" } } ], diff --git a/assets/layers/playground/playground.json b/assets/layers/playground/playground.json index 57bd40a40..56415ee37 100644 --- a/assets/layers/playground/playground.json +++ b/assets/layers/playground/playground.json @@ -10,7 +10,8 @@ "ca": "Parcs infantils", "pa_PK": "کھید دے میدان", "cs": "Dětská hřiště", - "pl": "Place zabaw" + "pl": "Place zabaw", + "es": "Parques Infantiles" }, "description": { "nl": "Speeltuinen", @@ -22,7 +23,8 @@ "ca": "Parcs infantils", "pa_PK": "کھید دے میدان", "cs": "Dětská hřiště", - "pl": "Place zabaw" + "pl": "Place zabaw", + "es": "Parques infantiles" }, "source": { "osmTags": { @@ -46,7 +48,8 @@ "fr": "Aire de jeu", "ca": "Parc infantil", "pa_PK": "کھید دے میدان", - "cs": "Dětské hřiště" + "cs": "Dětské hřiště", + "es": "Parque Infantil" }, "mappings": [ { @@ -59,7 +62,8 @@ "de": "Spielplatz {name}", "fr": "Aire de jeu {name}", "ca": "Parc infantil {name}", - "cs": "Hřiště {name}" + "cs": "Hřiště {name}", + "es": "Parque Infantil {name}" } } ] @@ -78,23 +82,23 @@ } ], "iconSize": { - "render": "40,40,center", + "render": "30,30,center", "mappings": [ { "if": "id~node/.*", - "then": "40,40,center" + "then": "30,30,center" }, { "if": "_size_classification=small", - "then": "25,25,center" + "then": "20,20,center" }, { "if": "_size_classification=medium", - "then": "40,40,center" + "then": "30,30,center" }, { "if": "_size_classification=large", - "then": "60,60,center" + "then": "40,40,center" } ] }, @@ -129,7 +133,8 @@ "de": "einen Spielplatz", "ca": "un parc infantil", "cs": "hřiště", - "pl": "plac zabaw" + "pl": "plac zabaw", + "es": "un parque infantil" } } ], @@ -140,7 +145,9 @@ "question": { "en": "Does one have to pay to use this playground?", "nl": "Moet men betalen om deze speeltuin te gebruiken?", - "de": "Muss man zahlen, um den Spielplatz zu nutzen?" + "de": "Muss man zahlen, um den Spielplatz zu nutzen?", + "uk": "Чи потрібно платити за користування цим майданчиком?", + "es": "¿Hay que pagar para usar este parque infantil?" }, "id": "fee", "mappings": [ @@ -150,7 +157,9 @@ "then": { "en": "Free to use", "nl": "Gratis te gebruiken", - "de": "Nutzung kostenlos" + "de": "Nutzung kostenlos", + "uk": "Вільне використання", + "es": "De uso gratuito" } }, { @@ -158,7 +167,9 @@ "then": { "en": "Paid playground", "nl": "Betalend", - "de": "Gebührenpflichtiger Spielplatz" + "de": "Gebührenpflichtiger Spielplatz", + "uk": "Платний дитячий майданчик", + "es": "Parque infantil de pago" } } ], @@ -172,7 +183,9 @@ "de": "Welchen Bodenbelag hat dieser Spielplatz?", "fr": "De quelle matière est la surface de l’aire de jeu ?", "ca": "Quina és la superfície d'aquest parc infantil?", - "cs": "Jaký je povrch tohoto hřiště?" + "cs": "Jaký je povrch tohoto hřiště?", + "uk": "Яка поверхня цього дитячого майданчика?", + "es": "¿Cuál es la superficie de este parque infantil?" }, "render": { "nl": "De ondergrond is {surface}", @@ -183,7 +196,8 @@ "fr": "La surface est en {surface}", "es": "La superficie es {surface}", "ca": "La superfícies és {surface}", - "cs": "Povrch je {surface}" + "cs": "Povrch je {surface}", + "uk": "Поверхня - {surface}" }, "freeform": { "key": "surface" @@ -198,9 +212,10 @@ "ru": "Поверхность - трава", "de": "Der Bodenbelag ist aus Gras", "fr": "La surface est en gazon", - "es": "La superficie es hierba", + "es": "La superficie es césped", "ca": "La superfície és herba", - "cs": "Povrch je tráva" + "cs": "Povrch je tráva", + "uk": "Поверхня - трава" } }, { @@ -214,7 +229,8 @@ "fr": "La surface est en sable", "es": "La superficie es arena", "ca": "La superfície és sorra", - "cs": "Povrch je písek" + "cs": "Povrch je písek", + "uk": "Поверхня - пісок" } }, { @@ -227,7 +243,9 @@ "ru": "Покрытие из щепы", "fr": "La surface est en copeaux de bois", "ca": "La superfície consisteix en estelles", - "cs": "Povrch tvoří dřevěná štěpka" + "cs": "Povrch tvoří dřevěná štěpka", + "uk": "Поверхня складається з деревної стружки", + "es": "La superficie consta de corteza de madera" } }, { @@ -239,9 +257,10 @@ "ru": "Поверхность - брусчатка", "de": "Der Bodenbelag ist aus Pflastersteinen", "fr": "La surface est en pavés", - "es": "La superficie es de adoquines", + "es": "La superficie es de adoquines", "ca": "La superfície són llambordes", - "cs": "Povrch je dlažební kostky" + "cs": "Povrch je dlažební kostky", + "uk": "Покриття - бруківка" } }, { @@ -253,9 +272,10 @@ "ru": "Поверхность - асфальт", "de": "Der Bodenbelag ist aus Asphalt", "fr": "La surface est en bitume", - "es": "La superficie es asfalto", + "es": "La superficie es de asfalto", "ca": "La superfície és asfalt", - "cs": "Povrch je asfalt" + "cs": "Povrch je asfalt", + "uk": "Покриття - асфальт" } }, { @@ -267,9 +287,10 @@ "ru": "Поверхность - бетон", "de": "Der Bodenbelag ist aus Beton", "fr": "La surface est en béton", - "es": "La superficie es hormigón", + "es": "La superficie es de hormigón", "ca": "La superfície és formigó", - "cs": "Povrch je beton" + "cs": "Povrch je beton", + "uk": "Поверхня - бетон" } }, { @@ -280,9 +301,10 @@ "it": "La superficie è non pavimentato", "de": "Die Oberfläche ist unbefestigt", "fr": "La surface n’a pas de revêtement", - "es": "La superficie está sin pavimentar", + "es": "La superficie es sin pavimentar", "ca": "La superfícies està sense pavimentar", - "cs": "Povrch je nezpevněný" + "cs": "Povrch je nezpevněný", + "uk": "Поверхня грунтова" }, "hideInAnswer": true }, @@ -296,7 +318,8 @@ "fr": "La surface a un revêtement", "es": "La superficie está pavimentada", "ca": "La superfície està pavimentada", - "cs": "Povrch je zpevněný" + "cs": "Povrch je zpevněný", + "uk": "Поверхня тверде покриття" }, "hideInAnswer": true }, @@ -306,7 +329,9 @@ "en": "The surface is tartan - a synthetic, springy surface typically seen on athletic pistes", "nl": "De ondergrond bestaat uit Tartan - een synthetisch, elastisch en poreus materiaal dat je ook vindt op atletiekpistes", "de": "Der Belag ist aus Tartan - ein synthetischer, federnder Belag, der typischerweise auf Sportbahnen zu finden ist", - "fr": "La surface est en tartan - un revêtement synthétique typiquement utilisé sur les pistes d'athlétisme" + "fr": "La surface est en tartan - un revêtement synthétique typiquement utilisé sur les pistes d'athlétisme", + "uk": "Покриття - тартан - синтетична, пружна поверхня, яку зазвичай можна побачити на спортивних трасах", + "es": "La superficie es de tartán - una superficie sintética, elástica, que se ve típicamente en pistas de atletismo" } }, { @@ -315,7 +340,9 @@ "en": "The surface is made from rubber, such as rubber tiles, rubber mulch or a big rubber area", "nl": "De ondergrond bestaat uit rubber, zoals rubberen tegels, rubber snippers of een groot rubberen oppervlak", "de": "Die Oberfläche besteht aus Gummi, z. B. aus Gummifliesen, Gummimulch oder einer großen Gummifläche", - "fr": "La surface est en caoutchouc, comme des dalles de caoutchouc, des copeaux de caoutchouc ou une grande surface en caoutchouc" + "fr": "La surface est en caoutchouc, comme des dalles de caoutchouc, des copeaux de caoutchouc ou une grande surface en caoutchouc", + "uk": "Поверхня зроблена з гуми, наприклад, гумова плитка, гумова мульча або велика гумова площа", + "es": "La superficie está hecha de goma, como baldosas de goma, mantillo de goma o una gran área de goma" } }, { @@ -323,7 +350,9 @@ "then": { "en": "The surface is fine gravel (less then 2 cm per stone)", "nl": "De ondergrond bestaat uit kleine grindsteentjes (steentjes kleiner dan 2 cm)", - "de": "Die Oberfläche ist feiner Kies (weniger als 2 cm pro Stein)" + "de": "Die Oberfläche ist feiner Kies (weniger als 2 cm pro Stein)", + "uk": "Поверхня - дрібний гравій (менше 2 см на камінь)", + "es": "La superficie es grava fina (menos de 2 cm por piedra)" } } ], @@ -335,7 +364,9 @@ "de": "Wenn es mehrere gibt, wähle den am häufigsten vorkommende aus", "fr": "Pour plusieurs matières, sélectionner la principale", "ca": "Si n'hi ha múltiples, selecciona la més predominant", - "cs": "Pokud jich je více, vyberte nejčastěji se vyskytující" + "cs": "Pokud jich je více, vyberte nejčastěji se vyskytující", + "uk": "Якщо їх декілька, виберіть найпоширеніший", + "es": "Si hay varias, selecciona la que más se repita" } }, { @@ -352,7 +383,8 @@ "ru": "Эта игровая площадка освещается ночью?", "ca": "Aquest parc infantil està il·luminat per la nit?", "cs": "Je toto hřiště v noci osvětlené?", - "pl": "Czy ten plac zabaw jest oświetlony w nocy?" + "pl": "Czy ten plac zabaw jest oświetlony w nocy?", + "es": "¿Está iluminado este parque infantil por la noche?" }, "mappings": [ { @@ -366,7 +398,8 @@ "fr": "L’aire de jeu est éclairée de nuit", "ca": "Aquest parc infantil està il·luminat per la nit", "cs": "Toto hřiště je v noci osvětleno", - "pl": "Ten plac zabaw jest oświetlony w nocy" + "pl": "Ten plac zabaw jest oświetlony w nocy", + "es": "Este parque infantil está iluminado por la noche" } }, { @@ -380,7 +413,8 @@ "fr": "L’aire de jeu n’est pas éclairée de nuit", "ca": "Aquest parc infantil no està il·luminat per la nit", "cs": "Toto hřiště není v noci osvětleno", - "pl": "Ten plac zabaw nie jest oświetlony w nocy" + "pl": "Ten plac zabaw nie jest oświetlony w nocy", + "es": "Este parque infantil no está iluminado por la noche" } } ] @@ -396,7 +430,7 @@ "ru": "Доступно для детей старше {min_age} лет", "fr": "Accessible aux enfants de plus de {min_age} ans", "de": "Zugang nur für Kinder ab {min_age} Jahren", - "es": "Accesible a niños menores de {min_age} años", + "es": "Accesible a niños mayores de {min_age} años", "ca": "Accessible a nens menors de {min_age} anys", "cs": "Přístupné dětem starším {min_age} let" }, @@ -408,7 +442,8 @@ "ru": "С какого возраста доступна эта детская площадка?", "de": "Ab welchem Alter dürfen Kinder auf dem Spielplatz spielen?", "ca": "Quina és l'edat mínima requerida per a accedir al parc infantil?", - "cs": "Jaký je minimální věk pro vstup na toto hřiště?" + "cs": "Jaký je minimální věk pro vstup na toto hřiště?", + "es": "¿Cuál es la edad mínima requerida para acceder a este parque infantil?" }, "freeform": { "key": "min_age", @@ -427,7 +462,7 @@ "fr": "Accessible aux enfants de {max_age} au maximum", "ru": "Доступно детям до {max_age}", "de": "Zugang nur für Kinder bis maximal {max_age}", - "es": "Accesible a niños de hasta {max_age}", + "es": "Accesible a niños de como máximo {max_age}", "ca": "Accessible per a nens de com a màxim {max_age}", "cs": "Přístupné pro děti maximálně {max_age}" }, @@ -438,7 +473,8 @@ "fr": "Quel est l’âge maximum autorisé pour utiliser l’aire de jeu ?", "de": "Bis zu welchem Alter dürfen Kinder auf dem Spielplatz spielen?", "ca": "Quina és l'edat màxima permesa per accedir al parc infantil?", - "cs": "Jaký je maximální věk pro vstup na toto hřiště?" + "cs": "Jaký je maximální věk pro vstup na toto hřiště?", + "es": "¿Cuál es la edad máxima permitida para acceder a este parque infantil?" }, "freeform": { "key": "max_age", @@ -454,7 +490,8 @@ "de": "Wer betreibt den Spielplatz?", "fr": "Qui est en charge de l’exploitation de l’aire de jeu ?", "ca": "Qui gestiona aquest parc infantil?", - "cs": "Kdo provozuje toto hřiště?" + "cs": "Kdo provozuje toto hřiště?", + "es": "¿Quién opera este parque infantil?" }, "render": { "nl": "Beheer door {operator}", @@ -480,7 +517,8 @@ "de": "Ist der Spielplatz öffentlich zugänglich?", "fr": "L’aire de jeu est-elle accessible au public ?", "ca": "Aquest parc infantil és accessible al públic en general?", - "cs": "Je toto hřiště dostupné veřejnosti?" + "cs": "Je toto hřiště dostupné veřejnosti?", + "es": "¿Es este parque infantil accesible al público en general?" }, "mappings": [ { @@ -491,7 +529,7 @@ "it": "Accessibile pubblicamente", "de": "Der Spielplatz ist öffentlich zugänglich", "fr": "Accessible au public", - "es": "Accesible al público general", + "es": "Accesible al público en general", "ca": "Accesible al públic general", "cs": "Přístupné široké veřejnosti" }, @@ -507,7 +545,8 @@ "de": "Der Spielplatz ist gebührenpflichtig", "ca": "Aquest és un parc infantil de pagament", "cs": "Toto je placené hřiště", - "pl": "To jest płatny plac zabaw" + "pl": "To jest płatny plac zabaw", + "es": "Este es un parque infantil de pago" }, "addExtraTags": [ "access=customers" @@ -521,7 +560,7 @@ "it": "Accessibile solamente ai clienti dell’attività che lo gestisce", "de": "Der Spielplatz ist nur für Kunden zugänglich", "fr": "Réservée aux clients", - "es": "Solo accesible para clientes del negocio que lo opera", + "es": "Solo accesible para clientes del negocio operador", "ca": "Només accessible per als clients del negoci que l'opera", "cs": "Přístupné pouze pro klienty provozního podniku" }, @@ -537,7 +576,7 @@ "it": "Accessibile solamente agli studenti della scuola", "de": "Nur für Schüler der Schule zugänglich", "fr": "Réservée aux élèves de l’école", - "es": "Solo accesibles para estudiantes de la escuela", + "es": "Solo accesible para alumnos del colegio", "ca": "Només accessible per als alumnes de l'escola", "cs": "Přístupné pouze studentům školy", "pl": "Dostępny tylko dla uczniów szkoły" @@ -566,7 +605,8 @@ "nl": "Dit is een schoolplein - een zone waar de leerlingen kunnen spelen tijdens de pauze. Dit schoolplein is niet toegankelijk voor het publiek", "de": "Dies ist ein Schulhof - ein Außenbereich, auf dem die Schüler in den Pausen spielen können; er ist jedoch für die Öffentlichkeit nicht zugänglich", "ca": "Es tracta d'un pati de l'escola, una zona exterior on els alumnes poden jugar durant els descansos; però no és accessible al públic en general", - "cs": "Jedná se o školní dvůr - venkovní areál, kde si mohou žáci o přestávkách hrát; ale není přístupný široké veřejnosti" + "cs": "Jedná se o školní dvůr - venkovní areál, kde si mohou žáci o přestávkách hrát; ale není přístupný široké veřejnosti", + "es": "Este es un patio de recreo escolar - una zona al aire libre donde los alumnos pueden jugar durante sus recreos; pero no es accesible al público en general" } } ] @@ -580,7 +620,9 @@ "fr": "Quelle est l'adresse électronique du responsable de l'aire de jeux ?", "de": "Wie lautet die E-Mail Adresse des Spielplatzbetreibers?", "ca": "Quina és l'adreça de correu electrònic del mantenidor del parc infantil?", - "cs": "Jaká je e-mailová adresa správce hřiště?" + "cs": "Jaká je e-mailová adresa správce hřiště?", + "es": "¿Cuál es la dirección de correo electrónico del mantenedor del parque infantil?", + "uk": "Яка електронна адреса доглядача дитячого майданчика?" }, "render": { "nl": "De bevoegde dienst kan bereikt worden via {email}", @@ -609,7 +651,9 @@ "it": "Qual è il numero di telefono del gestore del campetto?", "de": "Wie lautet die Telefonnummer des Spielplatzbetreibers?", "ca": "Quin és el telèfon del mantenidor del parc infantil?", - "cs": "Jaké je telefonní číslo na správce hřiště?" + "cs": "Jaké je telefonní číslo na správce hřiště?", + "uk": "Який номер телефону доглядача дитячого майданчика?", + "es": "¿Cuál es el número de teléfono del mantenedor del parque infantil?" }, "render": { "nl": "De bevoegde dienst kan getelefoneerd worden via {phone}", @@ -641,7 +685,8 @@ "ru": "Доступна ли детская площадка пользователям кресел-колясок?", "ca": "Aquest parc infantil és accessible per a persones en cadira de rodes?", "cs": "Je toto hřiště přístupné pro vozíčkáře?", - "pl": "Czy ten plac zabaw jest dostępny dla osób na wózkach?" + "pl": "Czy ten plac zabaw jest dostępny dla osób na wózkach?", + "es": "¿Es este parque infantil accesible para usuarios de silla de ruedas?" }, "mappings": [ { @@ -668,7 +713,7 @@ "de": "Eingeschränkte Zugänglichkeit für Rollstuhlfahrer", "it": "Accesso limitato in sedia a rotelle", "ru": "Частично доступна пользователям кресел-колясок", - "es": "Acceso limitado para usuarios de silla de ruedas", + "es": "Accesibilidad limitada para usuarios de silla de ruedas", "ca": "Accessibilitat limitada per a persones en cadira de rodes", "cs": "Omezený přístup pro vozíčkáře", "pl": "Ograniczona dostępność dla osób na wózkach" @@ -683,7 +728,7 @@ "de": "Nicht zugänglich für Rollstuhlfahrer", "it": "Non accessibile in sedia a rotelle", "ru": "Недоступна пользователям кресел-колясок", - "es": "No accesible a usuarios de sillas de ruedas", + "es": "No accesible para usuarios de silla de ruedas", "ca": "No accessible per a persones en cadira de rodes", "cs": "Není přístupný pro vozíčkáře", "pl": "Niedostępne dla osób na wózkach" @@ -706,7 +751,8 @@ "de": "Wann ist dieser Spielplatz zugänglich?", "ca": "Quan és accesible aquest parc infantil?", "cs": "Kdy je toto hřiště přístupné?", - "pl": "Kiedy dostępny jest ten plac zabaw?" + "pl": "Kiedy dostępny jest ten plac zabaw?", + "es": "¿Cuándo es accesible este parque infantil?" }, "mappings": [ { @@ -718,7 +764,7 @@ "it": "Si può accedere dall'alba al tramonto", "ru": "Открыто от рассвета до заката", "de": "Zugänglich von Sonnenaufgang bis Sonnenuntergang", - "es": "Accesible desde el amanecer hasta el anochecer", + "es": "Accesible desde el amanecer hasta el atardecer", "ca": "Accesible des de la sortida del sol fins al vespre", "cs": "Přístupné od východu do západu slunce", "pl": "Dostępny od wschodu do zachodu słońca" @@ -758,7 +804,8 @@ "nl": "Dit is een schoolplein - een ruimte waar de leerlingen van een school kunnen spelen tijdens de pauze maar die niet publiek toegankelijk is", "de": "Dies ist ein Schulhof - ein (Außen-)Bereich, auf dem die Schüler einer Schule in den Pausen spielen können und der nicht öffentlich zugänglich ist", "ca": "Es tracta d'un pati d'escola: una zona (a l'aire lliure) on els alumnes d'una escola poden jugar durant l'esbarjo i que no és accessible al públic", - "cs": "Jedná se o školní dvůr - (venkovní) prostor, kde si mohou žáci školy hrát o přestávce a který není veřejně přístupný" + "cs": "Jedná se o školní dvůr - (venkovní) prostor, kde si mohou žáci školy hrát o přestávce a který není veřejně přístupný", + "es": "Este es un patio de recreo escolar - una zona (al aire libre) donde los alumnos de una escuela pueden jugar durante el recreo y que no es accesible al público" } } ], diff --git a/assets/layers/playground_equipment/playground_equipment.json b/assets/layers/playground_equipment/playground_equipment.json index 3b3ff9b87..ad6eef474 100644 --- a/assets/layers/playground_equipment/playground_equipment.json +++ b/assets/layers/playground_equipment/playground_equipment.json @@ -2,11 +2,13 @@ "id": "playground_equipment", "name": { "en": "Playground equipment", - "de": "Spielgeräte" + "de": "Spielgeräte", + "es": "Equipamiento del Parque Infantil" }, "description": { "en": "Layer showing playground equipment", - "de": "Ebene mit Spielplatzausrüstung" + "de": "Ebene mit Spielplatzausrüstung", + "es": "Capa que muestra el equipamiento del parque infantil" }, "source": { "osmTags": "playground~*" @@ -15,7 +17,8 @@ "title": { "render": { "en": "Playground device", - "de": "Spielplatzgerät" + "de": "Spielplatzgerät", + "es": "Elemento del Parque Infantil" } }, "pointRendering": [ @@ -49,11 +52,13 @@ ], "title": { "en": "a playground device", - "de": "ein Spielgerät" + "de": "ein Spielgerät", + "es": "un elemento del parque infantil" }, "description": { "en": "An exact type is asked later", - "de": "Ein genauer Typ wird später gefragt" + "de": "Ein genauer Typ wird später gefragt", + "es": "Se te pedirá el tipo exacto más adelante" } } ], @@ -62,14 +67,16 @@ { "render": { "en": "This is a {playground}", - "de": "Das ist ein {playground}" + "de": "Das ist ein {playground}", + "es": "Este es un {playground}" }, "id": "type", "freeform": { "key": "playground", "placeholder": { "en": "Type of device", - "de": "Art des Geräts" + "de": "Art des Geräts", + "es": "Tipo de elemento" }, "addExtraTags": [ "fixme=Freeform input used" @@ -78,7 +85,8 @@ "question": { "en": "What kind of device is this?", "nl": "Wat voor speeltoestel is dit?", - "de": "Was ist das für ein Gerät?" + "de": "Was ist das für ein Gerät?", + "es": "¿Qué tipo de elemento es este?" }, "invalidValues": "playground=yes", "mappings": [ @@ -88,7 +96,8 @@ "en": "This is a swing", "nl": "Dit is een schommel", "de": "Das ist eine Schaukel", - "pl": "To jest huśtawka" + "pl": "To jest huśtawka", + "es": "Este es un columpio" } }, { @@ -96,7 +105,8 @@ "then": { "en": "This is a structure consisting of several connected playground devices", "de": "Dies ist eine Struktur aus mehreren angeschlossenen Spielgeräten", - "pl": "To jest struktura składająca się z wielu połączonych urządzeń" + "pl": "To jest struktura składająca się z wielu połączonych urządzeń", + "es": "Esta es una estructura que consta de varios elementos de parque infantil conectados" }, "icon": { "path": "./assets/layers/playground_equipment/SunwardCohousingPlayStructure2005.jpg", @@ -108,7 +118,8 @@ "then": { "en": "This is a slide", "de": "Das ist eine Rutsche", - "pl": "To jest zjeżdżalnia" + "pl": "To jest zjeżdżalnia", + "es": "Este es un tobogán" } }, { @@ -117,7 +128,8 @@ "en": "This is a sand pit", "nl": "Dit is een zandbak", "de": "Dies ist ein Sandkasten", - "pl": "To jest piaskownica" + "pl": "To jest piaskownica", + "es": "Este es un arenero" }, "searchTerms": { "en": [ @@ -134,7 +146,8 @@ "then": { "en": "This is a spring rider", "nl": "Dit is een veertoestel", - "de": "Dies ist ein Springreiter" + "de": "Dies ist ein Springreiter", + "es": "Este es un caballito de muelles" }, "searchTerms": { "en": [ @@ -150,7 +163,8 @@ "then": { "en": "This is a climbing frame", "nl": "Dit is een klimrek", - "de": "Dies ist ein Kletterrahmen" + "de": "Dies ist ein Kletterrahmen", + "es": "Este es un marco de escalada" }, "searchTerms": { "en": [ @@ -168,7 +182,8 @@ "then": { "en": "This is a seesaw", "nl": "Dit is een wipwap", - "de": "Dies ist eine Wippe" + "de": "Dies ist eine Wippe", + "es": "Este es un sube y baja" }, "searchTerms": { "en": [ @@ -185,7 +200,8 @@ "if": "playground=playhouse", "then": { "en": "This is a playhouse", - "de": "Das ist ein Spielhaus" + "de": "Das ist ein Spielhaus", + "es": "Este es una caseta de juegos" }, "searchTerms": { "en": [ @@ -202,7 +218,8 @@ "then": { "en": "This is a roundabout", "de": "Dies ist ein Karussell", - "pl": "To jest rondo" + "pl": "To jest rondo", + "es": "Este es un tiovivo" }, "searchTerms": { "en": [ @@ -218,7 +235,8 @@ "if": "playground=basketswing", "then": { "en": "This is a basket swing", - "de": "Dies ist eine Korbschaukel" + "de": "Dies ist eine Korbschaukel", + "es": "Este es un columpio de cesta" }, "icon": { "path": "./assets/layers/playground_equipment/Playground_swing_03.jpg", @@ -230,7 +248,8 @@ "then": { "en": "This is a zip wire", "de": "Dies ist ein Seilzug", - "pl": "To jest tyrolka" + "pl": "To jest tyrolka", + "es": "Este es una tirolina" } }, { @@ -238,7 +257,8 @@ "then": { "en": "This is a horizontal bar", "nl": "Dit is een rekstok", - "de": "Dies ist ein horizontaler Balken" + "de": "Dies ist ein horizontaler Balken", + "es": "Esta es una barra horizontal" }, "icon": { "path": "./assets/layers/playground_equipment/Rekstok.JPG", @@ -249,7 +269,8 @@ "if": "playground=hopscotch", "then": { "en": "This is a hopscotch", - "de": "Dies ist ein Hüpfspiel" + "de": "Dies ist ein Hüpfspiel", + "es": "Este es un juego de la rayuela" }, "icon": { "path": "./assets/layers/playground_equipment/Hinkelbaan_tegels.jpg", @@ -260,7 +281,8 @@ "if": "playground=splash_pad", "then": { "en": "This is a splash pad", - "de": "Dies ist ein Planschbecken" + "de": "Dies ist ein Planschbecken", + "es": "Este es un parque acuático" }, "searchTerms": { "en": "spray pool" @@ -274,7 +296,8 @@ "if": "playground=climbingwall", "then": { "en": "This is a climbing wall", - "de": "Das ist eine Kletterwand" + "de": "Das ist eine Kletterwand", + "es": "Este es un muro de escalada" }, "icon": { "path": "./assets/layers/playground_equipment/Playground_climbingwall.jpg", @@ -286,7 +309,8 @@ "then": { "en": "This is a map", "de": "Das ist eine Karte", - "pl": "To jest mapa" + "pl": "To jest mapa", + "es": "Este es un mapa" }, "icon": { "path": "./assets/layers/playground_equipment/Playground_Map,_Washington_Elementary.jpg", @@ -297,7 +321,9 @@ "if": "playground=bridge", "then": { "en": "This is a bridge (either as a standalone device or as part of a larger structure)", - "de": "Dies ist eine Brücke (entweder als eigenständiges Gerät oder als Teil einer größeren Struktur)" + "de": "Dies ist eine Brücke (entweder als eigenständiges Gerät oder als Teil einer größeren Struktur)", + "uk": "Це міст (або як окремий пристрій, або як частина більшої конструкції)", + "es": "Este es un puente (ya sea como un elemento independiente o como parte de una estructura más grande)" }, "icon": { "path": "./assets/layers/playground_equipment/Playground_in_Muchall_Park,_Wolverhampton_-_geograph.org.uk_-_2735437.jpg", @@ -308,7 +334,8 @@ "if": "playground=cushion", "then": { "en": "This is a bouncy cushion", - "de": "Das ist ein Hüpfkissen" + "de": "Das ist ein Hüpfkissen", + "es": "Este es un cojín hinchable" }, "icon": { "path": "./assets/layers/playground_equipment/Hupfkissen.jpg", @@ -319,7 +346,8 @@ "if": "playground=activitypanel", "then": { "en": "This is an activity panel", - "de": "Dies ist ein Aktivitätspanel" + "de": "Dies ist ein Aktivitätspanel", + "es": "Este es un panel de actividades" }, "icon": { "path": "./assets/layers/playground_equipment/Szwedy_-_plac_zabaw_-_kotko_i_krzyzyk.jpg", @@ -330,7 +358,9 @@ "if": "playground=teenshelter", "then": { "en": "This is a teen shelter", - "de": "Dies ist eine Jugendherberge" + "de": "Dies ist eine Jugendherberge", + "uk": "Це притулок для підлітків", + "es": "Este es un refugio para adolescentes" }, "icon": { "path": "./assets/layers/playground_equipment/Teen_shelter_near_former_coastguard_lookout,_Watchet_-_geograph.org.uk_-_1714960.jpg", @@ -341,7 +371,8 @@ "if": "playground=funnel_ball", "then": { "en": "This is a funnel used to play with funnel ball", - "de": "Dies ist ein Trichter, mit dem man Trichterball spielen kann" + "de": "Dies ist ein Trichter, mit dem man Trichterball spielen kann", + "es": "Este es un embudo que se utiliza para jugar con bolas de embudo" }, "icon": { "path": "./assets/layers/playground_equipment/Funnel_ball.jpg", @@ -352,7 +383,8 @@ "if": "playground=spinning_circle", "then": { "en": "This is a spinning circle", - "de": "Dies ist ein sich drehender Kreis" + "de": "Dies ist ein sich drehender Kreis", + "es": "Este es un círculo giratorio" }, "icon": { "path": "./assets/layers/playground_equipment/Spinning_circle.jpg", @@ -366,7 +398,8 @@ "override": { "question": { "en": "Is this device accessible by wheelchair?", - "de": "Ist dieses Gerät mit Rollstuhl erreichbar?" + "de": "Ist dieses Gerät mit Rollstuhl erreichbar?", + "es": "¿Es este elemento accesible en silla de ruedas?" } } } diff --git a/assets/layers/police/police.json b/assets/layers/police/police.json index 36da1f0e6..280285d71 100644 --- a/assets/layers/police/police.json +++ b/assets/layers/police/police.json @@ -2,11 +2,13 @@ "id": "police", "name": { "en": "Police stations", - "de": "Polizeiwachen" + "de": "Polizeiwachen", + "es": "Comisarías de Policía" }, "description": { "en": "Many types of police facilities ", - "de": "Verschiedene Polizeieinrichtungen " + "de": "Verschiedene Polizeieinrichtungen ", + "es": "Muchos tipos de instalaciones policiales " }, "source": { "osmTags": { @@ -20,7 +22,8 @@ "title": { "render": { "en": "{name}", - "de": "{name}" + "de": "{name}", + "es": "{name}" } }, "pointRendering": [ @@ -68,12 +71,14 @@ "title": { "en": "a police office", "de": "eine Polizeiwache", - "ca": "una comissaria" + "ca": "una comissaria", + "es": "una oficina de policía" }, "description": { "en": "A police office where the general public can enter for inquiries", "de": "Eine Polizeiwache, die von der Öffentlichkeit für Anfragen genutzt werden kann", - "ca": "Una comissaria on pot entrar la ciutadania per a les consultes" + "ca": "Una comissaria on pot entrar la ciutadania per a les consultes", + "es": "Una oficina de policía donde el público en general puede entrar para realizar consultas" } }, { @@ -82,11 +87,13 @@ ], "title": { "en": "a police checkpoint", - "de": "eine Polizeikontrolle" + "de": "eine Polizeikontrolle", + "es": "un puesto de control policial" }, "description": { "en": "A place where police performs checks on travelling people", - "de": "Ein Ort, an dem die Polizei Kontrollen von Reisenden durchführt" + "de": "Ein Ort, an dem die Polizei Kontrollen von Reisenden durchführt", + "es": "Un lugar donde la policía realiza controles a las personas que viajan" } }, { @@ -95,11 +102,13 @@ ], "title": { "en": "an administrative, police backoffice", - "de": "ein Verwaltungsbüro der Polizei" + "de": "ein Verwaltungsbüro der Polizei", + "es": "una oficina administrativa policial" }, "description": { "en": "An administrative police office without services for the general public.", - "de": "Ein Verwaltungsbüro der Polizei ohne Dienstleistungen für die Allgemeinheit." + "de": "Ein Verwaltungsbüro der Polizei ohne Dienstleistungen für die Allgemeinheit.", + "es": "Una oficina administrativa de policía sin servicios para el público en general." } }, { @@ -109,7 +118,8 @@ "title": "a police detention center", "description": { "en": "A jail run by the police without public services. People are detained here for a short time (at most a few days), e.g. for small misdemeanors, disturbance of the public order or awaiting a trial", - "de": "Ein von der Polizei betriebenes Gefängnis ohne öffentliche Dienstleistungen. Hier werden Menschen für kurze Zeit (höchstens ein paar Tage) inhaftiert, z. B. wegen kleinerer Vergehen, Störung der öffentlichen Ordnung oder in Erwartung eines Gerichtsverfahrens" + "de": "Ein von der Polizei betriebenes Gefängnis ohne öffentliche Dienstleistungen. Hier werden Menschen für kurze Zeit (höchstens ein paar Tage) inhaftiert, z. B. wegen kleinerer Vergehen, Störung der öffentlichen Ordnung oder in Erwartung eines Gerichtsverfahrens", + "es": "Una cárcel dirigida por la policía sin servicios públicos. Las personas son detenidas aquí por un corto tiempo (como máximo unos pocos días), por ejemplo, por pequeños delitos menores, alteración del orden público o a la espera de un juicio" } }, { @@ -119,7 +129,8 @@ "title": "a police naval base", "description": { "en": "A naval or maritime base for the maritime police; often with a pier and police boats nearby", - "de": "Ein Stützpunkt für die Schifffahrtspolizei; oft mit einem Anleger und Polizeibooten in der Nähe" + "de": "Ein Stützpunkt für die Schifffahrtspolizei; oft mit einem Anleger und Polizeibooten in der Nähe", + "es": "Una base naval o marítima para la policía marítima; a menudo con un muelle y barcos de policía cercanos" } } ], @@ -129,12 +140,14 @@ { "question": { "en": "What is the name of this police facility?", - "de": "Wie lautet der Name der Polizeieinrichtung?" + "de": "Wie lautet der Name der Polizeieinrichtung?", + "es": "¿Cuál es el nombre de esta instalación policial?" }, "id": "police_name", "render": { "en": "{name}", - "de": "{name}" + "de": "{name}", + "es": "{name}" }, "freeform": { "key": "name" @@ -146,7 +159,8 @@ { "question": { "en": "Does this police office have detention facilities?", - "de": "Verfügt die Polizeidienststelle über Gewahrsamsräume?" + "de": "Verfügt die Polizeidienststelle über Gewahrsamsräume?", + "es": "¿Tiene esta oficina de policía instalaciones de detención?" }, "filter": true, "id": "4_z2nrdhy6tyyh4fd", @@ -157,14 +171,16 @@ "icon": "./assets/layers/police/jail.svg", "then": { "en": "This police office has some cells to detain people", - "de": "Die Polizeidienststelle hat Zellen für die Inhaftierung von Personen" + "de": "Die Polizeidienststelle hat Zellen für die Inhaftierung von Personen", + "es": "Esta oficina de policía tiene algunas celdas para detener personas" } }, { "if": "detention=no", "then": { "en": "This police office does not have cells to detain people", - "de": "Die Polizeidienststelle hat keine Zellen für die Inhaftierung von Personen" + "de": "Die Polizeidienststelle hat keine Zellen für die Inhaftierung von Personen", + "es": "Esta oficina de policía no tiene celdas para detener personas" } } ] diff --git a/assets/layers/postboxes/license_info.json b/assets/layers/postboxes/license_info.json index 7e18ac808..8a1067724 100644 --- a/assets/layers/postboxes/license_info.json +++ b/assets/layers/postboxes/license_info.json @@ -10,5 +10,17 @@ "https://upload.wikimedia.org/wikipedia/commons/6/6d/726-postbox.svg", "http://emoji.streamlineicons.com" ] + }, + { + "path": "postbox_wall.svg", + "license": "CC-BY-4.0", + "authors": [ + "Vincent Le Moign", + "https://twitter.com/webalys" + ], + "sources": [ + "https://upload.wikimedia.org/wikipedia/commons/6/6d/726-postbox.svg", + "http://emoji.streamlineicons.com" + ] } ] \ No newline at end of file diff --git a/assets/layers/postboxes/postbox_wall.svg b/assets/layers/postboxes/postbox_wall.svg new file mode 100644 index 000000000..5cf19e6df --- /dev/null +++ b/assets/layers/postboxes/postbox_wall.svg @@ -0,0 +1,139 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/layers/postboxes/postbox_wall.svg.license b/assets/layers/postboxes/postbox_wall.svg.license new file mode 100644 index 000000000..f33e45616 --- /dev/null +++ b/assets/layers/postboxes/postbox_wall.svg.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: Vincent Le Moign; https://twitter.com/webalys +SPDX-License-Identifier: CC-BY-4.0 \ No newline at end of file diff --git a/assets/layers/postboxes/postboxes.json b/assets/layers/postboxes/postboxes.json index e3fbab4d0..379cd98c8 100644 --- a/assets/layers/postboxes/postboxes.json +++ b/assets/layers/postboxes/postboxes.json @@ -9,7 +9,7 @@ "hu": "Postaládák", "nl": "Brievenbussen", "ca": "Bústies", - "es": "Buzones de correo", + "es": "Buzones", "nb_NO": "Postbokser", "fr": "Boîtes à lettres", "cs": "Poštovní schránky" @@ -21,7 +21,7 @@ "id": "Layer yang memperlihatkan kotak pos.", "hu": "Postaládákat megjelenítő réteg.", "nl": "Deze laag toont brievenbussen.", - "es": "La capa muestra buzones de correo.", + "es": "La capa que muestra buzones.", "fr": "Le calque montrant les boîtes à lettres.", "ca": "La capa que mostra bústies de correus.", "cs": "Vrstva zobrazující poštovní schránky.", @@ -41,24 +41,63 @@ "id": "Kotak pos", "hu": "Postaláda", "ca": "Bústia", - "es": "Buzón de correo", + "es": "Buzón", "nb_NO": "Postboks", "fr": "Boîte à lettres", "nl": "Brievenbus", "cs": "Poštovní schránka" } }, + "keywords": { + "en": [ + "post", + "post box", + "letter", + "letterbox" + ], + "nl": [ + "brieven", + "post", + "brief", + "brievenbus", + "pakjes" + ] + }, "pointRendering": [ { - "iconSize": "40,40", + "iconSize": { + "render": "40,40", + "mappings": [ + { + "if": "_referencing_ways~*", + "then": "25,25" + } + ] + }, "location": [ "point", "centroid" ], - "anchor": "bottom", + "anchor": { + "render": "bottom", + "mappings": [ + { + "if": "_referencing_ways~*", + "then": "center" + } + ] + }, "marker": [ { - "icon": "./assets/layers/postboxes/postbox.svg" + "icon": { + "render": "./assets/layers/postboxes/postbox.svg", + "mappings": [ + { + "if": "_referencing_ways~*", + "then": "./assets/layers/postboxes/postbox_wall.svg" + } + ] + } } ] } @@ -83,10 +122,22 @@ "hu": "postaláda", "nl": "een brievenbus", "ca": "una bústia", - "es": "un buzón de correo", + "es": "un buzón", "fr": "une boîte à lettres", "cs": "poštovní schránka" } + }, + { + "tags": [ + "amenity=post_box" + ], + "title": { + "en": "a postbox on a wall", + "nl": "een brievenbus tegen een muur" + }, + "snapToLayer": [ + "walls_and_buildings" + ] } ], "tagRenderings": [ @@ -94,6 +145,18 @@ { "id": "minimap", "render": "{minimap(18): height: 5rem; overflow: hidden; border-radius:3rem; }" + }, + { + "id": "operator", + "question": { + "en": "Who operates this postbox?" + }, + "render": { + "en": "This postbox is operated by {operator}" + }, + "freeform": { + "key": "operator" + } } ], "deletion": { diff --git a/assets/layers/postoffices/postoffices.json b/assets/layers/postoffices/postoffices.json index 80aa3366b..e6f4954ae 100644 --- a/assets/layers/postoffices/postoffices.json +++ b/assets/layers/postoffices/postoffices.json @@ -9,7 +9,7 @@ "hu": "Posták", "nl": "Postkantoren", "ca": "Oficines de correus", - "es": "Oficinas de correo", + "es": "Oficinas de Correos", "fr": "Bureaux de poste", "nb_NO": "Postkontor", "cs": "Pošty" @@ -21,7 +21,7 @@ "id": "Layer yang menunjukkan kantor pos.", "hu": "Postákat megjelenítő réteg.", "nl": "Een laag die postkantoren toont.", - "es": "Una capa que muestra oficinas postales.", + "es": "Una capa que muestra oficinas de correos.", "fr": "Un claque montrant les bureaux de poste.", "nb_NO": "Et lag som viser postkontor.", "ca": "Una capa que mostra oficines postals.", @@ -46,7 +46,7 @@ "hu": "Posta", "nl": "Postkantoor", "ca": "Oficina postal", - "es": "Oficina de Correo", + "es": "Oficina de Correos", "fr": "Bureau de poste", "nb_NO": "Postkontor", "cs": "Pošta" @@ -63,7 +63,8 @@ "en": "Post partner at a shop", "de": "Postfiliale im Einzelhandel", "nl": "Postpartner in een winkel", - "cs": "Poštovní partner v obchodě" + "cs": "Poštovní partner v obchodě", + "es": "Socio postal en una tienda" } }, { @@ -77,7 +78,8 @@ "en": "Post partner at {name}", "de": "Postfiliale im {name}", "ca": "Col·laborador postal a {name}", - "cs": "Poštovní partner v {name}" + "cs": "Poštovní partner v {name}", + "es": "Socio postal en {name}" } } ] @@ -131,7 +133,7 @@ "hu": "Posta", "nl": "een postkantoor", "ca": "una oficina de correus", - "es": "una oficina de correo", + "es": "una oficina de correos", "nb_NO": "et postkontor", "fr": "un bureau de poste", "cs": "pošta" @@ -140,10 +142,7 @@ ], "tagRenderings": [ "images", - { - "id": "minimap", - "render": "{minimap(18): height: 5rem; overflow: hidden; border-radius:3rem; }" - }, + "contact", { "builtin": "opening_hours", "override": { @@ -153,11 +152,12 @@ "id": "Jam berapa kantor pos ini buka?", "hu": "Mikor van nyitva ez a posta?", "de": "Wie sind die Öffnungszeiten dieser Poststelle?", - "es": "¿Cuáles son las horas de apertura para esta oficina postal?", + "es": "¿Cuál es el horario de atención de esta oficina de correos?", "nl": "Wat zijn de openingsuren voor dit postkantoor?", "fr": "Quelles sont les heures d’ouverture de ce bureau de poste ?", "ca": "Quines son els horaris d'apertura per a aquesta oficina postal?", - "cs": "Jaká je otevírací doba této pošty?" + "cs": "Jaká je otevírací doba této pošty?", + "uk": "Які години роботи цього поштового відділення?" } } }, @@ -168,8 +168,11 @@ "de": "Ist dies ein Post-Partner?", "ca": "Aquesta botiga és un col·laborador postal?", "cs": "Jedná se o partnerskou poštu?", - "nl": "Is dit een postkantoor?" + "nl": "Is dit een postkantoor?", + "es": "¿Es un socio postal?" }, + "#condition": "If it is a post office, it'll won't be a post partner...", + "condition": "amenity!=post_office", "mappings": [ { "if": "post_office=post_partner", @@ -178,7 +181,8 @@ "de": "Dieses Geschäft ist ein Post-Partner", "ca": "Aquesta botiga és un col·laborador postal", "cs": "Tento obchod je poštovním partnerem", - "nl": "Deze winkel is een geen postkantoor, maar heeft een post- en/of pakketpunt" + "nl": "Deze winkel is een geen postkantoor, maar heeft een post- en/of pakketpunt", + "es": "Esta tienda es un socio postal" } }, { @@ -187,7 +191,8 @@ "en": "This shop is not a post partner", "de": "Dieses Geschäft ist kein Post-Partner", "ca": "Aquesta botiga no és un col·laborador postal", - "cs": "Tento obchod není poštovním partnerem" + "cs": "Tento obchod není poštovním partnerem", + "es": "Esta tienda no es un socio postal" }, "addExtraTags": [ "was:post_office=post_partner" @@ -200,18 +205,21 @@ "condition": "amenity=post_office", "question": { "en": "To which brand does this post office belong?", - "de": "Zu welcher Marke gehört die Poststelle?" + "de": "Zu welcher Marke gehört die Poststelle?", + "es": "¿A qué marca pertenece esta oficina de correos?" }, "render": { "en": "This is a {brand} post office", - "de": "Dies ist eine Poststelle von {brand}" + "de": "Dies ist eine Poststelle von {brand}", + "es": "Esta es una oficina de correos {brand}" }, "freeform": { "type": "nsi", "key": "brand", "placeholder": { "en": "Brand of the post office", - "de": "Marke der Poststelle" + "de": "Marke der Poststelle", + "es": "Marca de la oficina de correos" }, "helperArgs": [ "amenity=post_office" @@ -223,13 +231,15 @@ "render": { "en": "This location offers services for {post_office:brand}", "de": "Dieser Standort bietet Dienstleistungen für {post_office:brand} an", - "cs": "Toto místo nabízí služby pro {post_office:brand}" + "cs": "Toto místo nabízí služby pro {post_office:brand}", + "es": "Este lugar ofrece servicios para {post_office:brand}" }, "question": { "en": "For which brand does this location offer services?", "de": "Für welche Marke bietet dieser Standort Dienstleistungen an?", "ca": "Per a quina marca ofereix serveis aquesta localització?", - "cs": "Pro jakou značku nabízí toto místo služby?" + "cs": "Pro jakou značku nabízí toto místo služby?", + "es": "¿Para qué marca ofrece servicios este lugar?" }, "condition": "post_office=post_partner", "freeform": { @@ -245,7 +255,9 @@ "de": "Dieser Standort bietet Dienstleistungen für DHL an", "nl": "Deze locatie biedt diensten aan voor DHL", "ca": "Aquesta localització ofereix serveis per a DHL", - "cs": "Toto místo nabízí služby pro společnost DHL" + "cs": "Toto místo nabízí služby pro společnost DHL", + "uk": "У цьому приміщенні надаються послуги для DHL", + "es": "Este lugar ofrece servicios para DHL" }, "hideInAnswer": "_country=de" }, @@ -256,7 +268,9 @@ "de": "Dieser Standort bietet Dienstleistungen für DPD an", "nl": "Deze locatie biedt diensten aan voor DPD", "ca": "Aquesta localització ofereix serveis per a DPD", - "cs": "Toto místo nabízí služby pro společnost DPD" + "cs": "Toto místo nabízí služby pro společnost DPD", + "uk": "У цій локації надаються послуги для DPD", + "es": "Este lugar ofrece servicios para DPD" } }, { @@ -266,7 +280,9 @@ "de": "Dieser Standort bietet Dienstleistungen für GLS an", "nl": "Deze locatie biedt diensten aan voor GLS", "ca": "Aquesta localització ofereix serveis per a GLS", - "cs": "Toto místo nabízí služby pro společnost GLS" + "cs": "Toto místo nabízí služby pro společnost GLS", + "uk": "Ця локація пропонує послуги для GLS", + "es": "Este lugar ofrece servicios para GLS" } }, { @@ -276,7 +292,9 @@ "de": "Dieser Standort bietet Dienstleistungen für UPS an", "nl": "Deze locatie biedt diensten aan voor UPS", "ca": "Aquesta localització ofereix serveis per a UPS", - "cs": "Toto místo nabízí služby pro společnost UPS" + "cs": "Toto místo nabízí služby pro společnost UPS", + "uk": "У цьому місці надаються послуги для UPS", + "es": "Este lugar ofrece servicios para UPS" } }, { @@ -285,7 +303,9 @@ "en": "This location is a DHL Paketshop", "de": "Dieser Standort ist ein DHL Paketshop", "ca": "Aquesta ubicació és una botiga DHL Paketshop", - "cs": "Tato lokalita je DHL Paketshop" + "cs": "Tato lokalita je DHL Paketshop", + "uk": "Це відділення DHL Paketshop", + "es": "Este lugar es un DHL Paketshop" }, "hideInAnswer": "_country!=de" }, @@ -295,7 +315,9 @@ "en": "This location is a Hermes PaketShop", "de": "Dieser Standort ist ein Hermes PaketShop", "ca": "Aquesta ubicació és una botiga Hermes PaketShop", - "cs": "Tato lokalita je Hermes Paketshop" + "cs": "Tato lokalita je Hermes Paketshop", + "uk": "Ця локація є магазином Hermes PaketShop", + "es": "Este lugar es un Hermes PaketShop" }, "hideInAnswer": "_country!=de" }, @@ -306,7 +328,9 @@ "de": "Dieser Standort ist ein PostNL-Punkt", "nl": "Deze locatie is een PostNL-punt", "ca": "Aquesta ubicació és un punt PostNL", - "cs": "Toto umístění je bod PostNL" + "cs": "Toto umístění je bod PostNL", + "uk": "Це місце є PostNL-пунктом", + "es": "Este lugar es un punto de PostNL" }, "hideInAnswer": { "and": [ @@ -321,7 +345,9 @@ "en": "This location offers services for bpost", "de": "Dieser Standort bietet Dienstleistungen für bpost an", "nl": "Deze locatie biedt diensten aan voor bpost", - "cs": "Toto místo nabízí služby pro společnost bpost" + "cs": "Toto místo nabízí služby pro společnost bpost", + "uk": "Ця локація пропонує послуги для bpost", + "es": "Este lugar ofrece servicios para bpost" }, "hideInAnswer": "_country!=be" } @@ -334,14 +360,16 @@ "de": "Mit diesen Unternehmen können Sie Briefe aufgeben: {post_office:letter_from}", "nl": "Je kan brieven posten met de volgende bedrijven: {post_office:letter_from}", "ca": "Podeu enviar cartes amb aquestes empreses: {post_office:letter_from}", - "cs": "U těchto společností můžete zasílat dopisy: {post_office:letter_from}" + "cs": "U těchto společností můžete zasílat dopisy: {post_office:letter_from}", + "es": "Puedes echar cartas con estas empresas: {post_office:letter_from}" }, "question": { "en": "Can you post a letter here?", "de": "Können Sie hier einen Brief aufgeben?", "nl": "Kan je hier een brief posten?", "ca": "Pots enviar cartes des d'aquí?", - "cs": "Můžete zde poslat dopis?" + "cs": "Můžete zde poslat dopis?", + "es": "¿Puedes echar una carta aquí?" }, "freeform": { "key": "post_office:letter_from", @@ -355,7 +383,8 @@ "de": "Sie können Briefe hier aufgeben", "nl": "Je kan hier brieven posten", "ca": "Pots enviar cartes des d'aquí", - "cs": "Zde můžete posílat dopisy" + "cs": "Zde můžete posílat dopisy", + "es": "Puedes echar cartas aquí" } }, { @@ -365,7 +394,8 @@ "de": "Sie können hier keine Briefe aufgeben", "nl": "Je kan hier geen brieven posten", "ca": "No pots enviar cartes des d'aquí", - "cs": "Zde nemůžete posílat dopisy" + "cs": "Zde nemůžete posílat dopisy", + "es": "No puedes echar cartas aquí" } } ] @@ -377,7 +407,8 @@ "de": "Sie können Pakete mit diesen Unternehmen versenden: {post_office:parcel_from}", "nl": "Je kan pakketten versturen met deze bedrijven: {post_office:parcel_from}", "ca": "Podeu enviar paquets amb aquestes empreses: {post_office:parcel_from}", - "cs": "U těchto společností můžete posílat balíky: {post_office:parcel_from}" + "cs": "U těchto společností můžete posílat balíky: {post_office:parcel_from}", + "es": "Puedes enviar paquetes con estas empresas: {post_office:parcel_from}" }, "question": { "en": "Can you send a parcel here?", @@ -385,7 +416,8 @@ "nl": "Kan je hier pakketten versturen?", "ca": "Pots enviar un paquet des d'aquí?", "pl": "Czy można tutaj wysłać paczkę?", - "cs": "Můžete zde odeslat balík?" + "cs": "Můžete zde odeslat balík?", + "es": "¿Puedes enviar un paquete aquí?" }, "freeform": { "key": "post_office:parcel_from", @@ -400,7 +432,8 @@ "nl": "Je kan hier pakketten versturen", "ca": "Pots enviar paquets des d'aquí", "pl": "Można tutaj wysłać paczki", - "cs": "Zde můžete posílat balíky" + "cs": "Zde můžete posílat balíky", + "es": "Puedes enviar paquetes aquí" } }, { @@ -411,7 +444,8 @@ "nl": "Je kan hier geen pakketten versturen", "ca": "No pots enviar paquets des d'aquí", "pl": "Nie można tutaj wysłać paczek", - "cs": "Zde nemůžete posílat balíky" + "cs": "Zde nemůžete posílat balíky", + "es": "No puedes enviar paquetes aquí" } } ] @@ -422,13 +456,15 @@ "en": "You can pick up parcels from these companies: {post_office:parcel_pickup}", "de": "Sie können Pakete von diesen Unternehmen abholen: {post_office:parcel_pickup}", "ca": "Podeu recollir paquets d'aquestes empreses: {post_office:parcel_pickup}", - "cs": "Můžete si zde vyzvednout zásilky těchto společností: {post_office:parcel_pickup}" + "cs": "Můžete si zde vyzvednout zásilky těchto společností: {post_office:parcel_pickup}", + "es": "Puedes recoger paquetes de estas empresas: {post_office:parcel_pickup}" }, "question": { "en": "Can you pick up missed parcels here?", "de": "Können Sie hier verpasste Pakete abholen?", "ca": "Es poden recollir els paquets perduts aquí?", - "cs": "Můžete si zde vyzvednout zmeškané zásilky?" + "cs": "Můžete si zde vyzvednout zmeškané zásilky?", + "es": "¿Puedes recoger paquetes perdidos aquí?" }, "freeform": { "key": "post_office:parcel_pickup", @@ -442,7 +478,8 @@ "de": "Hier können Sie verpasste Pakete abholen", "ca": "Podeu recollir els paquets perduts aquí", "cs": "Zmeškané zásilky si můžete vyzvednout zde", - "nl": "Je kunt hier gemiste pakjes ophalen" + "nl": "Je kunt hier gemiste pakjes ophalen", + "es": "Puedes recoger paquetes perdidos aquí" } }, { @@ -451,7 +488,8 @@ "en": "You can't pick up missed parcels here", "de": "Sie können hier keine verpassten Pakete abholen", "ca": "No podeu recollir paquets perduts aquí", - "cs": "Zmeškané zásilky si zde nemůžete vyzvednout" + "cs": "Zmeškané zásilky si zde nemůžete vyzvednout", + "es": "No puedes recoger paquetes perdidos aquí" } } ] @@ -461,13 +499,15 @@ "render": { "en": "You can send parcels to here for pickup with these companies: {post_office:parcel_to}", "de": "Mit diesen Unternehmen können Sie Pakete zur Abholung hierher senden: {post_office:parcel_to}", - "ca": "Podeu enviar paquets aquí per recollir-los amb aquestes empreses: {post_office:parcel_to}" + "ca": "Podeu enviar paquets aquí per recollir-los amb aquestes empreses: {post_office:parcel_to}", + "es": "Puedes enviar paquetes aquí para su recogida con estas empresas: {post_office:parcel_to}" }, "question": { "en": "Can you send parcels to here for pickup?", "de": "Können Sie Pakete zur Abholung hierher schicken?", "ca": "Pots enviar paquets aquí per a arreplegar-los?", - "nl": "Kun je deze plaats gebruiken als afhaalpunt?" + "nl": "Kun je deze plaats gebruiken als afhaalpunt?", + "es": "¿Puedes enviar paquetes aquí para su recogida?" }, "freeform": { "key": "post_office:parcel_to", @@ -480,7 +520,8 @@ "en": "You can send parcels to here for pickup", "de": "Sie können Pakete zur Abholung hierher schicken", "ca": "Pots enviar paquets aquí per a arreplegar-los", - "nl": "Je kunt pakketten naar dit afhaalpunt sturen" + "nl": "Je kunt pakketten naar dit afhaalpunt sturen", + "es": "Puedes enviar paquetes aquí para su recogida" } }, { @@ -488,7 +529,8 @@ "then": { "en": "You can't send parcels to here for pickup", "de": "Sie können keine Pakete zur Abholung hierher schicken", - "ca": "No pots enviar paquets ací per a arreplegar-los" + "ca": "No pots enviar paquets ací per a arreplegar-los", + "es": "No puedes enviar paquetes aquí para su recogida" } } ] @@ -499,14 +541,16 @@ "en": "You can buy stamps from companies: {post_office:stamps}", "de": "Sie können Briefmarken folgender Unternehmen kaufen: {post_office:stamps}", "nl": "Je kan hier postzegels kopen van de volgende bedrijven: {post_office:stamps}", - "cs": "Známky si můžete zakoupit u firem: {post_office:stamps}" + "cs": "Známky si můžete zakoupit u firem: {post_office:stamps}", + "es": "Puedes comprar sellos de las empresas: {post_office:stamps}" }, "question": { "en": "Can you buy stamps here?", "de": "Kann man hier Briefmarken kaufen?", "nl": "Kan je hier postzegels kopen?", "ca": "Pots comprar segells aquí?", - "cs": "Mohu si zde zakoupit známky?" + "cs": "Mohu si zde zakoupit známky?", + "es": "¿Puedes comprar sellos aquí?" }, "freeform": { "key": "post_office:stamps", @@ -520,7 +564,8 @@ "de": "Sie können hier Briefmarken kaufen", "nl": "Je kan hier postzegels kopen", "ca": "Pots comprar segells aquí", - "cs": "Zde si můžete zakoupit známky" + "cs": "Zde si můžete zakoupit známky", + "es": "Puedes comprar sellos aquí" } }, { @@ -530,7 +575,8 @@ "de": "Sie können hier keine Briefmarken kaufen", "nl": "Je kan hier geen postzegels kopen", "ca": "No pots comprar segells aquí", - "cs": "Zde si nemůžete zakoupit známky" + "cs": "Zde si nemůžete zakoupit známky", + "es": "No puedes comprar sellos aquí" } } ] @@ -542,7 +588,8 @@ "nl": "Heeft dit postkantoor een bankautomaat?", "de": "Verfügt die Postfiliale über einen Geldautomat?", "ca": "Aquesta oficina postal té un caixer automàtic?", - "cs": "Má tato pošta bankomat?" + "cs": "Má tato pošta bankomat?", + "es": "¿Tiene esta oficina de correos un cajero automático?" }, "mappings": [ { @@ -552,7 +599,8 @@ "nl": "Dit postkantoor heeft een bankautomaat", "de": "Die Postfiliale verfügt über einen Geldautomat", "ca": "Aquesta oficina postal té un caixer automàtic", - "cs": "Tato pošta má bankomat" + "cs": "Tato pošta má bankomat", + "es": "Esta oficina de correos tiene un cajero automático" } }, { @@ -562,7 +610,8 @@ "nl": "Dit postkantoor heeft geen bankautomaaat", "de": "Die Postfiliale verfügt nicht über einen Geldautomat", "ca": "Aquesta oficina postal no té un caixer automàtic", - "cs": "Tato pošta nemá bankomat" + "cs": "Tato pošta nemá bankomat", + "es": "Esta oficina de correos no tiene un cajero automático" } }, { @@ -572,7 +621,8 @@ "nl": "Dit postkantoor heeft een bankautomaat, maar deze staat apart op de kaart aangeduid", "de": "Die Postfiliale verfügt über einen Geldautomat, der aber bereits separat kartiert ist", "ca": "Aquesta oficina postal té un caixer automàtic, però està mapejat com a un element diferent", - "cs": "Tato pošta má bankomat, ale je namapován jako jiná ikona" + "cs": "Tato pošta má bankomat, ale je namapován jako jiná ikona", + "es": "Esta oficina de correos tiene un cajero automático, pero está mapeado como un icono diferente" } } ] @@ -586,7 +636,8 @@ { "question": { "en": "Offers letter posting", - "de": "Bietet Briefpost an" + "de": "Bietet Briefpost an", + "es": "¿Ofrece envío de cartas?" }, "osmTags": { "and": [ @@ -603,7 +654,8 @@ { "question": { "en": "Offers parcel posting", - "de": "Bietet Paketaufgabe an" + "de": "Bietet Paketaufgabe an", + "es": "¿Ofrece envío de paquetes?" }, "osmTags": { "and": [ @@ -620,7 +672,8 @@ { "question": { "en": "Offers pickup of missed parcels", - "de": "Bietet die Abholung von verpassten Paketen an" + "de": "Bietet die Abholung von verpassten Paketen an", + "es": "¿Ofrece recogida de paquetes perdidos?" }, "osmTags": { "and": [ @@ -637,7 +690,8 @@ { "question": { "en": "Accepts pickup of parcels sent here", - "de": "Akzeptiert die Abholung von Paketen, die hierher geschickt werden" + "de": "Akzeptiert die Abholung von Paketen, die hierher geschickt werden", + "es": "¿Acepta la recogida de paquetes enviados aquí?" }, "osmTags": { "and": [ @@ -654,7 +708,8 @@ { "question": { "en": "Sells stamps", - "de": "Verkauft Briefmarken" + "de": "Verkauft Briefmarken", + "es": "¿Vende sellos?" }, "osmTags": { "and": [ diff --git a/assets/layers/public_bookcase/public_bookcase.json b/assets/layers/public_bookcase/public_bookcase.json index df57265a2..041d5bc94 100644 --- a/assets/layers/public_bookcase/public_bookcase.json +++ b/assets/layers/public_bookcase/public_bookcase.json @@ -9,7 +9,8 @@ "it": "Microbiblioteche", "hu": "Könyvespolcok", "ca": "Bústies per llibres", - "cs": "Knihobudky" + "cs": "Knihobudky", + "es": "Libreros" }, "description": { "en": "A streetside cabinet with books, accessible to anyone", @@ -19,7 +20,8 @@ "it": "Una vetrinetta ai bordi della strada contenente libri, aperta al pubblico", "ru": "Уличный шкаф с книгами, доступными для всех", "hu": "Egy utcai szekrény könyvekkel, amelyet bárki használhat", - "cs": "Skříňka s knihami na ulici, která je přístupná komukoli" + "cs": "Skříňka s knihami na ulici, která je přístupná komukoli", + "es": "Un armario callejero con libros, accesible para cualquiera" }, "source": { "osmTags": "amenity=public_bookcase" @@ -36,7 +38,8 @@ "hu": "Könyvespolc", "ca": "Bústia per llibres", "pa_PK": "کتاباں دی الماری", - "cs": "Knihobudka" + "cs": "Knihobudka", + "es": "Librero" }, "mappings": [ { @@ -50,7 +53,8 @@ "it": "Microbiblioteca pubblica {name}", "hu": "A nyilvános könyvespolc neve: {name}", "ca": "Prestatgeria pública {name}", - "cs": "Veřejná knihobudka {name}" + "cs": "Veřejná knihobudka {name}", + "es": "Librero Público {name}" } } ] @@ -97,7 +101,8 @@ "it": "una microbiblioteca", "hu": "Könyvespolc", "ca": "una bústia per a llibres", - "cs": "knihobudka" + "cs": "knihobudka", + "es": "un librero" }, "tags": [ "amenity=public_bookcase" @@ -116,7 +121,8 @@ "it": "Questa microbiblioteca si chiama {name}", "hu": "Ennek a könyvespolcnak a neve: {name}", "ca": "El nom d'aquesta prestatgeria és {name}", - "cs": "Název této knihobudky je {name}" + "cs": "Název této knihobudky je {name}", + "es": "El nombre de este librero es {name}" }, "question": { "en": "What is the name of this public bookcase?", @@ -127,7 +133,8 @@ "it": "Come si chiama questa microbiblioteca pubblica?", "hu": "Mi a neve ennek a nyilvános könyvespolcnak?", "ca": "Com es diu aquesta prestatgeria pública?", - "cs": "Jak se jmenuje tato knihobudka?" + "cs": "Jak se jmenuje tato knihobudka?", + "es": "¿Cuál es el nombre de este librero público?" }, "freeform": { "key": "name", @@ -150,7 +157,8 @@ "it": "Questa microbiblioteca non ha un nome proprio", "hu": "Ennek a könyvespolcnak nincs neve", "ca": "Aquesta prestatgeria no té un nom", - "cs": "Tato knihobudka nemá jméno" + "cs": "Tato knihobudka nemá jméno", + "es": "Este librero no tiene nombre" } } ], @@ -166,7 +174,8 @@ "ru": "{capacity} книг помещается в этот книжный шкаф", "hu": "Ezen a könyvespolcon {capacity} könyv fér el", "ca": "Caben {capacity} llibres en aquesta prestatgeria", - "cs": "{capacity} knih se vejde do této knihobudky" + "cs": "{capacity} knih se vejde do této knihobudky", + "es": "En este librero caben {capacity} libros" }, "question": { "en": "How many books fit into this public bookcase?", @@ -177,7 +186,8 @@ "it": "Quanti libri può contenere questa microbiblioteca?", "hu": "Hány könyv fér el ezen a nyilvános könyvespolcon?", "ca": "Quants llibres caben en aquesta prestatgeria pública?", - "cs": "Kolik knih se vejde do této veřejné knihobudky?" + "cs": "Kolik knih se vejde do této veřejné knihobudky?", + "es": "¿Cuántos libros caben en este librero público?" }, "freeform": { "key": "capacity", @@ -197,13 +207,15 @@ "ru": "Какие книги можно найти в этом общественном книжном шкафу?", "hu": "Milyen fajta könyvek találhatók ezen a közösségi könyvespolcon?", "ca": "Quins tipus de llibres pots trobar a aquesta prestatgeria pública?", - "cs": "Jaké knihy najdete v této veřejné knihobudce?" + "cs": "Jaké knihy najdete v této veřejné knihobudce?", + "es": "¿Qué tipo de libros se pueden encontrar en este librero público?" }, "render": { "nl": "Deze plaats serveert vooral {books}", "en": "This place mostly serves {books}", "de": "An diesem Ort gibt es hauptsächlich {books}", - "cs": "Toto místo nabízí hlavně {books}" + "cs": "Toto místo nabízí hlavně {books}", + "es": "Este lugar sirve principalmente para {books}" }, "freeform": { "key": "books", @@ -223,7 +235,7 @@ "ru": "В основном детские книги", "it": "Principalmente libri per l'infanzia", "hu": "Többnyire gyermekkönyvek", - "es": "Mayoritariamente libros infantiles", + "es": "Mayormente libros infantiles", "ca": "Majoritàriament llibres infantils", "cs": "Převážně dětské knihy" } @@ -238,7 +250,7 @@ "ru": "В основном книги для взрослых", "it": "Principalmente libri per persone in età adulta", "hu": "Többnyire felnőtteknek szóló könyvek", - "es": "Mayoritariamente libros para adultos", + "es": "Mayormente libros para adultos", "ca": "Majoritàriament llibres per a adults", "cs": "Převážně knihy pro dospělé" } @@ -255,7 +267,8 @@ "it": "Questa microbiblioteca si trova all'aperto?", "hu": "A szabadban van-e ez a könyvespolc?", "ca": "Aquesta prestatgeria es troba a l'exterior?", - "cs": "Je tato knihobudka umístěna venku?" + "cs": "Je tato knihobudka umístěna venku?", + "es": "¿Está este librero situado en el exterior?" }, "mappings": [ { @@ -267,7 +280,8 @@ "it": "Questa microbiblioteca si trova al chiuso", "hu": "Ez a könyvespolc beltérben található", "ca": "Aquesta prestatgeria es troba a l'interior", - "cs": "Tato knihobudka je umístěna v interiéru" + "cs": "Tato knihobudka je umístěna v interiéru", + "es": "Este librero está situado en el interior" }, "if": "indoor=yes" }, @@ -280,7 +294,8 @@ "it": "Questa microbiblioteca si trova all'aperto", "hu": "Ez a könyvespolc a szabadban van", "ca": "Aquesta prestatgeria es troba a l'exterior", - "cs": "Tato knihobudka se nachází venku" + "cs": "Tato knihobudka se nachází venku", + "es": "Este librero está situado en el exterior" }, "if": "indoor=no" }, @@ -293,7 +308,8 @@ "it": "Questa microbiblioteca si trova all'aperto", "hu": "Ez a könyvszekrény a szabadban van", "ca": "La prestatgeria està ubicada a l'exterior", - "cs": "Tato knihobudka se nachází venku" + "cs": "Tato knihobudka se nachází venku", + "es": "Este librero está situado en el exterior" }, "if": "indoor=", "hideInAnswer": true @@ -311,7 +327,8 @@ "ru": "Имеется ли свободный доступ к этому общественному книжному шкафу?", "hu": "Szabadon hozzáférhető-e ez a közösségi könyvespolc?", "ca": "Aquesta prestatgeria pública és de lliure accés?", - "cs": "Je tato veřejná knihobudka volně přístupná?" + "cs": "Je tato veřejná knihobudka volně přístupná?", + "es": "¿Es este librero público de libre acceso?" }, "condition": "indoor=yes", "mappings": [ @@ -324,7 +341,7 @@ "it": "È ad accesso libero", "ru": "Свободный доступ", "hu": "Nyilvánosan használható", - "es": "Accesible públicamente", + "es": "Accesible al público", "ca": "Accessible al públic", "cs": "Veřejně přístupné" }, @@ -338,7 +355,7 @@ "fr": "Accèssible aux clients", "it": "L'accesso è riservato ai clienti", "hu": "Csak ügyfelek használhatják", - "es": "Solo accesible a clientes", + "es": "Solo accesible para clientes", "ca": "Només accessible per als clients", "cs": "Přístupné pouze zákazníkům" }, @@ -355,7 +372,8 @@ "it": "Chi mantiene questa microbiblioteca?", "hu": "Ki tartja fenn ezt a nyilvános könyvespolcot?", "ca": "Qui gestiona aquesta prestatgeria pública?", - "cs": "Kdo tuto veřejnou knihobudku spravuje?" + "cs": "Kdo tuto veřejnou knihobudku spravuje?", + "es": "¿Quién mantiene este librero público?" }, "render": { "en": "Operated by {operator}", @@ -365,7 +383,8 @@ "it": "È gestita da {operator}", "hu": "Üzemeltető: {operator}", "ca": "Gestionant per {operator}", - "cs": "Provozuje {operator}" + "cs": "Provozuje {operator}", + "es": "Operado por {operator}" }, "freeform": { "type": "string", @@ -383,7 +402,9 @@ "it": "Questa microbiblioteca fa parte di una rete?", "hu": "Része-e egy nagyobb hálózatnak ez a nyilvános könyvespolc?", "ca": "Aquesta prestatgeria pública forma part d'una xarxa més gran?", - "cs": "Je tato veřejná knihobudka součástí větší sítě?" + "cs": "Je tato veřejná knihobudka součástí větší sítě?", + "es": "¿Forma parte este librero público de una red más grande?", + "uk": "Чи є ця публічна книжкова шафа частиною більшої мережі?" }, "render": { "en": "This public bookcase is part of {brand}", @@ -393,14 +414,17 @@ "it": "Questa microbiblioteca fa parte di {brand}", "hu": "Ez a nyilvános könyvespolc a(z) {brand} része", "ca": "Aquesta prestatgeria pública forma part de {brand}", - "cs": "Tato veřejná knihobudka je součástí {brand}" + "cs": "Tato veřejná knihobudka je součástí {brand}", + "es": "Este librero público forma parte de {brand}", + "uk": "Ця публічна книжкова шафа є частиною {brand}" }, "condition": "ref=", "freeform": { "key": "brand", "placeholder": { "en": "Name of the network", - "de": "Name des Netzwerks" + "de": "Name des Netzwerks", + "es": "Nombre de la red" }, "addExtraTags": [ "nobrand=" @@ -417,7 +441,9 @@ "it": "Fa parte della rete 'Little Free Library'", "hu": "Ez a nyilvános könyvespolc nem része egy nagyobb hálózatnak", "ca": "Aquesta prestatgeria pública no és part d'una xarxa més gran", - "cs": "Tato veřejná knihobudka není součástí větší sítě" + "cs": "Tato veřejná knihobudka není součástí větší sítě", + "es": "Este librero público no forma parte de una red más grande", + "uk": "Ця публічна книжкова шафа не є частиною більшої мережі" }, "addExtraTags": [ "brand:wikidata=", @@ -434,7 +460,8 @@ "fr": "Cette microbibliothèque du réseau {brand} possède le numéro {ref}", "it": "Il numero identificativo di questa microbiblioteca nella rete {brand} è {ref}", "hu": "A(z) {brand} márkanéven belül ennek a nyilvános könyvespolcnak az azonosító száma: {ref}", - "cs": "Referenční číslo této veřejné knihobudky v rámci {brand} je {ref}" + "cs": "Referenční číslo této veřejné knihobudky v rámci {brand} je {ref}", + "es": "El número de referencia de este librero público dentro de {brand} es {ref}" }, "question": { "en": "What is the reference number of this public bookcase?", @@ -444,7 +471,8 @@ "it": "Qual è il numero identificativo di questa microbiblioteca?", "hu": "Mi az azonosító száma ennek a nyilvános könyvespolcnak?", "ca": "Quin és el número de referència d'aquesta prestatgeria pública?", - "cs": "Jaké je referenční číslo této veřejné knihobudky?" + "cs": "Jaké je referenční číslo této veřejné knihobudky?", + "es": "¿Cuál es el número de referencia de este librero público?" }, "condition": "brand~*", "freeform": { @@ -460,7 +488,9 @@ "it": "Questa biblioteca non fa parte di una rete", "hu": "Ez a könyvespolc nem része egy nagyobb hálózatnak", "ca": "Aquesta prestatgeria no forma part d'una xarxa més gran", - "cs": "Tato knihobudka není součástí větší sítě" + "cs": "Tato knihobudka není součástí větší sítě", + "es": "Este librero no forma parte de una red más grande", + "uk": "Ця книжкова шафа не є частиною більшої мережі" }, "if": { "and": [ @@ -483,7 +513,8 @@ "ru": "Когда был установлен этот общественный книжный шкаф?", "hu": "Mikor állították fel ezt a nyilvános könyvespolcot?", "ca": "Quan es va instal·lar aquesta prestatgeria pública?", - "cs": "Kdy byla tato veřejná knihobudka instalována?" + "cs": "Kdy byla tato veřejná knihobudka instalována?", + "es": "¿Cuándo se instaló este librero público?" }, "render": { "en": "Installed on {start_date}", @@ -494,7 +525,8 @@ "ru": "Установлен {start_date}", "hu": "Telepítés dátuma: {start_date}", "ca": "Instal·lat el dia {start_date}", - "cs": "Instalováno dne {start_date}" + "cs": "Instalováno dne {start_date}", + "es": "Instalado el {start_date}" }, "freeform": { "key": "start_date", @@ -516,7 +548,8 @@ "it": "Maggiori informazioni sul sito web", "hu": "További információ ezen a weboldalon", "ca": "Més informació al web", - "cs": "Více informací na webových stránkách" + "cs": "Více informací na webových stránkách", + "es": "Más información en la web" } } }, @@ -529,7 +562,8 @@ "ru": "Есть ли веб-сайт с более подробной информацией об этом общественном книжном шкафе?", "hu": "Van-e olyan weboldal, ahol további információ található erről a nyilvános könyvespolcról?", "ca": "Hi ha algun lloc web amb més informació sobre aquesta prestatgeria pública?", - "cs": "Existuje webová stránka s dalšími informacemi o této veřejné knihobudce?" + "cs": "Existuje webová stránka s dalšími informacemi o této veřejné knihobudce?", + "es": "¿Hay un sitio web con más información sobre este librero público?" }, "freeform": { "key": "website", @@ -548,7 +582,8 @@ "nl": "Kinderboeken aanwezig", "de": "Hat Kinderbücher", "ca": "Té llibres infantils", - "cs": "Má dětské knihy" + "cs": "Má dětské knihy", + "es": "¿Tiene libros infantiles?" }, "osmTags": "books~i~.*children.*" } @@ -563,7 +598,8 @@ "nl": "Boeken voor volwassenen aanwezig", "de": "Hat Bücher für Erwachsene", "ca": "Té llibres per a adults", - "cs": "Má knihy pro dospělé" + "cs": "Má knihy pro dospělé", + "es": "¿Tiene libros para adultos?" }, "osmTags": "books~i~.*adults.*" } @@ -578,7 +614,7 @@ "en": "Indoor or outdoor", "de": "Innen oder Außen", "hu": "Beltéri vagy kültéri", - "es": "Interior o exterior", + "es": "¿Interior o exterior?", "ca": "Interior o exterior", "cs": "Vnitřní nebo venkovní" } @@ -589,7 +625,8 @@ "nl": "Bevindt zich binnen", "de": "Befindet sich im Innenbereich", "ca": "Situat a l'interior", - "cs": "Nachází se v interiéru" + "cs": "Nachází se v interiéru", + "es": "¿Situado en el interior?" }, "osmTags": "indoor=yes" }, @@ -599,7 +636,8 @@ "en": "Located outdoors", "de": "Befindet sich im Freien", "ca": "Situat a l'exterior", - "cs": "Nachází se venku" + "cs": "Nachází se venku", + "es": "¿Situado en el exterior?" }, "osmTags": { "or": [ diff --git a/assets/layers/questions/questions.json b/assets/layers/questions/questions.json index 821b05935..a5b70f182 100644 --- a/assets/layers/questions/questions.json +++ b/assets/layers/questions/questions.json @@ -19,6 +19,13 @@ "*": "{image_carousel()}{image_upload()}" } }, + { + "id": "images_no_blur", + "description": "Same as `images`, but uploaded request to disable blurring to the panoramax server", + "render": { + "*": "{image_carousel()}{image_upload(,,,true)}" + } + }, { "id": "mapillary", "description": "Shows a button to open Mapillary on this location", @@ -61,7 +68,7 @@ "pl": "Jaki jest powiązany obiekt Wikidata?", "ja": "対応するウィキデータのエンティティは何ですか?", "fil": "Ano ang nau-ukol na entidad sa Wikidata?", - "es": "¿Cual es la entidad de Wikidata que se corresponde?", + "es": "¿Cuál es la entidad Wikidata correspondiente?", "zh_Hans": "在Wikidata上对应的实体是什么?", "da": "Hvad er den tilsvarende Wikidata-enhed?", "id": "Apa entitas Wikidata yang sesuai?", @@ -76,7 +83,7 @@ "da": "Der er endnu ikke linket til nogen Wikipedia-side", "de": "Es wurde noch keine Wikipedia-Seite verlinkt", "en": "No Wikipedia page has been linked yet", - "es": "Todavía no se ha enlazado una página de wikipedia", + "es": "Aún no se ha enlazado ninguna página de Wikipedia", "fil": "Wala pang kawing ng Wikipedia page", "fr": "Pas encore de lien vers une page Wikipedia", "hu": "Még nincs Wikipédia-oldal belinkelve", @@ -113,7 +120,7 @@ "pl": "Link do strony Wikipedii nie został jeszcze określony", "ja": "ウィキペディアのページはまだリンクされていません", "fil": "Wala pang kawing ng Wikipedia page", - "es": "Todavía no se ha enlazado una página de wikipedia", + "es": "Aún no se ha enlazado ninguna página de Wikipedia", "zh_Hans": "尚未有连接到的维基百科页面", "da": "Der er endnu ikke linket til nogen Wikipedia-side", "id": "Belum ada halaman Wikipedia yang ditautkan", @@ -172,7 +179,8 @@ "es": "¿Cuál es el número de teléfono de {title()}?", "zh_Hans": "{title()} 的电话号码为何?", "da": "Hvad er telefonnummeret til {title()}?", - "cs": "Jaké je telefonní číslo {title()}?" + "cs": "Jaké je telefonní číslo {title()}?", + "uk": "Який номер телефону {title()}?" }, "render": { "special": { @@ -206,7 +214,8 @@ "editButtonAriaLabel": { "en": "Edit phone number", "nl": "Pas telefoonnummer aan", - "de": "Telefonnummer bearbeiten" + "de": "Telefonnummer bearbeiten", + "es": "Editar número de teléfono" } }, { @@ -215,7 +224,8 @@ "question": { "en": "What is the Mastodon-handle of {title()}?", "de": "Wie lautet der Mastodon-Handle von {title()}?", - "cs": "Co je Mastodon-handle {title()}?" + "cs": "Co je Mastodon-handle {title()}?", + "es": "¿Cuál es el identificador de Mastodon de {title()}?" }, "freeform": { "key": "contact:mastodon", @@ -231,7 +241,8 @@ "description": "Shows and asks for the facebook handle", "question": { "en": "What is the facebook page of of {title()}?", - "de": "Was ist die Facebook-Seite von {title()}?" + "de": "Was ist die Facebook-Seite von {title()}?", + "es": "¿Cuál es la página de Facebook de {title()}" }, "freeform": { "key": "contact:facebook", @@ -243,12 +254,14 @@ "href": "{contact:facebook}", "text": { "en": "Facebook page", - "de": "Facebook Seite" + "de": "Facebook Seite", + "es": "Página de Facebook" } }, "after": { "en": "
Facebook is known to harm mental health, manipulate public opinion and cause hate. Try to use healthier alternatives
", - "de": "
Facebook ist bekannt dafür, die psychische Gesundheit zu beeinträchtigen, die öffentliche Meinung zu manipulieren und Hass zu verursachen. Versuche, gesündere Alternativen zu nutzen.
" + "de": "
Facebook ist bekannt dafür, die psychische Gesundheit zu beeinträchtigen, die öffentliche Meinung zu manipulieren und Hass zu verursachen. Versuche, gesündere Alternativen zu nutzen.
", + "es": "
Se sabe que Facebook perjudica la salud mental, manipula la opinión pública y causa odio. Prueba alternativas más saludables
" } } }, @@ -296,7 +309,8 @@ "es": "¿Cuál es la dirección de correo electrónico de {title()}?", "zh_Hans": "{title()} 的电子邮箱地址为何?", "da": "Hvad er mailadressen på {title()}?", - "cs": "Jaká je e-mailová adresa {title()}?" + "cs": "Jaká je e-mailová adresa {title()}?", + "uk": "Яка електронна адреса {title()}?" }, "mappings": [ { @@ -322,7 +336,8 @@ "editButtonAriaLabel": { "en": "Edit email address", "nl": "Pas emailadres aan", - "de": "E-Mail Adresse bearbeiten" + "de": "E-Mail Adresse bearbeiten", + "es": "Editar dirección de correo electrónico" } }, { @@ -351,10 +366,11 @@ "ca": "Quina és la web de {title()}?", "ja": "{title()}のウェブサイトは?", "fil": "Ano ang website ng {title()}?", - "es": "¿Cual es el sitio web de {title()}?", + "es": "¿Cuál es el sitio web de {title()}?", "zh_Hans": "{title()} 的网站为何?", "da": "Hvad er webstedet for {title()}?", - "cs": "Jaká je webová stránka {title()}?" + "cs": "Jaká je webová stránka {title()}?", + "uk": "Який веб-сайт має {title()}?" }, "render": { "*": "{website}" @@ -378,7 +394,8 @@ "en": "Edit website", "nl": "Pas website aan", "de": "Webseite bearbeiten", - "pl": "Edytuj stronę internetową" + "pl": "Edytuj stronę internetową", + "es": "Editar sitio web" } }, { @@ -399,7 +416,7 @@ "pl": "Czy to miejsce jest dostępne dla osób na wózkach inwalidzkich?", "ja": "車いすでのアクセスは可能ですか?", "fil": "Kaya bang abutin ang lugar na ito ng naka-wheelchair?", - "es": "¿Este lugar es accesible con una silla de ruedas?", + "es": "¿Es este lugar accesible en silla de ruedas?", "da": "Er stedet tilgængeligt med en kørestol?", "id": "Apakah tempat ini dapat diakses dengan kursi roda?", "cs": "Je toto místo přístupné pro vozíčkáře?" @@ -428,7 +445,7 @@ "pl": "W tym miejscu zainstalowane zostały udogodnienia dla osób na wózkach inwalidzkich", "ja": "この場所は、車椅子の方のための特別仕様になっています", "fil": "Ang lugar na ito ay angkop sa mga gumagamit ng wheelchair", - "es": "Este lugar está especialmente adaptado para usuarios en sillas de ruedas", + "es": "Este lugar está especialmente adaptado para usuarios de sillas de ruedas", "da": "Dette sted er specielt indrettet til kørestolsbrugere", "id": "Tempat ini dirancang khusus untuk pengguna kursi roda", "cs": "Toto místo je speciálně upraveno pro vozíčkáře" @@ -457,7 +474,7 @@ "pl": "To miejsce jest łatwo dostępne dla osób na wózkach inwalidzkich", "ja": "この場所は、車いすで簡単に行くことができます", "fil": "Ang lugar na ito ay kayang abutin ng mga naka-wheelchair", - "es": "Este lugar es fácilmente accesible con una silla de ruedas", + "es": "Este lugar es fácilmente accesible en silla de ruedas", "da": "Dette sted er let tilgængeligt med en kørestol", "id": "Tempat ini mudah dijangkau dengan kursi roda", "cs": "Toto místo je snadno dosažitelné s invalidním vozíkem" @@ -486,7 +503,7 @@ "pl": "To miejsce jest dostępne dla osób na wózkach inwalidzkich, ale z pewnymi trudnościami", "ja": "車いすでこの場所まで行くことは可能ですが、簡単ではありません", "fil": "Kayang abutin ang lugar na ito ng mga naka-wheelchair, pero hindi madali", - "es": "Es posible llegar a este lugar con una silla de ruedas, pero no es fácil", + "es": "Es posible acceder a este lugar en silla de ruedas, pero no es fácil", "da": "Det er muligt at komme til dette sted med en kørestol, men det er ikke let", "id": "Dimungkinkan untuk mencapai tempat ini dengan kursi roda, tetapi tidak mudah", "cs": "Na toto místo je možné se dostat na invalidním vozíku, ale není to snadné" @@ -514,7 +531,7 @@ "pl": "To miejsce jest niedostępne dla osób na wózkach inwalidzkich", "ja": "この場所は車いすでは行けません", "fil": "Ang lugar na ito ay hindi kayang abutin ng naka-wheelchair", - "es": "No es posible llegar a este lugar con una silla de ruedas", + "es": "Este lugar no es accesible en silla de ruedas", "da": "Dette sted er ikke tilgængeligt med kørestol", "id": "Tempat ini tidak bisa dijangkau dengan kursi roda", "cs": "Na toto místo se nelze dostat s invalidním vozíkem" @@ -542,7 +559,7 @@ "id": "Apakah anjing diperbolehkan dalam bisnis ini?", "sl": "Ali so v tem podjetju dovoljeni psi?", "fil": "Pinapayagan ba ang mga aso sa establisyementong ito?", - "es": "¿Están permitidos los perros en este negocio?", + "es": "¿Se admiten perros en este negocio?", "zh_Hans": "犬只是否在这个商业体中允许?", "da": "Er hunde tilladt i denne virksomhed?", "cs": "Jsou v tomto podniku povoleni psi?" @@ -568,7 +585,7 @@ "id": "Anjing diperbolehkan", "pl": "Psy dozwolone", "ja": "ペット同伴可能", - "es": "Se permiten perros", + "es": "Se admiten perros", "sl": "Psi so dovoljeni", "fil": "Pinapayagan ang mga aso", "zh_Hans": "允许犬只", @@ -597,7 +614,7 @@ "ru": "С собаками не впускают", "id": "Anjing tidak diperbolehkan", "ja": "ペット同伴不可", - "es": "No se permiten perros", + "es": "Los perros no están permitidos", "sl": "Psi niso dovoljeni", "fil": "Hindi pinapayagan ang mga aso", "zh_Hans": "允许犬只", @@ -626,7 +643,7 @@ "ja": "ペット同伴可能。ただしリード着用", "sl": "Psi so dovoljeni, vendar morajo biti na povodcu", "fil": "Pinapayagan ang mga aso kung may tali", - "es": "Los perros están permitidos, pero tienen que llevar correa", + "es": "Se admiten perros, pero deben ir con correa", "zh_Hans": "允许犬只,但必须拴绳", "da": "Hunde er tilladt, men de skal være i snor", "cs": "Psi jsou povoleni, ale musí být na vodítku" @@ -653,7 +670,7 @@ "id": "Anjing diperbolehkan dan dapat berkeliaran dengan bebas", "sl": "Psi so dovoljeni in lahko prosto tekajo naokoli", "fil": "Pinapayayagan ang mga aso, at malayang makatatakbo", - "es": "Los perros están permitidos y pueden estar sueltos", + "es": "Se admiten perros y pueden correr libremente", "zh_Hans": "允许犬只,且可自由放养", "da": "Hunde er tilladt og kan løbe frit rundt", "cs": "Psi mají vstup povolen a mohou volně pobíhat" @@ -665,7 +682,8 @@ "then": { "en": "Dogs are allowed only outside", "it": "I cani sono ammessi solo all'esterno", - "de": "Hunde sind nur draußen erlaubt" + "de": "Hunde sind nur draußen erlaubt", + "es": "Solo se admiten perros en el exterior" } } ], @@ -692,7 +710,7 @@ "sv": "Finns det fortfarande någonting relevant som du inte kunde ge i de föregående frågorna? Lägg till det här.", "id": "Apakah masih ada sesuatu yang relevan yang tidak dapat Anda berikan dalam pertanyaan sebelumnya? Tambahkan di sini. ", "ja": "前の質問で伝えきれなかった関連事項がまだありますか?ここに追加してください。", - "es": "¿Aún hay algo relevante que no ha encajado en las preguntas anteriores? Compártalo aquí.", + "es": "¿Hay alguna información relevante que las preguntas anteriores no hayan cubierto? Siéntete libre de añadirla aquí.", "sl": "Ali je še kaj pomembnega, česar niste mogli povedati v prejšnjih vprašanjih? Dopišite tukaj.", "fil": "Mayroon pa bang mga bagay na nau-ugnay at hindi mo maibigay sa mga nakaraang tanong? Idagdag dito.", "da": "Er der stadig noget relevant, du ikke kunne give i de foregående spørgsmål? Tilføj det her.", @@ -722,7 +740,7 @@ "sv": "Repetera inte redan angivna fakta", "id": " Jangan ulangi fakta yang sudah dinyatakan ", "ja": "今後表示しない", - "es": "No repita datos ya expresados", + "es": "No repitas datos ya mencionados", "sl": "Ne ponavljajte že navedenih dejstev", "fil": "Huwag ulitin ang mga nai-saad na", "da": "Gentag ikke allerede nævnte fakta", @@ -749,11 +767,12 @@ "ja": "{title()}の営業時間は?", "sl": "Kakšen odpiralni čas ima {title()}?", "fil": "Anong oras nagbubukas ang {title()}?", - "es": "¿Cuales son las horas de apertura de {title()}?", + "es": "¿Cuál es el horario de apertura de {title()}?", "zh_Hans": "{title()} 的开放时间为何?", "da": "Hvad er åbningstiderne for {title()}?", "id": "Kapan jam buka {title()}?", - "cs": "Jaká je otevírací doba {title()}?" + "cs": "Jaká je otevírací doba {title()}?", + "uk": "Які години роботи {title()}?" }, "render": { "de": "

Öffnungszeiten

{opening_hours_table(opening_hours)}", @@ -774,12 +793,13 @@ "ja": "

営業時間

{opening_hours_table(opening_hours)}", "sl": "

Odpiralni čas

{opening_hours_table(opening_hours)}", "fil": "

Mga oras na bukas

{opening_hours_table(opening_hours)}", - "es": "

Horas de apertura

{opening_hours_table(opening_hours)}", + "es": "

Horario de apertura

{opening_hours_table(opening_hours)}", "zh_Hans": "

开放时间

{opening_hours_table(opening_hours)}", "da": "

Åbningstider

{opening_hours_table(opening_hours)}", "id": "

Jam buka

{opening_hours_table(opening_hours)}", "pa_PK": "

کھُلھے گھنٹے

{opening_hours_table(opening_hours)}", - "cs": "

Otevírací hodiny

{opening_hours_table(opening_hours)}" + "cs": "

Otevírací hodiny

{opening_hours_table(opening_hours)}", + "uk": "

Години роботи

{opening_hours_table(opening_hours)}" }, "freeform": { "key": "opening_hours", @@ -792,7 +812,8 @@ "then": { "en": "Marked as closed for an unspecified time", "nl": "Gesloten voor onbepaalde duur", - "de": "Als geschlossen für eine unbestimmte Zeit markiert" + "de": "Als geschlossen für eine unbestimmte Zeit markiert", + "es": "Marcado como cerrado por un tiempo no especificado" }, "hideInAnswer": true } @@ -815,7 +836,7 @@ "zh_Hant": "24/7 開放 (包括假日)", "id": "Buka 24 jam (termasuk hari libur)", "hu": "Éjjel-nappal nyitva (munkaszüneti napokon is)", - "es": "Abierta 24/7 (incluyendo festivos)", + "es": "Abierto 24/7 (incluidos los festivos)", "nl": "24/7 open (ook tijdens feestdagen)", "fr": "Ouvert 24h/24 (jours fériés compris)", "nb_NO": "Døgnåpent (inkludert helligdager)", @@ -852,7 +873,7 @@ "nl": "Alleen op afspraak", "fr": "Uniquement sur rendez-vous", "ca": "Sols amb cita prèvia", - "es": "Sólo con cita previa", + "es": "Solo con cita previa", "nb_NO": "Kun ved avtale", "pl": "Tylko po wcześniejszym umówieniu się", "cs": "Pouze po domluvě" @@ -866,7 +887,7 @@ "nl": "Alleen op afspraak", "fr": "Uniquement sur rendez-vous", "ca": "Sols amb cita prèvia", - "es": "Sólo con cita previa", + "es": "Solo con cita previa", "nb_NO": "Kun ved avtale", "pl": "Tylko po wcześniejszym umówieniu się", "cs": "Pouze po domluvě" @@ -892,7 +913,7 @@ "pl": "Czy w tym przybytku znajdują się gniazdka elektryczne, gdzie klienci mogą naładować swoje urządzenia?", "ja": "このアメニティにはコンセントがあり、お客様が店内にいるときにも利用できますか?", "fil": "Merong bang mga intsupe (outlet) sa loob, para sa mga suki?", - "es": "¿Esta facilidad tiene enchufes eléctricos, disponibles para los clientes cuando están dentro?", + "es": "¿Tiene este servicio enchufes eléctricos disponibles para los clientes cuando están en el interior?", "nb_NO": "Har denne fasiliteten stikkontakter, tilgjengelig for kunder innendørs?", "da": "Har denne faciliteter stikkontakter tilgængelige for kunder, når de er inde?", "cs": "Má toto zařízení elektrické zásuvky, které jsou zákazníkům k dispozici, když jsou uvnitř?" @@ -912,7 +933,7 @@ "pl": "W budynku znajduje się wiele gniazdek elektrycznych, gdzie klienci mogą naładować swoje urządzenia", "ja": "屋内の席に座っているお客様には、家庭用コンセントがたくさん用意されており、そこで電子機器を充電することができます", "fil": "Maraming mga intsupe (sockets) na maaring gamitin ng mga suki na nakaupo sa loob, pang-karga ng kanilang mga elektroniks", - "es": "Hay numerosos enchufes domésticos disponibles para los clientes sentados en el interior, donde pueden cargar sus dispositivos electrónicos", + "es": "Hay muchos enchufes domésticos disponibles para los clientes sentados en el interior, donde pueden cargar sus dispositivos electrónicos", "da": "Der er masser af stikkontakter til rådighed for kunder, der sidder indendørs, hvor de kan oplade deres elektroniske udstyr", "nb_NO": "Det er massevis av stikkontakter tilgjengelig for kunder som sitter innendørs, der de kan lade elektronikken sin", "cs": "V interiéru je k dispozici dostatek el. zásuvek, kde si zákazníci mohou nabíjet elektroniku" @@ -954,7 +975,7 @@ "pl": "W budynku nie ma gniazdek elektrycznych dostępnych dla klientów, ale mogą zostać one udostępnione po spytaniu obsługi", "ja": "屋内にはコンセントがありませんが、スタッフに声をかければ充電できるかもしれません", "fil": "Walang mga intsupe (socket) para sa mga suki, pero maaring tanungin ang kawani kung magpapa-karga", - "es": "No hay enchufes disponibles en el interior para los clientes, pero cargar puede ser posible si se pregunta al personal", + "es": "No hay enchufes disponibles en el interior para los clientes, pero es posible cargar si se solicita al personal", "da": "Der er ingen stikkontakter til rådighed indendørs for kunderne, men opladning kan være mulig, hvis man beder personalet om det", "nb_NO": "Det er ingen tilgjengelige stikkontakter for kunder som sitter innendørs, men lading kan være mulig hvis man spør betjeningen", "cs": "V interiéru nejsou zákazníkům k dispozici žádné el. zásuvky, ale na požádání personálu je možné nabíjet" @@ -1035,7 +1056,7 @@ "ja": "現金利用可能", "sl": "Tu sprejemajo gotovino", "fil": "Tinatanggap ang salapi rito", - "es": "Aquí se acepta el pago en efectivo", + "es": "Aquí se acepta efectivo", "zh_Hans": "可用现金", "da": "Her modtages kontanter", "cs": "Přijímá se zde hotovost" @@ -1064,7 +1085,7 @@ "ja": "お支払いはこちらで承ります", "sl": "Tukaj sprejemajo plačilne kartice", "fil": "Tinatanggap ang mga tarhetang pambayad dito", - "es": "Aquí se acepta el pago por tarjeta", + "es": "Aquí se aceptan tarjetas de pago", "zh_Hans": "可用信用卡", "da": "Betalingskort accepteres her", "cs": "Jsou zde přijímány platební karty" @@ -1078,7 +1099,7 @@ "en": "Payment by QR-code is possible here", "nl": "Betalen via een QR-code is hier mogelijk", "de": "Die Bezahlung per QR-Code ist hier möglich", - "es": "Aquí se puede pagar con código QR", + "es": "Aquí es posible pagar con código QR", "ca": "Aquí es pot pagar amb codi QR", "cs": "Platba QR kódem je zde možná" } @@ -1190,7 +1211,7 @@ "sl": "Plačilo se opravi z namensko aplikacijo", "ca": "El pagament es fa amb una app dedicada", "fil": "Binabayaran gamit ang sariling app", - "es": "El pago se realiza con una aplicación dedicada", + "es": "El pago se realiza utilizando una aplicación dedicada", "zh_Hans": "使用专用APP支付", "da": "Betaling sker ved hjælp af en dedikeret app", "nb_NO": "Betaling utføres med et eget program", @@ -1215,7 +1236,7 @@ "sl": "Plačilo se izvede s člansko izkaznico", "ca": "El pagament es fa amb una targeta de membre", "fil": "Binabayaran gamit ang membership card", - "es": "El pago se realiza con una tarjeta de membresía", + "es": "El pago se realiza utilizando una tarjeta de socio", "nb_NO": "Betaling utføres med et medlemskort", "zh_Hans": "使用会员卡支付", "da": "Betaling sker med medlemskort", @@ -1253,7 +1274,7 @@ "fr": "Quelles pièces peut-on utiliser pour payer ici ?", "pl": "Jakimi monetami można tutaj zapłacić?", "ca": "Quines monedes es poden utilitzar per a pagar aquí?", - "es": "¿Qué monedas se pueden usar aquí para pagar?", + "es": "¿Qué monedas se pueden usar para pagar aquí?", "nb_NO": "Hvilke mynter kan brukes til betaling her?", "cs": "Jakými mincemi zde lze platit?" }, @@ -1400,7 +1421,8 @@ "en": "5 centimes coins are accepted", "nl": "Munten van 5 rappen worden geaccepteerd", "ca": "S'accepten monedes de 5 cèntims", - "de": "5-Centime-Münzen werden akzeptiert" + "de": "5-Centime-Münzen werden akzeptiert", + "es": "Se aceptan monedas de 5 céntimos" }, "hideInAnswer": "_currency!~.*CHF.*" }, @@ -1411,7 +1433,8 @@ "en": "10 centimes coins are accepted", "nl": "Munten van 10 rappen worden geaccepteerd", "ca": "S'accepten monedes de 10 cèntims", - "de": "10-Centime-Münzen werden akzeptiert" + "de": "10-Centime-Münzen werden akzeptiert", + "es": "Se aceptan monedas de 10 céntimos" }, "hideInAnswer": "_currency!~.*CHF.*" }, @@ -1422,7 +1445,8 @@ "en": "20 centimes coins are accepted", "nl": "Munten van 20 rappen worden geaccepteerd", "ca": "S'accepten monedes de 20 cèntims", - "de": "20-Centime-Münzen werden akzeptiert" + "de": "20-Centime-Münzen werden akzeptiert", + "es": "Se aceptan monedas de 20 céntimos" }, "hideInAnswer": "_currency!~.*CHF.*" }, @@ -1433,7 +1457,8 @@ "en": "½ franc coins are accepted", "nl": "Munten van ½ frank worden geaccepteerd", "ca": "S'accepten monedes de ½ franc", - "de": "½-Schweizer Franken-Münzen werden akzeptiert" + "de": "½-Schweizer Franken-Münzen werden akzeptiert", + "es": "Se aceptan monedas de ½ franco" }, "hideInAnswer": "_currency!~.*CHF.*" }, @@ -1444,7 +1469,8 @@ "en": "1 franc coins are accepted", "nl": "Munten van 1 frank worden geaccepteerd", "ca": "S'accepten monedes d'1 franc", - "de": "1-Schweizer Franken-Münzen werden akzeptiert" + "de": "1-Schweizer Franken-Münzen werden akzeptiert", + "es": "Se aceptan monedas de 1 franco" }, "hideInAnswer": "_currency!~.*CHF.*" }, @@ -1455,7 +1481,8 @@ "en": "2 francs coins are accepted", "nl": "Munten van 2 frank worden geaccepteerd", "ca": "S'accepten monedes de 2 francs", - "de": "2-Schweizer Franken-Münzen werden akzeptiert" + "de": "2-Schweizer Franken-Münzen werden akzeptiert", + "es": "Se aceptan monedas de 2 francos" }, "hideInAnswer": "_currency!~.*CHF.*" }, @@ -1466,7 +1493,8 @@ "en": "5 francs coins are accepted", "nl": "Munten van 5 frank worden geaccepteerd", "ca": "S'accepten monedes de 5 francs", - "de": "5-Schweizer Franken-Münzen werden akzeptiert" + "de": "5-Schweizer Franken-Münzen werden akzeptiert", + "es": "Se aceptan monedas de 5 francos" }, "hideInAnswer": "_currency!~.*CHF.*" } @@ -1494,7 +1522,7 @@ "en": "what notes can you use to pay here?", "nl": "Met welke bankbiljetten kan je hier betalen?", "de": "Mit welchen Banknoten kann man hier bezahlen?", - "es": "¿con qué billetes se puede pagar aquí?", + "es": "¿Qué billetes se pueden usar para pagar aquí?", "pl": "Jakimi banknotami można tu zapłacić?", "cs": "Jakými bankovkami zde lze platit?", "ca": "Amb quins bitllets pot pagar aquí?", @@ -1614,7 +1642,8 @@ "en": "10 francs notes are accepted", "nl": "Biljetten van 10 frank worden geaccepteerd", "ca": "S'accepten bitllets de 10 francs", - "de": "10-Schweizer Franken-Scheine werden akzeptiert" + "de": "10-Schweizer Franken-Scheine werden akzeptiert", + "es": "Se aceptan billetes de 10 francos" }, "hideInAnswer": "_currency!~.*CHF.*" }, @@ -1625,7 +1654,8 @@ "en": "20 francs notes are accepted", "nl": "Biljetten van 20 frank worden geaccepteerd", "ca": "S'accepten bitllets de 20 francs", - "de": "20-Schweizer Franken-Scheine werden akzeptiert" + "de": "20-Schweizer Franken-Scheine werden akzeptiert", + "es": "Se aceptan billetes de 20 francos" }, "hideInAnswer": "_currency!~.*CHF.*" }, @@ -1636,7 +1666,8 @@ "en": "50 francs notes are accepted", "nl": "Biljetten van 50 frank worden geaccepteerd", "ca": "S'accepten bitllets de 50 francs", - "de": "50-Schweizer Franken-Scheine werden akzeptiert" + "de": "50-Schweizer Franken-Scheine werden akzeptiert", + "es": "Se aceptan billetes de 50 francos" }, "hideInAnswer": "_currency!~.*CHF.*" }, @@ -1647,7 +1678,8 @@ "en": "100 francs notes are accepted", "nl": "Biljetten van 100 frank worden geaccepteerd", "ca": "S'accepten bitllets de 100 francs", - "de": "100-Schweizer Franken-Scheine werden akzeptiert" + "de": "100-Schweizer Franken-Scheine werden akzeptiert", + "es": "Se aceptan billetes de 100 francos" }, "hideInAnswer": "_currency!~.*CHF.*" }, @@ -1658,7 +1690,8 @@ "en": "200 francs notes are accepted", "nl": "Biljetten van 200 frank worden geaccepteerd", "ca": "S'accepten bitllets de 200 francs", - "de": "200-Schweizer Franken-Scheine werden akzeptiert" + "de": "200-Schweizer Franken-Scheine werden akzeptiert", + "es": "Se aceptan billetes de 200 francos" }, "hideInAnswer": "_currency!~.*CHF.*" }, @@ -1669,7 +1702,8 @@ "en": "1000 francs notes are accepted", "nl": "Biljetten van 1000 frank worden geaccepteerd", "ca": "S'accepten bitllets de 1000 francs", - "de": "1000-Schweizer Franken-Scheine werden akzeptiert" + "de": "1000-Schweizer Franken-Scheine werden akzeptiert", + "es": "Se aceptan billetes de 1000 francos" }, "hideInAnswer": "_currency!~.*CHF.*" } @@ -1697,7 +1731,7 @@ "cs": "Do jakých podlaží tento výtah jezdí?", "nb_NO": "Hvilke etasjer går heisen til?", "nl": "Naar welke verdiepingen gaat deze lift?", - "es": "¿A qué pisos va este ascensor?", + "es": "¿A qué plantas va este ascensor?", "ca": "A quins pisos va aquest ascensor?", "pl": "Na jakie poziomy jedzie ta winda?" }, @@ -1711,7 +1745,7 @@ "cs": "Tento výtah jede do {level} patra", "nb_NO": "Heisen går til etasje {level}", "nl": "Deze lift gaat naar de verdiepingen {level}", - "es": "Este ascensor va a los pisos {level}", + "es": "Este ascensor va a las plantas {level}", "ca": "Aquest ascensor va als pisos {level}", "pl": "Ta winda jedzie na piętra {level}" }, @@ -1732,7 +1766,8 @@ "en": "Multiple, identical objects can be found on floors {repeat_on}.", "nl": "Er zijn verschillende, identieke objecten op verdiepingen {repeat_on}.", "de": "Mehrere identische Objekte können in Geschossen {repeat_on} gefunden werden.", - "cs": "V patrech {repeat_on} lze nalézt více identických objektů." + "cs": "V patrech {repeat_on} lze nalézt více identických objektů.", + "es": "Se pueden encontrar varios objetos idénticos en las plantas {repeat_on}." } }, { @@ -1758,10 +1793,11 @@ "sv": "På vilken nivå finns den här funktionen?", "ja": "この機能は何階にあるのでしょうか?", "fil": "Anong palapag matatagpuan ang tampók?", - "es": "¿En qué nivel se encuentra esta característica?", + "es": "¿En qué planta se encuentra este elemento?", "nb_NO": "Hvilken etasje befinner funksjonen seg i?", "da": "På hvilket niveau er denne funktion placeret?", - "cs": "V jaké úrovni se tento prvek nachází?" + "cs": "V jaké úrovni se tento prvek nachází?", + "uk": "На якому поверсі знаходиться цей об'єкт?" }, "render": { "en": "Located on the {level}th floor", @@ -1781,11 +1817,12 @@ "ja": "{level}階にあります", "sl": "Nahaja se v {level}. nadstropju", "fil": "Natagpuan sa ika-{level} na palapag", - "es": "Localizada en la {level}° planta", + "es": "Situado en la planta {level}", "da": "Beliggende på {level}. etage", "nb_NO": "Ligger i {level} etasje", "id": "Terletak di lantai {level}", - "cs": "Nachází se v {level}. patře" + "cs": "Nachází se v {level}. patře", + "uk": "Розташований на {level} поверсі" }, "freeform": { "key": "level", @@ -1813,9 +1850,10 @@ "id": "Terletak di bawah tanah", "sl": "Nahaja se pod zemljo", "fil": "Nasa ilalim ng lupa", - "es": "Localizado bajo tierra", + "es": "Situado bajo tierra", "da": "Placeret under jorden", - "cs": "Nachází se v podzemí" + "cs": "Nachází se v podzemí", + "uk": "Розташований під землею" }, "hideInAnswer": true }, @@ -1841,9 +1879,10 @@ "id": "Terletak di lantai dasar", "sl": "Nahaja se v pritličju", "fil": "Nasa unang palapag", - "es": "Localizado en la planta baja", + "es": "Situado en la planta baja", "da": "Beliggende i stueetagen", - "cs": "Nachází se v přízemí" + "cs": "Nachází se v přízemí", + "uk": "Розташований на рівні землі" } }, { @@ -1869,9 +1908,10 @@ "id": "Terletak di lantai dasar", "sl": "Nahaja se v pritličju", "fil": "Nasa unang palapag", - "es": "Localizado en la planta baja", + "es": "Situado en la planta baja", "da": "Beliggende i stueetagen", - "cs": "Nachází se v přízemí" + "cs": "Nachází se v přízemí", + "uk": "Розташований на рівні землі" } }, { @@ -1896,9 +1936,10 @@ "ja": "1階にあります", "sl": "Nahaja se v prvem nadstropju", "fil": "Nasa unang palapag", - "es": "Localizado en la primera planta", + "es": "Situado en la primera planta", "da": "Beliggende på første sal", - "cs": "Nachází se v prvním patře" + "cs": "Nachází se v prvním patře", + "uk": "Розташований на другому поверсі" } }, { @@ -1914,12 +1955,13 @@ "sl": "Nahaja se v prvi kletni etaži", "ca": "Localitzat a la planta base", "fil": "Nasa silong", - "es": "Localizada en el primer sótano", + "es": "Situado en el primer sótano", "nb_NO": "Er å finne på første kjellernivå", "pt": "Localizado no primeiro nível da cave", "da": "Beliggende på første kælderetage", "cs": "Nachází se v prvním suterénu", - "pl": "Położone na pierwszym poziomie piwnicy" + "pl": "Położone na pierwszym poziomie piwnicy", + "uk": "Розташований на першому підвальному поверсі" } } ] @@ -1952,7 +1994,7 @@ "then": { "en": "Smoking is allowed", "de": "Rauchen ist erlaubt", - "es": "Está permitido fumar", + "es": "Se permite fumar", "fr": "Il est autorisé de fumer", "pt": "É permitido fumar", "nb_NO": "Røyking er tillatt", @@ -1974,7 +2016,7 @@ "then": { "en": "Smoking is not allowed", "de": "Rauchen ist nicht erlaubt", - "es": "No está permitido fumar", + "es": "No se permite fumar", "fr": "Il est interdit de fumer", "pt": "Não é permitido fumar", "nb_NO": "Røyking forbudt", @@ -1991,7 +2033,7 @@ "then": { "en": "Smoking is allowed outside.", "de": "Rauchen ist draußen erlaubt.", - "es": "Está permitido fumar en el exterior.", + "es": "Se permite fumar en el exterior.", "fr": "Il est autorisé de fumer à l'extérieur.", "pt": "É permitido fumar no exterior.", "nb_NO": "Røyking tillates på utsiden.", @@ -2017,7 +2059,7 @@ "nb_NO": "Har stedet en teleslynge for folk med redusert hørsel?", "nl": "Heeft deze plaats een ringleiding voor slechthorenden?", "ca": "Aquest lloc té un bucle magnètic per a la gent amb dificultats auditives?", - "es": "¿Este lugar tiene un bucle auditivo para personas con discapacidad auditiva?", + "es": "¿Tiene este lugar una bobina de inducción de audio para personas con audición reducida?", "pl": "Czy to miejsce ma pętlę indukcyjną dźwięku dla osób niedosłyszących?" }, "mappings": [ @@ -2033,7 +2075,7 @@ "nl": "Deze plaats heeft een ringleiding", "pl": "To miejsce ma pętlę indukcyjną audio", "ca": "El lloc té un bucle magnètic", - "es": "Este lugar tiene un bucle auditivo" + "es": "Este lugar tiene una bobina de inducción de audio" }, "icon": { "path": "./assets/layers/questions/audio_induction_loop.svg", @@ -2051,7 +2093,7 @@ "nb_NO": "Dette stedet har ikke en teleslynge", "nl": "Deze plaats heeft geen ringleiding", "ca": "El lloc no té un bucle magnètic", - "es": "Este lugar no tiene bucle auditivo", + "es": "Este lugar no tiene una bobina de inducción de audio", "pl": "To miejsce nie ma pętli indukcyjnej dźwięku" }, "icon": { @@ -2078,7 +2120,8 @@ "es": "¿Ofrece este lugar acceso a internet?", "fr": "Cet endroit offre-t-il un accès à Internet ?", "ca": "Aquest lloc ofereix accés a internet?", - "pl": "Czy to miejsce oferuje dostęp do Internetu?" + "pl": "Czy to miejsce oferuje dostęp do Internetu?", + "uk": "Чи є в цьому місці доступ до Інтернету?" }, "mappings": [ { @@ -2096,7 +2139,8 @@ "nb_NO": "Dette stedet tilbyr trådløs tilgang til Internett", "es": "Este lugar ofrece acceso a internet inalámbrico", "ca": "Aquest lloc ofereix accés a internet inalàmbric", - "pl": "To miejsce oferuje bezprzewodowy dostęp do Internetu" + "pl": "To miejsce oferuje bezprzewodowy dostęp do Internetu", + "uk": "У цьому місці є бездротовий доступ до Інтернету" } }, { @@ -2147,10 +2191,11 @@ "id": "Tempat ini menyediakan jaringan internet melalui terminal atau komputer", "cs": "Toto místo nabízí přístup k internetu prostřednictvím terminálu nebo počítače", "nb_NO": "Dette stedet tilbyr tilgang til Internett via en terminal eller datamaskin", - "es": "Este lugar ofrece acceso a internet a través de una terminal o un ordenador", + "es": "Este lugar ofrece acceso a internet a través de un terminal o computadora", "fr": "Cet endroit offre un accès à Internet via un terminal ou un ordinateur", "ca": "Aquest lloc ofereix accés a internet a través d'una terminal o ordinador", - "pl": "To miejsce oferuje dostęp do Internetu za pośrednictwem terminala lub komputera" + "pl": "To miejsce oferuje dostęp do Internetu za pośrednictwem terminala lub komputera", + "uk": "Це місце пропонує доступ до Інтернету через термінал або комп'ютер" } }, { @@ -2167,7 +2212,8 @@ "es": "Este lugar ofrece acceso a internet por cable", "fr": "Cet endroit offre un accès Internet filaire", "ca": "Aquest lloc ofereix accés a internet per cable", - "pl": "To miejsce oferuje przewodowy dostęp do Internetu" + "pl": "To miejsce oferuje przewodowy dostęp do Internetu", + "uk": "Цей заклад пропонує дротовий доступ до Інтернету" } }, { @@ -2175,7 +2221,9 @@ "alsoShowIf": "internet_access=wifi;terminal", "then": { "en": "This place offers both wireless internet and internet access via a terminal or computer", - "de": "Dieser Ort bietet sowohl drahtloses Internet als auch Internetzugang über ein Terminal oder einen Computer" + "de": "Dieser Ort bietet sowohl drahtloses Internet als auch Internetzugang über ein Terminal oder einen Computer", + "es": "Este lugar ofrece internet inalámbrico y acceso a internet a través de un terminal o computadora", + "uk": "Тут можна скористатися як бездротовим інтернетом, так і доступом до інтернету через термінал або комп'ютер" } } ], @@ -2205,7 +2253,7 @@ "nb_NO": "Er det et gebyr for bruk av Internett?", "fr": "L'accès à l'internet est-il payant ?", "ca": "Hi ha que pagar per a accedir a internet?", - "es": "¿Hay que pagar para acceder a internet?", + "es": "¿Hay un cargo por el acceso a internet?", "pl": "Czy dostęp do Internetu jest płatny?" }, "mappings": [ @@ -2222,7 +2270,7 @@ "nb_NO": "Det er et gebyr for tilgang til Internett på dette stedet", "fr": "L'accès à l'internet est payant à cet endroit", "ca": "Aquí hi ha que pagar per a accedir a internet", - "es": "Hay que pagar para acceder a internet en este lugar", + "es": "Hay un cargo por el acceso a internet en este lugar", "pl": "W tym miejscu dostęp do Internetu jest płatny" } }, @@ -2240,7 +2288,8 @@ "es": "El acceso a internet es gratuito en este lugar", "fr": "L'accès à Internet est gratuit dans cet endroit", "ca": "Aquí l'accés a internet és gratuït", - "pl": "Dostęp do Internetu jest w tym miejscu bezpłatny" + "pl": "Dostęp do Internetu jest w tym miejscu bezpłatny", + "uk": "Доступ до Інтернету в цьому місці безкоштовний" } }, { @@ -2254,10 +2303,11 @@ "id": "Jaringan internet tersedia gratis di tempat ini, hanya untuk pelanggan", "cs": "Přístup k internetu je na tomto místě zdarma, pouze pro zákazníky", "nb_NO": "Tilgang til Internett på dette stedet er gratis, men kun for kunder", - "es": "El acceso a internet es gratis en este lugar, solamente para clientes", + "es": "El acceso a internet es gratuito en este lugar, solo para clientes", "fr": "L'accès à l'internet dans cet endroit est gratuit pour les clients uniquement", "ca": "Aquí l'accés a internet és gratuït sols per als clients", - "pl": "Dostęp do Internetu jest w tym miejscu bezpłatny, tylko dla klientów" + "pl": "Dostęp do Internetu jest w tym miejscu bezpłatny, tylko dla klientów", + "uk": "Доступ до Інтернету в цьому місці безкоштовний тільки для клієнтів" } } ] @@ -2277,7 +2327,7 @@ "id": "Apa nama jaringan internet nirkabelnya?", "cs": "Jaký je název sítě pro bezdrátový přístup k internetu?", "nb_NO": "Hva er nettverksnavnet for det trådløse nettverket?", - "es": "¿Cuál es el nombre de red para el acceso inalámbrico a internet?", + "es": "¿Cuál es el nombre de la red para el acceso inalámbrico a internet?", "fr": "Quel est le nom du réseau pour l'accès Internet sans fil ?", "ca": "Quin és el nom de la xarxa per a l'accés inalàmbric a internet?", "pl": "Jaka jest nazwa sieci dla bezprzewodowego dostępu do Internetu?" @@ -2295,7 +2345,7 @@ "cs": "Zadejte název sítě", "nb_NO": "Skriv inn nettverksnavnet", "pa_PK": "نیٹورک دا ناں پایو", - "es": "Introduzca el nombre de red", + "es": "Introduce el nombre de la red", "fr": "Entrez le nom du réseau", "ca": "Intruduixca el nom de la xarxa", "pl": "Wprowadź nazwę sieci" @@ -2317,10 +2367,11 @@ "id": "Nama jaringan ini adalah {internet_access:ssid}", "cs": "Název sítě je {internet_access:ssid}", "nb_NO": "Nettverksnavnet er {internet_access:ssid}", - "es": "El nombre de red es {internet_access:ssid}", + "es": "El nombre de la red es {internet_access:ssid}", "fr": "Le nom du réseau est {internet_access:ssid}", "ca": "El nom de la xarxa és {internet_access:ssid}", - "pl": "Nazwa sieci to {internet_access:ssid}" + "pl": "Nazwa sieci to {internet_access:ssid}", + "uk": "Назва мережі: {internet_access:ssid}" } }, { @@ -2330,7 +2381,7 @@ "ca": "Aquest objecte està il·luminat o emet llum?", "cs": "Je tento objekt osvětlený nebo vyzařuje světlo?", "de": "Wird das Objekt beleuchtet oder leuchtet es selbst?", - "es": "¿Está este objeto iluminado o emite luz?", + "es": "¿Está iluminado este objeto o emite luz?", "fr": "Cet objet est-il éclairé ou émet-il de la lumière ?", "pl": "Czy ten obiekt jest oświetlony lub emituje światło?" }, @@ -2347,7 +2398,7 @@ "ca": "Aquest objecte emet llum i també està il·luminat externament", "cs": "Tento objekt vyzařuje světlo a je osvětlen vnějším zdrojem světla", "de": "Das Objekt leuchtet selbst und wird von außen beleuchtet", - "es": "Este objeto emite luz y es también iluminado por una fuente de luz externa", + "es": "Este objeto emite luz y está iluminado por una fuente de luz externa", "fr": "Cet objet émet de la lumière et est éclairé par l'extérieur", "pl": "Ten obiekt zarówno emituje światło, jak i jest oświetlany przez zewnętrzne źródło światła" } @@ -2374,7 +2425,7 @@ "ca": "Aquest objecte està il·luminat externament, p.e. amb un focus o altres llums", "cs": "Tento objekt je osvětlen zvenčí, např. pomocí reflektoru nebo jiných světel", "de": "Das Objekt wird von außen beleuchtet, z. B. durch Scheinwerfer oder andere Lichter", - "es": "Este objeto recibe iluminación, por ejemplo por un foco u otras luces", + "es": "Este objeto está iluminado externamente, por ejemplo, por un foco u otras luces", "fr": "Cet objet est éclairé par l'extérieur, par ex. par un projecteur ou d'autres lumières", "pl": "Ten obiekt jest oświetlony zewnętrznie, np. przez reflektor lub inne światła" }, @@ -2394,7 +2445,7 @@ "ca": "Aquest objecte no emet llum i no està il·luminat externament", "cs": "Tento objekt nevyzařuje světlo a není osvětlen zvenčí", "de": "Das Objekt wird weder von außen beleuchtet, noch leuchtet es selbst", - "es": "Este objeto ni emite luz ni es iluminado", + "es": "Este objeto no emite luz y no está iluminado externamente", "fr": "Cet objet n'émet pas de lumière et n'est pas éclairé par l'extérieur", "pl": "Obiekt ten nie emituje światła i nie jest oświetlany z zewnątrz" } @@ -2406,7 +2457,8 @@ "question": { "en": "When was this object last surveyed?", "de": "Wann wurde dieses Objekt zuletzt geprüft?", - "cs": "Kdy byl tento objekt naposledy zkoumán?" + "cs": "Kdy byl tento objekt naposledy zkoumán?", + "es": "¿Cuándo fue inspeccionado este objeto por última vez?" }, "freeform": { "key": "survey:date", @@ -2415,7 +2467,8 @@ "render": { "en": "This object was last surveyed on {survey:date}", "de": "Dieses Objekt wurde zuletzt geprüft am {survey:date}", - "cs": "Tento objekt byl naposledy zkoumán dne {survey:date}" + "cs": "Tento objekt byl naposledy zkoumán dne {survey:date}", + "es": "Este objeto fue inspeccionado por última vez el {survey:date}" }, "mappings": [ { @@ -2423,7 +2476,8 @@ "then": { "en": "This object was last surveyed today", "de": "Dieses Objekt wurde heute zuletzt geprüft", - "cs": "Tento objekt byl naposledy zkoumán dnes" + "cs": "Tento objekt byl naposledy zkoumán dnes", + "es": "Este objeto fue inspeccionado por última vez hoy" } } ] @@ -2436,7 +2490,8 @@ "nl": "Wanneer is dit object voor het laatst gecontroleerd?", "pl": "Kiedy ten obiekt został ostatnio sprawdzony?", "ca": "Quan es va comprovar per última vegada aquest objecte?", - "cs": "Kdy byl tento objekt naposledy zkontrolován?" + "cs": "Kdy byl tento objekt naposledy zkontrolován?", + "es": "¿Cuándo se revisó este objeto por última vez?" }, "freeform": { "key": "check_date", @@ -2448,7 +2503,8 @@ "nl": "Dit object is voor het laatst gecontroleerd op {check_date}", "pl": "Ten obiekt był ostatnio sprawdzony {check_date}", "ca": "Aquest objecte es va comprovar per darrera vegada el {check_date}", - "cs": "Tento objekt byl naposledy zkontrolován dne {check_date}" + "cs": "Tento objekt byl naposledy zkontrolován dne {check_date}", + "es": "Este objeto se revisó por última vez el {check_date}" }, "mappings": [ { @@ -2459,7 +2515,8 @@ "nl": "Dit object is vandaag voor het laatst gecontroleerd", "pl": "Ten obiekt został ostatnio sprawdzony dzisiaj", "ca": "Aquest objecte es va comprovar per última vegada avui", - "cs": "Tento objekt byl naposledy zkontrolován dnes" + "cs": "Tento objekt byl naposledy zkontrolován dnes", + "es": "Este objeto se revisó por última vez hoy" } } ] @@ -2472,12 +2529,14 @@ "question": { "en": "Does this shop have a sugar free offering?", "de": "Verkauft das Geschäft zuckerfreie Produkte?", - "cs": "Nabízí tento obchod nabídku bez cukru?" + "cs": "Nabízí tento obchod nabídku bez cukru?", + "es": "¿Tiene esta tienda una oferta de productos sin azúcar?" }, "questionHint": { "en": "This is important for people following a sugar-free diet, such as people with Diabetes", "de": "Dies ist wichtig für Menschen, die eine zuckerfreie Diät einhalten, z. B. für Menschen mit Diabetes", - "cs": "To je důležité pro lidi, kteří dodržují dietu bez cukru, jako jsou lidé s diabetem" + "cs": "To je důležité pro lidi, kteří dodržují dietu bez cukru, jako jsou lidé s diabetem", + "es": "Esto es importante para las personas que siguen una dieta sin azúcar, como las personas con diabetes" }, "mappings": [ { @@ -2485,7 +2544,9 @@ "then": { "en": "This shop only sells sugar free products", "de": "Das Geschäft verkauft ausschließlich zuckerfreie Produkte", - "cs": "Tento obchod prodává pouze produkty bez cukru" + "cs": "Tento obchod prodává pouze produkty bez cukru", + "es": "Esta tienda solo vende productos sin azúcar", + "uk": "У цьому магазині продаються тільки продукти без цукру" } }, { @@ -2493,7 +2554,8 @@ "then": { "en": "This shop has a big sugar free offering", "de": "Das Geschäft verkauft viele zuckerfreie Produkte", - "cs": "Tento obchod má velkou nabídku bez cukru" + "cs": "Tento obchod má velkou nabídku bez cukru", + "es": "Esta tienda tiene una gran oferta de productos sin azúcar" } }, { @@ -2501,7 +2563,8 @@ "then": { "en": "This shop has a limited sugar free offering", "de": "Das Geschäft verkauft wenige zuckerfreie Produkte", - "cs": "Tento obchod má omezenou nabídku bez cukru" + "cs": "Tento obchod má omezenou nabídku bez cukru", + "es": "Esta tienda tiene una oferta limitada de productos sin azúcar" } }, { @@ -2509,7 +2572,8 @@ "then": { "en": "This shop has no sugar free offering", "de": "Das Geschäft verkauft keine zuckerfreie Produkte", - "cs": "Tento obchod nemá žádnou nabídku bez cukru" + "cs": "Tento obchod nemá žádnou nabídku bez cukru", + "es": "Esta tienda no tiene oferta de productos sin azúcar" } } ], @@ -2525,7 +2589,8 @@ "question": { "en": "Does {title()} have a lactose-free offering?", "de": "Verkauft {title()} laktosefreie Produkte?", - "cs": "Má {title()} nabídku bez laktózy?" + "cs": "Má {title()} nabídku bez laktózy?", + "es": "¿Tiene {title()} una oferta sin lactosa?" }, "mappings": [ { @@ -2533,7 +2598,8 @@ "then": { "en": "Only sells lactose free products", "de": "Ausschließlich laktosefreie Produkte", - "cs": "Prodává pouze výrobky bez laktózy" + "cs": "Prodává pouze výrobky bez laktózy", + "es": "Solo vende productos sin lactosa" }, "icon": "./assets/layers/questions/lactose_free.svg" }, @@ -2542,7 +2608,8 @@ "then": { "en": "Big lactose free offering", "de": "Viele laktosefreie Produkte", - "cs": "Velká nabídka bez laktózy" + "cs": "Velká nabídka bez laktózy", + "es": "Gran oferta de productos sin lactosa" }, "icon": "./assets/layers/questions/lactose_free.svg" }, @@ -2551,7 +2618,8 @@ "then": { "en": "Limited lactose free offering", "de": "Wenige laktosefreie Produkte", - "cs": "Omezená nabídka bez laktózy" + "cs": "Omezená nabídka bez laktózy", + "es": "Oferta limitada de productos sin lactosa" } }, { @@ -2559,7 +2627,8 @@ "then": { "en": "No lactose free offering", "de": "Keine laktosefreie Produkte", - "cs": "Žádná nabídka bez laktózy" + "cs": "Žádná nabídka bez laktózy", + "es": "No hay oferta de productos sin lactosa" } } ], @@ -2575,7 +2644,8 @@ "question": { "en": "Does this shop have a gluten free offering?", "de": "Verkauft das Geschäft glutenfreie Produkte?", - "cs": "Má tento obchod bezlepkovou nabídku?" + "cs": "Má tento obchod bezlepkovou nabídku?", + "es": "¿Tiene esta tienda una oferta de productos sin gluten?" }, "mappings": [ { @@ -2583,7 +2653,9 @@ "then": { "en": "This shop only sells gluten free products", "de": "Das Geschäft verkauft ausschließlich glutenfreie Produkte", - "cs": "Tento obchod prodává pouze bezlepkové produkty" + "cs": "Tento obchod prodává pouze bezlepkové produkty", + "es": "Esta tienda solo vende productos sin gluten", + "uk": "Цей магазин продає лише безглютенові продукти" }, "icon": "./assets/layers/questions/glutenfree.svg" }, @@ -2592,7 +2664,8 @@ "then": { "en": "This shop has a big gluten free offering", "de": "Das Geschäft verkauft viele glutenfreie Produkte", - "cs": "Tento obchod má velkou bezlepkovou nabídku" + "cs": "Tento obchod má velkou bezlepkovou nabídku", + "es": "Esta tienda tiene una gran oferta de productos sin gluten" }, "icon": "./assets/layers/questions/glutenfree.svg" }, @@ -2601,7 +2674,8 @@ "then": { "en": "This shop has a limited gluten free offering", "de": "Das Geschäft verkauft wenige glutenfreie Produkte", - "cs": "Tento obchod má omezenou nabídku bezlepkových produktů" + "cs": "Tento obchod má omezenou nabídku bezlepkových produktů", + "es": "Esta tienda tiene una oferta limitada de productos sin gluten" } }, { @@ -2609,7 +2683,8 @@ "then": { "en": "This shop has no gluten free offering", "de": "Das Geschäft verkauft keine glutenfreie Produkte", - "cs": "Tento obchod nemá bezlepkovou nabídku" + "cs": "Tento obchod nemá bezlepkovou nabídku", + "es": "Esta tienda no tiene oferta de productos sin gluten" } } ], @@ -2625,35 +2700,40 @@ "question": { "en": "Does this place offer a vegan option?", "de": "Bietet dieser Ort eine vegane Option an?", - "pl": "Czy to miejsce oferuje opcję wegańską?" + "pl": "Czy to miejsce oferuje opcję wegańską?", + "es": "¿Ofrece este lugar una opción vegana?" }, "mappings": [ { "if": "diet:vegan=only", "then": { "en": "This place only sells vegan products", - "de": "Dieser Ort verkauft nur vegane Produkte" + "de": "Dieser Ort verkauft nur vegane Produkte", + "es": "Este lugar solo vende productos veganos" } }, { "if": "diet:vegan=yes", "then": { "en": "This shop has a big vegan offering", - "de": "Dieser Laden hat ein großes veganes Angebot" + "de": "Dieser Laden hat ein großes veganes Angebot", + "es": "Esta tienda tiene una gran oferta vegana" } }, { "if": "diet:vegan=limited", "then": { "en": "This shop has a limited vegan offering", - "de": "Dieser Laden hat ein begrenztes veganes Angebot" + "de": "Dieser Laden hat ein begrenztes veganes Angebot", + "es": "Esta tienda tiene una oferta vegana limitada" } }, { "if": "diet:vegan=no", "then": { "en": "This shop has no vegan offering", - "de": "Dieser Laden bietet keine veganen Produkte an" + "de": "Dieser Laden bietet keine veganen Produkte an", + "es": "Esta tienda no tiene oferta vegana" } } ] @@ -2676,7 +2756,8 @@ "en": "You just created this element! Thanks for sharing this info with the world and helping people worldwide.", "fr": "Vous venez de créer cet élément ! Merci d'avoir partagé cette information avec le monde et d'aider les autres personnes.", "nl": "Je hebt dit punt net toegevoegd! Bedankt om deze info met iedereen te delen en om de mensen wereldwijd te helpen.", - "cs": "Tento prvek jste právě vytvořili! Díky za sdílení těchto informací se světem a pomoc lidem po celém světě." + "cs": "Tento prvek jste právě vytvořili! Díky za sdílení těchto informací se světem a pomoc lidem po celém světě.", + "es": "¡Acabas de crear este elemento! Gracias por compartir esta información con el mundo y ayudar a personas en todo el mundo." } } ], @@ -2753,7 +2834,8 @@ "text": { "en": "Share this location", "nl": "Deel deze locatie", - "de": "Standort teilen" + "de": "Standort teilen", + "es": "Compartir esta ubicación" } } } @@ -2774,7 +2856,10 @@ "nl": "Scan deze code om deze locatie op een ander apparaat te zien", "de": "QR Code scannen, um diesen Ort auf einem anderen Gerät zu öffnen", "sl": "Skenirajte to kodo, da odprete ta kraj na drugi napravi", - "da": "Skan denne kode for at åbne dette sted på en anden enhed" + "da": "Skan denne kode for at åbne dette sted på en anden enhed", + "hu": "Szkenneld be ezt a kódot, hogy egy másik eszközön is meg tudd nyitni a helyet", + "uk": "Відскануйте цей код, щоб відкрити це місце на іншому пристрої", + "es": "Escanea este código para abrir esta ubicación en otro dispositivo" } } }, @@ -2809,7 +2894,9 @@ "de": "Zuletzt bearbeitet am {_last_edit:timestamp} von {_last_edit:contributor}", "ca": "Darrera edició el {_last_edit:timestamp} per {_last_edit:contributor}", "cs": "Naposledy upravil {_last_edit:timestamp} {_last_edit:contributor}", - "da": "Senest redigeret {_last_edit:timestamp} af {_last_edit:contributor}" + "da": "Senest redigeret {_last_edit:timestamp} af {_last_edit:contributor}", + "hu": "Legutóbb {_last_edit:contributor} szerkesztette ekkor: {_last_edit:timestamp}", + "es": "Última edición el {_last_edit:timestamp} por {_last_edit:contributor}" }, "class": "subtle font-small" } @@ -2834,7 +2921,8 @@ "text": { "en": "Nothing is known about this place. Help by filling out the questions", "nl": "Er is nog niets geweten. Help mee door de vragen te beantwoorden", - "de": "Über diesen Ort ist nichts bekannt. Hilf mit, indem du die Fragen ausfüllst" + "de": "Über diesen Ort ist nichts bekannt. Hilf mit, indem du die Fragen ausfüllst", + "es": "No se sabe nada sobre este lugar. Ayuda completando las preguntas" }, "cssClasses": "subtle m-4 italic flex items-center justify-center" } @@ -2845,7 +2933,8 @@ "question": { "en": "Is {title()} available all around the year?", "nl": "Is {title()} heel het jaar beschikbaar?", - "de": "Ist {title()} rund um das Jahr nutzbar?" + "de": "Ist {title()} rund um das Jahr nutzbar?", + "es": "¿Está {title()} disponible todo el año?" }, "mappings": [ { @@ -2853,7 +2942,8 @@ "then": { "en": "Available all around the year", "nl": "Heel het jaar door beschikbaar", - "de": "Ganzjährig in Betrieb" + "de": "Ganzjährig in Betrieb", + "es": "Disponible todo el año" } }, { @@ -2861,7 +2951,8 @@ "then": { "en": "Only available in summer", "nl": "Enkel in de zomer beschikbaar", - "de": "Nur im Sommer in Betrieb" + "de": "Nur im Sommer in Betrieb", + "es": "Solo disponible en verano" } }, { @@ -2870,7 +2961,8 @@ "then": { "en": "Closed during the winter", "nl": "Gesloten in de winter", - "de": "Im Winter nicht in Betrieb" + "de": "Im Winter nicht in Betrieb", + "es": "Cerrado durante el invierno" } } ] @@ -2879,7 +2971,8 @@ "id": "shower", "question": { "en": "Does this facility offer showers?", - "de": "Gibt es in dieser Einrichtung Duschen?" + "de": "Gibt es in dieser Einrichtung Duschen?", + "es": "¿Ofrece esta instalación duchas?" }, "mappings": [ { @@ -2887,7 +2980,8 @@ "icon": "./assets/layers/shower/shower.svg", "then": { "en": "This facility does have showers with warm water", - "de": "Diese Einrichtung verfügt über Duschen mit warmem Wasser" + "de": "Diese Einrichtung verfügt über Duschen mit warmem Wasser", + "es": "Esta instalación tiene duchas con agua caliente" } }, { @@ -2895,7 +2989,8 @@ "icon": "./assets/layers/shower/shower.svg", "then": { "en": "This facility does have showers, but the water is not heated", - "de": "Diese Einrichtung verfügt zwar über Duschen, aber das Wasser ist nicht beheizt" + "de": "Diese Einrichtung verfügt zwar über Duschen, aber das Wasser ist nicht beheizt", + "es": "Esta instalación tiene duchas, pero el agua no está caliente" } }, { @@ -2903,7 +2998,8 @@ "icon": "./assets/layers/shower/shower.svg", "then": { "en": "This facility does have showers", - "de": "Diese Einrichtung hat Duschen" + "de": "Diese Einrichtung hat Duschen", + "es": "Esta instalación tiene duchas" } }, { @@ -2911,7 +3007,8 @@ "icon": "invalid;./assets/layers/shower/shower.svg", "then": { "en": "This facility does not offer a shower", - "de": "Diese Einrichtung hat keine Duschen" + "de": "Diese Einrichtung hat keine Duschen", + "es": "Esta instalación no ofrece ducha" } } ] @@ -2926,11 +3023,15 @@ "id": "brand", "question": { "en": "Is {title()} part of a bigger brand?", - "de": "Ist {title()} Teil einer großen Marke?" + "de": "Ist {title()} Teil einer großen Marke?", + "es": "¿Forma parte {title()} de una marca más grande?", + "uk": "Чи є {title()} частиною більшого бренду?" }, "render": { "en": "Part of {brand}", - "de": "Teil von {brand}" + "de": "Teil von {brand}", + "es": "Parte de {brand}", + "uk": "Частина {brand}" }, "freeform": { "key": "brand", @@ -2947,11 +3048,36 @@ ], "then": { "en": "Not part of a bigger brand", - "de": "Nicht Teil einer großen Marke" + "de": "Nicht Teil einer großen Marke", + "es": "No forma parte de una marca más grande", + "uk": "Не є частиною великого бренду" + } + } + ] + }, + { + "id": "indoor", + "question": { + "en": "Is this object located indoors?", + "nl": "Bevindt dit object zich binnen?" + }, + "mappings": [ + { + "if": "indoor=yes", + "then": { + "en": "This object is located indoors", + "nl": "Dit object bevindt zich binnen" + } + }, + { + "if": "indoor=no", + "then": { + "en": "This object is located outdoors", + "nl": "Dit object bevindt zich buiten" } } ] } ], "allowMove": false -} +} \ No newline at end of file diff --git a/assets/layers/railway_platforms/railway_platforms.json b/assets/layers/railway_platforms/railway_platforms.json index d51e89e25..546f8b575 100644 --- a/assets/layers/railway_platforms/railway_platforms.json +++ b/assets/layers/railway_platforms/railway_platforms.json @@ -6,7 +6,8 @@ "nl": "Treinperrons", "fr": "Quais de gare", "ca": "Andanes ferroviàries", - "cs": "Železniční nástupiště" + "cs": "Železniční nástupiště", + "es": "Andenes de tren" }, "description": { "en": "Find every platform in the station, and the train routes that use them.", @@ -14,7 +15,8 @@ "nl": "Vind elk perron in het station, en de routes die ze gebruiken.", "fr": "Trouvez tous les quais dans la gare, et les lignes ferroviaires qui les utilisent.", "ca": "Trobeu totes les andanes de l'estació i les rutes de tren que les fan servir.", - "cs": "Najděte všechna nástupiště ve stanici a vlakové trasy, které je používají." + "cs": "Najděte všechna nástupiště ve stanici a vlakové trasy, které je používají.", + "es": "Encuentra cada andén en la estación y las rutas de tren que los utilizan." }, "source": { "osmTags": { @@ -32,7 +34,8 @@ "fr": "Quai", "ca": "Andana", "cs": "Nástupiště", - "pl": "Peron" + "pl": "Peron", + "es": "Andén" }, "mappings": [ { @@ -44,7 +47,8 @@ "fr": "Quai {ref}", "ca": "Andana {ref}", "cs": "Nástupiště {ref}", - "pl": "Peron {ref}" + "pl": "Peron {ref}", + "es": "Andén {ref}" } } ] @@ -85,7 +89,8 @@ "fr": "Quel est le numéro de ce quai ?", "ca": "Quin és el número d'aquesta andana?", "cs": "Jaké je číslo tohoto nástupiště?", - "pl": "Jaki jest numer tego peronu?" + "pl": "Jaki jest numer tego peronu?", + "es": "¿Cuál es el número de este andén?" }, "freeform": { "key": "ref", @@ -97,7 +102,8 @@ "fr": "Numéro de quai", "ca": "Nombre d'andana", "cs": "Číslo nástupiště", - "pl": "Numer peronu" + "pl": "Numer peronu", + "es": "Número de andén" } }, "render": { @@ -107,7 +113,8 @@ "fr": "Quai {ref}", "ca": "Andana {ref}", "cs": "Nástupiště {ref}", - "pl": "Peron {ref}" + "pl": "Peron {ref}", + "es": "Andén {ref}" } }, "level" diff --git a/assets/layers/rainbow_crossings/rainbow_crossings.json b/assets/layers/rainbow_crossings/rainbow_crossings.json index 894b667c8..1cd59d566 100644 --- a/assets/layers/rainbow_crossings/rainbow_crossings.json +++ b/assets/layers/rainbow_crossings/rainbow_crossings.json @@ -5,7 +5,8 @@ "de": "Fußgängerüberwege in Regenbogenfarben", "fr": "Passages avec peinture arc-en-ciel", "ca": "Pasos de vianants pintats amb l'arc de Sant Martí", - "cs": "Přechody s duhovými malbami" + "cs": "Přechody s duhovými malbami", + "es": "Pasos de peatones con pinturas de arcoíris" }, "description": { "en": "A layer showing pedestrian crossings with rainbow paintings", @@ -14,7 +15,7 @@ "ca": "Una capa que mostra els passos de vianants pintats amb de l'arc de Sant Martí", "cs": "Vrstva zobrazující přechody pro chodce s duhovými malbami", "pl": "Warstwa przedstawiająca przejścia dla pieszych z tęczowym malowaniem", - "es": "Una capa que muestra cruces peatonales con pinturas arco iris" + "es": "Una capa que muestra los pasos de peatones con pinturas de arcoíris" }, "source": { "osmTags": { @@ -39,7 +40,8 @@ "pa_PK": "کراسنگ", "fr": "Passage", "ca": "Creuament", - "cs": "Přechod" + "cs": "Přechod", + "es": "Paso de peatones" } }, "pointRendering": [ @@ -81,7 +83,8 @@ "nl": "een oversteekplaats", "fr": "un passage", "ca": "un creuament", - "cs": "přechod" + "cs": "přechod", + "es": "un paso de peatones" }, "tags": [ "highway=footway", @@ -94,7 +97,8 @@ "fr": "Passage piéton", "ca": "Pas de vianants", "cs": "Přechod pro chodce", - "pl": "Przejście dla pieszych" + "pl": "Przejście dla pieszych", + "es": "Paso de peatones" }, "snapToLayer": [ "cycleways_and_roads" @@ -111,7 +115,8 @@ "de": "Hat der Überweg eine Markierung in Regenbogenfarben?", "fr": "Ce passage a-t-il une peinture arc-en-ciel ?", "ca": "Aquest pas de vianants està pintat amb l'arc de Sant Martí?", - "cs": "Má tento přechod duhové malby?" + "cs": "Má tento přechod duhové malby?", + "es": "¿Tiene este paso de peatones pinturas de arcoíris?" }, "mappings": [ { @@ -121,7 +126,8 @@ "de": "Der Überweg hat eine Markierung in Regenbogenfarben", "fr": "Ce passage a une peinture arc-en-ciel", "ca": "Aquest pas de vianants està pintat amb l'arc de Sant Martí", - "cs": "Tento přechod má duhové malby" + "cs": "Tento přechod má duhové malby", + "es": "Este paso de peatones tiene pinturas de arcoíris" }, "icon": { "path": "./assets/themes/rainbow_crossings/logo.svg", @@ -135,7 +141,8 @@ "de": "Hier gibt es kein Markierung in Regenbogenfarben", "fr": "Pas de peinture arc-en-ciel ici", "ca": "No està pintat amb l'arc de Sant Martí", - "cs": "Žádné duhové malby" + "cs": "Žádné duhové malby", + "es": "No hay pinturas de arcoíris aquí" }, "icon": "./assets/themes/rainbow_crossings/crossing.svg" }, @@ -146,7 +153,8 @@ "de": "Hier gibt es kein Markierung in Regenbogenfarben", "fr": "Pas de peinture arc-en-ciel ici", "ca": "No està pintat amb l'arc de Sant Martí", - "cs": "Žádné duhové malby" + "cs": "Žádné duhové malby", + "es": "No hay pinturas de arcoíris aquí" }, "icon": "./assets/themes/rainbow_crossings/crossing.svg", "hideInAnswer": true diff --git a/assets/layers/reception_desk/reception_desk.json b/assets/layers/reception_desk/reception_desk.json index 897a60a9d..782b26c9c 100644 --- a/assets/layers/reception_desk/reception_desk.json +++ b/assets/layers/reception_desk/reception_desk.json @@ -5,14 +5,16 @@ "fr": "Bureaux d'accueil", "de": "Empfangstresen", "ca": "Recepció", - "cs": "Recepční pulty" + "cs": "Recepční pulty", + "es": "Recepciones" }, "description": { "en": "A layer showing where the reception desks are and which asks some accessibility information", "fr": "Une couche montrant où se trouvent les bureaux d'accueil et qui demande des informations d'accessibilité", "de": "Eine Ebene, die Empfangstresen zeigt und Informationen zur Barrierefreiheit abfragt", "ca": "Una capa que mostra on es troben els mostradors de recepció i que demana informació d'accessibilitat", - "cs": "Vrstva, která ukazuje, kde se nacházejí recepce, a která se ptá na některé informace o přístupnosti" + "cs": "Vrstva, která ukazuje, kde se nacházejí recepce, a která se ptá na některé informace o přístupnosti", + "es": "Una capa que muestra dónde están las recepciones y que solicita información de accesibilidad" }, "source": { "osmTags": "amenity=reception_desk" @@ -23,7 +25,8 @@ "fr": "Bureau d'accueil", "de": "Empfangstresen", "ca": "Mostrador de recepció", - "cs": "Recepční pult" + "cs": "Recepční pult", + "es": "Recepción" } }, "pointRendering": [ @@ -56,7 +59,8 @@ "fr": "un bureau d'accueil", "de": "einen Empfangstresen", "ca": "una recepció", - "cs": "recepční pult" + "cs": "recepční pult", + "es": "una recepción" } } ], @@ -71,7 +75,8 @@ "de": "Wie hoch ist der Empfangstresen? ", "ca": "Quina és l'alçada de la recepció? ", "pl": "Jaka jest wysokość tego biurka recepcji? ", - "cs": "Jaká je výška recepčního pultu? " + "cs": "Jaká je výška recepčního pultu? ", + "es": "¿Cuál es la altura del mostrador de recepción? " }, "render": { "en": "The height of the desk is {canonical(desk:height)}", @@ -79,7 +84,8 @@ "de": "Die Höhe des Tresens beträgt {canonical(desk:height)}", "ca": "L'alçada del mostrador és {canonical(desk:height)}", "pl": "Wysokość tego biurka to {canonical(desk:height)}", - "cs": "Výška stolu je {canonical(desk:height)}" + "cs": "Výška stolu je {canonical(desk:height)}", + "es": "La altura del mostrador es {canonical(desk:height)}" }, "freeform": { "key": "desk:height", @@ -91,7 +97,9 @@ "de": "Gemessen vom Boden bis zur untersten nutzbaren Stelle des Tisches", "ca": "Es mesura des del terra fins a la part més baixa utilitzable de l'escriptori", "pl": "Jest to mierzone od podłogi do najniższej użytecznej części biurka", - "cs": "Měří se od podlahy po nejnižší použitelnou část stolu" + "cs": "Měří se od podlahy po nejnižší použitelnou část stolu", + "es": "Esto se mide desde el suelo hasta la parte más baja utilizable del mostrador", + "uk": "Вимірюється від підлоги до найнижчої використовуваної частини столу" } }, "induction-loop" diff --git a/assets/layers/recycling/recycling.json b/assets/layers/recycling/recycling.json index 17d64056a..17d336cec 100644 --- a/assets/layers/recycling/recycling.json +++ b/assets/layers/recycling/recycling.json @@ -572,7 +572,7 @@ "en": "a recycling centre", "nl": "een containerpark (recycling center)", "de": "einen Wertstoffhof", - "es": "un centro de reciclado", + "es": "un centro de reciclaje", "it": "un centro di riciclo", "ca": "un centre de reciclatge", "fr": "une déchèterie", @@ -595,7 +595,9 @@ "it": "Che tipo di raccolta è questo?", "ca": "Quin tipus de reciclatge és aquest?", "fr": "De quel type d’installation de recyclage s’agit-il ?", - "cs": "O jaký typ recyklace se jedná?" + "cs": "O jaký typ recyklace se jedná?", + "uk": "Що це за тип переробки?", + "es": "¿Qué tipo de reciclaje es este?" }, "mappings": [ { @@ -607,11 +609,12 @@ "en": "This is a recycling container", "nl": "Dit is een recyclingcontainer", "de": "Dies ist ein Recycling-Container", - "es": "Esto es un contenedor de reciclaje", + "es": "Este es un contenedor de reciclaje", "it": "Questo è un contenitore per il riciclo di rifiuti", "ca": "Açò és un contenidor de reciclatge", "fr": "C'est un conteneur de recyclage", - "cs": "Jedná se o recyklační kontejner" + "cs": "Jedná se o recyklační kontejner", + "uk": "Це контейнер для вторинної переробки" } }, { @@ -623,11 +626,12 @@ "en": "This is a recycling centre", "nl": "Dit is een recyclingcentrum", "de": "Dies ist ein Wertstoffhof", - "es": "Esto es un centro de reciclaje", + "es": "Este es un centro de reciclaje", "it": "Questo è un centro per la raccola e riciclo di rifiuti", "ca": "Açò és un centre de reciclatge", "fr": "C'est une déchèterie", - "cs": "Jedná se o recyklační centrum" + "cs": "Jedná se o recyklační centrum", + "uk": "Це центр переробки сміття" } }, { @@ -639,7 +643,9 @@ "it": "Contenitore per lo smaltimento del secco", "ca": "Contenidor per a residus no reciclables (fracció resta)", "fr": "Conteneur à déchets pour déchets résiduels", - "cs": "Kontejner na zbytkový odpad" + "cs": "Kontejner na zbytkový odpad", + "uk": "Контейнер для утилізації залишкових відходів", + "es": "Contenedor de residuos para residuos" }, "addExtraTags": [ "recycling:batteries=", @@ -679,7 +685,9 @@ "ca": "Aquest és un punt de recollida. El rebuig es col·loca aquí sense col·locar-lo en un contenidor dedicat.", "de": "Dies ist ein Abholpunkt. Abfälle werden hier abgelegt, ohne sie in einen speziellen Behälter zu geben.", "fr": "C'est un point de ramassage. Les déchets y sont déposés sans être placés dans un conteneur spécifique.", - "cs": "Jedná se o místo vyzvednutí. Odpadní materiál se zde ukládá bez umístění do vyhrazeného kontejneru." + "cs": "Jedná se o místo vyzvednutí. Odpadní materiál se zde ukládá bez umístění do vyhrazeného kontejneru.", + "uk": "Це пункт прийому відходів. Відходи розміщують тут, не поміщаючи їх у спеціальний контейнер.", + "es": "Este es un punto de recogida. El material de desecho se coloca aquí sin colocarlo en un contenedor específico." } }, { @@ -693,7 +701,9 @@ "ca": "Es tracta d’un abocador on s’apilen els residus.", "de": "Dies ist eine Deponie, auf der die Abfälle gelagert werden.", "fr": "C'est une décharge où les déchets sont empilés.", - "cs": "Jedná se o skládku, kde se ukládá odpadní materiál." + "cs": "Jedná se o skládku, kde se ukládá odpadní materiál.", + "uk": "Це звалище, куди складають відходи.", + "es": "Este es un vertedero donde se apila el material de desecho." } } ] @@ -704,11 +714,12 @@ "en": "What is the name of this recycling centre?", "nl": "Wat is de naam van dit recyclagecentrum?", "de": "Wie lautet der Name dieses Wertstoffhofs?", - "es": "¿Cual es el nombre de este centro de reciclaje?", + "es": "¿Cuál es el nombre de este centro de reciclaje?", "it": "Come si chiama questo centro raccolta e riciclo rifiuti?", "ca": "Quin és el nom d’aquest centre de reciclatge?", "fr": "Quel est le nom de cette déchèterie ?", - "cs": "Jak se toto recyklační centrum jmenuje?" + "cs": "Jak se toto recyklační centrum jmenuje?", + "uk": "Як називається цей центр переробки?" }, "render": { "en": "This recycling centre is named {name}", @@ -718,7 +729,8 @@ "it": "Questo centro raccolta e riciclo rifiuti si chiama {name}", "ca": "Aquest centre de reciclatge s'anomena {name}", "fr": "Le nom de cette déchèterie est {name}", - "cs": "Toto recyklační středisko se jmenuje {name}" + "cs": "Toto recyklační středisko se jmenuje {name}", + "uk": "Цей центр переробки має назву {name}" }, "freeform": { "key": "name" @@ -734,7 +746,8 @@ "it": "Questo centro raccolta e riciclo rifiuti non ha un nome specifico", "ca": "Aquest centre de reciclatge no té un nom específic", "fr": "Cette déchèterie n'a pas de nom spécifique", - "cs": "Toto recyklační centrum nemá konkrétní název" + "cs": "Toto recyklační centrum nemá konkrétní název", + "uk": "Цей центр переробки не має конкретної назви" } } ], @@ -746,7 +759,7 @@ "en": "Where is this container located?", "nl": "Waar bevindt deze container zich?", "de": "Wo befindet sich dieser Container?", - "es": "¿Dónde se sitúa este contenedor?", + "es": "¿Dónde está ubicado este contenedor?", "it": "Dove si trova questo contenitore?", "ca": "On es troba aquest contenidor?", "fr": "Où ce conteneur est-il situé ?", @@ -760,7 +773,7 @@ "en": "This is an underground container", "nl": "Dit is een ondergrondse container", "de": "Dies ist ein Unterflurcontainer", - "es": "Este es un contenedor bajo tierra", + "es": "Este es un contenedor subterráneo", "it": "E' un contenitore sotterraneo", "ca": "Aquest contenidor està soterrat", "fr": "C'est un conteneur enterré", @@ -773,11 +786,12 @@ "en": "This container is located indoors", "nl": "Deze container bevindt zich binnen", "de": "Dieser Container befindet sich in einem Gebäude", - "es": "Este contenedor se sitúa en el interior", + "es": "Este contenedor está ubicado en el interior", "it": "Questo contenitore è al chiuso", "ca": "Aquest contenidor està situat a l'interior", "fr": "Ce conteneur est situé en intérieur", - "cs": "Tento kontejner je umístěn uvnitř" + "cs": "Tento kontejner je umístěn uvnitř", + "uk": "Цей контейнер знаходиться в приміщенні" } }, { @@ -786,11 +800,12 @@ "en": "This container is located outdoors", "nl": "Deze container is buiten", "de": "Der Container befindet sich im Freien", - "es": "Este contenedor se sitúa en el exterior", + "es": "Este contenedor está ubicado en el exterior", "it": "Questo contenitore è all'aperto", "ca": "Aquest contenidor està situat a l'aire lliure", "fr": "Ce conteneur est situé à l'extérieur", - "cs": "Tento kontejner je umístěn venku" + "cs": "Tento kontejner je umístěn venku", + "uk": "Цей контейнер розташований на відкритому повітрі" } } ] @@ -805,7 +820,8 @@ "it": "Cosa si può riciclare qui?", "ca": "Què es pot reciclar aquí?", "fr": "Que peut-on recycler ici ?", - "cs": "Co se zde dá recyklovat?" + "cs": "Co se zde dá recyklovat?", + "uk": "Що тут можна переробити?" }, "multiAnswer": true, "mappings": [ @@ -816,11 +832,12 @@ "en": "Batteries can be recycled here", "nl": "Batterijen kunnen hier gerecycled worden", "de": "Batterien können hier recycelt werden", - "es": "Aquí se pueden reciclar baterías", + "es": "Las pilas se pueden reciclar aquí", "it": "Batterie", "ca": "Aquí es poden reciclar piles", "fr": "Les piles et batteries domestiques peuvent être recyclées ici", - "cs": "Baterie se zde dají recyklovat" + "cs": "Baterie se zde dají recyklovat", + "uk": "Батарейки" }, "icon": { "path": "./assets/layers/recycling/batteries.svg", @@ -837,7 +854,9 @@ "it": "Cartoni per bevande", "ca": "Aquí es poden reciclar els cartons de begudes", "fr": "Les briques alimentaires en carton peuvent être recyclées ici", - "cs": "Nápojové kartony se zde dají recyklovat" + "cs": "Nápojové kartony se zde dají recyklovat", + "uk": "Коробки з-під напоїв", + "es": "Los envases de bebidas se pueden reciclar aquí" }, "icon": { "path": "./assets/layers/recycling/beverage_cartons.svg", @@ -851,11 +870,12 @@ "en": "Cans can be recycled here", "nl": "Blikken kunnen hier gerecycled worden", "de": "Dosen können hier recycelt werden", - "es": "Aquí se pueden reciclar latas", + "es": "Las latas se pueden reciclar aquí", "it": "Lattine", "ca": "Aquí es poden reciclar llaunes", "fr": "Les boites de conserve et canettes peuvent être recyclées ici", - "cs": "Plechovky se zde dají recyklovat" + "cs": "Plechovky se zde dají recyklovat", + "uk": "Бляшанки" }, "icon": { "path": "./assets/layers/recycling/cans.svg", @@ -869,11 +889,12 @@ "en": "Clothes can be recycled here", "nl": "Kleren kunnen hier gerecycled worden", "de": "Kleidung kann hier recycelt werden", - "es": "Aquí se puede reciclar ropa", + "es": "La ropa se puede reciclar aquí", "it": "Abiti", "ca": "Aquí es pot reciclar roba", "fr": "Les vêtements peuvent être recyclés ici", - "cs": "Oblečení se zde dá recyklovat" + "cs": "Oblečení se zde dá recyklovat", + "uk": "Одяг" }, "icon": { "path": "./assets/layers/recycling/clothes.svg", @@ -887,11 +908,12 @@ "en": "Cooking oil can be recycled here", "nl": "Frituurvet kan hier gerecycled worden", "de": "Speiseöl kann hier recycelt werden", - "es": "Aquí se puede reciclar aceite de cocina", + "es": "El aceite de cocina se puede reciclar aquí", "it": "Olio da cucina", "ca": "Aquí es pot reciclar oli de cuina", "fr": "Les huiles de friture peuvent être recyclées ici", - "cs": "Olej na vaření zde lze recyklovat" + "cs": "Olej na vaření zde lze recyklovat", + "uk": "Олія для приготування їжі" }, "icon": { "path": "./assets/layers/recycling/cooking_oil.svg", @@ -905,11 +927,12 @@ "en": "Engine oil can be recycled here", "nl": "Motorolie kan hier gerecycled worden", "de": "Motoröl kann hier recycelt werden", - "es": "Aquí se puede reciclar aceite de motor", + "es": "El aceite de motor se puede reciclar aquí", "it": "Olio di motore", "ca": "Aquí es pot reciclar oli de motor", "fr": "Les huiles de moteur peuvent être recyclées ici", - "cs": "Motorový olej zde lze recyklovat" + "cs": "Motorový olej zde lze recyklovat", + "uk": "Моторна олива" }, "icon": { "path": "./assets/layers/recycling/engine_oil.svg", @@ -925,7 +948,9 @@ "de": "Hier können Leuchtstoffröhren recycelt werden", "ca": "Aquí es poden reciclar tub fluroescents", "fr": "Les lampes fluorescentes peuvent être recyclées ici", - "cs": "Zářivky se zde dají recyklovat" + "cs": "Zářivky se zde dají recyklovat", + "uk": "Флуоресцентні лампи", + "es": "Los tubos fluorescentes se pueden reciclar aquí" }, "icon": { "path": "./assets/layers/recycling/fluorescent_tubes.svg", @@ -943,7 +968,8 @@ "ca": "Aquí es poden reciclar residus verds", "fr": "Les déchets verts peuvent être recyclés ici", "cs": "Zelený odpad se zde dá recyklovat", - "es": "Los residuos orgánicos pueden reciclarse aquí" + "es": "Los residuos verdes se pueden reciclar aquí", + "uk": "Зелені відходи" }, "icon": { "path": "./assets/layers/recycling/garden_waste.svg", @@ -957,7 +983,7 @@ "en": "Organic waste can be recycled here", "nl": "Organisch afval kan hier gerecycled worden", "de": "Bio-Abfall kann hier recycelt werden", - "es": "Aquí se pueden reciclar residuos orgánicos", + "es": "Los residuos orgánicos se pueden reciclar aquí", "it": "Umido", "ca": "Ací es poden reciclar residus orgànics", "fr": "Les déchets organiques peuvent être recyclés ici", @@ -976,11 +1002,12 @@ "en": "Glass bottles can be recycled here", "nl": "Glazen flessen kunnen hier gerecycled worden", "de": "Glasflaschen können hier recycelt werden", - "es": "Aquí se pueden reciclar botellas de cristal", + "es": "Las botellas de vidrio se pueden reciclar aquí", "it": "Bottiglie di vetro", "ca": "Aquí es poden reciclar ampolles de vidre", "fr": "Les bouteilles en verre et bocaux peuvent être recyclés ici", - "cs": "Skleněné lahve se zde dají recyklovat" + "cs": "Skleněné lahve se zde dají recyklovat", + "uk": "Скляні пляшки" }, "icon": { "path": "./assets/layers/recycling/glass_bottles.svg", @@ -994,11 +1021,12 @@ "en": "Glass can be recycled here", "nl": "Glas kan hier gerecycled worden", "de": "Glas kann hier recycelt werden", - "es": "Aquí se puede reciclar cristal", + "es": "El vidrio se puede reciclar aquí", "it": "Vetro", "ca": "Aquí es pot reciclar vidre", "fr": "Tout type de verre peut être recyclé ici", - "cs": "Sklo se zde dá recyklovat" + "cs": "Sklo se zde dá recyklovat", + "uk": "Скло" }, "icon": { "path": "./assets/layers/recycling/glass.svg", @@ -1015,7 +1043,8 @@ "ca": "Aquí es poden reciclar bombetes", "fr": "Les lampes basse consommation peuvent être recyclées ici", "cs": "Žárovky se zde dají recyklovat", - "es": "Las bombillas pueden reciclarse aquí" + "es": "Las bombillas se pueden reciclar aquí", + "uk": "Лампочки" }, "icon": { "path": "./assets/layers/recycling/light_bulbs.svg", @@ -1029,11 +1058,12 @@ "en": "Newspapers can be recycled here", "nl": "Kranten kunnen hier gerecycled worden", "de": "Zeitungen können hier recycelt werden", - "es": "Aquí se pueden reciclar periódicos", + "es": "Los periódicos se pueden reciclar aquí", "it": "Giornali", "ca": "Aquí es poden reciclar diaris", "fr": "Les journaux peuvent être recyclés ici", - "cs": "Noviny se zde dají recyklovat" + "cs": "Noviny se zde dají recyklovat", + "uk": "Газети" }, "icon": { "path": "./assets/layers/recycling/newspaper.svg", @@ -1047,11 +1077,12 @@ "en": "Paper can be recycled here", "nl": "Papier kan hier gerecycled worden", "de": "Papier kann hier recycelt werden", - "es": "Aquí se puede reciclar papel", + "es": "El papel se puede reciclar aquí", "it": "Carta", "ca": "Aquí es pot reciclar paper", "fr": "Le papier peut être recyclé ici", - "cs": "Papír se zde dá recyklovat" + "cs": "Papír se zde dá recyklovat", + "uk": "Папір" }, "icon": { "path": "./assets/layers/recycling/paper.svg", @@ -1065,11 +1096,12 @@ "en": "Plastic bottles can be recycled here", "nl": "Plastic flessen kunnen hier gerecycled worden", "de": "Plastikflaschen können hier recycelt werden", - "es": "Aquí se pueden reciclar botellas de plástico", + "es": "Las botellas de plástico se pueden reciclar aquí", "it": "Bottiglie di platica", "ca": "Aquí es poden reciclar ampolles de plàstic", "fr": "Les bouteilles en plastique peuvent être recyclées ici", - "cs": "Plastové lahve se zde dají recyklovat" + "cs": "Plastové lahve se zde dají recyklovat", + "uk": "Пластикові пляшки" }, "icon": { "path": "./assets/layers/recycling/plastic_bottles.svg", @@ -1083,11 +1115,12 @@ "en": "Plastic packaging can be recycled here", "nl": "Plastic verpakking kan hier gerecycled worden", "de": "Kunststoffverpackungen können hier recycelt werden", - "es": "Aquí se pueden reciclar embalajes plásticos", + "es": "Los envases de plástico se pueden reciclar aquí", "it": "Confezioni di plastica", "ca": "Aquí es poden reciclar envasos de plàstic", "fr": "Les emballages plastiques peuvent être recyclés ici", - "cs": "Plastové obaly se zde dají recyklovat" + "cs": "Plastové obaly se zde dají recyklovat", + "uk": "Пластикова упаковка" }, "icon": { "path": "./assets/layers/recycling/plastic_packaging.svg", @@ -1101,12 +1134,13 @@ "en": "Plastic can be recycled here", "nl": "Plastic kan hier gerecycled worden", "de": "Kunststoff kann hier recycelt werden", - "es": "Aquí se puede reciclar plástico", + "es": "El plástico se puede reciclar aquí", "it": "Plastica", "ca": "Aquí es pot reciclar plàstic", "fr": "Le plastique peut être recyclé ici", "pl": "Plastik może być tutaj poddany recyklingowi", - "cs": "Plast se zde dá recyklovat" + "cs": "Plast se zde dá recyklovat", + "uk": "Пластик" }, "icon": { "path": "./assets/layers/recycling/plastic.svg", @@ -1119,7 +1153,9 @@ "then": { "en": "Plastic packaging, metal packaging and drink cartons (PMD) can be recycled here", "nl": "Plastic verpakkingen, metalen verpakkingen en drankpakken kunnen hier gerecycled worden", - "de": "Kunststoffverpackungen, Metallverpackungen und Getränkekartons (Tetrapak) können hier recycelt werden" + "de": "Kunststoffverpackungen, Metallverpackungen und Getränkekartons (Tetrapak) können hier recycelt werden", + "uk": "Пластикова упаковка, металева упаковка та упаковка для напоїв (PMD)", + "es": "Los envases de plástico, los envases metálicos y los envases de bebidas (PMD) se pueden reciclar aquí" }, "icon": { "path": "./assets/layers/recycling/pmd.svg", @@ -1135,7 +1171,9 @@ "de": "Druckerpatronen können hier recycelt werden", "ca": "Els cartutxos d'impressora es poden reciclar aquí", "fr": "Les cartouches d'imprimante peuvent être recyclées ici", - "cs": "Náplně do tiskáren lze recyklovat zde" + "cs": "Náplně do tiskáren lze recyklovat zde", + "uk": "Картриджі для принтерів", + "es": "Los cartuchos de impresora se pueden reciclar aquí" }, "icon": { "path": "./assets/layers/recycling/printer_cartridges.svg", @@ -1150,10 +1188,11 @@ "nl": "Oud metaal kan hier gerecycled worden", "ca": "Aquí es pot reciclar ferralla", "de": "Metallschrott kann hier recycelt werden", - "es": "Aquí se puede reciclar chatarra", + "es": "La chatarra se puede reciclar aquí", "it": "Rottami metallici", "fr": "La ferraille peut être recyclée ici", - "cs": "Kovový šrot lze zde recyklovat" + "cs": "Kovový šrot lze zde recyklovat", + "uk": "Металобрухт" }, "icon": { "path": "./assets/layers/recycling/scrap_metal.svg", @@ -1167,11 +1206,12 @@ "en": "Shoes can be recycled here", "nl": "Schoenen kunnen hier gerecycled worden", "de": "Schuhe können hier recycelt werden", - "es": "El calzado se puede reciclar aquí", + "es": "Los zapatos se pueden reciclar aquí", "it": "Scarpe", "ca": "Aquí es poden reciclar sabates", "fr": "Les chaussures peuvent être recyclées ici", - "cs": "Boty se zde dají recyklovat" + "cs": "Boty se zde dají recyklovat", + "uk": "Взуття" }, "icon": { "path": "./assets/layers/recycling/shoes.svg", @@ -1188,7 +1228,9 @@ "it": "Piccoli elettrodomestici", "ca": "Aquí es poden reciclar petits electrodomèstics", "fr": "Les petits appareils électriques peuvent être recyclés ici", - "cs": "Drobné elektrospotřebiče se zde dají recyklovat" + "cs": "Drobné elektrospotřebiče se zde dají recyklovat", + "uk": "Малі електричні прилади", + "es": "Los pequeños aparatos eléctricos se pueden reciclar aquí" }, "icon": { "path": "./assets/layers/recycling/small_electrical_appliances.svg", @@ -1205,7 +1247,8 @@ "it": "Piccoli elettrodomestici", "ca": "Aquí es poden reciclar petits electrodomèstics", "fr": "Les petits appareils électriques peuvent être recyclés ici", - "cs": "Drobné elektrospotřebiče se zde dají recyklovat" + "cs": "Drobné elektrospotřebiče se zde dají recyklovat", + "es": "Los pequeños aparatos eléctricos se pueden reciclar aquí" }, "hideInAnswer": true, "icon": { @@ -1223,7 +1266,9 @@ "it": "Aghi e oggetti appuntiti", "ca": "Aquí es poden reciclar agulles", "fr": "Les aiguilles peuvent être recyclées ici", - "cs": "Jehly se zde dají recyklovat" + "cs": "Jehly se zde dají recyklovat", + "uk": "Голки", + "es": "Las agujas se pueden reciclar aquí" }, "icon": { "path": "./assets/layers/recycling/needles.svg", @@ -1240,7 +1285,9 @@ "it": "Secco", "ca": "Ací es pot reciclar el rebuig", "fr": "Les autres déchets peuvent être déposés ici", - "cs": "Zbytkový odpad zde lze recyklovat" + "cs": "Zbytkový odpad zde lze recyklovat", + "uk": "Залишкові відходи", + "es": "Los residuos se pueden reciclar aquí" }, "icon": { "path": "./assets/layers/waste_disposal/waste_disposal.svg", @@ -1257,7 +1304,9 @@ "ca": "Aquí es poden reciclar bicicletes", "de": "Fahrräder können hier recycelt werden", "fr": "Les vélos peuvent être recyclés ici", - "cs": "Kola se zde dají recyklovat" + "cs": "Kola se zde dají recyklovat", + "uk": "Велосипеди", + "es": "Las bicicletas se pueden reciclar aquí" }, "icon": { "path": "./assets/layers/recycling/bicycles.svg", @@ -1272,7 +1321,7 @@ "en": "This recycling facility is operated by {operator}", "nl": "Deze recyclingfaciliteit wordt beheerd door {operator}", "de": "Die Recyclingeinrichtung wird betrieben von {operator}", - "es": "Esta infraestructura de reciclado la opera {operator}", + "es": "Esta instalación de reciclaje está operada por {operator}", "it": "Questa struttura di raccola e riciclo è gestita da {operator}", "ca": "Aquesta infraestuctura de reciclatge està operada per {operator}", "fr": "Ce point de recyclage est géré par {operator}", @@ -1282,7 +1331,7 @@ "en": "What company operates this recycling facility?", "nl": "Wat is de beheerder van deze recyclingfaciliteit?", "de": "Welches Unternehmen betreibt diese Recyclinganlage?", - "es": "¿Que empresa opera esta facilidad de reciclado?", + "es": "¿Qué empresa opera esta instalación de reciclaje?", "it": "Quale azienda gestisce questo impianto di raccolta e riciclo?", "ca": "Quina empresa opera aquesta infraestructura de reciclatge?", "fr": "Quelle entreprise gère ce point de recyclage ?", @@ -1311,10 +1360,11 @@ "en": "What are the opening hours of this recycling facility?", "nl": "Wat zijn de openingstijden van deze recyclingfaciliteit?", "de": "Wie sind die Öffnungszeiten dieser Recyclinganlage?", - "es": "¿A qué horas abre esta facilidad de reciclado?", + "es": "¿Cuál es el horario de apertura de esta instalación de reciclaje?", "it": "Quali sono gli orari di apertura di questo impianto di raccolta e riciclo?", "ca": "Quin és l'horari d'obertura d'aquesta instal·lació de reciclatge?", - "cs": "Jaká je otevírací doba tohoto recyklačního zařízení?" + "cs": "Jaká je otevírací doba tohoto recyklačního zařízení?", + "uk": "Які години роботи цього об'єкту з переробки?" } } }, @@ -1326,7 +1376,8 @@ "de": "Wer kann diese Recyclinganlage nutzen?", "ca": "Qui pot utilitzar aquesta instal·lació de reciclatge?", "fr": "Qui peut utiliser ce point de recyclage ?", - "cs": "Kdo může toto recyklační zařízení využívat?" + "cs": "Kdo může toto recyklační zařízení využívat?", + "es": "¿Quién puede usar esta instalación de reciclaje?" }, "mappings": [ { @@ -1337,7 +1388,8 @@ "de": "Alle können diese Recyclinganlage nutzen", "ca": "Tothom pot utilitzar aquesta instal·lació de reciclatge", "fr": "Tout le monde peut utiliser ce point de recyclage", - "cs": "Toto recyklační zařízení může využívat každý" + "cs": "Toto recyklační zařízení může využívat každý", + "es": "Cualquiera puede usar esta instalación de reciclaje" } }, { @@ -1348,7 +1400,8 @@ "de": "Nur Anwohnende können diese Recyclinganlage nutzen", "ca": "Només els residents poden utilitzar aquesta instal·lació de reciclatge", "fr": "Seuls les résidents peuvent utiliser ce point de recyclage", - "cs": "Toto recyklační zařízení mohou využívat pouze obyvatelé" + "cs": "Toto recyklační zařízení mohou využívat pouze obyvatelé", + "es": "Solo los residentes pueden usar esta instalación de reciclaje" } }, { @@ -1359,7 +1412,8 @@ "de": "Diese Recyclinganlage ist nur für den privaten Gebrauch bestimmt", "ca": "Aquesta instal·lació de reciclatge és només per a ús privat", "fr": "Ce point de recyclage est réservé à un usage privé", - "cs": "Toto recyklační zařízení je určeno pouze pro soukromé použití" + "cs": "Toto recyklační zařízení je určeno pouze pro soukromé použití", + "es": "Esta instalación de reciclaje es solo para uso privado" } } ], @@ -1373,7 +1427,8 @@ "de": "Diese Recyclinganlage kann von {access} genutzt werden", "ca": "Aquesta instal·lació de reciclatge la pot utilitzar {access}", "fr": "Ce point de recyclage peut être utilisé par {access}", - "cs": "Toto recyklační zařízení mohou využívat {access}" + "cs": "Toto recyklační zařízení mohou využívat {access}", + "es": "Esta instalación de reciclaje puede ser usada por {access}" } }, "survey_date" @@ -1390,7 +1445,7 @@ "ca": "Tots els tipus de reciclatge", "cs": "Všechny typy recyklace", "de": "Alle Recyclingarten", - "es": "Todos los tipos de reciclado", + "es": "Todos los tipos de reciclaje", "fr": "Tout type de recyclage", "it": "Tutti i tipi di rifiuti", "nl": "Alle recyclingtypes" @@ -1406,7 +1461,7 @@ "en": "Only public access", "nl": "Enkel publiek toegankelijke afvalcontainers", "de": "Nur öffentliche Recyclingeinrichtungen", - "es": "Todos los tipos de reciclado", + "es": "Solo acceso público", "it": "Solo accesso pubblico", "ca": "Només amb accés públic", "fr": "Accès public uniquement", @@ -1420,7 +1475,7 @@ "en": "Recycling of batteries", "nl": "Recycling van batterijen", "de": "Recycling von Batterien", - "es": "Reciclaje de baterías", + "es": "Reciclaje de pilas", "it": "Riciclo di batterie", "ca": "Reciclatge de piles", "fr": "Recyclage de piles et batteries domestiques", @@ -1436,7 +1491,8 @@ "it": "Riciclo di confezioni per bevande", "ca": "Reciclatge de cartrons de begudes", "fr": "Recyclage d'emballage de boissons", - "cs": "Recyklace nápojových kartonů" + "cs": "Recyklace nápojových kartonů", + "es": "Reciclaje de envases de bebidas" }, "osmTags": "recycling:beverage_cartons=yes" }, @@ -1499,7 +1555,8 @@ "de": "Recycling von Leuchtstoffröhren", "ca": "Reciclatge de tubs fluorescents", "fr": "Recyclage des lampes fluorescentes", - "cs": "Recyklace zářivek" + "cs": "Recyklace zářivek", + "es": "Reciclaje de tubos fluorescentes" }, "osmTags": "recycling:fluorescent_tubes=yes" }, @@ -1512,7 +1569,7 @@ "ca": "Reciclatge de residus verds", "fr": "Recyclage des déchets verts", "cs": "Recyklace zeleného odpadu", - "es": "Reciclaje de residuos orgánicos" + "es": "Reciclaje de residuos verdes" }, "osmTags": { "or": [ @@ -1526,7 +1583,7 @@ "en": "Recycling of glass bottles", "nl": "Recycling van glazen flessen", "de": "Recycling von Glasflaschen", - "es": "Reciclaje de botellas de cristal", + "es": "Reciclaje de botellas de vidrio", "it": "Riciclo di bottiglie di vetro", "ca": "Reciclatge d'ampolles de vidre", "fr": "Recyclage des bouteilles en verre et des bocaux", @@ -1539,7 +1596,7 @@ "en": "Recycling of glass", "nl": "Recycling van glas", "de": "Recycling von Glas", - "es": "Reciclaje de cristal", + "es": "Reciclaje de vidrio", "it": "Riciclo di vetro", "ca": "Reciclatge de vidre", "fr": "Recyclage de tout type de verre", @@ -1590,7 +1647,7 @@ "en": "Recycling of plastic bottles", "nl": "Recycling van plastic flessen", "de": "Recycling von Plastikflaschen", - "es": "Reciclaje de botellas de papel", + "es": "Reciclaje de botellas de plástico", "it": "Riciclo di bottiglie di plastica", "ca": "Reciclatge d'ampolles de plàstic", "fr": "Recyclage des bouteilles en plastique", @@ -1603,7 +1660,7 @@ "en": "Recycling of plastic packaging", "nl": "Recycling van plastic verpakking", "de": "Recycling von Kunststoffverpackungen", - "es": "Reciclaje de embalajes plásticos", + "es": "Reciclaje de envases de plástico", "it": "Riciclo di confezioni di plastica", "ca": "Reciclatge d'envasos de plàstic", "fr": "Recyclage des emballages en plastique", @@ -1642,7 +1699,7 @@ "en": "Recycling of small electrical appliances", "nl": "Recycling van kleine elektrische apparaten", "de": "Recycling von Elektrokleingeräten", - "es": "Reciclaje de pequeños electrodomésticos", + "es": "Reciclaje de pequeños aparatos eléctricos", "it": "Riciclo di piccoli elettrodomestici", "ca": "Reciclatge de petits electrodomèstics", "fr": "Recyclage des petits appareils électriques", @@ -1663,7 +1720,8 @@ "it": "Riciclo di secco", "ca": "Reciclatge del rebuig", "fr": "Recyclage des autres déchets", - "cs": "Recyklace zbytkového odpadu" + "cs": "Recyklace zbytkového odpadu", + "es": "Reciclaje de residuos" }, "osmTags": "recycling:waste=yes" }, @@ -1675,7 +1733,8 @@ "de": "Recycling von Druckerpatronen", "it": "Riciclo di secco", "fr": "Recyclage des cartouches d'imprimante", - "cs": "Recyklace náplní do tiskáren" + "cs": "Recyklace náplní do tiskáren", + "es": "Reciclaje de cartuchos de impresora" }, "osmTags": "recycling:printer_cartridges=yes" }, @@ -1686,7 +1745,8 @@ "ca": "Reciclatge de bicicletes", "de": "Recycling von Fahrrädern", "fr": "Recyclage des vélos", - "cs": "Recyklace jízdních kol" + "cs": "Recyklace jízdních kol", + "es": "Reciclaje de bicicletas" }, "osmTags": "recycling:bicycles=yes" }, @@ -1694,7 +1754,8 @@ "question": { "en": "Recycling of plastic packaging, metal packaging and drink cartons (PMD)", "nl": "Recycling van plastic verkpakkingen, metalen verkpakkingen en drankpakken (PMD)", - "de": "Recycling von Kunststoffverpackungen, Metallverpackungen und Getränkekartons (Tetrapak)" + "de": "Recycling von Kunststoffverpackungen, Metallverpackungen und Getränkekartons (Tetrapak)", + "es": "Reciclaje de envases de plástico, envases metálicos y envases de bebidas (PMD)" }, "osmTags": "recycling:pmd=yes" } @@ -1714,7 +1775,8 @@ "da": "Kun offentlig adgang", "ca": "Només amb accés públic", "fr": "Accès public uniquement", - "cs": "Pouze veřejný přístup" + "cs": "Pouze veřejný přístup", + "es": "Solo acceso público" }, "osmTags": { "or": [ diff --git a/assets/layers/route_marker/route_marker.json b/assets/layers/route_marker/route_marker.json index f47c22eba..314d83702 100644 --- a/assets/layers/route_marker/route_marker.json +++ b/assets/layers/route_marker/route_marker.json @@ -2,11 +2,13 @@ "id": "route_marker", "name": { "en": "Route markers", - "de": "Routenmarkierungen" + "de": "Routenmarkierungen", + "es": "Marcadores de ruta" }, "description": { "en": "Route markers are small markers often found along official hiking/cycling/riding/skiing routes to indicate the direction of the route.", - "de": "Routenmarkierungen sind kleine Markierungen, die häufig entlang offizieller Wander-/Rad-/Reit-/Skirouten zu finden sind, um die Richtung der Route anzuzeigen." + "de": "Routenmarkierungen sind kleine Markierungen, die häufig entlang offizieller Wander-/Rad-/Reit-/Skirouten zu finden sind, um die Richtung der Route anzuzeigen.", + "es": "Los marcadores de ruta son pequeños marcadores que a menudo se encuentran a lo largo de rutas oficiales de senderismo/ciclismo/equitación/esquí para indicar la dirección de la ruta." }, "source": { "osmTags": "information=route_marker" @@ -15,7 +17,8 @@ "title": { "render": { "en": "Route marker", - "de": "Routenmarker" + "de": "Routenmarker", + "es": "Marcador de ruta" } }, "pointRendering": [ @@ -35,7 +38,8 @@ { "title": { "en": "a route marker", - "de": "ein Routenmarker" + "de": "ein Routenmarker", + "es": "un marcador de ruta" }, "tags": [ "tourism=information", @@ -43,7 +47,8 @@ ], "description": { "en": "A route marker is a small marker often found along official hiking/cycling/riding/skiing routes to indicate the direction of the route.", - "de": "Ein Routenmarker ist ein kleiner Marker, der oft entlang offizieller Wander-/Fahrrad-/Reit-/Skirouten zu finden ist, um die Richtung der Route anzuzeigen." + "de": "Ein Routenmarker ist ein kleiner Marker, der oft entlang offizieller Wander-/Fahrrad-/Reit-/Skirouten zu finden ist, um die Richtung der Route anzuzeigen.", + "es": "Un marcador de ruta es un pequeño marcador que a menudo se encuentra a lo largo de rutas oficiales de senderismo/ciclismo/equitación/esquí para indicar la dirección de la ruta." }, "exampleImages": [ "./assets/layers/route_marker/bicycle_route_marker.jpg", @@ -57,7 +62,8 @@ "id": "type", "question": { "en": "For what kind of route is this marker?", - "de": "Für welche Art von Route ist dieser Marker?" + "de": "Für welche Art von Route ist dieser Marker?", + "es": "¿Para qué tipo de ruta es este marcador?" }, "multiAnswer": true, "mappings": [ @@ -66,7 +72,8 @@ "ifnot": "biycle=", "then": { "en": "This is a route marker for a bicycle route.", - "de": "Dies ist ein Routenmarker für eine Fahrradstrecke." + "de": "Dies ist ein Routenmarker für eine Fahrradstrecke.", + "es": "Este es un marcador de ruta para una ruta ciclista." } }, { @@ -74,7 +81,8 @@ "ifnot": "hiking=", "then": { "en": "This is a route marker for a hiking route.", - "de": "Dies ist ein Routenmarker für eine Wanderroute." + "de": "Dies ist ein Routenmarker für eine Wanderroute.", + "es": "Este es un marcador de ruta para una ruta de senderismo." } }, { @@ -82,7 +90,8 @@ "ifnot": "mtb=", "then": { "en": "This is a route marker for a mountain bike route.", - "de": "Dies ist ein Routenmarker für eine Mountainbikestrecke." + "de": "Dies ist ein Routenmarker für eine Mountainbikestrecke.", + "es": "Este es un marcador de ruta para una ruta de bicicleta de montaña." } }, { @@ -90,7 +99,8 @@ "ifnot": "horse=", "then": { "en": "This is a route marker for a horse riding route.", - "de": "Dies ist ein Routenmarker für eine Reitroute." + "de": "Dies ist ein Routenmarker für eine Reitroute.", + "es": "Este es un marcador de ruta para una ruta ecuestre." } }, { @@ -98,7 +108,8 @@ "ifnot": "ski=", "then": { "en": "This is a route marker for a ski route.", - "de": "Dies ist ein Routenmarker für eine Skiroute." + "de": "Dies ist ein Routenmarker für eine Skiroute.", + "es": "Este es un marcador de ruta para una ruta de esquí." } } ] diff --git a/assets/layers/school/school.json b/assets/layers/school/school.json index 39a4ef0af..1d51351dd 100644 --- a/assets/layers/school/school.json +++ b/assets/layers/school/school.json @@ -6,7 +6,8 @@ "de": "Grund- und weiterführende Schulen", "fr": "Écoles primaires et secondaires", "ca": "Escoles de primària i secundària", - "cs": "Základní a střední školy" + "cs": "Základní a střední školy", + "es": "Escuelas primarias y secundarias" }, "description": "Schools giving primary and secondary education and post-secondary, non-tertiary education. Note that this level of education does not imply an age of the pupiles", "source": { @@ -31,7 +32,8 @@ "fr": "École {name}", "pl": "Szkoła {name}", "ca": "Escola {name}", - "cs": "Škola {name}" + "cs": "Škola {name}", + "es": "Escuela {name}" } }, "pointRendering": [ @@ -79,11 +81,13 @@ "de": "eine Grundschule oder weiterführende Schule", "fr": "une école primaire ou secondaire", "ca": "una escola de primària o secundària", - "cs": "základní nebo střední škola" + "cs": "základní nebo střední škola", + "es": "una escuela primaria o secundaria" } } ], "tagRenderings": [ + "images", { "render": { "en": "This school is named {name}", @@ -92,7 +96,9 @@ "fr": "Cet établissement scolaire s'appelle {name}", "ca": "L'escola s'anomena {name}", "pl": "Ta szkoła nazywa się {name}", - "cs": "Tato škola se jmenuje {name}" + "cs": "Tato škola se jmenuje {name}", + "es": "Esta escuela se llama {name}", + "uk": "Ця школа називається {name}" }, "question": { "en": "What is the name of this school?", @@ -101,13 +107,16 @@ "fr": "Quel est le nom de cet établissement scolaire?", "ca": "Quin és el nom d'aquesta escola?", "pl": "Jaką nazwę ma ta szkoła?", - "cs": "Jak se jmenuje tato škola?" + "cs": "Jak se jmenuje tato škola?", + "es": "¿Cómo se llama esta escuela?", + "uk": "Як називається ця школа?" }, "freeform": { "key": "name" }, "id": "school-name" }, + "contact", { "id": "capacity", "question": { @@ -116,7 +125,9 @@ "nl": "Ten hoogste hoeveel studenten kunnen er les volgen in deze school?", "fr": "Combien d'élèves peuvent s'inscrire au maximum dans cette école ?", "ca": "Quants alumnes poden matricular-se com a màxim a aquesta escola?", - "cs": "Kolik studentů se může na tuto školu maximálně zapsat?" + "cs": "Kolik studentů se může na tuto školu maximálně zapsat?", + "es": "¿Cuántos alumnos como máximo pueden matricularse en esta escuela?", + "uk": "Скільки учнів можна зарахувати до цієї школи?" }, "render": { "en": "This school can enroll at most {capacity} students", @@ -124,7 +135,9 @@ "de": "Diese Schule kann höchstens {capacity} Schüler aufnehmen", "fr": "Cette école peut accueillir au maximum {capacity} étudiants", "ca": "A aquesta escola poden inscriure's com a màxim {capacity} estudiants", - "cs": "Tato škola může přijmout maximálně {capacity} studentů" + "cs": "Tato škola může přijmout maximálně {capacity} studentů", + "es": "Esta escuela puede matricular como máximo {capacity} alumnos", + "uk": "Ця школа може зарахувати максимум {capacity} учнів" }, "freeform": { "key": "capacity", @@ -140,8 +153,10 @@ "de": "Welches Bildungsniveau wird an dieser Schule vermittelt?", "fr": "Quel est le niveau d'enseignement dispensé dans cette école ?", "ca": "Quin nivell d'educació s'imparteix en aquesta escola?", - "cs": "Jaký stupeň vzdělání se na této škole poskytuje?" + "cs": "Jaký stupeň vzdělání se na této škole poskytuje?", + "es": "¿Qué nivel de educación se imparte en esta escuela?" }, + "filter": true, "mappings": [ { "if": "school=kindergarten", @@ -151,7 +166,8 @@ "de": "Es handelt sich um eine Schule mit einer Kindergartenabteilung, in der kleine Kinder eine Ausbildung erhalten, die auf das Lesen und Schreiben vorbereitet.", "fr": "C'est une école avec une section maternelle où les jeunes enfants reçoivent un enseignement qui prépare à la lecture et à l'écriture.", "ca": "Aquesta és una escola amb una secció d’educació infantil on els més petits reben una educació que prepara la lectura i l’escriptura.", - "cs": "Jedná se o školu s mateřskou školou, kde se malé děti vzdělávají v oblasti čtení a psaní." + "cs": "Jedná se o školu s mateřskou školou, kde se malé děti vzdělávají v oblasti čtení a psaní.", + "es": "Esta es una escuela con una sección de jardín de infancia donde los niños pequeños reciben educación que prepara la lectura y la escritura." } }, { @@ -162,7 +178,8 @@ "de": "In dieser Schule lernt man grundlegende Fähigkeiten wie Lesen, Schreiben und Rechnen.
Schüler besuchen die Schule in der Regel im Alter von 6 bis 12 Jahren
", "fr": "C'est une école où l'on apprend les compétences primaires telles que l'alphabétisation de base et les compétences numériques..
Les élèves s'inscrivent généralement de 6 à 12 ans.
", "ca": "Aquesta és una escola on s'aprèn competències primàries com ara l'alfabetització bàsica i les habilitats numèriques.
Els alumnes solen matricular-se des dels 6 anys fins als 12 anys
", - "cs": "Jedná se o školu, kde se člověk učí základním dovednostem, jako je základní gramotnost a numerické dovednosti.
Žáci se obvykle zapisují ve věku od 6 let do 12 let
" + "cs": "Jedná se o školu, kde se člověk učí základním dovednostem, jako je základní gramotnost a numerické dovednosti.
Žáci se obvykle zapisují ve věku od 6 let do 12 let
", + "es": "Esta es una escuela donde se aprenden habilidades primarias como la alfabetización básica y las habilidades numéricas.
Los alumnos normalmente se matriculan desde los 6 años hasta los 12 años
" } }, { @@ -173,7 +190,8 @@ "de": "Dies ist eine weiterführende Schule, die alle Jahrgangsstufen anbietet", "fr": "C'est une école secondaire qui offre toutes les classes", "ca": "Aquesta és una escola secundària que ofereix tots els graus", - "cs": "Jedná se o střední školu, která nabízí všechny ročníky" + "cs": "Jedná se o střední školu, která nabízí všechny ročníky", + "es": "Esta es una escuela secundaria que ofrece todos los grados" } }, { @@ -184,7 +202,8 @@ "de": "Dies ist eine weiterführende Schule, die nicht alle Klassenstufen hat, aber erste und zweite Klasse anbietet", "fr": "C'est une école secondaire qui n'a pas toutes les classes, mais qui offre la première et la deuxième années", "ca": "Aquesta és una escola secundària que no ofereix tots els graus, però ofereix primer i segon grau", - "cs": "Toto je střední škola, která nemá všechny ročníky, ale nabízí první a druhý ročník" + "cs": "Toto je střední škola, která nemá všechny ročníky, ale nabízí první a druhý ročník", + "es": "Esta es una escuela secundaria que no tiene todos los grados, pero ofrece el primero y segundo grado" } }, { @@ -195,7 +214,8 @@ "de": "Dies ist eine weiterführende Schule, die nicht alle Klassenstufen hat, aber dritte und vierte Klasse anbietet", "fr": "C'est une école secondaire qui n'a pas toutes les classes, mais qui offre la troisième et la quatrième années", "ca": "Aquesta és una escola secundària que no ofereix tots els graus, però ofereix tercer i quart grau", - "cs": "Toto je střední škola, která nemá všechny ročníky, ale nabízí třetí a čtvrtý ročník" + "cs": "Toto je střední škola, která nemá všechny ročníky, ale nabízí třetí a čtvrtý ročník", + "es": "Esta es una escuela secundaria que no tiene todos los grados, pero ofrece el tercero y cuarto grado" } }, { @@ -206,7 +226,8 @@ "de": "Dies ist eine weiterführende Schule, die nicht alle Klassenstufen hat, aber fünfte und sechste Klasse anbietet", "fr": "C'est une école secondaire qui n'a pas toutes les classes, mais qui offre la cinquième et la sixième années", "ca": "Aquesta és una escola secundària que no ofereix tots els graus, però ofereix cinqué i sisé grau", - "cs": "Toto je střední škola, která nemá všechny ročníky, ale nabízí pátý a šestý ročník" + "cs": "Toto je střední škola, která nemá všechny ročníky, ale nabízí pátý a šestý ročník", + "es": "Esta es una escuela secundaria que no tiene todos los grados, pero ofrece el quinto y sexto grado" } }, { @@ -217,7 +238,8 @@ "de": "Diese Schule bietet eine postsekundäre Ausbildung (z. B. ein siebtes oder achtes Spezialisierungsjahr)", "fr": "Cette école propose un enseignement post-secondaire (par exemple une septième ou huitième année de spécialisation)", "ca": "Aquesta escola ofereix educació post secundària (p.e. un sèptim o vuité any d'especialitzció)", - "cs": "Tato škola nabízí pomaturitní studium (např. sedmý nebo osmý ročník oboru)" + "cs": "Tato škola nabízí pomaturitní studium (např. sedmý nebo osmý ročník oboru)", + "es": "Esta escuela ofrece educación postsecundaria (por ejemplo, un séptimo u octavo año de especialización)" } } ], @@ -231,7 +253,8 @@ "de": "Welche Geschlechter können sich an dieser Schule anmelden?", "fr": "Quels genres de personnes peuvent s'inscrire dans cette école ?", "ca": "Quins gèneres poden inscriure's a aquesta escola?", - "cs": "Které pohlaví se může na tuto školu přihlásit?" + "cs": "Které pohlaví se může na tuto školu přihlásit?", + "es": "¿Qué géneros pueden matricularse en esta escuela?" }, "mappings": [ { @@ -242,7 +265,8 @@ "de": "Sowohl Jungen als auch Mädchen können sich hier anmelden und gemeinsam unterrichtet werden", "fr": "Les garçons et les filles peuvent s'inscrire ici et suivre des cours ensemble", "ca": "Els dos, nois i noies poden inscriure's aquí i prendre classes junts", - "cs": "Mohou se sem zapsat chlapci i dívky a mají společné hodiny" + "cs": "Mohou se sem zapsat chlapci i dívky a mají společné hodiny", + "es": "Tanto niños como niñas pueden matricularse aquí y tener clases juntos" } }, { @@ -253,7 +277,8 @@ "de": "Hier können sich sowohl Jungen als auch Mädchen anmelden, aber sie werden getrennt unterrichtet (z. B. in verschiedenen Klassenräumen oder zu verschiedenen Zeiten)", "fr": "Les garçons et les filles peuvent s'inscrire ici, mais ils sont séparés (par exemple, ils ont des cours dans des classes différentes ou à des heures différentes)", "ca": "Els dos, nois i noies poden inscriure's aquí, però estan separats (p. e. prenen les classes a diferents aules o diferentes hores)", - "cs": "Mohou se sem zapsat chlapci i dívky, ale jsou odděleni (např. mají hodiny v různých třídách nebo v různých časech)" + "cs": "Mohou se sem zapsat chlapci i dívky, ale jsou odděleni (např. mají hodiny v různých třídách nebo v různých časech)", + "es": "Tanto niños como niñas pueden matricularse aquí, pero están separados (por ejemplo, tienen clases en diferentes aulas o en diferentes horarios)" } }, { @@ -264,7 +289,8 @@ "de": "Dies ist eine reine Jungenschule", "fr": "C'est une école réservée aux garçons", "ca": "Aquesta és una escola exclusivament per a nois", - "cs": "Toto je škola určená pouze pro chlapce" + "cs": "Toto je škola určená pouze pro chlapce", + "es": "Esta es una escuela solo para niños" } }, { @@ -275,7 +301,8 @@ "de": "Dies ist eine reine Mädchenschule", "fr": "C'est une école réservée aux filles", "ca": "Aquesta és una escola exclusivament per a noies", - "cs": "Toto je škola pouze pro dívky" + "cs": "Toto je škola pouze pro dívky", + "es": "Esta es una escuela solo para niñas" } } ] @@ -284,76 +311,87 @@ "id": "pedagogy", "question": { "en": "What educational theory is applied on this school?", - "de": "Welche Bildungstheorie wird auf dieser Schule angewendet?" + "de": "Welche Bildungstheorie wird auf dieser Schule angewendet?", + "es": "¿Qué teoría educativa se aplica en esta escuela?" }, "mappings": [ { "if": "pedagogy=mainstream", "then": { "en": "This school does not use a specific pedagogy", - "de": "Diese Schule benutzt keine spezifische Pädagogik" + "de": "Diese Schule benutzt keine spezifische Pädagogik", + "es": "Esta escuela no utiliza una pedagogía específica" } }, { "if": "pedagogy=montessori", "then": { "en": "This school uses the Montessori method of education", - "de": "Diese Schule nutzt die Montessori Methode der Bildung" + "de": "Diese Schule nutzt die Montessori Methode der Bildung", + "es": "Esta escuela utiliza el método Montessori de educación" } }, { "if": "pedagogy=freinet", "then": { "en": "This school is associated with the Freinet Modern School Movement", - "de": "Diese Schule ist mit der Freinet Modern School Movement verbunden" + "de": "Diese Schule ist mit der Freinet Modern School Movement verbunden", + "es": "Esta escuela está asociada con el Movimiento de Escuelas Modernas Freinet" } }, { "if": "pedagogy=jenaplan", "then": { "en": "This school uses the Jenaplan teaching concept", - "de": "Diese Schule nutzt das Lehrkonzept von Jenaplan" + "de": "Diese Schule nutzt das Lehrkonzept von Jenaplan", + "es": "Esta escuela utiliza el concepto de enseñanza Jenaplan" } }, { "if": "pedagogy=waldorf", "then": { "en": "This school uses the Steiner/Waldorf educational philosophy", - "de": "Diese Schule nutzt die Steiner/Waldorfer Bildungsphilosophie" + "de": "Diese Schule nutzt die Steiner/Waldorfer Bildungsphilosophie", + "es": "Esta escuela utiliza la filosofía educativa Waldorf/Steiner" } }, { "if": "pedagogy=dalton", "then": { "en": "This school uses the Dalton plan teaching concept", - "de": "Diese Schule nutzt das Dalton Plan Lehrkonzept" + "de": "Diese Schule nutzt das Dalton Plan Lehrkonzept", + "es": "Esta escuela utiliza el concepto de enseñanza del plan Dalton" } }, { "if": "pedagogy=outdoor", "then": { "en": "This school uses outdoor learning", - "de": "Diese Schule nutzt Outdoor-Lernen" + "de": "Diese Schule nutzt Outdoor-Lernen", + "es": "Esta escuela utiliza el aprendizaje al aire libre" } }, { "if": "pedagogy=reggio_emilia", "then": { "en": "This school uses the Reggio Emilia approach", - "de": "Diese Schule nutzt den Reggio Emilia-Ansatz" + "de": "Diese Schule nutzt den Reggio Emilia-Ansatz", + "es": "Esta escuela utiliza el enfoque Reggio Emilia" } }, { "if": "pedagogy=sudbury", "then": { "en": "This school uses the Sudbury system", - "de": "Diese Schule nutzt das Sudbury-System" + "de": "Diese Schule nutzt das Sudbury-System", + "es": "Esta escuela utiliza el sistema Sudbury" } } ], "render": { "en": "This school uses {pedagogy}", - "de": "Diese Schule benutzt {pedagogy}" + "de": "Diese Schule benutzt {pedagogy}", + "es": "Esta escuela utiliza {pedagogy}" }, "freeform": { "key": "pedagogy" @@ -368,7 +406,8 @@ "de": "Richtet sich diese Schule an Schüler mit besonderem Förderbedarf? Über welche strukturellen Einrichtungen verfügt diese Schule?", "fr": "Est-ce que cet établissement scolaire s'adresse aux étudiants ayant des besoins particuliers? Quels types d'installation est-ce que cet établissement possède?", "ca": "Aquesta escola es dirigeix a estudiants amb necessitats especials? Quines instal·lacions estructurals té aquesta escola?", - "cs": "Zaměřuje se tato škola na studenty se speciálními potřebami? Jaké stavební vybavení má tato škola?" + "cs": "Zaměřuje se tato škola na studenty se speciálními potřebami? Jaké stavební vybavení má tato škola?", + "es": "¿Está esta escuela dirigida a alumnos con necesidades especiales? ¿Qué instalaciones estructurales tiene esta escuela?" }, "multiAnswer": true, "render": { @@ -377,7 +416,8 @@ "de": "Diese Schule verfügt über Einrichtungen für Schüler mit {school:for}", "fr": "Cet établissement scolaire a des installations pour étudiants ayant {school:for}", "ca": "Aquesta escola té instal·lacions per a estudiants amb {school:for}", - "cs": "Tato škola má zařízení pro studenty se {school:for}" + "cs": "Tato škola má zařízení pro studenty se {school:for}", + "es": "Esta escuela cuenta con instalaciones para alumnos con {school:for}" }, "freeform": { "key": "school:for", @@ -392,7 +432,8 @@ "de": "Es handelt sich um eine Schule, in der die Schüler Fähigkeiten auf ihrem altersgemäßen Niveau erlernen.
Es gibt wenig oder keine speziellen Einrichtungen für Schüler mit besonderen Bedürfnissen oder die Einrichtungen sind ad-hoc
", "fr": "C'est un établissement scolaire où les étudiants acquièrent des compétences à un niveau adapté à leur âge.
Il y a peu ou pas d'adaptations spéciales pour aider les étudiants ayant des besoins particuliers, ou les installations sont ad-hoc
Remark: isn't it contradictory to say there's no special facility + the facilities are ad-hoc?", "ca": "Aquesta és una escola on els estudiants estudien habilitats al nivell adequat per a la seva edat.
Hi ha poques o cap instal·lació especial per atendre els estudiants amb necessitats especials o les instal·lacions són ad-hoc
", - "cs": "Jedná se o školu, kde studenti studují dovednosti na úrovni odpovídající jejich věku.
Existuje málo nebo žádná speciální zařízení pro studenty se speciálními potřebami nebo zařízení jsou ad hoc
" + "cs": "Jedná se o školu, kde studenti studují dovednosti na úrovni odpovídající jejich věku.
Existuje málo nebo žádná speciální zařízení pro studenty se speciálními potřebami nebo zařízení jsou ad hoc
", + "es": "Esta es una escuela donde los alumnos estudian habilidades en su nivel adecuado para su edad.
Hay pocas o ninguna instalación especial para atender a alumnos con necesidades especiales o las instalaciones son improvisadas
" }, "hideInAnswer": true }, @@ -404,7 +445,8 @@ "de": "Dies ist eine Schule für Schüler ohne besondere Bedürfnisse
Dazu gehören auch Schüler, die den Kursen mit kleinen Ad-hoc-Maßnahmen folgen können
", "fr": "C'est un établissement scolaire pour étudiants sans besoins particuliers.
Sont inclus les étudiants qui peuvent suivre les cours avec de petites adaptations.
", "ca": "Aquesta és una escola per a estudiants sense necessitats especials
Açò inclou alumnes que poden seguir les classes amb petites mesures
", - "cs": "Toto je škola pro studenty bez speciálních potřeb
To zahrnuje studenty, kteří mohou absolvovat kurzy s malými, ad hoc měřeními
" + "cs": "Toto je škola pro studenty bez speciálních potřeb
To zahrnuje studenty, kteří mohou absolvovat kurzy s malými, ad hoc měřeními
", + "es": "Esta es una escuela para alumnos sin necesidades especiales
Esto incluye alumnos que pueden seguir los cursos con pequeñas medidas improvisadas
" } }, { @@ -415,7 +457,8 @@ "de": "Dies ist eine Schule, in der Erwachsene auf dem angegebenen Niveau unterrichtet werden.", "fr": "C'est un établissement où des adultes sont formés au niveau mentionné.", "ca": "Aquesta és una escola on els adults reben competències al nivell especificat.", - "cs": "Jedná se o školu, kde se dospělí učí dovednostem na stanovené úrovni." + "cs": "Jedná se o školu, kde se dospělí učí dovednostem na stanovené úrovni.", + "es": "Esta es una escuela donde se enseñan habilidades a adultos en el nivel especificado." } }, { @@ -427,7 +470,8 @@ "fr": "C'est un établissement scolaire pour les étudiants ayant un trouble du spectre de l’autisme (TSA)", "ca": "Aquesta és una escola per a estudiants amb autisme", "pl": "To jest szkoła dla uczniów z autyzmem", - "cs": "Jedná se o školu pro studenty s autismem" + "cs": "Jedná se o školu pro studenty s autismem", + "es": "Esta es una escuela para alumnos con autismo" } }, { @@ -438,7 +482,8 @@ "de": "Dies ist eine Schule für Schüler mit Lernschwierigkeiten", "fr": "C'est un établissement scolaire pour les étudiants ayant des troubles d’apprentissage", "ca": "Aquesta és una escola per a estudiants amb dificultats de l'aprenentatge", - "cs": "Jedná se o školu pro žáky s poruchami učení" + "cs": "Jedná se o školu pro žáky s poruchami učení", + "es": "Esta es una escuela para alumnos con dificultades de aprendizaje" } }, { @@ -449,7 +494,8 @@ "de": "Dies ist eine Schule für blinde oder sehbehinderte Schüler", "fr": "C'est un établissement scolaire pour les étudiants aveugles ou malvoyants", "ca": "Aquesta és una escola per a estudiants cecs o estudiants amb deficiències visuals", - "cs": "Jedná se o školu pro nevidomé studenty nebo studenty se zrakovým postižením" + "cs": "Jedná se o školu pro nevidomé studenty nebo studenty se zrakovým postižením", + "es": "Esta es una escuela para alumnos ciegos o con discapacidad visual" } }, { @@ -461,7 +507,8 @@ "fr": "C'est un établissement scolaire pour les étudiants sourds ou malentendants", "ca": "Aquesta és una escola per a estudiants sords o amb dificultats auditives", "pl": "To jest szkoła dla uczniów głuchych i słabosłyszących", - "cs": "Jedná se o školu pro neslyšící studenty nebo studenty se sluchovým postižením" + "cs": "Jedná se o školu pro neslyšící studenty nebo studenty se sluchovým postižením", + "es": "Esta es una escuela para alumnos sordos o con discapacidad auditiva" } }, { @@ -473,7 +520,8 @@ "fr": "C'est un établissement scolaire pour les étudiants en situation de handicap", "ca": "Aquesta és una escola per a estudiants amb discapacitats", "pl": "To jest szkoła dla uczniów z niepełnosprawnościami", - "cs": "Jedná se o školu pro studenty se zdravotním postižením" + "cs": "Jedná se o školu pro studenty se zdravotním postižením", + "es": "Esta es una escuela para alumnos con discapacidad" } }, { @@ -485,7 +533,8 @@ "fr": "C'est un établissement scolaire pour les étudiants ayant des besoins particuliers", "ca": "Aquesta és una escola per a estudiants amb necessitats especials", "pl": "To jest szkoła dla uczniów z specjalnymi potrzebami", - "cs": "Jedná se o školu pro žáky se speciálními potřebami" + "cs": "Jedná se o školu pro žáky se speciálními potřebami", + "es": "Esta es una escuela para alumnos con necesidades especiales" } } ], @@ -493,12 +542,10 @@ "en": "Ad-hoc measures are not enough to count as a special-needs school", "nl": "Ad-hoc maatregelen zijn niet voldoende ", "de": "Ad-hoc-Maßnahmen reichen nicht aus, um als Förderschule zu gelten", - "cs": "Ad hoc opatření nestačí k tomu, aby se škola považovala za školu pro žáky se speciálními vzdělávacími potřebami" + "cs": "Ad hoc opatření nestačí k tomu, aby se škola považovala za školu pro žáky se speciálními vzdělávacími potřebami", + "es": "Las medidas improvisadas no son suficientes para considerarse una escuela de necesidades especiales" } }, - "website", - "phone", - "email", { "id": "school-language", "render": { @@ -511,7 +558,8 @@ "ca": "En aquesta escola s'utilitzen els idiomes següents:{list()}", "fr": "Ces langues sont utilisées dans cette école :{list()}", "pl": "Następujące języki są używane w tej szkole:{list()}", - "cs": "V této škole se používají následující jazyky:{list()}" + "cs": "V této škole se používají následující jazyky:{list()}", + "es": "Los siguientes idiomas se utilizan en esta escuela:{list()}" }, "render_single_language": { "en": "{language()} is the main language of this school", @@ -519,7 +567,8 @@ "ca": "{language()} és la llengua principal d'aquesta escola", "fr": "{language()} est la langue principale dans cette école", "pl": "Język {language()} jest głównym językiem używanym w tej szkole", - "cs": "{language()} je hlavním jazykem této školy" + "cs": "{language()} je hlavním jazykem této školy", + "es": "{language()} es el idioma principal de esta escuela" }, "question": { "en": "What is the main language of this school?
What language is spoken with the students in non-language related courses and with the administration?
", @@ -527,7 +576,9 @@ "de": "Was ist die Hauptsprache dieser Schule?
Welche Sprache wird mit den Schülern in den nicht sprachbezogenen Kursen und mit der Verwaltung gesprochen?
", "fr": "Quelle est la langue principale de cette école ?
Quelle langue est parlée avec les élèves des cours non linguistiques et avec l'administration ?
", "ca": "Quina és la llengua principal d'aquesta escola?
Quina llengua es parla amb els estudiants en classes no relacionades amb la llengua i l'administració?
", - "cs": "Jaký je hlavní jazyk této školy?
Jakým jazykem se mluví se studenty v nejazykových kurzech a administrativou?
" + "cs": "Jaký je hlavní jazyk této školy?
Jakým jazykem se mluví se studenty v nejazykových kurzech a administrativou?
", + "es": "¿Cuál es el idioma principal de esta escuela?
¿Qué idioma se habla con los alumnos en los cursos no relacionados con el idioma y con la administración?
", + "uk": "Яка основна мова цієї школи?
Якою мовою розмовляють зі студентами на немовних курсах та з адміністрацією?
" }, "no_known_languages": { "en": "The main language of this school is unknown", @@ -535,7 +586,8 @@ "de": "Die Unterrichtssprache der Schule ist unbekannt", "fr": "La langue principale de cette école est inconnue", "ca": "La llengua principal d'aquesta escola és desconeguda", - "cs": "Hlavní jazyk této školy není znám" + "cs": "Hlavní jazyk této školy není znám", + "es": "Se desconoce el idioma principal de esta escuela" } } } diff --git a/assets/layers/search/search.json b/assets/layers/search/search.json index 3beeb12c1..902ee466c 100644 --- a/assets/layers/search/search.json +++ b/assets/layers/search/search.json @@ -2,7 +2,9 @@ "id": "search", "description": { "en": "Priviliged layer showing the search results", - "de": "Priorisierte Ebene, die Suchergebnissen anzeigt" + "de": "Priorisierte Ebene, die Suchergebnissen anzeigt", + "cs": "Soukromá vrstva zobrazující výsledky hledání", + "es": "Capa privilegiada que muestra los resultados de la búsqueda" }, "source": "special", "title": "{display_name}", @@ -11,7 +13,9 @@ "id": "intro", "render": { "en": "Search result", - "de": "Suchergebnis" + "de": "Suchergebnis", + "cs": "Výsledek hledání", + "es": "Resultado de búsqueda" } }, { diff --git a/assets/layers/selected_element/selected_element.json b/assets/layers/selected_element/selected_element.json index de494e96a..dc2b3ace2 100644 --- a/assets/layers/selected_element/selected_element.json +++ b/assets/layers/selected_element/selected_element.json @@ -6,7 +6,8 @@ "de": "Hebt das aktuell ausgewählte Element hervor. Überschreiben Sie diese Ebene, um unterschiedliche Farben zu erhalten", "fr": "Met en surbrillance l'élément actuellement sélectioné. Surcharger cette couche pour avoir d'autres couleurs.", "ca": "Ressalta l'element seleccionat actualment. Anul·leu aquesta capa per tenir diferents colors", - "cs": "Zvýrazní aktuálně vybraný prvek. Přepište tuto vrstvu, aby měla různé barvy" + "cs": "Zvýrazní aktuálně vybraný prvek. Přepište tuto vrstvu, aby měla různé barvy", + "es": "Resalta el elemento seleccionado actualmente. Sobrescribe esta capa para tener colores diferentes" }, "source": "special", "pointRendering": [ diff --git a/assets/layers/shelter/shelter.json b/assets/layers/shelter/shelter.json index 6b7b55ceb..0cfa27c57 100644 --- a/assets/layers/shelter/shelter.json +++ b/assets/layers/shelter/shelter.json @@ -6,12 +6,14 @@ "nl": "Schuilplaats", "ca": "Refugi", "fr": "Abri", - "cs": "Přístřešek" + "cs": "Přístřešek", + "es": "Refugio" }, "description": { "en": "Layer showing shelter structures", "de": "Eine Ebene, die verschiedene Bauformen von Unterständen zeigt", - "cs": "Vrstva zobrazující přístřešky" + "cs": "Vrstva zobrazující přístřešky", + "es": "Capa que muestra estructuras de refugio" }, "source": { "osmTags": { @@ -27,7 +29,8 @@ "de": "Unterstand", "nl": "Schuilplaats", "ca": "Refugi", - "cs": "Přístřešek" + "cs": "Přístřešek", + "es": "Refugio" } }, "pointRendering": [ @@ -55,7 +58,9 @@ "en": "This is a shelter at a public transport stop.", "de": "Das ist ein Unterstand an einer Haltestelle für öffentliche Verkehrsmittel.", "nl": "Dit is een schuilplaats bij een halte voor openbaar vervoer.", - "cs": "Jedná se o přístřešek u zastávky MHD." + "cs": "Jedná se o přístřešek u zastávky MHD.", + "uk": "Це притулок на зупинці громадського транспорту.", + "es": "Este es un refugio en una parada de transporte público." } }, { @@ -63,7 +68,9 @@ "then": { "en": "This is a shelter protecting from rain at a picnic site.", "de": "Dies ist ein Unterstand zum Schutz vor Regen auf einem Picknickplatz.", - "cs": "Jedná se o přístřešek chránící před deštěm na piknikovém místě." + "cs": "Jedná se o přístřešek chránící před deštěm na piknikovém místě.", + "uk": "Це накриття, що захищає від дощу на місці для пікніка.", + "es": "Este es un refugio que protege de la lluvia en un área de picnic." } }, { @@ -71,7 +78,9 @@ "then": { "en": "This is a gazebo.", "de": "Das ist ein offener Gartenpavillon.", - "cs": "Toto je altán." + "cs": "Toto je altán.", + "uk": "Це альтанка.", + "es": "Este es un cenador." } }, { @@ -80,7 +89,9 @@ "en": "This is a small shelter, primarily intended for short breaks. Usually found in the mountains or alongside roads.", "de": "Dies ist ein kleiner Unterstand, der vor allem für kurze Pausen gedacht ist. Normalerweise findet man ihn in Bergen oder an Straßen.", "cs": "Jedná se o malý přístřešek, primárně určený pro krátké přestávky. Obvykle se vyskytuje v horách nebo podél silnic.", - "ca": "Es tracta d'un petit refugi, principalment destinat a descansos curts. Normalment es troba a les muntanyes o al costat de les carreteres." + "ca": "Es tracta d'un petit refugi, principalment destinat a descansos curts. Normalment es troba a les muntanyes o al costat de les carreteres.", + "uk": "Це невеликий притулок, призначений насамперед для коротких перерв. Зазвичай знаходиться в горах або вздовж доріг.", + "es": "Este es un refugio pequeño, principalmente destinado a descansos cortos. Normalmente se encuentra en las montañas o al lado de las carreteras." } }, { @@ -89,7 +100,9 @@ "en": "This is a shed with 3 walls, primarily intended for camping.", "de": "Es handelt sich um einen an 3 Seiten geschlossenen Unterstand, der in erster Linie zum Campen gedacht ist.", "ca": "Es tracta d'un cobert amb 3 parets, destinat principalment a l'acampada.", - "cs": "Jedná se o přístřešek se 3 stěnami, primárně určený pro kempování." + "cs": "Jedná se o přístřešek se 3 stěnami, primárně určený pro kempování.", + "uk": "Це сарай з 3-ма стінами, в першу чергу призначений для кемпінгу.", + "es": "Este es un cobertizo con 3 paredes, principalmente destinado para acampar." } }, { @@ -97,7 +110,9 @@ "then": { "en": "This is a pavilion", "de": "Das ist ein Pavillon", - "cs": "Toto je pavilon" + "cs": "Toto je pavilon", + "uk": "Це павільйон", + "es": "Este es un pabellón" } }, { @@ -110,12 +125,16 @@ "de": "Um welche Art von Unterstand handelt es sich?", "nl": "Wat voor schuilplaats is dit?", "ca": "Quin tipus de refugi és aquest?", - "cs": "Co je to za přístřešek?" + "cs": "Co je to za přístřešek?", + "uk": "Що це за притулок?", + "es": "¿Qué tipo de refugio es este?" }, "render": { "en": "Shelter type: {shelter_type}", "de": "Art des Unterstands: {shelter_type}", - "cs": "Typ přístřešku: {shelter_type}" + "cs": "Typ přístřešku: {shelter_type}", + "uk": "Тип притулку: {shelter_type}", + "es": "Tipo de refugio: {shelter_type}" }, "freeform": { "key": "shelter_type", @@ -129,6 +148,7 @@ }, "snapName": { "en": "a shelter", - "de": "ein Unterstand" + "de": "ein Unterstand", + "es": "un refugio" } } diff --git a/assets/layers/shops/shops.json b/assets/layers/shops/shops.json index 785fd43dc..c1f74b12a 100644 --- a/assets/layers/shops/shops.json +++ b/assets/layers/shops/shops.json @@ -215,14 +215,15 @@ "description": { "en": "You can specify later on what this shop sells.", "ca": "Podeu especificar més endavant el que ven aquesta botiga.", - "cs": "Přidat nový obchod", + "cs": "Později můžete zadat, co tento obchod prodává.", "de": "Sie können später angeben, was das Geschäft verkauft.", "eo": "Enmeti novan butikon", - "es": "Puedes especificar más adelante lo que vende esta tienda.", + "es": "Puedes especificar más tarde qué vende esta tienda.", "fr": "Ajouter un nouveau magasin", "ja": "新しい店を追加する", "nl": "Voeg een nieuwe winkel toe", - "ru": "Добавить новый магазин" + "ru": "Добавить новый магазин", + "uk": "Пізніше ви можете уточнити, що саме продає цей магазин." } } ], @@ -237,9 +238,10 @@ "ja": "このお店の名前は何ですか?", "nl": "Wat is de naam van deze winkel?", "de": "Wie ist der Name dieses Geschäfts?", - "es": "¿Cual es el nombre de esta tienda?", + "es": "¿Cómo se llama esta tienda?", "ca": "Quin és el nom d'aquesta botiga?", - "cs": "Jak se jmenuje tento obchod?" + "cs": "Jak se jmenuje tento obchod?", + "uk": "Як називається цей магазин?" }, "render": { "en": "This shop is called {name}", @@ -247,7 +249,9 @@ "nl": "Deze zaak heet {name}", "ca": "La botiga s'anomena {name}", "fr": "Ce commerce s'appelle {name}", - "cs": "Tento obchod se jmenuje {name}" + "cs": "Tento obchod se jmenuje {name}", + "uk": "Цей магазин називається {name}", + "es": "Esta tienda se llama {name}" }, "freeform": { "key": "name" @@ -266,7 +270,9 @@ "de": "Um was für ein Geschäft handelt es sich?", "fr": "Quel genre de magasin est-ce?", "ca": "Quin tipus de botiga és aquesta?", - "cs": "Co je to za obchod?" + "cs": "Co je to za obchod?", + "uk": "Що це за магазин?", + "es": "¿Qué tipo de tienda es esta?" }, "render": { "en": "This is a {shop}", @@ -274,7 +280,8 @@ "fr": "C'est une {shop}", "nl": "Dit is een {shop}", "ca": "Açò és una {shop}", - "cs": "Toto je {shop}" + "cs": "Toto je {shop}", + "es": "Esta es una {shop}" }, "freeform": { "key": "shop", @@ -302,7 +309,9 @@ "then": { "en": "Bicycle rental shop", "nl": "Fietsverhuurzaak", - "de": "Fahrradverleih" + "de": "Fahrradverleih", + "uk": "Пункт прокату велосипедів", + "es": "Tienda de alquiler de bicicletas" } } ], @@ -315,11 +324,15 @@ "id": "brand", "question": { "en": "What is the brand of this shop?", - "de": "Zu welcher Marke gehört dieses Geschäft?" + "de": "Zu welcher Marke gehört dieses Geschäft?", + "uk": "Яка марка цього магазину?", + "es": "¿Cuál es la marca de esta tienda?" }, "render": { "en": "Part of {brand}", - "de": "Teil von {brand}" + "de": "Teil von {brand}", + "es": "Parte de {brand}", + "uk": "Частина {brand}" }, "freeform": { "key": "brand" @@ -329,7 +342,9 @@ "if": "not:brand=yes", "then": { "en": "This shop does not have a specific brand, it is not part of a bigger chain", - "de": "Das Geschäft gehört zu keiner Marke oder Handelskette" + "de": "Das Geschäft gehört zu keiner Marke oder Handelskette", + "uk": "Цей магазин не має певного бренду, він не є частиною великої мережі", + "es": "Esta tienda no tiene una marca específica, no forma parte de una cadena más grande" } } ] @@ -339,7 +354,9 @@ "question": { "en": "Does this shop sell second-hand items?", "de": "Verlauft das Geschäft auch Second-Hand-Produkte?", - "cs": "Prodává tento obchod použité zboží?" + "cs": "Prodává tento obchod použité zboží?", + "es": "¿Esta tienda vende artículos de segunda mano?", + "uk": "Чи продає цей магазин вживані речі?" }, "mappings": [ { @@ -388,7 +405,8 @@ "fr": "Quels formats de papier cette boutique propose-t-elle ?", "nl": "Op welke papiergroottes kan deze zaak printen?", "ca": "Quins formats de paper ofereix aquesta botiga?", - "cs": "Jaké formáty papíru tento obchod nabízí?" + "cs": "Jaké formáty papíru tento obchod nabízí?", + "es": "¿Qué formatos de papel ofrece esta tienda?" }, "multiAnswer": true, "mappings": [ @@ -400,7 +418,8 @@ "fr": "Cette boutique peut imprimer sur des papiers de format A4", "nl": "Deze zaak kan printen op A4-formaat", "ca": "Aquesta botiga pot imprimir en papers de mida A4", - "cs": "Tento obchod umí tisknout na papíry velikosti A4" + "cs": "Tento obchod umí tisknout na papíry velikosti A4", + "es": "Esta tienda puede imprimir en papeles de tamaño A4" }, "ifnot": "service:print:A4=no" }, @@ -412,7 +431,8 @@ "fr": "Cette boutique peut imprimer sur des papiers de format A3", "nl": "Deze zaak kan printen op A3-formaat", "ca": "Aquesta botiga pot imprimir en papers de mida A3", - "cs": "Tento obchod umí tisknout na papíry velikosti A3" + "cs": "Tento obchod umí tisknout na papíry velikosti A3", + "es": "Esta tienda puede imprimir en papeles de tamaño A3" }, "ifnot": "service:print:A3=no" }, @@ -424,7 +444,8 @@ "fr": "Cette boutique peut imprimer sur des papiers de format A2", "nl": "Deze zaak kan printen op A2-formaat", "ca": "Aquesta botiga pot imprimir en papers de mida A2", - "cs": "Tento obchod umí tisknout na papíry velikosti A2" + "cs": "Tento obchod umí tisknout na papíry velikosti A2", + "es": "Esta tienda puede imprimir en papeles de tamaño A2" }, "ifnot": "service:print:A2=no" }, @@ -436,7 +457,8 @@ "fr": "Cette boutique peut imprimer sur des papiers de format A1", "nl": "Deze zaak kan printen op A1-formaat", "ca": "Aquesta botiga pot imprimir en papers de mida A1", - "cs": "Tento obchod umí tisknout na papíry velikosti A1" + "cs": "Tento obchod umí tisknout na papíry velikosti A1", + "es": "Esta tienda puede imprimir en papeles de tamaño A1" }, "ifnot": "service:print:A1=no" }, @@ -448,7 +470,8 @@ "fr": "Cette boutique peut imprimer sur des papiers de format A0", "nl": "Deze zaak kan printen op A0-formaat", "ca": "Aquesta botiga pot imprimir en papers de mida A0", - "cs": "Tento obchod umí tisknout na papíry velikosti A0" + "cs": "Tento obchod umí tisknout na papíry velikosti A0", + "es": "Esta tienda puede imprimir en papeles de tamaño A0" }, "ifnot": "service:print:A0=no" } @@ -465,25 +488,29 @@ }, "question": { "en": "Does this shop offer a binding service?", - "de": "Bietet dieser Laden einen Bindeservice an?" + "de": "Bietet dieser Laden einen Bindeservice an?", + "es": "¿Esta tienda ofrece un servicio de encuadernación?" }, "questionHint": { "en": "Does this shop bind a bundle of pages into a small book, e.g. with a comb, a spiral, wire or by gluing?", - "de": "Bindet dieser Laden ein Bündel von Seiten zu einem kleinen Buch, z.B. mit einer Kamm-, Spiral-, Drahtbindung oder durch Kleben?" + "de": "Bindet dieser Laden ein Bündel von Seiten zu einem kleinen Buch, z.B. mit einer Kamm-, Spiral-, Drahtbindung oder durch Kleben?", + "es": "¿Esta tienda encuaderna un conjunto de páginas en un pequeño libro, por ejemplo, con un peine, una espiral, alambre o pegamento?" }, "mappings": [ { "if": "service:binding=yes", "then": { "en": "This shop binds papers into a booklet", - "de": "Dieser Laden bindet Papiere zu einem Heft" + "de": "Dieser Laden bindet Papiere zu einem Heft", + "es": "Esta tienda encuaderna papeles en un folleto" } }, { "if": "service:binding=no", "then": { "en": "This shop does bind books", - "de": "Dieser Laden bindet Bücher" + "de": "Dieser Laden bindet Bücher", + "es": "Esta tienda encuaderna libros" } } ] @@ -492,7 +519,8 @@ "id": "key_cutter", "question": { "en": "Does this shop offer key cutting?", - "de": "Bietet dieser Laden Schlüsselschneiden an?" + "de": "Bietet dieser Laden Schlüsselschneiden an?", + "es": "¿Esta tienda ofrece el corte de llaves?" }, "mappings": [ { @@ -502,7 +530,8 @@ "icon": "./assets/layers/id_presets/fas-key.svg", "then": { "en": "This shop is also specialized in key cutting", - "de": "Dieser Laden ist auch auf das Schlüsselschneiden spezialisiert" + "de": "Dieser Laden ist auch auf das Schlüsselschneiden spezialisiert", + "es": "Esta tienda también está especializada en el corte de llaves" }, "addExtraTags": [ "service:key_cutting=yes" @@ -514,7 +543,8 @@ "then": { "en": "This shop offers key cutting as a service", "de": "Dieser Laden bietet Schlüsselschneiden als Dienstleistung an", - "nl": "Deze winkel kopieert sleutels" + "nl": "Deze winkel kopieert sleutels", + "es": "Esta tienda ofrece el corte de llaves como servicio" } }, { @@ -526,7 +556,8 @@ }, "then": { "en": "This shops does not offer key cutting as a service", - "de": "Dieser Laden bietet kein Schlüsselschneiden als Dienstleistung an" + "de": "Dieser Laden bietet kein Schlüsselschneiden als Dienstleistung an", + "es": "Esta tienda no ofrece el corte de llaves como servicio" } } ], @@ -556,10 +587,11 @@ "ru": "Продаются ли велосипеды в этом магазине?", "pt_BR": "Esta loja vende bicicletas?", "pt": "Esta loja vende bicicletas?", - "es": "¿Vende bicis esta tienda?", + "es": "¿Esta tienda vende bicicletas?", "da": "Sælger denne butik cykler?", "ca": "Aquesta botiga ven bicicletes?", - "cs": "Prodává tento obchod jízdní kola?" + "cs": "Prodává tento obchod jízdní kola?", + "uk": "Чи продає цей магазин велосипеди?" }, "condition": { "#": "Yes, DIY-stores sometimes sell bikes! E.g.: https://www.hubo.be/nl/zoekresultaten/?q=fiets", @@ -567,6 +599,7 @@ "service:bicycle:retail~*", "shop=outdoor", "shop=sport", + "shop=sports", "shop=diy", "shop=doityourself" ] @@ -578,7 +611,9 @@ "en": "This shop sells new bikes", "nl": "Deze winkel verkoopt nieuwe fietsen", "fr": "Ce magasin vend des vélos nouveaux", - "de": "Dieses Geschäft verkauft neue Fahrräder" + "de": "Dieses Geschäft verkauft neue Fahrräder", + "es": "Esta tienda vende bicicletas nuevas", + "uk": "У цьому магазині продають нові велосипеди" } }, { @@ -587,7 +622,9 @@ "en": "This shop doesn't sell new bikes", "nl": "Deze winkel verkoopt geen nieuwe fietsen", "fr": "Ce magasin ne vend pas de vélo nouveaux", - "de": "Dieses Geschäft verkauft keine neuen Fahrräder" + "de": "Dieses Geschäft verkauft keine neuen Fahrräder", + "es": "Esta tienda no vende bicicletas nuevas", + "uk": "Цей магазин не продає нові велосипеди" } } ] @@ -611,7 +648,7 @@ "de": "Verkauft dieses Geschäft gebrauchte Fahrräder?", "it": "Questo negozio vende bici usate?", "ru": "В этом магазине продаются подержанные велосипеды?", - "es": "¿Vende bicis de segunda mano esta tienda?", + "es": "¿Esta tienda vende bicicletas de segunda mano?", "da": "Sælger denne butik brugte cykler?", "ca": "Aquesta botiga ven bicicletes de segona mà?", "cs": "Prodává tento obchod použitá jízdní kola?" @@ -628,10 +665,11 @@ "de": "Das Geschäft verkauft auch gebrauchte Fahrräder", "it": "Questo negozio vende bici usate", "ru": "В этом магазине продаются подержанные велосипеды", - "es": "Esta tienda vende bicis de segunda mano", + "es": "Esta tienda vende bicicletas de segunda mano", "da": "Denne butik sælger brugte cykler", "ca": "Aquesta botiga ven bicis de segona mà", - "cs": "Tento obchod prodává použitá jízdní kola" + "cs": "Tento obchod prodává použitá jízdní kola", + "uk": "У цьому магазині продають вживані велосипеди" } }, { @@ -645,7 +683,7 @@ "de": "Das Geschäft verkauft keine gebrauchten Fahrräder", "it": "Questo negozio non vende bici usate", "ru": "В этом магазине не продаются подержанные велосипеды", - "es": "Esta tienda no vende bicis de segunda mano", + "es": "Esta tienda no vende bicicletas de segunda mano", "da": "Denne butik sælger ikke brugte cykler", "ca": "Aquesta botiga no ven bicis de segona mà", "cs": "Tento obchod neprodává kola z druhé ruky" @@ -662,10 +700,11 @@ "de": "Das Geschäft verkauft ausschließlich gebrauchte Fahrräder", "it": "Questo negozio vende solamente bici usate", "ru": "В этом магазине продаются только подержанные велосипеды", - "es": "Esta tienda solo vende bicis de segunda mano", + "es": "Esta tienda solo vende bicicletas de segunda mano", "da": "Denne butik sælger kun brugte cykler", "ca": "Aquesta botiga sols ven bicis de segona mà", - "cs": "Tento obchod prodává pouze kola z druhé ruky" + "cs": "Tento obchod prodává pouze kola z druhé ruky", + "uk": "Цей магазин продає лише вживані велосипеди" } } ] @@ -677,6 +716,7 @@ "or": [ "service:bicycle:repair~*", "shop=sport", + "shop=sports", "shop=outdoor", "shop=bicycle", "service:bicycle:retail=yes", @@ -694,7 +734,7 @@ "ru": "В этом магазине ремонтируют велосипеды?", "pt_BR": "Esta loja conserta bicicletas?", "pt": "Esta loja conserta bicicletas?", - "es": "¿Repara bicis esta tienda?", + "es": "¿Esta tienda repara bicicletas?", "da": "Reparerer denne butik cykler?", "ca": "Aquesta botiga repara bicicletes?", "cs": "Opravuje tento obchod jízdní kola?" @@ -712,7 +752,7 @@ "ru": "Этот магазин ремонтирует велосипеды", "pt_BR": "Esta loja conserta bicicletas", "pt": "Esta loja conserta bicicletas", - "es": "Esta tienda repara bicis", + "es": "Esta tienda repara bicicletas", "da": "Denne butik reparerer cykler", "ca": "Aquesta botiga repara bicis", "cs": "Tento obchod opravuje jízdní kola" @@ -730,7 +770,7 @@ "ru": "Этот магазин не ремонтирует велосипеды", "pt_BR": "Esta loja não conserta bicicletas", "pt": "Esta loja não conserta bicicletas", - "es": "Esta tienda no repara bicis", + "es": "Esta tienda no repara bicicletas", "da": "Denne butik reparerer ikke cykler", "ca": "Aquesta botiga no repara bicis", "cs": "Tento obchod neopravuje jízdní kola" @@ -748,7 +788,7 @@ "ru": "Этот магазин ремонтирует только велосипеды, купленные здесь", "pt_BR": "Esta loja conserta bicicletas compradas aqui", "pt": "Esta loja conserta bicicletas compradas aqui", - "es": "Esta tienda solo repara bicis compradas aquí", + "es": "Esta tienda solo repara bicicletas compradas aquí", "da": "Denne butik reparerer kun cykler købt her", "ca": "Aquesta botiga sols repara bicis comprades aquí", "cs": "Tento obchod opravuje pouze zde zakoupená kola" @@ -766,7 +806,7 @@ "ru": "В этом магазине обслуживают велосипеды определённого бренда", "pt_BR": "Esta loja conserta bicicletas de uma certa marca", "pt": "Esta loja conserta bicicletas de uma certa marca", - "es": "Esta tienda solo repara bicis de una cierta marca", + "es": "Esta tienda solo repara bicicletas de una determinada marca", "da": "Dette værksted reparerer kun cykler af et bestemt mærke", "ca": "Aquesta tenda sols repara bicis d’una marca concreta", "cs": "Tento obchod opravuje pouze kola určité značky" @@ -782,6 +822,7 @@ "service:bicycle:rental~*", "shop=bicycle", "shop=sport", + "shop=sports", "shop=bicycle_repair", "shop=outdoor", "shop=rental" @@ -797,14 +838,17 @@ "ru": "Этот магазин сдает велосипеды в аренду?", "pt_BR": "Esta loja aluga bicicletas?", "pt": "Esta loja aluga bicicletas?", - "es": "¿Alquila bicicis esta tienda?", + "es": "¿Esta tienda alquila bicicletas?", "da": "Udlejer denne butik cykler?", "ca": "Aquesta botiga alquila bicicletes?", - "cs": "Pronajímá tento obchod kola?" + "cs": "Pronajímá tento obchod kola?", + "uk": "Чи дає цей магазин велосипеди напрокат?" }, "questionHint": { "en": "This is about rental for e.g. tourists who need a bike. Some bicycle repair shops offer a bicycle to use while your bicycle is being repaired but this is not considered rental for this question.", - "de": "Es geht um die Vermietung, z.B. an Touristen, die ein Fahrrad benötigen. Einige Fahrradwerkstätten bieten ein Fahrrad an, das man benutzen kann, während das eigene Fahrrad repariert wird, aber dies wird für diese Frage nicht als Vermietung betrachtet." + "de": "Es geht um die Vermietung, z.B. an Touristen, die ein Fahrrad benötigen. Einige Fahrradwerkstätten bieten ein Fahrrad an, das man benutzen kann, während das eigene Fahrrad repariert wird, aber dies wird für diese Frage nicht als Vermietung betrachtet.", + "uk": "Йдеться про прокат для туристів, яким потрібен велосипед. Деякі майстерні з ремонту велосипедів пропонують велосипед на час ремонту, але це не вважається прокатом в даному випадку.", + "es": "Esto se refiere al alquiler para, por ejemplo, turistas que necesitan una bicicleta. Algunas tiendas de reparación de bicicletas ofrecen una bicicleta para usar mientras se repara la suya, pero esto no se considera alquiler para esta pregunta." }, "mappings": [ { @@ -819,10 +863,11 @@ "ru": "Этот магазин сдает велосипеды в аренду", "pt_BR": "Esta loja aluga bicicletas", "pt": "Esta loja aluga bicicletas", - "es": "Esta tienda alquila bicis", + "es": "Esta tienda alquila bicicletas", "da": "Denne butik udlejer cykler", "ca": "Aquesta botiga lloga bicis", - "cs": "Tento obchod pronajímá jízdní kola" + "cs": "Tento obchod pronajímá jízdní kola", + "uk": "У цьому магазині можна взяти напрокат велосипеди" } }, { @@ -837,10 +882,11 @@ "ru": "Этот магазин не сдает велосипеды напрокат", "pt_BR": "Esta loja não aluga bicicletas", "pt": "Esta loja não aluga bicicletas", - "es": "Esta tienda no alquila bicis", + "es": "Esta tienda no alquila bicicletas", "da": "Denne butik udlejer ikke cykler", "ca": "Aquesta botiga no lloga bicis", - "cs": "Tento obchod nepronajímá kola" + "cs": "Tento obchod nepronajímá kola", + "uk": "Цей магазин не дає велосипеди напрокат" } } ] @@ -870,7 +916,7 @@ "de": "Gibt es in diesem Geschäft eine öffentlich nutzbare Luftpumpe?", "it": "Questo negozio offre l’uso a chiunque di una pompa per bici?", "ru": "Предлагается ли в этом магазине велосипедный насос для всеобщего пользования?", - "es": "¿Esta tienda ofrece una bomba para que la utilice cualquiera?", + "es": "¿Esta tienda ofrece una bomba de bicicleta para uso de cualquiera?", "da": "Tilbyder denne butik en cykelpumpe til brug for alle?", "ca": "Aquesta botiga ofereix una manxa perquè la utilitzi qualsevol?", "cs": "Nabízí tento obchod pumpu na kolo k použití pro kohokoli?" @@ -895,7 +941,7 @@ "de": "Im Geschäft gibt es eine öffentlich nutzbare Luftpumpe", "it": "Questo negozio offre l’uso pubblico di una pompa per bici", "ru": "В этом магазине есть велосипедный насос для всеобщего пользования", - "es": "Esta tienda ofrece una bomba para cualquiera", + "es": "Esta tienda ofrece una bomba de bicicleta para cualquiera", "da": "Denne butik tilbyder en cykelpumpe til alle", "ca": "Aquesta botiga ofereix una manxa per a tothom", "cs": "Tento obchod nabízí pumpu na kolo pro každého" @@ -911,7 +957,7 @@ "de": "Im Geschäft gibt es keine öffentlich nutzbare Luftpumpe", "it": "Questo negozio non offre l’uso pubblico di una pompa per bici", "ru": "В этом магазине нет велосипедного насоса для всеобщего пользования", - "es": "Esta tienda no ofrece una bomba para cualquiera", + "es": "Esta tienda no ofrece una bomba de bicicleta para cualquiera", "da": "Denne butik tilbyder ikke en cykelpumpe til nogen", "ca": "Aquesta botiga no ofereix una manxa per a tothom", "cs": "Tento obchod nenabízí pumpičku na kolo pro každého" @@ -925,7 +971,7 @@ "fr": "Il y a une pompe à vélo, c'est indiqué comme un point séparé", "it": "C’è una pompa per bici, è mostrata come punto separato", "de": "Es gibt eine Luftpumpe, sie ist als separater Punkt eingetragen", - "es": "Hay una bomba para bicicletas, se muestra como un punto separado", + "es": "Hay una bomba de bicicleta, se muestra como un punto separado", "da": "Der er cykelpumpe, den er vist som et separat punkt", "ca": "Hi ha una manxa, es mostra com a un punt separat", "cs": "K dispozici je pumpa na jízdní kola, je zobrazena jako samostatný bod" @@ -951,7 +997,7 @@ "de": "Gibt es hier Werkzeug, um das eigene Fahrrad zu reparieren?", "it": "Sono presenti degli attrezzi per riparare la propria bici?", "ru": "Есть ли здесь инструменты для починки собственного велосипеда?", - "es": "¿Hay herramientas para reparar tu propia bici?", + "es": "¿Hay herramientas aquí para reparar tu propia bicicleta?", "da": "Er der værktøj her til at reparere din egen cykel?", "ca": "Hi ha ferramentes perquè reparis la teva bici?", "cs": "Jsou zde nástroje na opravu vlastního kola?" @@ -967,7 +1013,7 @@ "de": "Das Geschäft bietet Werkzeug an, um das eigene Fahrrad zu reparieren", "it": "Questo negozio offre degli attrezzi per la riparazione fai da te", "da": "Denne butik tilbyder værktøj til gør-det-selv-reparation", - "es": "Esta tienda ofrece herramientas para la reparación DIY", + "es": "Esta tienda ofrece herramientas para la reparación de bicicletas por cuenta propia", "ca": "Aquesta botiga ofereix ferramentes per a la reparació DIY", "cs": "Tento obchod nabízí nářadí pro kutilské opravy" } @@ -982,7 +1028,7 @@ "de": "Das Geschäft bietet kein Werkzeug an, um das eigene Fahrrad zu reparieren", "it": "Questo negozio non offre degli attrezzi per la riparazione fai da te", "da": "Denne butik tilbyder ikke værktøj til gør-det-selv reparation", - "es": "Esta tienda no ofrece herramientas para la reparación DIY", + "es": "Esta tienda no ofrece herramientas para la reparación de bicicletas por cuenta propia", "ca": "Aquesta botiga no ofereix ferramentes per a la reparació DIY", "cs": "Tento obchod nenabízí nářadí pro opravy svépomocí" } @@ -996,7 +1042,7 @@ "it": "Gli attrezzi per la riparazione fai da te sono disponibili solamente se hai acquistato/noleggiato la bici nel negozio", "de": "Das Geschäft bietet nur Werkzeug an, um das eigene Fahrrad zu reparieren, wenn es dort gekauft/gemietet wurde", "ru": "Инструменты для починки доступны только при покупке/аренде велосипеда в магазине", - "es": "Las herramientas para reparaciones DIT solo están disponibles si compraste/alquilaste la bicicleta en la tienda", + "es": "Las herramientas para la reparación de bicicletas por cuenta propia solo están disponibles si compraste/alquilaste la bicicleta en la tienda", "da": "Værktøj til gør-det-selv-reparation er kun tilgængeligt, hvis du har købt/lejet cyklen i butikken", "ca": "Les ferramentes per a reparacions DIY sols estan disponibles si vas comprar/llogar la bici a la botiga", "cs": "Nářadí pro opravy svépomocí je k dispozici pouze v případě, že jste si kolo koupili/pronajali v prodejně" @@ -1021,7 +1067,7 @@ "it": "Vengono lavate le bici qua?", "ru": "Здесь моют велосипеды?", "de": "Bietet dieses Geschäft Fahrradreinigungen an?", - "es": "¿Aquí se lavan bicicletas?", + "es": "¿Se lavan bicicletas aquí?", "da": "Vaskes cykler her?", "ca": "Aquí es renten bicicletes?", "cs": "Myjí se zde jízdní kola?" @@ -1050,7 +1096,7 @@ "fr": "Ce magasin a une installation pour laver soi même des vélos", "it": "Questo negozio ha una struttura dove è possibile pulire la propria bici", "de": "Im Geschäft können Fahrräder selbst gereinigt werden", - "es": "Esta tienda tiene una instalación donde uno puede limpiar bicicletas por si mismo", + "es": "Esta tienda tiene una instalación donde uno puede limpiar las bicicletas por sí mismo", "da": "Denne butik har et anlæg, hvor man selv kan rengøre cykler", "ca": "Aquesta botiga té una instal·lació on un pot rentar les bicis per un mateix", "cs": "Tento obchod má zařízení, kde si můžete sami vyčistit jízdní kola" @@ -1087,7 +1133,8 @@ "nl": "Biedt deze winkel biologische producten aan?", "ca": "Aquesta botiga ofereix productes orgànics?", "fr": "Ce commerce propose-t-il des produits bio ?", - "cs": "Nabízí tento obchod bio produkty?" + "cs": "Nabízí tento obchod bio produkty?", + "es": "¿Esta tienda ofrece productos orgánicos?" }, "mappings": [ { @@ -1098,7 +1145,8 @@ "nl": "Deze winkel biedt biologische producten aan", "ca": "Aquesta botiga ofereix productes orgànics", "fr": "Ce commerce propose des produits bio", - "cs": "Tento obchod nabízí bio produkty" + "cs": "Tento obchod nabízí bio produkty", + "es": "Esta tienda ofrece productos orgánicos" } }, { @@ -1109,7 +1157,8 @@ "nl": "Deze winkel biedt uitluitend biologische producten aan", "ca": "Aquesta botiga sols ofereix productes orgànics", "fr": "Ce commerce ne propose que des produits bio", - "cs": "Tento obchod nabízí pouze bio produkty" + "cs": "Tento obchod nabízí pouze bio produkty", + "es": "Esta tienda solo ofrece productos orgánicos" } }, { @@ -1120,7 +1169,8 @@ "nl": "Deze winkel heeft geen biologische producten", "ca": "Aquesta botiga no ofereix productes orgànics", "fr": "Ce commerce ne propose pas de produit bio", - "cs": "Tento obchod nenabízí bio produkty" + "cs": "Tento obchod nenabízí bio produkty", + "es": "Esta tienda no ofrece productos orgánicos" } } ], @@ -1181,7 +1231,8 @@ "question": { "en": "Only show shops selling second-hand items", "de": "Nur Second-Hand-Geschäfte anzeigen", - "cs": "Zobrazit pouze obchody prodávající použité zboží" + "cs": "Zobrazit pouze obchody prodávající použité zboží", + "es": "Mostrar solo tiendas que venden artículos de segunda mano" }, "osmTags": { "or": [ @@ -1227,10 +1278,11 @@ "nl": "{title()} is permanent gestopt", "en": "{title()} has closed down permanently", "de": "{title()} wurde dauerhaft geschlossen", - "es": "{title()} ha cerrado permanentemente", + "es": "{title()} ha cerrado definitivamente", "fr": "{title()} a fermé définitivement", "ca": "{title()} ha tancat permanentment", - "cs": "{title()} je trvale uzavřen" + "cs": "{title()} je trvale uzavřen", + "uk": "{title()} закрився назавжди" } } ] diff --git a/assets/layers/shower/shower.json b/assets/layers/shower/shower.json index 50fb25ed9..4697b19ba 100644 --- a/assets/layers/shower/shower.json +++ b/assets/layers/shower/shower.json @@ -5,14 +5,16 @@ "de": "Dusche", "fr": "Douche", "ca": "Dutxa", - "cs": "Sprcha" + "cs": "Sprcha", + "es": "Ducha" }, "description": { "en": "A layer showing (public) showers", "de": "Eine Ebene mit (öffentlichen) Duschen", "fr": "Une couche affichant les douches (publiques)", "ca": "Una capa que mostra dutxes (públiques)", - "cs": "Vrstva zobrazující (veřejné) sprchy" + "cs": "Vrstva zobrazující (veřejné) sprchy", + "es": "Una capa que muestra duchas (públicas)" }, "source": { "osmTags": "amenity=shower" @@ -24,7 +26,8 @@ "de": "Dusche", "ca": "Dutxa", "fr": "Douche", - "cs": "Sprcha" + "cs": "Sprcha", + "es": "Ducha" } }, "pointRendering": [ @@ -58,14 +61,16 @@ "de": "eine Dusche", "fr": "une douche", "ca": "una dutxa", - "cs": "sprcha" + "cs": "sprcha", + "es": "una ducha" }, "description": { "en": "A (public) shower", "de": "Eine (öffentliche) Dusche", "fr": "Une douche (publique)", "ca": "Una dutxa (pública)", - "cs": "(veřejná) sprcha" + "cs": "(veřejná) sprcha", + "es": "Una ducha (pública)" }, "tags": [ "amenity=shower" @@ -82,7 +87,8 @@ "de": "Wer darf diese Dusche nutzen?", "fr": "Qui peut utiliser cette douche ?", "ca": "Qui pot utilitzar aquesta dutxa?", - "cs": "Kdo může tuto sprchu používat?" + "cs": "Kdo může tuto sprchu používat?", + "es": "¿Quién puede usar esta ducha?" }, "mappings": [ { @@ -92,7 +98,8 @@ "de": "Jeder darf diese Dusche nutzen", "fr": "Tout le monde peut utiliser cette douche", "ca": "Qualsevol pot utilitzar aquesta dutxa", - "cs": "Tuto sprchu může použít každý" + "cs": "Tuto sprchu může použít každý", + "es": "Cualquiera puede usar esta ducha" } }, { @@ -102,7 +109,8 @@ "de": "Nur Kunden dürfen diese Dusche nutzen", "fr": "Seuls les clients peuvent utiliser cette douche", "ca": "Només els clients poden utilitzar aquesta dutxa", - "cs": "Tuto sprchu mohou používat pouze zákazníci" + "cs": "Tuto sprchu mohou používat pouze zákazníci", + "es": "Solo los clientes pueden usar esta ducha" } }, { @@ -112,7 +120,8 @@ "de": "Zugänglich, aber man muss nach einem Schlüssel fragen", "fr": "Accessible, mais il faut demander une clé", "ca": "Accessible, però s'ha de demanar una clau", - "cs": "Přístupné, ale člověk si musí vyžádat klíč" + "cs": "Přístupné, ale člověk si musí vyžádat klíč", + "es": "Accesible, pero hay que pedir una llave" } } ] @@ -124,7 +133,8 @@ "de": "Ist die Nutzung der Dusche kostenpflichtig?", "ca": "És allà un cost per utilitzar aquesta dutxa?", "fr": "Faut-il payer pour utiliser cette douche ?", - "cs": "Platí se za použití této sprchy?" + "cs": "Platí se za použití této sprchy?", + "es": "¿Hay una tarifa por usar esta ducha?" }, "mappings": [ { @@ -134,7 +144,8 @@ "de": "Die Nutzung der Dusche ist kostenpflichtig", "ca": "Hi ha un preu per utilitzar aquesta dutxa", "fr": "Il faut payer pour utiliser cette douche", - "cs": "Za použití této sprchy se platí" + "cs": "Za použití této sprchy se platí", + "es": "Hay una tarifa por usar esta ducha" } }, { @@ -144,7 +155,8 @@ "de": "Die Nutzung der Dusche ist kostenlos", "ca": "Aquesta dutxa és gratuïta", "fr": "Cette douche est gratuite", - "cs": "Tato sprcha je k použití zdarma" + "cs": "Tato sprcha je k použití zdarma", + "es": "Esta ducha es gratuita" }, "addExtraTags": [ "charge=" @@ -160,7 +172,8 @@ "de": "Wie viel kostet es, diese Dusche zu nutzen?", "fr": "Quel est le prix pour utiliser cette douche ?", "ca": "Quant costa utilitzar aquesta dutxa?", - "cs": "Kolik stojí použití této sprchy?" + "cs": "Kolik stojí použití této sprchy?", + "es": "¿Cuánto cuesta usar esta ducha?" }, "freeform": { "key": "charge", @@ -170,7 +183,8 @@ "de": "z.B. 1,50 EUR", "fr": "par ex. 1,50 EUR", "ca": "p. e. 1.50 eur", - "cs": "např. 1,50 EUR" + "cs": "např. 1,50 EUR", + "es": "ej. 1.50 EUR" } }, "render": { @@ -178,7 +192,8 @@ "de": "Es kostet {charge} um diese Dusche zu nutzen", "ca": "Costa {charge} utilitzar aquesta dutxa", "fr": "Le prix de cette douche est {charge}", - "cs": "Použití této sprchy stojí {charge}" + "cs": "Použití této sprchy stojí {charge}", + "es": "Cuesta {charge} usar esta ducha" } }, "opening_hours", @@ -189,7 +204,8 @@ "de": "Verfügt diese Dusche über Warmwasser?", "ca": "Aquesta dutxa té aigua calenta disponible?", "fr": "Est-ce que cette douche propose de l'eau chaude ?", - "cs": "Má tato sprcha k dispozici teplou vodu?" + "cs": "Má tato sprcha k dispozici teplou vodu?", + "es": "¿Esta ducha tiene agua caliente disponible?" }, "mappings": [ { @@ -199,7 +215,8 @@ "de": "Warmwasser ist hier verfügbar", "ca": "Aquí hi ha aigua calenta disponible", "fr": "De l'eau chaud est disponible", - "cs": "Je zde k dispozici teplá voda" + "cs": "Je zde k dispozici teplá voda", + "es": "Hay agua caliente disponible aquí" } }, { @@ -209,7 +226,8 @@ "de": "Warmes Wasser ist hier verfügbar, aber kostenpflichtig", "ca": "Aquí hi ha aigua calenta disponible, però té un cost", "fr": "De l'eau chaud est disponible, mais il faut payer", - "cs": "Teplá voda je zde k dispozici, ale je za poplatek" + "cs": "Teplá voda je zde k dispozici, ale je za poplatek", + "es": "Hay agua caliente disponible aquí, pero hay una tarifa" } }, { @@ -219,7 +237,8 @@ "de": "Hier gibt es kein warmes Wasser", "ca": "Aquí no hi ha aigua calenta disponible", "fr": "Il n'y a pas d'eau chaude disponible", - "cs": "Není zde k dispozici teplá voda" + "cs": "Není zde k dispozici teplá voda", + "es": "No hay agua caliente disponible aquí" } } ] @@ -247,7 +266,8 @@ "de": "Warmwasser verfügbar", "fr": "Eau chaude disponible", "ca": "Aigua calenta disponible", - "cs": "Teplá voda k dispozici" + "cs": "Teplá voda k dispozici", + "es": "Agua caliente disponible" }, "osmTags": { "or": [ diff --git a/assets/layers/ski_piste/ski_piste.json b/assets/layers/ski_piste/ski_piste.json index 963a6e5f5..3e09c14cc 100644 --- a/assets/layers/ski_piste/ski_piste.json +++ b/assets/layers/ski_piste/ski_piste.json @@ -3,12 +3,14 @@ "name": { "en": "Ski and snowboard pistes", "de": "Ski- und Snowboardpisten", - "fr": "Pistes de ski et de snowboard" + "fr": "Pistes de ski et de snowboard", + "es": "Pistas de esquí y snowboard" }, "description": { "en": "Ski and snowboard pistes", "de": "Ski- und Snowboardpisten", - "fr": "Pistes de ski et de snowboard" + "fr": "Pistes de ski et de snowboard", + "es": "Pistas de esquí y snowboard" }, "source": { "osmTags": { @@ -28,7 +30,8 @@ "render": { "en": "Ski piste {name}", "de": "Skipiste {name}", - "fr": "Piste de ski {name}" + "fr": "Piste de ski {name}", + "es": "Pista de esquí {name}" } }, "pointRendering": [ @@ -84,7 +87,8 @@ "question": { "en": "What is the difficulty of this piste?", "de": "Was ist der Schwierigkeitsgrad der Piste?", - "fr": "Quelle est la difficulté de cette piste ?" + "fr": "Quelle est la difficulté de cette piste ?", + "es": "¿Cuál es la dificultad de esta pista?" }, "id": "piste_difficulty", "condition": "piste:type!=connection", @@ -94,7 +98,8 @@ "then": { "en": "Novice (green)", "de": "Anfänger (grün)", - "fr": "Débutant (vert)" + "fr": "Débutant (vert)", + "es": "Principiante (verde)" } }, { @@ -102,7 +107,8 @@ "then": { "en": "Easy (blue)", "de": "Einfach (blau)", - "fr": "Facile (bleu)" + "fr": "Facile (bleu)", + "es": "Fácil (azul)" } }, { @@ -110,7 +116,8 @@ "then": { "en": "Intermediate (red)", "de": "Mittel (rot)", - "fr": "Intermédiaire (rouge)" + "fr": "Intermédiaire (rouge)", + "es": "Intermedio (rojo)" } }, { @@ -118,7 +125,8 @@ "then": { "en": "Advanced (black)", "de": "Fortgeschritten (schwarz)", - "fr": "Avancé (noir)" + "fr": "Avancé (noir)", + "es": "Avanzado (negro)" } }, { @@ -126,7 +134,8 @@ "then": { "en": "Expert (orange/double black)", "de": "Experte (orange/doppel schwarz)", - "fr": "Expert (orange/double noir)" + "fr": "Expert (orange/double noir)", + "es": "Experto (naranja/doble negro)" } }, { @@ -134,7 +143,8 @@ "then": { "en": "Freeride", "de": "Freeride", - "fr": "Hors piste" + "fr": "Hors piste", + "es": "Freeride" } } ] @@ -144,7 +154,9 @@ "render": { "en": "This part of the ski piste is {_length:km} kilometer long", "de": "Dieser Teil der Skipiste hat eine Länge von {_length:km} km", - "fr": "Ce tronçon de piste de ski mesure {_length:km} kilomètres de long" + "fr": "Ce tronçon de piste de ski mesure {_length:km} kilomètres de long", + "es": "Esta parte de la pista de esquí tiene {_length:km} kilómetros de largo", + "uk": "Ця частина лижної траси має довжину {_length:km} кілометрів" } } ], diff --git a/assets/layers/slow_roads/slow_roads.json b/assets/layers/slow_roads/slow_roads.json index 7978280ed..b40b3e24b 100644 --- a/assets/layers/slow_roads/slow_roads.json +++ b/assets/layers/slow_roads/slow_roads.json @@ -4,14 +4,16 @@ "en": "Paths, carfree and slow roads", "nl": "Paadjes, trage wegen en autoluwe straten", "de": "Pfade, autofreie und geschwindigkeitsreduzierte Straßen", - "fr": "Chemins, routes non carrossables et routes à vitesse réduite" + "fr": "Chemins, routes non carrossables et routes à vitesse réduite", + "es": "Senderos, caminos lentos y sin coches" }, "description": { "en": "All carfree roads", "nl": "Alle verkeersvrije wegen", "de": "Alle autofreien Straßen", "ca": "Totes les carreteres sense cotxe", - "fr": "Toutes les routes non carrossables" + "fr": "Toutes les routes non carrossables", + "es": "Todos los caminos sin coches" }, "source": { "osmTags": { @@ -36,7 +38,8 @@ "render": { "en": "Slow road", "nl": "Trage weg", - "de": "Geschwindigkeitsreduzierte Straße" + "de": "Geschwindigkeitsreduzierte Straße", + "es": "Camino lento" }, "mappings": [ { @@ -51,7 +54,8 @@ "then": { "en": "Footway", "nl": "Voetpad", - "de": "Fußweg" + "de": "Fußweg", + "es": "Acera" } }, { @@ -59,7 +63,8 @@ "then": { "en": "Cycleway", "nl": "Fietspad", - "de": "Radweg" + "de": "Radweg", + "es": "Carril bici" } }, { @@ -67,7 +72,8 @@ "then": { "en": "Pedestrian street", "nl": "Voetgangersstraat", - "de": "Fußgängerzone" + "de": "Fußgängerzone", + "es": "Calle peatonal" } }, { @@ -75,7 +81,8 @@ "then": { "en": "Living street", "nl": "Woonerf", - "de": "Wohnstraße" + "de": "Wohnstraße", + "es": "Calle residencial" } }, { @@ -83,7 +90,8 @@ "then": { "en": "Small path", "nl": "Klein pad", - "de": "Schmaler Pfad" + "de": "Schmaler Pfad", + "es": "Sendero pequeño" } } ] @@ -118,7 +126,8 @@ "en": "This is a living street", "nl": "
Dit is een woonerf:
  • Voetgangers mogen hier de volledige breedte van de straat gebruiken
  • Gemotoriseerd verkeer mag maximaal 20km/h rijden
", "de": "Dies ist eine Wohnstraße", - "fr": "C'est une zone de rencontre" + "fr": "C'est une zone de rencontre", + "es": "Esta es una calle residencial" }, "icon": { "path": "./assets/layers/slow_roads/woonerf.svg", @@ -130,7 +139,8 @@ "then": { "en": "This is a wide, carfree street", "nl": "Dit is een brede, autovrije straat", - "de": "Dies ist eine breite, autofreie Straße" + "de": "Dies ist eine breite, autofreie Straße", + "es": "Esta es una calle ancha sin coches" } }, { @@ -139,7 +149,8 @@ "en": "This is a footway", "nl": "Dit is een voetpaadje", "de": "Dies ist ein Fußweg", - "fr": "C'est un chemin piéton" + "fr": "C'est un chemin piéton", + "es": "Esta es una acera" } }, { @@ -148,7 +159,8 @@ "en": "This is a small path", "nl": "Dit is een wegeltje of bospad", "de": "Dies ist ein schmaler Pfad", - "fr": "C'est un petit sentier" + "fr": "C'est un petit sentier", + "es": "Este es un sendero pequeño" } }, { @@ -157,7 +169,8 @@ "en": "This is a bridleway", "nl": "Dit is een ruiterswegel", "de": "Dies ist ein Reitweg", - "fr": "C'est une voie équestre" + "fr": "C'est une voie équestre", + "es": "Este es un camino para cabalgatas" } }, { @@ -165,7 +178,8 @@ "then": { "en": "This is a land access road", "nl": "Dit is een tractorspoor of weg om landbouwgrond te bereikken", - "de": "Dies ist eine Zufahrtsstraße" + "de": "Dies ist eine Zufahrtsstraße", + "es": "Este es un camino de acceso a terrenos" } } ] @@ -174,7 +188,8 @@ "question": { "en": "What surface does this road have?", "nl": "Wat is de wegverharding van dit pad?", - "de": "Welche Oberfläche hat diese Straße?" + "de": "Welche Oberfläche hat diese Straße?", + "es": "¿Qué superficie tiene este camino?" }, "render": { "nl": "De ondergrond is {surface}", @@ -184,9 +199,10 @@ "it": "La superficie è {surface}", "de": "Die Oberfläche ist {surface}", "eo": "La surfaco estas {surface}", - "es": "La superficie es {surface}", + "es": "La superficie es de {surface}", "ca": "La superfícies és {surface}", - "cs": "Povrch je {surface}" + "cs": "Povrch je {surface}", + "uk": "Поверхня - {surface}" }, "freeform": { "key": "surface" @@ -202,9 +218,10 @@ "it": "La superficie è erba", "de": "Die Oberfläche ist Gras", "eo": "La surfaco estas herba", - "es": "La superficie es hierba", + "es": "La superficie es de césped", "ca": "La superfície és herba", - "cs": "Povrch je tráva" + "cs": "Povrch je tráva", + "uk": "Поверхня - трава" } }, { @@ -217,7 +234,9 @@ "it": "La superficie è terreno", "de": "Die Oberfläche ist Erde", "ca": "La superfície és terra", - "cs": "Povrch je země" + "cs": "Povrch je země", + "uk": "Поверхня - земля", + "es": "La superficie es de tierra" } }, { @@ -228,9 +247,10 @@ "fr": "La surface est non pavée", "it": "La superficie è non pavimentata", "de": "Die Oberfläche ist ohne festen Belag", - "es": "La superficie está sin pavimentar", + "es": "La superficie es sin pavimentar", "ca": "La superfície és sense asfaltar", - "cs": "Povrch je nezpevněný" + "cs": "Povrch je nezpevněný", + "uk": "Поверхня -без покриття" }, "hideInAnswer": true }, @@ -244,9 +264,10 @@ "it": "La superficie è sabbia", "de": "Die Oberfläche ist Sand", "eo": "La surfaco estas sabla", - "es": "La superficie es arena", + "es": "La superficie es de arena", "ca": "La superfície és sorra", - "cs": "Povrch je písek" + "cs": "Povrch je písek", + "uk": "Поверхня - пісок" } }, { @@ -258,8 +279,9 @@ "it": "La superficie è pietre irregolari", "fr": "La surface est en pierres pavées", "de": "Die Oberfläche ist aus Pflastersteinen", - "es": "La superficie es adoquines", - "cs": "Povrch je dlážděný" + "es": "La superficie es de adoquines", + "cs": "Povrch je dlážděný", + "uk": "Покриття - бруківка" } }, { @@ -271,9 +293,10 @@ "it": "La superficie è asfalto", "fr": "La surface est en bitume", "de": "Die Oberfläche ist Asphalt", - "es": "La superficie es asfalto", + "es": "La superficie es de asfalto", "ca": "La superfícies és asfalt", - "cs": "Povrch je asfalt" + "cs": "Povrch je asfalt", + "uk": "Покриття - асфальт" } }, { @@ -286,9 +309,10 @@ "it": "La superficie è calcestruzzo", "de": "Die Oberfläche ist Beton", "eo": "La surfaco estas betona", - "es": "La superficie es hormigón", + "es": "La superficie es de hormigón", "ca": "La superfície es formigó", - "cs": "Povrch je betonový" + "cs": "Povrch je betonový", + "uk": "Поверхня - бетон" } }, { @@ -299,9 +323,10 @@ "fr": "La surface est pavée", "it": "La superficie è pavimentata", "de": "Die Oberfläche ist gepflastert", - "es": "La superficie está pavimentada", + "es": "La superficie es pavimentada", "ca": "La superfície està pavimentada", - "cs": "Povrch je zpevněný" + "cs": "Povrch je zpevněný", + "uk": "Поверхня тверде покриття" }, "hideInAnswer": true } @@ -314,7 +339,8 @@ "en": "Is this road lit at night?", "nl": "Is deze weg 's nachts verlicht?", "de": "Ist diese Straße nachts beleuchtet?", - "fr": "Cette route est-elle éclairée la nuit ?" + "fr": "Cette route est-elle éclairée la nuit ?", + "es": "¿Está iluminado este camino por la noche?" }, "mappings": [ { @@ -326,7 +352,8 @@ "then": { "en": "Not lit", "nl": "Niet verlicht", - "de": "Nicht beleuchtet" + "de": "Nicht beleuchtet", + "es": "Sin iluminación" } } ] diff --git a/assets/layers/souvenir_coin/souvenir_coin.json b/assets/layers/souvenir_coin/souvenir_coin.json index 0bdb64fee..d89960efc 100644 --- a/assets/layers/souvenir_coin/souvenir_coin.json +++ b/assets/layers/souvenir_coin/souvenir_coin.json @@ -2,11 +2,13 @@ "id": "souvenir_coin", "name": { "en": "Souvenir Coin Machines", - "de": "Souvenir-Münzautomaten" + "de": "Souvenir-Münzautomaten", + "es": "Máquinas de Monedas de Recuerdo" }, "description": { "en": "Layer showing machines selling souvenir coins", - "de": "Ebene mit Automaten, die Souvenir-Münzen verkaufen" + "de": "Ebene mit Automaten, die Souvenir-Münzen verkaufen", + "es": "Capa que muestra máquinas expendedoras de monedas de recuerdo" }, "source": { "osmTags": { @@ -19,7 +21,8 @@ "title": { "render": { "en": "Souvenir Coin Machine", - "de": "Souvenir-Münzautomat" + "de": "Souvenir-Münzautomat", + "es": "Máquina de Monedas de Recuerdo" } }, "pointRendering": [ @@ -55,11 +58,13 @@ { "title": { "en": "a souvenir coin machine", - "de": "ein Souvenir-Münzautomaten" + "de": "ein Souvenir-Münzautomaten", + "es": "una máquina de monedas de recuerdo" }, "description": { "en": "Add a machine selling souvenir coins", - "de": "Hinzufügen eines Automaten für Souvenirmünzen" + "de": "Hinzufügen eines Automaten für Souvenirmünzen", + "es": "Añadir una máquina expendedora de monedas de recuerdo" }, "tags": [ "amenity=vending_machine", @@ -76,35 +81,40 @@ "override": { "render": { "en": "This machine has {coin:design_count} designs available", - "de": "Diese Maschine hat {coin:design_count} Designs verfügbar" + "de": "Diese Maschine hat {coin:design_count} Designs verfügbar", + "es": "Esta máquina tiene {coin:design_count} diseños disponibles" }, "mappings": [ { "if": "coin:design_count=1", "then": { "en": "This machine has one design available", - "de": "Diese Maschine hat ein Design zur Verfügung" + "de": "Diese Maschine hat ein Design zur Verfügung", + "es": "Esta máquina tiene un diseño disponible" } }, { "if": "coin:design_count=2", "then": { "en": "This machine has two designs available", - "de": "Diese Maschine hat zwei Designs verfügbar" + "de": "Diese Maschine hat zwei Designs verfügbar", + "es": "Esta máquina tiene dos diseños disponibles" } }, { "if": "coin:design_count=3", "then": { "en": "This machine has three designs available", - "de": "Diese Maschine hat drei Designs verfügbar" + "de": "Diese Maschine hat drei Designs verfügbar", + "es": "Esta máquina tiene tres diseños disponibles" } }, { "if": "coin:design_count=4", "then": { "en": "This machine has four designs available", - "de": "Diese Maschine hat vier Designs verfügbar" + "de": "Diese Maschine hat vier Designs verfügbar", + "es": "Esta máquina tiene cuatro diseños disponibles" } } ] @@ -115,18 +125,21 @@ { "question": { "en": "How much does a souvenir coin cost?", - "de": "Wie viel kostet eine Souvenirmünze?" + "de": "Wie viel kostet eine Souvenirmünze?", + "es": "¿Cuánto cuesta una moneda de recuerdo?" }, "id": "charge", "render": { "en": "A souvenir coins costs {charge}", - "de": "Eine Souvenirmünze kostet {charge}" + "de": "Eine Souvenirmünze kostet {charge}", + "es": "Una moneda de recuerdo cuesta {charge}" }, "freeform": { "key": "charge", "placeholder": { "en": "Cost (e.g. 2 EUR)", - "de": "Kosten (z.B. 2 EUR)" + "de": "Kosten (z.B. 2 EUR)", + "es": "Coste (ej. 2 EUR)" } }, "mappings": [ @@ -134,7 +147,8 @@ "if": "charge=2 EUR", "then": { "en": "A souvenir coin costs 2 euro", - "de": "Eine Souvenirmünze kostet 2 Euro" + "de": "Eine Souvenirmünze kostet 2 Euro", + "es": "Una moneda de recuerdo cuesta 2 euros" }, "hideInAnswer": "_currency!~.*EUR.*" } @@ -144,7 +158,8 @@ { "question": { "en": "Is this machine located indoors?", - "de": "Ist diese Maschine im Innenbereich?" + "de": "Ist diese Maschine im Innenbereich?", + "es": "¿Está esta máquina ubicada en interiores?" }, "id": "indoor", "mappings": [ @@ -152,14 +167,16 @@ "if": "indoor=yes", "then": { "en": "This machine is located indoors.", - "de": "Diese Maschine befindet sich im Innenbereich." + "de": "Diese Maschine befindet sich im Innenbereich.", + "es": "Esta máquina está ubicada en interiores." } }, { "if": "indoor=no", "then": { "en": "This machine is located outdoors.", - "de": "Diese Maschine befindet sich im Freien." + "de": "Diese Maschine befindet sich im Freien.", + "es": "Esta máquina está ubicada en exteriores." } } ] diff --git a/assets/layers/souvenir_note/souvenir_note.json b/assets/layers/souvenir_note/souvenir_note.json index 0478678aa..c5e01395d 100644 --- a/assets/layers/souvenir_note/souvenir_note.json +++ b/assets/layers/souvenir_note/souvenir_note.json @@ -2,11 +2,13 @@ "id": "souvenir_note", "name": { "en": "Souvenir Banknote Machines", - "de": "Souvenir Banknotenmaschinen" + "de": "Souvenir Banknotenmaschinen", + "es": "Máquinas de Billetes de Recuerdo" }, "description": { "en": "Layer showing machines selling souvenir banknotes", - "de": "Ebene zeigt Maschinen, die Souvenir-Banknoten verkaufen" + "de": "Ebene zeigt Maschinen, die Souvenir-Banknoten verkaufen", + "es": "Capa que muestra máquinas expendedoras de billetes de recuerdo" }, "source": { "osmTags": { @@ -19,7 +21,8 @@ "title": { "render": { "en": "Souvenir Banknote Machine", - "de": "Souvenir-Banknotenautomat" + "de": "Souvenir-Banknotenautomat", + "es": "Máquina de Billetes de Recuerdo" } }, "pointRendering": [ @@ -55,11 +58,13 @@ { "title": { "en": "a souvenir banknote machine", - "de": "eine Souvenir-Banknotenmaschine" + "de": "eine Souvenir-Banknotenmaschine", + "es": "una máquina de billetes de recuerdo" }, "description": { "en": "Add a machine selling souvenir banknotes", - "de": "Hinzufügen eines Automaten, der Souvenir-Banknoten verkauft" + "de": "Hinzufügen eines Automaten, der Souvenir-Banknoten verkauft", + "es": "Añadir una máquina expendedora de billetes de recuerdo" }, "tags": [ "amenity=vending_machine", @@ -74,7 +79,8 @@ "id": "designs", "question": { "en": "How many designs are available?", - "de": "Wie viele Designs sind verfügbar?" + "de": "Wie viele Designs sind verfügbar?", + "es": "¿Cuántos diseños están disponibles?" }, "freeform": { "key": "note:design_count", @@ -82,42 +88,47 @@ "placeholder": { "en": "Number of designs (e.g. 5)", "de": "Motivanzahl (z.B. 5)", - "es": "Número de diseños (por ejemplo, 5)", + "es": "Número de diseños (ej. 5)", "ca": "Nombre de dissenys (p. e. 5)", "cs": "Počet vzorů (např. 5)" } }, "render": { "en": "This machine has {note:design_count} designs available.", - "de": "Diese Maschine verfügt über {note:design_count} Designs." + "de": "Diese Maschine verfügt über {note:design_count} Designs.", + "es": "Esta máquina tiene {note:design_count} diseños disponibles." }, "mappings": [ { "if": "note:design_count=1", "then": { "en": "This machine has one design available.", - "de": "Diese Maschine hat ein Design zur Verfügung." + "de": "Diese Maschine hat ein Design zur Verfügung.", + "es": "Esta máquina tiene un diseño disponible." } }, { "if": "note:design_count=2", "then": { "en": "This machine has two designs available.", - "de": "Diese Maschine hat zwei Designs verfügbar." + "de": "Diese Maschine hat zwei Designs verfügbar.", + "es": "Esta máquina tiene dos diseños disponibles." } }, { "if": "note:design_count=3", "then": { "en": "This machine has three designs available.", - "de": "Diese Maschine hat drei Designs verfügbar." + "de": "Diese Maschine hat drei Designs verfügbar.", + "es": "Esta máquina tiene tres diseños disponibles." } }, { "if": "note:design_count=4", "then": { "en": "This machine has four designs available.", - "de": "Diese Maschine hat vier Designs verfügbar." + "de": "Diese Maschine hat vier Designs verfügbar.", + "es": "Esta máquina tiene cuatro diseños disponibles." } } ] @@ -127,18 +138,21 @@ { "question": { "en": "How much does a souvenir note cost?", - "de": "Wie viel kostet eine Souvenirnote?" + "de": "Wie viel kostet eine Souvenirnote?", + "es": "¿Cuánto cuesta un billete de recuerdo?" }, "id": "charge", "render": { "en": "A souvenir note costs {charge}", - "de": "Eine Souvenirnote kostet {charge}" + "de": "Eine Souvenirnote kostet {charge}", + "es": "Un billete de recuerdo cuesta {charge}" }, "freeform": { "key": "charge", "placeholder": { "en": "Cost (e.g. 2 EUR)", - "de": "Kosten (z.B. 2 EUR)" + "de": "Kosten (z.B. 2 EUR)", + "es": "Coste (ej. 2 EUR)" } }, "mappings": [ @@ -146,7 +160,8 @@ "if": "charge=2 EUR", "then": { "en": "A souvenir note costs 2 euro", - "de": "Eine Souvenirnote kostet 2 Euro" + "de": "Eine Souvenirnote kostet 2 Euro", + "es": "Un billete de recuerdo cuesta 2 euros" }, "hideInAnswer": "_currency!~.*EUR.*" }, @@ -154,7 +169,8 @@ "if": "charge=3 EUR", "then": { "en": "A souvenir note costs 3 euro", - "de": "Eine Souvenirnote kostet 3 Euro" + "de": "Eine Souvenirnote kostet 3 Euro", + "es": "Un billete de recuerdo cuesta 3 euros" }, "hideInAnswer": "_currency!~.*EUR.*" } @@ -164,7 +180,8 @@ { "question": { "en": "Is this machine located indoors?", - "de": "Ist diese Maschine im Innenbereich?" + "de": "Ist diese Maschine im Innenbereich?", + "es": "¿Está esta máquina ubicada en interiores?" }, "id": "indoor", "mappings": [ @@ -172,14 +189,16 @@ "if": "indoor=yes", "then": { "en": "This machine is located indoors.", - "de": "Diese Maschine befindet sich im Innenbereich." + "de": "Diese Maschine befindet sich im Innenbereich.", + "es": "Esta máquina está ubicada en interiores." } }, { "if": "indoor=no", "then": { "en": "This machine is located outdoors.", - "de": "Diese Maschine befindet sich im Freien." + "de": "Diese Maschine befindet sich im Freien.", + "es": "Esta máquina está ubicada en exteriores." } } ] diff --git a/assets/layers/speed_camera/speed_camera.json b/assets/layers/speed_camera/speed_camera.json index 557d05dbc..c31174730 100644 --- a/assets/layers/speed_camera/speed_camera.json +++ b/assets/layers/speed_camera/speed_camera.json @@ -4,7 +4,7 @@ "en": "Speed Camera", "de": "Blitzer", "nl": "Flitspaal", - "es": "Cámara de velocidad", + "es": "Radar", "ca": "Càmera de velocitat", "cs": "Rychlostní radar", "sl": "Hitrostna kamera" @@ -13,7 +13,7 @@ "en": "Layer showing speed cameras", "de": "Ebene mit Blitzern", "nl": "Laag met flitspalen", - "es": "Capa con cámaras de velocidad", + "es": "Capa que muestra radares", "ca": "Capa que mostra càmeres de velocitat", "cs": "Vrstva zobrazující rychlostní radary", "sl": "Sloj prikazuje hitrostne kamere (radarje)" @@ -27,7 +27,7 @@ "en": "Speed Camera", "de": "Blitzer", "nl": "Flitspaal", - "es": "Cámara de velocidad", + "es": "Radar", "ca": "Càmera de velocitat", "cs": "Rychlostní radar" } @@ -59,7 +59,7 @@ "en": "a speed camera", "de": "einen Blitzer", "nl": "een flitspaal", - "es": "una cámara de velocidad", + "es": "un radar", "ca": "una càmera de velocitat", "cs": "rychlostní radar", "sl": "hitrostna kamera" @@ -108,7 +108,7 @@ "en": "The reference number of this speed camera is {ref}", "de": "Die Referenznummer dieses Blitzers ist {ref}", "nl": "De referentie van deze flitspaal is {ref}", - "es": "El número de referencia de este radar de velocidad es {ref}", + "es": "El número de referencia de este radar es {ref}", "cs": "Referenční číslo tohoto rychlostního radaru je {ref}" }, "condition": "ref~*" @@ -122,7 +122,7 @@ "de": "In welche Himmelsrichtung filmt diese Kamera?", "da": "I hvilken geografisk retning filmer dette kamera?", "ca": "En quina direcció geogràfica apunta aquesta càmera?", - "es": "¿A qué dirección geográfica apunta esta cámara?", + "es": "¿En qué dirección geográfica graba esta cámara?", "cs": "Ve kterém geografickém směru tato kamera snímá?", "sl": "V katero geografsko smer snema ta kamera?" }, @@ -134,7 +134,7 @@ "de": "filmt in Himmelsrichtung {direction}", "da": "Filmer til en kompasretning af {direction}", "ca": "Grava en direcció {direction}", - "es": "Graba en dirección a {direction}", + "es": "Graba hacia un rumbo de brújula de {direction}", "cs": "Snímané oblasti podle směru kompasu {direction}", "sl": "Snema v smeri kompasa {direction}" }, diff --git a/assets/layers/speed_display/speed_display.json b/assets/layers/speed_display/speed_display.json index 6d8dc7afe..6980d2891 100644 --- a/assets/layers/speed_display/speed_display.json +++ b/assets/layers/speed_display/speed_display.json @@ -5,14 +5,16 @@ "de": "Geschwindigkeitsanzeigen", "nl": "Snelheidsdisplay", "ca": "Radar pedagògic", - "cs": "Ukazatel rychlosti" + "cs": "Ukazatel rychlosti", + "es": "Pantalla de Velocidad" }, "description": { "en": "Layer showing speed displays that alert drivers of their speed.", "de": "Ebene mit Geschwindigkeitsanzeigen, die Fahrer auf ihre Geschwindigkeit hinweisen.", "nl": "Laag met snelheidsdisplays om bestuurders op hun snelheid te wijzen.", "ca": "Capa que mostra radars pedagògics que alerten als conductors de la seva velocitat.", - "cs": "Vrstva zobrazující ukazatele rychlosti, které řidiče upozorňují na jejich rychlost." + "cs": "Vrstva zobrazující ukazatele rychlosti, které řidiče upozorňují na jejich rychlost.", + "es": "Capa que muestra pantallas de velocidad que alertan a los conductores de su velocidad." }, "source": { "osmTags": "highway=speed_display" @@ -23,7 +25,8 @@ "en": "Speed Display", "de": "Geschwindigkeitsanzeige", "nl": "Snelheidsdisplay", - "cs": "Ukazatel rychlosti" + "cs": "Ukazatel rychlosti", + "es": "Pantalla de Velocidad" } }, "pointRendering": [ @@ -47,7 +50,8 @@ "de": "eine Geschwindigkeitsanzeige", "nl": "een snelheidsdisplay", "ca": "un radar pedagògic", - "cs": "ukazatel rychlosti" + "cs": "ukazatel rychlosti", + "es": "una pantalla de velocidad" }, "tags": [ "highway=speed_display" @@ -62,7 +66,8 @@ "de": "Wie hoch ist die zulässige Höchstgeschwindigkeit bei dieser Geschwindigkeitsanzeige?", "nl": "Wat is de maximum toegestane snelheid bij dit snelheidsdisplay?", "fr": "Quelle est la vitesse maximale autorisée au niveau de ce radar pédagogique ?", - "cs": "Jaká je maximální povolená rychlost na tomto ukazateli rychlosti?" + "cs": "Jaká je maximální povolená rychlost na tomto ukazateli rychlosti?", + "es": "¿Cuál es la velocidad máxima permitida en esta pantalla de velocidad?" }, "freeform": { "key": "maxspeed", @@ -72,7 +77,8 @@ "de": "Zulässige Geschwindigkeit bei Geschwindigkeitsanzeige", "nl": "Maximum toegestane snelheid bij snelheidsdisplay", "fr": "Vitesse autorisée au niveau de ce radar pédagogique", - "cs": "Povolená rychlost na ukazateli rychlosti" + "cs": "Povolená rychlost na ukazateli rychlosti", + "es": "Velocidad permitida en la pantalla de velocidad" } }, "render": { @@ -81,7 +87,8 @@ "ca": "La velocitat màxima permesa a aquest radar pedagògic és {canonical(maxspeed)}", "nl": "De maximum toegestane snelheid bij dit snelheidsdisplay is {canonical(maxspeed)}", "fr": "La vitesse maximale autorisée au niveau de ce radar pédagogique est {canonical(maxspeed)}", - "cs": "Maximální povolená rychlost na tomto ukazateli rychlosti je {canonical(maxspeed)}" + "cs": "Maximální povolená rychlost na tomto ukazateli rychlosti je {canonical(maxspeed)}", + "es": "La velocidad máxima permitida en esta pantalla de velocidad es {canonical(maxspeed)}" } }, { @@ -91,7 +98,9 @@ "de": "Wie lautet der Text auf dieser Geschwindigkeitsanzeige?", "ca": "Quin text es mostra al radar pedagògic?", "nl": "Wat is de tekst op dit snelheidsdisplay?", - "cs": "Jaký je text na tomto ukazateli rychlosti?" + "cs": "Jaký je text na tomto ukazateli rychlosti?", + "uk": "Який текст відображається на цьому дисплеї швидкості?", + "es": "¿Cuál es el texto en esta pantalla de velocidad?" }, "freeform": { "key": "inscription", @@ -101,7 +110,9 @@ "de": "Text auf der Geschwindigkeitsanzeige (z. B. \"Ihre Geschwindigkeit\")", "nl": "Tekst op snelheidsdisplay (b.v. 'Uw snelheid')", "ca": "Text al radar pedagògic (p. e. 'La seva velocitat')", - "cs": "Text na displeji rychlosti (např. \"Vaše rychlost\")" + "cs": "Text na displeji rychlosti (např. \"Vaše rychlost\")", + "uk": "Текст на дисплеї швидкості (наприклад, \"Ваша швидкість\")", + "es": "Texto en la pantalla de velocidad (ej. 'Su velocidad')" } }, "render": { @@ -109,7 +120,9 @@ "de": "Der Text auf dieser Geschwindigkeitsanzeige ist {inscription}", "nl": "De tekst op dit snelheidsdisplay is {inscription}", "ca": "El text a aquest radar pedagogic és {inscription}", - "cs": "Text na tomto ukazateli rychlosti je {inscription}" + "cs": "Text na tomto ukazateli rychlosti je {inscription}", + "uk": "Текст на цьому дисплеї швидкості має вигляд {inscription}", + "es": "El texto en esta pantalla de velocidad es {inscription}" } } ], diff --git a/assets/layers/sport_pitch/sport_pitch.json b/assets/layers/sport_pitch/sport_pitch.json index 7958b40f8..18e9b3498 100644 --- a/assets/layers/sport_pitch/sport_pitch.json +++ b/assets/layers/sport_pitch/sport_pitch.json @@ -8,7 +8,7 @@ "it": "Campi sportivi", "de": "Sportplätze", "ca": "Camps d'esports", - "es": "Pistas de deportes", + "es": "Canchas deportivas", "cs": "Sportovní hřiště" }, "description": { @@ -18,7 +18,7 @@ "it": "Un campo sportivo", "ru": "Спортивная площадка", "de": "Ein Sportplatz", - "es": "Una pista de deportes", + "es": "Una cancha deportiva", "cs": "Sportovní hřiště" }, "source": { @@ -41,7 +41,7 @@ "it": "Campo sportivo", "de": "Sportplatz", "ca": "Camp d'esports", - "es": "Pista de deportes", + "es": "Cancha deportiva", "cs": "Sportovní hřiště" } }, @@ -142,7 +142,8 @@ "it": "una tavolo da tennistavolo", "ru": "Стол для настольного тенниса", "de": "eine Tischtennisplatte", - "cs": "stůl na stolní tenis" + "cs": "stůl na stolní tenis", + "es": "una mesa de ping-pong" }, "tags": [ "leisure=pitch", @@ -157,7 +158,7 @@ "ru": "Спортивная площадка", "it": "una campo sportivo", "de": "einen Sportplatz", - "es": "una pista de deportes", + "es": "una cancha deportiva", "ca": "una pista d'esports", "cs": "sportovní hřiště" }, @@ -176,7 +177,7 @@ "en": "{sport} is played here", "it": "Qui si gioca a {sport}", "de": "Hier wird {sport} gespielt", - "es": "Aquí se juega al {sport}", + "es": "Aquí se juega a {sport}", "ca": "{sport} es juga aquí", "cs": "Zde se hraje {sport}" }, @@ -244,7 +245,7 @@ "ru": "Это стол для пинг-понга", "it": "Questo è un tavolo da ping pong", "de": "Dies ist eine Tischtennisplatte", - "es": "Esto es una mesa de ping pong", + "es": "Esta es una mesa de ping-pong", "ca": "Aquí es juga ping pong", "cs": "Toto je pingpongový stůl" } @@ -281,7 +282,8 @@ "ru": "Здесь можно играть в корфбол", "de": "Hier wird Kopfball gespielt", "ca": "Aquí es juga al corfbol", - "cs": "Zde se hraje korfbal" + "cs": "Zde se hraje korfbal", + "es": "Aquí se juega al Korfbal" } }, { @@ -310,7 +312,8 @@ "nl": "Dit is een skatepark", "de": "Dies ist ein Skatepark", "ca": "Açò és un skatepark", - "cs": "Toto je skatepark" + "cs": "Toto je skatepark", + "es": "Este es un skatepark" } } ], @@ -323,7 +326,8 @@ "en": "How much basketball hoops does this pitch have?", "de": "Wie viele Basketballkörbe hat das Spielfeld?", "cs": "Kolik má toto hřiště basketbalových košů?", - "ca": "Quants cèrcols té aquesta pista?" + "ca": "Quants cèrcols té aquesta pista?", + "es": "¿Cuántos aros de baloncesto tiene esta cancha?" }, "mappings": [ { @@ -331,7 +335,8 @@ "then": { "en": "This basketball pitch has a single hoop", "de": "Dieses Basketballfeld hat einen einzigen Korb", - "cs": "Toto basketbalové hřiště má jeden koš" + "cs": "Toto basketbalové hřiště má jeden koš", + "es": "Esta cancha de baloncesto tiene un solo aro" } }, { @@ -340,7 +345,8 @@ "en": "This basketball pitch has two hoops", "de": "Dieses Basketballfeld hat zwei Körbe", "cs": "Toto basketbalové hřiště má dva koše", - "ca": "Aquest camp de bàsquet té dos cèrcols" + "ca": "Aquest camp de bàsquet té dos cèrcols", + "es": "Esta cancha de baloncesto tiene dos aros" } }, { @@ -349,7 +355,8 @@ "en": "This basketball pitch has four hoops", "de": "Dieses Basketballfeld hat vier Körbe", "cs": "Toto basketbalové hřiště má čtyři koše", - "ca": "Aquest camp de bàsquet té quatre cèrcols" + "ca": "Aquest camp de bàsquet té quatre cèrcols", + "es": "Esta cancha de baloncesto tiene cuatro aros" } }, { @@ -358,7 +365,8 @@ "en": "This basketball pitch has {hoops} hoops", "de": "Dieses Basketballfeld hat {hoops} Körbe", "cs": "Toto basketbalové hřiště má {hoops} koše", - "ca": "Aquest camp de bàsquet té {hoops} cèrcols" + "ca": "Aquest camp de bàsquet té {hoops} cèrcols", + "es": "Esta cancha de baloncesto tiene {hoops} aros" }, "hideInAnswer": true } @@ -373,7 +381,7 @@ "it": "Qual è la superficie di questo campo sportivo?", "ru": "Какое покрытие на этой спортивной площадке?", "de": "Welchen Belag hat der Sportplatz?", - "es": "¿Cual es la superficie de esta pista de deportes?", + "es": "¿Cuál es la superficie de esta cancha deportiva?", "ca": "Quina és la superfície d'aquest camp esportiu?", "cs": "Jaký je povrch tohoto sportovního hřiště?" }, @@ -384,9 +392,10 @@ "ru": "Поверхность - {surface}", "it": "La superficie è {surface}", "de": "Der Belag ist {surface}", - "es": "La superficie es {surface}", + "es": "La superficie es de {surface}", "ca": "La superfícies és {surface}", - "cs": "Povrch je {surface}" + "cs": "Povrch je {surface}", + "uk": "Поверхня - {surface}" }, "freeform": { "key": "surface" @@ -401,9 +410,10 @@ "ru": "Поверхность - трава", "it": "La superficie è erba", "de": "Der Belag ist aus Gras", - "es": "La superficie es hierba", + "es": "La superficie es de césped", "ca": "La superfície és herba", - "cs": "Povrch je tráva" + "cs": "Povrch je tráva", + "uk": "Поверхня - трава" } }, { @@ -415,9 +425,10 @@ "ru": "Поверхность - песок", "it": "La superficie è sabbia", "de": "Der Belag ist aus Sand", - "es": "La superficie es arena", + "es": "La superficie es de arena", "ca": "La superfície és sorra", - "cs": "Povrch je písek" + "cs": "Povrch je písek", + "uk": "Поверхня - пісок" } }, { @@ -429,9 +440,10 @@ "ru": "Поверхность - брусчатка", "it": "La superficie è pietre irregolari", "de": "Der Belag ist aus Pflastersteinen", - "es": "La superficie es adoquines", + "es": "La superficie es de adoquines", "ca": "La superfície són llambordes", - "cs": "Povrch je dlážděný" + "cs": "Povrch je dlážděný", + "uk": "Покриття - бруківка" } }, { @@ -443,9 +455,10 @@ "ru": "Поверхность - асфальт", "it": "La superficie è asfalto", "de": "Der Belag ist aus Asphalt", - "es": "La superficie es asfalto", + "es": "La superficie es de asfalto", "ca": "La superfície és asfalt", - "cs": "Povrch je asfalt" + "cs": "Povrch je asfalt", + "uk": "Покриття - асфальт" } }, { @@ -457,9 +470,10 @@ "ru": "Поверхность - бетон", "it": "La superficie è calcestruzzo", "de": "Der Belag ist aus Beton", - "es": "La superficie es hormigón", + "es": "La superficie es de hormigón", "ca": "La superfície és formigó", - "cs": "Povrch je betonový" + "cs": "Povrch je betonový", + "uk": "Поверхня - бетон" } }, { @@ -468,7 +482,9 @@ "en": "The surface is fine gravel", "nl": "De ondergrond bestaat uit grind", "de": "Der Belag ist feiner Kies", - "ca": "La superfície és grava fina" + "ca": "La superfície és grava fina", + "uk": "Поверхня - дрібний гравій", + "es": "La superficie es de grava fina" } }, { @@ -477,7 +493,9 @@ "en": "The surface of this track is Tartan, a synthetic, slightly springy, porous surface", "nl": "De ondergrond is Tartan, een synthetisch, licht verende en poreuze ondergrond", "ca": "La superfície d'aquesta pista és Tartan, una superfície sintètica, lleugerament molla i porosa", - "de": "Der Belag ist Tartan, ein synthetischer, leicht federnder, poröser Belag" + "de": "Der Belag ist Tartan, ein synthetischer, leicht federnder, poröser Belag", + "uk": "Поверхня цієї доріжки - тартан, синтетична, злегка пружиниста, пориста поверхня", + "es": "La superficie de esta pista es de tartán, una superficie sintética, ligeramente elástica y porosa" } } ], @@ -492,7 +510,7 @@ "it": "Questo campo sportivo è aperto al pubblico?", "ru": "Есть ли свободный доступ к этой спортивной площадке?", "de": "Ist der Sportplatz öffentlich zugänglich?", - "es": "¿Esta pista de deportes es accesible públicamente?", + "es": "¿Es esta cancha deportiva de acceso público?", "ca": "Aquesta pista d'esports és accessible públicament?", "cs": "Je toto sportovní hřiště veřejně přístupné?" }, @@ -520,7 +538,7 @@ "it": "Accesso limitato (p.es. solo con prenotazione, in certi orari, ...)", "ru": "Ограниченный доступ (напр., только по записи, в определённые часы, ...)", "de": "Der Sportplatz ist nur eingeschränkt zugänglich (z. B. nur mit Termin, nur zu bestimmten Zeiten, …)", - "es": "Acceso limitado (ej. solo con una cita, a cieras horas, ...)", + "es": "Acceso limitado (ej. solo con cita previa, en ciertos horarios, …)", "ca": "Accés limitat (p.e. només amb cita, durant certes hores, …)", "cs": "Omezený přístup (např. pouze po předchozí domluvě, v určitých hodinách, ...)" } @@ -534,7 +552,7 @@ "it": "Accesso limitato ai membri dell'associazione", "ru": "Доступ только членам клуба", "de": "Der Sportplatz ist nur für Vereinsmitglieder zugänglich", - "es": "Solo accesible para miembros del club", + "es": "Solo accesible para socios del club", "ca": "Sols accessible per a membres del club", "cs": "Přístupné pouze pro členy klubu" } @@ -547,7 +565,7 @@ "en": "Private - not accessible to the public", "it": "Privato - non aperto al pubblico", "de": "Der Sportplatz ist nicht öffentlich zugänglich (es ist ein privater Sportplatz)", - "es": "Privada - no accesible al público", + "es": "Privado - no accesible al público", "ca": "Privat - no accessible al públic", "cs": "Soukromé - veřejnosti nepřístupné" } @@ -578,7 +596,7 @@ "it": "È necessario prenotarsi per usare questo campo sportivo?", "ru": "Нужна ли предварительная запись для доступа на эту спортивную площадку?", "de": "Muss man einen Termin vereinbaren, um den Sportplatz nutzen zu dürfen?", - "es": "¿Hay que pedir una cita para utilizar esta pista?", + "es": "¿Hay que pedir cita previa para usar esta cancha deportiva?", "ca": "Hi ha que sol·licitar cita per a utilitzar la pista?", "cs": "Je nutné se na toto sportovní hřiště objednat?" }, @@ -598,7 +616,7 @@ "en": "Making an appointment is obligatory to use this sport pitch", "it": "La prenotazione è obbligatoria per usare questo campo sportivo", "de": "Eine Voranmeldung zur Nutzung des Sportplatzes ist erforderlich", - "es": "Pedir una cita es obligatorio para utilizar esta pista", + "es": "Es obligatorio pedir cita previa para usar esta cancha deportiva", "ca": "S'ha de demanar cita per a utilitzar la pista", "cs": "Pro využití tohoto sportovního hřiště je nutné se předem objednat" } @@ -612,7 +630,7 @@ "it": "La prenotazione è consigliata per usare questo campo sportivo", "ru": "Желательна предварительная запись для доступа на эту спортивную площадку", "de": "Eine Voranmeldung zur Nutzung des Sportplatzes wird empfohlen", - "es": "Se recomienda pedir una cita al utilizar esta pista", + "es": "Se recomienda pedir cita previa para usar esta cancha deportiva", "ca": "Es recomana demanar cita per a utilitzar la pista", "cs": "Při použití tohoto sportovního hřiště se doporučuje domluvit si schůzku" } @@ -626,7 +644,7 @@ "it": "La prenotazione è consentita, ma non è obbligatoria per usare questo campo sportivo", "ru": "Предварительная запись для доступа на эту спортивную площадку возможна, но не обязательна", "de": "Eine Voranmeldung zur Nutzung des Sportplatzes ist möglich, aber nicht erforderlich", - "es": "Pedir cita es posible, pero no necesario para utilizar esta pista de deportes", + "es": "Es posible pedir cita previa, pero no es necesario para usar esta cancha deportiva", "ca": "Es pot demanar cita, però no és necessari per a poder utilitzar la pista", "cs": "Domluvit si schůzku je možné, ale pro využití tohoto sportovního hřiště to není nutné" } @@ -640,7 +658,7 @@ "it": "Non è possibile prenotare", "ru": "Невозможна предварительная запись", "de": "Eine Voranmeldung zur Nutzung des Sportplatzes ist nicht möglich", - "es": "No es posible pedir cita", + "es": "No es posible pedir cita previa", "ca": "No és possible demanar cita", "cs": "Sjednání schůzky není možné" } @@ -654,9 +672,10 @@ "en": "What is the phone number of the operator?", "it": "Qual è il numero di telefono del gestore?", "de": "Wie lautet die Telefonnummer des Betreibers?", - "es": "¿Cual es el número de teléfono de la operadora?", + "es": "¿Cuál es el número de teléfono del operador?", "ca": "Quin és el telèfon de l'operadora?", - "cs": "Jaké je telefonní číslo provozovatele?" + "cs": "Jaké je telefonní číslo provozovatele?", + "uk": "Який номер телефону оператора?" }, "freeform": { "key": "phone", @@ -672,9 +691,10 @@ "en": "What is the email address of the operator?", "it": "Qual è l'indirizzo email del gestore?", "de": "Wie lautet die Email-Adresse des Betreibers?", - "es": "¿Cual es la dirección de correo electrónico de la operadora?", + "es": "¿Cuál es la dirección de correo electrónico del operador?", "ca": "Quina és l'adreça de correu electrònic de l'operador?", - "cs": "Jaká je e-mailová adresa provozovatele?" + "cs": "Jaká je e-mailová adresa provozovatele?", + "uk": "Яка електронна адреса оператора?" }, "freeform": { "key": "email", @@ -691,7 +711,7 @@ "it": "Quando è aperto questo campo sportivo?", "ru": "В какое время доступна эта площадка?", "de": "Wann ist dieser Sportplatz zugänglich?", - "es": "¿Cuándo es accesible esta pista?", + "es": "¿Cuándo es accesible esta cancha?", "cs": "Kdy je toto hřiště přístupné?" }, "render": "Openingsuren: {opening_hours_table()}", @@ -707,7 +727,8 @@ "nl": "24/7 toegankelijk", "de": "Immer zugänglich", "ca": "Sempre accesible", - "cs": "Vždy přístupné" + "cs": "Vždy přístupné", + "es": "Siempre accesible" }, "hideInAnswer": true }, @@ -746,7 +767,8 @@ "de": "Öffentlich zugänglich", "ca": "Accés lliure", "cs": "Veřejně přístupné", - "pt": "Acessível ao público" + "pt": "Acessível ao público", + "es": "Acceso público" }, "osmTags": { "or": [ diff --git a/assets/layers/sports_centre/sports_centre.json b/assets/layers/sports_centre/sports_centre.json index 421564a61..949c2b60a 100644 --- a/assets/layers/sports_centre/sports_centre.json +++ b/assets/layers/sports_centre/sports_centre.json @@ -4,13 +4,15 @@ "en": "Sports centres", "de": "Sportzentren", "ca": "Centres esportius", - "cs": "Sportovní centra" + "cs": "Sportovní centra", + "es": "Centros deportivos" }, "description": { "en": "Indoor and outdoor sports centres can be found on this layer", "de": "Hallen- und Freiluftsportzentren sind auf dieser Ebene zu finden", "ca": "En aquesta capa es poden trobar centres esportius interiors i exteriors", - "cs": "Na této vrstvě najdete krytá a venkovní sportovní centra" + "cs": "Na této vrstvě najdete krytá a venkovní sportovní centra", + "es": "En esta capa se pueden encontrar centros deportivos interiores y exteriores" }, "source": { "osmTags": "leisure=sports_centre" @@ -22,7 +24,8 @@ "de": "Sportzentrum", "ca": "Centre esportiu", "cs": "Sportovní centrum", - "id": "Pusat olahraga" + "id": "Pusat olahraga", + "es": "Centro deportivo" }, "mappings": [ { @@ -67,7 +70,8 @@ "de": "ein Sportzentrum", "ca": "un centre esportiu", "cs": "sportovní centra", - "id": "pusat olahraga" + "id": "pusat olahraga", + "es": "un centro deportivo" }, "tags": [ "leisure=sports_centre" @@ -80,12 +84,797 @@ "phone", "website", "email", - "wheelchair-access" + "wheelchair-access", + { + "multiAnswer": true, + "id": "sport_centre-sport", + "mappings": [ + { + "if": "sport=9pin", + "then": { + "en": "Nine-pin bowling" + } + }, + { + "if": "sport=10pin", + "then": { + "en": "Ten-pin bowling" + } + }, + { + "if": "sport=aerobics", + "then": { + "en": "Aerobics" + } + }, + { + "if": "sport=american_football", + "then": { + "en": "American football" + } + }, + { + "if": "sport=aikido", + "then": { + "en": "Aikido" + } + }, + { + "if": "sport=archery", + "then": { + "en": "Archery" + } + }, + { + "if": "sport=athletics", + "then": { + "en": "Athletics" + } + }, + { + "if": "sport=australian_football", + "then": { + "en": "Australian rules football" + } + }, + { + "if": "sport=badminton", + "then": { + "en": "Badminton" + } + }, + { + "if": "sport=bandy", + "then": { + "en": "Bandy" + } + }, + { + "if": "sport=base", + "then": { + "en": "BASE jumping" + } + }, + { + "if": "sport=baseball", + "then": { + "en": "Baseball" + } + }, + { + "if": "sport=basketball", + "then": { + "en": "Basketball" + } + }, + { + "if": "sport=beachvolleyball", + "then": { + "en": "Beachvolleyball" + } + }, + { + "if": "sport=biathlon", + "then": { + "en": "Biathlon" + } + }, + { + "if": "sport=billiards", + "then": { + "en": "Cue sports" + } + }, + { + "if": "sport=bmx", + "then": { + "en": "BMX" + } + }, + { + "if": "sport=bobsleigh", + "then": { + "en": "Bobsleigh" + } + }, + { + "if": "sport=boules", + "then": { + "en": "Boules" + } + }, + { + "if": "sport=bowls", + "then": { + "en": "Bowls" + } + }, + { + "if": "sport=boxing", + "then": { + "en": "Boxing" + } + }, + { + "if": "sport=bullfighting", + "then": { + "en": "Bullfighting" + } + }, + { + "if": "sport=canadian_football", + "then": { + "en": "Canadian football" + } + }, + { + "if": "sport=canoe", + "then": { + "en": "Canoe" + } + }, + { + "if": "sport=chess", + "then": { + "en": "Chess" + } + }, + { + "if": "sport=cliff_diving", + "then": { + "en": "Non-competitive diving" + } + }, + { + "if": "sport=climbing", + "then": { + "en": "Rock climbing" + } + }, + { + "if": "sport=climbing_adventure", + "then": { + "en": "Climbing Adventure" + } + }, + { + "if": "sport=cockfighting", + "then": { + "en": "Cockfighting" + } + }, + { + "if": "sport=cricket", + "then": { + "en": "Cricket" + } + }, + { + "if": "sport=crossfit", + "then": { + "en": "CrossFit" + } + }, + { + "if": "sport=croquet", + "then": { + "en": "Croquet" + } + }, + { + "if": "sport=curling", + "then": { + "en": "Curling" + } + }, + { + "if": "sport=cycle_polo", + "then": { + "en": "Cycle Polo" + } + }, + { + "if": "sport=cycling", + "then": { + "en": "Cycling" + } + }, + { + "if": "sport=dance", + "then": { + "en": "Dance" + } + }, + { + "if": "sport=darts", + "then": { + "en": "Darts" + } + }, + { + "if": "sport=dog_agility", + "then": { + "en": "Dog agility" + } + }, + { + "if": "sport=dog_racing", + "then": { + "en": "Greyhound racing" + } + }, + { + "if": "sport=dragon_boat", + "then": { + "en": "Dragon Boat" + } + }, + { + "if": "sport=equestrian", + "then": { + "en": "Equestrianism" + } + }, + { + "if": "sport=fencing", + "then": { + "en": "Fencing" + } + }, + { + "if": "sport=field_hockey", + "then": { + "en": "Field hockey" + } + }, + { + "if": "sport=fitness", + "then": { + "en": "Fitness" + } + }, + { + "if": "sport=five-a-side", + "then": { + "en": "5 person soccer" + } + }, + { + "if": "sport=floorball", + "then": { + "en": "Floorball" + } + }, + { + "if": "sport=four_square", + "then": { + "en": "Four square" + } + }, + { + "if": "sport=free_flying", + "then": { + "en": "Paragliding" + } + }, + { + "if": "sport=futsal", + "then": { + "en": "Futsal" + } + }, + { + "if": "sport=gaelic_games", + "then": { + "en": "Gaelic games" + } + }, + { + "if": "sport=gaga", + "then": { + "en": "Gaga ball" + } + }, + { + "if": "sport=golf", + "then": { + "en": "Golf" + } + }, + { + "if": "sport=gymnastics", + "then": { + "en": "Gymnastics" + } + }, + { + "if": "sport=handball", + "then": { + "en": "Handball" + } + }, + { + "if": "sport=hapkido", + "then": { + "en": "Hapkido" + } + }, + { + "if": "sport=hiking", + "then": { + "en": "Hiking" + } + }, + { + "if": "sport=horseshoes", + "then": { + "en": "Horseshoes" + } + }, + { + "if": "sport=horse_racing", + "then": { + "en": "Horse racing" + } + }, + { + "if": "sport=ice_hockey", + "then": { + "en": "Ice Hockey" + } + }, + { + "if": "sport=ice_skating", + "then": { + "en": "Ice skating" + } + }, + { + "if": "sport=ice_stock", + "then": { + "en": "Ice stock sport" + } + }, + { + "if": "sport=judo", + "then": { + "en": "Judo" + } + }, + { + "if": "sport=karate", + "then": { + "en": "Karate" + } + }, + { + "if": "sport=karting", + "then": { + "en": "Kart racing" + } + }, + { + "if": "sport=kickboxing", + "then": { + "en": "Kickboxing" + } + }, + { + "if": "sport=kitesurfing", + "then": { + "en": "Kitesurfing" + } + }, + { + "if": "sport=korfball", + "then": { + "en": "Korfball" + } + }, + { + "if": "sport=krachtball", + "then": { + "en": "Krachtball" + } + }, + { + "if": "sport=lacrosse", + "then": { + "en": "Lacrosse" + } + }, + { + "if": "sport=laser_tag", + "then": { + "en": "Laser tag" + } + }, + { + "if": "sport=martial_arts", + "then": { + "en": "Martial arts" + } + }, + { + "if": "sport=miniature_golf", + "then": { + "en": "Miniature golf" + } + }, + { + "if": "sport=model_aerodrome", + "then": { + "en": "Radio-controlled aircraft" + } + }, + { + "if": "sport=motocross", + "then": { + "en": "Motocross" + } + }, + { + "if": "sport=motor", + "then": { + "en": "Motorsport" + } + }, + { + "if": "sport=multi", + "then": { + "en": "Multiple kind of sports" + } + }, + { + "if": "sport=netball", + "then": { + "en": "Netball" + } + }, + { + "if": "sport=obstacle_course", + "then": { + "en": "Obstacle course" + } + }, + { + "if": "sport=orienteering", + "then": { + "en": "Orienteering" + } + }, + { + "if": "sport=paddle_tennis", + "then": { + "en": "Paddle tennis" + } + }, + { + "if": "sport=padel", + "then": { + "en": "Padel" + } + }, + { + "if": "sport=paintball", + "then": { + "en": "Paintball" + } + }, + { + "if": "sport=parachuting", + "then": { + "en": "Parachuting" + } + }, + { + "if": "sport=parkour", + "then": { + "en": "Parkour" + } + }, + { + "if": "sport=pelota", + "then": { + "en": "Palota" + } + }, + { + "if": "sport=pesäpallo", + "then": { + "en": "Pesäpallo" + } + }, + { + "if": "sport=pickleball", + "then": { + "en": "Pickleball" + } + }, + { + "if": "sport=pilates", + "then": { + "en": "Pilates" + } + }, + { + "if": "sport=pole_dance", + "then": { + "en": "Pole dance" + } + }, + { + "if": "sport=racquet", + "then": { + "en": "Racquetball" + } + }, + { + "if": "sport=rc_car", + "then": { + "en": "Radio-controlled car" + } + }, + { + "if": "sport=roller_skating", + "then": { + "en": "Roller skating" + } + }, + { + "if": "sport=rowing", + "then": { + "en": "Rowing" + } + }, + { + "if": "sport=rugby_league", + "then": { + "en": "Rugby league" + } + }, + { + "if": "sport=rugby_union", + "then": { + "en": "Rugby union" + } + }, + { + "if": "sport=running", + "then": { + "en": "Running" + } + }, + { + "if": "sport=sailing", + "then": { + "en": "Sailing" + } + }, + { + "if": "sport=scuba_diving", + "then": { + "en": "Scuba diving" + } + }, + { + "if": "sport=shooting", + "then": { + "en": "Shooting" + } + }, + { + "if": "sport=shot-put", + "then": { + "en": "Shot-put" + } + }, + { + "if": "sport=skateboard", + "then": { + "en": "Skateboard" + } + }, + { + "if": "sport=ski_jumping", + "then": { + "en": "Ski jumping" + } + }, + { + "if": "sport=snooker", + "then": { + "en": "Snooker" + } + }, + { + "if": "sport=soccer", + "then": { + "en": "Soccer" + } + }, + { + "if": "sport=softball", + "then": { + "en": "Softball" + } + }, + { + "if": "sport=speedway", + "then": { + "en": "Motorcycle speedway" + } + }, + { + "if": "sport=squash", + "then": { + "en": "Squash" + } + }, + { + "if": "sport=sumo", + "then": { + "en": "Sumo" + } + }, + { + "if": "sport=surfing", + "then": { + "en": "Surfing" + } + }, + { + "if": "sport=swimming", + "then": { + "en": "Swimming" + } + }, + { + "if": "sport=table_tennis", + "then": { + "en": "Table tennis" + } + }, + { + "if": "sport=table_soccer", + "then": { + "en": "Table soccer" + } + }, + { + "if": "sport=taekwondo", + "then": { + "en": "Taekwondo" + } + }, + { + "if": "sport=tennis", + "then": { + "en": "Tennis" + } + }, + { + "if": "sport=teqball", + "then": { + "en": "Teqball" + } + }, + { + "if": "sport=toboggan", + "then": { + "en": "Toboggan" + } + }, + { + "if": "sport=trampoline", + "then": { + "en": "Trampoline" + } + }, + { + "if": "sport=ultimate", + "then": { + "en": "Ultimate frisbee" + } + }, + { + "if": "sport=ultralight_aviation", + "then": { + "en": "Ultralight aviation" + } + }, + { + "if": "sport=volleyball", + "then": { + "en": "Volleyball" + } + }, + { + "if": "sport=wakeboarding", + "then": { + "en": "Wakeboarding" + } + }, + { + "if": "sport=water_polo", + "then": { + "en": "Water polo" + } + }, + { + "if": "sport=water_ski", + "then": { + "en": "Waterskiing" + } + }, + { + "if": "sport=weightlifting", + "then": { + "en": "Olympic weightlifting" + } + }, + { + "if": "sport=windsurfing", + "then": { + "en": "Windsurfing" + } + }, + { + "if": "sport=wrestling", + "then": { + "en": "Wrestling" + } + }, + { + "if": "sport=yoga", + "then": { + "en": "Yoga" + } + }, + { + "if": "sport=zurkhaneh_sport", + "then": { + "en": "Zurkhaneh sport" + } + } + ], + "render": { + "en": "Sports played here: {sport}" + }, + "freeform": { + "key": "sport" + }, + "question": { + "en": "What sports are played at this venue?" + } + } ], "filter": [ "open_now" ], "allowMove": { "enableImproveAccuracy": true - } + }, + "credits": "ochnygosch", + "credits:uid": 63804 } diff --git a/assets/layers/stairs/stairs.json b/assets/layers/stairs/stairs.json index 4e5df4934..ceda4c28b 100644 --- a/assets/layers/stairs/stairs.json +++ b/assets/layers/stairs/stairs.json @@ -6,7 +6,8 @@ "de": "Treppen", "ca": "Escales", "cs": "Schody", - "id": "Tangga" + "id": "Tangga", + "es": "Escaleras" }, "description": { "en": "Layer showing stairs and escalators", @@ -14,7 +15,8 @@ "nl": "Laag met trappen en roltrappen", "ca": "Capa que mostra escales i escales mecàniques", "cs": "Vrstva zobrazující schody a eskalátory", - "id": "Lapisan ini menunjukkan tangga dan eskalator" + "id": "Lapisan ini menunjukkan tangga dan eskalator", + "es": "Capa que muestra escaleras y escaleras mecánicas" }, "source": { "osmTags": "highway=steps" @@ -26,7 +28,8 @@ "nl": "Trap", "de": "Treppe", "ca": "Escales", - "cs": "Schody" + "cs": "Schody", + "es": "Escaleras" }, "mappings": [ { @@ -36,7 +39,8 @@ "nl": "Roltrap", "de": "Rolltreppe", "ca": "Escala mecànica", - "cs": "Jezdící schody" + "cs": "Jezdící schody", + "es": "Escalera mecánica" } } ] @@ -61,7 +65,7 @@ { "color": "gray", "width": 10, - "dashArray": "6 12" + "dashArray": "1 1" } ], "tagRenderings": [ @@ -74,14 +78,16 @@ "nl": "Tussen welke verdiepingen loopt deze trap?", "de": "Zwischen welchen Stockwerken befindet sich diese Treppe?", "ca": "Entre quines plantes estan aquestes escales?", - "cs": "Mezi kterými podlažími jsou tyto schody?" + "cs": "Mezi kterými podlažími jsou tyto schody?", + "es": "¿Entre qué niveles están estas escaleras?" }, "render": { "en": "These stairs are between the levels {level}", "nl": "Deze trap loopt tussen de verdiepingen {level}", "de": "Diese Treppe ist zwischen den Stockwerken {level}", "ca": "Aquestes escales estan entre les plantes {level}", - "cs": "Tyto schody jsou mezi patry {level}" + "cs": "Tyto schody jsou mezi patry {level}", + "es": "Estas escaleras están entre los niveles {level}" } } }, @@ -96,7 +102,8 @@ "de": "Das ist eine Rolltreppe", "ca": "Açò és una escala mecànica", "cs": "Jedná se o eskalátor", - "id": "Ini adalah eskalator" + "id": "Ini adalah eskalator", + "es": "Esta es una escalera mecánica" } }, { @@ -107,7 +114,8 @@ "de": "Das ist keine Rolltreppe", "ca": "Açò no és una escala mecànica", "cs": "Nejedná se o eskalátor", - "id": "Ini bukan eskalator" + "id": "Ini bukan eskalator", + "es": "Esta no es una escalera mecánica" } }, { @@ -118,7 +126,8 @@ "de": "Das ist keine Rolltreppe", "ca": "Això no és una escala mecànica", "cs": "Nejedná se o eskalátor", - "id": "Ini bukan eskalator" + "id": "Ini bukan eskalator", + "es": "Esta no es una escalera mecánica" }, "hideInAnswer": true } @@ -132,7 +141,8 @@ "de": "Hat die Treppe einen Handlauf?", "ca": "Aquestes escales tenen un passamà?", "cs": "Má toto schodiště zábradlí?", - "id": "Apakah tangga ini memiliki pegangan?" + "id": "Apakah tangga ini memiliki pegangan?", + "es": "¿Tiene esta escalera pasamanos?" }, "mappings": [ { @@ -143,7 +153,8 @@ "de": "Die Treppe hat einen Handlauf", "ca": "Aquestes escales tenen barana", "cs": "Tyto schody mají zábradlí", - "id": "Tangga ini memiliki pegangan tangan" + "id": "Tangga ini memiliki pegangan tangan", + "es": "Estas escaleras tienen pasamanos" } }, { @@ -154,7 +165,8 @@ "de": "Die Treppe hat keinen Handlauf", "ca": "Aquestes escales no tenen un passamà", "cs": "Tyto schody nemají zábradlí", - "id": "Tangga ini tidak memiliki pegangan tangan" + "id": "Tangga ini tidak memiliki pegangan tangan", + "es": "Estas escaleras no tienen pasamanos" } } ], @@ -173,7 +185,8 @@ "de": "Hat die Treppe eine taktile Schrift am Handlauf?", "nl": "Heeft deze trap voelbaar schrift op de leuning?", "ca": "Aquestes escales tenen escriptura braille a la barana?", - "cs": "Mají tyto schody hmatový nápis na zábradlí?" + "cs": "Mají tyto schody hmatový nápis na zábradlí?", + "es": "¿Tienen estas escaleras escritura táctil en el pasamanos?" }, "mappings": [ { @@ -183,7 +196,8 @@ "de": "Am Handlauf gibt es taktile Schrift", "nl": "Er is voelbaar schrift op de leuning", "ca": "Hi ha escriptura braille a la barana", - "cs": "Na zábradlí je hmatový nápis" + "cs": "Na zábradlí je hmatový nápis", + "es": "Hay escritura táctil en el pasamanos" } }, { @@ -193,7 +207,8 @@ "de": "Am Handlauf gibt es keine taktile Schrift", "nl": "Er is geen voelbaar schrift op de leuning", "ca": "No hi ha escriptura braille a la barana", - "cs": "Na zábradlí není žádné hmatové psaní" + "cs": "Na zábradlí není žádné hmatové psaní", + "es": "No hay escritura táctil en el pasamanos" } } ] @@ -210,21 +225,24 @@ "de": "In welchen Sprachen gibt es taktile Schrift (Braille) für die Navigation? ", "nl": "In welke talen is er voelbaar schrift (braille) voor navigatie? ", "ca": "En quins idiomes hi ha escriptura tàctil (braille) per a la navegació? ", - "cs": "Ve kterých jazycích existuje hmatové písmo (braillské písmo) pro navigaci? " + "cs": "Ve kterých jazycích existuje hmatové písmo (braillské písmo) pro navigaci? ", + "es": "¿En qué idiomas hay escritura táctil (braille) para la navegación? " }, "render_list_item": { "en": "These stairs have tactile writing in {language()}", "de": "Die Treppe hat taktile Schrift in {language()}", "nl": "Deze trap heeft voelbaar schrijft in {language()}", "ca": "Aquestes escales tenen escriptura tàctil en {language()}", - "cs": "Tyto schody mají hmatové písmo v {language()}" + "cs": "Tyto schody mají hmatové písmo v {language()}", + "es": "Estas escaleras tienen escritura táctil en {language()}" }, "render_single_language": { "en": "These stairs have tactile writing in {language()}", "de": "Die Treppe hat taktile Schrift in {language()}", "nl": "Deze trap heeft voelbaar schrijft in {language()}", "ca": "Aquestes escales tenen escriptura tàctil en {language()}", - "cs": "Tyto schody mají hmatové písmo v {language()}" + "cs": "Tyto schody mají hmatové písmo v {language()}", + "es": "Estas escaleras tienen escritura táctil en {language()}" } } } @@ -236,7 +254,8 @@ "de": "Gibt es eine Rampe an dieser Treppe?", "nl": "Is er een helling bij deze trap?", "ca": "Hi ha una rampa en aquestes escales?", - "cs": "Je u těchto schodů rampa?" + "cs": "Je u těchto schodů rampa?", + "es": "¿Hay una rampa en estas escaleras?" }, "multiAnswer": true, "mappings": [ @@ -248,7 +267,8 @@ "de": "Hier gibt es eine Rampe für Fahrräder", "nl": "Er is hier een helling voor fietsen", "ca": "Aquí hi ha una rampa per a bicicletes", - "cs": "Je zde rampa pro kola" + "cs": "Je zde rampa pro kola", + "es": "Hay una rampa para bicicletas aquí" } }, { @@ -259,7 +279,8 @@ "de": "Hier gibt es eine Rampe für Rollstühle", "nl": "Er is hier een helling voor rolstoelen", "ca": "Aquí hi ha una rampa per a cadires de rodes", - "cs": "Je zde rampa pro vozíčkáře" + "cs": "Je zde rampa pro vozíčkáře", + "es": "Hay una rampa para sillas de ruedas aquí" } }, { @@ -269,7 +290,8 @@ "de": "Hier gibt es eine Rampe für Rollstühle, die jedoch auf der Karte separat angezeigt wird", "nl": "Er is hier een helling voor rolstoelen, maar deze is los aangegeven op de kaart", "ca": "Aquí hi ha una rampa per a cadira de rodes, però es mostra separadament al mapa", - "cs": "Je zde rampa pro vozíčkáře, ale na mapě je zobrazena samostatně" + "cs": "Je zde rampa pro vozíčkáře, ale na mapě je zobrazena samostatně", + "es": "Hay una rampa para sillas de ruedas aquí, pero se muestra por separado en el mapa" }, "hideInAnswer": true }, @@ -281,7 +303,8 @@ "de": "Hier gibt es eine Rampe für Kinderwagen", "nl": "Er is hier een helling voor kinderwagens", "ca": "Aquí hi ha una rampa per als cotxets", - "cs": "Je zde rampa pro kočárky" + "cs": "Je zde rampa pro kočárky", + "es": "Hay una rampa para cochecitos aquí" } }, { @@ -292,7 +315,8 @@ "de": "An dieser Treppe gibt es keine Rampe", "nl": "Er is hier geen helling", "ca": "No hi ha cap rampa en aquestes escales", - "cs": "U těchto schodů není žádná rampa" + "cs": "U těchto schodů není žádná rampa", + "es": "No hay rampa en estas escaleras" } } ], @@ -304,7 +328,8 @@ "en": "These stairs have an incline of {incline}", "ca": "Aquestes escales tenen una inclinació de {incline}", "de": "Die Treppe hat eine Steigung von {incline}", - "id": "Tangga ini memiliki kemiringan sebesar {incline}" + "id": "Tangga ini memiliki kemiringan sebesar {incline}", + "es": "Estas escaleras tienen una inclinación de {incline}" }, "freeform": { "key": "incline", @@ -314,7 +339,8 @@ "en": "What is the incline of these stairs?", "ca": "Quina és la inclinació d'aquestes escales?", "de": "Welche Steigung hat die Treppe?", - "id": "Berapa kemiringan tangga ini?" + "id": "Berapa kemiringan tangga ini?", + "es": "¿Cuál es la inclinación de estas escaleras?" }, "mappings": [ { @@ -323,7 +349,8 @@ "en": "The upward direction is {direction_absolute()}", "ca": "La direcció ascendent és {direction_absolute()}", "de": "Die Aufwärtsrichtung ist {direction_absolute()}", - "id": "Arah ke atas adalah {direction_absolute()}" + "id": "Arah ke atas adalah {direction_absolute()}", + "es": "La dirección ascendente es {direction_absolute()}" }, "hideInAnswer": true }, @@ -333,7 +360,8 @@ "en": "The downward direction is {direction_absolute()}", "ca": "La direcció descendent és {direction_absolute()}", "de": "Die Abwärtsrichtung ist {direction_absolute()}", - "id": "Arah ke bawah adalah {direction_absolute()}" + "id": "Arah ke bawah adalah {direction_absolute()}", + "es": "La dirección descendente es {direction_absolute()}" }, "hideInAnswer": true } diff --git a/assets/layers/street_lamps/street_lamps.json b/assets/layers/street_lamps/street_lamps.json index d06961660..ddcc1be94 100644 --- a/assets/layers/street_lamps/street_lamps.json +++ b/assets/layers/street_lamps/street_lamps.json @@ -12,7 +12,7 @@ "en": "A layer showing street lights", "nl": "Een laag die alle straatlantaarns toont", "de": "Eine Ebene mit Straßenbeleuchtung", - "es": "Una capa que muestra luces callejeras", + "es": "Una capa que muestra las farolas", "ca": "Una capa que mostra els llums del carrer", "cs": "Vrstva zobrazující pouliční osvětlení" }, @@ -25,7 +25,7 @@ "en": "Street Lamp", "nl": "Straatlantaarn", "de": "Straßenlaterne", - "es": "Lámpara Callejera", + "es": "Farola", "ca": "Fanal", "cs": "Pouliční lampa" }, @@ -36,7 +36,7 @@ "en": "Street Lamp {ref}", "nl": "Straatlantaarn {ref}", "de": "Straßenlaterne {ref}", - "es": "Lámpara Callejera {ref}", + "es": "Farola {ref}", "ca": "Fanal {ref}", "cs": "Pouliční lampa {ref}" } @@ -88,17 +88,19 @@ "en": "This street lamp has the reference number {ref}", "nl": "Deze straatlantaarn heeft het nummer {ref}", "de": "Diese Straßenlaterne hat die Referenznummer {ref}", - "es": "Esta lámpara callejera tiene el número de referencia {ref}", + "es": "Esta farola tiene el número de referencia {ref}", "ca": "Aquest fanal té el número de referència {ref}", - "cs": "Tato pouliční lampa má referenční číslo {ref}" + "cs": "Tato pouliční lampa má referenční číslo {ref}", + "uk": "Цей вуличний ліхтар має ідентифікаційний номер {ref}" }, "question": { "en": "What is the reference number of this street lamp?", "nl": "Wat is het nummer van deze straatlantaarn?", "de": "Wie lautet die Referenznummer dieser Straßenlaterne?", - "es": "¿Cual es el número de referencia de esta lámpara callejera?", + "es": "¿Cuál es el número de referencia de esta farola?", "ca": "Quin és el número de referència d'aquest fanal?", - "cs": "Jaké je referenční číslo této pouliční lampy?" + "cs": "Jaké je referenční číslo této pouliční lampy?", + "uk": "Який ідентифікаційний номер цього вуличного ліхтаря?" }, "freeform": { "key": "ref" @@ -110,7 +112,7 @@ "en": "How is this street lamp mounted?", "nl": "Hoe is deze straatlantaarn gemonteerd?", "de": "Wie ist diese Straßenlaterne befestigt?", - "es": "¿Cómo está montada esta lámpara?", + "es": "¿Cómo está montada esta farola?", "ca": "Com està muntada aquesta làmpada?", "cs": "Jak se tato pouliční lampa připevněna?" }, @@ -121,7 +123,7 @@ "en": "This lamp is suspended using cables", "nl": "Deze lantaarn hangt aan kabels", "de": "Die Straßenlaterne ist an einem Kabel befestigt", - "es": "Esta lámpara se suspende utilizando cables", + "es": "Esta lámpara está suspendida con cables", "ca": "Aquesta làmpada està suspès mitjançant cables", "cs": "Tato lampa je zavěšena pomocí kabelů" } @@ -154,7 +156,7 @@ "en": "This lamp is mounted on a short pole (mostly < 1.5m)", "nl": "Deze lantaarn zit op een korte paal (meestal < 1.5m)", "de": "Die Straßenlaterne ist an einem kurzen Mast (< 1,5m) befestigt", - "es": "Esta lámpara está montada en un poste corto (mayoritariamente < 1.5m)", + "es": "Esta lámpara está montada en un poste corto (principalmente < 1,5 m)", "ca": "Aquesta làmpada està muntada en un pal curt (principalment <1,5 m)", "cs": "Tato lampa je namontována na krátké tyči (většinou < 1,5 m)" } @@ -187,7 +189,7 @@ "en": "This lamp is mounted to the wall using a metal bar", "nl": "Deze lantaarn hangt aan de muur met een metalen balk", "de": "Die Straßenlaterne ist mit einer Metallstange an der Wand befestigt", - "es": "Esta lámpara está montada en la pared utilizando una barra metálica", + "es": "Esta lámpara está montada en la pared con una barra de metal", "ca": "Aquesta làmpada està muntada a la paret utilitzat una barra metàl·lica", "cs": "Toto svítidlo se montuje na stěnu pomocí kovové tyče" } @@ -200,7 +202,7 @@ "en": "How is this lamp mounted to the pole?", "nl": "Hoe zit deze lantaarn aan de paal?", "de": "Wie ist diese Straßenlaterne am Mast befestigt?", - "es": "¿Cómo está montada esta lámpara al poste?", + "es": "¿Cómo está montada esta lámpara en el poste?", "ca": "Com està muntat aquest fanal al pal?", "cs": "Jak se tato lampa montuje na sloup?" }, @@ -212,7 +214,7 @@ "en": "This lamp sits atop of a straight mast", "nl": "Deze lantaarn zit boven op een rechte paal", "de": "Diese Straßenlaterne sitzt auf einem geraden Mast", - "es": "Esta lampara está encima de un mástil recto", + "es": "Esta lámpara se encuentra en la cima de un mástil recto", "ca": "Aquest fanal es troba al final d'un pal recte", "cs": "Tato lampa je umístěna na vrcholu rovného stožáru" } @@ -223,7 +225,7 @@ "en": "This lamp sits at the end of a bent mast", "nl": "Deze lantaarn zit aan het eind van een gebogen paal", "de": "Diese Straßenlaterne sitzt am Ende eines gebogenen Mastes", - "es": "Esta lámpara está encima de un mástil curvado", + "es": "Esta lámpara se encuentra al final de un mástil curvado", "ca": "Aquest fanal es troba al final d'un pal doblegat", "cs": "Tato lampa je umístěna na konci ohnutého stožáru" } @@ -292,7 +294,7 @@ "en": "This lamp uses discharge lamps (unknown type)", "nl": "Deze lantaarn gebruikt gasontladingslampen (onbekend type)", "de": "Diese Straßenlaterne verwendet Entladungslampen (unbekannter Typ)", - "es": "Esta lámpara utiliza lámparas de descarga (de tipo desconocido)", + "es": "Esta lámpara utiliza lámparas de descarga (tipo desconocido)", "ca": "Aquest fanal utilitza làmpades de descàrrega (tipus desconegut)", "cs": "Tato lampa používá výbojky (neznámý typ)" } @@ -303,7 +305,7 @@ "en": "This lamp uses a mercury-vapour lamp (lightly blueish)", "nl": "Deze lantaarn gebruikt een kwiklamp (enigszins blauwachtig)", "de": "Diese Straßenlaterne verwendet eine Quecksilberdampflampe (leicht bläulich)", - "es": "Esta lámpara utiliza una lámpara de vapor de mercurio (levemente azulada)", + "es": "Esta lámpara utiliza una lámpara de vapor de mercurio (ligeramente azulada)", "ca": "Aquest fanal utilitza una làmpada de vapor de mercuri (lleugerament blau)", "cs": "Tato lampa používá rtuťovou výbojku (světle namodralou)" } @@ -315,7 +317,8 @@ "nl": "Deze lantaarn gebruikt metaalhalidelampen", "de": "Diese Straßenlaterne verwendet Halogen-Metalldampflampen (hellweiß)", "ca": "Aquest fanal utilitza làmpades d'halogenurs metàl·lics (blanc brillant)", - "cs": "Tato lampa používá metal-halogenidové výbojky (jasně bílé)" + "cs": "Tato lampa používá metal-halogenidové výbojky (jasně bílé)", + "es": "Esta lámpara utiliza lámparas de halogenuros metálicos (blanco brillante)" } }, { @@ -335,7 +338,7 @@ "en": "This lamp uses sodium lamps (unknown type)", "nl": "Deze lantaarn gebruikt natriumlampen (onbekend type)", "de": "Diese Straßenlaterne verwendet Natriumdampflampen (unbekannter Typ)", - "es": "Esta lámpara utiliza lámparas de sodio (de tipo desconocido)", + "es": "Esta lámpara utiliza lámparas de sodio (tipo desconocido)", "ca": "Aquest fanal utilitza làmpades de sodi (tipus desconegut)", "cs": "Tato lampa používá sodíkové výbojky (neznámý typ)" } @@ -346,7 +349,7 @@ "en": "This lamp uses low pressure sodium lamps (monochrome orange)", "nl": "Deze lantaarn gebruikt lagedruknatriumlampen (monochroom oranje)", "de": "Diese Straßenlaterne verwendet Niederdruck-Natriumdampflampen (einfarbig orange)", - "es": "Esta lámpara utiliza lámparas de sodio de baja presión (naranja monocromo)", + "es": "Esta lámpara utiliza lámparas de sodio a baja presión (naranja monocromática)", "ca": "Aquest fanal utilitza làmpades de sodi de baixa pressió (taronja monocroma)", "cs": "Tato lampa používá nízkotlaké sodíkové výbojky (monochromatické oranžové)" } @@ -357,7 +360,7 @@ "en": "This lamp uses high pressure sodium lamps (orange with white)", "nl": "Deze lantaarn gebruikt hogedruknatriumlampen (oranje met wit)", "de": "Diese Straßenlaterne verwendet Hochdruck-Natriumdampflampen (orange mit weiß)", - "es": "Esta lámpara utiliza lámparas de sodio de alta presión (naranja con blanco)", + "es": "Esta lámpara utiliza lámparas de sodio a alta presión (naranja con blanco)", "ca": "Aquest fanal utilitza làmpades de sodi d'alta pressió (taronja amb blanc)", "cs": "Tato lampa používá vysokotlaké sodíkové výbojky (oranžové s bílou)" } @@ -368,7 +371,7 @@ "en": "This lamp is lit using gas", "nl": "Deze lantaarn wordt verlicht met gas", "de": "Diese Straßenlaterne wird mit Gas beleuchtet", - "es": "Esta lampara se ilumina con gas", + "es": "Esta lámpara se ilumina con gas", "ca": "Aquest fanal s'il·lumina amb gas", "cs": "Tato lampa svítí pomocí plynu" } @@ -440,14 +443,16 @@ "nl": "Deze lantaarn heeft {light:count} lampen", "de": "Diese Straßenlaterne hat {light:count} Leuchten", "ca": "Aquesta làmpada té {light:count} aparells", - "cs": "Tato lampa má {light:count} světel" + "cs": "Tato lampa má {light:count} světel", + "es": "Esta lámpara tiene {light:count} accesorios" }, "question": { "en": "How many fixtures does this light have?", "nl": "Hoeveel lampen heeft deze lantaarn?", "de": "Wie viele Leuchten hat diese Straßenlaterne?", "ca": "Quants accessoris té aquest fanal?", - "cs": "Kolik svítidel má toto světlo?" + "cs": "Kolik svítidel má toto světlo?", + "es": "¿Cuántos accesorios tiene esta luz?" }, "condition": "support=pole", "freeform": { @@ -473,7 +478,8 @@ "nl": "Deze lantaarn heeft 2 lampen", "de": "Diese Straßenlaterne hat 2 Leuchten", "ca": "Aquest fanal té 2 aparells", - "cs": "Tato lampa má 2 světla" + "cs": "Tato lampa má 2 světla", + "es": "Esta lámpara tiene 2 accesorios" } } ] @@ -484,7 +490,7 @@ "en": "When is this lamp lit?", "nl": "Wanneer is deze lantaarn verlicht?", "de": "Wann leuchtet diese Straßenlaterne?", - "es": "¿Cuándo se ilumina esta lámpara?", + "es": "¿Cuándo está encendida esta lámpara?", "ca": "Quan s'encén aquest fanal?", "cs": "Kdy tato lampa svítí?" }, @@ -495,7 +501,7 @@ "en": "This lamp is lit at night", "nl": "Deze lantaarn is 's nachts verlicht", "de": "Diese Straßenlaterne leuchtet nachts", - "es": "Esta lámpara está iluminada por la noche", + "es": "Esta lámpara está encendida por la noche", "ca": "Aquest fanal s'encén a la nit", "cs": "Tato lampa svítí v noci" } @@ -506,7 +512,7 @@ "en": "This lamp is lit 24/7", "nl": "Deze lantaarn is 24/7 verlicht", "de": "Diese Straßenlaterne leuchtet durchgehend", - "es": "Esta lámpara está iluminada 24/7", + "es": "Esta lámpara está encendida 24/7", "ca": "Aquest fanal està encès les 24 hores del dia", "cs": "Tato lampa svítí 24/7" } @@ -517,7 +523,7 @@ "en": "This lamp is lit based on motion", "nl": "Deze lantaarn is verlicht op basis van beweging", "de": "Diese Straßenlaterne leuchtet bewegungsgesteuert", - "es": "Esta lámpara se ilumina con el movimiento", + "es": "Esta lámpara se enciende por movimiento", "ca": "Aquest fanal s'encén en funció del moviment", "cs": "Tato lampa svítí na základě pohybu" } @@ -528,7 +534,7 @@ "en": "This lamp is lit based on demand (e.g. with a pushbutton)", "nl": "Deze lantaarn is verlicht op verzoek (bijv. met een drukknop)", "de": "Diese Straßenlaterne leuchtet bei Bedarf (z. B. mit einem Taster)", - "es": "Esta lámpara se ilumina bajo demanda (ej. con un pulsador)", + "es": "Esta lámpara se enciende bajo demanda (ej. con un pulsador)", "ca": "Aquest fanal s'encén segons la demanda (per exemple, amb un polsador)", "cs": "Tato lampa se rozsvítí na základě požadavku (např. pomocí tlačítka)" } @@ -549,7 +555,7 @@ "en": "Where does this lamp point to?", "nl": "Waar is deze lamp heengericht?", "de": "Wohin leuchtet diese Straßenlaterne?", - "es": "¿Hacia donde apunta esta lámpara?", + "es": "¿Hacia dónde apunta esta lámpara?", "ca": "Cap a on apunta aquest fanal?", "cs": "Kam tato lampa ukazuje?" }, diff --git a/assets/layers/stripclub/stripclub.json b/assets/layers/stripclub/stripclub.json index d56073678..4dc7d2856 100644 --- a/assets/layers/stripclub/stripclub.json +++ b/assets/layers/stripclub/stripclub.json @@ -2,11 +2,13 @@ "id": "stripclub", "name": { "en": "Stripclubs", - "de": "Stripclubs" + "de": "Stripclubs", + "es": "Stripclubs" }, "description": { "en": "A venue where erotic dance, striptease, or lap dances are performed commercially. ", - "de": "Ein Ort, an dem erotische Tanz-, Striptease- oder Lapdances kommerziell durchgeführt werden. " + "de": "Ein Ort, an dem erotische Tanz-, Striptease- oder Lapdances kommerziell durchgeführt werden. ", + "es": "Un local donde se realizan bailes eróticos, striptease o bailes en el regazo de forma comercial. " }, "source": { "osmTags": "amenity=stripclub" @@ -15,7 +17,8 @@ "title": { "render": { "en": "Stripclub", - "de": "Stripclub" + "de": "Stripclub", + "es": "Club de striptease" }, "mappings": [ { @@ -59,7 +62,8 @@ { "title": { "en": "a stripclub", - "de": "ein Stripclub" + "de": "ein Stripclub", + "es": "un club de striptease" }, "tags": [ "amenity=stripclub" @@ -78,11 +82,13 @@ }, "question": { "en": "What is the name of this stripclub?", - "de": "Wie lautet der Name des Stripclubs?" + "de": "Wie lautet der Name des Stripclubs?", + "es": "¿Cuál es el nombre de este club de striptease?" }, "render": { "en": "This stripclub is named {name}", - "de": "Der Name des Stripclubs lautet {name}" + "de": "Der Name des Stripclubs lautet {name}", + "es": "Este club de striptease se llama {name}" } }, "opening_hours", diff --git a/assets/layers/summary/summary.json b/assets/layers/summary/summary.json index 3300de733..97f8b204e 100644 --- a/assets/layers/summary/summary.json +++ b/assets/layers/summary/summary.json @@ -6,7 +6,9 @@ "render": { "en": "Summary", "de": "Übersicht", - "nl": "Samenvatting" + "nl": "Samenvatting", + "cs": "Souhrn", + "es": "Resumen" } }, "pointRendering": [ diff --git a/assets/layers/surveillance_camera/surveillance_camera.json b/assets/layers/surveillance_camera/surveillance_camera.json index 5e68a4803..29907ab1d 100644 --- a/assets/layers/surveillance_camera/surveillance_camera.json +++ b/assets/layers/surveillance_camera/surveillance_camera.json @@ -16,7 +16,7 @@ "en": "This layer shows surveillance cameras and allows a contributor to update information and add new cameras", "nl": "Deze laag toont bewakingscamera's en laat toe om de informatie te verrijken en om nieuwe camera\"s toe te voegen", "de": "Diese Ebene zeigt die Überwachungskameras an und ermöglicht es, Informationen zu aktualisieren und neue Kameras hinzuzufügen", - "es": "Esta capa muestra las cámaras de vigilancia y permite a quien colabora, actualizar la información y agregar nuevas cámaras", + "es": "Esta capa muestra cámaras de vigilancia y permite que un colaborador actualice la información y añada nuevas cámaras", "fr": "Cette couche affiche les caméras de surveillance et permet au contributeur de mettre à jour les informations et ajouter de nouvelles caméras", "ca": "Aquesta capa mostra les càmeres de vigilància i permet a qui col·labora, actualitzar la informació i afegir noves càmeres", "cs": "Tato vrstva zobrazuje sledovací kamery a umožňuje přispěvateli aktualizovat informace a přidávat nové kamery", @@ -172,14 +172,16 @@ "ca": "una càmera ALPR (lector automàtic de matrícules, per les seves sigles en anglès)", "de": "Eine Kamera zur automatischen Nummernschilderkennung", "cs": "kamera ALPR (automatická čtečka registračních značek)", - "sl": "kamera za prepoznavo registrskih tablic" + "sl": "kamera za prepoznavo registrskih tablic", + "es": "una cámara ALPR (lector automático de matrículas)" }, "description": { "en": "An ALPR typically has two lenses and an array of infrared lights.", "ca": "Un ALPR normalment té dues lents i una sèrie de llums infrarojes.", "de": "Eine automatische Nummernschilderkennung hat üblicherweise zwei Linsen und ein Reihe aus Infrarotlichtern.", "cs": "ALPR má obvykle dvě čočky a pole infračervených světel.", - "sl": "Kamera za prepoznavo registrskih tablic ima običajno dve leči in polje infrardečih lučk." + "sl": "Kamera za prepoznavo registrskih tablic ima običajno dve leči in polje infrardečih lučk.", + "es": "Un lector automático de matrículas (ALPR) suele tener dos lentes y una serie de luces infrarrojas." }, "exampleImages": [ "./assets/layers/surveillance_camera/ALPR_Example.jpg", @@ -197,14 +199,16 @@ "ca": "una càmera ALPR (lector automàtic de matrícules) muntada a la paret", "de": "eine Kamera zur Nummernschilderkennung, die an einer Wand befestigt ist", "cs": "kamera ALPR (Automatická čtečka registračních značek) namontovaná na zdi", - "sl": "na steno pritrjena kamera za prepoznavo registrskih tablic" + "sl": "na steno pritrjena kamera za prepoznavo registrskih tablic", + "es": "una cámara ALPR (lector automático de matrículas) montada en una pared" }, "description": { "en": "An ALPR typically has two lenses and an array of infrared lights.", "ca": "Un ALPR normalment té dues lents i una sèrie de llums infrarojes.", "de": "Eine automatische Nummernschilderkennung hat üblicherweise zwei Linsen und ein Reihe aus Infrarotlichtern.", "cs": "ALPR má obvykle dvě čočky a pole infračervených světel.", - "sl": "Kamera za prepoznavo registrskih tablic ima običajno dve leči in polje infrardečih lučk." + "sl": "Kamera za prepoznavo registrskih tablic ima običajno dve leči in polje infrardečih lučk.", + "es": "Un lector automático de matrículas (ALPR) suele tener dos lentes y una serie de luces infrarrojas." }, "exampleImages": [ "./assets/layers/surveillance_camera/ALPR_Example.jpg", @@ -224,14 +228,16 @@ "ca": "Aquesta càmera pot detectar matrícules automàticament?", "de": "Dient diese Kamera der Nummernschilderkennung?", "cs": "Dokáže tato kamera automaticky rozpoznat registrační značky?", - "sl": "Ali ta kamera lahko samodejno prepoznava registrske tablice?" + "sl": "Ali ta kamera lahko samodejno prepoznava registrske tablice?", + "es": "¿Puede esta cámara detectar automáticamente las matrículas?" }, "questionHint": { "en": "An ALPR (Automatic License Plate Reader) typically has two lenses and an array of infrared LEDS in between.", "ca": "Un ALPR (lector automàtic de matrícules, per les seves sigles en anglès) normalment té dues lents i una sèrie de LEDs infrarojos entremig.", "de": "Eine Kamera zur Nummernschilderkennung hat üblicherweise zwei Linsen mit dazwischenliegenden Infrarot-LEDs.", "cs": "Automatická čtečka registračních značek (ALPR) má obvykle dvě čočky a mezi nimi soustavu infračervených diod LED.", - "sl": "Kamera za prepoznavo registrskih tablic ima običajno dve leči in med njima polje infrardečih LED svetil." + "sl": "Kamera za prepoznavo registrskih tablic ima običajno dve leči in med njima polje infrardečih LED svetil.", + "es": "Un ALPR (lector automático de matrículas) suele tener dos lentes y una serie de LED infrarrojos entre ellas." }, "mappings": [ { @@ -241,7 +247,8 @@ "ca": "Es tracta d'una càmera sense reconeixement de matrícules.", "de": "Dies ist eine Kamera ohne Nummernschilderkennung.", "cs": "Jedná se o kameru bez rozpoznání SPZ.", - "sl": "To je kamera brez prepoznave registrskih tablic." + "sl": "To je kamera brez prepoznave registrskih tablic.", + "es": "Esta es una cámara sin reconocimiento de matrículas." } }, { @@ -251,7 +258,8 @@ "ca": "Açò és un ALPR (lector automàtic de matrícules, per les seves sigles en anglès)", "de": "Dies ist eine Kamera mit Nummernschilderkennung", "cs": "Jedná se o zařízení ALPR (automatické čtení registračních značek)", - "sl": "To je kamera s prepoznavo registrskih tablic" + "sl": "To je kamera s prepoznavo registrskih tablic", + "es": "Esta es una cámara ALPR (lector automático de matrículas)" }, "icon": { "path": "./assets/layers/surveillance_camera/ALPR.svg" @@ -268,7 +276,7 @@ "ru": "Какая это камера?", "de": "Um welchen Kameratyp handelt es sich?", "ca": "Quin tipus de càmera és aquesta?", - "es": "¿Qué tipo de cámara es?", + "es": "¿Qué tipo de cámara es esta?", "cs": "Jaká je to kamera?", "sl": "Kakšne vrste kamera je to?", "pl": "Jakiego rodzaju jest ta kamera?" @@ -283,7 +291,7 @@ "it": "Una videocamera fissa (non semovente)", "de": "Eine fest montierte (nicht bewegliche) Kamera", "ca": "Una càmera fixa (no movible)", - "es": "Cámara fija (no móvil)", + "es": "Una cámara fija (inmóvil)", "cs": "Pevná (nepohyblivá) kamera", "sl": "Fiksna (nepremična) kamera" }, @@ -299,7 +307,7 @@ "ru": "Камера с поворотным механизмом", "de": "Eine Kuppelkamera (drehbar)", "ca": "Càmera de cúpula (que pot girar)", - "es": "Cámara con domo (que se puede girar)", + "es": "Una cámara domo (que puede girar)", "cs": "Kopulovitá (dome) kamera (která se může otáčet)", "sl": "Kamera v kupoli (obračajoča)" }, @@ -319,7 +327,7 @@ "it": "Una videocamera panoramica", "de": "Eine bewegliche Kamera", "ca": "Una càmera panoràmica", - "es": "Cámara panorámica", + "es": "Una cámara panorámica", "cs": "Otáčecí kamera" } } @@ -335,7 +343,7 @@ "de": "In welche Himmelsrichtung filmt diese Kamera?", "da": "I hvilken geografisk retning filmer dette kamera?", "ca": "En quina direcció geogràfica apunta aquesta càmera?", - "es": "¿A qué dirección geográfica apunta esta cámara?", + "es": "¿En qué dirección geográfica graba esta cámara?", "cs": "Ve kterém geografickém směru tato kamera snímá?", "sl": "V katero geografsko smer snema ta kamera?" }, @@ -347,7 +355,7 @@ "de": "filmt in Himmelsrichtung {camera:direction}", "da": "Filmer til en kompasretning af {camera:direction}", "ca": "Grava en direcció {camera:direction}", - "es": "Graba en dirección a {camera:direction}", + "es": "Graba hacia un rumbo de brújula de {camera:direction}", "cs": "Snímané oblasti podle směru kompasu {camera:direction}", "sl": "Snema v smeri kompasa {camera:direction}" }, @@ -383,7 +391,7 @@ "it": "Punta in direzione {direction}", "de": "filmt in Himmelsrichtung {direction}", "da": "Filmer til en kompasretning af {direction}", - "es": "Graba en dirección a {direction}", + "es": "Graba hacia un rumbo de brújula de {direction}", "ca": "Grava en direcció {direction}", "cs": "Snímaná oblast podle směru kompasu {direction}", "sl": "Snema v smeri kompasa {direction}" @@ -404,7 +412,7 @@ "it": "Chi gestisce questa videocamera a circuito chiuso?", "de": "Wer betreibt diese Kamera?", "ca": "Qui opera aquest circuit de televisió tancat?", - "es": "¿Quién opera el sistema de esta cámara?", + "es": "¿Quién opera este circuito cerrado de televisión?", "cs": "Kdo provozuje tento kamerový systém?", "sl": "Kdo upravlja s to kamero?" }, @@ -415,7 +423,7 @@ "it": "È gestita da {operator}", "de": "Betrieben von {operator}", "ca": "Operat per {operator}", - "es": "Operado por {operator}", + "es": "Operada por {operator}", "cs": "Provozuje {operator}", "pt": "Operado por {operator}", "sl": "Upravlja jo {operator}" @@ -431,7 +439,7 @@ "de": "Was überwacht diese Kamera?", "da": "Hvilken form for overvågning er dette kamera?", "ca": "Què vigila aquesta càmera?", - "es": "¿Qué tipo de vigilancia aplica a esta cámara?", + "es": "¿Qué tipo de vigilancia es esta cámara?", "cs": "Co sleduje tato kamera?", "sl": "Kaj nadzoruje ta kamera?" }, @@ -450,7 +458,7 @@ "de": "Die Kamera überwacht einen öffentlichen Bereich, z. B. Straßen, Brücken, Plätze, Parks, Bahnhöfe, öffentliche Gänge oder Tunnel, …", "da": "Et offentligt område overvåges, f.eks. en gade, en bro, et torv, en park, en togstation, en offentlig korridor eller en tunnel, …", "ca": "Es vigila una àrea pública, com un carrer, un pont, una plaça, un parc, una estació de tren, un túnel públic, …", - "es": "Es un área pública, como una calle, un puente, una plaza, un parque, una estación de tren, un corredor público o túnel, …", + "es": "Se vigila una zona pública, como una calle, un puente, una plaza, un parque, una estación de tren, un pasillo o túnel público, …", "cs": "Sleduje se veřejný prostor, například ulice, most, náměstí, park, nádraží, veřejný koridor nebo tunel, …", "sl": "Nadzoruje javno površino kot je ulica, most, trg, park, postaja, javni hodnik, tunel…" } @@ -469,7 +477,7 @@ "de": "Die Kamera überwacht einen privaten Außenbereich (z.B. Parkplätze, Tankstellen, Innenhöfe, Eingänge, private Einfahrten, …)", "da": "Et udendørs, men privat område overvåges (f.eks. en parkeringsplads, en tankstation, en gårdsplads, en indgang, en privat indkørsel, ...)", "ca": "Es vigila una àrea exterior, encara que privada (p.e. una plaça d'aparcament, una estació de servei, pati, entrada, via d'accés privada, …)", - "es": "Es un área exterior pero privada (ej: estacionamiento, gasolinera, patio, entrada, camino privado, ...)", + "es": "Se vigila una zona exterior, pero privada (ej. un aparcamiento, una gasolinera, un patio, una entrada, una entrada privada, …)", "cs": "Sleduje se venkovní, ale soukromý prostor (např. parkoviště, čerpací stanice, dvůr, vchod, soukromá příjezdová cesta, ...)", "sl": "Nadzoruje zunanjo, a zasebno površino (npr. parkirišče, bencinsko črpalko, dvorišče, vhod v stavbo, zasebni dovoz…)" } @@ -488,7 +496,7 @@ "de": "Die Kamera überwacht einen privaten Innenbereich, z. B. Geschäfte, private Tiefgaragen, …", "da": "Et privat indendørs område overvåges, f.eks. en butik, en privat parkeringskælder, …", "ca": "Es vigila una àrea interior privada, p.e. una botiga, un parking subterrani privat, …", - "es": "La vigilancia ocurre en un lugar interior privado, por ejemplo una tienda, un estacionamiento privado subterráneo, …", + "es": "Se vigila una zona privada interior, ej. una tienda, un aparcamiento subterráneo privado, …", "cs": "Soukromý vnitřní prostor je sledován, např. obchod, soukromé podzemní parkoviště, …", "sl": "Nadzoruje zasebno notranjo površino, npr. trgovino, zasebno podzemno parkirišče…" } @@ -504,7 +512,7 @@ "it": "Lo spazio pubblico sorvegliato da questa videocamera è all'aperto o al chiuso?", "de": "Handelt es sich bei dem von dieser Kamera überwachten öffentlichen Raum um einen Innen- oder Außenbereich?", "da": "Er det offentlige rum, der overvåges af dette kamera, et indendørs eller udendørs rum?", - "es": "¿El espacio público vigilado por esta cámara es un espacio interior o exterior?", + "es": "¿El espacio público vigilado por esta cámara es interior o exterior?", "ca": "L'espai públic vigilat per aquesta càmera és un espai interior o exterior?", "cs": "Je veřejný prostor sledovaný touto kamerou vnitřní nebo venkovní prostor?", "sl": "Ali je javni prostor, ki ga nadzoruje ta kamera, notranji ali zunanji?" @@ -524,7 +532,7 @@ "it": "Questa videocamera si trova al chiuso", "de": "Diese Kamera befindet sich im Innenraum", "da": "Dette kamera er placeret indendørs", - "es": "Esta cámara está ubicada en un lugar interior", + "es": "Esta cámara está ubicada en interiores", "ca": "Aquesta càmera es troba a l'interior", "cs": "Tato kamera je umístěna ve vnitřním prostoru", "sl": "Ta kamera je znotraj" @@ -540,7 +548,7 @@ "ru": "Эта камера расположена снаружи", "de": "Diese Kamera befindet sich im Freien", "da": "Dette kamera er placeret udendørs", - "es": "Esta cámara está ubicada en un lugar exterior", + "es": "Esta cámara está ubicada en exteriores", "ca": "Aquesta càmera es troba a l'exterior", "cs": "Tato kamera je umístěna ve venkovním prostoru", "sl": "Ta kamera je zunaj" @@ -556,7 +564,7 @@ "ru": "Возможно, эта камера расположена снаружи", "de": "Diese Kamera ist möglicherweise im Freien", "da": "Dette kamera er sandsynligvis placeret udendørs", - "es": "Esta cámara está probablemente colocada en el exterior", + "es": "Esta cámara probablemente está ubicada en exteriores", "ca": "Aquesta càmera probablement es troba a l'exterior", "cs": "Tato kamera je pravděpodobně umístěna venku", "sl": "Ta kamera je verjetno zunaj" @@ -573,7 +581,7 @@ "fr": "À quel niveau se trouve cette caméra ?", "it": "A che piano si trova questa videocamera?", "de": "Auf welcher Ebene befindet sich diese Kamera?", - "es": "¿A qué nivel está colocada esta cámara?", + "es": "¿En qué nivel está ubicada esta cámara?", "ca": "A quina planta es troba aquesta càmera?", "cs": "Ve kterém podlaží se nachází tato kamera?", "sl": "V katerem nadstropju je ta kamera?", @@ -585,7 +593,7 @@ "fr": "Situé au niveau {level}", "it": "Si trova al piano {level}", "de": "Befindet sich auf Ebene {level}", - "es": "Ubicado en la planta {level}", + "es": "Ubicada en el nivel {level}", "ca": "Ubicat a la planta {level}", "cs": "Nachází se v patře {level}", "sl": "Se nahaja v {level}. nadstropju" @@ -611,7 +619,7 @@ "de": "Was genau wird hier überwacht?", "da": "Hvad er det præcist, der overvåges her?", "ca": "Que vigilen exactament aquí?", - "es": "¿Qué se vigila aquí exactamente?", + "es": "¿Qué se vigila exactamente aquí?", "cs": "Co přesně se zde sleduje?", "sl": "Kaj točno je nadzorovano tu?" }, @@ -626,7 +634,7 @@ "de": "Überwacht ein/e {surveillance:zone}", "da": "Overvåger en {surveillance:zone}", "ca": "Vigila un/a {surveillance:zone}", - "es": "Vigila un/a {surveillance:zone}", + "es": "Vigila una {surveillance:zone}", "cs": "Sleduje {surveillance:zone}", "sl": "Nadzoruje {surveillance:zone}" }, @@ -645,7 +653,7 @@ "de": "Überwacht einen Parkplatz", "da": "Overvåger en parkeringsplads", "ca": "Vigilen un aparcament", - "es": "Vigila un estacionamiento", + "es": "Vigila un aparcamiento", "cs": "Hlídá parkoviště", "sl": "Nadzoruje parkirišče" } @@ -664,7 +672,7 @@ "de": "Überwacht den Verkehr", "da": "Overvåger trafikken", "ca": "Vigilen el trànsit", - "es": "Vigila el tránsito", + "es": "Vigila el tráfico", "cs": "Sleduje provoz", "sl": "Nadzoruje promet" } @@ -702,7 +710,7 @@ "de": "Überwacht einen Gang", "da": "Overvåger en korridor", "ca": "Vigilen un corredor", - "es": "Vigila un corredor", + "es": "Vigila un pasillo", "cs": "Sleduje chodbu", "sl": "Nadzoruje hodnik" } @@ -721,7 +729,7 @@ "de": "Überwacht eine Haltestelle", "da": "Overvejer en offentlig transportplatform", "ca": "Vigilen una parada de transport públic", - "es": "Vigila una parada de transporte público", + "es": "Vigila un andén de transporte público", "cs": "Sleduje zastávku veřejné dopravy", "sl": "Nadzoruje peron javnega prevoza" } @@ -758,7 +766,7 @@ "de": "Woran ist diese Kamera befestigt?", "da": "Hvordan er dette kamera placeret?", "ca": "Com està posicionada aquesta càmera?", - "es": "¿Cómo está colocada la cámara?", + "es": "¿Cómo está colocada esta cámara?", "cs": "Jak je tato kamera umístěna?", "sl": "Kako je postavljena ta kamera?" }, @@ -788,7 +796,7 @@ "de": "Diese Kamera ist an einer Wand befestigt", "da": "Dette kamera er placeret op ad en væg", "ca": "Aquesta càmera està ubicada contra un mur", - "es": "Está cámara está colocada sobre una pared", + "es": "Esta cámara está colocada contra una pared", "cs": "Tato kamera je umístěna na zdi", "sl": "Ta kamera je pritrjena na steno" } @@ -818,7 +826,7 @@ "de": "Diese Kamera ist an der Decke befestigt", "da": "Dette kamera er placeret i loftet", "ca": "Aquesta càmera està posicionada al sostre", - "es": "Esta cámara está colocada en un techo", + "es": "Esta cámara está colocada en el techo", "cs": "Tato kamera je umístěna na stropě", "sl": "Ta kamera je pritrjena na strop" } @@ -833,7 +841,7 @@ "de": "Diese Kamera ist an einer Laterne befestigt", "da": "Dette kamera er placeret på en gadelampe", "ca": "Aquesta càmera està posicionada a un fanal", - "es": "Esta cámara está colocada sobre una farola", + "es": "Esta cámara está colocada en una farola", "cs": "Tato kamera je umístěna na pouličním osvětlení", "sl": "Ta kamera je nameščena na ulično svetilko" } diff --git a/assets/layers/tactile_map/tactile_map.json b/assets/layers/tactile_map/tactile_map.json new file mode 100644 index 000000000..f8fb216ac --- /dev/null +++ b/assets/layers/tactile_map/tactile_map.json @@ -0,0 +1,146 @@ +{ + "id": "tactile_map", + "name": { + "en": "Tactile Maps" + }, + "description": { + "en": "Layer showing tactile maps, which can be used by visually impaired people to navigate the city." + }, + "source": { + "osmTags": "information=tactile_map" + }, + "title": { + "en": "Tactile Map" + }, + "presets": [ + { + "tags": [ + "tourism=information", + "information=tactile_map" + ], + "title": { + "en": "a tactile map" + }, + "description": { + "en": "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." + } + } + ], + "deletion": true, + "allowMove": true, + "minzoom": 10, + "pointRendering": [ + { + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/themes/maps/logo.svg" + } + ], + "location": [ + "point", + "centroid" + ] + } + ], + "tagRenderings": [ + "images", + { + "id": "description", + "question": { + "en": "What does this tactile map show?" + }, + "freeform": { + "key": "blind:description:en", + "placeholder": { + "en": "e.g. Tactile map of the city center" + } + }, + "render": { + "en": "Description: {blind:description:en}." + } + }, + { + "id": "braille", + "question": { + "en": "Is there braille text on this tactile map?" + }, + "mappings": [ + { + "if": "braille=yes", + "then": { + "en": "This tactile map has braille text." + } + }, + { + "if": "braille=no", + "then": { + "en": "This tactile map does not have braille text." + } + } + ] + }, + { + "id": "braille_languages", + "condition": "braille=yes", + "render": { + "special": { + "type": "language_chooser", + "key": "tactile_writing:braille", + "question": { + "en": "In which languages is the braille text on this tactile map?" + }, + "render_list_item": { + "en": "This map has braille text in {language}" + }, + "render_single_language": { + "en": "This map has braille text in {language}" + } + } + } + }, + { + "id": "embossed_letters", + "question": { + "en": "Are there embossed letters on this tactile map?" + }, + "mappings": [ + { + "if": "embossed_letters=yes", + "then": { + "en": "This tactile map has embossed letters." + } + }, + { + "if": "embossed_letters=no", + "then": { + "en": "This tactile map does not have embossed letters." + } + } + ] + }, + { + "id": "embossed_letters_languages", + "condition": "embossed_letters=yes", + "render": { + "special": { + "type": "language_chooser", + "key": "tactile_writing:embossed", + "question": { + "en": "In which languages are the embossed letters on this tactile map?" + }, + "render_list_item": { + "en": "This map has embossed letters in {language}" + }, + "render_single_language": { + "en": "This map has embossed letters in {language}" + } + } + } + }, + "website" + ] +} \ No newline at end of file diff --git a/assets/layers/tactile_model/license_info.json b/assets/layers/tactile_model/license_info.json new file mode 100644 index 000000000..8bf12a33c --- /dev/null +++ b/assets/layers/tactile_model/license_info.json @@ -0,0 +1,10 @@ +[ + { + "path": "tactile_model.svg", + "license": "CC0-1.0", + "authors": [ + "Robin van der Linde" + ], + "sources": [] + } +] \ No newline at end of file diff --git a/assets/layers/tactile_model/tactile_model.json b/assets/layers/tactile_model/tactile_model.json new file mode 100644 index 000000000..98d98ead3 --- /dev/null +++ b/assets/layers/tactile_model/tactile_model.json @@ -0,0 +1,157 @@ +{ + "id": "tactile_model", + "name": { + "en": "Tactile Models" + }, + "description": { + "en": "Layer showing tactile models, three-dimensional models of the surrounding area." + }, + "source": { + "osmTags": "information=tactile_model" + }, + "title": { + "en": "Tactile Model" + }, + "presets": [ + { + "tags": [ + "tourism=information", + "information=tactile_model" + ], + "title": { + "en": "a tactile model" + }, + "description": { + "en": "A tactile model is a three-dimensional model of an area, allowing people to explore/see an area by touch." + } + } + ], + "deletion": true, + "allowMove": true, + "minzoom": 10, + "pointRendering": [ + { + "marker": [ + { + "icon": "./assets/layers/tactile_model/tactile_model.svg" + } + ], + "location": [ + "point", + "centroid" + ] + } + ], + "tagRenderings": [ + "images", + { + "id": "description", + "question": { + "en": "What does this tactile model show?" + }, + "freeform": { + "key": "blind:description:en", + "placeholder": { + "en": "e.g. Tactile model of the city center" + } + }, + "render": { + "en": "Description: {blind:description:en}." + } + }, + { + "id": "braille", + "question": { + "en": "Is there a braille description?" + }, + "mappings": [ + { + "if": "braille=yes", + "then": { + "en": "There is a braille description." + } + }, + { + "if": "braille=no", + "then": { + "en": "There is no braille description." + } + } + ] + }, + { + "id": "braille_languages", + "condition": "braille=yes", + "render": { + "special": { + "type": "language_chooser", + "key": "tactile_writing:braille", + "question": { + "en": "In which languages is there a braille description?" + }, + "render_list_item": { + "en": "This model has a braille description in {language()}" + }, + "render_single_language": { + "en": "This model has a braille description in {language}" + } + } + } + }, + { + "id": "embossed_letters", + "question": { + "en": "Are there embossed letters describing the model?" + }, + "mappings": [ + { + "if": "embossed_letters=yes", + "then": { + "en": "There are embossed letters describing the model." + } + }, + { + "if": "embossed_letters=no", + "then": { + "en": "There are no embossed letters describing the model." + } + } + ] + }, + { + "id": "embossed_letters_languages", + "condition": "embossed_letters=yes", + "render": { + "special": { + "type": "language_chooser", + "key": "tactile_writing:embossed_letters", + "question": { + "en": "In which languages are there embossed letters?" + }, + "render_list_item": { + "en": "This model has embossed letters in {language()}" + }, + "render_single_language": { + "en": "This model has embossed letters in {language}" + } + } + } + }, + { + "id": "scale", + "question": { + "en": "What scale is the model?" + }, + "freeform": { + "key": "scale", + "placeholder": { + "en": "e.g. 1:1000" + } + }, + "render": { + "en": "The scale of this model is {scale}." + } + }, + "website" + ] +} \ No newline at end of file diff --git a/assets/layers/tactile_model/tactile_model.svg b/assets/layers/tactile_model/tactile_model.svg new file mode 100644 index 000000000..e565a43ec --- /dev/null +++ b/assets/layers/tactile_model/tactile_model.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/layers/tactile_model/tactile_model.svg.license b/assets/layers/tactile_model/tactile_model.svg.license new file mode 100644 index 000000000..75299f884 --- /dev/null +++ b/assets/layers/tactile_model/tactile_model.svg.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: Robin van der Linde +SPDX-License-Identifier: CC0-1.0 \ No newline at end of file diff --git a/assets/layers/tertiary_education/tertiary_education.json b/assets/layers/tertiary_education/tertiary_education.json index c51bd26f3..6465e4c62 100644 --- a/assets/layers/tertiary_education/tertiary_education.json +++ b/assets/layers/tertiary_education/tertiary_education.json @@ -7,7 +7,8 @@ "fr": "Collèges et universités", "da": "Gymnasier og universiteter", "ca": "Instituts superiors i universitats", - "cs": "Vysoké školy a univerzity" + "cs": "Vysoké školy a univerzity", + "es": "Universidades y colegios" }, "description": "Layer with all tertiary education institutes (ISCED:2011 levels 6,7 and 8)", "source": { @@ -46,7 +47,8 @@ "fr": "Établissement d'enseignement supérieur non universitaire", "pa_PK": "کالج", "ca": "Institut superior", - "cs": "Vysoká škola" + "cs": "Vysoká škola", + "es": "Colegio" } }, { @@ -59,7 +61,8 @@ "da": "Universitet", "pa_PK": "یونیورسٹی", "ca": "Universitat", - "cs": "Univerzita" + "cs": "Univerzita", + "es": "Universidad" } }, { @@ -71,7 +74,8 @@ "fr": "École dispensant un enseignement supérieur", "da": "Skole, der udbyder videregående uddannelser", "ca": "Escola que imparteix educació terciària", - "cs": "Škola poskytující terciární vzdělání" + "cs": "Škola poskytující terciární vzdělání", + "es": "Escuela que imparte educación terciaria" } } ] @@ -118,7 +122,8 @@ "fr": "une université", "da": "et universitet", "ca": "una universitat", - "cs": "univerzita" + "cs": "univerzita", + "es": "una universidad" }, "description": { "en": "An institute where tertiary education is given (at the level equivalent of a bachelors degree or higher). A single point per campus is enough - buildings and faculties should not be mapped with different university points.", @@ -126,7 +131,8 @@ "de": "Eine Einrichtung, an der tertiäre Bildung vermittelt wird (auf dem Niveau eines Bachelor-Abschlusses oder höher). Ein einziger Punkt pro Campus ist ausreichend - Gebäude und Fakultäten sollten nicht mit Universitätspunkten gekennzeichnet werden.", "fr": "Un institut où l'on dispense un enseignement supérieur (au niveau équivalent à un bachelor ou plus). Un simple point par campus est suffisant - les bâtiments et les facultés ne doivent pas être cartographiés avec différents points d'université.", "ca": "Un institut on s'imparteix ensenyament terciari (al nivell equivalent de batxillerat o superior). N'hi ha prou amb un únic punt per campus: els edificis i les facultats no s'han de cartografiar amb diferents punts universitaris.", - "cs": "Institut, kde se poskytuje terciární vzdělání (na úrovni odpovídající bakalářskému titulu nebo vyšší). Stačí jeden bod na kampus - budovy a fakulty by neměly být mapovány s různými univerzitními body." + "cs": "Institut, kde se poskytuje terciární vzdělání (na úrovni odpovídající bakalářskému titulu nebo vyšší). Stačí jeden bod na kampus - budovy a fakulty by neměly být mapovány s různými univerzitními body.", + "es": "Un instituto donde se imparte educación terciaria (a nivel equivalente a una licenciatura o superior). Un solo punto por campus es suficiente; los edificios y las facultades no deben cartografiarse con diferentes puntos universitarios." }, "tags": [ "amenity=university", @@ -144,7 +150,8 @@ "fr": "De quel type d'établissement s'agit-il ?", "da": "Hvad er det for en institution?", "ca": "Quin tipus d'institució és aquesta?", - "cs": "Co je to za instituci?" + "cs": "Co je to za instituci?", + "es": "¿Qué tipo de institución es esta?" }, "mappings": [ { @@ -156,7 +163,8 @@ "fr": "C'est un établissement d'enseignement post-secondaire, non tertiaire. Il faut avoir terminé l'enseignement secondaire pour s'inscrire ici, mais aucun baccalauréat (ou diplôme supérieur) n'est délivré ici", "da": "Dette er en institution for post-gymnasial, ikke-tertiær uddannelse. Man skal have gennemført en ungdomsuddannelse for at tilmelde sig her, men her uddeles ingen bachelor (eller højere) grader", "ca": "Aquesta és una institució d'educació postsecundària i no terciària. S'ha d'haver completat l'educació secundària per matricular-se aquí, però aquí no s'obtenen títols de batxillerat (o superiors)", - "cs": "Jedná se o instituci postsekundárního neterciárního vzdělávání. Podmínkou zápisu je ukončené středoškolské vzdělání, ale bakalářské (ani vyšší) tituly se zde neudělují" + "cs": "Jedná se o instituci postsekundárního neterciárního vzdělávání. Podmínkou zápisu je ukončené středoškolské vzdělání, ale bakalářské (ani vyšší) tituly se zde neudělují", + "es": "Esta es una institución de educación postsecundaria, no terciaria. Hay que haber completado la educación secundaria para inscribirse aquí, pero no se otorgan títulos de licenciatura (o superiores) aquí" } }, { @@ -168,7 +176,8 @@ "fr": "C'est une université, d'un établissement d'enseignement supérieur où sont délivrés des diplômes de bachelor ou plus.", "da": "Dette er et universitet, en institution for videregående uddannelse, hvor der tildeles bachelorgrader eller højere.", "ca": "Açò és una universitat, una institució d'educació terciaria on s'imparteixen carreres universitàries o superior.", - "cs": "Jedná se o univerzitu, instituci terciárního vzdělávání, kde se uděluje titul bakalář nebo vyšší." + "cs": "Jedná se o univerzitu, instituci terciárního vzdělávání, kde se uděluje titul bakalář nebo vyšší.", + "es": "Esta es una universidad, una institución de educación terciaria donde se otorgan títulos de licenciatura o superiores." } } ] @@ -182,7 +191,8 @@ "fr": "Quel niveau d'éducation est donné ici ?", "da": "Hvilket uddannelsesniveau gives her?", "ca": "Quin nivell d'educació és dona aquí?", - "cs": "Jaký stupeň vzdělání je zde uveden?" + "cs": "Jaký stupeň vzdělání je zde uveden?", + "es": "¿Qué nivel de educación se imparte aquí?" }, "multiAnswer": true, "mappings": [ @@ -195,7 +205,8 @@ "fr": "Les diplômes de bachelor y sont décernés", "da": "Her udstedes bachelorgrader", "ca": "Aquí s'imparteixen carreres universitàries", - "cs": "Zde se udělují bakalářské tituly" + "cs": "Zde se udělují bakalářské tituly", + "es": "Aquí se otorgan títulos de licenciatura" } }, { @@ -207,7 +218,8 @@ "fr": "Des masters y sont décernés", "da": "Mastergrader udstedes her", "ca": "Aquí s'imparteixen masters", - "cs": "Zde se udělují magisterské tituly" + "cs": "Zde se udělují magisterské tituly", + "es": "Aquí se otorgan títulos de maestría" } }, { @@ -218,7 +230,8 @@ "de": "Hier werden die Doktortitel verliehen", "fr": "Des doctorats y sont décernés", "ca": "Aquí s'imparteixen doctorats", - "cs": "Zde se udělují doktoráty" + "cs": "Zde se udělují doktoráty", + "es": "Aquí se otorgan títulos de doctorado" } } ], diff --git a/assets/layers/ticket_machine/ticket_machine.json b/assets/layers/ticket_machine/ticket_machine.json index aa9318126..f94860f02 100644 --- a/assets/layers/ticket_machine/ticket_machine.json +++ b/assets/layers/ticket_machine/ticket_machine.json @@ -5,14 +5,16 @@ "de": "Fahrkartenautomaten", "nl": "Kaartautomaten", "ca": "Màquines de bitllets", - "cs": "Automaty na jízdenky" + "cs": "Automaty na jízdenky", + "es": "Máquinas expendedoras de billetes" }, "description": { "en": "Find ticket machines for public transport tickets", "de": "Fahrkartenautomaten für ÖPNV-Tickets finden", "nl": "Zoek kaartautomaten voor het openbaar vervoer", "ca": "Troba màquines de bitllets per a bitllets de transport públic", - "cs": "Vyhledejte automaty na jízdenky na veřejnou dopravu" + "cs": "Vyhledejte automaty na jízdenky na veřejnou dopravu", + "es": "Encuentra máquinas expendedoras de billetes para el transporte público" }, "source": { "osmTags": { @@ -29,7 +31,8 @@ "de": "Fahrkartenautomat", "nl": "Kaartautomaat", "ca": "Màquina de bitllets", - "cs": "Automat na jízdenky" + "cs": "Automat na jízdenky", + "es": "Máquina expendedora de billetes" } }, "pointRendering": [ @@ -63,7 +66,8 @@ "de": "einen Fahrkartenautomat", "nl": "een kaartautomaat", "ca": "una màquina de bitllets", - "cs": "automat na jízdenky" + "cs": "automat na jízdenky", + "es": "una máquina expendedora de billetes" } } ], @@ -77,14 +81,16 @@ "de": "Wer ist der Betreiber dieses Fahrkartenautomaten?", "nl": "Wie is de beheerder van deze kaartautomaat?", "ca": "Qui és l'operador d'aquesta màquina de venda de bitllets?", - "cs": "Kdo je provozovatelem tohoto automatu na jízdenky?" + "cs": "Kdo je provozovatelem tohoto automatu na jízdenky?", + "es": "¿Quién es el operador de esta máquina expendedora de billetes?" }, "render": { "en": "This ticket machine is operated by {operator}", "de": "Dieser Fahrkartenautomat wird betrieben von {operator}", "nl": "Deze kaartautomaat wordt beheerd door {operator}", "ca": "{operator} opera aquesta màquina de bitllets", - "cs": "Tento automat na jízdenky provozuje {operator}" + "cs": "Tento automat na jízdenky provozuje {operator}", + "es": "Esta máquina expendedora de billetes está operada por {operator}" }, "freeform": { "key": "operator", @@ -94,7 +100,8 @@ "de": "Name des Betreibers", "nl": "Naam van de beheerder", "ca": "Nom de l'operador", - "cs": "Jméno operátora" + "cs": "Jméno operátora", + "es": "Nombre del operador" } }, "mappings": [ @@ -105,7 +112,8 @@ "nl": "Nederlandse Spoorwegen (NS)", "de": "Niederländische Eisenbahn (NS)", "ca": "Ferrocarrils holandesos (NS)", - "cs": "Nizozemské dráhy (NS)" + "cs": "Nizozemské dráhy (NS)", + "es": "Ferrocarriles Holandeses (NS)" }, "addExtraTags": [ "operator:wikidata=Q23076" diff --git a/assets/layers/ticket_validator/ticket_validator.json b/assets/layers/ticket_validator/ticket_validator.json index c8dd109a6..d5d342f56 100644 --- a/assets/layers/ticket_validator/ticket_validator.json +++ b/assets/layers/ticket_validator/ticket_validator.json @@ -4,13 +4,15 @@ "en": "Ticket Validators", "de": "Fahrkartenentwerter", "ca": "Validadors de bitllets", - "cs": "Ověřovače jízdenek" + "cs": "Ověřovače jízdenek", + "es": "Validadores de billetes" }, "description": { "en": "Find ticket validators to validate public transport tickets", "de": "Finden Sie Fahrkartenentwerter, um Tickets für den öffentlichen Nahverkehr zu entwerten", "ca": "Trobeu validadors de bitllets per validar bitllets de transport públic", - "cs": "Najděte validátory jízdenek pro ověření jízdenek pro veřejnou dopravu" + "cs": "Najděte validátory jízdenek pro ověření jízdenek pro veřejnou dopravu", + "es": "Encuentra validadores de billetes para validar los billetes de transporte público" }, "source": { "osmTags": "amenity=ticket_validator" @@ -21,7 +23,8 @@ "en": "Ticket Validator", "de": "Fahrkartenentwerter", "ca": "Validador de bitllets", - "cs": "Validátor jízdenek" + "cs": "Validátor jízdenek", + "es": "Validador de billetes" } }, "pointRendering": [ @@ -53,13 +56,15 @@ "en": "a ticket validator", "de": "einen Fahrkartenentwerter", "ca": "un validador de bitllets", - "cs": "validátor jízdenek" + "cs": "validátor jízdenek", + "es": "un validador de billetes" }, "description": { "en": "A ticket validator to validate a public transport ticket. This can be either a digital reader, reading a card or ticket, or a machine stamping or punching a ticket.", "de": "Ein Fahrkartenentwerter zur Entwertung einer Fahrkarte für öffentliche Verkehrsmittel. Dabei kann es sich entweder um ein digitales Lesegerät handeln, das eine Karte oder einen Fahrschein liest, oder um eine Maschine, die einen Fahrschein stempelt oder locht.", "ca": "Un validador de bitllets per validar un bitllet de transport públic. Pot ser un lector digital, llegir una targeta o un bitllet, o una màquina que estampa o perfora un bitllet.", - "cs": "Ověřovač jízdenek k ověření platnosti jízdenky na veřejnou dopravu. Může to být buď digitální čtečka, která čte kartu nebo jízdenku, nebo stroj, který jízdenku orazítkuje nebo vyrazí." + "cs": "Ověřovač jízdenek k ověření platnosti jízdenky na veřejnou dopravu. Může to být buď digitální čtečka, která čte kartu nebo jízdenku, nebo stroj, který jízdenku orazítkuje nebo vyrazí.", + "es": "Un validador de billetes para validar un billete de transporte público. Puede ser un lector digital, que lee una tarjeta o un billete, o una máquina que estampa o perfora un billete." } } ], @@ -73,7 +78,9 @@ "en": "This ticket validator is part of a barrier of type {barrier}", "de": "Dieser Fahrkartenentwerter ist Teil einer Zugangsbarriere vom Typ {barrier}", "ca": "Aquest validador de bitllets forma part d'una barrera de tipus {barrier}", - "cs": "Tento validátor vstupenek je součástí bariéry typu {barrier}" + "cs": "Tento validátor vstupenek je součástí bariéry typu {barrier}", + "es": "Este validador de billetes forma parte de una barrera de tipo {barrier}", + "uk": "Цей валідатор квитків є частиною шлагбаума типу {barrier}" }, "mappings": [ { @@ -82,7 +89,9 @@ "en": "This ticket validator is part of a gate", "de": "Dieser Fahrscheinentwerter ist Teil einer Zugangsbarriere", "ca": "Aquest validador de bitllets forma part d'una porta", - "cs": "Tento validátor jízdenek je součástí brány" + "cs": "Tento validátor jízdenek je součástí brány", + "es": "Este validador de billetes forma parte de una puerta", + "uk": "Цей валідатор квитків є частиною воріт" } } ] @@ -93,13 +102,15 @@ "en": "Who is the operator of this ticket validator?", "de": "Wer ist der Betreiber dieses Fahrkartenentwerters?", "ca": "Qui és l'operador d'aquest validador de bitllets?", - "cs": "Kdo je provozovatelem tohoto validátoru jízdenek?" + "cs": "Kdo je provozovatelem tohoto validátoru jízdenek?", + "es": "¿Quién es el operador de este validador de billetes?" }, "render": { "en": "This ticket validator is operated by {operator}", "de": "Dieser Fahrkartenentwerter wird betrieben von {operator}", "ca": "{operator} opera aquest validador de bitllets", - "cs": "Tento validátor jízdenek provozuje {operator}" + "cs": "Tento validátor jízdenek provozuje {operator}", + "es": "Este validador de billetes está operado por {operator}" }, "freeform": { "key": "operator", @@ -109,7 +120,8 @@ "de": "Name des Betreibers", "nl": "Naam van de beheerder", "ca": "Nom de l'operador", - "cs": "Jméno operátora" + "cs": "Jméno operátora", + "es": "Nombre del operador" } }, "mappings": [ @@ -120,7 +132,8 @@ "nl": "Nederlandse Spoorwegen (NS)", "de": "Niederländische Eisenbahn (NS)", "ca": "Ferrocarrils holandesos (NS)", - "cs": "Nizozemské dráhy (NS)" + "cs": "Nizozemské dráhy (NS)", + "es": "Ferrocarriles Holandeses (NS)" }, "addExtraTags": [ "operator:wikidata=Q23076" @@ -140,7 +153,8 @@ "en": "This ticket validator accepts OV-Chipkaart", "de": "Dieser Fahrkartenentwerter akzeptiert die OV-Chipkaart", "ca": "Aquest validador de bitllets accepta OV-Chipkaart", - "cs": "Tento ověřovač jízdenek přijímá OV-Chipkaart" + "cs": "Tento ověřovač jízdenek přijímá OV-Chipkaart", + "es": "Este validador de billetes acepta OV-Chipkaart" }, "hideInAnswer": true }, @@ -151,7 +165,8 @@ "en": "This ticket validator accepts OV-Chipkaart", "de": "Dieser Ticketentwerter akzeptiert die OV-Chipkaart", "ca": "Aquest validador de bitllets accepta OV-Chipkaart", - "cs": "Tento ověřovač jízdenek přijímá OV-Chipkaart" + "cs": "Tento ověřovač jízdenek přijímá OV-Chipkaart", + "es": "Este validador de billetes acepta OV-Chipkaart" }, "hideInAnswer": "_country!=nl" } diff --git a/assets/layers/toilet/toilet.json b/assets/layers/toilet/toilet.json index abb9901d3..dc5452614 100644 --- a/assets/layers/toilet/toilet.json +++ b/assets/layers/toilet/toilet.json @@ -18,7 +18,7 @@ "en": "A layer showing (public) toilets", "nl": "Een laag die publieke toiletten toont", "de": "Eine Ebene mit (öffentlichen) Toiletten", - "es": "Una capa que muestra baños (públicos)", + "es": "Una capa que muestra los baños (públicos)", "fr": "Un calque montrant les toilettes (publiques)", "da": "Et lag, der viser (offentlige) toiletter", "ca": "Una capa que mostra banys (publics)", @@ -162,7 +162,8 @@ "ru": "tуалет с доступом для пользователей кресел-колясок", "da": "et toilet med kørestolsvenligt toilet", "ca": "un lavabo amb lavabo accessible per a cadires de rodes", - "cs": "toalety s bezbariérovou toaletou" + "cs": "toalety s bezbariérovou toaletou", + "es": "un baño con inodoro accesible para sillas de ruedas" }, "tags": [ "amenity=toilets", @@ -177,7 +178,8 @@ "da": "Et toilet, der har mindst et kørestolsvenligt toilet", "ca": "Un lavabo que tingui almenys un lavabo accessible per a cadira de rodes", "cs": "Toaleta, která má alespoň jednu toaletu pro vozíčkáře", - "sl": "Stranišča z vsaj enim invalidom na vozičku dostopnim straniščem" + "sl": "Stranišča z vsaj enim invalidom na vozičku dostopnim straniščem", + "es": "Un baño que tiene al menos un inodoro accesible para sillas de ruedas" } } ], @@ -194,7 +196,9 @@ "ru": "Есть ли свободный доступ к этим туалетам?", "da": "Er disse toiletter offentligt tilgængelige?", "ca": "Aquests serveis són d'accés públic?", - "cs": "Jsou tyto toalety veřejně přístupné?" + "cs": "Jsou tyto toalety veřejně přístupné?", + "es": "¿Son estos baños de acceso público?", + "uk": "Чи є ці туалети загальнодоступними?" }, "render": { "en": "Access is {access}", @@ -205,7 +209,8 @@ "es": "El acceso es {access}", "da": "Adgang er {access}", "ca": "L'accés és {access}", - "cs": "Přístup je {access}" + "cs": "Přístup je {access}", + "uk": "Доступ – {access}" }, "freeform": { "key": "access", @@ -226,7 +231,8 @@ "es": "Acceso público", "da": "Offentlig adgang", "ca": "Accés públic", - "cs": "Veřejný přístup" + "cs": "Veřejný přístup", + "uk": "Публічний доступ" } }, { @@ -238,10 +244,11 @@ "fr": "Accès réservé aux clients", "nl": "Enkel toegang voor klanten", "it": "Accesso riservato ai clienti e alle clienti", - "es": "Solo accesible a clientes", + "es": "Solo acceso para clientes", "da": "Kun adgang til kunder", "ca": "Sols accessible per a clients", - "cs": "Přístup pouze pro zákazníky" + "cs": "Přístup pouze pro zákazníky", + "uk": "Доступ тільки для клієнтів" } }, { @@ -255,10 +262,11 @@ "nl": "Niet toegankelijk", "ru": "Недоступно", "it": "Non accessibile", - "es": "No accesible", + "es": "Inaccesible", "da": "Ikke tilgængelig", "ca": "No accessible", - "cs": "Nepřístupné" + "cs": "Nepřístupné", + "uk": "Недоступно" } }, { @@ -270,10 +278,11 @@ "fr": "Accessible, mais vous devez demander la clé", "nl": "Toegankelijk na het vragen van de sleutel", "it": "Accessibile, ma occorre chiedere una chiave per accedere", - "es": "Accesible, pero hay que pedir la llave para entrar", + "es": "Accesible, pero hay que pedir una llave para entrar", "da": "Tilgængelig, men man skal bede om en nøgle for at komme ind", "ca": "Accessible, però s'ha de demanar la clau per a entrar", - "cs": "Přístupné, ale pro vstup je třeba požádat o klíč" + "cs": "Přístupné, ale pro vstup je třeba požádat o klíč", + "uk": "Доступний, але для входу потрібно попросити ключ" } }, { @@ -285,7 +294,7 @@ "nl": "Publiek toegankelijk", "it": "Accesso pubblico", "ru": "Свободный доступ", - "es": "De acceso público", + "es": "Acceso público", "da": "Offentlig adgang", "ca": "Accés públic", "cs": "Veřejný přístup" @@ -316,7 +325,8 @@ "it": "Questi servizi igienici sono gratuiti?", "da": "Er det gratis at benytte disse toiletter?", "ca": "Aquest serveis són gratuïts?", - "cs": "Jsou tyto toalety zdarma?" + "cs": "Jsou tyto toalety zdarma?", + "es": "¿Son estos baños de uso gratuito?" }, "mappings": [ { @@ -344,7 +354,8 @@ "it": "Gratis", "da": "Gratis at bruge", "ca": "Gratuït", - "cs": "Použití zdarma" + "cs": "Použití zdarma", + "es": "De uso gratuito" } } ] @@ -360,7 +371,7 @@ "nl": "Hoeveel moet men betalen om deze toiletten te gebruiken?", "it": "Quanto costa l'accesso a questi servizi igienici?", "ru": "Сколько стоит посещение туалета?", - "es": "¿Cuánto hay que pagar para estos baños?", + "es": "¿Cuánto hay que pagar por estos baños?", "da": "Hvor meget skal man betale for disse toiletter?", "ca": "Quant s'ha de pagar per aquests lavabos?", "cs": "Kolik se za tyto toalety platí?" @@ -372,7 +383,7 @@ "nl": "De toiletten gebruiken kost {charge}", "it": "La tariffa è {charge}", "ru": "Стоимость {charge}", - "es": "La tasa es {charge}", + "es": "La tarifa es {charge}", "da": "Gebyret er {charge}", "ca": "La taxa és {charge}", "cs": "Poplatek je {charge}" @@ -390,7 +401,8 @@ "nl": "bijv. 0.50 EUR", "de": "z.B. 0.50 EUR", "ca": "p. ex. 0.50 eur", - "cs": "např. 0,50 EUR" + "cs": "např. 0,50 EUR", + "es": "ej. 0.50 EUR" } }, "id": "toilet-charge" @@ -426,7 +438,8 @@ "fr": "Quand ces toilettes sont-elles ouvertes ?", "da": "Hvornår åbnes disse toiletter?", "ca": "Quan obrin aquests lavabos?", - "cs": "Kdy jsou tyto toalety otevřeny?" + "cs": "Kdy jsou tyto toalety otevřeny?", + "es": "¿Cuándo están abiertos estos baños?" } } }, @@ -443,7 +456,8 @@ "it": "C'è un WC riservato alle persone in sedia a rotelle?", "da": "Er der et særligt toilet til kørestolsbrugere?", "ca": "Hi ha un lavabo específic per a usuaris amb cadira de rodes?", - "cs": "Je zde vyhrazená toaleta pro vozíčkáře?" + "cs": "Je zde vyhrazená toaleta pro vozíčkáře?", + "es": "¿Hay un baño dedicado para usuarios de sillas de ruedas?" }, "mappings": [ { @@ -453,7 +467,7 @@ "fr": "Il y a des toilettes réservées pour les personnes à mobilité réduite", "nl": "Er is een toilet voor rolstoelgebruikers", "it": "C'è un WC riservato alle persone in sedia a rotelle", - "es": "Hay un baño dedicado para usuarios con sillas de ruedas", + "es": "Hay un baño dedicado para usuarios de sillas de ruedas", "da": "Der er et særligt toilet til kørestolsbrugere", "ca": "Hi ha un lavabo dedicat per a usuaris amb cadira de rodes", "cs": "K dispozici je speciální toaleta pro vozíčkáře" @@ -483,7 +497,8 @@ "de": "Es gibt nur eine barrierefreie Toilette für Rollstuhlfahrer", "da": "Der er kun et særligt toilet til kørestolsbrugere", "ca": "És només un lavabo per a usuaris amb cadira de rodes", - "cs": "K dispozici je pouze vyhrazená toaleta pro vozíčkáře" + "cs": "K dispozici je pouze vyhrazená toaleta pro vozíčkáře", + "es": "Solo hay un baño dedicado para usuarios de sillas de ruedas" } } ] @@ -510,7 +525,8 @@ "de": "Wie breit ist die Tür zur rollstuhlgerechten Toilette?", "da": "Hvad er bredden på døren til det kørestolsvenlige toilet?", "ca": "Quina és l'amplada de la porta per al lavabo accéssible?", - "cs": "Jaká je šířka dveří na bezbariérovou toaletu?" + "cs": "Jaká je šířka dveří na bezbariérovou toaletu?", + "es": "¿Cuál es el ancho de la puerta del baño accesible para sillas de ruedas?" }, "render": { "en": "The door to the wheelchair-accessible toilet is {canonical(door:width)} wide", @@ -519,7 +535,8 @@ "de": "Die Tür zur rollstuhlgerechten Toilette ist {canonical(door:width)} breit", "da": "Døren til det kørestolsvenlige toilet er {canonical(door:width)} bred", "ca": "La porta del vàter accessible amb cadira de rodes té {canonical(door:width)} d'ample", - "cs": "Dveře na bezbariérovou toaletu mají šířku {canonical(door:width)}" + "cs": "Dveře na bezbariérovou toaletu mají šířku {canonical(door:width)}", + "es": "La puerta del baño accesible para sillas de ruedas tiene {canonical(door:width)} de ancho" }, "freeform": { "key": "door:width", @@ -538,7 +555,7 @@ "nl": "Welke toiletten zijn dit?", "it": "Di che tipo di servizi igienici si tratta?", "ru": "Какие это туалеты?", - "es": "¿Qué tipo de aseos son?", + "es": "¿Qué tipo de baños son estos?", "da": "Hvilken slags toiletter er det?", "ca": "Quin tipus de lavabo són aquests?", "cs": "O jaký druh záchodů se jedná?" @@ -553,7 +570,8 @@ "nl": "Er zijn enkel WC's om op te zitten", "it": "Ci sono solo WC con sedile", "ca": "Només hi han lavabos asseguts", - "cs": "K dispozici jsou pouze toalety k sezení" + "cs": "K dispozici jsou pouze toalety k sezení", + "es": "Solo hay inodoros sentados" } }, { @@ -564,7 +582,7 @@ "fr": "Il y a uniquement des urinoirs", "nl": "Er zijn enkel urinoirs", "it": "Ci sono solo urinali", - "es": "Aquí solo hay orinales", + "es": "Solo hay urinarios aquí", "da": "Her er kun urinaler", "ca": "Aquí només hi han urinals", "cs": "Jsou zde pouze pisoáry" @@ -580,7 +598,8 @@ "it": "Ci sono solo turche", "da": "Der er kun squat-toiletter her", "ca": "Aquí només hi han lavabos a la gatzoneta", - "cs": "Jsou zde pouze \"turecké\" toalety" + "cs": "Jsou zde pouze \"turecké\" toalety", + "es": "Solo hay inodoros en cuclillas aquí" } }, { @@ -591,7 +610,7 @@ "fr": "Il y a des sièges de toilettes et des urinoirs", "nl": "Er zijn zowel urinoirs als zittoiletten", "it": "Ci sono sia sedili, sia urinali", - "es": "Aquí hay tanto váteres de sentarse como orinales", + "es": "Aquí hay inodoros sentados y urinarios", "da": "Både siddende toiletter og urinaler er tilgængelige her", "ca": "Aquí hi ha lavabos per a utilitzar tant de peu com asseguts", "cs": "Zde jsou k dispozici sedací toalety i pisoáry" @@ -606,12 +625,16 @@ "en": "Are these toilets gender-segregated?", "nl": "Zijn deze toiletten gescheiden op basis van geslacht?", "de": "Sind diese Toiletten geschlechtergetrennt?", - "ca": "Aquests lavabos estan separats per gènere?" + "ca": "Aquests lavabos estan separats per gènere?", + "cs": "Jsou tyto toalety rozděleny podle pohlaví?", + "es": "¿Estos baños están segregados por género?" }, "questionHint": { "en": "Are there separate stalls or separate areas for men and women and are they signposted as such?", "nl": "Is er een aparte ruimte voor mannen en vrouwen en zijn deze ruimtes ook expliciet aangegeven?", - "de": "Gibt es getrennte Kabinen oder getrennte Bereiche für Männer und Frauen, und sind sie als solche ausgeschildert?" + "de": "Gibt es getrennte Kabinen oder getrennte Bereiche für Männer und Frauen, und sind sie als solche ausgeschildert?", + "cs": "Existují samostatné stánky nebo oddělené prostory pro muže a ženy a jsou jako takové označeny?", + "es": "¿Hay cabinas o áreas separadas para hombres y mujeres, y están señalizadas como tales?" }, "mappings": [ { @@ -620,7 +643,9 @@ "en": "There is a separate, signposted area for men and women", "nl": "Er zijn aparte ruimtes of toiletten voor mannen en vrouwen", "de": "Es gibt einen separaten, ausgeschilderten Bereich für Männer und Frauen", - "ca": "Hi ha una zona separada, senyalitzada per a homes i dones" + "ca": "Hi ha una zona separada, senyalitzada per a homes i dones", + "cs": "K dispozici je oddělený, označený prostor pro muže a ženy", + "es": "Hay un área separada e indicada para hombres y mujeres" } }, { @@ -628,7 +653,9 @@ "then": { "en": "There is no separate, signposted area for men and women", "nl": "Mannen en vrouwen gebruiken dezelfde ruimtes en toiletten", - "de": "Es gibt keinen getrennten, ausgeschilderten Bereich für Männer und Frauen" + "de": "Es gibt keinen getrennten, ausgeschilderten Bereich für Männer und Frauen", + "cs": "Neexistuje žádný oddělený, označený prostor pro muže a ženy", + "es": "No hay un área separada e indicada para hombres y mujeres" } } ] @@ -638,12 +665,16 @@ "question": { "en": "Are free, menstrual products distributed here?", "nl": "Zijn er gratis menstruatieproducten beschikbaar?", - "de": "Werden hier kostenlose Menstruationsprodukte verteilt?" + "de": "Werden hier kostenlose Menstruationsprodukte verteilt?", + "es": "¿Se distribuyen productos menstruales gratuitos aquí?", + "uk": "Чи розповсюджуються тут безкоштовні менструальні засоби?" }, "questionHint": { "en": "This is only about menstrual products that are free of charge. If e.g. a vending machine is available which charges for menstrual products, ignore it for this question.", "nl": "Dit gaat enkel over menstruatieproducten die gratis geschikbaar zijn. Indien er bv. een verkoopautomaat met menstruatieproducten is, negeer deze dan", - "de": "Hier geht es nur um Menstruationsprodukte, die kostenlos sind. Wenn es z. B. einen Automaten gibt, an dem Menstruationsprodukte kostenpflichtig sind, wird er bei dieser Frage nicht berücksichtigt." + "de": "Hier geht es nur um Menstruationsprodukte, die kostenlos sind. Wenn es z. B. einen Automaten gibt, an dem Menstruationsprodukte kostenpflichtig sind, wird er bei dieser Frage nicht berücksichtigt.", + "es": "Esto solo se refiere a productos menstruales gratuitos. Si, por ejemplo, hay una máquina expendedora que cobra por productos menstruales, ignórala para esta pregunta.", + "uk": "Йдеться лише про ті менструальні засоби, які є безкоштовними. Якщо, наприклад, поруч є торговий автомат, який бере плату за менструальні засоби, ігноруйте це питання." }, "mappings": [ { @@ -652,7 +683,9 @@ "en": "Free menstrual products are available to all visitors of these toilets", "nl": "Er zijn gratis menstruatieprocten beschikbaar voor alle bezoekers van deze toiletten", "de": "Für alle Besucher dieser Toiletten stehen kostenlose Menstruationsprodukte zur Verfügung", - "fr": "Protections menstruelles gratuites disponibles dans ces toilettes, pour tout le monde" + "fr": "Protections menstruelles gratuites disponibles dans ces toilettes, pour tout le monde", + "es": "Hay productos menstruales gratuitos disponibles para todos los visitantes de estos baños", + "uk": "Безкоштовні менструальні засоби доступні для всіх відвідувачів цих туалетів" } }, { @@ -661,7 +694,9 @@ "en": "Free menstrual products are available to some visitors of these toilets", "nl": "De gratis menstruatieproducten zijn enkel beschikbaar in een deel van de toiletten", "de": "Für einige Besucher dieser Toiletten gibt es kostenlose Menstruationsprodukte", - "fr": "Protections menstruelles gratuites disponibles dans ces toilettes, réservées à certains visiteurs" + "fr": "Protections menstruelles gratuites disponibles dans ces toilettes, réservées à certains visiteurs", + "es": "Hay productos menstruales gratuitos disponibles para algunos visitantes de estos baños", + "uk": "Деяким відвідувачам цих туалетів доступні безкоштовні менструальні засоби" }, "hideInAnswer": "gender_segregated=yes" }, @@ -672,7 +707,9 @@ "en": "No free menstrual products are available here", "nl": "Er zijn geen gratis menstruatieproducten beschikbaar", "de": "Hier gibt es keine kostenlosen Menstruationsprodukte", - "fr": "Pas protection menstruelle disponible ici" + "fr": "Pas protection menstruelle disponible ici", + "es": "No hay productos menstruales gratuitos disponibles aquí", + "uk": "Тут немає безкоштовних менструальних засобів" } } ] @@ -682,7 +719,9 @@ "question": { "en": "Where are the free menstrual products located?", "nl": "Waar bevinden de gratis menstruatieproducten zich?", - "de": "Wo befinden sich die kostenlosen Menstruationsprodukte?" + "de": "Wo befinden sich die kostenlosen Menstruationsprodukte?", + "uk": "Де знаходяться безкоштовні менструальні засоби?", + "es": "¿Dónde se encuentran los productos menstruales gratuitos?" }, "condition": { "or": [ @@ -693,7 +732,8 @@ "render": { "en": "The menstrual products are located in {toilets:menstrual_products:location}", "nl": "De menstruatieproducten bevinden zich in {toilets:menstrual_products:location}", - "de": "Die Menstruationsprodukte befinden sich in {toilets:menstrual_products:location}" + "de": "Die Menstruationsprodukte befinden sich in {toilets:menstrual_products:location}", + "es": "Los productos menstruales se encuentran en {toilets:menstrual_products:location}" }, "freeform": { "key": "toilets:menstrual_products:location", @@ -704,7 +744,9 @@ "then": { "en": "The free, menstrual products are located in the toilet for women", "nl": "De gratis menstruatieproducten bevinden zich in het vrouwentoilet", - "de": "Die kostenlosen Menstruationsprodukte befinden sich in der Toilette für Frauen" + "de": "Die kostenlosen Menstruationsprodukte befinden sich in der Toilette für Frauen", + "uk": "Безкоштовні менструальні засоби знаходяться в туалеті для жінок", + "es": "Los productos menstruales gratuitos se encuentran en el baño de mujeres" }, "if": "toilets:menstrual_products:location=female_toilet", "alsoShowIf": "toilets:menstrual_products:location=" @@ -713,7 +755,9 @@ "then": { "en": "The free, menstrual products are located in the toilet for men", "nl": "De gratis menstruatieproducten bevinden zich in het mannentoilet", - "de": "Die kostenlosen Menstruationsprodukte befinden sich in der Toilette für Männer" + "de": "Die kostenlosen Menstruationsprodukte befinden sich in der Toilette für Männer", + "uk": "Безкоштовні менструальні засоби знаходяться в туалеті для чоловіків", + "es": "Los productos menstruales gratuitos se encuentran en el baño de hombres" }, "if": "toilets:menstrual_products:location=male_toilet" }, @@ -722,7 +766,9 @@ "then": { "en": "The free, menstrual products are located in the toilet for wheelchair users", "nl": "De gratis menstruatieproducten bevinden zich in het rolstoeltoegankelijke toilet", - "de": "Die kostenlosen Menstruationsprodukte befinden sich auf der Toilette für Rollstuhlfahrende" + "de": "Die kostenlosen Menstruationsprodukte befinden sich auf der Toilette für Rollstuhlfahrende", + "uk": "Безкоштовні менструальні засоби знаходяться в туалеті для людей на візках", + "es": "Los productos menstruales gratuitos se encuentran en el baño para usuarios de sillas de ruedas" } } ] @@ -740,7 +786,8 @@ "it": "È disponibile un fasciatoio (per cambiare i pannolini)?", "da": "Findes der puslebord (til bleskift)?", "ca": "Hi ha un canviador per a nadons (per a canviar bolquers) disponible?", - "cs": "Je k dispozici přebalovací pult (na výměnu plenek)?" + "cs": "Je k dispozici přebalovací pult (na výměnu plenek)?", + "es": "¿Hay un cambiador (para cambiar pañales) disponible?" }, "mappings": [ { @@ -750,7 +797,7 @@ "fr": "Une table à langer est disponible", "nl": "Er is een luiertafel", "it": "È disponibile un fasciatoio", - "es": "Hay un cambiador", + "es": "Hay un cambiador disponible", "da": "Et puslebord er tilgængeligt", "ca": "Hi ha un canviador per a nadons", "cs": "Přebalovací pult je k dispozici" @@ -766,7 +813,7 @@ "fr": "Aucune table à langer", "nl": "Geen luiertafel", "it": "Non è disponibile un fasciatoio", - "es": "No hay cambiador", + "es": "No hay cambiador disponible", "da": "Der er ikke noget puslebord til rådighed", "ca": "No hi ha canviador per a nadons", "cs": "Přebalovací pult není k dispozici" @@ -784,10 +831,11 @@ "fr": "Où se situe la table à langer ?", "nl": "Waar bevindt de luiertafel zich?", "it": "Dove si trova il fasciatoio?", - "es": "¿Dónde está el cambiador?", + "es": "¿Dónde se encuentra el cambiador?", "da": "Hvor er puslebordet placeret?", "ca": "On està el canviador?", - "cs": "Kde je umístěn přebalovací pult?" + "cs": "Kde je umístěn přebalovací pult?", + "uk": "Де знаходиться пеленальний столик?" }, "render": { "en": "A changing table is located at {changing_table:location}", @@ -795,7 +843,7 @@ "fr": "Emplacement de la table à langer : {changing_table:location}", "nl": "Er bevindt zich een luiertafel in {changing_table:location}", "it": "Il fasciatoio si trova presso {changing_table:location}", - "es": "El cambiador está en {changing_table:location}", + "es": "Un cambiador se encuentra en {changing_table:location}", "da": "Puslebordet er placeret på {changing_table:location}", "ca": "Hi ha un canviador a {changing_table:location}", "cs": "Přebalovací pult se nachází v {changing_table:location}" @@ -819,7 +867,8 @@ "it": "Un fasciatoio è nei servizi igienici femminili", "da": "Puslebordet er på toilettet til kvinder. ", "ca": "Al lavabo per a dones hi ha un canviador", - "cs": "Přebalovací pult je na dámské toaletě. " + "cs": "Přebalovací pult je na dámské toaletě", + "es": "Hay un cambiador en el baño de mujeres" }, "if": "changing_table:location=female_toilet" }, @@ -831,7 +880,8 @@ "nl": "Er bevindt zich een luiertafel in de herentoiletten ", "it": "Un fasciatoio è nei servizi igienici maschili", "ca": "Al lavabo per a homes hi ha un canviador", - "cs": "Přebalovací pult je na pánské toaletě. " + "cs": "Přebalovací pult je na pánské toaletě", + "es": "Hay un cambiador en el baño de hombres" }, "if": "changing_table:location=male_toilet" }, @@ -845,7 +895,8 @@ "it": "Un fasciatoio è nei servizi igienici per persone in sedia a rotelle", "da": "Puslebordet er på toilettet for kørestolsbrugere. ", "ca": "Al lavabo per a usuaris de cadira de rodes hi ha un canviador", - "cs": "Přebalovací pult je na toaletě pro vozíčkáře. " + "cs": "Přebalovací pult je na toaletě pro vozíčkáře", + "es": "Hay un cambiador en el baño para usuarios de sillas de ruedas" } }, { @@ -856,10 +907,10 @@ "fr": "La table à langer est dans un espace dédié.", "nl": "Er bevindt zich een luiertafel in een daartoe voorziene kamer ", "it": "Un fasciatoio è in una stanza dedicata", - "es": "El cambiador está en una habitación dedicada", + "es": "Hay un cambiador en una habitación dedicada", "da": "Vuggestuen står i et særligt rum. ", "ca": "Hi ha un canviador en una habitació dedicada", - "cs": "Přebalovací pult je ve vyhrazené místnosti. " + "cs": "Přebalovací pult je ve vyhrazené místnosti" } } ], @@ -875,7 +926,7 @@ "en": "Do these toilets have a sink to wash your hands?", "nl": "Hebben deze toiletten een lavabo om de handen te wassen?", "de": "Gibt es hier ein Handwaschbecken?", - "es": "¿Esto baños tienen una pileta para lavarte las manos?", + "es": "¿Estos baños tienen un lavabo para lavarse las manos?", "fr": "Ces toilettes ont-ils un lavabo pour se laver les mains ?", "da": "Har disse toiletter en håndvask til at vaske hænder?", "ca": "Aquests lavabos tenen una pica per a rentar-se les mans?", @@ -888,7 +939,7 @@ "en": "These toilets have a sink to wash your hands", "nl": "Deze toiletten hebben een lavabo waar men de handen kan wassen", "de": "Die Toilette hat ein Handwaschbecken", - "es": "Estos aseos tienen un lavabo para lavarse las manos", + "es": "Estos baños tienen un lavabo para lavarse las manos", "fr": "Ces toilettes ont un lavabo pour se laver les mains", "da": "Dette toilet har en vask til at vaske dine hænder", "ca": "Aquests lavabos tenen una pica per a rentar-se les mans", @@ -901,7 +952,7 @@ "en": "These toilets don't have a sink to wash your hands", "nl": "Deze toiletten hebben geen lavabo waar men de handen kan wassen", "de": "Die Toilette hat kein Handwaschbecken", - "es": "Estos aseos no tienen lavabo para lavarse las manos", + "es": "Estos baños no tienen un lavabo para lavarse las manos", "fr": "Ces toilettes n'ont pas de lavabo pour se laver les mains", "da": "Disse toiletter har ikke en vask til at vaske dine hænder", "ca": "Aquests lavabos no tenen una pica per a rentar-se les mans", @@ -919,7 +970,7 @@ "en": "Does one have to bring their own toilet paper to this toilet?", "nl": "Moet je je eigen toiletpapier meenemen naar deze toilet?", "de": "Ist Toilettenpapier vorhanden?", - "es": "¿Hay que traer tu propio papel higiénico a este baño?", + "es": "¿Hay que traer su propio papel higiénico a este baño?", "fr": "Est-ce qu'il faut apporter son propre papier toilette ?", "da": "Skal man selv medbringe toiletpapir til dette toilet?", "ca": "Hi ha que portar el teu propi paper higiènic a aquest lavabo?", @@ -932,7 +983,7 @@ "en": "This toilet is equipped with toilet paper", "nl": "Deze toilet is voorzien van toiletpapier", "de": "Die Toilette ist in der Regel mit Toilettenpapier ausgestattet", - "es": "Este baño esta equipado con papel higiénico", + "es": "Este baño está equipado con papel higiénico", "fr": "Ces toilettes sont équipés de papier toilette", "da": "Dette toilet er udstyret med toiletpapir", "ca": "Aquest lavabo està equipat amb paper higiènic", @@ -971,7 +1022,7 @@ "en": "Wheelchair accessible", "nl": "Rolstoel toegankelijk", "de": "Barrierefrei", - "es": "Accesible con sillas de ruedas", + "es": "Accesible para sillas de ruedas", "fr": "Accessible aux fauteuils roulants", "da": "Tilgængelig for kørestolsbrugere", "ca": "Accessible amb cadira de rodes", @@ -995,7 +1046,7 @@ "en": "Has a changing table", "nl": "Heeft een luiertafel", "de": "Mit Wickeltisch", - "es": "Tiene un cambiador", + "es": "Tiene cambiador", "fr": "A une table à langer", "da": "Har et puslebord", "ca": "Té un canviador", diff --git a/assets/layers/toilet_at_amenity/toilet_at_amenity.json b/assets/layers/toilet_at_amenity/toilet_at_amenity.json index 1fe207835..63e9d1d99 100644 --- a/assets/layers/toilet_at_amenity/toilet_at_amenity.json +++ b/assets/layers/toilet_at_amenity/toilet_at_amenity.json @@ -5,14 +5,16 @@ "de": "Toiletten in anderen Einrichtungen", "nl": "Toilet in een voorziening", "ca": "Lavabos a altres instal·lacions", - "cs": "Toalety u ostatního vybavení" + "cs": "Toalety u ostatního vybavení", + "es": "Baños en otros servicios" }, "description": { "en": "A layer showing (public) toilets located at different places.", "de": "Eine Ebene mit (öffentlichen) Toiletten an verschiedenen Orten.", "nl": "Een laag die (publiek toegankelijke) toiletten toont in verschillende andere voorzieningen.", "ca": "Una capa que mostra banys (públics) ubicats en diferents llocs.", - "cs": "Vrstva zobrazující (veřejné) toalety umístěné na různých místech." + "cs": "Vrstva zobrazující (veřejné) toalety umístěné na různých místech.", + "es": "Una capa que muestra los baños (públicos) ubicados en diferentes lugares." }, "source": { "osmTags": { @@ -29,7 +31,8 @@ "de": "Toilette in Einrichtung", "nl": "Toilet in een voorziening", "ca": "Lavabo a la instal·lació", - "cs": "Toaleta v objektu" + "cs": "Toaleta v objektu", + "es": "Baño en servicio" }, "mappings": [ { @@ -40,7 +43,8 @@ "nl": "Toilet bij {name}", "ca": "Bany a {name}", "cs": "Toaleta v {name}", - "sl": "Stranišče v {name}" + "sl": "Stranišče v {name}", + "es": "Baño en {name}" } } ] @@ -146,7 +150,8 @@ "fr": "Ces toilettes sont-elles librement accessibles ?", "ca": "Aquests serveis són d'accés públic?", "cs": "Jsou tyto toalety veřejně přístupné?", - "sl": "Ali so ta stranišča javno dostopna?" + "sl": "Ali so ta stranišča javno dostopna?", + "es": "¿Son estos baños de acceso público?" }, "render": { "en": "Access is {toilets:access}", @@ -158,7 +163,8 @@ "da": "Adgang er {toilets:access}", "ca": "L'accés és {toilets:access}", "cs": "Přístup je {toilets:access}", - "sl": "Dostop je {toilets:access}" + "sl": "Dostop je {toilets:access}", + "uk": "Доступ - {toilets:access}" }, "freeform": { "key": "toilets:access", @@ -192,7 +198,8 @@ "fr": "Accessibles uniquement au clients du lieu", "ca": "Només accessible a clients de l'instal·lació", "cs": "Přístup pouze zákazníkům zařízení občanské vybavenosti", - "sl": "Samo za stranke lokala" + "sl": "Samo za stranke lokala", + "es": "Solo acceso para clientes del servicio" } }, { @@ -204,7 +211,8 @@ "fr": "Non accessibles, même pour les clients du lieu", "ca": "No accessible, inclús per als clients de la instal·lació", "cs": "Není přístupný, a to ani pro zákazníky občanské vybavenosti", - "sl": "Ni dostopno niti za stranke lokala" + "sl": "Ni dostopno niti za stranke lokala", + "es": "Inaccesible, incluso para clientes del servicio" } }, { @@ -215,7 +223,7 @@ "fr": "Accessibles, mais vous devez demander la clé", "nl": "Toegankelijk na het vragen van de sleutel", "it": "Accessibile, ma occorre chiedere una chiave per accedere", - "es": "Accesible, pero hay que pedir la llave para entrar", + "es": "Accesible, pero hay que pedir una llave para entrar", "da": "Tilgængelig, men man skal bede om en nøgle for at komme ind", "ca": "Accessible, però hi ha que demanar la clau per a entrar", "cs": "Přístupné, ale ke vstupu musíte požádat o klíč", @@ -253,7 +261,8 @@ "da": "Er det gratis at benytte disse toiletter?", "ca": "Aquest serveis són gratuïts?", "cs": "Jsou tyto toalety zdarma k použití?", - "sl": "Ali so ta stranišča brezplačna za uporabo?" + "sl": "Ali so ta stranišča brezplačna za uporabo?", + "es": "¿Son estos baños de uso gratuito?" }, "mappings": [ { @@ -284,7 +293,8 @@ "ca": "Gratuït", "cs": "Zdarma k použití", "pt": "Grátis para usar", - "sl": "Brezplačna uporaba" + "sl": "Brezplačna uporaba", + "es": "De uso gratuito" } } ] @@ -297,7 +307,7 @@ "nl": "Hoeveel moet men betalen om deze toiletten te gebruiken?", "it": "Quanto costa l'accesso a questi servizi igienici?", "ru": "Сколько стоит посещение туалета?", - "es": "¿Cuánto hay que pagar para estos baños?", + "es": "¿Cuánto hay que pagar por estos baños?", "da": "Hvor meget skal man betale for disse toiletter?", "ca": "Quant s'ha de pagar per aquests lavabos?", "cs": "Kolik se platí za tyto toalety?", @@ -310,7 +320,7 @@ "nl": "De toiletten gebruiken kost {toilets:charge}", "it": "La tariffa è {toilets:charge}", "ru": "Стоимость {toilets:charge}", - "es": "La tasa es {toilets:charge}", + "es": "La tarifa es {toilets:charge}", "da": "Gebyret er {toilets:charge}", "ca": "La taxa és {toilets:charge}", "cs": "Poplatek je {toilets:charge}", @@ -331,7 +341,9 @@ "en": "When is the amenity where these toilets are located open?", "de": "Wann ist der Ort, an dem sich diese Toiletten befinden, geöffnet?", "ca": "Quan està oberta la instal·lació on es troben aquests lavabos?", - "cs": "Kdy je otevřeno zařízení, kde se tyto toalety nacházejí?" + "cs": "Kdy je otevřeno zařízení, kde se tyto toalety nacházejí?", + "uk": "Коли відкрито приміщення, де розташовані ці туалети?", + "es": "¿Cuándo está abierto el servicio donde se ubican estos baños?" } } }, @@ -346,7 +358,8 @@ "da": "Er der et særligt toilet til kørestolsbrugere?", "ca": "Hi ha un lavabo específic per a usuaris amb cadira de rodes?", "cs": "Existuje vyhrazená toaleta pro vozíčkáře?", - "sl": "Ali je tu stranišče namenjeno invalidom na vozičku?" + "sl": "Ali je tu stranišče namenjeno invalidom na vozičku?", + "es": "¿Hay un baño dedicado para usuarios de sillas de ruedas?" }, "mappings": [ { @@ -356,7 +369,7 @@ "fr": "Il y a des toilettes réservées pour les personnes à mobilité réduite", "nl": "Er is een toilet voor rolstoelgebruikers", "it": "C'è un WC riservato alle persone in sedia a rotelle", - "es": "Hay un baño dedicado para usuarios con sillas de ruedas", + "es": "Hay un baño dedicado para usuarios de sillas de ruedas", "da": "Der er et særligt toilet til kørestolsbrugere", "ca": "Hi ha un lavabo dedicat per a usuaris amb cadira de rodes", "cs": "K dispozici je vyhrazená toaleta pro vozíčkáře" @@ -387,7 +400,8 @@ "de": "Es gibt nur eine barrierefreie Toilette für Rollstuhlfahrer", "da": "Der er kun et særligt toilet til kørestolsbrugere", "ca": "Sols hi ha un lavabo per a usuaris amb cadira de rodes", - "cs": "K dispozici je pouze vyhrazená toaleta pro vozíčkáře" + "cs": "K dispozici je pouze vyhrazená toaleta pro vozíčkáře", + "es": "Solo hay un baño dedicado para usuarios de sillas de ruedas" } } ] @@ -408,7 +422,8 @@ "da": "Hvad er bredden på døren til det kørestolsvenlige toilet?", "ca": "Quina és l'amplada de la porta del lavabo accessible per a cadira de rodes?", "cs": "Jaká je šířka dveří na bezbariérovou toaletu?", - "sl": "Koliko so široka vrata v stranišče za invalide na vozičku?" + "sl": "Koliko so široka vrata v stranišče za invalide na vozičku?", + "es": "¿Cuál es el ancho de la puerta del baño accesible para sillas de ruedas?" }, "render": { "en": "The door to the wheelchair-accessible toilet is {canonical(toilets:door:width)} wide", @@ -418,7 +433,8 @@ "da": "Døren til det kørestolsvenlige toilet er {canonical(toilets:door:width)} bred", "ca": "La porta del vàter accessible amb cadira de rodes és {canonical(toilets:door:width)} d'ample", "cs": "Dveře na toaletu pro vozíčkáře jsou {canonical(toilets:door:width)} široké", - "sl": "Vrata v stranišče za invalide na vozičku so široka {canonical(toilets:door:width)}" + "sl": "Vrata v stranišče za invalide na vozičku so široka {canonical(toilets:door:width)}", + "es": "La puerta del baño accesible para sillas de ruedas tiene {canonical(toilets:door:width)} de ancho" }, "freeform": { "key": "toilets:door:width", @@ -452,7 +468,7 @@ "en": "Wheelchair accessible", "nl": "Rolstoel toegankelijk", "de": "Barrierefrei", - "es": "Accesible con sillas de ruedas", + "es": "Accesible para sillas de ruedas", "fr": "Accessible aux fauteuils roulants", "da": "Tilgængelig for kørestolsbrugere", "ca": "Accessible amb cadira de rodes", @@ -479,7 +495,8 @@ "fr": "Utilisation gratuite", "da": "Gratis at bruge", "ca": "Ús gratuït", - "cs": "Zdarma k použití" + "cs": "Zdarma k použití", + "es": "De uso gratuito" }, "osmTags": { "or": [ diff --git a/assets/layers/tool_library/tool_library.json b/assets/layers/tool_library/tool_library.json index ff6e72d7f..3a75f8493 100644 --- a/assets/layers/tool_library/tool_library.json +++ b/assets/layers/tool_library/tool_library.json @@ -2,11 +2,13 @@ "id": "tool_library", "name": { "en": "Tool libraries", - "de": "Werkzeugbibliothek" + "de": "Werkzeugbibliothek", + "es": "Bibliotecas de herramientas" }, "description": { "en": "A tool library is a place where people from the general public can borrow tools", - "de": "Eine Werkzeugbibliothek ist ein Ort, an dem Menschen aus der Öffentlichkeit Werkzeuge ausleihen können" + "de": "Eine Werkzeugbibliothek ist ein Ort, an dem Menschen aus der Öffentlichkeit Werkzeuge ausleihen können", + "es": "Una biblioteca de herramientas es un lugar donde las personas del público en general pueden pedir prestadas herramientas" }, "source": { "osmTags": "amenity=tool_library" @@ -15,7 +17,8 @@ "title": { "render": { "en": "Tool library {name}", - "de": "Werkzeugbibliothek {name}" + "de": "Werkzeugbibliothek {name}", + "es": "Biblioteca de herramientas {name}" } }, "pointRendering": [ @@ -40,7 +43,8 @@ "if": "name~*", "then": { "en": "{name}", - "de": "{name}" + "de": "{name}", + "es": "{name}" } } ] @@ -58,14 +62,16 @@ { "title": { "en": "a tool library", - "de": "Eine Werkzeugbibliothek" + "de": "Eine Werkzeugbibliothek", + "es": "una biblioteca de herramientas" }, "tags": [ "amenity=tool_library" ], "description": { "en": "A tool library is a place where people from the general public can borrow tools", - "de": "Eine Werkzeugbibliothek ist ein Ort, an dem Menschen aus der Öffentlichkeit Werkzeuge ausleihen können" + "de": "Eine Werkzeugbibliothek ist ein Ort, an dem Menschen aus der Öffentlichkeit Werkzeuge ausleihen können", + "es": "Una biblioteca de herramientas es un lugar donde las personas del público en general pueden pedir prestadas herramientas" } } ], @@ -77,14 +83,16 @@ { "question": { "en": "Is a membership required to borrow tools here?", - "de": "Ist eine Mitgliedschaft erforderlich, um hier Werkzeuge auszuleihen?" + "de": "Ist eine Mitgliedschaft erforderlich, um hier Werkzeuge auszuleihen?", + "es": "¿Se requiere una membresía para pedir herramientas prestadas aquí?" }, "id": "membership", "mappings": [ { "then": { "en": "No membership is required to borrow tools here", - "de": "Keine Mitgliedschaft ist erforderlich, um hier Werkzeuge auszuleihen" + "de": "Keine Mitgliedschaft ist erforderlich, um hier Werkzeuge auszuleihen", + "es": "No se requiere membresía para pedir herramientas prestadas aquí" }, "if": "membership=no" }, @@ -92,14 +100,16 @@ "if": "membership=required", "then": { "en": "A membership is required to use this tool library", - "de": "Eine Mitgliedschaft ist erforderlich, um diese Werkzeugbibliothek zu nutzen" + "de": "Eine Mitgliedschaft ist erforderlich, um diese Werkzeugbibliothek zu nutzen", + "es": "Se requiere una membresía para usar esta biblioteca de herramientas" } }, { "if": "membership=optional", "then": { "en": "A membership is possible but not required to use this tool library", - "de": "Eine Mitgliedschaft ist möglich , aber nicht erforderlich, um diese Werkzeugbibliothek zu nutzen" + "de": "Eine Mitgliedschaft ist möglich , aber nicht erforderlich, um diese Werkzeugbibliothek zu nutzen", + "es": "Una membresía es posible pero no se requiere para usar esta biblioteca de herramientas" } } ] @@ -107,12 +117,14 @@ { "question": { "en": "How much does a membership cost?", - "de": "Wie viel kostet eine Mitgliedschaft?" + "de": "Wie viel kostet eine Mitgliedschaft?", + "es": "¿Cuánto cuesta una membresía?" }, "id": "membership_charge", "questionHint": { "en": "There might be many formulas. In case of doubt, pick the most common one", - "de": "Es gibt möglicherweise viele Modelle. Im Zweifelsfall wähle das häufigste" + "de": "Es gibt möglicherweise viele Modelle. Im Zweifelsfall wähle das häufigste", + "es": "Puede haber muchas fórmulas. En caso de duda, elige la más común" }, "freeform": { "key": "charge:membership", @@ -121,13 +133,15 @@ "condition": "membership=required", "render": { "en": "A membership costs {charge:membership}", - "de": "Eine Mitgliedschaft kostet {charge:membership}" + "de": "Eine Mitgliedschaft kostet {charge:membership}", + "es": "Una membresía cuesta {charge:membership}" } }, { "question": { "en": "Is a fee asked to borrow tools?", - "de": "Wird eine Gebühr erhoben, um Werkzeuge auszuleihen?" + "de": "Wird eine Gebühr erhoben, um Werkzeuge auszuleihen?", + "es": "¿Se cobra una tarifa por pedir herramientas prestadas?" }, "id": "fee", "mappings": [ @@ -140,7 +154,8 @@ }, "then": { "en": "Borrowing tools is free (if one has a membership)", - "de": "Werkzeuge ausleihen ist kostenlos (wenn man eine Mitgliedschaft hat)" + "de": "Werkzeuge ausleihen ist kostenlos (wenn man eine Mitgliedschaft hat)", + "es": "Pedir herramientas prestadas es gratuito (si se tiene una membresía)" }, "hideInAnswer": "membership!=required" }, @@ -148,7 +163,8 @@ "if": "fee=no", "then": { "en": "Borrowing tools is free", - "de": "Werkzeuge ausleihen ist kostenlos" + "de": "Werkzeuge ausleihen ist kostenlos", + "es": "Pedir herramientas prestadas es gratuito" }, "hideInAnswer": "membership=required" }, @@ -156,20 +172,23 @@ "if": "fee=yes", "then": { "en": "A fee is asked when borrowing tools", - "de": "Es wird eine Gebühr erhoben, wenn man Werkzeuge ausleiht" + "de": "Es wird eine Gebühr erhoben, wenn man Werkzeuge ausleiht", + "es": "Se cobra una tarifa al pedir herramientas prestadas" } }, { "if": "fee=donation", "then": { "en": "A donation can be given when borrowing tools", - "de": "Eine Spende kann gegeben werden, wenn man Werkzeuge ausleiht" + "de": "Eine Spende kann gegeben werden, wenn man Werkzeuge ausleiht", + "es": "Se puede hacer una donación al pedir herramientas prestadas" } } ], "questionHint": { "en": "If a membership is required, we assume that the membership is already paid for.", - "de": "Wenn eine Mitgliedschaft erforderlich ist, gehen wir davon aus, dass die Mitgliedschaft bereits bezahlt ist." + "de": "Wenn eine Mitgliedschaft erforderlich ist, gehen wir davon aus, dass die Mitgliedschaft bereits bezahlt ist.", + "es": "Si se requiere una membresía, asumimos que la membresía ya está pagada." } } ], diff --git a/assets/layers/tourism_accomodation/tourism_accomodation.json b/assets/layers/tourism_accomodation/tourism_accomodation.json index fea55196a..ebd966cb2 100644 --- a/assets/layers/tourism_accomodation/tourism_accomodation.json +++ b/assets/layers/tourism_accomodation/tourism_accomodation.json @@ -3,12 +3,14 @@ "name": { "en": "Tourism accomodation", "de": "Touristische Unterkunft", - "nl": "Accomodatie voor toeristen" + "nl": "Accomodatie voor toeristen", + "es": "Alojamientos turísticos" }, "description": { "en": "Various types of lodging facilities", "de": "Verschiedene Arten von Unterkünften", - "nl": "Verschillende soorten overnachtingsmogelijkheden voor toeristen" + "nl": "Verschillende soorten overnachtingsmogelijkheden voor toeristen", + "es": "Varios tipos de alojamientos" }, "minzoom": 12, "title": { @@ -22,7 +24,8 @@ "fr": "Hôtel {name}", "ca": "Hotel {name}", "cs": "Hotel {name}", - "pl": "Hotel {name}" + "pl": "Hotel {name}", + "es": "Hotel {name}" } }, { @@ -30,7 +33,8 @@ "then": { "en": "Hostel {name}", "de": "Hostel {name}", - "nl": "Herberg {name}" + "nl": "Herberg {name}", + "es": "Hostal {name}" } }, { @@ -38,41 +42,47 @@ "then": { "en": "B&B {name}", "de": "B&B {name}", - "nl": "B&B {name}" + "nl": "B&B {name}", + "es": "B&B {name}" } }, { "if": "tourism=guest_house", "then": { "en": "Guest house {name}", - "de": "Ferienhaus {name}" + "de": "Ferienhaus {name}", + "es": "Pensión {name}" } }, { "if": "tourism=motel", "then": { "en": "Motel {name}", - "de": "Motel {name}" + "de": "Motel {name}", + "es": "Motel {name}" } }, { "if": "tourism=apartment", "then": { "en": "Apartment {name}", - "de": "Ferienwohnung {name}" + "de": "Ferienwohnung {name}", + "es": "Apartamento {name}" } }, { "if": "tourism=chalet", "then": { "en": "Vacation home {name}", - "de": "Ferienhaus {name}" + "de": "Ferienhaus {name}", + "es": "Casa de vacaciones {name}" } } ], "render": { "en": "Tourist accomodation {name}", - "de": "Touristenunterkunft {name}" + "de": "Touristenunterkunft {name}", + "es": "Alojamiento turístico {name}" } }, "pointRendering": [ @@ -137,12 +147,14 @@ "ru": "гостиница", "fr": "un hôtel", "cs": "hotel", - "pl": "hotel" + "pl": "hotel", + "es": "un hotel" }, "description": { "en": "A hotel is an establishment that provides paid lodging, usually on a short-term basis. Rooms are not shared with strangers.", "de": "Ein Hotel ist eine Einrichtung, die eine bezahlte Unterkunft anbietet, in der Regel für einen kurzen Zeitraum. Die Zimmer werden nicht mit Fremden geteilt.", - "nl": "En hotel is een gebouw waar je tegen betaling kan overnachten voor een korte periode. Je krijgt je eigen kamer." + "nl": "En hotel is een gebouw waar je tegen betaling kan overnachten voor een korte periode. Je krijgt je eigen kamer.", + "es": "Un hotel es un establecimiento que proporciona alojamiento de pago, generalmente a corto plazo. Las habitaciones no se comparten con desconocidos." }, "tags": [ "tourism=hotel" @@ -155,12 +167,14 @@ "title": { "en": "a hostel", "de": "Ein Hostel", - "nl": "een herberg" + "nl": "een herberg", + "es": "un hostal" }, "description": { "en": "A hostel is a type of tourist accommodation where people can sleep in a room shared with strangers", "de": "Ein Hostel ist eine Art von Touristenherberge, in der man in einem Zimmer schlafen kann, das man mit Fremden teilt", - "nl": "Een herberg is een gebouw waar je enkele dagen kan blijven. Je deelt een kamer met onbekenden." + "nl": "Een herberg is een gebouw waar je enkele dagen kan blijven. Je deelt een kamer met onbekenden.", + "es": "Un hostal es un tipo de alojamiento turístico donde las personas pueden dormir en una habitación compartida con desconocidos" } }, { @@ -170,12 +184,14 @@ "title": { "en": "a vacation apartment", "de": "eine Ferienwohnung", - "nl": "een vakantie-appartement" + "nl": "een vakantie-appartement", + "es": "un apartamento de vacaciones" }, "description": { "en": "A furnished apartment or flat with cooking and bathroom facilities in a shared building that can be rented for vacations, typically without breakfast or reception desk", "de": "Ein möbliertes Appartement oder eine Wohnung mit Kochgelegenheit und Bad in einem Gemeinschaftsgebäude, das für Ferienzwecke gemietet werden kann, normalerweise ohne Frühstück oder Rezeption", - "nl": "Een bemeubeld apparement met kookgelegenheid en een badkamer in een groter gebouw. Het appartement kan gehuurd worden voor vakanties. Er is geen receptie of ontbijt voorzien." + "nl": "Een bemeubeld apparement met kookgelegenheid en een badkamer in een groter gebouw. Het appartement kan gehuurd worden voor vakanties. Er is geen receptie of ontbijt voorzien.", + "es": "Un apartamento o piso amueblado con cocina y baño en un edificio compartido que se puede alquilar para vacaciones, normalmente sin desayuno ni recepción" } }, { @@ -184,11 +200,13 @@ ], "title": { "en": "a vacation chalet", - "de": "ein Ferienchalet" + "de": "ein Ferienchalet", + "es": "un chalet de vacaciones" }, "description": { "en": "A holiday cottage or vacation home with cooking and bathroom facilities that can be rented for holiday vacations, typically without breakfast or reception desk", - "de": "Ein Ferienhaus oder eine Ferienwohnung mit Kochgelegenheit und Bad, das bzw. die für Ferienaufenthalte gemietet werden kann, in der Regel ohne Frühstück oder Rezeption" + "de": "Ein Ferienhaus oder eine Ferienwohnung mit Kochgelegenheit und Bad, das bzw. die für Ferienaufenthalte gemietet werden kann, in der Regel ohne Frühstück oder Rezeption", + "es": "Una casa de vacaciones o chalet con cocina y baño que se puede alquilar para vacaciones, normalmente sin desayuno ni recepción" } }, { @@ -198,11 +216,13 @@ "title": { "en": "a motel", "de": "ein Motel", - "nl": "een motel" + "nl": "een motel", + "es": "un motel" }, "description": { "en": "A motel is an establishment that provides paid lodging, usually on a short-term basis, with convenient parking for motor cars at or close to the room. They are typically cheaper then a hotel", - "de": "Ein Motel ist eine Einrichtung, die eine bezahlte Unterkunft anbietet, in der Regel für kurze Zeit, mit bequemen Parkplätzen für Kraftfahrzeuge am oder in der Nähe des Zimmers. Sie sind in der Regel billiger als ein Hotel" + "de": "Ein Motel ist eine Einrichtung, die eine bezahlte Unterkunft anbietet, in der Regel für kurze Zeit, mit bequemen Parkplätzen für Kraftfahrzeuge am oder in der Nähe des Zimmers. Sie sind in der Regel billiger als ein Hotel", + "es": "Un motel es un establecimiento que proporciona alojamiento de pago, generalmente a corto plazo, con estacionamiento conveniente para automóviles en o cerca de la habitación. Suelen ser más baratos que un hotel" } }, { @@ -212,11 +232,13 @@ ], "title": { "en": "a bed-and-breakfast", - "de": "eine Frühstückspension" + "de": "eine Frühstückspension", + "es": "un bed-and-breakfast" }, "description": { "en": "A bed-and-breakfast in a guesthouse is a small lodging establishment. These are often a few rooms within a private family home where the owners also accommodate the guests. There is no reception desk, nor is there staff at all times. In some cases, check-in happens remotely by sharing a code to get in.", - "de": "Ein Bed-and-Breakfast in einem Gästehaus ist ein kleiner Beherbergungsbetrieb. Oft handelt es sich um einige Zimmer in einem Privathaus, in dem die Eigentümer auch die Gäste beherbergen. Es gibt keine Rezeption und es ist auch nicht ständig Personal anwesend. In einigen Fällen erfolgt das Einchecken aus der Ferne, indem ein Zugangscode mitgeteilt wird." + "de": "Ein Bed-and-Breakfast in einem Gästehaus ist ein kleiner Beherbergungsbetrieb. Oft handelt es sich um einige Zimmer in einem Privathaus, in dem die Eigentümer auch die Gäste beherbergen. Es gibt keine Rezeption und es ist auch nicht ständig Personal anwesend. In einigen Fällen erfolgt das Einchecken aus der Ferne, indem ein Zugangscode mitgeteilt wird.", + "es": "Un bed-and-breakfast en una pensión es un pequeño establecimiento de alojamiento. A menudo son unas pocas habitaciones dentro de una casa familiar privada donde los propietarios también alojan a los huéspedes. No hay recepción ni personal en todo momento. En algunos casos, el check-in se realiza de forma remota compartiendo un código para entrar." } }, { @@ -225,7 +247,8 @@ ], "title": { "en": "a small-scale lodging facility, typically operated by the owner", - "de": "eine kleine Beherbergungseinrichtung, die in der Regel vom Eigentümer betrieben wird" + "de": "eine kleine Beherbergungseinrichtung, die in der Regel vom Eigentümer betrieben wird", + "es": "un alojamiento a pequeña escala, normalmente operado por el propietario" } }, { @@ -234,7 +257,8 @@ ], "title": { "en": "a camp site or camp ground", - "de": "een kempeerterrein" + "de": "een kempeerterrein", + "es": "un camping o área de acampada" } } ], @@ -246,12 +270,14 @@ "question": { "en": "What is the name of this {title()}?", "de": "Wie lautet der Name von {title()}?", - "nl": "Wat is de naam van deze {title()}" + "nl": "Wat is de naam van deze {title()}", + "es": "¿Cuál es el nombre de este {title()}?" }, "render": { "en": "{name}", "de": "{name}", - "nl": "{name}" + "nl": "{name}", + "es": "{name}" }, "freeform": { "key": "name" @@ -272,7 +298,8 @@ "question": { "en": "All types", "de": "Alle Arten", - "nl": "Alle types" + "nl": "Alle types", + "es": "Todos los tipos" } }, { @@ -280,7 +307,8 @@ "question": { "en": "Hotels", "de": "Hotels", - "nl": "Hotels" + "nl": "Hotels", + "es": "Hoteles" } }, { @@ -288,7 +316,8 @@ "question": { "en": "Hostels", "de": "Hostels / Herbergen", - "nl": "Hostels" + "nl": "Hostels", + "es": "Hostales" } }, { @@ -296,7 +325,8 @@ "question": { "en": "Guest houses and Bed&Breakfasts", "de": "Gasthäuser und Bed & Breakfasts", - "nl": "Gastenkamers en bed-en-breakfasts" + "nl": "Gastenkamers en bed-en-breakfasts", + "es": "Pensiones y Bed&Breakfast" } }, { @@ -304,7 +334,8 @@ "question": { "en": "Motels", "de": "Motels", - "nl": "Motels" + "nl": "Motels", + "es": "Moteles" } }, { @@ -312,7 +343,8 @@ "question": { "en": "Vacation home", "de": "Ferienhaus", - "nl": "Vakantiehuisje" + "nl": "Vakantiehuisje", + "es": "Casa de vacaciones" } }, { @@ -320,7 +352,8 @@ "question": { "en": "Vacation apartment", "de": "Ferienwohnung", - "nl": "Vakantie-appartement" + "nl": "Vakantie-appartement", + "es": "Apartamento de vacaciones" } } ] diff --git a/assets/layers/trail/trail.json b/assets/layers/trail/trail.json index 9c7c83bc4..9fd92d270 100644 --- a/assets/layers/trail/trail.json +++ b/assets/layers/trail/trail.json @@ -9,13 +9,15 @@ "ca": "Camins", "da": "Stier", "cs": "Stezky", - "pl": "Ścieżki" + "pl": "Ścieżki", + "es": "Senderos" }, "description": { "en": "Waymarked trails", "nl": "Aangeduide wandeltochten", "de": "Markierte Wanderwege", - "ca": "Rutes marcades" + "ca": "Rutes marcades", + "es": "Senderos señalizados" }, "source": { "osmTags": { @@ -42,7 +44,8 @@ "ca": "Camí", "da": "Sti", "cs": "Stezka", - "pl": "Ścieżka" + "pl": "Ścieżka", + "es": "Sendero" }, "mappings": [ { @@ -103,7 +106,8 @@ "fr": "Le sentier fait {_length:km} kilomètres de long", "da": "Stien er {_length:km} kilometer lang", "ca": "El sender té {_length:km} quilòmetres", - "cs": "Stezka je dlouhá {_length:km} kilometrů" + "cs": "Stezka je dlouhá {_length:km} kilometrů", + "es": "El sendero tiene {_length:km} kilómetros de largo" } }, { @@ -111,13 +115,15 @@ "en": "What is the name of this trail?", "nl": "Wat is de naam van deze wandeling?", "de": "Wie heißt dieser Weg?", - "ca": "Quin és el nom d'aquest sender?" + "ca": "Quin és el nom d'aquest sender?", + "es": "¿Cuál es el nombre de este sendero?" }, "render": { "en": "This trail is called {name}", "nl": "Deze wandeling heet {name}", "de": "Dieser Weg heißt {name}", - "ca": "Aquest sender s'anomena {name}" + "ca": "Aquest sender s'anomena {name}", + "es": "Este sendero se llama {name}" }, "freeform": { "key": "name" @@ -128,12 +134,14 @@ "render": { "en": "This trail is maintained by {operator}", "nl": "Beheer door {operator}", - "de": "Dieser Weg wird von {operator} gepflegt" + "de": "Dieser Weg wird von {operator} gepflegt", + "es": "Este sendero es mantenido por {operator}" }, "question": { "en": "Who maintains this trail?", "nl": "Wie beheert deze wandeltocht?", - "de": "Wer pflegt diesen Weg?" + "de": "Wer pflegt diesen Weg?", + "es": "¿Quién mantiene este sendero?" }, "freeform": { "key": "operator" @@ -149,7 +157,8 @@ "en": "This trail is maintained by Natuurpunt", "nl": "Dit gebied wordt beheerd door Natuurpunt", "de": "Dieser Weg wird von Natuurpunt gepflegt", - "ca": "Aquest sender és mantingut per Natuurpunt" + "ca": "Aquest sender és mantingut per Natuurpunt", + "es": "Este sendero es mantenido por Natuurpunt" }, "icon": { "path": "./assets/themes/buurtnatuur/Natuurpunt.jpg", @@ -165,7 +174,8 @@ "then": { "en": "This trail is maintained by {operator}", "nl": "Dit gebied wordt beheerd door {operator}", - "de": "Dieser Weg wird von {operator} gepflegt" + "de": "Dieser Weg wird von {operator} gepflegt", + "es": "Este sendero es mantenido por {operator}" }, "hideInAnswer": true, "icon": { @@ -181,13 +191,15 @@ "en": "What is the reference colour of this trail?", "nl": "Welke kleur heeft deze wandeling?", "de": "Was ist die Referenzfarbe dieses Weges?", - "ca": "Quin és el color de referència d'aquest sender?" + "ca": "Quin és el color de referència d'aquest sender?", + "es": "¿Cuál es el color de referencia de este sendero?" }, "render": { "en": "The reference colour is {colour}", "nl": "Deze wandeling heeft kleur {colour}", "de": "Die Referenzfarbe ist {colour}", - "ca": "El color de referència és {colour}" + "ca": "El color de referència és {colour}", + "es": "El color de referencia es {colour}" }, "freeform": { "key": "colour", @@ -203,7 +215,8 @@ "fr": "Sentier bleu", "da": "Blå sti", "ca": "Ruta blava", - "cs": "Modrá stezka" + "cs": "Modrá stezka", + "es": "Sendero azul" } }, { @@ -215,7 +228,8 @@ "fr": "Sentier rouge", "da": "Rød sti", "ca": "Ruta vermella", - "cs": "Červená stezka" + "cs": "Červená stezka", + "es": "Sendero rojo" } }, { @@ -227,7 +241,8 @@ "fr": "Sentier vert", "da": "Grøn sti", "ca": "Ruta verda", - "cs": "Zelená stezka" + "cs": "Zelená stezka", + "es": "Sendero verde" } }, { @@ -239,7 +254,8 @@ "fr": "Sentier jaune", "da": "Gul sti", "ca": "Ruta groga", - "cs": "Žlutá stezka" + "cs": "Žlutá stezka", + "es": "Sendero amarillo" } } ], @@ -249,14 +265,16 @@ "question": { "en": "Is this trail wheelchair accessible?", "nl": "Is deze wandeling toegankelijk met de rolstoel?", - "de": "Ist dieser Weg rollstuhlgerecht?" + "de": "Ist dieser Weg rollstuhlgerecht?", + "es": "¿Es este sendero accesible para sillas de ruedas?" }, "mappings": [ { "then": { "en": "This trail is wheelchair-accessible", "nl": "deze wandeltocht is toegankelijk met de rolstoel", - "de": "Dieser Weg ist rollstuhlgerecht" + "de": "Dieser Weg ist rollstuhlgerecht", + "es": "Este sendero es accesible para sillas de ruedas" }, "if": "wheelchair=yes" }, @@ -264,7 +282,8 @@ "then": { "en": "This trail is not wheelchair accessible", "nl": "deze wandeltocht is niet toegankelijk met de rolstoel", - "de": "Dieser Weg ist nicht rollstuhlgerecht" + "de": "Dieser Weg ist nicht rollstuhlgerecht", + "es": "Este sendero no es accesible para sillas de ruedas" }, "if": "wheelchair=no" } @@ -275,14 +294,16 @@ "question": { "en": "Is this trail accessible with a pushchair?", "nl": "Is deze wandeltocht toegankelijk met de buggy?", - "de": "Ist dieser Weg mit einem Kinderwagen zugänglich?" + "de": "Ist dieser Weg mit einem Kinderwagen zugänglich?", + "es": "¿Es este sendero accesible con una silla de paseo?" }, "mappings": [ { "then": { "en": "This trail is accessible with a pushchair", "nl": "deze wandeltocht is toegankelijk met de buggy", - "de": "Dieser Weg ist mit einem Kinderwagen zugänglich" + "de": "Dieser Weg ist mit einem Kinderwagen zugänglich", + "es": "Este sendero es accesible con una silla de paseo" }, "if": "pushchair=yes" }, @@ -290,7 +311,8 @@ "then": { "en": "This trail is not accessible with a pushchair", "nl": "deze wandeltocht is niet toegankelijk met de buggy", - "de": "Dieser Weg ist nicht mit einem Kinderwagen zugänglich" + "de": "Dieser Weg ist nicht mit einem Kinderwagen zugänglich", + "es": "Este sendero no es accesible con una silla de paseo" }, "if": "pushchair=no" } diff --git a/assets/layers/transit_routes/transit_routes.json b/assets/layers/transit_routes/transit_routes.json index 963fd131e..56b26146d 100644 --- a/assets/layers/transit_routes/transit_routes.json +++ b/assets/layers/transit_routes/transit_routes.json @@ -6,7 +6,8 @@ "nl": "Buslijnen", "da": "Buslinjer", "ca": "Línies de bus", - "cs": "Autobusové linky" + "cs": "Autobusové linky", + "es": "Líneas de autobús" }, "description": { "en": "Layer showing bus lines", @@ -14,7 +15,8 @@ "nl": "Laag met buslijnen", "da": "Lag, der viser buslinjer", "ca": "Capa que mostra les línies d'autobús", - "cs": "Vrstva zobrazující autobusové linky" + "cs": "Vrstva zobrazující autobusové linky", + "es": "Capa que muestra las líneas de autobús" }, "source": { "osmTags": { @@ -35,7 +37,8 @@ "nl": "Buslijn", "da": "Buslinje", "ca": "Línia de bus", - "cs": "Autobusová linka" + "cs": "Autobusová linka", + "es": "Línea de autobús" }, "mappings": [ { @@ -46,7 +49,8 @@ "da": "{name}", "nl": "{name}", "ca": "{name}", - "cs": "{name}" + "cs": "{name}", + "es": "{name}" } } ] @@ -90,7 +94,8 @@ "en": "What is the name for this bus line? (i.e. Bus XX: From => Via => To)", "de": "Wie lautet der Name der Buslinie? (z.B. Bus XX: Von => Über => Nach)", "nl": "Wat is de naam van deze buslijn (bv. Bus XX: Van => Via => Naar)", - "cs": "Jak se jmenuje tato autobusová linka? (tj. Autobus XX: Od => Přes => Do)" + "cs": "Jak se jmenuje tato autobusová linka? (tj. Autobus XX: Od => Přes => Do)", + "es": "¿Cuál es el nombre de esta línea de autobús? (es decir, Autobús XX: Desde => Vía => Hasta)" } }, { @@ -107,7 +112,8 @@ "da": "Denne buslinje starter kl. {from}", "fr": "Cette ligne de bus commence à {from}", "ca": "Aquesta línia d'autobús comença a {from}", - "cs": "Tato autobusová linka začíná v {from}" + "cs": "Tato autobusová linka začíná v {from}", + "es": "Esta línea de autobús comienza en {from}" }, "question": { "en": "What is the starting point for this bus line?", @@ -115,7 +121,8 @@ "nl": "Wat is het beginpunt van deze buslijn?", "da": "Hvad er udgangspunktet for denne buslinje?", "ca": "Quin és el punt inicial d'aquesta línea d'autobús?", - "cs": "Jaký je výchozí bod této autobusové linky?" + "cs": "Jaký je výchozí bod této autobusové linky?", + "es": "¿Cuál es el punto de partida de esta línea de autobús?" } }, { @@ -132,13 +139,16 @@ "da": "Denne buslinje går via {via}", "fr": "Cette ligne de bus passe par {via}", "ca": "Aquesta línia d'autobús passa per {via}", - "cs": "Tato autobusová linka jede přes {via}" + "cs": "Tato autobusová linka jede přes {via}", + "es": "Esta línea de autobús pasa por {via}" }, "question": { "en": "What is the via point for this bus line?", "de": "Über welchen Zwischenhalt fährt die Buslinie?", "nl": "Via welk punt gaat deze buslijn?", - "cs": "Jaký je průjezdní bod této autobusové linky?" + "cs": "Jaký je průjezdní bod této autobusové linky?", + "ru": "Где находится конечный пункт этого автобусного маршрута?", + "es": "¿Cuál es el punto intermedio de esta línea de autobús?" } }, { @@ -155,7 +165,8 @@ "da": "Denne buslinje slutter ved {to}", "fr": "Cette ligne de bus termine à {to}", "ca": "Aquesta línia d'autobús acaba a {to}", - "cs": "Tato autobusová linka končí v {to}" + "cs": "Tato autobusová linka končí v {to}", + "es": "Esta línea de autobús termina en {to}" }, "question": { "en": "What is the ending point for this bus line?", @@ -163,7 +174,8 @@ "nl": "Wat is het eindpunt van deze buslijn?", "da": "Hvad er endestationen for denne buslinje?", "ca": "Quin és el punt final d'aquesta línea d'autobús?", - "cs": "Jaký je konečný bod této autobusové linky?" + "cs": "Jaký je konečný bod této autobusové linky?", + "es": "¿Cuál es el punto final de esta línea de autobús?" } }, { @@ -178,7 +190,8 @@ "nl": "Deze buslijn heeft de kleur {colour}", "da": "Denne buslinje har farven {colour}", "ca": "Aquesta línea d'autobús té el color {colour}", - "cs": "Tato autobusová linka má barvu {colour}" + "cs": "Tato autobusová linka má barvu {colour}", + "es": "Esta línea de autobús tiene el color {colour}" }, "question": { "en": "What is the colour for this bus line?", @@ -186,7 +199,8 @@ "nl": "Wat is de kleur van deze buslijn?", "da": "Hvad er farven på denne buslinje?", "ca": "Quin és el color d'aquest línia d'autobús?", - "cs": "Jakou barvu má tato autobusová linka?" + "cs": "Jakou barvu má tato autobusová linka?", + "es": "¿Cuál es el color de esta línea de autobús?" } }, { @@ -201,7 +215,9 @@ "nl": "Deze buslijn is onderdeel van het {network} netwerk", "ca": "Aquesta línea d'autobús és part de la xarxa {network}", "fr": "Cette ligne de bus fait partie du réseau {network}", - "cs": "Tato autobusová linka je součástí sítě {network}" + "cs": "Tato autobusová linka je součástí sítě {network}", + "es": "Esta línea de autobús es parte de la red {network}", + "uk": "Ця автобусна лінія є частиною {network} мережі" }, "question": { "en": "What network does this bus line belong to?", @@ -209,7 +225,8 @@ "nl": "Bij welk netwerk hoort deze buslijn?", "da": "Hvilket netværk tilhører denne buslinje?", "ca": "A quina xarxa pertany aquesta línea d'autobús?", - "cs": "Do jaké sítě tato autobusová linka patří?" + "cs": "Do jaké sítě tato autobusová linka patří?", + "es": "¿A qué red pertenece esta línea de autobús?" } }, { @@ -225,7 +242,8 @@ "da": "Denne buslinje drives af {operator}", "ca": "{operator} opera aquesta línea d'autobús", "fr": "Cette ligne de bus est gérée par {operator}", - "cs": "Tuto autobusovou linku provozuje {operator}" + "cs": "Tuto autobusovou linku provozuje {operator}", + "es": "Esta línea de autobús es operada por {operator}" }, "question": { "en": "What company operates this bus line?", @@ -233,7 +251,8 @@ "nl": "Welk bedrijf exploiteert deze buslijn?", "da": "Hvilket selskab driver denne buslinje?", "ca": "Quina companyia opera aquesta línia d'autobús?", - "cs": "Jaká společnost provozuje tuto autobusovou linku?" + "cs": "Jaká společnost provozuje tuto autobusovou linku?", + "es": "¿Qué compañía opera esta línea de autobús?" } } ], diff --git a/assets/layers/transit_stops/transit_stops.json b/assets/layers/transit_stops/transit_stops.json index 3ab512ab9..013bf88d9 100644 --- a/assets/layers/transit_stops/transit_stops.json +++ b/assets/layers/transit_stops/transit_stops.json @@ -6,14 +6,16 @@ "da": "Transitstationer", "fr": "Arrêts de transport en commun", "ca": "Parades de transport públic", - "cs": "Tranzitní zastávky" + "cs": "Tranzitní zastávky", + "es": "Paradas de transporte" }, "description": { "en": "Layer showing different types of transit stops.", "de": "Ebene mit verschiedenen Arten von Haltestellen.", "da": "Lag, der viser forskellige typer transitstop.", "ca": "Capa que mostra diferents tipus de parades de transport públic.", - "cs": "Vrstva zobrazující různé typy zastávek veřejné dopravy." + "cs": "Vrstva zobrazující různé typy zastávek veřejné dopravy.", + "es": "Capa que muestra diferentes tipos de paradas de transporte." }, "source": { "osmTags": { @@ -30,7 +32,8 @@ "da": "Transit Stop", "nl": "Bushalte", "ca": "Parada de transport públic", - "cs": "Tranzitní zastávka" + "cs": "Tranzitní zastávka", + "es": "Parada de transporte" }, "mappings": [ { @@ -41,7 +44,8 @@ "da": "Stop {name}", "nl": "Halte {name}", "ca": "Parada {name}", - "cs": "Zastávka {name}" + "cs": "Zastávka {name}", + "es": "Parada {name}" } } ] @@ -74,7 +78,8 @@ "nl": "Deze halte heet {name}", "ca": "Aquesta parada es diu {name}", "fr": "Cet arrêt est nommé {name}", - "cs": "Tato zastávka se jmenuje {name}" + "cs": "Tato zastávka se jmenuje {name}", + "es": "Esta parada se llama {name}" }, "freeform": { "key": "name", @@ -88,7 +93,8 @@ "da": "Navn på stoppestedet", "nl": "Naam van de halte", "ca": "Nom de la parada", - "cs": "Název zastávky" + "cs": "Název zastávky", + "es": "Nombre de la parada" } }, "mappings": [ @@ -105,7 +111,8 @@ "da": "Dette stop har intet navn", "nl": "Deze halte heeft geen naam", "ca": "Aquesta parada no té nom", - "cs": "Tato zastávka nemá jméno" + "cs": "Tato zastávka nemá jméno", + "es": "Esta parada no tiene nombre" } } ], @@ -115,7 +122,8 @@ "da": "Hvad er navnet på dette stop?", "nl": "Wat is de naam van deze halte?", "ca": "Quin és el nom d'aquesta parada?", - "cs": "Jak se tato zastávka jmenuje?" + "cs": "Jak se tato zastávka jmenuje?", + "es": "¿Cuál es el nombre de esta parada?" } }, "images", @@ -131,7 +139,8 @@ "nl": "Deze halte heeft een schuilplaats", "ca": "Aquesta parada té una coberta", "fr": "Cet arrêt a un abri", - "cs": "Tato zastávka má přístřešek" + "cs": "Tato zastávka má přístřešek", + "es": "Esta parada tiene un refugio" } }, { @@ -143,7 +152,8 @@ "nl": "Deze halte heeft geen schuilplaats", "ca": "Aquesta parada no té una coberta", "fr": "Cet arrêt n'a pas d'abri", - "cs": "Tato zastávka nemá přístřešek" + "cs": "Tato zastávka nemá přístřešek", + "es": "Esta parada no tiene un refugio" } }, { @@ -153,7 +163,8 @@ "de": "Die Haltestelle hat einen Unterstand, der separat kariert ist", "nl": "Deze halte heeft een schuilplaats, die apart op de kaart staat", "ca": "Aquesta parada té un refugi que està mapejat separadament", - "cs": "Tato zastávka má přístřešek, který je samostatně zmapován" + "cs": "Tato zastávka má přístřešek, který je samostatně zmapován", + "es": "Esta parada tiene un refugio, que está mapeado por separado" }, "hideInAnswer": true } @@ -165,7 +176,8 @@ "nl": "Heeft deze halte een schuilplaats?", "ca": "Aquesta parada té una coberta?", "fr": "Cet arrêt a-t-il un abri ?", - "cs": "Má tato zastávka přístřešek?" + "cs": "Má tato zastávka přístřešek?", + "es": "¿Tiene esta parada un refugio?" } }, { @@ -180,7 +192,8 @@ "nl": "Deze halte heeft een zitbank", "ca": "Aquesta parada té un banc", "fr": "Cet arrêt a un banc", - "cs": "Tato zastávka má lavičku" + "cs": "Tato zastávka má lavičku", + "es": "Esta parada tiene un banco" } }, { @@ -192,7 +205,8 @@ "nl": "Deze halte heeft geen zitbank", "ca": "Aquesta parada no té un banc", "fr": "Cet arrêt n'a pas de banc", - "cs": "Tato zastávka nemá lavičku" + "cs": "Tato zastávka nemá lavičku", + "es": "Esta parada no tiene un banco" } }, { @@ -203,7 +217,8 @@ "nl": "Deze halte heeft een zitbank, die los aangegeven is op de kaart", "fr": "Cet arrêt a un banc, cartographié séparément", "ca": "Aquesta parada té un banc que està mapejat separadament", - "cs": "Tato zastávka má lavičku, která je samostatně zmapována" + "cs": "Tato zastávka má lavičku, která je samostatně zmapována", + "es": "Esta parada tiene un banco, que está mapeado por separado" }, "hideInAnswer": true } @@ -215,7 +230,8 @@ "nl": "Heeft deze halte een zitbank?", "ca": "Aquesta parada té un banc?", "fr": "Est-ce que cet arrêt a un banc ?", - "cs": "Má tato zastávka lavičku?" + "cs": "Má tato zastávka lavičku?", + "es": "¿Tiene esta parada un banco?" } }, { @@ -230,7 +246,8 @@ "nl": "Deze halte heeft een vuilnisbak", "ca": "Aquesta parada té una paperera", "fr": "Cet arrêt a un poubelle", - "cs": "Tato zastávka má odpadkový koš" + "cs": "Tato zastávka má odpadkový koš", + "es": "Esta parada tiene una papelera" } }, { @@ -242,7 +259,8 @@ "nl": "Deze halte heeft geen vuilnisbak", "ca": "Aquesta parada no té paperera", "fr": "Cet arrêt n'a pas de poubelle", - "cs": "Tato zastávka nemá koš" + "cs": "Tato zastávka nemá koš", + "es": "Esta parada no tiene una papelera" } }, { @@ -252,7 +270,8 @@ "de": "Die Haltestelle hat einen Mülleimer, der separat kartiert ist", "nl": "Deze heeft een vuilnisbak, die los op de kaart staat", "ca": "Aquesta parada té una paperera que està mapejada separadament", - "cs": "Tato zastávka má koš, který je mapován samostatně" + "cs": "Tato zastávka má koš, který je mapován samostatně", + "es": "Esta parada tiene una papelera, que está mapeada por separado" }, "hideInAnswer": true } @@ -263,7 +282,8 @@ "da": "Har dette stop en skraldespand?", "nl": "Heeft deze halte een vuilnisbak?", "ca": "Aquesta parada té una paperera?", - "cs": "Má tato zastávka koš?" + "cs": "Má tato zastávka koš?", + "es": "¿Tiene esta parada una papelera?" } }, "wheelchair-access", @@ -278,7 +298,8 @@ "ca": "Aquesta parada té una superfície podotàctil", "nl": "Deze halte heeft een geleidelijn", "fr": "Cet arrêt a une surface podotactile", - "cs": "Tato zastávka má hmatovou dlažbu" + "cs": "Tato zastávka má hmatovou dlažbu", + "es": "Esta parada tiene pavimento táctil" } }, { @@ -289,7 +310,8 @@ "ca": "Aquesta parada no té superfície podotàctil", "nl": "Deze halte heeft geen geleidelijn", "fr": "Cet arrêt n'a pas de surface podotactile", - "cs": "Tato zastávka nemá hmatovou dlažbu" + "cs": "Tato zastávka nemá hmatovou dlažbu", + "es": "Esta parada no tiene pavimento táctil" } } ], @@ -299,7 +321,8 @@ "ca": "Aquesta parada té una superfície podotàctil?", "nl": "Heeft deze halte een geleidelijn?", "fr": "Cet arrêt a-t-il une surface podotactile ?", - "cs": "Má tato zastávka hmatovou dlažbu?" + "cs": "Má tato zastávka hmatovou dlažbu?", + "es": "¿Tiene esta parada pavimento táctil?" } }, { @@ -313,7 +336,8 @@ "nl": "Deze halte is verlicht", "ca": "Aquesta parada té il·luminació", "fr": "Cet arrêt est éclairé", - "cs": "Tato zastávka je osvětlena" + "cs": "Tato zastávka je osvětlena", + "es": "Esta parada está iluminada" } }, { @@ -325,7 +349,8 @@ "nl": "Deze halte is niet verlicht", "ca": "Aquesta parada no té il·luminació", "fr": "Cet arrêt n'est pas éclairé", - "cs": "Tato zastávka není osvětlena" + "cs": "Tato zastávka není osvětlena", + "es": "Esta parada no está iluminada" } } ], @@ -335,7 +360,8 @@ "nl": "Is deze halte verlicht?", "ca": "Aquesta parada té il·luminació?", "fr": "Cet arrêt est-il éclairé ?", - "cs": "Je tato zastávka osvětlena?" + "cs": "Je tato zastávka osvětlena?", + "es": "¿Está iluminada esta parada?" } }, { @@ -348,7 +374,8 @@ "de": "Die Haltestelle hat einen Fahrplan, der nicht näher definiert ist", "da": "Dette stoppested har en afgangstavle af ukendt type", "ca": "Aquesta parada té un tauler de sortides de tipus desconegut", - "cs": "Tato zastávka má odjezdovou tabuli neznámého typu" + "cs": "Tato zastávka má odjezdovou tabuli neznámého typu", + "es": "Esta parada tiene un panel de salidas de tipo desconocido" }, "hideInAnswer": true }, @@ -360,7 +387,8 @@ "da": "Dette stop har en tavle med oplysninger om afgang i realtid", "fr": "Cet arrêt a un panneau indiquant les départs en temps réel", "ca": "Aquesta parada té un tauló amb els horaris en temps real", - "cs": "Tato zastávka má tabuli zobrazující informace o odjezdu v reálném čase" + "cs": "Tato zastávka má tabuli zobrazující informace o odjezdu v reálném čase", + "es": "Esta parada tiene un panel que muestra información de salida en tiempo real" } }, { @@ -370,7 +398,8 @@ "de": "Die Haltestelle hat einen Fahrplan, der Abfahrtszeiten in Echtzeit anzeigt", "da": "Dette stop har en tavle med oplysninger om afgang i realtid", "ca": "Aquesta parada té un tauló amb els horaris en temps real", - "cs": "Tato zastávka má tabuli zobrazující informace o odjezdu v reálném čase" + "cs": "Tato zastávka má tabuli zobrazující informace o odjezdu v reálném čase", + "es": "Esta parada tiene un panel que muestra información de salida en tiempo real" }, "hideInAnswer": true }, @@ -381,7 +410,8 @@ "de": "Die Haltestelle hat einen Fahrplan, der die regulären Abfahrtszeiten anzeigt", "da": "Dette stop har en køreplan, der viser regelmæssige afgange", "ca": "Aquesta parada té un horari que mostra les sortides regulars", - "cs": "Tato zastávka má jízdní řád s pravidelnými odjezdy" + "cs": "Tato zastávka má jízdní řád s pravidelnými odjezdy", + "es": "Esta parada tiene un horario que muestra las salidas regulares" } }, { @@ -391,7 +421,8 @@ "de": "Die Haltestelle hat einen Fahrplan, der den Abstand zwischen Abfahrten anzeigt", "da": "Dette stop har en køreplan, der kun indeholder intervallet mellem afgangene", "ca": "Aquesta parada té un horari que conté només l'interval entre sortides", - "cs": "Tato zastávka má jízdní řád obsahující pouze interval mezi odjezdy" + "cs": "Tato zastávka má jízdní řád obsahující pouze interval mezi odjezdy", + "es": "Esta parada tiene un horario que contiene solo el intervalo entre salidas" } }, { @@ -401,7 +432,8 @@ "de": "Die Haltestelle hat keinen Fahrplan", "da": "Dette stop har ikke en afgangstavle", "ca": "Aquesta parada no té un tauler de sortides", - "cs": "Tato zastávka nemá tabulku odjezdů" + "cs": "Tato zastávka nemá tabulku odjezdů", + "es": "Esta parada no tiene un panel de salidas" } } ] @@ -413,7 +445,8 @@ "da": "

{_contained_routes_count} ruter stopper ved dette stoppested

    {_contained_routes}
", "nl": "

{_contained_routes_count} lijnen stoppen bij deze halte

    {_contained_routes}
", "ca": "

{_contained_routes_count} rutes paren a aquesta parada

    {_contained_routes}
", - "cs": "Na této zastávce staví

{_contained_routes_count} tras

    {_contained_routes}
" + "cs": "Na této zastávce staví

{_contained_routes_count} tras

    {_contained_routes}
", + "es": "

{_contained_routes_count} rutas paran en esta parada

    {_contained_routes}
" }, "condition": "_contained_routes~*", "id": "contained_routes" @@ -435,7 +468,8 @@ "de": "Mit Unterstand", "fr": "Avec un abri", "ca": "Amb refugi", - "cs": "S přístřeškem" + "cs": "S přístřeškem", + "es": "Con refugio" } } ] @@ -455,7 +489,8 @@ "de": "Mit Sitzbank", "fr": "Avec un banc", "ca": "Amb un banc", - "cs": "S lavičkou" + "cs": "S lavičkou", + "es": "Con banco" } } ] @@ -475,7 +510,8 @@ "de": "Mit Mülleimer", "fr": "Avec un poubelle", "ca": "Amb paperera", - "cs": "S košem" + "cs": "S košem", + "es": "Con papelera" } } ] diff --git a/assets/layers/tree_node/tree_node.json b/assets/layers/tree_node/tree_node.json index 816f2c103..ab2815376 100644 --- a/assets/layers/tree_node/tree_node.json +++ b/assets/layers/tree_node/tree_node.json @@ -136,7 +136,7 @@ "fr": "une arbre feuillu", "ru": "Лиственное дерево", "de": "ein Laubbaum", - "es": "árbol de hoja ancha", + "es": "un árbol de hoja ancha", "da": "et løvtræ", "pt": "uma árvore de folhas largas", "ca": "un arbre de fulla ampla", @@ -148,7 +148,7 @@ "it": "Un albero di una specie con foglie larghe come la quercia o il pioppo.", "fr": "Un arbre d'une espèce avec de larges feuilles, comme le chêne ou le peuplier.", "de": "Ein Baum mit Blättern, z. B. Eiche oder Buche.", - "es": "Un árbol de hojas como el Roble o el Álamo.", + "es": "Un árbol de una especie con hojas, como roble o álamo.", "pt": "Uma árvore de uma espécie com folhas, como carvalho ou populus.", "ca": "Arbre d'una espècie amb fulles, com el roure o el pollancre.", "cs": "Strom s listy, například dub nebo topol." @@ -166,7 +166,7 @@ "ru": "Хвойное дерево", "fr": "une arbre résineux", "de": "ein Nadelbaum", - "es": "un árbol con hojas de aguja", + "es": "un árbol de hoja acicular", "da": "et nåletræ", "pt": "uma árvore com folhas de agulha", "ca": "un arbre amb fulles d'agulla", @@ -179,7 +179,7 @@ "ru": "Дерево с хвоей (иглами), например, сосна или ель.", "fr": "Une espèce d’arbre avec des épines comme le pin ou l’épicéa.", "de": "Ein Baum mit Nadeln, z. B. Kiefer oder Fichte.", - "es": "Un árbol de hojas agujas, como el Pino o el Abeto.", + "es": "Un árbol de una especie con agujas, como pino o abeto.", "da": "Et træ af en art med nåle, såsom fyr eller gran.", "ca": "Arbre d'una espècie amb agulles, com el pi o l'avet.", "cs": "Strom s jehlicemi, například borovice nebo smrk." @@ -211,7 +211,7 @@ "fr": "Si vous n'êtes pas sûr(e) de savoir s'il s'agit d'un arbre à feuilles larges ou à aiguilles.", "ru": "Если вы не уверены в том, лиственное это дерево или хвойное.", "de": "Wenn Sie nicht sicher sind, ob es sich um einen Laubbaum oder einen Nadelbaum handelt.", - "es": "Si no estás seguro de si es un árbol de hoja ancha o de hoja de aguja.", + "es": "Si no estás seguro de si es un árbol de hoja ancha o acicular.", "da": "Hvis du ikke er sikker på, om det er et løv- eller nåletræ.", "ca": "Si no esteu segur de si es tracta d'un arbre amb fulles amples o amb fulles d'agulles.", "cs": "Pokud si nejste jisti, zda se jedná o listnatý nebo jehličnatý strom." @@ -303,7 +303,7 @@ "de": "Dies wird in einer Höhe von 1,30 m gemessen", "fr": "La mesure est effectuée à 1.30m de hauteur", "nl": "Dit wordt 1.30m boven de grond gemeten", - "es": "Se mide a una altura de 1,30 m", + "es": "Esto se mide a una altura de 1.30 m", "ca": "Es mesura a una alçada d'1,30 m", "pt_BR": "Isso é medido a uma altura de 1,30m", "cs": "Měří se ve výšce 1,30 m", @@ -321,7 +321,7 @@ "pt_BR": "Qual a altura dessa árvore?", "ca": "Quina és l'alçada d'aquest arbre?", "cs": "Jaká je výška tohoto stromu?", - "es": "¿Qué altura tiene este árbol?" + "es": "¿Cuál es la altura de este árbol?" }, "freeform": { "key": "height", @@ -333,7 +333,7 @@ "de": "Dieser Baum ist {height} Meter hoch", "fr": "Cet arbre a une hauteur de {height} mètre(s)", "nl": "Deze boom is {height} meter hoog", - "es": "Este árbol tiene {height} metros de altura", + "es": "Este árbol mide {height} metros de alto", "pt": "Esta árvore tem {height} metros de altura", "pt_BR": "Esta árvore tem {height} metros de altura", "ca": "Aquest arbre té {height} metres d'altura", @@ -348,7 +348,7 @@ "it": "Quanto significativo è questo albero? Scegli la prima risposta che corrisponde.", "fr": "Quelle est l'importance de cet arbre ? Choisissez la première réponse qui s'applique.", "de": "Wie bedeutsam ist dieser Baum? Wählen Sie die erste Antwort, die zutrifft.", - "es": "¿Qué importancia tiene este árbol? Elige la primera respuesta que corresponda.", + "es": "¿Qué importancia tiene este árbol? Elige la primera respuesta que aplique.", "da": "Hvor vigtigt er dette træ? Vælg det første svar, der passer.", "pt": "Quão significativa é esta árvore? Escolha a primeira resposta que se aplica.", "ca": "Quina importància té aquest arbre? Trieu la primera resposta que correspongui.", @@ -367,7 +367,7 @@ "it": "È un albero notevole per le sue dimensioni o per la posizione prominente. È utile alla navigazione.", "fr": "L'arbre est remarquable en raison de sa taille ou de son emplacement proéminent. Il est utile pour la navigation.", "de": "Der Baum ist aufgrund seiner Größe oder seiner markanten Lage bedeutsam. Er ist nützlich zur Orientierung.", - "es": "El árbol es notable debido a su tamaño o ubicación prominente. Es útil para la navegación.", + "es": "El árbol es notable por su tamaño o ubicación prominente. Es útil para la navegación.", "da": "Træet er bemærkelsesværdigt på grund af sin størrelse eller sin fremtrædende placering. Det er nyttigt til navigation.", "pt": "A árvore é notável devido ao seu tamanho ou localização proeminente. É útil para navegação.", "ca": "L'arbre és notable per la seva mida o per la seva ubicació destacada. És útil per a la navegació.", @@ -386,7 +386,7 @@ "it": "L’albero è un monumento naturale, ad esempio perché specialmente antico o appartenente a specie importanti.", "fr": "Cet arbre est un monument naturel (p.ex. : âge, espèce, etc).", "de": "Der Baum ist ein Naturdenkmal, z. B. weil er besonders alt ist oder zu einer wertvollen Art gehört.", - "es": "El árbol es un monumento natural, por ejemplo, porque es especialmente antiguo, o de una especie valiosa.", + "es": "El árbol es un monumento natural, por ejemplo, porque es especialmente antiguo o de una especie valiosa.", "da": "Træet er et naturmonument, f.eks. fordi den er særlig gammel eller af en værdifuld art.", "pt": "A árvore é um monumento natural, por ex. porque é especialmente antigo ou de uma espécie valiosa.", "ca": "L'arbre és un monument natural, p. e. perquè és especialment antic o d'una espècie valuosa.", @@ -424,7 +424,7 @@ "it": "L’albero è in un parco o qualcosa di simile (cimitero, aree didattiche, etc.).", "fr": "Cet arbre est dans un parc ou une aire similaire (ex : cimetière, cour d’école, …).", "de": "Der Baum steht in einem Park oder ähnlichem (Friedhof, Schulgelände, ...).", - "es": "El árbol está en un parque o similar (cementerio, recinto escolar, ...).", + "es": "El árbol está en un parque o similar (cementerio, terrenos escolares, …).", "da": "Træet står i en park eller lignende (kirkegård, skoleområde, ...).", "pt": "A árvore está em um parque ou similar (cemitério, pátio da escola, …).", "ca": "L'arbre està en un parc o semblant (cementiri, recinte escolar, …).", @@ -442,7 +442,7 @@ "en": "The tree is in a residential garden.", "it": "L’albero è un giardino residenziale.", "fr": "Cet arbre est dans une jardin de résidence.", - "es": "El árbol está en un jardín de una vivienda.", + "es": "El árbol está en un jardín residencial.", "de": "Der Baum steht in einem Wohngarten.", "da": "Træet står i en villahave.", "ca": "L'arbre està en un jardí residencial.", @@ -518,7 +518,7 @@ "it": "Si tratta di un albero latifoglia o aghifoglia?", "fr": "Cet arbre est-il un feuillu ou un résineux ?", "de": "Ist dies ein Laub- oder Nadelbaum?", - "es": "¿Es un árbol de hoja ancha o de hoja aguja?", + "es": "¿Es este un árbol de hoja ancha o acicular?", "pt": "Esta é uma árvore de folhas largas ou acículas?", "ca": "És un arbre de fulla ampla o d'agulla?", "cs": "Jedná se o listnatý nebo jehličnatý strom?" @@ -537,7 +537,7 @@ "fr": "Feuillu", "de": "Laubbaum", "ca": "De fulla ampla", - "es": "Latifoliada", + "es": "De hoja ancha", "id": "Berdaun lebar", "da": "Bredbladet", "pt": "Folha larga", @@ -562,7 +562,7 @@ "fr": "Résineux", "de": "Nadelbaum", "ca": "Amb fulles d'agulla", - "es": "Hoja aguja", + "es": "De hoja acicular", "id": "Berdaun jarum", "cs": "Jehličnatý", "pl": "Iglaste" @@ -614,7 +614,7 @@ "ru": "Это дерево вечнозелёное или листопадное?", "fr": "L’arbre est-il à feuillage persistant ou caduc ?", "de": "Ist dies ein Nadelbaum oder ein Laubbaum?", - "es": "¿El árbol es perenne o caduco?", + "es": "¿Es este árbol perenne o caducifolio?", "da": "Er dette træ stedsegrønt eller løvfældende?", "pt": "Essa árvore é perene ou caducifólia?", "pt_BR": "Essa árvore é perene ou caducifólia?", @@ -635,7 +635,7 @@ "ru": "Листопадное: у дерева опадают листья в определённое время года.", "fr": "Caduc : l’arbre perd son feuillage une partie de l’année.", "de": "Laubabwerfend: Der Baum verliert für eine gewisse Zeit des Jahres seine Blätter.", - "es": "Caduco o Deciduo: el árbol pierde las hojas en un período del año.", + "es": "Caducifolio: el árbol pierde sus hojas durante algún tiempo del año.", "da": "Løvfældende: træet mister bladene i en periode af året.", "pt": "Caducifólia: a árvore perde as folhas em alguma época do ano.", "ca": "Caducifoli: l'arbre perd les fulles durant alguna època de l'any.", @@ -656,7 +656,7 @@ "ru": "Вечнозелёное.", "de": "immergrüner Baum.", "ca": "Perenne.", - "es": "Siempreverde.", + "es": "Perenne.", "da": "Stedsegrøn.", "pt": "Perene.", "cs": "Stálozelený." @@ -694,7 +694,7 @@ "fr": "L'arbre a-t-il un nom ?", "ru": "Есть ли у этого дерева название?", "de": "Hat der Baum einen Namen?", - "es": "¿Tiene nombre este árbol?", + "es": "¿Tiene el árbol un nombre?", "id": "Apakah pohon ini memiliki nama?", "da": "Har træet et navn?", "pt": "A árvore tem nome?", @@ -748,7 +748,7 @@ "it": "Quest’albero è registrato come patrimonio?", "fr": "Cet arbre est-il inscrit au patrimoine ?", "de": "Ist dieser Baum ein Naturdenkmal?", - "es": "¿Este árbol es patrimonio registrado?", + "es": "¿Está este árbol registrado como patrimonio?", "id": "Apakah pohon ini merupakan warisan yang terdaftar?", "da": "Er dette træ registreret som kulturarv?", "pt": "Esta árvore é patrimônio tombado?", @@ -793,7 +793,7 @@ "it": "Registrato come patrimonio da Direction du Patrimoine culturel di Bruxelles", "fr": "Enregistré comme patrimoine par la Direction du Patrimoine culturel Bruxelles", "de": "Als Denkmal registriert von der Direction du Patrimoine culturel Brüssel", - "es": "Registrado como patrimonio por la Dirección de Patrimonio Cultural de Bruselas", + "es": "Registrado como patrimonio por Direction du Patrimoine culturel Bruselas", "id": "Terdaftar sebagai warisan budaya oleh Direction du Patrimoine culturel Brussels", "da": "Registreret som kulturarv af Direction du Patrimoine culturel Bruxelles", "pt": "Registrado como patrimônio por Direction du Patrimoine culturel Brussels", @@ -855,7 +855,7 @@ "it": "Registrato come patrimonio da un’organizzazione differente", "fr": "Enregistré comme patrimoine par une autre organisation", "de": "Von einer anderen Organisation als Denkmal registriert", - "es": "Registrado como patrimonio por un organización diferente", + "es": "Registrado como patrimonio por una organización diferente", "id": "Terdaftar sebagai warisan oleh organisasi yang berbeda", "da": "Registreret som kulturarv af en anden organisation", "pt": "Registrado como patrimônio por uma organização diferente", @@ -882,7 +882,8 @@ "de": "\"\"/ Onroerend Erfgoed Kennung: {ref:OnroerendErfgoed}", "da": "\"\"/ Onroerend Erfgoed ID: {ref:OnroerendErfgoed}", "ca": "\"\"/Identifiació Onroerend Erfgoed: {ref:OnroerendErfgoed}", - "cs": "\"\"/ Onroerend Erfgoed ID: {ref:OnroerendErfgoed}" + "cs": "\"\"/ Onroerend Erfgoed ID: {ref:OnroerendErfgoed}", + "es": "\"\"/ ID de Onroerend Erfgoed: {ref:OnroerendErfgoed}" }, "question": { "nl": "Wat is het ID uitgegeven door Onroerend Erfgoed Vlaanderen?", @@ -890,7 +891,7 @@ "it": "Qual è l’ID rilasciato da Onroerend Erfgoed Flanders?", "fr": "Quel est son identifiant donné par Onroerend Erfgoed ?", "de": "Wie lautet die Kennung der Onroerend Erfgoed Flanders?", - "es": "¿Cuál es el número de identificación emitido por Onroerend Erfgoed Flandes?", + "es": "¿Cuál es el ID emitido por Onroerend Erfgoed Flandes?", "da": "Hvad er ID udstedt af Onroerend Erfgoed Flanders?", "pt": "Qual é o ID emitido por Onroerend Erfgoed Flanders?", "ca": "Quina és la identificació emesa per Onroerend Erfgoed Flanders?", diff --git a/assets/layers/trolley_bay/trolley_bay.json b/assets/layers/trolley_bay/trolley_bay.json index 0366ddcaf..667873960 100644 --- a/assets/layers/trolley_bay/trolley_bay.json +++ b/assets/layers/trolley_bay/trolley_bay.json @@ -2,11 +2,13 @@ "id": "trolley_bay", "name": { "en": "Trolley Bays", - "de": "Einkaufswagenbuchten" + "de": "Einkaufswagenbuchten", + "es": "Aparcaderos de carros" }, "description": { "en": "Find trolley bays for shopping trolleys.", - "de": "Finde Einkaufswagenbuchten für Einkaufswagen." + "de": "Finde Einkaufswagenbuchten für Einkaufswagen.", + "es": "Encuentra aparcaderos para carros de compra." }, "source": { "osmTags": "amenity=trolley_bay" @@ -14,7 +16,8 @@ "minzoom": 18, "title": { "en": "Trolley Bay", - "de": "Einkaufswagenbucht" + "de": "Einkaufswagenbucht", + "es": "Aparcadero de carros" }, "pointRendering": [ { @@ -33,14 +36,16 @@ { "title": { "en": "a trolley bay", - "de": "eine Einkaufswagenbucht" + "de": "eine Einkaufswagenbucht", + "es": "un aparcadero de carros" }, "tags": [ "amenity=trolley_bay" ], "description": { "en": "A trolley bay for parking shopping carts.", - "de": "Ein Platz zum Abstellen von Einkaufswagen." + "de": "Ein Platz zum Abstellen von Einkaufswagen.", + "es": "Un aparcadero para carros de compra." } } ], @@ -49,21 +54,24 @@ "id": "covered", "question": { "en": "Is this trolley bay covered?", - "de": "Ist dieser Einkaufswagenplatz überdacht?" + "de": "Ist dieser Einkaufswagenplatz überdacht?", + "es": "¿Está cubierto este aparcadero de carros?" }, "mappings": [ { "if": "covered=yes", "then": { "en": "This trolley bay is covered", - "de": "Dieser Einkaufswagenplatz ist überdacht" + "de": "Dieser Einkaufswagenplatz ist überdacht", + "es": "Este aparcadero de carros está cubierto" } }, { "if": "covered=no", "then": { "en": "This trolley bay is not covered", - "de": "Dieser Einkaufswagenplatz ist nicht überdacht" + "de": "Dieser Einkaufswagenplatz ist nicht überdacht", + "es": "Este aparcadero de carros no está cubierto" } } ] @@ -72,21 +80,24 @@ "id": "deposit", "question": { "en": "Is a deposit (e.g. a coin) required for the trolleys?", - "de": "Ist für die Einkaufswagen ein Pfand (z.B. eine Münze) erforderlich?" + "de": "Ist für die Einkaufswagen ein Pfand (z.B. eine Münze) erforderlich?", + "es": "¿Se requiere un depósito (ej. una moneda) para los carros?" }, "mappings": [ { "if": "trolley:deposit=yes", "then": { "en": "A deposit is required for the trolleys", - "de": "Für die Einkaufswagen ist ein Pfand zu hinterlegen" + "de": "Für die Einkaufswagen ist ein Pfand zu hinterlegen", + "es": "Se requiere un depósito para los carros" } }, { "if": "trolley:deposit=no", "then": { "en": "No deposit is required for the trolleys", - "de": "Für die Einkaufswagen ist kein Pfand erforderlich" + "de": "Für die Einkaufswagen ist kein Pfand erforderlich", + "es": "No se requiere un depósito para los carros" } } ] @@ -101,7 +112,8 @@ }, "question": { "en": "What coins are accepted for the deposit?", - "de": "Welche Münzen werden für die Pfandgebühr akzeptiert?" + "de": "Welche Münzen werden für die Pfandgebühr akzeptiert?", + "es": "¿Qué monedas se aceptan para el depósito?" }, "multiAnswer": true, "mappings": [ @@ -159,7 +171,8 @@ "id": "cart_types", "question": { "en": "What kind of special trolleys are available?", - "de": "Welche Art von speziellen Einkaufswagen gibt es?" + "de": "Welche Art von speziellen Einkaufswagen gibt es?", + "es": "¿Qué tipo de carros especiales hay disponibles?" }, "multiAnswer": true, "mappings": [ @@ -168,7 +181,8 @@ "ifnot": "trolley:magnifier=no", "then": { "en": "Trolleys with a magnifier are available", - "de": "Einkaufswagen mit Lupe sind erhältlich" + "de": "Einkaufswagen mit Lupe sind erhältlich", + "es": "Hay carros con lupa disponibles" } }, { @@ -176,7 +190,8 @@ "ifnot": "trolley:wheelchair=no", "then": { "en": "Trolleys for wheelchair users are available", - "de": "Einkaufswagen für Rollstuhlfahrer sind verfügbar" + "de": "Einkaufswagen für Rollstuhlfahrer sind verfügbar", + "es": "Hay carros para usuarios de sillas de ruedas disponibles" } }, { @@ -184,7 +199,8 @@ "ifnot": "trolley:children=no", "then": { "en": "Trolleys for children are available", - "de": "Einkaufswagen für Kinder sind verfügbar" + "de": "Einkaufswagen für Kinder sind verfügbar", + "es": "Hay carros para niños disponibles" } }, { @@ -192,7 +208,8 @@ "ifnot": "trolley:seats=no", "then": { "en": "Trolleys with seats for children are available", - "de": "Einkaufswagen mit Sitzen für Kinder sind verfügbar" + "de": "Einkaufswagen mit Sitzen für Kinder sind verfügbar", + "es": "Hay carros con asientos para niños disponibles" } }, { @@ -200,7 +217,8 @@ "ifnot": "trolley:flatbed=no", "then": { "en": "Trolleys with a flatbed are available", - "de": "Einkaufswagen mit Flachbett sind verfügbar" + "de": "Einkaufswagen mit Flachbett sind verfügbar", + "es": "Hay carros con plataforma disponibles" } }, { @@ -208,7 +226,8 @@ "ifnot": "trolley:vertical=no", "then": { "en": "Vertical trolleys for sheet-like goods are available", - "de": "Vertikale Einkaufswagen für plattenförmige Güter sind verfügbar" + "de": "Vertikale Einkaufswagen für plattenförmige Güter sind verfügbar", + "es": "Hay carros verticales para mercancías laminares disponibles" } } ] diff --git a/assets/layers/unit/unit.json b/assets/layers/unit/unit.json index 7a57fa913..f4a94f799 100644 --- a/assets/layers/unit/unit.json +++ b/assets/layers/unit/unit.json @@ -2,7 +2,8 @@ "id": "unit", "description": { "en": "Library layer with all common units. Units can _only_ be imported from this file.", - "de": "Bibliotheksebene mit allen gängigen Einrichtungen. Einrichtungen können _nur_ aus dieser Datei importiert werden." + "de": "Bibliotheksebene mit allen gängigen Einrichtungen. Einrichtungen können _nur_ aus dieser Datei importiert werden.", + "es": "Capa de biblioteca con todas las unidades comunes. Las unidades solo se pueden importar de este archivo." }, "source": "special:library", "pointRendering": null, @@ -31,7 +32,8 @@ "hu": "{quantity} megawatt", "ca": "{quantity} megavats", "da": "{quantity} Megawatt", - "cs": "{quantity} megawatty" + "cs": "{quantity} megawatty", + "es": "{quantity} megavatios" } }, { @@ -54,7 +56,8 @@ "hu": "{quantity} kilowatt", "ca": "{quantity} quilovats", "da": "{quantity} Kilowatt", - "cs": "{quantity} kilowatty" + "cs": "{quantity} kilowatty", + "es": "{quantity} kilovatios" } }, { @@ -76,7 +79,8 @@ "ca": "{quantity} vats", "da": "{quantity} Watt", "cs": "{quantity} watty", - "zh_Hant": "{quantity} 瓦" + "zh_Hant": "{quantity} 瓦", + "es": "{quantity} vatios" } }, { @@ -98,7 +102,8 @@ "ca": "{quantity} gigavats", "da": "{quantity} Gigawatt", "cs": "{quantity} gigawatty", - "zh_Hant": "{quantity} 千兆瓦" + "zh_Hant": "{quantity} 千兆瓦", + "es": "{quantity} gigavatios" } } ], @@ -118,7 +123,9 @@ "human": { "en": "{quantity} Volt", "nl": "{quantity} volt", - "de": "{quantity} Volt" + "de": "{quantity} Volt", + "hu": "{quantity} Volt", + "es": "{quantity} voltios" } } ], @@ -139,7 +146,9 @@ "en": "{quantity} A", "nl": "{quantity} A", "ca": "{quantity} A", - "de": "{quantity} A" + "de": "{quantity} A", + "hu": "{quantity} A", + "es": "{quantity} amperios" } } ], @@ -181,7 +190,9 @@ "fr": "un mètre", "nl": "één meter", "de": "ein Meter", - "ca": "un metre" + "ca": "un metre", + "hu": "egy méter", + "es": "un metro" } }, { @@ -201,13 +212,17 @@ "cs": "{quantity} centimetr", "pl": "{quantity} centymetr", "ru": "{quantity} сантиметры", - "pa_PK": " {quantity}سینٹیمیٹر" + "pa_PK": " {quantity}سینٹیمیٹر", + "hu": "{quantity} centiméter", + "es": "{quantity} centímetros" }, "humanSingular": { "en": "one centimeter", "nl": "één centimeter", "ca": "un centímetre", - "de": "ein Zentimeter" + "de": "ein Zentimeter", + "hu": "egy centiméter", + "es": "un centímetro" } }, { @@ -223,13 +238,17 @@ "ru": "{quantity} миллиметры", "ca": "{quantity} mil·límetres", "cs": "{quantity} milimetry", - "pa_PK": "{quantity} ملیمیٹر" + "pa_PK": "{quantity} ملیمیٹر", + "hu": "{quantity} milliméter", + "es": "{quantity} milímetros" }, "humanSingular": { "en": "one millimeter", "nl": "één millimeter", "de": "ein Millimeter", - "ca": "un mil·límetre" + "ca": "un mil·límetre", + "hu": "egy milliméter", + "es": "un milímetro" } }, { @@ -252,7 +271,8 @@ "eu": "{quantity} ·hanka", "pl": "{quantity} stopy", "nb_NO": "{quantity} fot", - "pa_PK": "{quantity} ؜ فوٹ" + "pa_PK": "{quantity} ؜ فوٹ", + "hu": "{quantity} láb" } } ] @@ -276,7 +296,8 @@ "de": "{quantity} Kilometer/Stunde", "cs": "{quantity} kilometry/hodinu", "pa_PK": "{quantity}ہر گھنٹہ وچ کیلومیٹر", - "fr": "{quantity} kilomètres/heure" + "fr": "{quantity} kilomètres/heure", + "hu": "{quantity} kilméter/óra" }, "humanShort": { "en": "{quantity} km/h", @@ -287,7 +308,8 @@ "cs": "{quantity} km/h", "pa_PK": "{quantity}ہر گھنٹے وچ کیلومیٹر", "ru": "{quantity} км/ч", - "fr": "{quantity} km/h" + "fr": "{quantity} km/h", + "hu": "{quantity} km/h" } }, { @@ -310,7 +332,8 @@ "de": "{quantity} Meilen/Stunde", "cs": "{quantity} míle/hodinu", "fr": "{quantity} miles/heure", - "pa_PK": "{quantity} ہر گھنٹہ وچ میل" + "pa_PK": "{quantity} ہر گھنٹہ وچ میل", + "hu": "{quantity} mérföld/óra" }, "humanShort": { "en": "{quantity} mph", @@ -320,7 +343,8 @@ "de": "{quantity} mph", "cs": "{quantity} mph", "pa_PK": "{quantity}ہر گھنٹہ وچ میل", - "fr": "{quantity} mph" + "fr": "{quantity} mph", + "hu": "{quantity} mf/h" } } ] @@ -344,14 +368,18 @@ "nl": "{quantity} minuten", "ca": "{quantity} minuts", "de": "{quantity} Minuten", - "fr": "{quantity} minutes" + "fr": "{quantity} minutes", + "hu": "{quantity} perc", + "es": "{quantity} minutos" }, "humanSingular": { "en": "one minute", "nl": "één minuut", "ca": "un minut", "de": "eine Minute", - "fr": "une minute" + "fr": "une minute", + "hu": "egy perc", + "es": "un minuto" } }, { @@ -371,14 +399,18 @@ "nl": "{quantity} uren", "ca": "{quantity} hores", "de": "{quantity} Stunden", - "fr": "{quantity} heures" + "fr": "{quantity} heures", + "hu": "{quantity} óra", + "es": "{quantity} horas" }, "humanSingular": { "en": "one hour", "nl": "één uur", "ca": "una hora", "de": "eine Stunde", - "fr": "une heure" + "fr": "une heure", + "hu": "egy óra", + "es": "una hora" } }, { @@ -395,13 +427,17 @@ "nl": "{quantity} day", "ca": "{quantity} dies", "de": "{quantity} Tage", - "fr": "{quantity} jours" + "fr": "{quantity} jours", + "hu": "{quantity} nap", + "es": "{quantity} días" }, "humanSingular": { "en": "one day", "nl": "één dag", "de": "ein Tag", - "fr": "un jour" + "fr": "un jour", + "hu": "egy nap", + "es": "un día" } }, { @@ -412,13 +448,17 @@ "en": "one week", "nl": "één week", "de": "ein Woche", - "fr": "une semaine" + "fr": "une semaine", + "hu": "egy hét", + "es": "una semana" }, "human": { "en": "{quantity} weeks", "nl": "{quantity} weken", "de": "{quantity} Wochen", - "fr": "{quantity} semaines" + "fr": "{quantity} semaines", + "hu": "{quantity} hét", + "es": "{quantity} semanas" } }, { @@ -429,13 +469,17 @@ "en": "one month", "nl": "één maand", "de": "ein Monat", - "fr": "un mois" + "fr": "un mois", + "hu": "egy hónap", + "es": "un mes" }, "human": { "en": "{quantity} months", "nl": "{quantity} maanden", "de": "{quantity} Monate", - "fr": "{quantity} mois" + "fr": "{quantity} mois", + "hu": "{quantity} hónap", + "es": "{quantity} meses" } }, { @@ -447,14 +491,18 @@ "nl": "één jaar", "de": "ein Jahr", "fr": "un an", - "ca": "un any" + "ca": "un any", + "hu": "egy év", + "es": "un año" }, "human": { "en": "{quantity} years", "nl": "{quantity} jaar", "de": "{quantity} Jahre", "fr": "{quantity} années", - "ca": "{quantity} anys" + "ca": "{quantity} anys", + "hu": "{quantity} év", + "es": "{quantity} años" } } ] diff --git a/assets/layers/usersettings/usersettings.json b/assets/layers/usersettings/usersettings.json index 141189360..32953dcfe 100644 --- a/assets/layers/usersettings/usersettings.json +++ b/assets/layers/usersettings/usersettings.json @@ -6,7 +6,10 @@ "nl": "Een speciale lag die niet getoond wordt op de kaart, maar die de instellingen van de gebruiker weergeeft", "pt": "Uma camada especial que não deve ser mostrada em um mapa, mas que é usada para definir as configurações do usuário", "ca": "Una capa especial que no està pensada per mostrar-se en un mapa, però que s'utilitza per configurar la configuració de l'usuari", - "cs": "Speciální vrstva, která není určena k zobrazení na mapě, ale slouží k nastavení uživatelských nastavení" + "cs": "Speciální vrstva, která není určena k zobrazení na mapě, ale slouží k nastavení uživatelských nastavení", + "uk": "Спеціальний шар, який не призначений для відображення на карті, але використовується для встановлення користувацьких налаштувань", + "hu": "Egy speciális réteg, amelyet nem a térképen való megjelenítésre szántak, hanem a felhasználói beállítások megadására szolgál", + "es": "Una capa especial que no está destinada a mostrarse en un mapa, pero que se utiliza para configurar la configuración del usuario" }, "source": "special", "calculatedTags": [ @@ -28,7 +31,11 @@ "cs": "Nastavení", "fi": "Asetukset", "zh_Hant": "設定", - "sl": "Nastavitve" + "sl": "Nastavitve", + "ru": "Настройки", + "hu": "Beállítások", + "uk": "Налаштування", + "es": "Configuración" } }, "pointRendering": null, @@ -91,7 +98,9 @@ "nl": "Voeg een profielbeschrijving toe", "pl": "Dodaj opis profilu", "pt": "Adicionar uma descrição do perfil", - "zh_Hant": "新增個人檔敘述" + "zh_Hant": "新增個人檔敘述", + "hu": "Profilleírás hozzáadása", + "es": "Agregar una descripción de perfil" } } } @@ -122,7 +131,9 @@ "nl": "Pas je profielbeschrijving aan", "pl": "Edytuj opis swojego profilu", "pt": "Editar a descrição do seu perfil", - "zh_Hant": "編輯你的個人檔敘述" + "zh_Hant": "編輯你的個人檔敘述", + "hu": "Profilleírás szerkesztése", + "es": "Editar la descripción de tu perfil" } } } @@ -142,7 +153,9 @@ "nl": "Een link naar je Mastodon-profiel werd gevonden: {_mastodon_link}", "fr": "Un lien vers votre profil Mastodon a été trouvé : {_mastodon_link}", "ca": "S'ha trobat un enllaç al vostre perfil de Mastodon: {_mastodon_link}", - "cs": "Byl nalezen odkaz na váš profil Mastodon: {_mastodon_link}" + "cs": "Byl nalezen odkaz na váš profil Mastodon: {_mastodon_link}", + "hu": "Megtaláltuk a Mastodon-profilodra mutató linket : {_mastodon_link}", + "es": "Se encontró un enlace a tu perfil de Mastodon: {_mastodon_link}" }, "icon": "mastodon" }, @@ -153,7 +166,9 @@ "de": "Wir haben einen Link gefunden, der aussieht wie ein Mastodon-Konto, aber nicht verifiziert ist. Bearbeiten Sie Ihre Profilbeschreibung und fügen Sie dort Folgendes ein: <a href=\"{_mastodon_candidate}\" rel=\"me\">Mastodon</a>", "nl": "Je profielbeschrijving bevat een link die vermoedelijk naar je Mastodon gaat, maar deze link is niet verifieerdbaar voor Mastodon.Pas je profielbeschrijving aan en plaats er de volgende code: <a href=\"{_mastodon_candidate}\" rel=\"me\">Mastodon</a>", "ca": "Hem trobat un enllaç al que sembla ser un compte de mastodon, però no està verificat. Editeu la descripció del vostre perfil i col·loqueu-hi el següent: <a href=\"{_mastodon_candidate}\" rel=\"me\">Mastodon</a>", - "cs": "Našli jsme odkaz na to, co vypadá jako účet mastodon, ale je neověřený. Upravte popis svého profilu a umístěte tam následující: <a href=\"{_mastodon_candidate}\" rel=\"me\">Mastodon</a>" + "cs": "Našli jsme odkaz na to, co vypadá jako účet mastodon, ale je neověřený. Upravte popis svého profilu a umístěte tam následující: <a href=\"{_mastodon_candidate}\" rel=\"me\">Mastodon</a>", + "hu": "Találtunk egy linket, ami egy Mastodon-fióknak tűnik, de nem ellenőrzött. Lépj be a profilod szerkesztéséhez, és add meg a következőt: <a href=\"{_mastodon_candidate}\" rel=\"me\">Mastodon</a>", + "es": "Encontramos un enlace a lo que parece ser una cuenta de Mastodon, pero no está verificada. Edita la descripción de tu perfil y coloca lo siguiente allí: Mastodon" }, "icon": "invalid" } @@ -176,8 +191,10 @@ "pt": "Você fez alterações em {_csCount} ocasiões diferentes! Isso é incrível!", "nl": "Je hebt {_csCount} verschillende keren bijgedragen! Dat is indrukwekkend!", "da": "Du har lavet ændringer ved {_csCount} forskellige begivenheder! Det er fantastisk!", - "es": "Has hecho cambios en {_csCount} ocasiones diferentes. ¡Es alucinante!", - "cs": "Změny jste provedli při {_csCount} různých příležitostech! To je úžasné!" + "es": "¡Has realizado cambios en {_csCount} ocasiones diferentes! ¡Eso es increíble!", + "cs": "Změny jste provedli při {_csCount} různých příležitostech! To je úžasné!", + "hu": "Eddig {_csCount} szerkesztést végeztél a térképen! Fantasztikus!", + "uk": "Ви вносили зміни {_csCount} разів! Це чудово!" }, "icon": "party" } @@ -196,7 +213,10 @@ "en": "You have contributed to translating MapComplete with {_translation_contributions} commits! That's awesome!", "nl": "Je hebt MapComplete helpen vertalen met {_translation_contributions} commits! Dat is fantastisch! Bedankt hiervoor!", "de": "Du hast mit {_translation_contributions} Änderungen zur Übersetzung von MapComplete beigetragen! Das ist großartig!", - "ca": "Has contribuït a traduir MapComplete amb {_translation_contributions} canvis! Això és fantàstic!" + "ca": "Has contribuït a traduir MapComplete amb {_translation_contributions} canvis! Això és fantàstic!", + "hu": "A MapComplete fordításához {_translation_contributions} elemmel járultál hozzá! Fantasztikus!", + "uk": "Ви зробили внесок у переклад MapComplete за допомогою {_translation_contributions} комітів! Це чудово!", + "es": "¡Has contribuido a la traducción de MapComplete con {_translation_contributions} confirmaciones! ¡Eso es increíble!" }, "icon": "party" } @@ -217,7 +237,10 @@ "nl": "Je hebt mee geprogrammeerd aan MapComplete met {_code_contributions} commits! Das supercool van je! Bedankt hiervoor!", "ca": "Heu aportat codi a MapComplete amb {_code_contributions} commits! Això és increïble!", "cs": "Přispěli jste do MapComplete kódem s {_code_contributions} revizemi! To je úžasné!", - "da": "Du har bidraget kode til MapComplete med {_code_contributions} commits! Det er fantastisk!" + "da": "Du har bidraget kode til MapComplete med {_code_contributions} commits! Det er fantastisk!", + "hu": "{_code_contributions} elemmel járultál hozzá a MapComplete kódjához! Fantasztikus!", + "uk": "Ви внесли код до MapComplete за допомогою {_code_contributions} коммітів! Це чудово!", + "es": "¡Has contribuido con código a MapComplete con {_code_contributions} confirmaciones! ¡Eso es increíble!" }, "icon": "party", "hideInAnswer": true @@ -237,9 +260,11 @@ "en": "The language was set via an URL-parameter and cannot be set by the user.", "de": "Die Sprache wurde über einen URL-Parameter gesetzt und kann nicht vom Benutzer eingestellt werden.", "ca": "L'idioma es va establir mitjançant un paràmetre d'URL i l'usuari no pot definir-lo.", - "cs": "Jazyk byl nastaven pomocí parametru URL a uživatel jej nemůže nastavit.²", + "cs": "Jazyk byl nastaven pomocí parametru URL a uživatel jej nemůže nastavit.", "nl": "De taal werd ingesteld via een URL-parameter en kan niet manueel ingesteld worden.", - "da": "Sproget er angivet vha. en URL-parameter og kan ikke angives af brugeren." + "da": "Sproget er angivet vha. en URL-parameter og kan ikke angives af brugeren.", + "hu": "A nyelv egy URL-paraméterrel lett megadva ezért felhasználó nem tudja beállítani.", + "es": "El idioma se configuró mediante un parámetro de URL y el usuario no puede configurarlo." } } ] @@ -259,7 +284,9 @@ "de": "Deinen Posteingang öffnen", "ca": "Obre la teva safata d'entrada", "cs": "Otevřít schránku", - "da": "Åbn din indbakke" + "da": "Åbn din indbakke", + "hu": "Beérkezett levelet megnyitása", + "es": "Abrir tu bandeja de entrada" } } } @@ -275,7 +302,9 @@ "ca": "Tens {_unreadMessages} missatges
Obri la safata d'entrada", "cs": "Máte {_unreadMessages}
Otevřít schránku", "nl": "Je hebt {_unreadMessages} ongelezen berichten
Ga naar je inbox", - "da": "Du har {_unreadMessages} beskeder
Åbn din indbakke" + "da": "Du har {_unreadMessages} beskeder
Åbn din indbakke", + "hu": "{_unreadMessages} üzeneted van
Nyisd meg a bejövő üzeneteket", + "es": "Tienes {_unreadMessages} mensajes
Abrir tu bandeja de entrada" }, "href": "{_backend}/messages/inbox" } @@ -294,7 +323,9 @@ "ca": "Obriu la vostra configuració a OpenStreetMap.org", "cs": "Otevřít vaše nastavení na OpenStreetMap.org", "nl": "Open je instellingen op OpenStreetMap.org", - "da": "Åbn dine indstillinger på OpenStreetMap.org" + "da": "Åbn dine indstillinger på OpenStreetMap.org", + "hu": "Beállításaid megnyitása az OpenStreetMap.org-on", + "es": "Abrir tu configuración en OpenStreetMap.org" }, "href": "{_backend}/account/edit" } @@ -310,7 +341,10 @@ "id": "title-map", "render": { "en": "

Configure map

", - "de": "

Karte konfigurieren

" + "de": "

Karte konfigurieren

", + "hu": "

Térkép beállítása

", + "uk": "

Налаштування мапи

", + "es": "

Configurar mapa

" } }, { @@ -319,7 +353,10 @@ "en": "What accessibility features should be applied?", "nl": "Wanneer moet de toegankelijkheidsmode ingeschakeld worden?", "de": "Welche Barrierefrei-Funktionen sollen angewendet werden?", - "da": "Hvilke tilgængelighedsfunktioner skal anvendes?" + "da": "Hvilke tilgængelighedsfunktioner skal anvendes?", + "uk": "Які елементи доступності слід застосовувати?", + "hu": "Milyen elérhetőségi jellemzők jelenjenek meg?", + "es": "¿Qué funciones de accesibilidad se deben aplicar?" }, "mappings": [ { @@ -330,7 +367,12 @@ "ca": "Activar les funcions d'accessibilitat quan s'utilitzen les tecles de fletxa per navegar pel mapa", "nl": "Schakel toegankelijkheidsmode aan wanneer op de pijltjestoetsen wordt geduwd om de kaart te bewegen", "de": "Barrierefrei-Modus aktivieren, wenn Pfeiltasten zum Navigieren in der Karte verwendet werden", - "da": "Aktiver tilgængelighedsfunktioner, når piletaster anvendes til at navigere i kortet" + "da": "Aktiver tilgængelighedsfunktioner, når piletaster anvendes til at navigere i kortet", + "cs": "Povolení funkcí přístupnosti při použití kláves se šipkami k navigaci na mapě", + "uk": "Увімкніть функції доступності, коли для навігації мапою використовуються клавіші зі стрілками", + "fr": "Activer les fonctions d'accessibilité lorsque les touches directionnelles sont utilisées pour naviguer sur la carte", + "hu": "Elérhető objektumok megjelenítése, amikor a térképen a nyílbillentyűkkel navigálsz", + "es": "Activar funciones de accesibilidad cuando se usan las teclas de flecha para navegar por el mapa" } }, { @@ -340,7 +382,10 @@ "ca": "Sempre habilita les característiques d'accessibilitat", "nl": "Schakel de toegankelijkheidsmode altijd aan", "de": "Barrierefrei-Modus immer aktivieren", - "da": "Aktiver altid tilgængelighedsfunktioner" + "da": "Aktiver altid tilgængelighedsfunktioner", + "uk": "Завжди вмикайте функції доступності", + "hu": "Mindig jelenjenek meg az elérhető objektumok", + "es": "Activar siempre las funciones de accesibilidad" } }, { @@ -349,7 +394,10 @@ "en": "Never enable accessibility features", "nl": "Gebruik geen toegankelijkheidsmode", "de": "Barrierefrei-Modus niemals aktivieren", - "da": "Aktiver aldrig tilgængelighedsfunktioner" + "da": "Aktiver aldrig tilgængelighedsfunktioner", + "uk": "Ніколи не вмикайте функції доступності", + "hu": "Soha ne jelenjenek meg az elérhető objektumok", + "es": "Nunca activar las funciones de accesibilidad" } } ] @@ -369,7 +417,9 @@ "de": "Diese thematische Karte hat einen vordefinierten Hintergrund. Ihr Standardhintergrund wird nicht angewendet", "cs": "Tato tematická mapa má předdefinovanou sadu podkladových vrstev. Vaše výchozí nastavení tématu se nepoužije", "nl": "Deze kaart heeft een achtegrondlaag instgesteld. Je instellingen worden niet gebruikt", - "da": "Dette temakort har angivet et foruddefineret baggrundslag. Dine standardindstillinger benyttes ikke" + "da": "Dette temakort har angivet et foruddefineret baggrundslag. Dine standardindstillinger benyttes ikke", + "hu": "Ennek a tematikus térképnek van előre meghatározott háttérrétegkészlete. Itt ezért nem alkalmazható az általad beállított alapértelmezett tematikustérkép-beállítás", + "es": "Este mapa temático tiene una capa de fondo predefinida. Tu configuración de tema predeterminada no se aplica" } }, { @@ -381,11 +431,16 @@ "cs": "Jaká vrstva pozadí by se měla zobrazovat ve výchozím nastavení?", "nl": "Welke achtergrondlaag moet altijd gebruikt worden?", "fr": "Quel fond souhaitez-vous utiliser par défaut ?", - "da": "Hvilket baggrundslag skal vises som standard?" + "da": "Hvilket baggrundslag skal vises som standard?", + "hu": "Milyen háttérréteg jelenjék meg alapértelmezés szerint?", + "uk": "Який фоновий шар повинен бути показаний стандартно?", + "es": "¿Qué capa de fondo se debe mostrar de forma predeterminada?" }, "questionHint": { "en": "To set a specific background as default, select it in the background menu first after which it will appear here.", - "de": "Um einen bestimmten Hintergrund als Standard festzulegen, wähle ihn zuerst im Hintergrundmenü aus, danach wird er hier angezeigt." + "de": "Um einen bestimmten Hintergrund als Standard festzulegen, wähle ihn zuerst im Hintergrundmenü aus, danach wird er hier angezeigt.", + "hu": "Ha szeretnél egy adott hátteret alapértelmezettként beállítani, először válaszd ki a háttér menüben, és ez után fog itt megjelenni.", + "es": "Para establecer un fondo específico como predeterminado, selecciónalo primero en el menú de fondo, después aparecerá aquí." }, "condition": "_theme:backgroundLayer=", "mappings": [ @@ -400,7 +455,10 @@ "cs": "Použití výchozí vrstvu pozadí", "nl": "Gebruik de standaard achtergrondlaag", "fr": "Utiliser le fond par défaut", - "da": "Vis standardbaggrundslaget" + "da": "Vis standardbaggrundslaget", + "uk": "Використовувати стандартний фоновий шар", + "hu": "Alapértelmezett háttér: az alapértelmezés szerinti", + "es": "Usar la capa de fondo predeterminada" } }, { @@ -415,7 +473,10 @@ "cs": "Použít OpenStreetMap-carto jako výchozí vrstvu", "nl": "Gebruik OpenStreetMap-carto altijd als achtergrondlaag", "fr": "Utiliser le fond OpenStreetMap-carto par défaut", - "da": "Brug OpenStreetMap-carto som standardlag" + "da": "Brug OpenStreetMap-carto som standardlag", + "uk": "Використовувати OpenStreetMap-carto як стандартний шар", + "hu": "Alapértelmezett háttér: OpenStreetMap-carto", + "es": "Usar OpenStreetMap-carto como capa predeterminada" } }, { @@ -428,7 +489,10 @@ "cs": "Použít letecké snímky jako výchozí pozadí", "nl": "Gebruik luchtfoto's als standaard achtergrondlaag", "fr": "Utiliser le fond imagerie aérienne par défaut", - "da": "Brug luftfoto som standardbaggrund" + "da": "Brug luftfoto som standardbaggrund", + "uk": "Використовувати аерофотознімки як стандартний фон", + "hu": "Alapértelmezett háttér: légi felvételek", + "es": "Usar imágenes aéreas como fondo predeterminado" } }, { @@ -441,7 +505,10 @@ "cs": "Použití mapy, která není založena na mapě openstreetmap, jako výchozího pozadí", "nl": "Gebruik altijd een kaart die niet op OpenStreetMap gebaseerd is als achtergrond", "fr": "Utiliser un fond non basé sur OpenStreetMap par défaut", - "da": "Brug et ikke-OpenSreetMap-baseret kort som standardbaggrund" + "da": "Brug et ikke-OpenSreetMap-baseret kort som standardbaggrund", + "uk": "Використовувати мапу на основі не-openstreetmap як стандартний фон", + "hu": "Alapértelmezett háttér: egy nem OpenStreetMap-alapú réteg", + "es": "Usar un mapa que no sea de OpenStreetMap como fondo predeterminado" } }, { @@ -453,7 +520,10 @@ "cs": "Použít aktuální vrstvu pozadí ({__current_background}) jako výchozí pozadí", "nl": "Gebruik altijd {__current_background} als achtergrondlaag. Dit is de huidige achtergrond.", "fr": "Utiliser le fond actuel ({__current_background}) par défaut", - "da": "Brug det nuværende baggrundslag ({__current_background}) som standardbaggrund" + "da": "Brug det nuværende baggrundslag ({__current_background}) som standardbaggrund", + "uk": "Використовувати поточний фоновий шар ({__current_background}) як фон за замовчуванням", + "hu": "Alapértelmezett háttér: a jelenlegi {__current_background} háttérréteg", + "es": "Usar la capa de fondo actual ({__current_background}) como fondo predeterminado" }, "hideInAnswer": { "or": [ @@ -472,7 +542,10 @@ "cs": "Použít vrstvu pozadí {mapcomplete-preferred-background-layer} jako výchozí pozadí", "nl": "Gebruik {mapcomplete-preferred-background-layer} altijd als achtergrondlaag", "fr": "Utiliser le fond ({mapcomplete-preferred-background-layer})par défaut", - "da": "Brug baggrundslaget {mapcomplete-preferred-background-layer} som standardbaggrund" + "da": "Brug baggrundslaget {mapcomplete-preferred-background-layer} som standardbaggrund", + "uk": "Використовувати фоновий шар {mapcomplete-preferred-background-layer} як фон за замовчуванням", + "hu": "Alapértelmezett háttér: {mapcomplete-preferred-background-layer} háttérréteg", + "es": "Usar la capa de fondo {mapcomplete-preferred-background-layer} como fondo predeterminado" }, "hideInAnswer": true } @@ -484,14 +557,20 @@ "en": "Should a crosshair be shown in the center of the display?", "cs": "Měl by se uprostřed displeje zobrazovat kříž?", "de": "Soll ein Fadenkreuz in der Mitte des Bildschirms angezeigt werden?", - "nl": "Moet er een kruisje getoond worden in het centrum van je display?" + "nl": "Moet er een kruisje getoond worden in het centrum van je display?", + "hu": "Megjelenjék-e egy célkereszt a kijelző közepén?", + "uk": "Чи потрібно показувати перехрестя по центру екрана?", + "es": "¿Se debe mostrar una cruz en el centro de la pantalla?" }, "questionHint": { "en": "This can help to accurately position a new element", "cs": "To může pomoci přesněji umístit nový prvek", "de": "Dies kann dazu beitragen, ein neues Element genau zu positionieren", "nl": "Dit kan helpen om nieuwe elementen accuraat te plaatsen", - "ca": "Això pot ajudar a posicionar amb precisió un nou element" + "ca": "Això pot ajudar a posicionar amb precisió un nou element", + "hu": "Segíthet egy-egy új elem pontos elhelyezésében", + "uk": "Це може допомогти точно позиціонувати новий елемент", + "es": "Esto puede ayudar a posicionar con precisión un nuevo elemento" }, "mappings": [ { @@ -521,7 +600,10 @@ "ca": "El nord hauria d'estar sempre amunt?", "cs": "Měl by být sever vždy nahoře?", "nl": "Moet het noorden altijd naar boven getoond worden?", - "da": "Skal nord altid pege opad?" + "da": "Skal nord altid pege opad?", + "hu": "Északnak mindig fent kell lennie?", + "uk": "Чи завжди північ має бути вгорі?", + "es": "¿Debe estar el norte siempre arriba?" }, "mappings": [ { @@ -535,7 +617,10 @@ "fr": "Autoriser la rotation de la carte", "da": "Tillad rotation af kortet", "cs": "Umožnit otáčení mapy", - "nl": "Sta kaartrotatie toe" + "nl": "Sta kaartrotatie toe", + "hu": "Térkép forgatásának engedélyezése", + "uk": "Дозволити обертання мапи", + "es": "Permitir rotar el mapa" } }, { @@ -548,7 +633,10 @@ "ca": "Mantingueu sempre el nord apuntant cap amunt", "cs": "Sever vždy směřujte nahoru", "nl": "Hou het noorden altijd naar boven", - "da": "Nord peger altid opad" + "da": "Nord peger altid opad", + "hu": "Mindig fölfelé legyen észak", + "uk": "Завжди тримати північ угорі", + "es": "Mantener siempre el norte hacia arriba" } } ] @@ -558,7 +646,11 @@ "question": { "en": "Should a scale bar be shown on the map?", "nl": "Moet er een schaalbalk weergegeven worden?", - "de": "Kartenmaßstab anzeigen?" + "de": "Kartenmaßstab anzeigen?", + "cs": "Má být na mapě zobrazeno měřítko?", + "hu": "Megjelenjék-e a méretarány a térképen?", + "uk": "Чи потрібно показувати масштабну лінійку на карті?", + "es": "¿Se debe mostrar una barra de escala en el mapa?" }, "mappings": [ { @@ -566,7 +658,10 @@ "then": { "en": "Show the scalebar", "nl": "Toon de schaalbalk", - "de": "Maßstab anzeigen" + "de": "Maßstab anzeigen", + "hu": "Méretarány megjelenítése", + "uk": "Показати масштабну лінійку", + "es": "Mostrar la barra de escala" } }, { @@ -575,7 +670,12 @@ "then": { "en": "Hide the scalebar", "nl": "Verberg de schaalbalk", - "de": "Maßstab ausblenden" + "de": "Maßstab ausblenden", + "cs": "Skrytí panelu měřítka", + "fr": "Masquer la barre d'échelle", + "hu": "Méretarány elrejtése", + "uk": "Приховати лінійку масштабу", + "es": "Ocultar la barra de escala" } } ] @@ -584,7 +684,11 @@ "id": "title-editing", "render": { "en": "

Editing settings

", - "de": "

Einstellungen bearbeiten

" + "de": "

Einstellungen bearbeiten

", + "cs": "

Úprava nastavení

", + "hu": "

Szerkesztési beállítások

", + "uk": "

Налаштування редагування

", + "es": "

Configuración de edición

" } }, { @@ -597,7 +701,10 @@ "ca": "Les preguntes amb camps de dades desconeguts haurien d'aparèixer una per una o juntes?", "nl": "Moeten onbeantwoorde vragen om beurt of allemaal samen getoond worden?", "cs": "Mají se otázky pro neznámá datová pole zobrazovat jednotlivě, nebo společně?", - "da": "Skal spørgsmål for ukendte oplysninger vises ét ad gangen eller alle på én gang?" + "da": "Skal spørgsmål for ukendte oplysninger vises ét ad gangen eller alle på én gang?", + "uk": "Чи повинні питання для невідомих полів даних з'являтися по одному або разом?", + "hu": "Egyenként vagy együttesen jelenjenek meg az ismeretlen adatokra vonatkozó kérdések?", + "es": "¿Deben aparecer las preguntas para campos de datos desconocidos una por una o juntas?" }, "mappings": [ { @@ -610,7 +717,10 @@ "pt": "Mostrar todas as perguntas na caixa de informações juntas", "nl": "Toon alle onbeantwoorde vragen", "cs": "Zobrazit všechny otázky v infoboxu dohromady", - "da": "Vis alle spørgsmål i infoboksen på én gang" + "da": "Vis alle spørgsmål i infoboksen på én gang", + "uk": "Показати всі питання в інфобокс разом", + "hu": "Az infoboxban szereplő összes kérdés egyszerre jelenjék meg", + "es": "Mostrar todas las preguntas juntas en el cuadro de información" } }, { @@ -623,7 +733,10 @@ "pt": "Mostrar perguntas uma a uma", "nl": "Toon de vragen één per één", "cs": "Zobrazit otázky jednu po druhé", - "da": "Vis spørgsmål ét ad gangen" + "da": "Vis spørgsmål ét ad gangen", + "uk": "Показувати питання по черзі", + "hu": "A kérdések egymás után jelenjenek meg", + "es": "Mostrar las preguntas una por una" } } ] @@ -636,7 +749,10 @@ "fr": "Afficher les attributs OpenStreetMap bruts ?", "ca": "Mostra les etiquetes d'OpenStreetMap en brut?", "cs": "Zobrazit nezpracované/raw tagy OpenStreetMap?", - "nl": "Moeten de data-attributen getoond worden?" + "nl": "Moeten de data-attributen getoond worden?", + "hu": "Megjelenjenek-e a nyers OpenStreetMap-címkék?", + "uk": "Показувати необроблені OpenStreetMap-теги?", + "es": "¿Mostrar las etiquetas de OpenStreetMap?" }, "questionHint": { "en": "Tags are attributes that every element has. This is the technical data that is stored in the database. You don't need this information to edit with MapComplete, but advanced users might want to use this as reference.", @@ -644,7 +760,10 @@ "ca": "Les etiquetes són atributs que té cada element. Aquestes són les dades tècniques que s'emmagatzemen a la base de dades. No necessiteu aquesta informació per editar amb MapComplete, però és possible que els usuaris avançats la vulguin fer servir com a referència.", "cs": "Tagy jsou atributy, které má každý element. Jedná se o technické údaje, které jsou uloženy v databázi. K úpravám pomocí MapComplete tyto informace nepotřebujete, ale pokročilí uživatelé by je mohli chtít použít jako referenci.", "nl": "Data-attributen zijn stukjes data die elk element in OpenStreetMap heeft. Dit is technische data die in de databank komt. Je hoeft deze informatie niet te kennen om aanpassingen te maken met MapComplete, maar geavanceerde gebruikers kunnen dit als referentie gebruiken.", - "fr": "LesTags ou étiquettes sont des attributs rattachés à chaque élément. C'est une donnée technique qui est stockée dans une base de données. Vous n'avez pas besoin de connaître ces étiquettes pour utiliser MapComplete, mais certains utilisateurs préfèrent les afficher." + "fr": "LesTags ou étiquettes sont des attributs rattachés à chaque élément. C'est une donnée technique qui est stockée dans une base de données. Vous n'avez pas besoin de connaître ces étiquettes pour utiliser MapComplete, mais certains utilisateurs préfèrent les afficher.", + "hu": "A címkék olyan tulajdonságok, amelyekkel minden térképobjektum rendelkezik. Ezek az adatbázisban tárolt technikai adatok. A MapComplete programmal történő szerkesztéshez nincs szükség ezekre az adatokra, haladó felhasználóknak azonban érdemes lehet referenciaként használniuk.", + "uk": "Теги - це атрибути, які має кожен елемент. Це технічні дані, які зберігаються в базі даних. Вам не потрібна ця інформація для редагування у MapComplete, але досвідчені користувачі можуть використовувати її як довідкову.", + "es": "Las etiquetas son atributos que tiene cada elemento. Estos son los datos técnicos que se almacenan en la base de datos. No necesitas esta información para editar con MapComplete, pero los usuarios avanzados pueden querer usarla como referencia." }, "mappings": [ { @@ -655,7 +774,10 @@ "ca": "No mostris mai les etiquetes.", "cs": "Nikdy nezobrazovat tagy.", "nl": "Verberg data-attributen", - "fr": "Ne jamais voir les étiquettes." + "fr": "Ne jamais voir les étiquettes.", + "hu": "Soha ne jelenjenek meg a címkék.", + "uk": "Ніколи не показуйте теги.", + "es": "Nunca mostrar las etiquetas." } }, { @@ -666,7 +788,10 @@ "ca": "Mostra les etiquetes que s'aplicaran un cop hagi fet {__userjourney_tagsVisibleAt} conjunts de canvis", "cs": "Zobrazit tagy, které budou použity, jakmile provedu {__userjourney_tagsVisibleAt} sady změn", "nl": "Toon data-attributen bij wijzigingen indien je meer dan {__userjourney_tagsVisibleAt} changesets hebt gemaakt", - "fr": "Voir les étiquettes au bout de {__userjourney_tagsVisibleAt} modifications" + "fr": "Voir les étiquettes au bout de {__userjourney_tagsVisibleAt} modifications", + "hu": "Azok a címkék jelenjenek meg, amelyeket {__userjourney_tagsVisibleAt} módosításkészlet elvégzését követően alkalmaztam", + "uk": "Показувати теґи, які будуть застосовані після того, як я зроблю {__userjourney_tagsVisibleAt} набори(ів) змін", + "es": "Mostrar las etiquetas que se aplicarán una vez que haya realizado {__userjourney_tagsVisibleAt} conjuntos de cambios" } }, { @@ -677,7 +802,10 @@ "ca": "Mostra les etiquetes que s'aplicaran en fer un canvi", "cs": "Zobrazení tagů, které budou použity při provádění změny", "nl": "Toon de data-attributen die toegepast zullen worden bij wijzigingen", - "fr": "Voir les étiquettes quand je fais une modification" + "fr": "Voir les étiquettes quand je fais une modification", + "hu": "A módosításkor alkalmazott címkék jelenjenek meg", + "uk": "Показати теги, які будуть застосовані при внесенні змін", + "es": "Mostrar las etiquetas que se aplicarán al realizar un cambio" } }, { @@ -688,7 +816,10 @@ "ca": "Mostra les etiquetes que s'aplicaran a l'hora de fer un canvi i mostra la taula d'etiquetes a cada element", "cs": "Zobrazení tagů, které se použijí při provádění změny, a zobrazení tabulky tagů u každé funkce", "nl": "Toon de data-attributen die toegepast zullen worden bij wijzigingen en toon een tabel met alle data-attributen bij elk object.", - "fr": "Voir les étiquettes quand je fais une modification et toujours voir les étiquettes pour chaque élément" + "fr": "Voir les étiquettes quand je fais une modification et toujours voir les étiquettes pour chaque élément", + "hu": "A módosításkor alkalmazott címkék jelenjenek meg és minden objektumon jelenjék meg a címketáblázat", + "uk": "Показати теги, які будуть застосовані при внесенні змін, і показати таблицю тегів для кожного елемента", + "es": "Mostrar las etiquetas que se aplicarán al realizar un cambio y mostrar la tabla de etiquetas en cada elemento" } } ] @@ -697,14 +828,20 @@ "id": "add-new-feature", "question": { "en": "How should the menu to add a new feature be opened?", - "de": "Wie soll das Menü zum Hinzufügen eines neuen Objekts geöffnet werden?" + "de": "Wie soll das Menü zum Hinzufügen eines neuen Objekts geöffnet werden?", + "uk": "Як має відкриватися меню для додавання нового об'єкту?", + "hu": "Hogyan nyíljék meg az új objektum hozzáadására szolgáló menü?", + "es": "¿Cómo se debe abrir el menú para agregar un nuevo elemento?" }, "mappings": [ { "if": "mapcomplete-preferences-add-new-mode=button", "then": { "en": "Adding a new feature is done with the button at the bottom left. Clicking the map does nothing", - "de": "Das Hinzufügen eines neuen Objekts erfolgt über die Schaltfläche unten links. Ein Klick auf die Karte bewirkt nichts" + "de": "Das Hinzufügen eines neuen Objekts erfolgt über die Schaltfläche unten links. Ein Klick auf die Karte bewirkt nichts", + "uk": "Додавання нового об'єкта здійснюється за допомогою кнопки внизу ліворуч. Клацання по карті нічого не робить", + "hu": "Új objektum a bal alsó sarokban található gombbal vihető fel. A térképre kattintva nem történik semmi", + "es": "Agregar un nuevo elemento se hace con el botón en la parte inferior izquierda. Hacer clic en el mapa no hace nada" } }, { @@ -712,28 +849,41 @@ "then": { "en": "When clicking or tapping the map, a marker pops up where a new feature is added", "de": "Wenn Sie auf die Karte klicken oder tippen, wird eine Markierung eingeblendet, an der ein neues Objekt hinzugefügt wird", - "ca": "En fer clic o tocar el mapa, apareix un marcador on s'afegeix un element nou" + "ca": "En fer clic o tocar el mapa, apareix un marcador on s'afegeix un element nou", + "uk": "При натисканні або торканні мапи з'являється маркер, де додається новий об'єкт", + "hu": "Kattintás vagy koppintás után a térképen megjelenik egy jelölő ott, ahol fel lehet vinni egy új objektumot", + "es": "Al hacer clic o tocar el mapa, aparece un marcador donde se agrega un nuevo elemento" } }, { "if": "mapcomplete-preferences-add-new-mode=click_right", "then": { "en": "When right-clicking or long-pressing the map, a marker pops up where a new feature can be added", - "de": "Beim Rechtsklick oder einem langen Druck auf die Karte erscheint eine Markierung, mit der ein neues Objekt hinzugefügt werden kann" + "de": "Beim Rechtsklick oder einem langen Druck auf die Karte erscheint eine Markierung, mit der ein neues Objekt hinzugefügt werden kann", + "uk": "При натисканні правою кнопкою миші або тривалому утриманні мапи з'являється маркер, де можна додати новий об'єкт", + "hu": "Jobb egérgombbal kattintva vagy hosszú nyomás után a térképen megjelenik egy jelölő ott, ahol fel lehet vinni egy új objektumot", + "es": "Al hacer clic derecho o presionar prolongadamente el mapa, aparece un marcador donde se puede agregar un nuevo elemento" } }, { "if": "mapcomplete-preferences-add-new-mode=button_click", "then": { "en": "When clicking or tapping the map, a marker pops up where a new feature can be added. Additionally, a button at the bottom left is shown", - "de": "Beim Klicken oder Tippen auf die Karte wird eine Markierung eingeblendet, an der ein neues Objekt hinzugefügt werden kann. Zusätzlich wird unten links eine Schaltfläche angezeigt" + "de": "Beim Klicken oder Tippen auf die Karte wird eine Markierung eingeblendet, an der ein neues Objekt hinzugefügt werden kann. Zusätzlich wird unten links eine Schaltfläche angezeigt", + "uk": "При натисканні або торканні мапи з'являється маркер, де можна додати новий об'єкт. Крім того, внизу ліворуч відображається кнопка", + "hu": "Kattintás vagy koppintás után a térképen megjelenik egy jelölő ott, ahol fel lehet vinni egy új objektumot. Ezen kívül a bal alsó sarokban is látható egy gomb", + "es": "Al hacer clic o tocar el mapa, aparece un marcador donde se puede agregar un nuevo elemento. Además, se muestra un botón en la parte inferior izquierda" } }, { "if": "mapcomplete-preferences-add-new-mode=button_click_right", "then": { "en": "When right-clicking or long-pressing the map, a marker pops up where a new feature can be added. Additionally, a button at the bottom left is shown", - "de": "Beim Rechtsklick oder einem langen Druck auf die Karte erscheint eine Markierung, an der ein neues Objekt hinzugefügt werden kann. Zusätzlich wird unten links eine Schaltfläche angezeigt" + "de": "Beim Rechtsklick oder einem langen Druck auf die Karte erscheint eine Markierung, an der ein neues Objekt hinzugefügt werden kann. Zusätzlich wird unten links eine Schaltfläche angezeigt", + "cs": "Po kliknutí pravým tlačítkem myši nebo dlouhém stisknutí mapy se zobrazí značka, kam lze přidat nový prvek. Kromě toho se vlevo dole zobrazí tlačítko", + "uk": "При натисканні правою кнопкою миші або тривалому утриманні на мапі зʼявляється маркер, куди можна додати новий обʼєкт. Крім того, внизу ліворуч показується кнопка", + "hu": "Jobb egérgombbal kattintva vagy hosszú nyomás után a térképen megjelenik egy jelölő ott, ahol fel lehet vinni egy új objektumot. Ezen kívül a bal alsó sarokban is látható egy gomb", + "es": "Al hacer clic derecho o presionar prolongadamente el mapa, aparece un marcador donde se puede agregar un nuevo elemento. Además, se muestra un botón en la parte inferior izquierda" } } ] @@ -750,7 +900,11 @@ "id": "title-privacy-legal", "render": { "en": "

Privacy and legal

", - "de": "

Datenschutz und Rechtliches

" + "de": "

Datenschutz und Rechtliches

", + "cs": "

Soukromí a právní záležitosti

", + "hu": "

Adatvédelem és jog

", + "uk": "

Захист персональних даних

", + "es": "

Privacidad y legal

" } }, { @@ -761,7 +915,10 @@ "then": { "en": "This theme is sensitive. Making changes will not indicate if you were nearby explicitly.", "de": "Dieses Thema ist sensibel. Wenn du Änderungen vornimmst, wird nicht angezeigt, ob du explizit in der Nähe warst.", - "nl": "Dit thema ligt gevoelig. Wijzigingen aan objecten zullen niet aangeven of je in de buurt was." + "nl": "Dit thema ligt gevoelig. Wijzigingen aan objecten zullen niet aangeven of je in de buurt was.", + "hu": "Ez a tematikus térkép érzékeny. A módosításból nem fog kiderülni, hogy kifejezetten a közelben voltál-e.", + "uk": "Ця тема є делікатною. Внесення змін не вказуватиме на те, що ви були поруч.", + "es": "Este tema es sensible. Al realizar cambios, no se indicará explícitamente si estabas cerca." } } ] @@ -771,12 +928,18 @@ "question": { "en": "When making changes, should a rough indication be given how far away you were from the object?", "de": "Sollte bei Änderungen eine grobe Angabe gemacht werden, wie weit du vom Objekt entfernt warst?", - "nl": "Mag er opgeslaan worden hoever je je van een object bevindt wanneer je aanpassingen maakt aan dit object?" + "nl": "Mag er opgeslaan worden hoever je je van een object bevindt wanneer je aanpassingen maakt aan dit object?", + "hu": "A szerkesztéseknél megjelenjék-e egy hozzávetőleges jelzés arról, hogy milyen messze voltál az objektumtól?", + "uk": "Вносячи зміни, чи потрібно приблизно вказувати, як далеко ви знаходилися від об'єкта?", + "es": "Al realizar cambios, ¿se debe dar una indicación aproximada de qué tan lejos estabas del objeto?" }, "questionHint": { "en": "If you make a change to one or more objects and you enabled your location, a rough indication of where you made will be saved: it is indicated if you were closer then 25m, 500m, 5km or further away then 5km. This helps mappers understand your context when making changes, but gives an indication of where you were at this time. ", "de": "Wenn du eine Änderung an einem oder mehreren Objekten vornimmst und deinen Standort aktivierst, wird eine ungefähre Angabe darüber gespeichert, wo du dich befunden hast: Es wird angezeigt, ob du näher als 25m, 500m, 5km oder weiter als 5km entfernt warst. Das hilft den Kartierern, deinen Kontext zu verstehen, wenn du Änderungen vornimmst, gibt aber auch einen Hinweis darauf, wo du zu diesem Zeitpunkt warst. ", - "nl": "Wanneer je een wijziging maakt aan één of meer interessepunten en als MapComplete toont waar je bent, dan kan opgeslaan worden hoever je je ongeveer van deze objecten bevindt. Er wordt aangeduid of je dichter dan 25m, 500m, 5km of verder dan 5km was. Dit helpt om andere bijdragers te begrijpen hoe je je bijdragen deed, maar geeft natuurlijk ook aan waar je op dat moment was. " + "nl": "Wanneer je een wijziging maakt aan één of meer interessepunten en als MapComplete toont waar je bent, dan kan opgeslaan worden hoever je je ongeveer van deze objecten bevindt. Er wordt aangeduid of je dichter dan 25m, 500m, 5km of verder dan 5km was. Dit helpt om andere bijdragers te begrijpen hoe je je bijdragen deed, maar geeft natuurlijk ook aan waar je op dat moment was. ", + "hu": "Ha módosítasz egy objektumot, és engedélyezed a helymeghatározást, akkor a rendszer elmenti a körülbelüli helyedet: jelzi, hogy 25 méteren, 500 méteren vagy 5 kilométeren belül vagy 5 km-nél távolabb voltál. A többi térképész így jobban látja, milyen körülmények között szerkesztetted a térképet, de egyúttal azt is jelzi, hogy hol voltál ebben az időpontban. ", + "uk": "Якщо ви вносите зміни до одного або декількох об'єктів і ввімкнули функцію визначення вашого місцезнаходження, буде збережено приблизну інформацію про те, де ви перебували: чи були ви ближче 25 м, 500 м, 5 км або далі 5 км від об'єкта. Це допомагає картографам зрозуміти ваш контекст при внесенні змін, але дає уявлення про те, де ви були в цей час. ", + "es": "Si realizas un cambio en uno o más objetos y has activado tu ubicación, se guardará una indicación aproximada de dónde lo hiciste: se indica si estabas a menos de 25 m, 500 m, 5 km o más de 5 km. Esto ayuda a los mapeadores a comprender tu contexto al realizar cambios, pero da una indicación de dónde te encontrabas en ese momento. " }, "mappings": [ { @@ -785,7 +948,11 @@ "then": { "en": "When making changes to OpenStreetMap, do not indicate how far away you were from the changed objects.", "de": "Wenn du Änderungen an OpenStreetMap vornimmst, gibst du nicht an, wie weit du von den geänderten Objekten entfernt warst.", - "nl": "Geef niet aan hoever je je van de gewijzigde objecten bevindt wanneer je wijzigingen maakt met MapComplete." + "nl": "Geef niet aan hoever je je van de gewijzigde objecten bevindt wanneer je wijzigingen maakt met MapComplete.", + "cs": "Při provádění změn v OpenStreetMap neuvádějte, jak daleko jste byli od změněných objektů.", + "hu": "Az OpenStreetMap szerkesztésekor ne jelenjék meg, hogy milyen messze voltál a módosított objektumoktól.", + "uk": "Вносячи зміни до OpenStreetMap, не вказуйте, як далеко ви знаходилися від змінених об'єктів.", + "es": "Al realizar cambios en OpenStreetMap, no indicar qué tan lejos estabas de los objetos modificados." } }, { @@ -794,76 +961,11 @@ "then": { "en": "When making changes to OpenStreetMap, roughly indicate how far away you were from the changed objects. This helps other contributors to understand how you made the change", "de": "Gebe bei Änderungen an OpenStreetMap an, wie weit du ungefähr von den geänderten Objekten entfernt warst. Das hilft anderen Mitwirkenden zu verstehen, wie du die Änderung vorgenommen hast", - "nl": "Geef aan hoever je je ongeveer bevindt ten opzichte van objecten die je wijzigt in OpenStreetMap. Dit helpt andere bijdagers te begrijpen welke wijzigingen je waarom maakt." - } - } - ] - }, - { - "id": "picture-license", - "description": "This question is not meant to be placed on an OpenStreetMap-element; however it is used in the user information panel to ask which license the user wants", - "question": { - "en": "Under what license do you want to publish your pictures?", - "de": "Unter welcher Lizenz möchten Sie Ihre Bilder veröffentlichen?", - "nl": "Met welke licentie wil je je afbeeldingen toevoegen?", - "ca": "Sota quina llicència vols publicar les teves fotos?", - "pt": "Sob que licença você deseja publicar suas fotos?", - "cs": "Pod jakou licencí chcete své fotografie zveřejnit?", - "da": "Under hvilken licens vil du frigive dine billeder?" - }, - "mappings": [ - { - "if": "mapcomplete-pictures-license=", - "icon": "./assets/layers/usersettings/scale.svg", - "then": { - "en": "Pictures you take will be licensed with CC0 and added to the public domain. This means that everyone can use your pictures for any purpose. This is the default choice.", - "de": "Die von Ihnen aufgenommenen Bilder werden mit CC0 lizenziert und der Public Domain hinzugefügt. Das bedeutet, dass jeder Ihre Bilder für jeden Zweck verwenden kann. Dies ist die Standardeinstellung.", - "nl": "Afbeeldingen die je toevoegt zullen gepubliceerd worden met de CC0-licentie en dus aan het publieke domein toegevoegd worden. Dit betekent dat iedereen je afbeeldingen kan gebruiken voor elk mogelijks gebruik. Dit is de standaard-instelling", - "cs": "Pořízené fotografie budou licencovány pod CC0 a přidány do veřejné domény. To znamená, že kdokoli může vaše snímky použít k jakémukoli účelu. Toto je výchozí volba.", - "ca": "Les imatges que feu tindran llicència CC0 i s'afegiran al domini públic. Això vol dir que tothom pot utilitzar les vostres imatges per a qualsevol propòsit. Aquesta és l'opció predeterminada. ", - "pt": "As fotos que você tirar serão licenciadas com CC0 e adicionadas ao domínio público. Isso significa que todos podem usar suas fotos para qualquer finalidade. Esta é a escolha padrão." - }, - "hideInAnswer": true - }, - { - "if": "mapcomplete-pictures-license=CC0", - "icon": "./assets/layers/usersettings/scale.svg", - "then": { - "en": "Pictures you take will be licensed with CC0 and added to the public domain. This means that everyone can use your pictures for any purpose.", - "de": "Ihre aufgenommenen Bilder werden mit CC0 lizenziert und der Public Domain hinzugefügt. Das bedeutet, dass jeder Ihre Bilder für jeden Zweck verwenden kann.", - "nl": "Afbeeldingen die je toevoegt zullen gepubliceerd worden met de CC0-licentie en dus aan het publieke domein toegevoegd worden. Dit betekent dat iedereen je afbeeldingen kan gebruiken voor elk mogelijks gebruik.", - "ru": "Изображения будут опубликованы под лицензией CC0 и перейдут в общественное достояние. Это значит, что кто угодно имеет право использовать их без ограничений.", - "cs": "Pořízené fotografie budou licencovány pod CC0 a přidány do veřejné domény. To znamená, že kdokoli může vaše snímky použít k jakémukoli účelu.", - "ca": "Les imatges que feu tindran llicència CC0 i s'afegiran al domini públic. Això vol dir que tothom pot utilitzar les vostres imatges per a qualsevol propòsit.", - "es": "Las fotografías que tome tendrán una licencia con CC0 y se agregarán al dominio público. Esto significa que todos pueden usar sus imágenes para cualquier propósito.", - "pt": "As fotos que você tirar serão licenciadas com CC0 e adicionadas ao domínio público. Isso significa que todos podem usar suas fotos para qualquer finalidade.", - "da": "Billeder, som du har taget, vil blive udgivet under CC0-licensen og lagt ud i fælleseje. Det betyder, at alle kan bruge dine billeder til ethvert formål.", - "fr": "Les photos que vous avez ajoutées seront sous licence CC0 et mises dans le domaine public. Cela signifie que n'importe qui pourra les utiliser, quel qu'en soit l'usage." - } - }, - { - "if": "mapcomplete-pictures-license=CC-BY 4.0", - "icon": "./assets/layers/usersettings/scale.svg", - "then": { - "en": "Pictures you take will be licensed with CC-BY 4.0 which requires everyone using your picture that they have to attribute you", - "ca": "Les fotografies que facis es publicaran sota CC-BY 4.0 que requereix que qualsevol que utilitzi la vostra imatge us ha de donar crèdits", - "de": "Die von Ihnen aufgenommenen Bilder werden mit CC-BY 4.0 lizenziert, was bedeutet, dass jeder, der Ihr Bild verwendet, Sie als Urheber nennen muss", - "nl": "Afbeeldingen die je toevoegt zullen gepubliceerd worden met de CC-BY 4.0-licentie. Dit betekent dat iedereen je afbeelding mag gebruiken voor elke toepassing mits het vermelden van je naam", - "cs": "Pořízené fotografie budou licencovány pod CC-BY 4.0, což vyžaduje, aby vás uvedl každý, kdo použije vaší fotku", - "pt": "As fotos que você tirar serão licenciadas com CC-BY 4.0, que exige que todos que usam sua foto atribuam a você" - } - }, - { - "if": "mapcomplete-pictures-license=CC-BY-SA 4.0", - "icon": "./assets/layers/usersettings/scale.svg", - "then": { - "en": "Pictures you take will be licensed with CC-BY-SA 4.0 which means that everyone using your picture must attribute you and that derivatives of your picture must be reshared with the same license.", - "de": "Die von Ihnen aufgenommenen Bilder werden mit CC-BY-SA 4.0 lizenziert, was bedeutet, dass jeder, der Ihr Bild verwendet, Sie als Urheber nennen muss und dass Ableitungen Ihres Bildes mit der gleichen Lizenz weitergegeben werden müssen.", - "nl": "Afbeeldingen die je toevoegt zullen gepubliceerd worden met de CC-BY-SA 4.0-licentie. Dit betekent dat iedereen je afbeelding mag gebruiken voor elke toepassing mits het vermelden van je naam en dat afgeleide werken van je afbeelding ook ondere deze licentie moeten gepubliceerd worden.", - "cs": "Pořízené fotografie budou licencovány pod CC-BY-SA 4.0, což vyžaduje, aby vás uvedl každý, kdo použije vaší fotku a že odvozené fotky musí být dále sdíleny se stejnou licencí.", - "ca": "Les imatges que feu tindran una llicència amb CC-BY-SA 4.0 el que significa que tothom que utilitzi la vostra imatge us ha d'atribuir i que els derivats de la vostra imatge s'han de tornar a compartir amb la mateixa llicència.", - "fr": "Les photos que vous prenez seront sous la licence CC-BY-SA 4.0 ce qui signifie que quiconque utilisant votre photo doit vous créditer et que les modifications apportées à votre photo doivent être repartagées avec la même licence.", - "pt": "As fotos que você tirar serão licenciadas com CC-BY-SA 4.0, o que significa que todos que usarem sua foto devem atribuí-lo e que os derivados de sua foto devem ser compartilhados novamente com a mesma licença." + "nl": "Geef aan hoever je je ongeveer bevindt ten opzichte van objecten die je wijzigt in OpenStreetMap. Dit helpt andere bijdagers te begrijpen welke wijzigingen je waarom maakt.", + "cs": "Při provádění změn v OpenStreetMap zhruba uveďte, jak daleko jste byli od změněných objektů. To pomůže ostatním přispěvatelům pochopit, jak jste změnu provedli", + "hu": "Az OpenStreetMap szerkesztésekor hozzávetőlegesen jelenjék meg, hogy milyen messze voltál a módosított objektumoktól. A többi térképész így jobban látja, hogy hogyan végezted a szerkesztést", + "uk": "Вносячи зміни до OpenStreetMap, приблизно вказуйте, як далеко ви знаходилися від змінених обʼєктів. Це допоможе іншим учасникам зрозуміти, як ви внесли зміни", + "es": "Al realizar cambios en OpenStreetMap, indicar aproximadamente qué tan lejos estabas de los objetos modificados. Esto ayuda a otros colaboradores a comprender cómo realizaste el cambio" } } ] @@ -872,11 +974,17 @@ "id": "sync-visited-themes", "question": { "en": "Should the thematic maps you visit be saved?", - "de": "Sollen besuchte Themenkarten gespeichert werden?" + "de": "Sollen besuchte Themenkarten gespeichert werden?", + "hu": "El legyenek-e mentve a meglátogatott tematikus térképek?", + "uk": "Чи потрібно зберігати тематичні карти, які ви відвідуєте?", + "es": "¿Se deben guardar los mapas temáticos que visitas?" }, "questionHint": { "en": "If you visit a map about a certain topic, MapComplete can remember this and offer this as suggestion.", - "de": "Besuchte Themenkarten, können von MapComplete gespeichert und als Vorschlag angeboten werden." + "de": "Besuchte Themenkarten, können von MapComplete gespeichert und als Vorschlag angeboten werden.", + "hu": "A MapComplete meg tudja jegyezni, hogy megnéztél egy bizonyos témájú térképet, és ezt később felajánlja javaslatként.", + "uk": "Якщо ви відвідуєте мапу на певну тему, MapComplete може запам'ятати це і запропонувати її як підказку.", + "es": "Si visitas un mapa sobre un tema determinado, MapComplete puede recordarlo y ofrecerlo como sugerencia." }, "mappings": [ { @@ -884,21 +992,31 @@ "alsoShowIf": "mapcomplete-preference-theme-history=", "then": { "en": "Save the visited thematic maps and sync them via openstreetmap.org. OpenStreetMap and all apps you use can see this history", - "de": "Besuchte Themenkarten speichern und über opentreetmap.org synchronisieren. OpenStreetMap und alle verwendeten Programme können diesen Verlauf sehen" + "de": "Besuchte Themenkarten speichern und über opentreetmap.org synchronisieren. OpenStreetMap und alle verwendeten Programme können diesen Verlauf sehen", + "cs": "Uložit navštívené tematické mapy a synchronizovat je prostřednictvím openstreetmap.org. OpenStreetMap a všechny aplikace, které používáte, mohou tuto historii vidět", + "hu": "Az openstreetmap.org-on legyenek elmentve és szinkronizálva az általam megnézett tematikus térképek. Ezeket az előzményeket az OpenStreetMap és az összes hozzá kapcsolódó alkalmazás láthatja", + "uk": "Зберігайте відвідані тематичні карти та синхронізуйте їх через openstreetmap.org. OpenStreetMap та всі програми, якими ви користуєтесь, можуть бачити цю історію", + "es": "Guardar los mapas temáticos visitados y sincronizarlos a través de openstreetmap.org. OpenStreetMap y todas las aplicaciones que uses pueden ver este historial" } }, { "if": "mapcomplete-preference-theme-history=local", "then": { "en": "Save the visited thematic maps on my device", - "de": "Besuchte Themenkarten auf meinem Gerät speichern" + "de": "Besuchte Themenkarten auf meinem Gerät speichern", + "hu": "A saját készülékemen legyenek elmentve a meglátogatott tematikus térképek", + "uk": "Зберегти відвідані тематичні карти на моєму пристрої", + "es": "Guardar los mapas temáticos visitados en mi dispositivo" } }, { "if": "mapcomplete-preference-theme-history=no", "then": { "en": "Don't save visited thematic maps", - "de": "Besuchte Themenkarten nicht auf meinem Gerät speichern" + "de": "Besuchte Themenkarten nicht auf meinem Gerät speichern", + "hu": "Ne legyenek elmentve a megnézett térképek", + "uk": "Не зберігайте відвідані тематичні мапи", + "es": "No guardar los mapas temáticos visitados" } } ] @@ -907,11 +1025,17 @@ "id": "sync-visited-locations", "question": { "en": "Should the locations you search for and inspect be remembered?", - "de": "Sollen die gesuchten und überprüften Orte gespeichert werden?" + "de": "Sollen die gesuchten und überprüften Orte gespeichert werden?", + "hu": "Meg legyenek-e jegyezve az általad megkeresett és szerkesztett helyek?", + "uk": "Чи потрібно запам'ятовувати місця, які ви шукаєте та оглядаєте?", + "es": "¿Se deben recordar las ubicaciones que buscas e inspeccionas?" }, "questionHint": { "en": "Those locations will be offered in the search menu", - "de": "Diese Orte werden im Suchmenü angezeigt" + "de": "Diese Orte werden im Suchmenü angezeigt", + "hu": "Ezek a helyszínek a keresési menüben lesznek felajánlva", + "uk": "Ці локації будуть запропоновані в меню пошуку", + "es": "Esas ubicaciones se ofrecerán en el menú de búsqueda" }, "mappings": [ { @@ -919,21 +1043,30 @@ "alsoShowIf": "mapcomplete-preference-search-history=", "then": { "en": "Save the locations you search for and inspect and sync them via openstreetmap.org. OpenStreetMap and all apps you use can see this history", - "de": "Gesuchte und überprüfte Orte speichern und über openstreetmap.org synchronisieren. OpenStreetMap und alle verwendeten Programme können diesen Verlauf sehen" + "de": "Gesuchte und überprüfte Orte speichern und über openstreetmap.org synchronisieren. OpenStreetMap und alle verwendeten Programme können diesen Verlauf sehen", + "hu": "Az openstreetmap.org-on legyenek elmentve az általam megkeresett és szerkesztett helyek. Ezeket az előzményeket az OpenStreetMap és az összes hozzá kapcsolódó alkalmazás láthatja", + "uk": "Зберігайте місця, які ви шукаєте, переглядайте та синхронізуйте їх через openstreetmap.org. OpenStreetMap та всі програми, якими ви користуєтесь, можуть бачити цю історію", + "es": "Guardar las ubicaciones que buscas e inspeccionas y sincronizarlas a través de openstreetmap.org. OpenStreetMap y todas las aplicaciones que uses pueden ver este historial" } }, { "if": "mapcomplete-preference-search-history=local", "then": { "en": "Save the locations you search for and inspect on my device", - "de": "Gesuchte und überprüfte Orte auf meinem Gerät speichern" + "de": "Gesuchte und überprüfte Orte auf meinem Gerät speichern", + "hu": "A saját készülékemen legyenek elmentve az általam megkeresett és szerkesztett helyek", + "uk": "Зберігайте місця, які ви шукаєте та перевіряєте, на моєму пристрої", + "es": "Guardar las ubicaciones que buscas e inspeccionas en mi dispositivo" } }, { "if": "mapcomplete-preference-search-history=no", "then": { "en": "Don't save the locations you search for and inspect ", - "de": "Gesuchte und überprüfte Orte nicht auf meinem Gerät speichern " + "de": "Gesuchte und überprüfte Orte nicht auf meinem Gerät speichern ", + "hu": "Ne legyenek elmentve az általam megkeresett és szerkesztett helyek ", + "uk": "Не зберігайте місця, які ви шукаєте та перевіряєте ", + "es": "No guardar las ubicaciones que buscas e inspeccionas " } } ] @@ -942,7 +1075,10 @@ "id": "title-id", "render": { "en": "

Mangrove ID management

", - "de": "

Mangrove ID Management

" + "de": "

Mangrove ID Management

", + "hu": "

Mangrove ID (azonosító) kezelése

", + "uk": "

Керування ідентифікатором Mangrove

", + "es": "

Gestión de ID de Mangrove

" } }, { @@ -960,7 +1096,9 @@ "da": "Hent den private nøgle til din Mangrove-konto", "ca": "Baixeu la clau privada del vostre compte de Mangrove", "cs": "Stáhnout soukromý klíč pro Mangrove účet", - "nl": "Download de private sleutel van je Mangrove-account" + "nl": "Download de private sleutel van je Mangrove-account", + "hu": "Mangrove-fiók privát kulcsának letöltése", + "es": "Descargar la clave privada para tu cuenta de Mangrove" } }, "class": "button", @@ -970,7 +1108,10 @@ "da": "Enhver, der har denne fil, kan lave ændringer med din identitet", "ca": "Qualsevol persona que tingui aquest fitxer pot fer ressenyes amb la vostra identitat", "cs": "Kdokoli, kdo má tento soubor, může provádět recenze s vaší identitou", - "nl": "Iedereen die dit bestand bezit, kan met jouw identiteit wijzigingen maken" + "nl": "Iedereen die dit bestand bezit, kan met jouw identiteit wijzigingen maken", + "hu": "Bárki, aki birtokában van ennek a fájlnak, a te személyazonosságoddal írhat értékelést", + "uk": "Будь-хто, хто має цей файл, може робити рецензії з вашим ім'ям", + "es": "Cualquier persona que posea este archivo puede hacer revisiones con tu identidad" } } }, @@ -984,14 +1125,19 @@ "en": "Import a mangrove private key from backup", "nl": "Herstel een Mangrove Private sleutel van backup", "de": "Privaten Mangrove-Schlüssel aus Backup importieren", - "da": "Indlæs en privat Mangrove-nøgle fra backup" + "da": "Indlæs en privat Mangrove-nøgle fra backup", + "hu": "Mangrove privát kulcs importálása biztonsági mentésből", + "es": "Importar una clave privada de Mangrove desde una copia de seguridad" } }, "after": { "en": "Uploading a private key erases your current private key. If you made reviews with it, download your current private key first", "de": "Wenn du einen privaten Schlüssel hochlädst, wird dein aktueller privater Schlüssel gelöscht. Wenn du damit Rezensionen geschrieben hast, lade zuerst deinen aktuellen privaten Schlüssel hoch", "nl": "Een private sleutel uploaden overschrijft je huidige private sleutel. Indien je beoordelingen maakte met je huidige private sleutel, download deze dan eerst", - "da": "Når du uploader en privat nøgle, slettes din nuværende private nøgle. Hvis du har brugt den til at lave anmeldelser, kan du downloade din private nøgle først" + "da": "Når du uploader en privat nøgle, slettes din nuværende private nøgle. Hvis du har brugt den til at lave anmeldelser, kan du downloade din private nøgle først", + "hu": "A privát kulcs feltöltése törli a jelenlegi privát kulcsot. Ha írtál vele értékelést, akkor először töltsd le a jelenlegi privát kulcsodat", + "uk": "Завантаження приватного ключа видаляє ваш поточний приватний ключ. Якщо ви робили відгуки з його допомогою, спочатку завантажте поточний приватний ключ", + "es": "Subir una clave privada borra tu clave privada actual. Si hiciste revisiones con ella, descarga primero tu clave privada actual" } } }, @@ -1015,7 +1161,10 @@ "fr": "Voulez-vous aider à traduire MapComplete ?", "pt": "Quer ajudar na tradução do MapComplete?", "nl": "Wil je MapComplete helpen vertalen?", - "da": "Vil du hjælpe med at oversætte MapComplete?" + "da": "Vil du hjælpe med at oversætte MapComplete?", + "hu": "Szívesen segítenél a MapComplete fordításában?", + "uk": "Ви хочете допомогти з перекладом MapComplete?", + "es": "¿Quieres ayudar a traducir MapComplete?" }, "mappings": [ { @@ -1028,7 +1177,10 @@ "fr": "Ne pas afficher de bouton pour modifier les traductions rapidement", "pt": "Não mostrar um botão para alterar as traduções rapidamente", "cs": "Nezobrazovat tlačítko pro rychlou změnu překladů", - "nl": "Verberg de knoppen om een vertaling in te voeren." + "nl": "Verberg de knoppen om een vertaling in te voeren.", + "hu": "Ne jelenjék meg a fordítások gyors módosítására szolgáló gomb", + "uk": "Не показувати кнопку для швидкої зміни перекладу", + "es": "No mostrar un botón para cambiar rápidamente las traducciones" } }, { @@ -1042,7 +1194,10 @@ "pt": "Mostrar um botão para abrir traduções rapidamente ao usar o MapComplete em uma tela grande", "da": "Vis en knap for hurtigt at åbne oversættelser, når du bruger MapComplete på en stor skærm", "cs": "Zobrazit tlačítko pro rychlé otevření překladů při použití MapComplete na velké obrazovce", - "nl": "Toon een knopje om snel vertalingen te maken indien MapComplete op een groot scherm is geopend" + "nl": "Toon een knopje om snel vertalingen te maken indien MapComplete op een groot scherm is geopend", + "hu": "Jelenítsen meg egy gombot a fordítások gyors megnyitásához a MapComplete nagy képernyőn történő használatakor", + "uk": "Показати кнопку для швидкого відкриття перекладів при використанні MapComplete на великому екрані", + "es": "Mostrar un botón para abrir rápidamente las traducciones cuando se usa MapComplete en una pantalla grande" } }, { @@ -1055,7 +1210,10 @@ "fr": "Toujours afficher les boutons de traduction, même sur mobile", "pt": "Mostrar sempre os botões de tradução, inclusive no celular", "cs": "Vždy zobrazovat tlačítka překladu, a to i na mobilu", - "nl": "Toon een knopje om snel vertalingen te maken op mobiel en op grote schermen" + "nl": "Toon een knopje om snel vertalingen te maken op mobiel en op grote schermen", + "hu": "Mindig jelenítse meg a fordítási gombokat, mobilon is", + "uk": "Завжди показуйте кнопки перекладу, в тому числі на мобільних пристроях", + "es": "Mostrar siempre los botones de traducción, incluso en dispositivos móviles" } } ] @@ -1079,11 +1237,13 @@ "da": "Klik på 'oversæt'-ikonet ved siden af en streng for at indtaste eller opdatere et stykke tekst. Du skal have en Weblate-konto for at kunne gøre dette. Opret en med dit OSM-brugernavn for automatisk at låse oversættelsestilstanden op.", "de": "Klicken Sie auf das Übersetzungssymbol neben einer Zeichenfolge, um den Übersetzungstext einzugeben oder zu aktualisieren. Dazu benötigen Sie ein Weblate-Konto. Erstellen Sie eines mit Ihrem OSM-Benutzernamen, um den Übersetzungsmodus automatisch freizuschalten.", "en": "Click the 'translate'-icon next to a string to enter or update a piece of text. You need a Weblate-account for this. Create one with your OSM-username to automatically unlock translation mode.", - "es": "Haz clic en el icono 'traducir' al lado de una cadena para introducir o actualizar un texto. Necesitas una cuenta de Weblate para esto. Crea una con tu usuario de OSM para desbloquear el modo de traducción automáticamente.", + "es": "Haz clic en el icono 'traducir' junto a una cadena para ingresar o actualizar un fragmento de texto. Necesitas una cuenta de Weblate para esto. Crea una con tu nombre de usuario de OSM para desbloquear automáticamente el modo de traducción.", "fr": "Cliquez sur l'icône \"traduire\" à côté d'une chaîne de caractères pour saisir ou mettre à jour la chaine de texte. Vous aurez besoin d'un compte Weblate pour cela. Créez-en un avec votre nom d'utilisateur OSM pour déverrouiller automatiquement le mode traduction.", "nl": "Klik op het 'vertaal'-icoontje die naast een stukje tekst staat om deze tekst te vertalen of aan te passen. Hiervoor heb je een (gratis) Weblate-account nodig. Indien je jouw account maakt met dezelfde naam als je OSM-gebruikersnaam, dan zullen de vertaalknoppen automatisch verschijnen.", "zh_Hant": "點字串旁邊的 'translate'-icon 來輸入或是更新一段文字。你需要 Weblate 帳號。用你 OSM 帳號名稱來創建帳號,並且自動解鎖翻譯模式。", - "cs": "Chcete-li zadat nebo aktualizovat část textu, klikněte na ikonu „přeložit“ vedle řetězce. K tomu potřebujete účet Weblate. Vytvořte si jej s vaším uživatelským jménem OSM, abyste automaticky odemkli režim překladu." + "cs": "Chcete-li zadat nebo aktualizovat část textu, klikněte na ikonu „přeložit“ vedle řetězce. K tomu potřebujete účet Weblate. Vytvořte si jej s vaším uživatelským jménem OSM, abyste automaticky odemkli režim překladu.", + "hu": "Kattints a „fordítás” ikonra egy-egy szövegrészlet mellett, ha szeretnéd lefordítani vagy kijavítani. Ehhez szükséged lesz egy Weblate-fiókra. Létrehozhatsz egyet az OSM-felhasználóneveddel, hogy automatikusan fel legyen oldva a fordítási mód.", + "uk": "Натисніть на іконку \"перекласти\" поруч з рядком, щоб ввести або оновити фрагмент тексту. Для цього вам потрібен обліковий запис Weblate. Створіть його з вашим OSM-іменем користувача, щоб автоматично розблокувати режим перекладу." }, "icon": "./assets/svg/translate.svg" } @@ -1105,7 +1265,9 @@ "nl": "Vertalingen voor {_theme} in {_language} zijn momenteel op {_translation_percentage}%: van {_translation_total} teksten zijn er reeds {_translation_translated_count} vertaald", "zh_Hant": "{_theme} 的 {_language} 翻譯目前是 {_translation_percentage}%:{_translation_total} 中的 {_translation_translated_count} 已經翻譯了", "fr": "Les traductions pour {_theme} en {_language} sont à {_translation_percentage} % : {_translation_translated_count} chaînes traduites sur {_translation_total}", - "cs": "Překlady pro {_theme} v {_language} jsou na úrovni {_translation_percentage}%: {_translation_translated_count} z {_translation_total} je přeloženo" + "cs": "Překlady pro {_theme} v {_language} jsou na úrovni {_translation_percentage}%: {_translation_translated_count} z {_translation_total} je přeloženo", + "hu": "A {_theme} térkép {_language} nyelvű fordításai {_translation_percentage}%-ban készen vannak: {_translation_total} szövegrészletből {_translation_translated_count} kész", + "uk": "Переклади {_theme} {_language} становлять {_translation_percentage}%: {_translation_translated_count} рядків із {_translation_total} перекладено" }, "condition": { "or": [ @@ -1124,7 +1286,9 @@ "de": "Vollständig übersetzt", "ca": "Completament traduït", "pt": "Traduzido completamente", - "cs": "Kompletně přeloženo" + "cs": "Kompletně přeloženo", + "hu": "Teljesen le van fordítva", + "es": "Traducido completamente" } } ] @@ -1157,7 +1321,10 @@ "id": "debug-title", "render": { "en": "

Debugging options

", - "de": "

Debugging-Optionen

" + "de": "

Debugging-Optionen

", + "hu": "

Hibakeresési lehetőségek

", + "uk": "

Опції налагодження

", + "es": "

Opciones de depuración

" } }, { @@ -1168,12 +1335,17 @@ "type": "clear_caches", "text": { "en": "Clear caches", - "de": "Caches löschen" + "de": "Caches löschen", + "hu": "Gyorsítótárak törlése", + "es": "Limpiar cachés" } }, "after": { "en": "Clearing the caches will delete locally downloaded data and code. You will remain logged in and your settings will be preserved. No data should be lost", - "de": "Wenn du die Caches löschst, werden lokal heruntergeladene Daten und Code gelöscht. Du bleibst eingeloggt und deine Einstellungen bleiben erhalten. Es sollten keine Daten verloren gehen" + "de": "Wenn du die Caches löschst, werden lokal heruntergeladene Daten und Code gelöscht. Du bleibst eingeloggt und deine Einstellungen bleiben erhalten. Es sollten keine Daten verloren gehen", + "hu": "A gyorsítótárak törlése a helyileg letöltött adatokat és kódot is törli. Ugyanakkor továbbra is bejelentkezve maradsz, és a beállításaid megmaradnak. Adat nem vész el", + "uk": "Очищення кешу призведе до видалення локально завантажених даних і коду. Ви залишитеся в системі, і ваші налаштування будуть збережені. Дані не будуть втрачені", + "es": "Limpiar las cachés eliminará los datos y el código descargados localmente. Seguirás conectado y tus configuraciones se conservarán. No se deben perder datos" } } }, @@ -1191,7 +1363,10 @@ "cs": "Zobrazit informace o ladění v nastavení?", "ca": "Vols mostrar la informació de depuració de la configuració de l'usuari?", "pt": "Mostrar informações de depuração das configurações do usuário?", - "nl": "Moet debug-informatie getoond worden?" + "nl": "Moet debug-informatie getoond worden?", + "hu": "Megjelenjenek-e a felhasználónak a hibakeresési (debug) információk?", + "uk": "Показувати інформацію про налагодження налаштувань користувача?", + "es": "¿Mostrar información de depuración de la configuración del usuario?" }, "mappings": [ { @@ -1203,7 +1378,10 @@ "cs": "Zobrazit informace o ladění", "ca": "Mostra la informació de depuració", "pt": "Mostrar informações de depuração", - "nl": "Toon debug-informatie" + "nl": "Toon debug-informatie", + "hu": "Jelenjenek meg a hibakeresési információk", + "uk": "Показати інформацію про налагодження", + "es": "Mostrar información de depuración" } }, { @@ -1215,7 +1393,10 @@ "cs": "Nezobrazovat informace o ladění", "ca": "No mostris informació de depuració", "pt": "Não mostrar informações de depuração", - "nl": "Verberg debug-informatie" + "nl": "Verberg debug-informatie", + "hu": "Ne jelenjenek meg hibakeresési információk", + "uk": "Не показувати інформацію про налагодження", + "es": "No mostrar información de depuración" } }, { @@ -1227,7 +1408,10 @@ "pt": "Não mostrar informações de depuração", "da": "Vis ikke debug-informationer", "ca": "No mostris informació de depuració", - "nl": "Verberg debug-informatie" + "nl": "Verberg debug-informatie", + "hu": "Ne jelenjenek meg hibakeresési információk", + "uk": "Не показувати інформацію про налагодження", + "es": "No mostrar información de depuración" }, "hideInAnswer": true } diff --git a/assets/layers/vending_machine/vending_machine.json b/assets/layers/vending_machine/vending_machine.json index a677baedb..89b085ca5 100644 --- a/assets/layers/vending_machine/vending_machine.json +++ b/assets/layers/vending_machine/vending_machine.json @@ -6,7 +6,8 @@ "de": "Verkaufsautomaten", "fr": "Distributeurs", "ca": "Màquines expenedores", - "cs": "Prodejní automaty" + "cs": "Prodejní automaty", + "es": "Máquinas Expendedoras" }, "description": { "en": "Layer showing vending machines", @@ -14,7 +15,8 @@ "de": "Ebene mit Verkaufsautomaten", "fr": "Couche affichant les distributeurs", "ca": "Capa que mostra màquines expenedores", - "cs": "Vrstva zobrazující prodejní automaty" + "cs": "Vrstva zobrazující prodejní automaty", + "es": "Capa que muestra máquinas expendedoras" }, "source": { "osmTags": { @@ -34,7 +36,8 @@ "de": "Verkaufsautomat", "fr": "Distributeur", "ca": "Màquina expenedora", - "cs": "Prodejní automat" + "cs": "Prodejní automat", + "es": "Máquina expendedora" }, "mappings": [ { @@ -45,7 +48,8 @@ "de": "Verkaufsautomat {name}", "fr": "Distributeur {name}", "ca": "Maquina expenedora {name}", - "cs": "Prodejní automat {name}" + "cs": "Prodejní automat {name}", + "es": "Máquina expendedora {name}" } }, { @@ -56,7 +60,8 @@ "de": "Verkaufsautomat {brand}", "fr": "Distributeur {brand}", "ca": "Màquina expenedora {brand}", - "cs": "Prodejní automat {brand}" + "cs": "Prodejní automat {brand}", + "es": "Máquina expendedora {brand}" } } ] @@ -362,7 +367,8 @@ "de": "ein Verkaufsautomat", "fr": "un distributeur", "ca": "una màquina expenedora", - "cs": "prodejní automat" + "cs": "prodejní automat", + "es": "una máquina expendedora" }, "tags": [ "amenity=vending_machine" @@ -380,7 +386,8 @@ "de": "Was wird in diesem Automaten verkauft?", "fr": "Que vent ce distributeur ?", "ca": "Que ven aquesta màquina expenedora?", - "cs": "Co tento automat prodává?" + "cs": "Co tento automat prodává?", + "es": "¿Qué vende esta máquina expendedora?" }, "freeform": { "key": "vending", @@ -394,7 +401,8 @@ "de": "Dieser Automat verkauft {vending}", "fr": "Ce distributeur vent {vending}", "ca": "Aquesta màquina expenedora ven {vending}", - "cs": "Tento automat prodává {vending}" + "cs": "Tento automat prodává {vending}", + "es": "Esta máquina expendedora vende {vending}" }, "mappings": [ { @@ -405,7 +413,8 @@ "de": "Getränke werden verkauft", "fr": "Vent des boissons", "ca": "Es venen begudes", - "cs": "Prodává nápoje" + "cs": "Prodává nápoje", + "es": "Se venden bebidas" }, "icon": "./assets/layers/id_presets/temaki-bottles.svg" }, @@ -417,7 +426,8 @@ "de": "Süßigkeiten werden verkauft", "fr": "Vent des confiseries", "ca": "Es venen llaminadures", - "cs": "Prodává sladkosti" + "cs": "Prodává sladkosti", + "es": "Se venden dulces" }, "icon": "./assets/layers/id_presets/maki-confectionery.svg" }, @@ -429,7 +439,8 @@ "de": "Lebensmittel werden verkauft", "fr": "Vent de la nourriture", "ca": "Es ven menjar", - "cs": "Prodává jídlo" + "cs": "Prodává jídlo", + "es": "Se vende comida" }, "icon": "./assets/layers/vending_machine/utensils.svg" }, @@ -441,7 +452,8 @@ "de": "Zigaretten werden verkauft", "fr": "Vent des cigarettes", "ca": "Es ven tabaco", - "cs": "Prodává cigarety" + "cs": "Prodává cigarety", + "es": "Se venden cigarrillos" }, "icon": "./assets/layers/vending_machine/smoking.svg" }, @@ -453,7 +465,8 @@ "de": "Kondome werden verkauft", "fr": "Vent des préservatifs", "ca": "Es venen preservatius", - "cs": "Prodává kondomy" + "cs": "Prodává kondomy", + "es": "Se venden preservativos" }, "icon": "./assets/layers/vending_machine/condom.svg" }, @@ -465,7 +478,8 @@ "de": "Kaffee wird verkauft", "fr": "Vent du café", "ca": "Es ven cafè", - "cs": "Prodává kafe" + "cs": "Prodává kafe", + "es": "Se vende café" }, "icon": "./assets/layers/vending_machine/mug-saucer.svg" }, @@ -477,7 +491,8 @@ "de": "Trinkwasser wird verkauft", "fr": "Vent de l'eau", "ca": "Es ven aigua", - "cs": "Prodává pitnou vodu" + "cs": "Prodává pitnou vodu", + "es": "Se vende agua potable" }, "icon": "./assets/layers/id_presets/temaki-water_bottle.svg" }, @@ -489,7 +504,8 @@ "de": "Zeitungen werden verkauft", "fr": "Vent des journaux", "ca": "Es venen diaris", - "cs": "Prodává noviny" + "cs": "Prodává noviny", + "es": "Se venden periódicos" }, "icon": "./assets/layers/id_presets/fas-newspaper.svg" }, @@ -503,7 +519,7 @@ "ca": "Es venen càmeres interiors de bicicletes", "cs": "Prodává duše na kola", "pt_BR": "Câmaras de ar para bicicletas são vendidas aqui", - "es": "Aquí se venden cámaras de aire para bicicletas", + "es": "Se venden cámaras de aire para bicicleta", "pt": "Câmaras de ar para bicicletas são vendidas aqui" } }, @@ -515,7 +531,8 @@ "de": "Milch wird verkauft", "fr": "Vent du lait", "ca": "Es ven llet", - "cs": "Prodává mléko" + "cs": "Prodává mléko", + "es": "Se vende leche" }, "icon": "./assets/layers/vending_machine/cow.svg" }, @@ -527,7 +544,8 @@ "de": "Brot wird verkauft", "fr": "Vent du pain", "ca": "Es ven pa", - "cs": "Prodává chléb" + "cs": "Prodává chléb", + "es": "Se vende pan" }, "icon": "./assets/layers/id_presets/maki-bakery.svg" }, @@ -539,7 +557,8 @@ "de": "Eier werden verkauft", "fr": "Vent des œufs", "ca": "Es venen ous", - "cs": "Prodává vejce" + "cs": "Prodává vejce", + "es": "Se venden huevos" }, "icon": "./assets/layers/vending_machine/egg.svg" }, @@ -548,7 +567,8 @@ "then": { "en": "Ice cream is sold", "nl": "IJs wordt verkocht", - "de": "Speiseeis wird verkauft" + "de": "Speiseeis wird verkauft", + "es": "Se venden helados" }, "icon": "./assets/layers/ice_cream/ice_cream.svg" }, @@ -560,7 +580,8 @@ "de": "Käse wird verkauft", "fr": "Vent du fromage", "ca": "Es ven formatge", - "cs": "Prodává sýr" + "cs": "Prodává sýr", + "es": "Se vende queso" }, "icon": "./assets/layers/id_presets/fas-cheese.svg" }, @@ -572,7 +593,8 @@ "de": "Honig wird verkauft", "fr": "Vent du miel", "ca": "Es ven mel", - "cs": "Prodává med" + "cs": "Prodává med", + "es": "Se vende miel" }, "icon": "./assets/layers/vending_machine/honey.svg" }, @@ -584,7 +606,8 @@ "de": "Kartoffeln werden verkauft", "fr": "Vent des pommes de terre", "ca": "Es venen papes", - "cs": "Prodává brambory" + "cs": "Prodává brambory", + "es": "Se venden patatas" }, "icon": "./assets/layers/vending_machine/potato.svg" }, @@ -595,7 +618,8 @@ "nl": "Vlees wordt verkocht", "ca": "Es venen productes carnis", "de": "Fleisch wird verkauft", - "cs": "Prodává maso" + "cs": "Prodává maso", + "es": "Se vende carne" }, "icon": "./assets/layers/id_presets/temaki-meat.svg" }, @@ -606,7 +630,8 @@ "nl": "Fruit wordt verkocht", "de": "Obst wird verkauft", "cs": "Prodává ovoce", - "ca": "Es ven fruita" + "ca": "Es ven fruita", + "es": "Se vende fruta" }, "icon": "./assets/layers/vending_machine/fruits.svg" }, @@ -617,7 +642,8 @@ "nl": "Aardbeien worden verkocht", "de": "Erdbeeren werden verkauft", "cs": "Prodává jahody", - "ca": "Es venen maduixes" + "ca": "Es venen maduixes", + "es": "Se venden fresas" }, "icon": "./assets/layers/vending_machine/strawberry.svg" }, @@ -629,7 +655,8 @@ "de": "Blumen werden verkauft", "fr": "Vent des fleurs", "ca": "Es venen flors", - "cs": "Prodává květiny" + "cs": "Prodává květiny", + "es": "Se venden flores" }, "icon": "./assets/layers/id_presets/maki-florist.svg" }, @@ -640,7 +667,8 @@ "nl": "Parkeerkaarten worden verkocht", "de": "Parkscheine werden verkauft", "ca": "Es venen tiquets d'aparcament", - "cs": "Prodává parkovací lístky" + "cs": "Prodává parkovací lístky", + "es": "Se venden tickets de aparcamiento" }, "icon": "./assets/layers/parking_ticket_machine/parking_tickets.svg" }, @@ -650,7 +678,8 @@ "en": "Pressed pennies are sold", "ca": "Es venen cèntims premsats", "de": "Souvenirmünzen werden verkauft", - "cs": "Prodává pamětní mince/lisované" + "cs": "Prodává pamětní mince/lisované", + "es": "Se venden monedas conmemorativas" }, "icon": "./assets/themes/elongated_coin/penny.svg" }, @@ -661,7 +690,8 @@ "nl": "Openbaar vervoerkaartjes worden verkocht", "de": "Fahrscheine werden verkauft", "ca": "Es venen bitllets de transport públic", - "cs": "Prodává lístky na MHD" + "cs": "Prodává lístky na MHD", + "es": "Se venden billetes de transporte público" }, "icon": "./assets/themes/stations/public_transport_tickets.svg" }, @@ -674,7 +704,7 @@ "cs": "Prodává světla na kolo", "ca": "Es venen llums per a bicicletes", "pt_BR": "Luzes para bicicleta são vendidas aqui", - "es": "Las luces para bicicletas se venden aquí", + "es": "Se venden luces para bicicleta", "pt": "Luzes para bicicleta são vendidas aqui" } }, @@ -687,7 +717,7 @@ "cs": "Prodává rukavice", "ca": "Es venen guants", "pt_BR": "Luvas são vendidas aqui", - "es": "Los guantes se venden aquí", + "es": "Se venden guantes", "pt": "Luvas são vendidas aqui" } }, @@ -700,7 +730,7 @@ "cs": "Prodává sady na opravu jízdních kol", "ca": "Es venen kits de reparació de bicicletes", "pt_BR": "Kits para reparo de bicicleta são vendidos aqui", - "es": "Los kits de reparación de bicicletas se venden aquí", + "es": "Se venden kits de reparación para bicicletas", "pt": "Kits para reparo de bicicleta são vendidos aqui" } }, @@ -713,7 +743,7 @@ "cs": "Prodává pumpy na kolo", "ca": "Es venen bombes de bicicletes", "pt_BR": "Bombas de ar para bicicleta são vendidas aqui", - "es": "Las bombas para bicicletas se venden aquí", + "es": "Se venden bombas para bicicletas", "pt": "Bombas de ar para bicicleta são vendidas aqui" } }, @@ -726,7 +756,7 @@ "cs": "Prodává zámky na kolo", "ca": "Es venen cadenats per a bicicletes", "pt_BR": "Cadeados para bicicleta são vendidos aqui", - "es": "Aquí se venden candados para bicicletas", + "es": "Se venden candados para bicicletas", "pt": "Cadeados para bicicleta são vendidos aqui" } } @@ -741,7 +771,7 @@ "cs": "Jaká značka duší je zde prodávána?", "nl": "Welk merk banden wordt hier verkocht?", "pt_BR": "Quais marcas de câmara de ar são vendidas aqui?", - "es": "¿Qué cámaras se venden aquí?", + "es": "¿Qué marca de cámaras se venden aquí?", "pt": "Quais marcas de câmara de ar são vendidas aqui?" }, "condition": "vending~.*bicycle_tube.*", @@ -755,7 +785,7 @@ "cs": "{brand} duše jsou zde prodávány", "nl": "{brand} banden worden hier verkocht", "pt_BR": "câmaras de ar {brand} são vendidas aqui", - "es": "Las cámaras {brand} se venden aquí", + "es": "Aquí se venden cámaras {brand}", "pt": "câmaras de ar {brand} são vendidas aqui" }, "mappings": [ @@ -768,7 +798,7 @@ "cs": "Continental duše jsou zde prodávány", "nl": "Continental banden worden hier verkocht", "pt_BR": "Câmaras de ar Continental são vendidas aqui", - "es": "Las cámaras Continental se venden aquí", + "es": "Aquí se venden cámaras Continental", "pt": "Câmaras de ar Continental são vendidas aqui" } }, @@ -781,7 +811,7 @@ "cs": "Schwalbe duše jsou zde prodávány", "nl": "Schwalbe banden worden hier verkocht", "pt_BR": "Câmaras de ar Schwalbe são vendidas aqui", - "es": "Las cámaras Schwalbe se venden aquí", + "es": "Aquí se venden cámaras Schwalbe", "pt": "Câmaras de ar Schwalbe são vendidas aqui" } } @@ -801,7 +831,8 @@ "de": "Wer betreibt diesen Verkaufsautomaten?", "fr": "Qui exploite ce distributeur ?", "ca": "Qui opera aquesta màquina expenedora?", - "cs": "Kdo provozuje tento automat?" + "cs": "Kdo provozuje tento automat?", + "es": "¿Quién opera esta máquina expendedora?" }, "freeform": { "key": "operator", @@ -811,7 +842,8 @@ "de": "Name des Betreibers", "fr": "Nom de l'exploitant", "ca": "Nom de l'operadora", - "cs": "Jméno provozovatele" + "cs": "Jméno provozovatele", + "es": "Nombre del operador" } }, "render": { @@ -820,7 +852,8 @@ "de": "Dieser Verkaufsautomat wird betrieben von {operator}", "fr": "Ce distributeur est exploité par {operator}", "ca": "{operator} gestiona aquesta màquina expenedora", - "cs": "Tento prodejní automat provozuje {operator}" + "cs": "Tento prodejní automat provozuje {operator}", + "es": "Esta máquina expendedora es operada por {operator}" } }, { @@ -831,7 +864,8 @@ "de": "Ist der Automat in einem Gebäude untergebracht?", "fr": "Est-ce que ce distributeur est en intérieur ?", "ca": "Aquesta màquina expenedora està a l'exterior?", - "cs": "Je tento automat uvnitř?" + "cs": "Je tento automat uvnitř?", + "es": "¿Esta máquina expendedora está en interiores?" }, "mappings": [ { @@ -842,7 +876,8 @@ "de": "Der Automat befindet sich im Freien", "fr": "Ce distributeur est à l'extérieur", "ca": "Aquesta màquina expenedora està a l'exterior", - "cs": "Tento prodejní automat je venku" + "cs": "Tento prodejní automat je venku", + "es": "Esta máquina expendedora está al aire libre" }, "hideInAnswer": true }, @@ -854,7 +889,8 @@ "de": "Der Automat befindet sich im Innenbereich", "fr": "Ce distributeur est à l'intérieur", "ca": "Aquesta màquina expenedora està a l'interior", - "cs": "Tento prodejní automat je uvnitř" + "cs": "Tento prodejní automat je uvnitř", + "es": "Esta máquina expendedora está en interiores" } }, { @@ -865,7 +901,8 @@ "de": "Dieser Automat befindet sich im Freien", "fr": "Ce distributeur est à l'extérieur", "ca": "Aquesta màquina expenedora està a l'exterior", - "cs": "Tento prodejní automat je venku" + "cs": "Tento prodejní automat je venku", + "es": "Esta máquina expendedora está al aire libre" } } ] @@ -877,13 +914,16 @@ "en": "What is the phone number of the operator of this vending machine?", "ca": "Quin és el número de telèfon de l'operador d'aquesta màquina expenedora?", "de": "Wie lautet die Telefonnummer des Automatenbetreibers?", - "cs": "Jaké je telefonní číslo na provozovatele tohoto automatu?" + "cs": "Jaké je telefonní číslo na provozovatele tohoto automatu?", + "uk": "Який номер телефону оператора цього торгового автомата?", + "es": "¿Cuál es el número de teléfono del operador de esta máquina expendedora?" }, "questionHint": { "en": "This is the number you can call in case of problems with the vending machine", "ca": "Aquest és el número al qual podeu trucar en cas de problemes amb la màquina expenedora", "de": "Die ist die Telefonnummer, die bei Problemen mit dem Automaten kontaktiert werden kann", - "cs": "Toto je číslo, na které můžete zavolat v případě problémů s automatem" + "cs": "Toto je číslo, na které můžete zavolat v případě problémů s automatem", + "es": "Este es el número al que puedes llamar en caso de problemas con la máquina expendedora" } } }, @@ -904,7 +944,7 @@ "de": "ein Fahrradschlauch", "nl": "een fietsband", "pt_BR": "uma câmara de ar para bicicleta", - "es": "una cámara para la bicicleta", + "es": "cámara de aire para bicicleta", "pt": "uma câmara de ar para bicicleta", "cs": "duše na kolo" } @@ -914,7 +954,8 @@ { "en": "bicycle light", "nl": "een fietslichtje", - "de": "Fahrradlicht" + "de": "Fahrradlicht", + "es": "luz para bicicleta" } ], [ @@ -923,7 +964,8 @@ "en": "a condom", "nl": "een condoom", "de": "ein Kondom", - "ca": "un preservatiu" + "ca": "un preservatiu", + "es": "preservativo" } ] ] @@ -938,7 +980,7 @@ "cs": "Kolik stojí {product_name}?", "nl": "Hoeveel kost {product_name}?", "pt_BR": "Quanto custa {product_name}?", - "es": "¿Cuánto cuesta {product_name}?", + "es": "¿Cuánto cuesta un/una {product_name}?", "pt": "Quanto custa {product_name}?" }, "render": { @@ -948,7 +990,7 @@ "cs": "{product_name} {charge:{product_key}}", "nl": "{product_name} kost {charge:{product_key}}", "pt_BR": "{product_name} custa {charge:{product_key}}", - "es": "{product_name} cuesta {charge:{product_key}}", + "es": "Un/Una {product_name} cuesta {charge:{product_key}}", "pt": "{product_name} custa {charge:{product_key}}" }, "freeform": { @@ -973,7 +1015,7 @@ "zh_Hant": "這個自動販賣機仍有運作嗎?", "pt_BR": "Esta máquina de venda automática ainda está operacional?", "pt": "Esta máquina de venda automática ainda está operacional?", - "es": "¿Todavía funciona esta máquina expendedora?", + "es": "¿Esta máquina expendedora sigue operativa?", "da": "Er denne salgsautomat stadig i drift?", "cs": "Je tento automat stále v provozu?", "ca": "Aquesta màquina expenedora encara funciona?" @@ -1013,7 +1055,7 @@ "zh_Hant": "這個自動販賣機沒有運作了", "pt_BR": "Esta máquina de venda automática está quebrada", "pt": "Esta máquina de venda automática está quebrada", - "es": "Esta máquina exprendedora está rota", + "es": "Esta máquina expendedora está rota", "da": "Denne salgsautomat er i stykker", "cs": "Tento prodejní automat je rozbitý", "ca": "Aquesta màquina expenedora està trencada" @@ -1033,7 +1075,7 @@ "zh_Hant": "這個自動販賣機已經關閉了", "pt_BR": "Esta máquina de venda automática está fechada", "pt": "Esta máquina de venda automática está fechada", - "es": "Esta máquina exprendedora está cerrada", + "es": "Esta máquina expendedora está cerrada", "da": "Denne salgsautomat er lukket", "cs": "Tento prodejní automat je uzavřen", "ca": "Aquesta màquina expenedora està tancada" @@ -1052,10 +1094,11 @@ "zh_Hant": "運作狀態是 {operational_status}", "pt_BR": "O estado operacional é: {operational_status}", "pt": "O estado operacional é: {operational_status}", - "es": "El estado operacional es {operational_status}", + "es": "El estado operativo es {operational_status}", "da": "Driftsstatus er {operational_status}", "cs": "Provozní stav je {operational_status}", - "ca": "L'estat operatiu és {operational_status}" + "ca": "L'estat operatiu és {operational_status}", + "uk": "Робочий стан - це {operational_status}" } } ] @@ -1073,7 +1116,8 @@ "de": "Alle Verkaufsautomaten", "fr": "Tous les distributeurs", "ca": "Totes les màquines expenedores", - "cs": "Všechny prodejní automaty" + "cs": "Všechny prodejní automaty", + "es": "Todas las máquinas expendedoras" } }, { @@ -1083,7 +1127,8 @@ "de": "Verkauf von Getränken", "fr": "Vente de boissons", "ca": "Venda de begudes", - "cs": "Prodej nápojů" + "cs": "Prodej nápojů", + "es": "Venta de bebidas" }, "osmTags": "vending~i~.*drinks.*" }, @@ -1094,7 +1139,8 @@ "de": "Verkauf von Süßigkeiten", "fr": "Ventre de confiseries", "ca": "Venda de llaminadures", - "cs": "Prodej sladkostí" + "cs": "Prodej sladkostí", + "es": "Venta de dulces" }, "osmTags": "vending~i~.*sweets.*" }, @@ -1105,7 +1151,8 @@ "de": "Verkauf von Lebensmitteln", "fr": "Ventre de nourriture", "ca": "Venda de menjar", - "cs": "Prodej potravin" + "cs": "Prodej potravin", + "es": "Venta de comida" }, "osmTags": "vending~i~.*food.*" }, @@ -1116,7 +1163,8 @@ "de": "Verkauf von Zigaretten", "fr": "Vente de cigarettes", "ca": "Venda de tabaco", - "cs": "Prodej cigaret" + "cs": "Prodej cigaret", + "es": "Venta de cigarrillos" }, "osmTags": "vending~i~.*cigarettes.*" }, @@ -1127,7 +1175,8 @@ "de": "Verkauf von Kondomen", "fr": "Vente de préservatifs", "ca": "Venda de preservatius", - "cs": "Prodej kondomů" + "cs": "Prodej kondomů", + "es": "Venta de preservativos" }, "osmTags": "vending~i~.*condoms.*" }, @@ -1138,7 +1187,8 @@ "de": "Verkauf von Kaffee", "fr": "Vente de café", "ca": "Venda de cafè", - "cs": "Prodej kávy" + "cs": "Prodej kávy", + "es": "Venta de café" }, "osmTags": "vending~i~.*coffee.*" }, @@ -1149,7 +1199,8 @@ "de": "Verkauf von Trinkwasser", "fr": "Vente d'eau", "ca": "Venda d'aigua", - "cs": "Prodej vody" + "cs": "Prodej vody", + "es": "Venta de agua" }, "osmTags": "vending~i~.*water.*" }, @@ -1160,7 +1211,8 @@ "de": "Verkauf von Zeitungen", "fr": "Vente de journaux", "ca": "Venda de diaris", - "cs": "Prodej novin" + "cs": "Prodej novin", + "es": "Venta de periódicos" }, "osmTags": "vending~i~.*newspapers.*" }, @@ -1171,7 +1223,8 @@ "de": "Verkauf von Fahrradschläuchen", "fr": "Vente de chambres à air pour vélo", "ca": "Venda de càmeres interiors de bicicletes", - "cs": "Prodej duší na jízdní kola" + "cs": "Prodej duší na jízdní kola", + "es": "Venta de cámaras de aire para bicicleta" }, "osmTags": "vending~i~.*bicycle_tube.*" }, @@ -1182,7 +1235,8 @@ "de": "Verkauf von Milch", "fr": "Vente de lait", "ca": "Venda de llet", - "cs": "Prodej mléka" + "cs": "Prodej mléka", + "es": "Venta de leche" }, "osmTags": "vending~i~.*milk.*" }, @@ -1193,7 +1247,8 @@ "de": "Verkauf von Brot", "fr": "Vente de pain", "ca": "Venda de pa", - "cs": "Prodej chleba" + "cs": "Prodej chleba", + "es": "Venta de pan" }, "osmTags": "vending~i~.*bread.*" }, @@ -1204,7 +1259,8 @@ "de": "Verkauf von Eiern", "fr": "Vente d'œufs", "ca": "Venda d'ous", - "cs": "Prodej vajec" + "cs": "Prodej vajec", + "es": "Venta de huevos" }, "osmTags": "vending~i~.*eggs.*" }, @@ -1212,7 +1268,8 @@ "question": { "en": "Sale of ice cream", "nl": "Verkoop van ijs", - "de": "Verkauf von Speiseeis" + "de": "Verkauf von Speiseeis", + "es": "Venta de helados" }, "osmTags": "vending~i~.*ice_cream.*" }, @@ -1223,7 +1280,8 @@ "de": "Verkauf von Käse", "fr": "Vente de fromage", "ca": "Venda de formatge", - "cs": "Prodej sýrů" + "cs": "Prodej sýrů", + "es": "Venta de queso" }, "osmTags": "vending~i~.*cheese.*" }, @@ -1234,7 +1292,8 @@ "de": "Verkauf von Honig", "fr": "Vente de miel", "ca": "Venda de mel", - "cs": "Prodej medu" + "cs": "Prodej medu", + "es": "Venta de miel" }, "osmTags": "vending~i~.*honey.*" }, @@ -1245,7 +1304,8 @@ "de": "Verkauf von Kartoffeln", "fr": "Vente de pommes de terre", "ca": "Venda de patates", - "cs": "Prodej brambor" + "cs": "Prodej brambor", + "es": "Venta de patatas" }, "osmTags": "vending~i~.*potatoes.*" }, @@ -1255,7 +1315,8 @@ "nl": "Verkoop van vlees", "de": "Verkauf von Fleisch", "ca": "Venda de productes carnis", - "cs": "Prodej masa" + "cs": "Prodej masa", + "es": "Venta de carne" }, "osmTags": "vending~i~.*meat.*" }, @@ -1265,7 +1326,8 @@ "nl": "Verkoop van fruit", "ca": "Venda de fruites", "de": "Verkauf von Obst", - "cs": "Prodej ovoce" + "cs": "Prodej ovoce", + "es": "Venta de fruta" }, "osmTags": "vending~i~.*fruit.*" }, @@ -1275,7 +1337,8 @@ "nl": "Verkoop van aardbeien", "ca": "Venda de maduixes", "de": "Verkauf von Erdbeeren", - "cs": "Prodej jahod" + "cs": "Prodej jahod", + "es": "Venta de fresas" }, "osmTags": "vending~i~.*strawberries.*" }, @@ -1286,7 +1349,8 @@ "de": "Verkauf von Blumen", "fr": "Vente de fleurs", "ca": "Venda de flors", - "cs": "Prodej květin" + "cs": "Prodej květin", + "es": "Venta de flores" }, "osmTags": "vending~i~.*flowers.*" }, @@ -1296,7 +1360,8 @@ "en": "Sale of parking tickets", "ca": "Venda de tiquets d'aparcament", "de": "Verkauf von Parkscheinen", - "cs": "Prodej parkovacích lístků" + "cs": "Prodej parkovacích lístků", + "es": "Venta de tickets de aparcamiento" } }, { @@ -1305,7 +1370,8 @@ "en": "Sale of pressed pennies", "ca": "Venda de monedes premsades", "de": "Verkauf von Souvenirmünzen", - "cs": "Prodej pamětních mincí/lisované mince" + "cs": "Prodej pamětních mincí/lisované mince", + "es": "Venta de monedas conmemorativas" } }, { @@ -1314,7 +1380,8 @@ "en": "Sale of public transport tickets", "ca": "Venda de bitllets de transport públic", "de": "Verkauf von Fahrscheinen", - "cs": "Prodej jízdenek MHD" + "cs": "Prodej jízdenek MHD", + "es": "Venta de billetes de transporte público" } }, { @@ -1324,7 +1391,8 @@ "nl": "Verkoop van fietslampjes", "de": "Verkauf von Fahrradlampen", "cs": "Prodej světel na kolo", - "ca": "Venda de llums de bicicletes" + "ca": "Venda de llums de bicicletes", + "es": "Venta de luces para bicicleta" } }, { @@ -1334,7 +1402,8 @@ "nl": "Verkoop van handschoenen", "de": "Verkauf von Fahrradhandschuhen", "cs": "Prodej rukavic", - "ca": "Venda de guants" + "ca": "Venda de guants", + "es": "Venta de guantes" } }, { @@ -1344,7 +1413,8 @@ "nl": "Verkoop van fietsreparatiesets", "de": "Verkauf von Fahrrad-Reparatursets", "cs": "Prodej sad na opravu jízdních kol", - "ca": "Venda de kits de reparació de bicicletes" + "ca": "Venda de kits de reparació de bicicletes", + "es": "Venta de kits de reparación para bicicletas" } }, { @@ -1354,7 +1424,8 @@ "nl": "Verkoop van fietspompen", "de": "Verkauf von Fahrradpumpen", "cs": "Prodej pump na kolo", - "ca": "Venda de bombes de bicicletes" + "ca": "Venda de bombes de bicicletes", + "es": "Venta de bombas para bicicletas" } }, { @@ -1364,7 +1435,8 @@ "nl": "Verkoop van fietssloten", "de": "Verkauf von Fahrradschlössern", "cs": "Prodej zámků na kola", - "ca": "Venda de cadenat per a bicicletes" + "ca": "Venda de cadenat per a bicicletes", + "es": "Venta de candados para bicicletas" } } ] diff --git a/assets/layers/veterinary/veterinary.json b/assets/layers/veterinary/veterinary.json index 0da22a88d..3cebcb176 100644 --- a/assets/layers/veterinary/veterinary.json +++ b/assets/layers/veterinary/veterinary.json @@ -9,7 +9,8 @@ "fr": "vétérinaire", "ca": "Veterinari", "cs": "veterinář", - "pl": "weterynaryjny" + "pl": "weterynaryjny", + "ru": "ветеринария" }, "description": "A layer showing veterinarians", "source": { @@ -96,7 +97,7 @@ "en": "a veterianarian, that treats dogs", "da": "En dyrlæge, der behandler hunde", "de": "ein Tierarzt, der Hunde behandelt", - "es": "un veterinario, que trata a perros", + "es": "un veterinario que trata perros", "nl": "een dierenarts die honden verzorgt", "fr": "un vétérinaire, qui soigne les chiens", "ca": "un veterinari, que tracta gossos", @@ -114,7 +115,7 @@ "en": "What is the name of this veterinarian?", "da": "Hvad hedder denne dyrlæ?", "de": "Wie lautet der Name dieses Tierarztes?", - "es": "¿Cual es el nombre de este veterinario?", + "es": "¿Cuál es el nombre de este veterinario?", "nl": "Wat is de naam van deze dierenartspraktijk?", "fr": "Quel est le nom de ce vétérinaire ?", "ca": "Qui és el nom d'aquest veterinari?", diff --git a/assets/layers/viewpoint/viewpoint.json b/assets/layers/viewpoint/viewpoint.json index 44e7c4729..95b4e0f5c 100644 --- a/assets/layers/viewpoint/viewpoint.json +++ b/assets/layers/viewpoint/viewpoint.json @@ -11,7 +11,8 @@ "eo": "Vidpunkto", "ca": "Mirador", "da": "Udsigtspunkt", - "cs": "Vyhlídka" + "cs": "Vyhlídka", + "es": "Mirador" }, "description": { "en": "A nice viewpoint or nice view. Ideal to add an image if no other category fits", @@ -19,7 +20,7 @@ "de": "Ein schöner Aussichtspunkt oder eine schöne Aussicht. Ideal zum Hinzufügen eines Bildes, wenn keine andere Kategorie passt", "fr": "Un beau point de vue ou une belle vue. Idéal pour ajouter une image si aucune autre catégorie ne convient", "it": "Un punto panoramico che offre una bella vista. L'ideale è aggiungere un'immagine, se nessun'altra categoria è appropriata", - "es": "Un buen mirador o una buena vista. Ideal para añadir una imagen si no encaja en ninguna otra categoría", + "es": "Un buen mirador o una buena vista. Ideal para agregar una imagen si ninguna otra categoría encaja", "da": "Et dejligt synspunkt eller flot udsigt. Ideel til at tilføje et billede, hvis ingen anden kategori passer", "ca": "Un bon mirador o una bonica vista. Ideal per afegir una imatge si no hi caben cap altra categoria", "cs": "Pěkný výhled nebo pěkný pohled. Ideální pro přidání obrázku, pokud se nehodí žádná jiná kategorie" @@ -40,7 +41,8 @@ "eo": "Vidpunkto", "ca": "Mirador", "da": "Udsigtspunkt", - "cs": "Vyhlídka" + "cs": "Vyhlídka", + "es": "Mirador" } }, "pointRendering": [ @@ -74,7 +76,8 @@ "it": "una punto panoramico", "id": "Sudut pandang", "ca": "un mirador", - "cs": "vyhlídka" + "cs": "vyhlídka", + "es": "un mirador" }, "tags": [ "tourism=viewpoint" @@ -92,7 +95,7 @@ "fr": "Voulez-vous ajouter une description ?", "it": "Vuoi aggiungere una descrizione?", "id": "Apakah Anda ingin menambahkan deskripsi?", - "es": "¿Quieres añadir una descripción?", + "es": "¿Quieres agregar una descripción?", "da": "Ønsker du at tilføje en beskrivelse?", "ca": "Vols afegir una descripció?", "cs": "Chcete přidat popis?" diff --git a/assets/layers/village_green/village_green.json b/assets/layers/village_green/village_green.json index d804a5cd9..7b26c0221 100644 --- a/assets/layers/village_green/village_green.json +++ b/assets/layers/village_green/village_green.json @@ -8,7 +8,8 @@ "nl": "Een laag die dorpsgroen toont (gemeenschapsgroen, maar niet echt een park)", "de": "Eine Ebene mit Dorfangern (kommunale Grünflächen, aber nicht wirklich Parks)", "ca": "Una capa que mostra “village-green” (que són zones verdes comunals, però no parcs del tot)", - "cs": "Vrstva zobrazující městskou zeleň (což jsou společné zelené plochy, ale ne tak docela parky)" + "cs": "Vrstva zobrazující městskou zeleň (což jsou společné zelené plochy, ale ne tak docela parky)", + "es": "Una capa que muestra zonas verdes (que son áreas verdes comunitarias, pero no exactamente parques)" }, "source": { "osmTags": "landuse=village_green" diff --git a/assets/layers/visitor_information_centre/visitor_information_centre.json b/assets/layers/visitor_information_centre/visitor_information_centre.json index 951ac4a28..116e28e35 100644 --- a/assets/layers/visitor_information_centre/visitor_information_centre.json +++ b/assets/layers/visitor_information_centre/visitor_information_centre.json @@ -14,7 +14,7 @@ "en": "A visitor center offers information about a specific attraction or place of interest where it is located.", "nl": "Een bezoekerscentrum biedt informatie over een specifieke attractie of bezienswaardigheid waar het is gevestigd.", "de": "Ein Besucherzentrum bietet Informationen über eine bestimmte Attraktion oder Sehenswürdigkeit, an der es sich befindet.", - "es": "Un centro de visitantes ofrece información sobre una atracción específica o lugar de interese donde se sitúa.", + "es": "Un centro de visitantes ofrece información sobre una atracción o lugar de interés específico donde se encuentra.", "ca": "Un centre de visitants ofereix informació sobre una atracció o lloc d'interès específic on es troba.", "cs": "Turistické centrum nabízí informace o konkrétní atrakci nebo zajímavém místě, kde se nachází." }, diff --git a/assets/layers/walls_and_buildings/walls_and_buildings.json b/assets/layers/walls_and_buildings/walls_and_buildings.json index 1848426d6..57ac29789 100644 --- a/assets/layers/walls_and_buildings/walls_and_buildings.json +++ b/assets/layers/walls_and_buildings/walls_and_buildings.json @@ -7,7 +7,7 @@ "fr": "Couche intégrée spéciale fournissant tous les murs et bâtiments. Cette couche est utile dans les préréglages pour les objets qui peuvent être placés contre les murs (par exemple, les DEA, les boîtes aux lettres, les entrées, les adresses, les caméras de surveillance, …). Ce calque est invisible par défaut et non inchangeable par l'utilisateur.", "da": "Specielt indbygget lag giver alle vægge og bygninger. Dette lag er nyttigt i forudindstillinger til objekter, der kan placeres mod vægge (f.eks. AED'er, postkasser, indgange, adresser, overvågningskameraer, …). Dette lag er usynligt som standard og kan ikke skiftes af brugeren.", "ca": "Capa construïda especial que proporciona totes les parets i edificis. Aquesta capa és útil als predefinits per a objectes que es poden col·locar a les parets (p. ex. DEA, bústies de correus, entrades, adreces, càmeres de vigilància, ...). Aquesta capa és invisible per defecte i no es pot activar per l'usuari.", - "es": "Capa especial incorporada que proporciona todas las paredes y edificios. Esta capa es útil en los preajustes para objetos que pueden colocarse contra las paredes (por ejemplo: AEDs, buzones de correos, entradas, direcciones, cámaras de vigilancia, ...). Esta capa es invisible por defecto y no puede ser activada por el usuario.", + "es": "Capa incorporada especial que proporciona todas las paredes y edificios. Esta capa es útil en los ajustes preestablecidos para objetos que se pueden colocar contra las paredes (por ejemplo, DEA, buzones, entradas, direcciones, cámaras de vigilancia, etc.). Esta capa es invisible de forma predeterminada y el usuario no puede activarla.", "cs": "Speciální zabudovaná vrstva poskytující všechny stěny a budovy. Tato vrstva je užitečná v předvolbách pro objekty, které lze umístit ke stěnám (např. AED, poštovní schránky, vchody, adresy, bezpečnostní kamery, …). Tato vrstva je ve výchozím nastavení neviditelná a uživatel ji nemůže přepínat.", "zh_Hant": "特殊的內建圖層顯示所有牆壁與建築。這個圖層對於規畫要靠牆的東西 (例如 AED、郵筒、入口、地址、監視器等) 相當實用。這個圖層預設顯示而且無法由使用者開關。", "pl": "Specjalna warstwa zabudowana zapewniająca wszystkie mury i budynki. Warstwa ta jest przydatna w ustawieniach wstępnych obiektów, które można umieścić przy ścianach (np. AED, skrzynki pocztowe, wejścia, adresy, kamery monitorujące itp.). Warstwa ta jest domyślnie niewidoczna i użytkownik nie może jej przełączać." @@ -68,7 +68,8 @@ "da": "

Indgange

Denne bygning har {_entrances_count} indgange:", "nl": "

Ingangen

Dit gebouw heeft {_entrances_count} ingangen:", "ca": "

Entrades

Aquest edifici té {_entrances_count} entrades:", - "cs": "

Vchody

Tato budova má {_entrances_count} vchodů:" + "cs": "

Vchody

Tato budova má {_entrances_count} vchodů:", + "es": "

Entradas

Este edificio tiene {_entrances_count} entradas:" }, "after": { "en": "{_entrances_count_without_width_count} entrances don't have width information yet", @@ -76,7 +77,8 @@ "da": "{_entrances_count_without_width_count} indgange har endnu ikke oplysninger om bredde", "nl": "{_entrances_count_without_width_count} ingangen hebben nog geen informatie over de breedte", "ca": "{_entrances_count_without_width_count} entrades encara no tenen informació d'amplada", - "cs": "{_entrances_count_without_width_count} vchody zatím nemají informace o šířce" + "cs": "{_entrances_count_without_width_count} vchody zatím nemají informace o šířce", + "es": "{_entrances_count_without_width_count} entradas aún no tienen información de ancho" }, "special": { "type": "multi", @@ -87,7 +89,8 @@ "da": "En indgang på {canonical(width)}", "nl": "Een ingang van {canonical(width)}", "ca": "Una entrada de {canonical(width)}", - "cs": "vchod {canonical(width)}" + "cs": "vchod {canonical(width)}", + "es": "Una entrada de {canonical(width)}" } } }, @@ -100,7 +103,8 @@ "da": "Der er ikke markeret nogen indgang", "nl": "Geen ingang is gemarkeerd", "ca": "No s'ha senyalitzat cap entrada", - "cs": "Nebyl označen žádný vchod" + "cs": "Nebyl označen žádný vchod", + "es": "No se ha marcado ninguna entrada" } }, { @@ -111,7 +115,8 @@ "da": "Ingen af {_entrance_count}-indgangene har oplysninger om bredde endnu", "nl": "Geen van de {_entrance_count} ingangen hebben al informatie over de breedte", "ca": "Cap de les {_entrance_count} entrades té informació d'amplada encara", - "cs": "Žádný z {_entrance_count} vchodů zatím nemá informace o šířce" + "cs": "Žádný z {_entrance_count} vchodů zatím nemá informace o šířce", + "es": "Ninguna de las {_entrance_count} entradas tiene información de ancho todavía" } } ] @@ -145,6 +150,7 @@ "en": "a wall or building", "nl": "een muur of gebouw", "de": "eine Wand oder ein Gebäude", - "ca": "un mur o edifici" + "ca": "un mur o edifici", + "es": "una pared o edificio" } } diff --git a/assets/layers/waste_basket/waste_basket.json b/assets/layers/waste_basket/waste_basket.json index 8d4a11277..b2a96367a 100644 --- a/assets/layers/waste_basket/waste_basket.json +++ b/assets/layers/waste_basket/waste_basket.json @@ -11,7 +11,8 @@ "id": "Keranjang Sampah", "da": "Affaldskurv", "fr": "Poubelle", - "cs": "Odpadkový koš" + "cs": "Odpadkový koš", + "es": "Contenedor de basura" }, "description": { "en": "This is a public waste basket, thrash can, where you can throw away your thrash.", @@ -19,7 +20,7 @@ "de": "Dies ist ein öffentlicher Abfalleimer, in den Sie Ihren Müll entsorgen können.", "hu": "Ez egy nyilvános szemétkosár vagy kuka, ahová kidobhatod a szemetedet.", "it": "Questo è un cestino, un bidone dei rifiuti pubblico, dove puoi buttare via la tua spazzatura.", - "es": "Esta es una papelera pública, donde puedes tirar tu basura.", + "es": "Este es un contenedor de basura público, donde puedes tirar tu basura.", "da": "Dette er en offentlig affaldskurv, en skraldespand, hvor du kan smide dit affald.", "fr": "C'est une poubelle dans laquelle vous pouvez jeter vos mégots.", "ca": "Es tracta d'una paperera pública, una paperera, on pots llençar la teva paperera.", @@ -44,7 +45,8 @@ "id": "Keranjang Sampah", "da": "Affaldskurv", "fr": "Poubelle", - "cs": "Odpadkový koš" + "cs": "Odpadkový koš", + "es": "Contenedor de basura" } }, "pointRendering": [ @@ -83,7 +85,8 @@ "da": "en affaldskurv", "ca": "una paperera", "fr": "une poubelle", - "cs": "odpadkový koš" + "cs": "odpadkový koš", + "es": "un contenedor de basura" }, "presiceInput": { "preferredBackground": "photo" @@ -103,7 +106,8 @@ "da": "Hvad er det for en affaldskurv?", "fr": "De quel type de poubelle s'agit-il ?", "ca": "Quin tipus de paperera és aquesta?", - "cs": "Jaký druh koše na odpad je to?" + "cs": "Jaký druh koše na odpad je to?", + "es": "¿Qué tipo de contenedor de basura es este?" }, "multiAnswer": true, "mappings": [ @@ -118,7 +122,8 @@ "da": "En affaldskurv til almindeligt affald", "ca": "Una paperera per a residus generals", "fr": "Une poubelle pour tout type d'ordures", - "cs": "Odpadkový koš na běžný odpad" + "cs": "Odpadkový koš na běžný odpad", + "es": "Un contenedor para basura general" }, "hideInAnswer": true }, @@ -133,7 +138,9 @@ "da": "En affaldskurv til almindeligt affald", "fr": "Une poubelle pour tout type d'ordures", "ca": "Una paperera per a residus generals", - "cs": "Odpadkový koš na běžný odpad" + "cs": "Odpadkový koš na běžný odpad", + "ru": "Корзина для общих отходов", + "es": "Un contenedor para basura general" } }, { @@ -147,7 +154,9 @@ "da": "En affaldskurv til hundeekskrementer", "fr": "Une poubelle pour déjections canines", "ca": "Una paperera per a excrements de gossos", - "cs": "Odpadkový koš na psí exkrementy" + "cs": "Odpadkový koš na psí exkrementy", + "ru": "Корзина для собачьих экскрементов", + "es": "Un contenedor para excrementos de perro" } }, { @@ -161,7 +170,9 @@ "da": "En affaldskurv til cigaretter", "fr": "Une poubelle pour mégots", "ca": "Una paperera per a cigarrets", - "cs": "Odpadkový koš na cigarety" + "cs": "Odpadkový koš na cigarety", + "ru": "Корзина для сигарет", + "es": "Un contenedor para cigarrillos" } }, { @@ -175,7 +186,9 @@ "da": "En affaldskurv til stoffer", "ca": "Una paperera per a medicaments", "fr": "Une poubelle pour médicaments", - "cs": "Odpadkový koš na léky" + "cs": "Odpadkový koš na léky", + "ru": "Корзина для наркотиков", + "es": "Un contenedor para drogas" } }, { @@ -189,7 +202,9 @@ "da": "En affaldskurv til nåle og andre skarpe genstande", "fr": "Une poubelle pour aiguilles et autres objets tranchants", "ca": "Una paperera per a agulles i altres objectes punxants", - "cs": "Odpadkový koš na jehly a jiné ostré předměty" + "cs": "Odpadkový koš na jehly a jiné ostré předměty", + "ru": "Корзина для иголок и других острых предметов", + "es": "Un contenedor para agujas y otros objetos punzantes" } }, { @@ -203,7 +218,9 @@ "da": "En affaldskurv til plast", "fr": "Une poubelle pour plastiques", "ca": "Una paperera per a plàstic", - "cs": "Odpadkový koš na plasty" + "cs": "Odpadkový koš na plasty", + "ru": "Корзина для пластика", + "es": "Un contenedor para plástico" } }, { @@ -211,7 +228,9 @@ "then": { "en": "A waste basket for plastic packaging, metal packaging and drink cartons (PMD)", "nl": "Een vuilnisbak voor plastic verpakkingen, metalen verpakkingen en drankpakken (PMD)", - "de": "Ein Papierkorb für Kunststoffverpackungen, Metallverpackungen und Getränkekartons (Tetrapak)" + "de": "Ein Papierkorb für Kunststoffverpackungen, Metallverpackungen und Getränkekartons (Tetrapak)", + "ru": "Корзина для пластиковой упаковки, металлической упаковки и картонной упаковки из-под напитков (PMD)", + "es": "Un contenedor para envases de plástico, envases metálicos y cartones de bebidas (PMD)" } }, { @@ -225,7 +244,9 @@ "da": "En affaldskurv til papir", "fr": "Une poubelle pour papier", "ca": "Una paperera per a paper", - "cs": "Odpadový koš na papír" + "cs": "Odpadový koš na papír", + "ru": "Корзина для бумаг", + "es": "Un contenedor para papel" } } ] @@ -241,7 +262,8 @@ "da": "Har denne affaldskurv en dispenser til poser med ekskrementer til hunde?", "fr": "Est-ce que cette poubelle a un distributeur de sacs pour ramasser les déjections canines ?", "ca": "Aquesta paperera té un dispensador per a bosses per a excrements de gossos?", - "cs": "Má tento odpadkový koš zásobník na sáčky na psí exkrementy?" + "cs": "Má tento odpadkový koš zásobník na sáčky na psí exkrementy?", + "es": "¿Este contenedor tiene un dispensador de bolsas para excrementos de perro?" }, "condition": { "or": [ @@ -267,7 +289,8 @@ "da": "Denne affaldskurv har en dispenser til poser til (hunde)ekskrementer", "fr": "Cette poubelle a un distributeur de sacs pour ramasser les déjections canines", "ca": "Aquesta paperera té un dispensador per a bosses d'excrements (de gossos)", - "cs": "Tento odpadkový koš má zásobník na sáčky na (psí) exkrementy" + "cs": "Tento odpadkový koš má zásobník na sáčky na (psí) exkrementy", + "es": "Este contenedor tiene un dispensador de bolsas para excrementos (de perro)" } }, { @@ -286,7 +309,8 @@ "da": "Denne affaldskurv har ikke en dispenser til poser til (hunde)ekskrementer", "ca": "Aquesta paperera no té un dispensador per a bosses d'excrements (gossos)", "fr": "Cette poubelle n'a pas un distributeur de sacs pour ramasser les déjections canines", - "cs": "Tento odpadkový koš nemá zásobník na sáčky na (psí) exkrementy" + "cs": "Tento odpadkový koš nemá zásobník na sáčky na (psí) exkrementy", + "es": "Este contenedor no tiene un dispensador de bolsas para excrementos (de perro)" } }, { @@ -300,7 +324,8 @@ "da": "Denne affaldskurv har ikke en dispenser til poser til (hunde)ekskrementer", "fr": "Cette poubelle n'a pas de distributeur de sac pour ramasser les déjections canines", "ca": "Aquesta paperera no té un dispensador per a bosses d'excrements (gossos)", - "cs": "Tento odpadkový koš nemá zásobník na sáčky na (psí) exkrementy" + "cs": "Tento odpadkový koš nemá zásobník na sáčky na (psí) exkrementy", + "es": "Este contenedor no tiene un dispensador de bolsas para excrementos (de perro)" }, "hideInAnswer": true } @@ -348,7 +373,8 @@ "da": "Affaldskurv til stoffer", "ca": "Paperera per a medicaments", "fr": "Poubelle pour médicaments", - "cs": "Odpadový koš pro léky" + "cs": "Odpadový koš pro léky", + "es": "Contenedor para drogas" }, "osmTags": "waste~i~.*drugs.*" }, @@ -357,7 +383,7 @@ "en": "Waste basket for dog excrement", "nl": "Vuilnisbak voor hondenuitwerpselen", "de": "Mülleimer für Hundekot", - "es": "Papelera para excrementos de perro", + "es": "Contenedor para excrementos de perro", "it": "Cestino per escrementi dei cani", "da": "Affaldskurv til hundeekskrementer", "ca": "Paperera per a excrements de gossos", @@ -371,7 +397,7 @@ "en": "Waste basket for trash", "nl": "Vuilnisbak voor zwerfvuil", "de": "Mülleimer für allgemeinen Müll", - "es": "Papelera para basura", + "es": "Contenedor para basura", "it": "Cestino per la spazzatura", "da": "Affaldskurv til affald", "ca": "Paperera per a brossa", @@ -389,7 +415,8 @@ "da": "Affaldskurv til spidse og skarpe genstande", "ca": "Paperera per a objectes punxants", "fr": "Poubelle pour objets tranchants", - "cs": "Odpadkový koš na ostré předměty" + "cs": "Odpadkový koš na ostré předměty", + "es": "Contenedor para objetos punzantes" }, "osmTags": "waste~i~.*sharps.*" }, @@ -398,7 +425,7 @@ "en": "Waste basket for plastic", "nl": "Vuilnisbak voor plastic", "de": "Mülleimer für Plastik", - "es": "Papelera para plástico", + "es": "Contenedor para plástico", "it": "Cestino per la plastica", "da": "Affaldskurv til plast", "ca": "Paperera per a plàstics", @@ -411,7 +438,8 @@ "question": { "en": "Waste basket for plastic packaging, metal packaging and drink cartons (PMD)", "nl": "Vuilnisbak voor plastic verpakkingen, metalen verpakkingen en drankpakken (PMD)", - "de": "Papierkorb für Kunststoffverpackungen, Metallverpackungen und Getränkekartons (Tetrapak)" + "de": "Papierkorb für Kunststoffverpackungen, Metallverpackungen und Getränkekartons (Tetrapak)", + "es": "Contenedor para envases de plástico, envases metálicos y cartones de bebidas (PMD)" }, "osmTags": "waste~i~.*pmd.*" }, @@ -419,7 +447,8 @@ "question": { "en": "Waste basket for paper", "nl": "Vuilnisbak voor papier", - "de": "Papierkorb für Papier" + "de": "Papierkorb für Papier", + "es": "Contenedor para papel" }, "osmTags": "waste~i~.*paper.*" } @@ -433,12 +462,13 @@ "en": "Waste basket with dispenser for (dog) excrement bags", "nl": "Vuilnisbak met verdeler voor hondenpoepzakjes", "de": "Abfalleimer mit Spender für (Hunde-)Kotbeutel", - "es": "Papelera con dispensador de bolsas de excrementos (para perros)", + "es": "Contenedor con dispensador de bolsas para excrementos (de perro)", "it": "Cestino per rifiuti con dispenser per sacchetti per escrementi dei cani", "da": "Affaldskurv med dispenser til poser til (hunde)ekskrementer", "ca": "Papereres amb dispensador de bosses d'excrements (per a gossos)", "fr": "Poubelle avec distributeur de sacs pour ramasser les déjections canines", - "cs": "Odpadkový koš se zásobníkem na sáčky na (psí) exkrementy" + "cs": "Odpadkový koš se zásobníkem na sáčky na (psí) exkrementy", + "ru": "Корзина для мусора с дозатором для пакетов (собачьих) экскрементов" }, "osmTags": "vending=dog_excrement_bag" } diff --git a/assets/layers/waste_disposal/waste_disposal.json b/assets/layers/waste_disposal/waste_disposal.json index ef29ef7fa..da2a0c29c 100644 --- a/assets/layers/waste_disposal/waste_disposal.json +++ b/assets/layers/waste_disposal/waste_disposal.json @@ -9,7 +9,8 @@ "da": "Affaldsspande", "ca": "Contenidor de brossa", "fr": "Réceptacles destinés à recevoir des déchets", - "cs": "Odpadkové koše" + "cs": "Odpadkové koše", + "es": "Contenedores de residuos" }, "description": { "en": "Waste Disposal Bin, medium to large bin for disposal of (household) waste", @@ -19,7 +20,8 @@ "da": "Affaldsspande, mellemstor til stor skraldespand til bortskaffelse af (husholdnings)affald", "fr": "Réceptacle destiné à recevoir des déchets (domestiques) enveloppés dans des sacs en plastique", "ca": "Contenidor de fem, contenidor mitjà o gran per a l'eliminació de residus (domèstics)", - "cs": "Odpadkový koš, střední až velký koš na likvidaci (domácího) odpadu" + "cs": "Odpadkový koš, střední až velký koš na likvidaci (domácího) odpadu", + "es": "Contenedor de residuos, contenedor mediano o grande para la eliminación de residuos (domésticos)" }, "source": { "osmTags": "amenity=waste_disposal" @@ -36,7 +38,9 @@ "da": "Bortskaffelse af affald", "ca": "Contenidor de fem", "cs": "Nakládání s odpady", - "zh_Hant": "廢棄物處理" + "zh_Hant": "廢棄物處理", + "uk": "Утилізація відходів", + "es": "Eliminación de residuos" } }, "pointRendering": [ @@ -70,7 +74,8 @@ "ca": "un contenidor de basura", "cs": "koš na odpadky", "pl": "kosz na śmieci", - "zh_Hant": "廢棄物處理桶" + "zh_Hant": "廢棄物處理桶", + "es": "un contenedor de residuos" }, "tags": [ "amenity=waste_disposal" @@ -83,7 +88,8 @@ "id": "Tempat sampah sedang hingga besar untuk pembuangan limbah (rumah tangga)", "da": "Mellemstor til stor skraldespand til bortskaffelse af (husholdnings)affald", "ca": "Contenidor mitjà o gran per a dipositar residus (domèstics)", - "cs": "Střední až velký kontejner na odpad (z domácností)" + "cs": "Střední až velký kontejner na odpad (z domácností)", + "es": "Contenedor mediano o grande para la eliminación de residuos (domésticos)" } } ], @@ -98,7 +104,9 @@ "ca": "Quin tipus de contenidor de brossa és aquest?", "cs": "Co je to za odpadkový koš?", "pl": "Co to za pojemnik na śmieci?", - "zh_Hant": "這是甚麼種類的廢棄物處理箱?" + "zh_Hant": "這是甚麼種類的廢棄物處理箱?", + "uk": "Що це за контейнер для сміття?", + "es": "¿Qué tipo de contenedor de residuos es este?" }, "mappings": [ { @@ -108,7 +116,9 @@ "de": "Dies ist eine Mülltonne oder ein Müllcontainer für (Haushalts-)Abfälle", "ca": "Es tracta d'un contenidor mitjà o gran per a dipositar residus (domèstics)", "cs": "Jedná se o střední až velkou popelnici na (domovní) odpad", - "zh_Hant": "這是一個中型至大型的桶,用於處理(家庭)廢棄物" + "zh_Hant": "這是一個中型至大型的桶,用於處理(家庭)廢棄物", + "uk": "Це середній або великий контейнер для утилізації (побутових) відходів", + "es": "Este es un contenedor mediano o grande para la eliminación de residuos (domésticos)" } }, { @@ -119,7 +129,9 @@ "ca": "En realitat es tracta d'un contenidor de reciclatge", "cs": "To je vlastně recyklační kontejner", "pl": "W rzeczywistości jest to pojemnik do recyklingu", - "zh_Hant": "這實際上是一個回收容器" + "zh_Hant": "這實際上是一個回收容器", + "uk": "Це, власне, контейнер для переробки сміття", + "es": "Este es en realidad un contenedor de reciclaje" }, "addExtraTags": [ "recycling_type=container" @@ -138,7 +150,9 @@ "da": "Adgang: {access}", "ca": "Accés: {access}", "cs": "Přístup: {access}", - "zh_Hant": "存取:{access}" + "zh_Hant": "存取:{access}", + "uk": "Доступ: {access}", + "es": "Acceso: {access}" }, "question": { "en": "Who can use this waste disposal bin?", @@ -150,7 +164,9 @@ "ca": "Qui pot utilitzar aquest contenidor de brossa?", "cs": "Kdo může používat tento koš na odpadky?", "pl": "Kto może korzystać z tego pojemnika na odpady?", - "zh_Hant": "誰可以使用這個廢棄物處理桶?" + "zh_Hant": "誰可以使用這個廢棄物處理桶?", + "uk": "Хто може користуватися цим сміттєвим баком?", + "es": "¿Quién puede usar este contenedor de residuos?" }, "freeform": { "key": "access", @@ -169,7 +185,9 @@ "ca": "Aquest contenidor es pot utilitzat per qualsevol", "cs": "Tento koš může používat kdokoli", "pl": "Z tego pojemnika może korzystać każdy", - "zh_Hant": "這個桶可以給任何人使用" + "zh_Hant": "這個桶可以給任何人使用", + "uk": "Цим смітником може користуватися будь-хто", + "es": "Este contenedor puede ser usado por cualquiera" } }, { @@ -184,7 +202,9 @@ "ca": "Aquest contenidor és privat", "cs": "Tento koš je soukromý", "pl": "Ten kosz jest prywatny", - "zh_Hant": "這個桶是私人的" + "zh_Hant": "這個桶是私人的", + "uk": "Ця скринька є приватною", + "es": "Este contenedor es privado" } }, { @@ -199,7 +219,9 @@ "ca": "Aquest contenidor és només per als residents", "cs": "Tento koš je určen pouze pro obyvatele", "pl": "Ten kosz jest przeznaczony wyłącznie dla mieszkańców", - "zh_Hant": "這個桶僅供居民使用" + "zh_Hant": "這個桶僅供居民使用", + "uk": "Цей контейнер призначений лише для мешканців", + "es": "Este contenedor es solo para residentes" } } ] @@ -216,7 +238,9 @@ "ca": "On es troba aquest contenidor?", "cs": "Kde se nachází tento kontejner?", "pl": "Gdzie znajduje się ten kontener?", - "zh_Hant": "這個容器位於哪裡?" + "zh_Hant": "這個容器位於哪裡?", + "uk": "Де знаходиться цей контейнер?", + "es": "¿Dónde se encuentra este contenedor?" }, "mappings": [ { @@ -231,7 +255,9 @@ "ca": "Aquest contenidor està soterrat", "cs": "Jedná se o podzemní kontejner", "pl": "To jest podziemny kontener", - "zh_Hant": "這是一個地下容器" + "zh_Hant": "這是一個地下容器", + "uk": "Це підземний контейнер", + "es": "Este es un contenedor subterráneo" } }, { @@ -246,7 +272,9 @@ "ca": "Aquest contenidor està situat a l'interior", "cs": "Tento kontejner se nachází uvnitř", "pl": "Kontener ten znajduje się w pomieszczeniu zamkniętym", - "zh_Hant": "這個容器位於室內" + "zh_Hant": "這個容器位於室內", + "uk": "Цей контейнер знаходиться в приміщенні", + "es": "Este contenedor está ubicado en interiores" } }, { @@ -261,7 +289,9 @@ "ca": "Aquest contenidor està situat a l'aire lliure", "cs": "Tento kontejner se nachází venku", "pl": "Kontener ten znajduje się na zewnątrz", - "zh_Hant": "這個容器位於室外" + "zh_Hant": "這個容器位於室外", + "uk": "Цей контейнер розташований на відкритому повітрі", + "es": "Este contenedor está ubicado en exteriores" } } ] @@ -281,7 +311,8 @@ "id": "Hanya akses publik", "da": "Kun offentlig adgang", "ca": "Només amb accés públic", - "cs": "Pouze veřejný přístup" + "cs": "Pouze veřejný přístup", + "es": "Solo acceso público" }, "osmTags": "access=yes" } diff --git a/assets/layers/windturbine/windturbine.json b/assets/layers/windturbine/windturbine.json index 56abda36f..e6b7522f6 100644 --- a/assets/layers/windturbine/windturbine.json +++ b/assets/layers/windturbine/windturbine.json @@ -10,7 +10,8 @@ "hu": "Szélerőmű", "da": "vindmølle", "ca": "Turbina Eòlica", - "cs": "větrná turbína" + "cs": "větrná turbína", + "es": "aerogenerador" }, "description": { "en": "Modern windmills generating electricity", @@ -20,7 +21,8 @@ "ca": "Molins de vent moderns que generen electricitat", "cs": "Moderní větrné mlýny vyrábějící elektřinu", "pl": "Nowoczesne wiatraki wytwarzające energię elektryczną", - "zh_Hant": "現代風車產生電力" + "zh_Hant": "現代風車產生電力", + "es": "Molinos de viento modernos que generan electricidad" }, "source": { "osmTags": "generator:source=wind" @@ -39,7 +41,8 @@ "da": "vindmølle", "pl": "turbina wiatrowa", "ca": "Turbina eòlica", - "cs": "větrná turbína" + "cs": "větrná turbína", + "es": "aerogenerador" }, "mappings": [ { @@ -58,7 +61,8 @@ "da": "{name}", "pl": "{name}", "cs": "{name}", - "pt": "{name}" + "pt": "{name}", + "es": "{name}" } } ] @@ -103,7 +107,8 @@ "hu": "Szélerőmű", "da": "en vindmølle", "ca": "una turbina eòlica", - "cs": "větrná turbína" + "cs": "větrná turbína", + "es": "un aerogenerador" } } ], @@ -121,7 +126,8 @@ "nl": "Deze windturbine genereert {generator:output:electricity}", "da": "Denne vindmølle har en effekt på {generator:output:electricity}.", "ca": "La potència de sortida d'aquest aerogenerador és {generator:output:electricity}.", - "cs": "Výkon této větrné turbíny je {generator:output:electricity}." + "cs": "Výkon této větrné turbíny je {generator:output:electricity}.", + "es": "La potencia de este aerogenerador es de {generator:output:electricity}." }, "question": { "en": "What is the power output of this wind turbine? (e.g. 2.3 MW)", @@ -135,7 +141,8 @@ "da": "Hvad er effekten af denne vindmølle? (f.eks. 2,3 MW)", "ca": "Quina és la potència de sortida d'aquest aerogenerador? (p. ex. 2,3 MW)", "cs": "Jaký je výkon této větrné turbíny? (např. 2,3 MW)", - "pl": "Jaka jest moc wyjściowa tej turbiny wiatrowej? (np. 2,3 MW)" + "pl": "Jaka jest moc wyjściowa tej turbiny wiatrowej? (np. 2,3 MW)", + "es": "¿Cuál es la potencia de este aerogenerador? (por ejemplo, 2.3 MW)" }, "freeform": { "key": "generator:output:electricity", @@ -155,7 +162,8 @@ "da": "Denne vindmølle drives af {operator}.", "nl": "Deze windturbine wordt beheerd door {operator}.", "ca": "{operator} gestiona aquest aerogenerador.", - "cs": "Tuto větrnou turbínu provozuje {operator}." + "cs": "Tuto větrnou turbínu provozuje {operator}.", + "es": "Este aerogenerador es operado por {operator}." }, "question": { "en": "Who operates this wind turbine?", @@ -169,7 +177,8 @@ "nl": "Wie beheert deze windturbine?", "ca": "Qui opera aquest aerogenerador?", "cs": "Kdo provozuje tuto větrnou turbínu?", - "pl": "Kto obsługuje tę turbinę wiatrową?" + "pl": "Kto obsługuje tę turbinę wiatrową?", + "es": "¿Quién opera este aerogenerador?" }, "freeform": { "key": "operator" @@ -187,7 +196,8 @@ "da": "Den samlede højde (inklusive rotorradius) for denne vindmølle er {height} meter.", "nl": "De totale hoogte (inclusief rotor-radius) van deze windturbine is {height} meter", "ca": "L'alçada total (inclòs el radi del rotor) d'aquest aerogenerador és de {height} metres.", - "cs": "Celková výška (včetně poloměru rotoru) této větrné turbíny je {height} metrů." + "cs": "Celková výška (včetně poloměru rotoru) této větrné turbíny je {height} metrů.", + "es": "La altura total (incluido el radio del rotor) de este aerogenerador es de {height} metros." }, "question": { "en": "What is the total height of this wind turbine (including rotor radius), in metres?", @@ -199,7 +209,8 @@ "da": "Hvad er den samlede højde af denne vindmølle (inklusive rotorradius), i meter?", "nl": "Wat is de totale hoogte in meter van deze windturbine (inclusief rotor-radius)?", "ca": "Quina és l'alçada total d'aquest aerogenerador (inclòs el radi del rotor), en metres?", - "cs": "Jaká je celková výška této větrné elektrárny (včetně poloměru rotoru) v metrech?" + "cs": "Jaká je celková výška této větrné elektrárny (včetně poloměru rotoru) v metrech?", + "es": "¿Cuál es la altura total de este aerogenerador (incluido el radio del rotor), en metros?" }, "freeform": { "key": "height", @@ -218,7 +229,8 @@ "nl": "De rotordiameter van deze windturbine is {rotor:diameter} meter.", "da": "Rotordiameteren på denne vindmølle er {rotor:diameter} meter.", "ca": "El diàmetre del rotor d'aquest aerogenerador és de {rotor:diameter} metres.", - "cs": "Průměr rotoru této větrné turbíny je {rotor:diameter} metrů." + "cs": "Průměr rotoru této větrné turbíny je {rotor:diameter} metrů.", + "es": "El diámetro del rotor de este aerogenerador es de {rotor:diameter} metros." }, "question": { "en": "What is the rotor diameter of this wind turbine, in metres?", @@ -230,7 +242,8 @@ "nl": "Wat is de rotordiameter van deze windturbine?", "da": "Hvad er rotordiameteren på denne vindmølle i meter?", "ca": "Quin és el diàmetre del rotor d'aquest aerogenerador en metres?", - "cs": "Jaký je průměr rotoru této větrné turbíny v metrech?" + "cs": "Jaký je průměr rotoru této větrné turbíny v metrech?", + "es": "¿Cuál es el diámetro del rotor de este aerogenerador, en metros?" }, "freeform": { "key": "rotor:diameter", @@ -250,7 +263,8 @@ "nl": "Deze windturbine werd op {start_date} in gebruik genomen", "da": "Denne vindmølle blev sat i drift den/den {start_date}.", "ca": "Aquest aerogenerador va entrar en funcionament el dia {start_date}.", - "cs": "Tato větrná turbína byla uvedena do provozu dne/v {start_date}." + "cs": "Tato větrná turbína byla uvedena do provozu dne/v {start_date}.", + "es": "Este aerogenerador entró en funcionamiento el/en {start_date}." }, "question": { "en": "When did this wind turbine go into operation?", @@ -264,7 +278,8 @@ "da": "Hvornår blev denne vindmølle taget i brug?", "ca": "Quan va entrar en funcionament aquest aerogenerador?", "cs": "Kdy byla tato větrná turbína uvedena do provozu?", - "pl": "Kiedy ta turbina wiatrowa została uruchomiona?" + "pl": "Kiedy ta turbina wiatrowa została uruchomiona?", + "es": "¿Cuándo entró en funcionamiento este aerogenerador?" }, "freeform": { "key": "start_date", @@ -280,7 +295,7 @@ "de": "Zusätzliche Informationen für OpenStreetMap-Experten: {fixme}", "ru": "Дополнительная информация для экспертов OpenStreetMap: {fixme}", "sl": "Dodatne informacije za OpenStreetMap strokovnjake: {fixme}", - "es": "Información extra para expertos en OpenStreetMap: {fixme}", + "es": "Información adicional para expertos de OpenStreetMap: {fixme}", "ca": "Informació addicional per als experts en OpenStreetMap: {fixme}", "cs": "Další informace pro odborníky na OpenStreetMap: {fixme}", "zh_Hant": "為 OpenStreetMap 專家提供的額外資訊:{fixme}" @@ -291,7 +306,8 @@ "de": "Gibt es einen Fehler in der Kartierung, den Sie hier nicht beheben konnten? (hinterlassen Sie eine Nachricht an OpenStreetMap-Experten)", "ca": "Hi ha alguna cosa malament en la manera que està mapejat això que no heu pogut solucionar aquí? (deixeu una nota als experts d'OpenStreetMap)", "cs": "Je něco špatně s tím, jak je to mapováno, a vy jste to zde nedokázali opravit? (zanechte poznámku odborníkům na OpenStreetMap)", - "pl": "Czy jest coś nie tak z mapowaniem tego, czego nie mogłeś tutaj naprawić? (zostaw wiadomość ekspertom OpenStreetMap)" + "pl": "Czy jest coś nie tak z mapowaniem tego, czego nie mogłeś tutaj naprawić? (zostaw wiadomość ekspertom OpenStreetMap)", + "es": "¿Hay algo mal en cómo está mapeado esto, que no pudiste solucionar aquí? (deja una nota para los expertos de OpenStreetMap)" }, "freeform": { "key": "fixme", diff --git a/assets/themes/advertising/advertising.json b/assets/themes/advertising/advertising.json index 979dc9448..0f18beb8e 100644 --- a/assets/themes/advertising/advertising.json +++ b/assets/themes/advertising/advertising.json @@ -13,11 +13,14 @@ "pl": "Reklamy", "it": "Pubblicità", "da": "Reklamer", - "zh_Hans": "广告" + "zh_Hans": "广告", + "ru": "Реклама", + "uk": "Реклама", + "hu": "Reklámok" }, "description": { "ca": "Alguna vegada t'has preguntat quanta publictat hi ha als nostres carrers i carreteres? Amb aquest mapa podràs trobar i afegir informació de tots els elements publictaris que t'hi trobes pel carrer", - "es": "¿Alguna vez te has preguntado cuanta publicidad hay en nuestras calles y carreteras? Con este mapa podrás encontrar y añadir información de todos los elementos publicitarios que te encuentres por la calle", + "es": "¿Alguna vez te preguntaste cuánta publicidad hay en nuestras calles y carreteras? Con este mapa puedes encontrar y agregar información sobre todos los elementos publicitarios que encuentres en la calle", "en": "Have you ever wondered how many advertising there are in our streets and roads? With this map you could find and add information about all the advertising features that you can find on the street", "de": "Haben Sie sich schon einmal gefragt, wie viele Werbeanlagen es in unseren Straßen und Wegen gibt? Hier können Sie Informationen über alle Werbeeinrichtungen finden und hinzufügen, die Sie auf der Straße begegnen", "cs": "Přemýšleli jste někdy o tom, kolik je v našich ulicích a na silnicích reklam? Pomocí této mapy můžete najít a doplnit informace o všech reklamních prvcích, které můžete na ulici najít", @@ -29,11 +32,12 @@ "pl": "Czy zastanawiałeś się kiedyś, ile reklam jest na naszych ulicach i drogach? Dzięki tej mapie możesz znaleźć i dodać informacje o wszystkich funkcjach reklamowych, które możesz znaleźć na ulicy", "pt": "Já se perguntou quantas propagandas existem nas nossas ruas e estradas? Com este mapa pode encontrar e adicionar informações sobre todos os recursos de publicidade que pode encontrar na rua", "it": "Vi siete mai chiesti quante pubblicità ci sono nelle nostre strade e strade? Con questa mappa è possibile trovare e aggiungere informazioni su tutte le caratteristiche pubblicitarie che si possono trovare sulla strada", - "zh_Hans": "你是否曾经想过我们的街道和道路上有多少广告?通过这张地图,你可以查找并添加有关街道上所有广告特征的信息" + "zh_Hans": "你是否曾经想过我们的街道和道路上有多少广告?通过这张地图,你可以查找并添加有关街道上所有广告特征的信息", + "uk": "Чи замислювалися ви будь-коли над тим, скільки реклами знаходиться на наших вулицях та дорогах? За допомогою цієї мапи ви можете знайти та додати інформацію про всі рекламні обʼєкти, які ви можете зустріти на вулиці" }, "shortDescription": { "ca": "On puc trobar elements publicitaris?", - "es": "Dónde puedo encontrar elementos publicitarios?", + "es": "¿Dónde puedo encontrar elementos publicitarios?", "en": "Where I can find advertising features?", "de": "Wo finde ich Werbeträger?", "cs": "Kde najdu reklamní objekty?", @@ -42,7 +46,8 @@ "zh_Hant": "我能夠在那裡找到廣告物件?", "eu": "Non aurki ditzaket publizitate ezaugarriak?", "pl": "Gdzie mogę znaleźć obiekty reklamowe?", - "zh_Hans": "我可以在哪里找到广告功能?" + "zh_Hans": "我可以在哪里找到广告功能?", + "uk": "Де я можу знайти рекламні об'єкти?" }, "icon": "./assets/themes/advertising/icon.svg", "credits": [ diff --git a/assets/themes/aed/aed.json b/assets/themes/aed/aed.json index ba4f7f76b..6033c4d5e 100644 --- a/assets/themes/aed/aed.json +++ b/assets/themes/aed/aed.json @@ -7,7 +7,7 @@ "fr": "Défibrillateurs", "nl": "Defibrillatoren en AED", "de": "Defibrillatoren", - "hu": "Defibrillátor-térkép", + "hu": "Defibrillátorok", "id": "Buka Peta AED", "it": "Mappa dei defibrillatori (DAE)", "ru": "Открытая карта АВД (Автоматизированных внешних дефибрилляторов)", @@ -23,12 +23,13 @@ "da": "Hjertestartere", "cs": "Defibrilátory", "zgh": "ⴽⵛⵎ ⵖⵔ ⵜⴽⴰⵕⴹⴰ ⵏ AED", - "eu": "Desfibriladoreak" + "eu": "Desfibriladoreak", + "uk": "Дефібрилятори" }, "description": { "en": "On this map, one can find and mark nearby defibrillators", "ca": "En aquest mapa , qualsevol pot trobar i marcar els desfibril·ladors externs automàtics més propers", - "es": "En este mapa , cualquiera puede encontrar y marcar los desfibriladores externos automáticos más cercanos", + "es": "En este mapa, se pueden encontrar y marcar desfibriladores cercanos", "fr": "Sur cette carte, vous pouvez trouver et améliorer les informations sur les défibrillateurs", "nl": "Op deze kaart kan je informatie over AEDs vinden en verbeteren", "de": "Auf dieser Karte kann man nahe gelegene Defibrillatoren finden und markieren", @@ -49,7 +50,8 @@ "cs": "Na této mapě lze najít a označit defibrilátory v okolí", "zgh": "ⴳ ⵜⴽⴰⵕⴹⴰ ⴰⴷ, ⵉⵣⵎⵔⵏ ⵓⴼⴳⴰⵏ ⴰⴷ ⵢⴰⴼ ⵓⵎⵍⴰⵏ ⵅⴼ ⵡⴰⵍⵍⴰⵍⵏ ⵏ ⵜⵓⴽⴽⵙⴰ ⵏ ⵜⵔⴳⴰⴳⴰⵢⵜ", "eu": "Mapa honetan, hurbileko desfibriladoreak aurkitu eta marka daitezke", - "pt": "Neste mapa, pode-se encontrar e marcar desfibriladores próximos" + "pt": "Neste mapa, pode-se encontrar e marcar desfibriladores próximos", + "uk": "На цій мапі можна знайти та позначити дефібрилятори поруч" }, "icon": "./assets/themes/aed/aed.svg", "startZoom": 12, diff --git a/assets/themes/artwork/artwork.json b/assets/themes/artwork/artwork.json index 3188a1bdd..73e316864 100644 --- a/assets/themes/artwork/artwork.json +++ b/assets/themes/artwork/artwork.json @@ -5,7 +5,7 @@ "nl": "Kunstwerken", "fr": "Œuvres d'art", "de": "Kunstwerke", - "hu": "Műalkotástérkép", + "hu": "Műalkotás", "id": "Buka Peta Karya Seni", "it": "Opere d'arte", "ru": "Открытая карта произведений искусства", @@ -22,7 +22,8 @@ "pa_PK": "آزاد کلاکاری نقشہ", "zgh": "ⵕⵥⵎ ⵜⴰⴽⴰⵕⴹⴰ ⵏ ⵜⵡⵓⵔⵉ ⵜⴰⵏⴰⵥⵓⵕⵜ", "es": "Obras de arte", - "eu": "Artelanak" + "eu": "Artelanak", + "uk": "Витвір мистецтва" }, "description": { "en": "An open map of statues, busts, graffitis and other artwork all over the world", @@ -32,7 +33,7 @@ "id": "Peta terbuka patung, grafiti, dan karya seni lainnya di seluruh dunia", "it": "Una mappa libera delle statue, i busti, i graffiti e le altre opere d'arte di tutto il mondo", "ru": "Добро пожаловать на открытую карта произведений искусства - карту статуй, бюстов, граффити и других произведений искусства по всему миру", - "es": "Un mapa abierto de Estatuas, bustos, Graffitis y otras Obras de Arte en todo el mundo", + "es": "Un mapa abierto de estatuas, bustos, grafitis y otras obras de arte de todo el mundo", "ja": "オープン アートワーク マップへようこそ。世界中の銅像や胸像、壁の落書きなどのアートワークの地図です", "zh_Hant": "顯示全世界的雕像、半身像、塗鴉以及其他類型的藝術品的地圖", "nb_NO": "Statuer, byster, graffiti, og andre kunstverk verden over", @@ -46,7 +47,8 @@ "zgh": "ⵢⴰⵜ ⵜⴽⴰⵕⴹⴰ ⵉⵕⵥⵎⵏ ⵅⴼ ⵉⵙⴼⵔⵉⵙⵏ, ⵉⵖⵔⴰⵙⵏ ⴷ ⵜⵡⵓⵔⵉⵡⵉⵏ ⵜⵉⵏⴰⵥⵓⵕⵉⵏ ⵢⴰⴹⵏⵉⵏ ⴳ ⵓⵎⴰⴹⴰⵍ", "eu": "Estatuen, bustoen, graffitien eta mundu osoko beste artelan batzuen mapa irekia", "pt_BR": "Um mapa aberto de estátuas, bustos, grafites e outras obras de arte em todo o mundo", - "pt": "Um mapa aberto de estátuas, bustos, grafites e outras obras de arte em todo o mundo" + "pt": "Um mapa aberto de estátuas, bustos, grafites e outras obras de arte em todo o mundo", + "uk": "Відкрита мапа статуй, бюстів, графіті та інших творів мистецтва по всьому світу" }, "icon": "./assets/themes/artwork/artwork.svg", "startZoom": 12, diff --git a/assets/themes/atm/atm.json b/assets/themes/atm/atm.json index 9b82fae42..769a40528 100644 --- a/assets/themes/atm/atm.json +++ b/assets/themes/atm/atm.json @@ -16,24 +16,27 @@ "it": "Sportelli bancomat", "pl": "Bankomaty", "da": "Hæveautomater", - "zh_Hans": "自动取款机" + "zh_Hans": "自动取款机", + "uk": "Банкомати", + "hu": "Bankautomaták" }, "description": { "en": "This map shows ATMs to withdraw or deposit money", - "de": "Diese Karte zeigt Geldautomaten zum Abheben oder Einzahlen von Geld", + "de": "Diese Karte zeigt Geldautomaten zum Abheben oder Einzahlen von Bargeld", "fr": "Cette carte montre les DABs pour retirer ou déposer de l'argent", "nl": "Deze kaart toont geldautomaten waar je geld kunt afhalen of geld op de bank kan zetten", "ca": "Aquest mapa mostra caixers automàtics per a retirar o ingresar diners", "cs": "Tato mapa zobrazuje bankomaty pro výběr nebo vklad peněz", "nb_NO": "Viser minibanker for å ta ut eller sette inn penger", - "es": "Este mapa muestra los cajeros automáticos para retirar o ingresar dinero", + "es": "Este mapa muestra cajeros automáticos para retirar o depositar dinero", "id": "Peta ini menunjukkan ATM untuk menarik atau menyetorkan uang", "zh_Hant": "此地圖顯示了提款或存款的自動櫃員機", "eu": "Mapa honek dirua atera edo sartzeko kutxazain automatikoak erakusten ditu", "it": "Questa mappa mostra gli sportelli Bancomat per ritirare o depositare del denaro", "pl": "Ta mapa pokazuje bankomaty, w których można wypłacać lub wpłacać pieniądze", "da": "Dette kort viser hæveautomater, hvor du kan hæve og indsætte kontanter", - "zh_Hans": "这张地图显示了可以取款或存款的自动取款机" + "zh_Hans": "这张地图显示了可以取款或存款的自动取款机", + "uk": "На цій мапі показані банкомати, де можна зняти готівку або поповнити рахунок" }, "icon": "./assets/themes/atm/logo.svg", "layers": [ @@ -95,14 +98,15 @@ "zh_Hant": "匯入這座 ATM", "nl": "Voeg deze ATM toe", "fr": "Importer ce distributeur de billets", - "es": "Importar este ATM", + "es": "Importar este cajero automático", "ca": "Importar aquest caixer automàtic", "eu": "Inportatu kutxazain automatiko hau", "it": "Importa questo sportello bancomat", "pl": "Importuj ten bankomat", "cs": "Importovat tento bankomat", "da": "Importer denne hæveautomat", - "zh_Hans": "导入这个ATM" + "zh_Hans": "导入这个ATM", + "uk": "Імпортувати цей банкомат" }, "icon": "./assets/svg/addSmall.svg" } @@ -114,13 +118,14 @@ "render": { "en": "OpenStreetMap knows about an ATM which is {_closest_osm_poi_distance} meter away. ", "de": "OpenStreetMap kennt einen Geldautomaten, der {_closest_osm_poi_distance} Meter entfernt ist. ", - "es": "OpenStreetMap sabe sobre un ATM que es {_closest_osm_poi_distance} de distancia. ", + "es": "OpenStreetMap conoce un cajero automático a {_closest_osm_poi_distance} metros de distancia. ", "ca": "OpenStreetMap sap sobre un caixer automàtic que està a {_closest_osm_poi_distance} de distància. ", "cs": "OpenStreetMap ví o bankomatu, který je {_closest_osm_poi_distance} metr daleko. ", "pl": "OpenStreetMap wie o bankomacie oddalonym o {_closest_osm_poi_distance} metry. ", "nl": "OpenStreetMap kent een geldautomaat die {_closest_osm_poi_distance} meter weg is ", "da": "OpenStreetMap kender en hæveautomatet, som ligger {_closest_osm_poi_distance} meter væk. ", - "zh_Hans": "OpenStreetMap 知道有一个自动取款机,它距离你 {_closest_osm_poi_distance} 米。 " + "zh_Hans": "OpenStreetMap 知道有一个自动取款机,它距离你 {_closest_osm_poi_distance} 米。 ", + "uk": "OpenStreetMap знає про банкомат, що знаходиться за {_closest_osm_poi_distance} метрів від нього. " } }, { @@ -135,14 +140,15 @@ "en": "Add all the suggested tags to the closest ATM", "de": "Füge alle vorgeschlagenen Tags zum nächstgelegenen Geldautomaten hinzu", "fr": "Ajouter tous les attributs suggérés au distributeur de billets le plus proche", - "es": "Añade todas las etiquetas sugieridas al ATM más cercano", + "es": "Agregar todas las etiquetas sugeridas al cajero automático más cercano", "ca": "Afegeix totes les etiquetes suggerides al caixer automàtic més proper", "eu": "Gehitu iradokitako etiketa guztiak hurbilen dagoen kutxazainari", "pl": "Dodaj wszystkie sugerowane znaczniki do najbliższego bankomatu", "cs": "Přidání všech navrhovaných značek do nejbližšího bankomatu", "nl": "Voeg alle gesuggereerde tags toe aan de dichtstbijzijnde geldautomaat", "da": "Tilføj alle foreslåede tags til den nærmeste hæveautomat", - "zh_Hans": "将所有建议的标签添加到距离最近的自动取款机" + "zh_Hans": "将所有建议的标签添加到距离最近的自动取款机", + "uk": "Додайте всі запропоновані теги до найближчого банкомату" }, "image": "./assets/svg/addSmall.svg", "maproulette_id": "mr_taskId" diff --git a/assets/themes/bag/bag.json b/assets/themes/bag/bag.json index 274f86d13..a36ec38e2 100644 --- a/assets/themes/bag/bag.json +++ b/assets/themes/bag/bag.json @@ -7,11 +7,12 @@ "fr": "Facilitateur d'import BAG", "nb_NO": "BAG-importhjelper", "ca": "Assistent d'importació del BAG", - "es": "Ayudante de importación BAG", + "es": "Herramienta de ayuda para la importación de BAG", "cs": "Pomocník pro import BAG", "zh_Hant": "BAG 匯入助手", "pl": "Pomocnik importowy BAG", - "zh_Hans": "BAG 导入助手" + "zh_Hans": "BAG 导入助手", + "uk": "Помічник з імпорту BAG" }, "description": { "nl": "Dit thema helpt het importeren van BAG data", @@ -24,7 +25,8 @@ "es": "Este tema ayuda a importar datos de BAG", "eu": "Gai honek BAGeko datuak inportatzen laguntzen du", "pl": "Motyw ten pomaga w importowaniu danych z BAG", - "zh_Hans": "这个主题帮助导入来自BAG的数据" + "zh_Hans": "这个主题帮助导入来自BAG的数据", + "uk": "Ця тема допомагає імпортувати дані з BAG" }, "shortDescription": { "nl": "BAG import helper tool", @@ -32,11 +34,12 @@ "de": "BAG-Import-Hilfswerkzeug", "fr": "Outil de facilitation d'import BAG", "ca": "Ferramenta d'ajuda per a importar el BAG", - "es": "Herramienta de ayuda a la importación BAG", + "es": "Herramienta de ayuda para la importación de BAG", "cs": "Pomocný nástroj pro import BAG", "eu": "BAGak inportatzen laguntzeko tresna", "pl": "Narzędzie wspomagające import BAG", - "zh_Hans": "BAG 导入辅助工具" + "zh_Hans": "BAG 导入辅助工具", + "uk": "Допоміжний інструмент для імпорту BAG" }, "icon": "./assets/themes/bag/logo.svg", "startZoom": 9, @@ -58,7 +61,7 @@ "minzoom": 18, "isCounted": false, "calculatedTags": [ - "_surface:strict:=feat(get)('_surface')" + "_surface:strict:=get(feat)('_surface')" ], "tagRenderings": [ { @@ -70,11 +73,12 @@ "fr": "La référence dans le BAG est {ref:bag}", "ca": "La referència al BAG és {ref:bag}", "zgh": "ⵜⴳⴰ ⵜⵙⴰⵖⵓⵍⵜ ⴳ BAG {ref:bag}", - "es": "La referencia de BAG es {ref:bag}", + "es": "La referencia en BAG es {ref:bag}", "cs": "Reference v BAG je {ref:bag}", "pl": "Numer referencyjny w BAG to {ref:bag}", "zh_Hans": "在 BAG 中的参考是 {ref:bag}", - "fil": "Ang sanggunian sa BAG ay {ref:bag}" + "fil": "Ang sanggunian sa BAG ay {ref:bag}", + "uk": "Посилання у BAG має вигляд {ref:bag}" }, "mappings": [ { @@ -90,7 +94,8 @@ "es": "Este edificio no tiene referencia en el BAG", "pl": "Budynek ten nie ma odniesienia w BAG", "zh_Hans": "这栋建筑在BAG中没有参考信息", - "fil": "Walang sanggunian ang gusaling ito sa BAG" + "fil": "Walang sanggunian ang gusaling ito sa BAG", + "uk": "Ця будівля не має жодної згадки в Базі даних" } } ] @@ -208,7 +213,8 @@ "cs": "Budovy z registru BAG", "pl": "Budynki z rejestru BAG", "zh_Hans": "BAG 注册中的建筑物", - "fil": "Mga gusali mula sa rehistro ng BAG" + "fil": "Mga gusali mula sa rehistro ng BAG", + "uk": "Будівлі з реєстру BAG" }, "source": { "geoJson": "https://service.pdok.nl/lv/bag/wfs/v2_0?request=GetFeature&service=WFS&version=2.0.0&outputFormat=application%2Fjson%3B%20subtype%3Dgeojson&typeName=bag%3Apand&bbox={x_min}%2C{y_min}%2C{x_max}%2C{y_max}%2CCRS84&srsName=EPSG%3A4326", @@ -218,19 +224,19 @@ "minzoom": 18, "calculatedTags": [ "_overlaps_with_buildings=overlapWith(feat)('osm_buildings').filter(f => f.feat.properties.id.indexOf('-') < 0)", - "_overlaps_with=feat(get)('_overlaps_with_buildings').find(f => f.overlap > 1 /* square meter */ )", - "_overlaps_with_properties=feat(get)('_overlaps_with')?.feat?.properties", - "_overlap_percentage=Math.round(100 * (feat(get)('_overlaps_with')?.overlap / feat(get)('_overlaps_with_properties')['_surface:strict']))", - "_reverse_overlap_percentage=Math.round(100 * (feat(get)('_overlaps_with')?.overlap / feat(get)('_surface')))", + "_overlaps_with=get(feat)('_overlaps_with_buildings').find(f => f.overlap > 1 /* square meter */ )", + "_overlaps_with_properties=get(feat)('_overlaps_with')?.feat?.properties", + "_overlap_percentage=Math.round(100 * (get(feat)('_overlaps_with')?.overlap / get(feat)('_overlaps_with_properties')['_surface:strict']))", + "_reverse_overlap_percentage=Math.round(100 * (get(feat)('_overlaps_with')?.overlap / get(feat)('_surface')))", "_bag_obj:in_construction=feat.properties.status.startsWith('Bouwvergunning verleend') || feat.properties.status.startsWith('Bouw gestart')", "_bag_obj:construction=(feat.properties.gebruiksdoel == 'woonfunctie') ? ((Number(feat.properties.aantal_verblijfsobjecten) == 1) ? 'house' : 'apartments') : 'yes'", "_bag_obj:building=(feat.properties.status.startsWith('Bouwvergunning verleend') || feat.properties.status.startsWith('Bouw gestart')) ? 'construction' : feat.properties['_bag_obj:construction']", "_bag_obj:ref:bag=Number(feat.properties.identificatie)", "_bag_obj:source:date=new Date().toISOString().split('T')[0]", "_bag_obj:start_date=feat.properties.bouwjaar", - "_osm_obj:id=feat(get)('_overlaps_with_properties')?.id", - "_osm_obj:building=feat(get)('_overlaps_with_properties')?.building", - "_imported_osm_object_found:=Number(feat.properties.identificatie)==Number(feat(get)('_overlaps_with_properties')['ref:bag'])" + "_osm_obj:id=get(feat)('_overlaps_with_properties')?.id", + "_osm_obj:building=get(feat)('_overlaps_with_properties')?.building", + "_imported_osm_object_found:=Number(feat.properties.identificatie)==Number(get(feat)('_overlaps_with_properties')['ref:bag'])" ], "tagRenderings": [ { @@ -262,9 +268,10 @@ "ca": "El valors correctes encara no s'ha calculat. Refresca la pàgina", "cs": "Zatím nebyly vypočteny správné hodnoty. Aktualizujte stránku", "nb_NO": "Har ikke regnet ut riktige verdier enda. Gjenoppfrisk siden.", - "es": "Aún no se han calculado los valores correctos. Actualice esta página", + "es": "Aún no se calcularon los valores correctos. Actualiza esta página", "pl": "Jeszcze nie obliczono poprawnych wartości. Odśwież tę stronę", - "zh_Hans": "尚未计算出正确的值。请刷新此页面" + "zh_Hans": "尚未计算出正确的值。请刷新此页面", + "uk": "Ще не розрахували правильні значення. Оновіть цю сторінку" } }, { @@ -295,7 +302,8 @@ "cs": "Reference v BAG je {_bag_obj:ref:bag}", "pl": "Odniesienie w BAG to {_bag_obj:ref:bag}", "zh_Hans": "在 BAG 中的参考文献是 {_bag_obj:ref:bag}", - "fil": "Ang sanggunian sa BAG ay {_bag_obj:ref:bag}" + "fil": "Ang sanggunian sa BAG ay {_bag_obj:ref:bag}", + "uk": "Посилання у BAG має вигляд {_bag_obj:ref:bag}" } }, { @@ -307,13 +315,14 @@ "nl": "Dit gebouw is gebouwd in {_bag_obj:start_date}", "fr": "Le bâtiment a été construit en {_bag_obj:start_date}", "ca": "L’edifici va ser construït al {_bag_obj:start_date}4", - "es": "El edificio fue construido en {_bag_obj:start_date}", + "es": "Este edificio se construyó en {_bag_obj:start_date}", "cs": "Tato budova byla postavena v {_bag_obj:start_date}", "nb_NO": "Bygning oppført {_bag_obj:start_date}", "pl": "Ten budynek zbudowano w {_bag_obj:start_date}", "pt": "Esta construção é de {_bag_obj:start_date}", "zh_Hans": "这座建筑建于 {_bag_obj:start_date}", - "fil": "Ang gusaling ito ay itinayo noong {_bag_obj:start_date}" + "fil": "Ang gusaling ito ay itinayo noong {_bag_obj:start_date}", + "uk": "Ця будівля була побудована у {_bag_obj:start_date}" }, "mappings": [ { @@ -326,10 +335,11 @@ "ca": "L’edifici es va començar al {_bag_obj:start_date}", "cs": "Stavba byla zahájena v {_bag_obj:start_date}", "nb_NO": "Oppføring startet {_bag_obj:start_date}", - "es": "Este edificio se empezó a construir en {_bag_obj:start_date}", + "es": "La construcción del edificio comenzó en {_bag_obj:start_date}", "pl": "Budynek został zbudowany w {_bag_obj:start_date}", "zh_Hans": "该建筑始建于 {_bag_obj:start_date}", - "fil": "Sinimulan ang gusali noong {_bag_obj:start_date}" + "fil": "Sinimulan ang gusali noong {_bag_obj:start_date}", + "uk": "Будівництво було розпочато у {_bag_obj:start_date}" } } ] @@ -344,10 +354,11 @@ "ca": "El tipus d'edifici és {_bag_obj:building}", "cs": "Typ budovy je {_bag_obj:building}.", "nb_NO": "Dette er en bygning av typen {_bag_obj:building}", - "es": "El edificio es de tipo {_bag_obj:building}", + "es": "El tipo de edificio es un {_bag_obj:building}", "pl": "Rodzaj budynku to {_bag_obj:building}", "zh_Hans": "建筑类型是 {_bag_obj:building}", - "fil": "Ang uri ng gusali ay {_bag_obj:building}" + "fil": "Ang uri ng gusali ay {_bag_obj:building}", + "uk": "Тип будівлі - {_bag_obj:building}" }, "mappings": [ { @@ -362,7 +373,8 @@ "es": "El tipo de edificio será un {_bag_obj:construction}", "pl": "Budynek będzie o typie {_bag_obj:construction}", "zh_Hans": "建筑类型将是 {_bag_obj:construction}", - "fil": "Ang uri ng gusali ay magiging {_bag_obj:construction}" + "fil": "Ang uri ng gusali ay magiging {_bag_obj:construction}", + "uk": "Типом будівлі буде {_bag_obj:construction}" } } ] @@ -423,11 +435,11 @@ "_bag_obj:addr:housenumber=`${feat.properties.huisnummer}${feat.properties.huisletter}${(feat.properties.toevoeging != '') ? '-' : ''}${feat.properties.toevoeging}`", "_bag_obj:ref:bag=Number(feat.properties.identificatie)", "_bag_obj:source:date=new Date().toISOString().split('T')[0]", - "_osm_obj:addr:city:=feat(get)('_closed_osm_addr')['addr:city']", - "_osm_obj:addr:housenumber:=feat(get)('_closed_osm_addr')['addr:housenumber']", - "_osm_obj:addr:postcode:=feat(get)('_closed_osm_addr')['addr:postcode']", - "_osm_obj:addr:street:=feat(get)('_closed_osm_addr')['addr:street']", - "_imported_osm_object_found:=(feat.properties.woonplaats==feat(get)('_closed_osm_addr')['addr:city'])&&(feat(get)('_bag_obj:addr:housenumber')==feat(get)('_closed_osm_addr')['addr:housenumber'])&&(feat.properties.postcode==feat(get)('_closed_osm_addr')['addr:postcode'])&&(feat.properties.openbare_ruimte==feat(get)('_closed_osm_addr')['addr:street'])" + "_osm_obj:addr:city:=get(feat)('_closed_osm_addr')['addr:city']", + "_osm_obj:addr:housenumber:=get(feat)('_closed_osm_addr')['addr:housenumber']", + "_osm_obj:addr:postcode:=get(feat)('_closed_osm_addr')['addr:postcode']", + "_osm_obj:addr:street:=get(feat)('_closed_osm_addr')['addr:street']", + "_imported_osm_object_found:=(feat.properties.woonplaats==get(feat)('_closed_osm_addr')['addr:city'])&&(get(feat)('_bag_obj:addr:housenumber')==get(feat)('_closed_osm_addr')['addr:housenumber'])&&(feat.properties.postcode==get(feat)('_closed_osm_addr')['addr:postcode'])&&(feat.properties.openbare_ruimte==get(feat)('_closed_osm_addr')['addr:street'])" ], "tagRenderings": [ { diff --git a/assets/themes/benches/benches.json b/assets/themes/benches/benches.json index f3e45b8d1..a91f9b814 100644 --- a/assets/themes/benches/benches.json +++ b/assets/themes/benches/benches.json @@ -22,7 +22,8 @@ "eu": "Eserlekuak", "pl": "Ławki", "pt": "Bancadas", - "fil": "Mga upuan" + "fil": "Mga upuan", + "uk": "Лавки" }, "description": { "en": "This map shows all benches that are recorded in OpenStreetMap: Individual benches, and benches belonging to public transport stops or shelters.", @@ -35,13 +36,14 @@ "zh_Hant": "這份地圖顯示開放街圖上所有記錄的長椅:單獨的長椅,屬於大眾運輸站點或涼亭的長椅。", "hu": "Ez a térkép megjeleníti az OpenStreetMap-en rögzített összes padot: egyes padokat, valamint tömegközlekedési megállókban vagy menedékhelyeken található padokat. OpenStreetMap-fiókkal Ön is felrajzolhat új padokat, vagy szerkesztheti a meglévő padok részleteit.", "ca": "Aquest mapa mostra tots els bancs que hi ha a OpenStreetMap: bancs individuals i els bancs que hi ha a parades o refugis de transport públic.", - "es": "Este mapa muestra todos los bancos que están registrados en OpenStreetMap: Bancos individuales, bancos que pertenecen a paradas o marquesinas del transporte público.", + "es": "Este mapa muestra todos los bancos registrados en OpenStreetMap: bancos individuales y bancos pertenecientes a paradas o refugios de transporte público.", "nb_NO": "Viser alle benker som er registrert i OpenStreetMap: Individuelle benker, og benker som tilhører offentlig transport eller -skur. Med en OpenStreetMap-konto kan du kartlegge nye benker eller redigere eksisterende.", "da": "Dette kort viser alle bænke, der er registreret i OpenStreetMap: Individuelle bænke og bænke, der hører til offentlige transportpladser eller shelters. Med en OpenStreetMap-konto kan du kortlægge nye bænke eller redigere detaljer om eksisterende bænke.", "cs": "Tato mapa zobrazuje všechny lavičky, které jsou zaznamenány v OpenStreetMap: samostatné lavičky a lavičky patřící k zastávkám veřejné dopravy nebo přístřeškům.", "eu": "OpenStreetMap-en erregistratzen diren banku guztiak erakusten ditu mapa honek: garraio publikoko geralekuetako edo babeslekuetako banakako bankuak eta bankuak.", "pl": "Mapa ta pokazuje wszystkie ławki zarejestrowane w OpenStreetMap: ławki indywidualne oraz ławki należące do przystanków komunikacji miejskiej lub wiat.", - "zh_Hans": "这张地图显示了所有记录在 OpenStreetMap 中的长椅:包括独立长椅和属于公共交通站点或候车亭的长椅。" + "zh_Hans": "这张地图显示了所有记录在 OpenStreetMap 中的长椅:包括独立长椅和属于公共交通站点或候车亭的长椅。", + "uk": "На цій мапі показані всі лавки, які зафіксовані в OpenStreetMap: Окремі лавки та лавки, що належать до зупинок громадського транспорту або прихистків." }, "shortDescription": { "en": "A map of benches", @@ -64,7 +66,8 @@ "eu": "Eserleku mapa bat", "pl": "Mapa ławek", "pt": "Um mapa de bancadas", - "fil": "Mapa ng upuan" + "fil": "Mapa ng upuan", + "uk": "Мапа лавок" }, "icon": "./assets/themes/benches/bench_poi.svg", "credits": [ diff --git a/assets/themes/bicycle_parkings/bicycle_parkings.json b/assets/themes/bicycle_parkings/bicycle_parkings.json index 0368d82c4..f0f15c816 100644 --- a/assets/themes/bicycle_parkings/bicycle_parkings.json +++ b/assets/themes/bicycle_parkings/bicycle_parkings.json @@ -7,21 +7,26 @@ "fr": "Stationnement vélo", "pl": "Parkingi dla rowerów", "da": "Cykelparkering", - "es": "Aparcamiento de bicicletas", + "es": "Estacionamientos de bicicletas", "zh_Hans": "自行车停车场", "it": "Parcheggi per biciclette", "fil": "Mga paradahan ng bisikleta", - "cs": "Parkování jízdních kol" + "cs": "Parkování jízdních kol", + "ru": "Велопарковки", + "uk": "Велопарковки", + "hu": "Kerékpártárolók" }, "description": { "en": "A map showing all types of bicycle parkings", "de": "Eine Karte mit allen Arten von Fahrradabstellplätzen", - "es": "Un mapa que muestra todos los tipos de aparcamientos de bicicletas", + "es": "Un mapa que muestra todos los tipos de estacionamientos para bicicletas", "zh_Hans": "一张显示所有类型自行车停车设施的地图", "it": "Una mappa che mostra tutti i tipi di parcheggi per biciclette", "fil": "Mapa na nagpapakita ng lahat ng uri ng paradahan ng bisikleta", "ca": "Un mapa que mostra tots els tipus d'aparcaments de bicicletes", - "cs": "Mapa všech typů parkovišť pro jízdní kola" + "cs": "Mapa všech typů parkovišť pro jízdní kola", + "uk": "Мапа, що показує всі типи велосипедних парковок", + "pl": "Mapa pokazująca wszystkie typy parkingów dla rowerów" }, "icon": "./assets/themes/bicycle_parkings/logo.svg", "layers": [ diff --git a/assets/themes/bicycle_rental/bicycle_rental.json b/assets/themes/bicycle_rental/bicycle_rental.json index a567c8d79..702dff477 100644 --- a/assets/themes/bicycle_rental/bicycle_rental.json +++ b/assets/themes/bicycle_rental/bicycle_rental.json @@ -16,14 +16,17 @@ "eu": "Bizikleta alokairua", "pl": "Wypożyczanie rowerów", "zh_Hans": "自行车租赁", - "it": "Noleggio biciclette" + "it": "Noleggio biciclette", + "ru": "Прокат велосипедов", + "uk": "Прокат велосипедів", + "hu": "Kerékpárkölcsönzők" }, "description": { "en": "On this map, you'll find the many bicycle rental stations as they are known by OpenStreetMap", "nl": "Op deze kaart vind je verschillende fietsverhuurpunten en fietsverhuurzaken", - "de": "Auf dieser Karte finden Sie alle Fahrradverleihstationen, die in OpenStreetMap eingetragen wurden", + "de": "Eine Karte mit allen Fahrradverleihstationen, die in OpenStreetMap eingetragen wurden", "fr": "Vous trouverez sur cette carte toutes les stations de location de vélo telles qu'elles sont référencées dans OpenStreetMap", - "es": "En este mapa, encontrará las numerosas estaciones de alquiler de bicicletas tal y como las conoce OpenStreetMap", + "es": "En este mapa, encontrarás las numerosas estaciones de alquiler de bicicletas tal como se conocen en OpenStreetMap", "da": "På dette kort finder du de mange cykeludlejningsstationer, som OpenStreetMap kender dem", "nb_NO": "Her finner du mange sykkelutleiestasjoner slik de er kjent for OpenStreetMap", "ca": "En aquest mapa, trobaràs nombroses estacions de lloguer de bicicletes que són conegudes per OpenStreetMap", @@ -31,7 +34,8 @@ "eu": "Mapa honetan aurkituko dituzu bizikletak alokatzeko OpenStreetMap-ek ezagutzen dituen estazio ugari", "it": "In questa mappa trovi i luoghi conosciuti da OpenStreetMap dove puoi noleggiare delle biciclette", "pl": "Na tej mapie znajdziesz wiele stacji wynajmu rowerów, znanych w OpenStreetMap", - "zh_Hans": "在这张地图上,你可以找到许多由 OpenStreetMap 记录的自行车租赁站点" + "zh_Hans": "在这张地图上,你可以找到许多由 OpenStreetMap 记录的自行车租赁站点", + "uk": "На цій мапі ви знайдете багато станцій прокату велосипедів, що є на OpenStreetMap" }, "shortDescription": { "en": "A map with bicycle rental stations and bicycle rental shops", @@ -39,7 +43,7 @@ "de": "Eine Karte mit Fahrradverleihstationen und Fahrradverleihgeschäften", "id": "Peta dengan stasiun persewaan sepeda dan toko penyewaan sepeda", "fr": "Une carte avec des stations et magasins de location de vélos", - "es": "Un mapa con estaciones de alquiler de bicicletas y tiendas de alquiler de bicicletas", + "es": "Un mapa con estaciones y tiendas de alquiler de bicicletas", "nb_NO": "Sykkelutleiestasjoner og sykkelutleiebutikker", "ca": "Un mapa amb estacions de lloguer de bicicletes i botigues de lloguer de bicicletes", "da": "Et kort med cykeludlejningsstationer og cykeludlejningsbutikker", @@ -47,7 +51,8 @@ "eu": "Bizikletak alokatzeko estazioen eta bizikletak alokatzeko denden mapa", "pl": "Mapa ze stacjami wypożyczania rowerów i wypożyczalniami rowerów", "zh_Hans": "一张包含自行车租赁站点和自行车租赁商店的地图", - "it": "Una mappa con le stazioni e i negozi per il noleggio delle biciclette" + "it": "Una mappa con le stazioni e i negozi per il noleggio delle biciclette", + "uk": "Мапа зі станціями та пунктами прокату велосипедів" }, "icon": "./assets/themes/bicycle_rental/logo.svg", "layers": [ diff --git a/assets/themes/bicyclelib/bicyclelib.json b/assets/themes/bicyclelib/bicyclelib.json index 7184d3612..c8367cd87 100644 --- a/assets/themes/bicyclelib/bicyclelib.json +++ b/assets/themes/bicyclelib/bicyclelib.json @@ -21,7 +21,8 @@ "es": "Bibliotecas de bicicletas", "eu": "Bizikleta liburutegia", "pt": "Bibliotecas de bicicletas", - "zh_Hans": "自行车图书馆" + "zh_Hans": "自行车图书馆", + "uk": "Велобібліотеки" }, "description": { "nl": "Een fietsbibliotheek is een plaats waar men een fiets kan lenen, vaak voor een klein bedrag per jaar. Een typisch voorbeeld zijn kinderfietsbibliotheken, waar men een fiets op maat van het kind kan lenen. Is het kind de fiets ontgroeid, dan kan het te kleine fietsje omgeruild worden voor een grotere.", @@ -37,10 +38,11 @@ "ca": "Una biblioteca de bicicletes és un lloc on es poden prestar bicicletes, sovint per una petita quota anual. Un cas d'ús notable són les biblioteques de bicicletes per als nens, que els permet canviar per una bicicleta més gran quan han superat la seva bicicleta actual", "da": "Et cykelbibliotek er et sted, hvor cykler kan udlånes, ofte mod et mindre årligt gebyr. Et bemærkelsesværdigt eksempel er cykelbiblioteker til børn, som giver dem mulighed for at skifte til en større cykel, når de er vokset fra deres nuværende cykel", "cs": "\"Bicycle library\" je místo, kde si lze půjčit jízdní kola, často za malý roční poplatek. Významným případem použití jsou \"bicycle libraries\" pro děti, které jim umožňují vyměnit kolo za větší, když ze svého stávajícího kola vyrostou", - "es": "Una biblioteca de bicicletas es un lugar donde se prestan bicicletas, a menudo por una pequeña cuota anual. Un caso de uso notable son las bibliotecas de bicicletas para niños, que les permiten cambiar por una bicicleta más grande cuando les queda pequeña", + "es": "Una biblioteca de bicicletas es un lugar donde se pueden prestar bicicletas, a menudo por una pequeña tarifa anual. Un caso de uso notable son las bibliotecas de bicicletas para niños, que les permite cambiar a una bicicleta más grande cuando superan su bicicleta actual", "eu": "Bizikletak uzteko lekua da bizikleta-liburutegia, askotan urteko kuota txiki baten truke. Kasu aipagarri bat haurrentzako bizikleta-liburutegiak dira, egungo bizikleta gainditu dutenean bizikleta handiago baterako aldatzeko aukera ematen dietenak", "pl": "Biblioteka rowerowa to miejsce, w którym można wypożyczyć rowery, często za niewielką opłatą roczną. Godnym uwagi przypadkiem zastosowania są biblioteki rowerowe dla dzieci, które pozwalają im zmienić rower na większy, gdy wyrosną z obecnego roweru", - "zh_Hans": "自行车图书馆是一个可以借用自行车的地方,通常需要支付小额的年度费用。一个显著的使用场景是儿童自行车图书馆,这允许孩子们在长大后更换成更大的自行车" + "zh_Hans": "自行车图书馆是一个可以借用自行车的地方,通常需要支付小额的年度费用。一个显著的使用场景是儿童自行车图书馆,这允许孩子们在长大后更换成更大的自行车", + "uk": "Велобібліотека - це місце, де можна взяти велосипед напрокат, часто за невелику річну плату. Особливий випадок використання - велосипедні бібліотеки для дітей, які дозволяють їм пересісти на більший велосипед, коли вони виростуть зі свого нинішнього" }, "icon": "./assets/themes/bicyclelib/logo.svg", "layers": [ diff --git a/assets/themes/binoculars/binoculars.json b/assets/themes/binoculars/binoculars.json index de754ea26..a67ba560e 100644 --- a/assets/themes/binoculars/binoculars.json +++ b/assets/themes/binoculars/binoculars.json @@ -9,14 +9,16 @@ "zh_Hant": "望遠鏡", "hu": "Távcsövek", "fr": "Jumelles", - "es": "Binoculares", + "es": "Prismáticos", "da": "Kikkerter", "ca": "Prismàtics", "pa_PK": "بائینوکولر", "cs": "Dalekohledy", "eu": "Binokularrak", "pl": "Lornetki", - "zh_Hans": "望远镜" + "zh_Hans": "望远镜", + "ru": "Бинокли", + "uk": "Біноклі" }, "description": { "en": "A map with binoculars fixed in place with a pole. It can typically be found on touristic locations, viewpoints, on top of panoramic towers or occasionally on a nature reserve.", @@ -26,14 +28,15 @@ "zh_Hant": "固定一地的望遠鏡地圖,特別是能夠在旅遊景點、觀景點、城鎮環景點,或是自然保護區找到。", "hu": "Rúdra rögzített távcsövek térképe. Jellemzően turisztikailag érdekes, panorámás helyeken, kilátótornyok tetején vagy természetvédelmi területen találhatók.", "fr": "Une carte des longue-vues fixes. Se trouve typiquement sur les sites touristiques, les points de vue, les tours panoramiques ou dans les réserves naturelles.", - "es": "Un mapa con prismáticos fijos en un poste. Suele encontrarse en lugares turísticos, miradores, en lo alto de torres panorámicas u ocasionalmente en una reserva natural.", + "es": "Un mapa con prismáticos fijos en su lugar con un poste. Normalmente se pueden encontrar en lugares turísticos, miradores, en la cima de torres panorámicas o ocasionalmente en una reserva natural.", "nb_NO": "Stedsbundne kikkerter på påle. Vanligvis på turiststeder, utkikkspunkter, på toppen av utsiktstårn, og noen ganger i naturreservat.", "ca": "Un mapa amb prismàtics fixos en un pal. Sol trobar-se en llocs turístics, miradors, a la part alta de torres panoràmiques o ocasionalment en una reserva natural.", "da": "Et kort over udsigtskikkert fastgjort på en stang. Det kan typisk findes på turistmæssige steder, udsigtspunkter, på toppen af panoramatårne eller lejlighedsvis på et naturreservat.", "cs": "Mapa s dalekohledem upevněným na místě pomocí tyče. Obvykle se nachází na turistických místech, rozhlednách, vrcholech panoramatických věží nebo příležitostně v přírodních rezervacích.", "eu": "Zutoin batean prismatiko finkoak dituen mapa. Leku turistikoetan, begiratokietan, dorre panoramikoen gainean edo, batzuetan, erreserba natural batean egoten da.", "pl": "Mapa z lornetkami zamocowanymi na słupku. Zwykle można je odnaleźć w lokalizacjach turystycznych, punktach widokowych, na szczytach wież panoramicznych lub czasami w rezerwacie przyrody.", - "zh_Hans": "一张显示固定在杆子上的望远镜的地图。这种望远镜通常可以在旅游景点、观景点、全景塔顶部或偶尔在自然保护区找到。" + "zh_Hans": "一张显示固定在杆子上的望远镜的地图。这种望远镜通常可以在旅游景点、观景点、全景塔顶部或偶尔在自然保护区找到。", + "uk": "Мапа стаціонарних біноклів. Зазвичай їх можна знайти в туристичних місцях, на оглядових майданчиках, на вершинах панорамних веж та іноді в природних заповідниках." }, "shortDescription": { "en": "A map with fixed binoculars", @@ -50,7 +53,8 @@ "cs": "Mapa s pevnými dalekohledy", "eu": "Prismatiko finkoak dituen mapa", "pl": "Mapa ze stałymi lornetkami", - "zh_Hans": "一张显示固定望远镜的地图" + "zh_Hans": "一张显示固定望远镜的地图", + "uk": "Мапа стаціонарних біноклів" }, "icon": "./assets/layers/binocular/telescope.svg", "layers": [ diff --git a/assets/themes/blind_osm/blind_osm.json b/assets/themes/blind_osm/blind_osm.json index 859aa5dec..0e8858165 100644 --- a/assets/themes/blind_osm/blind_osm.json +++ b/assets/themes/blind_osm/blind_osm.json @@ -15,7 +15,9 @@ "pl": "OSM dla niewidomych", "da": "OSM for blinde", "zh_Hans": "为盲人设计的OSM", - "fil": "OSM para sa mga bulag" + "fil": "OSM para sa mga bulag", + "uk": "OSM для незрячих", + "hu": "OSM vakoknak" }, "description": { "en": "Help to map features relevant for the blind", @@ -25,11 +27,12 @@ "ca": "Ajuda a mapejar elements rellevants per a persones amb discapacitat visual", "cs": "Pomozte zmapovat objekty důležité pro nevidomé", "nb_NO": "Relevante funksjoner for blinde", - "es": "Ayuda para cartografiar elementos relevantes para invidentes", + "es": "Ayuda a mapear elementos relevantes para personas ciegas", "eu": "Itsuentzako elementu garrantzitsuak kartografiatzeko laguntza", "it": "Aiuta a mappare le caratteristiche importanti per i non vedenti", "pl": "Pomóż umieszczać na mapie obiekty ważne dla niewidomych", - "zh_Hans": "帮助绘制与盲人相关的设施" + "zh_Hans": "帮助绘制与盲人相关的设施", + "uk": "Допоможіть нанести на мапу обʼєкти, важливі для незрячих" }, "icon": "./assets/themes/blind_osm/Blindicon.svg", "startZoom": 20, @@ -114,6 +117,8 @@ "minzoom": 17 } }, - "stairs" + "stairs", + "tactile_map", + "tactile_model" ] -} +} \ No newline at end of file diff --git a/assets/themes/bookcases/bookcases.json b/assets/themes/bookcases/bookcases.json index d2a923292..5e3d49ce3 100644 --- a/assets/themes/bookcases/bookcases.json +++ b/assets/themes/bookcases/bookcases.json @@ -13,13 +13,14 @@ "nb_NO": "Kart over åpne bokhyller", "hu": "Könyvespolctérkép", "ca": "Llibreries públiques", - "es": "Estanterías publicas", + "es": "Bibliotecas libres", "pa_PK": "آزاد کتاب نقشہ", "cs": "Veřejné knihovničky", "eu": "Apalategi publikoak", "pl": "Publiczne regały na książki", "da": "Bogbytteskabe", - "zh_Hans": "公共书柜" + "zh_Hans": "公共书柜", + "uk": "Публічні книжкові шафи" }, "description": { "en": "A public bookcase is a small streetside cabinet, box, old phone booth or some other objects where books are stored. Everyone can place or take a book. This map aims to collect all these bookcases.", @@ -31,13 +32,14 @@ "zh_Hant": "公共書架是街邊箱子、盒子、舊的電話亭或是其他存放書本的物件,每一個人都能放置或拿取書本。這份地圖收集所有類型的書架,你可以探索你附近新的書架,同時也能用免費的開放街圖帳號來快速新增你最愛的書架。", "it": "Una libreria pubblica è una piccola cabina a lato della strada, un locale, una vecchia cabina telefonica o qualche altro luogo in cui sono tenuti libri. Chiunque può lasciare o prendere libri. Scopo della mappa è individuarle. Se scopri nuove librerie nelle vicinanze, puoi facilmente aggiungerle con un account OpenStreetMap.", "hu": "A nyilvános könyvespolc egy kis utcai szekrény, doboz, régi telefonfülke vagy más tárgy, ahol könyveket tárolnak. Bárki tehet rá vagy vihet el róla könyvet. Ez a térkép ezeket a könyvespolcokat kívánja összegyűjteni. Ha felfedezett egy új könyvespolcot a közelben, akkor egy ingyenes OpenStreetMap-fiókkal gyorsan fel is rajzolhatja a térképre.", - "es": "Una librería pública es un pequeño armario en la calle, una caja, una vieja cabina telefónica o algún otro objeto donde se guardan libros. Todo el mundo puede colocar o coger un libro. Este mapa pretende recoger todas estas librerías.", + "es": "Una biblioteca pública es un pequeño armario callejero, caja, cabina telefónica antigua u otros objetos donde se almacenan libros. Cualquiera puede colocar o tomar un libro. Este mapa tiene como objetivo recopilar todas estas bibliotecas.", "da": "Et bogbytteskab er et lille skab, en kasse, en gammel telefonboks eller andre steder, hvor bøger opbevares. Enhver kan lægge eller tage en bog. Dette kort har til formål at samle alle disse bogbytteskabe.", "ca": "Una llibreria pública és un xicotet armari al carrer, una caixa, una vella cabina telefònica o algun altre objecte on es guarden llibres. Tothom pot col·locar o agafar un llibre. Aquest mapa pretén recollir totes aquestes llibreries.", "cs": "Veřejná knihovna je malá pouliční skříňka, krabice, stará telefonní budka nebo jiný předmět, ve kterém jsou uloženy knihy. Kdokoliv do ní může umístit, nebo si z ní vzít knihu. Cílem této mapy je shromáždit všechny tyto knihovny.", "eu": "Kale-liburutegi publiko bat kale-armairu txiki bat da, kaxa, telefono-kabina zaharra edo liburuak gordetzeko beste objektu batzuk. Guztiek jar edo har dezakete liburu bat. Koaderno horiek guztiak biltzea da mapa honen helburua.", "pl": "Publiczny regał na książki to mała przyuliczna szafka, pudełko, stara budka telefoniczna lub inne przedmioty, w których przechowywane są książki. Każdy może w nich zostawić lub zabrać książkę. Celem tej mapy jest zebranie wszystkich tych regałów.", - "zh_Hans": "公共书柜是一个小型街边橱柜、盒子、旧电话亭或其他储存书籍的物品。任何人都可以放置或取走一本书。这张地图旨在收集所有这些书柜。" + "zh_Hans": "公共书柜是一个小型街边橱柜、盒子、旧电话亭或其他储存书籍的物品。任何人都可以放置或取走一本书。这张地图旨在收集所有这些书柜。", + "uk": "Публічна книжкова шафа - це невелика вулична шафа, ящик, стара телефонна будка або інший об'єкт, де зберігаються книги. Будь-хто може покласти або взяти книгу. Ця мапа має на меті зібрати всі ці книжкові шафи." }, "icon": "./assets/themes/bookcases/bookcase.svg", "layers": [ diff --git a/assets/themes/cafes_and_pubs/cafes_and_pubs.json b/assets/themes/cafes_and_pubs/cafes_and_pubs.json index 46d05775f..4d68c786a 100644 --- a/assets/themes/cafes_and_pubs/cafes_and_pubs.json +++ b/assets/themes/cafes_and_pubs/cafes_and_pubs.json @@ -11,21 +11,22 @@ "ru": "Кафе и пабы", "hu": "Kávézók és kocsmák", "ca": "Cafés i bars", - "es": "Cafeterías y pubs", + "es": "Cafés y pubs", "fr": "Cafés et pubs", "da": "Caféer og pubber", "pa_PK": "کیفے یا پب", "cs": "Kavárny a hospody", "eu": "Kafetegiak eta pubak", "pl": "Kawiarnie i puby", - "zh_Hans": "咖啡馆和酒吧" + "zh_Hans": "咖啡馆和酒吧", + "uk": "Кафе та паби" }, "description": { "en": "Coffeehouses, pubs and bars", "nl": "Cafés, kroegen en drinkgelegenheden", "de": "Cafés, Kneipen und Bars", "ca": "Cafeteries, bars i pubs", - "es": "Cafés, pubs y bares", + "es": "Cafeterías, pubs y bares", "fr": "Bars et pubs", "da": "Pubber og barer", "nb_NO": "Kneiper og barer", @@ -35,7 +36,8 @@ "zh_Hant": "咖啡廳、俱樂部與酒吧", "eu": "Kafetegiak, pubak eta tabernak", "pl": "Kawiarnie, puby i bary", - "zh_Hans": "咖啡馆、酒吧和酒吧" + "zh_Hans": "咖啡馆、酒吧和酒吧", + "uk": "Кав'ярні, паби та бари" }, "icon": "./assets/layers/cafe_pub/pub.svg", "layers": [ diff --git a/assets/themes/campersite/campersite.json b/assets/themes/campersite/campersite.json index c9749e3b8..1c28bdfdd 100644 --- a/assets/themes/campersite/campersite.json +++ b/assets/themes/campersite/campersite.json @@ -12,12 +12,13 @@ "de": "Wohnmobilstellplätze", "hu": "Lakóautós megállóhelyek", "ca": "Llocs d'acampada", - "es": "Campings", + "es": "Áreas para autocaravanas / Campings", "da": "Campingpladser", "pa_PK": "کیمپ‌سایٹاں", "cs": "Kempovací místa", "eu": "Kanpinak", - "pl": "Miejsca dla kamperów" + "pl": "Miejsca dla kamperów", + "uk": "Кемпінги" }, "description": { "en": "This site collects all official camper stopover places and places where you can dump grey and black water. You can add details about the services provided and the cost. Add pictures and reviews.", @@ -29,13 +30,14 @@ "fr": "Ce site collecte les zones de camping officielles ainsi que les aires de vidange. Il est possible d’ajouter des détails à propos des services proposés ainsi que leurs coûts. Ajoutez vos images et avis.", "de": "Eine Karte für offizielle Wohnmobilstellplätze und Orte zur Entsorgung von Schmutzwasser. Sie können Details über die angebotenen Dienstleistungen und die Kosten hinzufügen, oder Bilder und Bewertungen ergänzen.", "hu": "Ez az oldal az összes olyan hivatalos lakóautós megállóhelyet és helyet gyűjti össze, ahol szürke és fekete szennyvizet lehet üríteni. Hozzáadhat részleteket a nyújtott szolgáltatásokról és a költségekről, valamint képeket és értékeléseket. Ez egyszerre egy weboldal és egy webes alkalmazás. Az adatokat az OpenStreetMapen tároljuk, így mindig ingyenesek lesznek, és bármelyik alkalmazás újra felhasználhatja őket.", - "es": "Este sitio recoge todos los lugares oficiales de parada de caravanas y los lugares donde se pueden verter las aguas grises y negras. Puedes añadir detalles sobre los servicios prestados y el coste. Añade fotos y reseñas.", + "es": "Este sitio recopila todos los lugares oficiales de estacionamiento para autocaravanas y lugares donde puedes vaciar aguas grises y negras. Puedes agregar detalles sobre los servicios proporcionados y el costo. Agrega fotos y reseñas.", "ca": "Aquest lloc recull tots els llocs oficials de parada de caravanes i els llocs on es poden abocar les aigües grises i negres. Pots afegir detalls sobre els serveis prestats i el cost. Afig fotos i ressenyes.", "da": "Denne side samler alle officielle camper-stopsteder og steder, hvor du kan dumpe gråt og sort vand. Du kan tilføje detaljer om de leverede tjenester og omkostningerne. Tilføj billeder og anmeldelser. Dette er en hjemmeside og en webapp. Dataene gemmes i OpenStreetMap, så de vil være gratis for evigt og kan genbruges af enhver app.", "cs": "Na této stránce jsou shromážděna všechna oficiální místa pro zastavení karavanů a místa, kde můžete vypouštět šedou a černou vodu. Můžete přidat podrobnosti o poskytovaných službách a cenách. Přidávejte fotografie a recenze.", "eu": "Karabanak gelditzeko leku ofizial guztiak eta ur gris eta beltzak botatzeko lekuak biltzen ditu. Emandako zerbitzuei eta kostuari buruzko xehetasunak gehitu ditzakezu. Erantsi argazkiak eta aipamenak.", "pl": "Na tej stronie zebrano wszystkie oficjalne miejsca postoju kamperów oraz miejsca, w których można wylać zanieczyszczoną wodę. Możesz dodać szczegóły dotyczące świadczonych usług i kosztów. Dodaj zdjęcia i recenzje.", - "zh_Hans": "该网站汇总了所有官方的露营车停留点以及可以倾倒灰水和黑水的地点。你可以添加有关提供的服务和费用的详细信息,并且可以上传图片和撰写评论。" + "zh_Hans": "该网站汇总了所有官方的露营车停留点以及可以倾倒灰水和黑水的地点。你可以添加有关提供的服务和费用的详细信息,并且可以上传图片和撰写评论。", + "uk": "На цьому сайті зібрані всі офіційні місця зупинки автокемперів та місця, де можна здати сірі та чорні води. Ви можете додати детальну інформацію про послуги, що надаються, та вартість. Додавайте фотографії та відгуки." }, "shortDescription": { "en": "Find sites to spend the night with your camper", @@ -48,12 +50,13 @@ "pt_BR": "Encontre locais para passar a noite com o seu campista", "de": "Finden Sie Plätze zum Übernachten mit Ihrem Wohnmobil", "hu": "Helyek, ahol lakóautóval eltöltheti az éjszakát", - "es": "Encuentra sitios para pasar la noche con tu caravana", + "es": "Encuentra lugares para pasar la noche con tu autocaravana", "da": "Find steder, hvor du kan overnatte med din autocamper", "ca": "Troba llocs on passar la nit amb la teua caravana", "cs": "Najděte místa, kde můžete strávit noc se svým karavanem", "pl": "Znajdź miejsca, w których możesz spędzić noc w kamperze", - "pt": "Encontre locais para passar a noite com o seu campista" + "pt": "Encontre locais para passar a noite com o seu campista", + "uk": "Знайдіть місця для ночівлі з вашим кемпером" }, "icon": "./assets/themes/campersite/caravan.svg", "socialImage": "./assets/themes/campersite/social_image.jpg", @@ -79,13 +82,14 @@ "de": "Dieser Ort wird betrieben von {operator}", "zh_Hant": "這個地方由 {operator} 營運的", "nl": "Deze plaats wordt beheerd door {operator}", - "es": "Este lugar lo opera {operator}", + "es": "Este lugar está operado por {operator}", "da": "Dette sted drives af {operator}", "nb_NO": "Dette stedet drives av {operator}", "ca": "Aquest lloc és operat per {operator}", "cs": "Toto místo je provozováno {operator}", "eu": "Leku hau {operator}k operatzen du", - "pl": "To miejsce jest obsługiwane przez {operator}" + "pl": "To miejsce jest obsługiwane przez {operator}", + "uk": "Цим закладом керує {operator}" }, "question": { "en": "Who operates this place?", @@ -100,7 +104,8 @@ "nb_NO": "Hvem driver dette stedet?", "ca": "Qui opera aquest lloc?", "cs": "Kdo toto místo provozuje?", - "pl": "Kto obsługuje to miejsce?" + "pl": "Kto obsługuje to miejsce?", + "uk": "Хто керує цим місцем?" }, "freeform": { "key": "operator" @@ -117,11 +122,12 @@ "hu": "Van-e itt elektromos áram?", "nl": "Beschikt deze plaats over stroomvoorziening?", "nb_NO": "Har dette stedet strømforsyning?", - "es": "¿Tiene suministro eléctrico este lugar?", + "es": "¿Tiene este lugar suministro eléctrico?", "da": "Har dette sted en strømforsyning?", "ca": "Aquest lloc té subministrament elèctric?", "cs": "Má toto místo napájecí zdroj?", - "pl": "Czy to miejsce ma dostęp do prądu?" + "pl": "Czy to miejsce ma dostęp do prądu?", + "uk": "Чи є тут електропостачання?" }, "mappings": [ { @@ -144,7 +150,8 @@ "ca": "Aquest lloc té subministrament elèctric", "cs": "Toto místo má napájecí zdroj", "eu": "Leku honek hornidura elektrikoa du", - "pl": "To miejsce ma dostęp do prądu" + "pl": "To miejsce ma dostęp do prądu", + "uk": "У цьому місці є електропостачання" } }, { @@ -166,7 +173,8 @@ "da": "Dette sted har ikke strømforsyning", "ca": "Aquest lloc no té subministrament elèctric", "cs": "Toto místo nemá napájecí zdroj", - "pl": "To miejsce nie ma dostępu do prądu" + "pl": "To miejsce nie ma dostępu do prądu", + "uk": "Це місце не має електропостачання" } } ] diff --git a/assets/themes/charging_stations/charging_stations.json b/assets/themes/charging_stations/charging_stations.json index 38631084f..94fe6c6be 100644 --- a/assets/themes/charging_stations/charging_stations.json +++ b/assets/themes/charging_stations/charging_stations.json @@ -17,7 +17,8 @@ "da": "Ladestationer", "pa_PK": "چارج سٹیشن", "cs": "Nabíjecí stanice", - "pl": "Stacje ładowania" + "pl": "Stacje ładowania", + "uk": "Зарядні станції" }, "description": { "en": "On this open map, one can find and mark information about charging stations", @@ -29,12 +30,13 @@ "hu": "Ezen a térképen a elektromos töltőpontokról szóló információkat lehet megtalálni és megadni", "fr": "Sur cette carte l’on trouve et ajoute des informations sur les points de recharge", "nl": "Met deze kaart kan je informatie over oplaadpunten vinden en toevoegen", - "es": "En este mapa, uno puede encontrar y marcar información sobre estaciones de carga", + "es": "En este mapa abierto, se puede encontrar y marcar información sobre estaciones de carga", "nb_NO": "Finn og merk info om ladestasjoner", "da": "På dette åbne kort kan man finde og markere oplysninger om ladestandere", "ca": "A aquest mapa, un pot trobar i marcar informació sobre punts de càrrega", "cs": "Na této otevřené mapě lze vyhledávat a označovat informace o nabíjecích stanicích", - "pl": "Na tej otwartej mapie można znaleźć i zaznaczyć informacje o stacjach ładowania" + "pl": "Na tej otwartej mapie można znaleźć i zaznaczyć informacje o stacjach ładowania", + "uk": "На цій відкритій мапі можна знайти та позначити інформацію про зарядні станції" }, "shortDescription": { "en": "A worldwide map of charging stations", @@ -52,7 +54,8 @@ "ca": "Un mapa mundial d'estacions de càrrega", "cs": "Celosvětová mapa nabíjecích stanic", "eu": "Karga-estazioen munduko mapa", - "pl": "Światowa mapa stacji ładowania" + "pl": "Światowa mapa stacji ładowania", + "uk": "Мапа зарядних станцій по всьому світу" }, "icon": "./assets/themes/charging_stations/logo.svg", "layers": [ diff --git a/assets/themes/circular_economy/circular_economy.json b/assets/themes/circular_economy/circular_economy.json index 35a08d003..8a9f425fb 100644 --- a/assets/themes/circular_economy/circular_economy.json +++ b/assets/themes/circular_economy/circular_economy.json @@ -5,14 +5,19 @@ "es": "Economía circular", "de": "Kreislaufwirtschaft", "ca": "Economia circular", - "cs": "Cirkulární ekonomika" + "cs": "Cirkulární ekonomika", + "uk": "Переробна економіка", + "hu": "Körforgásos gazdaság", + "pl": "Gospodarka o obiegu zamkniętym" }, "description": { "en": "Various items which help people to share, reuse or recycle.", - "es": "Varios elementos que ayudan a la gente a compartir, reutilizar o reciclar.", + "es": "Varios artículos que ayudan a las personas a compartir, reutilizar o reciclar.", "de": "Verschiedene Gegenstände, die den Menschen helfen, zu teilen, wiederzuverwenden oder zu recyceln.", "ca": "Varios elements que ajuden a la gent a compartir, reutilitzar o reciclar.", - "cs": "Různé předměty, které pomáhají lidem sdílet, znovu používat nebo recyklovat." + "cs": "Různé předměty, které pomáhají lidem sdílet, znovu používat nebo recyklovat.", + "uk": "Різноманітні предмети, які допомагають людям ділитися, повторно використовувати або переробляти.", + "pl": "Różne przedmioty, które pomagają ludziom się dzielić, ponownie używać lub poddawać recyklingowi." }, "icon": "./assets/themes/circular_economy/circular.svg", "layers": [ @@ -43,7 +48,9 @@ "es": "Tiendas de segunda mano", "de": "Second-Hand-Läden", "ca": "Tendes de segona mà", - "cs": "Obchody s použitým zbožím" + "cs": "Obchody s použitým zbožím", + "uk": "Магазини секонд-хенду", + "pl": "Sklepy second-hand" }, "filter": null, "source": { diff --git a/assets/themes/climbing/climbing.json b/assets/themes/climbing/climbing.json index 012eb1bc4..7fd6e7d8c 100644 --- a/assets/themes/climbing/climbing.json +++ b/assets/themes/climbing/climbing.json @@ -10,12 +10,13 @@ "nb_NO": "Åpent klatrekart", "it": "Palestre, club e luoghi attrezzati per l'arrampicata", "fr": "Escalade : gymnases, clubs et spots", - "hu": "Mászótérkép", + "hu": "Falmászás: tornacsarnokok, klubok és helyek", "ca": "Gimnasos, clubs i llocs d'escalada", "da": "Åbn klatrekort", "cs": "Lezecké tělocvičny, kluby a místa", - "es": "Gimnasios de escalada, clubes y lugares", - "pl": "Siłownie, kluby i miejsca wspinaczkowe" + "es": "Gimnasios, clubes y lugares de escalada", + "pl": "Siłownie, kluby i miejsca wspinaczkowe", + "uk": "Скелелазні тренажерні зали, клуби та місця" }, "description": { "nl": "Op deze kaart vind je verschillende klimgelegenheden, zoals klimzalen, bolderzalen en klimmen in de natuur", @@ -31,8 +32,9 @@ "da": "På dette kort finder du forskellige klatremuligheder såsom klatremotionsrum, boulderinghaller og sten i naturen.", "cs": "Na této mapě najdete nejrůznější možnosti lezení, jako lezecké tělocvičny, boulderingové haly a skály v přírodě.", "ca": "A aquest mapa trobaràs varies oportunitats d'escalada, como gimnasos d'escalada, sales d'escalada en bloc i roques a la natura.", - "es": "En este mapa encontrará diversas posibilidades de escalada, como rocódromos, salas de búlder y rocas en la naturaleza.", - "pl": "Na tej mapie znajdziesz różne możliwości wspinaczki, takie jak sale wspinaczkowe, hale do boulderingu i skały w przyrodzie." + "es": "En este mapa encontrarás varias oportunidades de escalada como gimnasios de escalada, salas de bouldering y rocas en la naturaleza.", + "pl": "Na tej mapie znajdziesz różne możliwości wspinaczki, takie jak sale wspinaczkowe, hale do boulderingu i skały w przyrodzie.", + "uk": "На цій мапі ви знайдете різні можливості для скелелазіння, такі як скелелазні зали, боулдерингові зали та скелі на природі." }, "descriptionTail": { "nl": "De klimkaart is oorspronkelijk gemaakt door Christian Neumann op kletterspots.de.", @@ -45,9 +47,10 @@ "it": "La cartina di arrampicata è stata originariamente creata da Christian Neumann. Si prega di scrivere qua se si hanno commenti o domande da fare.

Il progetto usa i dati del progetto OpenStreetMap.

", "hu": "A mászótérképet eredetileg Christian Neumann készítette. Ha észrevétele vagy kérdése van, kérjük, vele lépjen kapcsolatba.

A projekt az OpenStreetMap adatait használja

", "cs": "Horolezeckou mapu původně vytvořil Christian Neumann. V případě připomínek nebo dotazů ho prosím kontaktujte.

Projekt využívá data projektu OpenStreetMap.

", - "es": "El mapa de escalada fue realizado originalmente por Christian Neumann. Por favor, ponte en contacto si tienes comentarios o preguntas.

El proyecto utiliza datos del proyecto OpenStreetMap.

", + "es": "El mapa de escalada fue creado originalmente por Christian Neumann. Por favor, ponte en contacto si tienes comentarios o preguntas.

El proyecto utiliza datos del proyecto OpenStreetMap.

", "ca": "El mapa d'escalada va ser creat originalment per Christian Neumann. Contacteu-vos si teniu comentaris o preguntes.

< p>El projecte utilitza dades del projecte OpenStreetMap.

", - "pl": "Mapa wspinaczkowa została pierwotnie stworzona przez Christiana Neumanna. Jeśli masz uwagi lub pytania, skontaktuj się z nim.

< p>Projekt wykorzystuje dane projektu OpenStreetMap.

" + "pl": "Mapa wspinaczkowa została pierwotnie stworzona przez Christiana Neumanna. Jeśli masz uwagi lub pytania, skontaktuj się z nim.

< p>Projekt wykorzystuje dane projektu OpenStreetMap.

", + "uk": "Мапу альпіністських маршрутів спочатку склав Крістіан Нойманн. Будь ласка, звʼяжіться з ним, якщо у вас є відгуки чи запитання.

< p>Проєкт використовує дані OpenStreetMap.

" }, "icon": "./assets/themes/climbing/climbing_icon.svg", "credits": [ @@ -152,10 +155,11 @@ "it": "L’ elemento in cui è contenuto indica che è pubblicamente accessibile
{_embedding_feature:access:description}", "de": "Das enthaltende Objekt gibt an, dass es öffentlich zugänglich ist
{_embedding_feature:access:description}", "da": "Den indeholdende funktion angiver, at denne er offentligt tilgængelig
{_embedding_feature:access:description}", - "es": "La característica que lo contiene indica que es de acceso público
{_embedding_feature:access:description}", + "es": "El elemento que lo contiene indica que es de acceso público
{_embedding_feature:access:description}", "ca": "Lal'element que el contéindica que és d'accés públic
{_embedding_feature:access:description}", "cs": "V obsahující funkci je uvedeno, že toto je veřejně dostupné
{_embedding_feature:access:description}", - "pl": "Obiekt zawarty stwierdza, że jest on publicznie dostępny
{_embedding_feature:access:description}" + "pl": "Obiekt zawarty stwierdza, że jest on publicznie dostępny
{_embedding_feature:access:description}", + "uk": "У що містить об'єкт зазначено, що це загальнодоступне
{_embedding_feature:access:description}" } }, { @@ -167,10 +171,11 @@ "it": "L’elemento che lo contiene indica che è richiesto un’autorizzazione per accedervi
{_embedding_feature:access:description}", "de": "Das enthaltende Objekt besagt, dass eine Genehmigung erforderlich ist für den Zugang zu
{_embedding_feature:access:description}", "da": "Den indeholdende funktion angiver, at en tilladelse er nødvendig for at få adgang til
{_embedding_feature:access:description}", - "es": "Lacaracterística que lo contiene indica que se necesita un permiso para acceder a él
{_embedding_feature:access:description}", + "es": "El elemento que lo contiene indica que se necesita un permiso para acceder
{_embedding_feature:access:description}", "ca": "Lal'element que el conté indica que es necessita un permís per a accedir-hi
{_embedding_feature:access:description}", "cs": "V obsahující funkci je uvedeno, že je k přístupu potřeba povolení
{_embedding_feature:access:description}", - "pl": "Obiekt zawarty stwierdza, że potrzebne jest pozwolenie, aby do niego wejść
{_embedding_feature:access:description}" + "pl": "Obiekt zawarty stwierdza, że potrzebne jest pozwolenie, aby do niego wejść
{_embedding_feature:access:description}", + "uk": "У функції зазначено, що потрібен дозвіл для доступу
{_embedding_feature:access:description}" } }, { @@ -182,10 +187,11 @@ "de": "Das enthaltende Objekt besagt, dass es nur für Kunden zugänglich ist
{_embedding_feature:access:description}", "nl": "Het omsluitende kaart-object zegt dat het enkel toegankelijk is voor klanten
{_embedding_feature:access:description}", "da": "Den indeholdende funktion angiver, at denne kun er tilgængelig for kunder
{_embedding_feature:access:description}", - "es": "La característica que lo contiene indica que sólo es accesible para los clientes
{_embedding_feature:access:description}", + "es": "El elemento que lo contiene indica que es solo accesible para clientes
{_embedding_feature:access:description}", "cs": "V obsahující funkci je uvedeno, že toto je dostupné pouze zákazníkům
{_embedding_feature:access:description}", "ca": "Lacaracterística que ho conté indica que sols és accessible per als clients
{_embedding_feature:access:description}", - "pl": "Obiekt zawarty stwierdza, że jest on dostępny tylko dla jego klientów
{_embedding_feature:access:description}" + "pl": "Obiekt zawarty stwierdza, że jest on dostępny tylko dla jego klientów
{_embedding_feature:access:description}", + "uk": "У що містить об'єкт зазначено, що вона доступна лише клієнтам
{_embedding_feature:access:description}" } }, { @@ -197,10 +203,11 @@ "de": "Das enthaltende Objekt besagt, dass es nur für Mitglieder zugänglich ist
{_embedding_feature:access:description}", "nl": "Het omsluitende kaart-object zegt dat het enkel toegankelijk is voor club leden
{_embedding_feature:access:description}", "da": "Den indeholdende funktion angiver, at denne kun er tilgængelig for klubmedlemmer
{_embedding_feature:access:description}", - "es": "La característica que lo contiene indica que sólo es accesible para los socios del club
{_embedding_feature:access:description}", + "es": "El elemento que lo contiene indica que es solo accesible para socios del club
{_embedding_feature:access:description}", "cs": "V obsahující funkci je uvedeno, že toto je dostupné pouze členům klubu
{_embedding_feature:access:description}", "ca": "Lacaracterística que ho conté indica que sols és accessible per als socis del club
{_embedding_feature:access:description}", - "pl": "Obiekt zawarty stwierdza, że jest on dostępny tylko dla członków klubu
{_embedding_feature:access:description}" + "pl": "Obiekt zawarty stwierdza, że jest on dostępny tylko dla członków klubu
{_embedding_feature:access:description}", + "uk": "У що містить функцію зазначено, що вона доступна лише для членів клубу
{_embedding_feature:access:description}" } }, { @@ -222,7 +229,8 @@ "ca": "Qui pot accedir aquí?", "da": "Hvem kan få adgang her?", "cs": "Kdo sem má přístup?", - "pl": "Kto ma tutaj dostęp?" + "pl": "Kto ma tutaj dostęp?", + "uk": "Хто може сюди потрапити?" }, "mappings": [ { @@ -234,11 +242,12 @@ "it": "Pubblicamente accessibile a chiunque", "nl": "Voor iedereen publiek toegankelijk", "nb_NO": "Offentlig tilgjengelig for alle", - "es": "Accesible públicamente a cualquiera", + "es": "De acceso público para todos", "da": "Offentligt tilgængelig for alle", "cs": "Veřejně přístupné komukoli", "ca": "Accessible públicament a qualsevol", - "pl": "Publicznie dostępne dla każdego" + "pl": "Publicznie dostępne dla każdego", + "uk": "Загальнодоступний для всіх" } }, { @@ -253,7 +262,8 @@ "da": "Du skal have en tilladelse for at få adgang her", "ca": "Necesites un permís per a accedir ací", "cs": "K přístupu je potřeba povolení", - "pl": "Potrzebujesz pozwolenia, żeby tu wejść" + "pl": "Potrzebujesz pozwolenia, żeby tu wejść", + "uk": "Для доступу сюди потрібен дозвіл" } }, { @@ -270,7 +280,8 @@ "da": "Kun for kunder", "pa_PK": "صرف گاہک", "cs": "Pouze zákazníci", - "pl": "Tylko klienci" + "pl": "Tylko klienci", + "uk": "Тільки клієнти" } }, { @@ -284,11 +295,12 @@ "ca": "Només membres del club", "nl": "Enkel clubleden", "nb_NO": "Kun klubbmedlemmer", - "es": "Solo miembros del club", + "es": "Solo socios del club", "da": "Kun klubmedlemmer", "pa_PK": "صرف کلب دے میمبر", "cs": "Pouze členové klubu", - "pl": "Tylko członkowie klubu" + "pl": "Tylko członkowie klubu", + "uk": "Тільки члени клубу" } }, { @@ -341,12 +353,13 @@ "en": "Does this shoe repair shop repair climbing shoes?", "de": "Repariert das Schuhgeschäft Kletterschuhe?", "fr": "Est-ce que cette cordonnerie répare les chaussons d'escalade ?", - "es": "¿Esta tienda de reparación de zapatos repara zapatos de escalada?", + "es": "¿Esta zapatería repara zapatillas de escalada?", "ca": "Aquesta botiga de reparació de calçat repara sabates d'escalada?", "cs": "Opravuje tato opravna obuvy horolezecké boty?", "pl": "Czy ten warsztat szewski naprawia buty wspinaczkowe?", "da": "Reparerer denne butik klatresko?", - "it": "Questo negozio ripara scarpe da arrampicata?" + "it": "Questo negozio ripara scarpe da arrampicata?", + "uk": "Чи ремонтує ця майстерня альпіністське взуття?" }, "mappings": [ { @@ -355,12 +368,13 @@ "en": "This shop repairs climbing shoes", "de": "Dieser Laden repariert Kletterschuhe", "fr": "Ce commerce répare les chaussures d'escalade", - "es": "Esta tienda repara zapatos de escalada", + "es": "Esta tienda repara zapatillas de escalada", "ca": "Aquesta botiga repara sabates d'escalada", "cs": "Tento obchod opravuje lezeckou obuv", "pl": "Ten warsztat naprawia buty wspinaczkowe", "da": "Denne butik reparerer klatresko", - "it": "Questo negozio ripara scarpe da arrampicata" + "it": "Questo negozio ripara scarpe da arrampicata", + "uk": "У цій майстерні ремонтують альпіністське взуття" } }, { @@ -369,12 +383,13 @@ "en": "This shop does not repair climbing shoes", "de": "Dieser Shop repariert keine Kletterschuhe", "fr": "Ce commerce ne répare pas les chaussures d'escalade", - "es": "Esta tienda no repara zapatos de escalada", + "es": "Esta tienda no repara zapatillas de escalada", "ca": "Aquesta botiga no repara sabates d'escalada", "cs": "Tento obchod neopravuje lezeckou obuv", "pl": "Ten warsztat nie naprawia butów wspinaczkowych", "da": "Denne butik reparerer ikke klatresko", - "it": "Questo negozio non ripara scarpe da arrampicata" + "it": "Questo negozio non ripara scarpe da arrampicata", + "uk": "Цей магазин не займається ремонтом альпіністського взуття" } } ] @@ -403,12 +418,13 @@ "en": "Does this shoe repair shop also repair climbing shoes?", "de": "Repariert dieses Schuhgeschäft auch Kletterschuhe?", "fr": "Est-ce que cette cordonnerie répare les chaussons d'escalade ?", - "es": "¿Esta tienda de reparación de zapatos también repara zapatos de escalada?", + "es": "¿Esta zapatería también repara zapatillas de escalada?", "ca": "Aquesta botiga de reparació de calçat també repara sabates d'escalada?", "cs": "Opravuje tato opravna obuvy také lezeckou obuv?", "pl": "Czy ten warsztat obuwniczy naprawia również buty wspinaczkowe?", "da": "Reparerer denne skomager klatresko?", - "it": "Questo negozio ripara scarpe da arrampicata?" + "it": "Questo negozio ripara scarpe da arrampicata?", + "uk": "Чи ремонтує ця майстерня також альпіністське взуття?" }, "mappings": [ { @@ -417,12 +433,13 @@ "en": "This shop repairs climbing shoes", "de": "Dieses Geschäft repariert Kletterschuhe", "fr": "Ce commerce répare les chaussons d'escalade", - "es": "Esta tienda repara zapatos de escalada", + "es": "Esta tienda repara zapatillas de escalada", "ca": "Aquesta botiga repara sabates d'escalada", "cs": "Tento obchod opravuje lezeckou obuv", "pl": "Ten warsztat naprawia buty wspinaczkowe", "da": "Denne butik reparerer klatresko", - "it": "Questo negozio ripara scarpe da arrampicata" + "it": "Questo negozio ripara scarpe da arrampicata", + "uk": "У цій майстерні ремонтують альпіністське взуття" } }, { @@ -431,12 +448,13 @@ "en": "This shop does not repair climbing shoes", "de": "Dieses Geschäft repariert keine Kletterschuhe", "fr": "Ce commerce ne répare pas les chaussons d'escalade", - "es": "Esta tienda no repara zapatos de escalada", + "es": "Esta tienda no repara zapatillas de escalada", "ca": "Aquesta botiga no repara sabates d'escalada", "cs": "Tento obchod neopravuje lezeckou obuv", "pl": "Ten warsztat nie naprawia butów wspinaczkowych", "da": "Denne butik reparerer ikke klatresko", - "it": "Questo negozio non ripara scarpe da arrampicata" + "it": "Questo negozio non ripara scarpe da arrampicata", + "uk": "Цей магазин не займається ремонтом альпіністського взуття" } } ] @@ -451,12 +469,14 @@ "en": "a shoe repair shop", "de": "Ein Schuhmacher", "fr": "une cordonnerie", - "es": "una tienda de reparación de zapatos", + "es": "una zapatería", "ca": "una botiga de reparació de calçat", "cs": "opravna bot", "pl": "warsztat szewski", "da": "en skomager", - "it": "un calzolaio" + "it": "un calzolaio", + "uk": "майстерня по ремонту взуття", + "hu": "egy cipészműhely" } } ] diff --git a/assets/themes/clock/clock.json b/assets/themes/clock/clock.json index 46e473b6e..43ba835b5 100644 --- a/assets/themes/clock/clock.json +++ b/assets/themes/clock/clock.json @@ -11,19 +11,23 @@ "eu": "Erlojuak", "pl": "Zegary", "da": "Ure", - "it": "Orologi" + "it": "Orologi", + "ru": "Часы", + "uk": "Годинники", + "hu": "Órák" }, "description": { "en": "Map showing all public clocks", "nl": "Kaart met alle openbare klokken", "ca": "Mapa amb tots els rellotges públics", "de": "Eine Karte mit öffentlichen Uhren", - "es": "Mapa mostrando todos los relojes públicos", + "es": "Mapa que muestra todos los relojes públicos", "cs": "Mapa zobrazující veřejné hodiny", "fr": "Carte affichant toutes les horloges publiques", "pl": "Mapa pokazująca wszystkie zegary publiczne", "da": "Kort over alle ure i det offentlige rum", - "it": "Mappa di tutti gli orologi pubblici" + "it": "Mappa di tutti gli orologi pubblici", + "uk": "Мапа годинників в громадських місцях" }, "icon": "./assets/layers/clock/clock.svg", "layers": [ diff --git a/assets/themes/cycle_highways/cycle_highways.json b/assets/themes/cycle_highways/cycle_highways.json index 3d58409f2..6b19ef637 100644 --- a/assets/themes/cycle_highways/cycle_highways.json +++ b/assets/themes/cycle_highways/cycle_highways.json @@ -7,13 +7,14 @@ "ca": "Vies ciclistes", "fr": "Aménagements cyclables", "nl": "Fietssnelwegen", - "es": "Autovías ciclistas", + "es": "Bicipistas", "nb_NO": "Sykkelmotorveier", "da": "Cykelmotorveje", "pa_PK": "سائیکل‌وے", "cs": "Cyklodálnice", "pl": "Ścieżki rowerowe", - "zh_Hant": "單車高速公路" + "zh_Hant": "單車高速公路", + "uk": "Велосипедні доріжки" }, "description": { "en": "This map shows cycle highways", @@ -21,12 +22,13 @@ "it": "Questa cartina mostra le strade per velocipedi", "fr": "Cette carte affiche les aménagements cyclables", "nl": "Deze kaart toont fietssnelwegen", - "es": "Este mapa muestra autovías ciclistas", + "es": "Este mapa muestra las bicipistas", "nb_NO": "Kart som viser sykkelmotorveier", "ca": "Aquest mapa mostra carrils bici", "da": "Dette kort viser cykelmotorveje", "cs": "Tato mapa zobrazuje cyklostezky", - "pl": "Ta mapa pokazuje ścieżki rowerowe" + "pl": "Ta mapa pokazuje ścieżki rowerowe", + "uk": "Ця мапа показує велодоріжки" }, "icon": "./assets/themes/cycle_highways/fietssnelwegen-logo.svg", "startZoom": 7, diff --git a/assets/themes/cycle_infra/cycle_infra.json b/assets/themes/cycle_infra/cycle_infra.json index c6e32eeee..a0d6bcdbb 100644 --- a/assets/themes/cycle_infra/cycle_infra.json +++ b/assets/themes/cycle_infra/cycle_infra.json @@ -15,7 +15,8 @@ "da": "Cykelinfrastruktur", "pa_PK": "سائیکل ڈھانچا", "cs": "Cyklistická infrastruktura", - "pl": "Infrastruktura rowerowa" + "pl": "Infrastruktura rowerowa", + "uk": "Велосипедна інфраструктура" }, "description": { "en": "A map where you can view and edit things related to the bicycle infrastructure. Made during #osoc21.", @@ -25,11 +26,12 @@ "zh_Hant": "可以檢視與編輯單車相關設施的地圖,在 #os0c21時製作。", "hu": "Kerékpáros infrastruktúrával kapcsolatos dolgokat megjelenítő és szerkesztésre felkínáló térkép. Az #osoc21 (Open Summer of Code) alatt készült.", "fr": "Une carte montrant les aménagements cyclables et où l’on peut rajouter des informations. Réalisée durant #osoc21.", - "es": "Un mapa en el que puedes ver y editar cosas relacionadas con la infraestructura ciclista. Hecho durante #osoc21.", + "es": "Un mapa donde puedes ver y editar cosas relacionadas con la infraestructura ciclista. Hecho durante #osoc21.", "ca": "Un mapa on es poden veure i editar coses relacionades amb la infraestructura ciclista. Fet durant #osoc21.", "da": "Et kort, hvor du kan se og redigere ting relateret til cykelinfrastrukturen. Lavet under #osoc21.", "cs": "Mapa, kde můžete prohlížet a upravovat věci související s cyklistickou infrastrukturou. Vytvořeno během #osoc21.", - "pl": "Mapa, na której możesz przeglądać i edytować rzeczy związane z infrastrukturą rowerową. Wykonane podczas #osoc21." + "pl": "Mapa, na której możesz przeglądać i edytować rzeczy związane z infrastrukturą rowerową. Wykonane podczas #osoc21.", + "uk": "Мапа, на якій можна переглядати та редагувати обʼєкти, повʼязані з велосипедною інфраструктурою. Створено під час #osoc21." }, "shortDescription": { "en": "A map where you can view and edit things related to the bicycle infrastructure.", @@ -39,12 +41,13 @@ "nb_NO": "Alt relatert til sykkelinfrastruktur.", "zh_Hant": "檢視與編輯單車相關設施的地圖。", "hu": "Olyan térkép, ahol a kerékpáros infrastruktúrával kapcsolatos dolgokat tekinthet meg és szerkeszthet.", - "es": "Un mapa en el que puedes ver y editar cosas relacionadas con la infraestructura ciclista.", + "es": "Un mapa donde puedes ver y editar cosas relacionadas con la infraestructura ciclista.", "fr": "Une carte où vous pouvez visualiser et modifier les éléments relatifs à l'infrastructure cyclable.", "ca": "Un mapa on es poden veure i editar coses relacionades amb la infraestructura ciclista.", "da": "Et kort, hvor du kan se og redigere ting relateret til cykelinfrastrukturen.", "cs": "Mapa, kde můžete prohlížet a upravovat věci související s cyklistickou infrastrukturou.", - "pl": "Mapa, na której możesz przeglądać i edytować rzeczy związane z infrastrukturą rowerową." + "pl": "Mapa, na której możesz przeglądać i edytować rzeczy związane z infrastrukturą rowerową.", + "uk": "Мапа, на якій ви можете переглядати та редагувати речі, повʼязані з велосипедною інфраструктурою." }, "icon": "./assets/themes/cycle_infra/cycle-infra.svg", "socialImage": "./assets/themes/cycle_infra/cycle-infra.svg", @@ -53,11 +56,18 @@ "startLon": 3.75, "hideFromOverview": false, "layers": [ - "cycleways_and_roads", - "barrier", - "crossings", - "bicycle_counter" + { + "builtin": [ + "cycleways_and_roads", + "barrier", + "crossings", + "bicycle_counter", + "cyclist_waiting_aid" + ], + "override": { + "minzoom": 16 + } + } ], - "enableDownload": true, - "widenFactor": 1.5 + "enableDownload": true } \ No newline at end of file diff --git a/assets/themes/cyclenodes/cyclenodes.json b/assets/themes/cyclenodes/cyclenodes.json index 65e3c022e..15f82008a 100644 --- a/assets/themes/cyclenodes/cyclenodes.json +++ b/assets/themes/cyclenodes/cyclenodes.json @@ -3,7 +3,7 @@ "title": { "en": "Cycle Node Networks", "de": "Fahrrad-Knotenpunktnetzwerke", - "es": "Redes de Nodos Ciclistas", + "es": "Redes de nodos ciclistas", "nb_NO": "Sykkelnodenettverk", "nl": "Fietsknooppuntennetwerken", "fr": "Réseau de Nœuds Cyclistes", @@ -14,13 +14,14 @@ "description": { "en": "This map shows cycle node networks and allows you to add new nodes easily", "de": "Diese Karte zeigt Knotenpunktnetzwerke für Radfahrer und erlaubt auch neue Knoten zu mappen", - "es": "Este mapa muestra redes de nodos ciclistas y te permita añadir nodos nuevos de manera sencilla", + "es": "Este mapa muestra redes de nodos ciclistas y te permite agregar nuevos nodos fácilmente", "nl": "Deze kaart toont fietsknooppunten en laat je toe om eenvoudigweg nieuwe knooppunten toe te voegen", "fr": "Cette carte montre les réseaux de nœuds cyclistes et vous permet d'ajouter facilement de nouveaux nœuds", "ca": "Aquest mapa mostra xarxes de nodes ciclistes i et permet afegir-ne de nous de manera senzilla", "da": "Dette kort viser cykel netværk og giver dig mulighed for nemt at tilføje nye punkter", "cs": "Tato mapa zobrazuje sítě uzlů cyklu a umožňuje snadno přidávat nové uzly", - "pl": "Mapa ta przedstawia sieci węzłów rowerowych i umożliwia łatwe dodawanie nowych węzłów" + "pl": "Mapa ta przedstawia sieci węzłów rowerowych i umożliwia łatwe dodawanie nowych węzłów", + "uk": "Мапа на якій показуються точки веломережі, ви також можете легко додавати нові" }, "icon": "./assets/themes/cyclenodes/logo.svg", "startZoom": 11, @@ -36,12 +37,13 @@ "name": { "en": "Node to node links", "de": "Knotenpunktverbindungen", - "es": "Vínculos entre nodos", + "es": "Enlaces de nodo a nodo", "nl": "Verbindingen van node naar node", "fr": "liens noeud à noeud", "ca": "Enllaços node a node", "cs": "Propojení mezi uzly", - "pl": "łącza węzeł do węzła" + "pl": "łącza węzeł do węzła", + "uk": "Звʼязки між точками" }, "source": { "osmTags": { @@ -57,12 +59,13 @@ "render": { "en": "Node to node link", "de": "Knotenpunktverbindung", - "es": "Vínculos entre nodos", + "es": "Enlace de nodo a nodo", "nl": "Node-naar-node verbinding", "fr": "lien noeud à noeud", "ca": "Enllaç node a node", "cs": "propojení mezi uzly", - "pl": "połączenie węzła z węzłem" + "pl": "połączenie węzła z węzłem", + "uk": "Відрізок між точками" }, "mappings": [ { @@ -70,12 +73,13 @@ "then": { "en": "Node to node link {ref}", "de": "Knotenpunktverbindung {ref}", - "es": "Vínculos entre nodos {ref}", + "es": "Enlace de nodo a nodo {ref}", "nl": "Node-naar-node verbinding {ref}", "fr": "lien noeud à noeud {ref}", "ca": "Enllaç node a node {ref}", "cs": "propojení mezi uzly {ref}", - "pl": "połączenie węzła z węzłem {ref}" + "pl": "połączenie węzła z węzłem {ref}", + "uk": "Відрізок між точками {ref}" } } ] @@ -87,22 +91,24 @@ "question": { "en": "When was this node to node link last surveyed?", "de": "Wann wurde diese Knotenpunktverbindung zuletzt überprüft?", - "es": "¿Cuándo se sondeó este enlace nodo a nodo por última vez?", + "es": "¿Cuándo se inspeccionó por última vez este enlace de nodo a nodo?", "nl": "Wanneer werd deze node-naar-node verbinding het laast gesurveyed?", "fr": "Quand cette liaison de nœud à nœud a-t-elle été contrôlée sur le terrain pour la dernière fois ?", "ca": "Quan es va comprovar per última vegada aquest enllaç node a node presencialment?", "cs": "Kdy bylo toto propojení mezi uzly naposledy zkontrolováno?", - "pl": "Kiedy ostatnio badano to połączenie węzła z węzłem?" + "pl": "Kiedy ostatnio badano to połączenie węzła z węzłem?", + "uk": "Коли цей звʼязок між точками досліджувався востаннє?" }, "render": { "en": "This node to node link was last surveyed on {survey:date}", "de": "Diese Knotenpunktverbindung wurde zuletzt am {survey:date} überprüft", - "es": "Este enlace nodo a nodo se sondeó por última vez el {survey:date}", + "es": "Este enlace de nodo a nodo se inspeccionó por última vez el {survey:date}", "nl": "Deze node-naar-node verbinding werd het laast gesurveyed op {survey:date}", "fr": "Cette lien de nœud à nœud a été vérifié sur le terrain le {survey:date}", "ca": "Aquest enllaç node a node es va sondejar per última vegada el {survey:date}", "cs": "Toto propojení mezi uzly bylo naposledy zkontrolováno dne {survey:date}", - "pl": "To połączenie węzła z węzłem było ostatnio sprawdzane w dniu {survey:date}" + "pl": "To połączenie węzła z węzłem było ostatnio sprawdzane w dniu {survey:date}", + "uk": "Цей зв’язок між точками востаннє досліджувався {survey:date}" } }, "id": "node2node-survey:date" @@ -140,7 +146,8 @@ "cs": "uzly", "eu": "nodoak", "pl": "węzły", - "zh_Hant": "節點" + "zh_Hant": "節點", + "uk": "Точки" }, "source": { "osmTags": { @@ -176,7 +183,7 @@ "render": { "en": "Cycle node", "de": "Fahrradknotenpunkt", - "es": "nodo ciclista", + "es": "Nodo ciclista", "nb_NO": "sykkelnode", "nl": "Fietsknooppunt", "fr": "nœud cycliste", @@ -190,7 +197,7 @@ "then": { "en": "Cycle node {rcn_ref}", "de": "Fahrradknotenpunkt {rcn_ref}", - "es": "nodo ciclista {rcn_ref}", + "es": "Nodo ciclista {rcn_ref}", "nb_NO": "sykkelnode {rcn_ref}", "nl": "Fietsknooppunt {rcn_ref}", "fr": "nœud cycliste {rcn_ref}", @@ -205,7 +212,7 @@ "en": "Proposed cycle node {proposed:rcn_ref}", "nl": "Voorgesteld fietsknooppunt {proposed:rcn_ref}", "de": "Vorgeschlagener Radknoten {proposed:rcn_ref}", - "es": "Nodo de ciclo propuesto {proposed:rcn_ref}", + "es": "Nodo ciclista propuesto {proposed:rcn_ref}", "cs": "Navrhovaný cyklistický uzel {proposed:rcn_ref}" } } @@ -220,7 +227,8 @@ "de": "Wie lautet die Nummer des Knotenpunkts im Fahrradknotenpunktnetzwerk?", "cs": "Jaké je referenční číslo tohoto cyklistického uzlu?", "ca": "Quin és el número de referència d'aquest node ciclista?", - "es": "¿Cuál es el número de referencia de este nodo cíclico?" + "es": "¿Cuál es el número de referencia de este nodo ciclista?", + "pl": "Jaki jest numer referencyjny tego węzła rowerowego?" }, "freeform": { "key": "rcn_ref", @@ -230,7 +238,7 @@ "nl": "bijv. 1", "de": "z.B. 1", "cs": "e.g. 1", - "es": "Por ejemplo, 1", + "es": "ej. 1", "pl": "np. 1", "da": "fx 1", "ca": "Per exemple, 1" @@ -242,7 +250,8 @@ "de": "Knotenpunktnummer {rcn_ref} des Fahrradknotenpunktnetzwerks", "cs": "Tento cyklistický uzel má referenční číslo {rcn_ref}", "ca": "Aquest node ciclista té la referència número {rcn_ref}", - "es": "Este nodo cíclico tiene el número de referencia {rcn_ref}" + "es": "Este nodo ciclista tiene el número de referencia {rcn_ref}", + "pl": "Ten węzeł rowerowy ma numer referencyjny {rcn_ref}" }, "condition": "rcn_ref~*" }, @@ -252,7 +261,7 @@ "question": { "en": "When was this cycle node last surveyed?", "de": "Wann wurde dieser Fahrradknotenpunkt zuletzt überprüft?", - "es": "¿Cuándo fue sondeado este nodo ciclista por última vez?", + "es": "¿Cuándo se inspeccionó por última vez este nodo ciclista?", "nl": "Wanneer is dit fietsknooppunt voor het laatst gecontroleerd?", "fr": "Quand ce nœud cyclable a-t-il été vérifié sur le terrain pour la dernière fois ?", "ca": "Quan va ser sondejat aquest node ciclista per última vegada?", @@ -262,7 +271,7 @@ "render": { "en": "This cycle node was last surveyed on {survey:date}", "de": "Dieser Fahrradknoten wurde zuletzt überprüft am {survey:date}", - "es": "Este nodo ciclista se sondeó por última vez el {survey:date}", + "es": "Este nodo ciclista se inspeccionó por última vez el {survey:date}", "nl": "Dit fietsknooppunt is voor het laatst gecontroleerd op {survey:date}", "fr": "Ce nœud cycliste a été verifié pour la dernière fois le {survey:date}", "ca": "Aquest node ciclista es va sondejar per última vegada el {survey:date}", @@ -276,18 +285,19 @@ "question": { "en": "How many other cycle nodes does this node link to?", "de": "Mit wie vielen anderen Knoten des Fahrradknotenpunktnetzwerkes ist dieser Knoten verbunden?", - "es": "¿A cuántos otros nodos ciclistas enlaza este nodo?", + "es": "¿A cuántos otros nodos ciclistas se conecta este nodo?", "nl": "Met hoeveel andere fietsknooppunten heeft dit knooppunt een verbinding?", "fr": "A combien dautres nœuds vélo ce nœud est-il lié ?", "ca": "A quants altes nodes ciclistes enllaça aquest node?", "cs": "S kolika dalšími uzly cyklu je tento uzel propojen?", - "pl": "Z iloma innymi węzłami rowerowymi łączy się ten węzeł?" + "pl": "Z iloma innymi węzłami rowerowymi łączy się ten węzeł?", + "uk": "З кількома іншими точками повʼязана ця точка?" }, "render": { "en": "This node links to {expected_rcn_route_relations} other cycle nodes.", "de": "Dieser Knoten ist mit {expected_rcn_route_relations} anderen Knoten des Fahrradknotenpunktnetzwerkes verbunden.", "nl": "Dit knooppunt verbindt met {expected_rcn_route_relations} andere fietsknooppunten.", - "es": "Este nodo enlaza a {expected_rcn_route_relations} otros nodos ciclistas.", + "es": "Este nodo se conecta a {expected_rcn_route_relations} otros nodos ciclistas.", "fr": "Ce noeud est lié à {expected_rcn_route_relations} d'autres noeuds cyclistes.", "ca": "Aquest node enllaça a {expected_rcn_route_relations} altres nodes ciclistes.", "cs": "Tento uzel je propojen s {expected_rcn_route_relations} dalšími uzly cyklu.", @@ -301,10 +311,11 @@ "nl": "bijv. 3", "de": "z.B. 3", "cs": "e.g. 3", - "es": "Por ejemplo, 3", + "es": "ej. 3", "pl": "np. 3", "da": "fx 3", - "ca": "Per exemple, 3" + "ca": "Per exemple, 3", + "uk": "напр. 3" } }, "id": "node-expected_rcn_route_relations" @@ -322,8 +333,10 @@ "nl": "een fietsknooppunt", "de": "ein Knoten eines Fahrradknotenpunktnetzwerks", "ca": "un node ciclista", - "es": "un nodo cíclico", - "cs": "cyklistický uzel" + "es": "un nodo ciclista", + "cs": "cyklistický uzel", + "pl": "węzeł rowerowy", + "uk": "велоточка" }, "snapToLayer": [ "cycleways_and_roads" @@ -360,7 +373,7 @@ "en": "Cycling guideposts", "de": "Fahrrad-Wegweiser", "cs": "Cyklistické ukazatele", - "es": "Indicadores de ciclismo" + "es": "Señalización ciclista" }, "title": { "render": { @@ -396,7 +409,7 @@ "en": "a route marker for a node to node link", "de": "Eine Routenmarkierung für eine Verbindung von Knoten zu Knoten", "cs": "značka trasy pro spojení mezi uzly", - "es": "Un marcador de ruta para un enlace de nodo a nodo" + "es": "un marcador de ruta para un enlace de nodo a nodo" }, "=exampleImages": [ "./assets/layers/route_marker/bicycle_route_marker.jpg" diff --git a/assets/themes/cyclestreets/cyclestreets.json b/assets/themes/cyclestreets/cyclestreets.json index 7bf579ea6..8385e4f0e 100644 --- a/assets/themes/cyclestreets/cyclestreets.json +++ b/assets/themes/cyclestreets/cyclestreets.json @@ -16,7 +16,9 @@ "pa_PK": "سائیکل سڑکاں", "cs": "Cyklostezky", "eu": "Bidegorriak", - "pl": "Ulice rowerowe" + "pl": "Ulice rowerowe", + "ru": "Велосипедные дорожки", + "uk": "Велодоріжки" }, "description": { "nl": "Een fietsstraat is een straat waar
  • automobilisten geen fietsers mogen inhalen
  • Er een maximumsnelheid van 30km/u geldt
  • Fietsers gemotoriseerde voertuigen links mogen inhalen
  • Fietsers nog steeds voorrang aan rechts moeten verlenen - ook aan auto's en voetgangers op het zebrapad


Op deze open kaart kan je alle gekende fietsstraten zien en kan je ontbrekende fietsstraten aanduiden. Fietszones worden aangeduid door elke straat apart als fietsstraat te markeren.
Om de kaart aan te passen, moet je je aanmelden met OpenStreetMap en helemaal inzoomen tot straatniveau. ", @@ -26,12 +28,13 @@ "de": "Eine Fahrradstraße ist eine Straße, auf der motorisierter Verkehr Radfahrer nicht überholen darf. Sie sind durch ein spezielles Verkehrsschild gekennzeichnet. Fahrradstraßen gibt es in den Niederlanden und Belgien, aber auch in Deutschland und Frankreich. ", "it": "Una strada ciclabile è una strada dove il traffico motorizzato non può superare i velocipedi. La sua presenza è segnalata da un cartello stradale specifico. Le strade ciclabili sono diffuse in Olanda e Belgio, ma si possono trovare anche in Germania e in Francia. ", "hu": "A kerékpárosutca (cyclestreet, Fahrradstraße) olyan utca, ahol gépjármű nem előzhet meg kerékpárost. Az ilyen utcákat külön közlekedési tábla jelzi. Kerékpárosutcák találhatók Hollandiában és Belgiumban, valamint Németországban és Franciaországban is. ", - "es": "Una ciclocalle es una calle en la que el tráfico motorizado no puede sobrepasar a los ciclistas. Están marcados por una señal de tráfico especial. Las ciclocalles se pueden encontrar en los Países Bajos y Bélgica, pero también en Alemania y Francia. ", + "es": "Una ciclocalle es una calle donde el tráfico motorizado no puede adelantar a los ciclistas. Están señalizadas con una señal de tráfico especial. Las ciclocalles se pueden encontrar en los Países Bajos y Bélgica, pero también en Alemania y Francia. ", "fr": "Une rue cyclable est une rue où les véhicules motorisés ne sont pas autorisés à dépasser les cyclistes. Elles sont signalées par un signal routier particulier. On trouve des rues cyclables en Belgique et aux Pays-Bas, mais aussi en Allemagne et en France. ", "da": "En cykelgade er en gade, hvor motoriseret trafik ikke må overhale cyklister. De er skiltet med et særligt trafikskilt. Cykelgader findes i Holland og Belgien, men også i Tyskland og Frankrig. ", "ca": "Un ciclocarrer és un carrer en el que el trànsit motoritzat no pot sobrepassar als ciclistes. Està senyalitzat per una senyal de trànsit especial. Els ciclocarrers es poden trobar a Holanda i Bèlgica, però també a Alemnya i França. ", "cs": "Cyklostezka je ulice, kde motorizovaná doprava nesmí předjíždět cyklisty. Jsou označeny speciální dopravní značkou. Cyklostezky najdete v Nizozemsku a Belgii, ale také v Německu a Francii. ", - "pl": "Ulica rowerowa to ulica, na której ruch samochodowy nie może wyprzedzać rowerzystów. Są one oznaczone specjalnym znakiem drogowym. Ulice rowerowe można znaleźć w Holandii i Belgii, ale także w Niemczech i Francji. " + "pl": "Ulica rowerowa to ulica, na której ruch samochodowy nie może wyprzedzać rowerzystów. Są one oznaczone specjalnym znakiem drogowym. Ulice rowerowe można znaleźć w Holandii i Belgii, ale także w Niemczech i Francji. ", + "uk": "Велодорога — це шлях, на якому моторизованому транспорту заборонено обганяти велосипедистів. Вони позначені спеціальним дорожнім знаком. Велодоріжки можна знайти в Нідерландах і Бельгії, а також у Німеччині та Франції. " }, "shortDescription": { "nl": "Een kaart met alle gekende fietsstraten", @@ -47,7 +50,8 @@ "fr": "Une carte des rues cyclables", "da": "Et kort over cykelgader", "cs": "Mapa cyklostezek", - "pl": "Mapa ulic rowerowych" + "pl": "Mapa ulic rowerowych", + "uk": "Мапа велодоріжок" }, "icon": "./assets/themes/cyclestreets/logo.svg", "startZoom": 14, @@ -74,7 +78,8 @@ "pa_PK": "سائیکاں دیاں سڑکاں", "cs": "Cyklostezky", "eu": "Bidegorriak", - "pl": "Ulice rowerowe" + "pl": "Ulice rowerowe", + "uk": "Велодороги" }, "minzoom": 7, "source": { @@ -93,7 +98,7 @@ "it": "Una strada ciclabile è una strada in cui i veicoli a motore non possono sorpassare le persone in bicicletta", "de": "Eine Fahrradstraße ist eine Straße, auf der motorisierter Verkehr einen Radfahrer nicht überholen darf", "hu": "A kerékpárosutca olyan utca, ahol gépjármű nem előzhet meg a kerékpárost", - "es": "Una ciclocalle es una calle en la que el tráfico motorizado no puede sobrepasar a un ciclista", + "es": "Una ciclocalle es una calle donde el tráfico motorizado no puede adelantar a un ciclista", "fr": "Une rue cyclable est une rue où les véhicules motorisés ne sont pas autorisés à dépasser les cyclistes", "da": "En cykelgade er en gade, hvor motoriseret trafik ikke må overhale en cyklist", "cs": "Cyklostezka je ulice, kde motorová doprava nesmí předjíždět cyklisty", @@ -188,7 +193,7 @@ "de": "Zukünftige Fahrradstraßen", "hu": "Jövőbeli kerékpárosutca", "ca": "Futur carrer ciclista", - "es": "Futura ciclocalle", + "es": "Futuras ciclocalles", "fr": "Future rue cyclable", "da": "Fremtidig cykelgade", "pa_PK": "بھُوکھی سائیکل سڑک", @@ -203,7 +208,7 @@ "de": "Diese Straße wird bald eine Fahrradstraße sein", "nb_NO": "Denne gaten vil bli sykkelgate snart", "hu": "Ez az utca hamarosan kerékpárosutcává válik", - "es": "Esta calle se convertirá en una ciclocalle próximamente", + "es": "Esta calle se convertirá pronto en una ciclocalle", "fr": "Cette rue va bientôt devenir une rue cyclable", "da": "Denne gade bliver snart en cykelgade", "cs": "Tato ulice se brzy stane cyklostezkou", @@ -247,7 +252,7 @@ "de": "{name} wird bald eine Fahrradstraße werden", "nb_NO": "{name} vil bli sykkelgate snart", "hu": "{name} nemsokára kerékpárosutca lesz", - "es": "{name} se convertirá en una ciclocalle próximamente", + "es": "{name} se convertirá pronto en una ciclocalle", "fr": "{name} va bientôt devenir une rue cyclable", "da": "{name} bliver snart en cykelgade", "cs": "{name} se brzy stane cyklostezkou", @@ -426,7 +431,7 @@ "de": "Ist die Straße {name} eine Fahrradstraße?", "it": "È {name} una strada ciclabile?", "hu": "Kerékpárosutca-e {name}?", - "es": "¿La calle {name} es una ciclocalle?", + "es": "¿Es la calle {name} una ciclocalle?", "fr": "La rue {name} est-elle une rue cyclable ?", "nb_NO": "Er {name}-gaten en sykkelgate?", "da": "Er gaden {name} en cykelgade?", @@ -452,7 +457,7 @@ "de": "Diese Straße ist eine Fahrradstraße (mit einer Geschwindigkeitsbegrenzung von 30 km/h)", "it": "Questa è una strada ciclabile (e ha un limite di velocità massima di 30 km/h)", "hu": "Ez az utca kerékpárosutca (és 30 km/h a sebességkorlátozás)", - "es": "Esta calle es una ciclocalle (y tiene un límite de velocidad de 30km/h)", + "es": "Esta calle es una ciclocalle (y tiene un límite de velocidad de 30 km/h)", "fr": "Cette rue est une rue cyclable (et est limitée à 30 km/h)", "da": "Denne gade er en cykelgade (og har en hastighedsgrænse på 30 km/t)", "cs": "Tato ulice je cyklostezkou (s omezením rychlosti na 30 km/h)", @@ -494,7 +499,7 @@ "fr": "Cette rue est une piste cyclable (avec une limitation de vitesse a 30 km/h et les véhicules ne sont pas autorisés) (un panneau sera demandé plus tard)", "ca": "Aquest carrer és una carretera ciclista (té un límit de velocitat de 30km/h i els vehicles no estan permesos)(el senyal es preguntarà més tard)", "cs": "Tato ulice je cyklistická (rychlost je zde omezena na 30 km/h vozidla sem mají zákaz vjezdu) (na značku se zeptáme později)", - "es": "Esta calle es una vía ciclista (tiene un límite de velocidad de 30 km/h y no se permiten vehículos) (se pedirá señal más adelante)", + "es": "Esta calle es una vía ciclista (tiene un límite de velocidad de 30 km/h y no se permiten vehículos) (la señal se solicitará más tarde)", "pl": "Ulica ta jest drogą rowerową (ograniczona prędkość wynosi 30 km/h i nie wolno wjeżdżać pojazdom) (znak zostanie poproszony później)", "it": "Questa strada è una strada per biciclette (ha un limite di velocità di 30 km/h e i veicoli non sono ammessi)(il segnale verrà richiesto più tardi)" }, @@ -544,7 +549,7 @@ "de": "Diese Straße wird bald eine Fahrradstraße sein", "it": "Diverrà tra poco una strada ciclabile", "hu": "Ez az utca hamarosan kerékpárosutcává válik", - "es": "Esta calle se convertirá en una ciclocalle próximamente", + "es": "Esta calle se convertirá pronto en una ciclocalle", "fr": "Cette rue sera bientôt une rue cyclable", "ca": "Aquest carrer es convertirà en un ciclocarrer pròximament", "da": "Denne gade bliver snart en cykelgade", @@ -627,7 +632,7 @@ "nl": "Aanwonenden toegestaan", "fr": "Riverains autorisés", "ca": "Residents permesos", - "es": "Residentes autorizados", + "es": "Residentes permitidos", "cs": "Přístup povolen obyvatelům", "pl": "Mieszkańcy dopuszczeni", "da": "Beboere tilladt", @@ -653,7 +658,7 @@ "fr": "Véhicules motorisés autorisés", "cs": "Vjezd motorových vozidel povolen", "ca": "Vehicles a motor permesos", - "es": "Vehículos a motor permitidos", + "es": "Vehículos motorizados permitidos", "pl": "Pojazdy silnikowe dozwolone", "da": "Motorkøretøjer tilladt", "it": "Permesso l'accesso ai veicoli a motore" @@ -730,7 +735,7 @@ "nl": "Er zijn geen onderborden bij deze fietsstraat.", "fr": "Il n'y a pas de panneaux supplémentaires à cette piste cyclable.", "cs": "Na této cyklostezce nejsou žádná doplňková značení.", - "es": "No hay señales suplementarias en esta vía ciclista.", + "es": "No hay señales complementarias en esta vía ciclista.", "ca": "No hi ha senyals addicionals en aquesta senda ciclable.", "pl": "Na tej drodze rowerowej nie ma żadnych dodatkowych znaków." }, @@ -771,7 +776,7 @@ "it": "Questa strada diventerà una strada ciclabile dal {cyclestreet:start_date}", "de": "Diese Straße wird am {cyclestreet:start_date} zu einer Fahrradstraße", "hu": "Ez az utca ekkor lesz kerékpárosutca: {cyclestreet:start_date}", - "es": "Esta calle se convetirá en una ciclocalle el {cyclestreet:start_date}", + "es": "Esta calle se convertirá en una ciclocalle en {cyclestreet:start_date}", "fr": "Cette rue deviendra une rue cyclable le {cyclestreet:start_date}", "nb_NO": "Denne gaten vil bli en sykkelgate {cyclestreet:start_date}", "da": "Denne gade bliver en cykelgade ved {cyclestreet:start_date}", diff --git a/assets/themes/cyclofix/cyclofix.json b/assets/themes/cyclofix/cyclofix.json index 6d9d05934..1b6fa3165 100644 --- a/assets/themes/cyclofix/cyclofix.json +++ b/assets/themes/cyclofix/cyclofix.json @@ -16,7 +16,8 @@ "ca": "Cyclofix - un mapa per a ciclistes", "da": "Cyclofix - et åbent kort for cyklister", "cs": "Cyklofix - mapa pro cyklisty", - "pl": "Cyclofix - mapa dla rowerzystów" + "pl": "Cyclofix - mapa dla rowerzystów", + "uk": "Cyclofix — мапа для велосипедистів" }, "description": { "en": "A map for cyclists to find the appropriate infrastructure for their needs, such as bicycle pumps, drinking water, bicycle shops, repair stations or parkings.", @@ -28,11 +29,12 @@ "zh_Hant": "這份地圖的目的是為單車騎士能夠輕易顯示滿足他們需求的相關設施。

你可以追蹤你確切位置 (只有行動版),以及在左下角選擇相關的圖層。你可以使用這工具在地圖新增或編輯釘子,以及透過回答問題來提供更多資訊。

所有你的變動都會自動存在開放街圖這全球資料圖,並且能被任何人自由取用。

你可以到 cyclofix.osm.be 閱讀更多資訊。", "it": "Questa mappa offre a chi va in bici una soluzione semplice per trovare tutte le infrastrutture di cui ha bisogno.

Puoi tracciare la tua posizione esatta (solo su mobile) e selezionare i livelli che ti interessano nell'angolo in basso a sinistra. Puoi anche usare questo strumento per aggiungere o modificare punti di interesse alla mappa e aggiungere nuove informazioni rispendendo alle domande.

Tutte le modifiche che apporterai saranno automaticamente salvate nel database mondiale di OpenStreetMap e potranno essere liberamente riutilizzate da tutti e tutte.

Per maggiori informazioni sul progetto ciclofix, visita cyclofix.osm.be.", "hu": "Ez a térkép kerékpárosoknak kíván könnyen használható megoldást nyújtani a számukra fontos infrastruktúra megtalálásához.

A bal alsó sarokban nyomon követheti pontos tartózkodási helyét (csak mobilon), és kiválaszthatja az Ön számára fontos rétegeket. Az eszköz segítségével gombostűket (érdekes pontokat, POI-kat) is szerkeszthet vagy felrajzolhat a térképre, a kérdések megválaszolásával pedig további adatokat szolgáltathat.

Minden módosítás automatikusan elmentődik az OpenStreetMap globális adatbázisában, és mások szabadon újra felhasználhatják.

A cyclofix projektről további információkat a cyclofix.osm.be oldalon talál.", - "es": "Un mapa para que los ciclistas encuentren la infraestructura adecuada a sus necesidades, como bombas de bicicleta, agua potable, tiendas de bicicletas, reparación o aparcamientos.", + "es": "Un mapa para ciclistas para encontrar la infraestructura adecuada para sus necesidades, inflador de bicicletas, agua potable, tiendas de bicicletas, estaciones de reparación o estacionamientos.", "da": "Målet med dette kort er at præsentere cyklister for en letanvendelig løsning til at finde den passende infrastruktur til deres behov.

Du kan spore din præcise placering (kun mobil) og vælge lag, der er relevante for dig i nederste venstre hjørne. Du kan også bruge dette værktøj til at tilføje eller redigere pins (points of interest) til kortet og give flere data ved at besvare spørgsmålene.

Alle ændringer, du foretager, vil automatisk blive gemt i den globale database af OpenStreetMap og kan kan frit genbruges af andre.

For mere information om cyclofix-projektet, gå til cyclofix.osm.be .", "cs": "Mapa pro cyklisty, kde najdou vhodnou infrastrukturu pro své potřeby, jako jsou pumpy na kola, pitná voda, cyklistické obchody, opravny nebo parkoviště.", "ca": "Un mapa per a que els ciclistes troben la infraestructura adequada a les seves necessitats, com bombes de bicicletes, aigua potable, botigues de bicicletes, reparació o aparcaments.", - "pl": "Celem tej mapy jest zaprezentowanie rowerzystom łatwego w użyciu rozwiązania umożliwiającego znalezienie infrastruktury odpowiedniej dla ich potrzeb.

Możesz śledzić swoją dokładną lokalizację (tylko na urządzeniach mobilnych) i wybierać w lewym dolnym rogu warstwy, które są dla Ciebie odpowiednie. Możesz także użyć tego narzędzia, aby dodać lub edytować pinezki (interesujące miejsca) na mapie i dostarczyć więcej danych, odpowiadając na pytania.

Wszystkie wprowadzone zmiany zostaną automatycznie zapisane w globalnej bazie danych OpenStreetMap i mogą być swobodnie ponownie wykorzystywane przez innych.

Więcej informacji o projekcie cyclofix można znaleźć na stronie cyclofix.osm.be ." + "pl": "Celem tej mapy jest zaprezentowanie rowerzystom łatwego w użyciu rozwiązania umożliwiającego znalezienie infrastruktury odpowiedniej dla ich potrzeb.

Możesz śledzić swoją dokładną lokalizację (tylko na urządzeniach mobilnych) i wybierać w lewym dolnym rogu warstwy, które są dla Ciebie odpowiednie. Możesz także użyć tego narzędzia, aby dodać lub edytować pinezki (interesujące miejsca) na mapie i dostarczyć więcej danych, odpowiadając na pytania.

Wszystkie wprowadzone zmiany zostaną automatycznie zapisane w globalnej bazie danych OpenStreetMap i mogą być swobodnie ponownie wykorzystywane przez innych.

Więcej informacji o projekcie cyclofix można znaleźć na stronie cyclofix.osm.be .", + "uk": "Мапа, на якій велосипедисти можуть знайти відповідну інфраструктуру для своїх потреб, наприклад, велосипедні насоси, питну воду, веломагазини, ремонтні станції або парковки." }, "icon": "./assets/themes/cyclofix/logo.svg", "socialImage": "./assets/themes/cyclofix/logo.svg", diff --git a/assets/themes/disaster_response/disaster_response.json b/assets/themes/disaster_response/disaster_response.json index fbda6f45c..c851f5271 100644 --- a/assets/themes/disaster_response/disaster_response.json +++ b/assets/themes/disaster_response/disaster_response.json @@ -4,10 +4,13 @@ "en": "Disaster response and emergency services", "it": "Risposta ai disastri", "de": "Katastrophenschutz und Notfalldienste", - "es": "Respuesta a catástrofes y servicios de emergencia", + "es": "Respuesta a desastres y servicios de emergencia", "ca": "Resposta davant de desastres i serveis d'emergència", "da": "Beredskab", - "cs": "Reakce na katastrofy a záchranné služby" + "cs": "Reakce na katastrofy a záchranné služby", + "ru": "Ликвидация последствий стихийных бедствий и аварийные службы", + "hu": "Katasztrófaelhárítás és sürgősségi szolgálatok", + "uk": "Реагування на стихійні лиха та аварійні служби" }, "description": { "en": "This map contains elements meant for disaster preparedness and response.", @@ -15,7 +18,8 @@ "de": "Diese Karte enthält Elemente, die der Katastrophenvorsorge und dem Katastrophenschutz dienen.", "es": "Este mapa contiene elementos destinados a la preparación y respuesta ante desastres.", "ca": "Aquest mapa conté elements destinants a la preparació i resposta davant desastres.", - "cs": "Tato mapa obsahuje prvky určené pro připravenost na katastrofy a reakci na ně." + "cs": "Tato mapa obsahuje prvky určené pro připravenost na katastrofy a reakci na ně.", + "uk": "Ця мапа містить обʼєкти, призначені для забезпечення готовності до стихійних лих та реагування на них." }, "icon": "./assets/themes/disaster_response/CivilDefence.svg", "socialImage": "./assets/themes/disaster_response/social.svg", diff --git a/assets/themes/drinking_water/drinking_water.json b/assets/themes/drinking_water/drinking_water.json index 8d1f1cc8c..2f52243b3 100644 --- a/assets/themes/drinking_water/drinking_water.json +++ b/assets/themes/drinking_water/drinking_water.json @@ -12,11 +12,12 @@ "nb_NO": "Drikkevann", "hu": "Ivóvíz", "ca": "Aigua Potable", - "es": "Agua Potable", + "es": "Agua potable", "da": "Drikkevand", "pa_PK": "پیݨ والا پاݨی", "cs": "Pitná voda", - "pl": "Woda pitna" + "pl": "Woda pitna", + "uk": "Питна вода" }, "description": { "en": "On this map, publicly accessible drinking water spots are shown and can be easily added", @@ -29,11 +30,12 @@ "de": "Eine Karte zum Anzeigen und Bearbeiten öffentlicher Trinkwasserstellen", "nb_NO": "Offentlig tilgjengelige drikkevannssteder", "hu": "Ezen a térképen a nyilvánosan hozzáférhető ivóvíznyerő helyek láthatók, szerkeszthetők és rajzolhatók fel könnyedén", - "es": "En este mapa, se muestran los puntos de agua potable accesibles públicamente y pueden añadirse fácilmente", + "es": "En este mapa se muestran y se pueden agregar fácilmente puntos de agua potable de acceso público", "ca": "En aquest mapa es mostren els punts d'aigua potable accessibles al públic i es poden afegir fàcilment", "da": "På dette kort er offentligt tilgængelige drikkevandsteder vist og kan nemt tilføjes", "cs": "Na této mapě jsou zobrazena veřejně přístupná místa s pitnou vodou, která lze snadno přidat", - "pl": "Na tej mapie znajdują się dostępne publicznie źródła pitnej wody i mogą łatwo być dodane" + "pl": "Na tej mapie znajdują się dostępne publicznie źródła pitnej wody i mogą łatwo być dodane", + "uk": "На цій мапі показуються і можуть бути легко додані загальнодоступні місця з питною водою" }, "icon": "./assets/themes/drinking_water/logo.svg", "startLat": 50.8465573, diff --git a/assets/themes/education/education.json b/assets/themes/education/education.json index 536fc1272..7962d0a34 100644 --- a/assets/themes/education/education.json +++ b/assets/themes/education/education.json @@ -14,7 +14,10 @@ "eu": "Hezkuntza", "pl": "Edukacja", "zh_Hant": "教育", - "it": "Istruzione" + "it": "Istruzione", + "ru": "Образование", + "hu": "Oktatás", + "uk": "Освіта" }, "description": { "en": "On this map, you'll find information about all types of schools and education and can easily add more information", @@ -24,9 +27,10 @@ "ca": "En aquest mapa trobareu informació sobre tots els tipus d'escoles i educació i podreu afegir fàcilment més informació", "da": "På dette kort finder du information om alle typer skoler og uddannelse og kan nemt tilføje flere oplysninger", "cs": "Na této mapě najdete informace o všech typech škol a vzdělávání a můžete snadno přidat další informace", - "es": "En este mapa, encontrará información sobre todos los tipos de escuelas y centros de educación y puede añadir fácilmente más información", + "es": "En este mapa, encontrarás información sobre todo tipo de escuelas y educación y puedes agregar fácilmente más información", "pl": "Na tej mapie znajdziesz informacje o wszystkich typach szkół i edukacji, a także możesz łatwo dodać więcej informacji", - "it": "In questa mappa troverai informazioni su tutti i tipi di scuole e istituti di istruzione e puoi aggiungere facilmente ulteriori informazioni" + "it": "In questa mappa troverai informazioni su tutti i tipi di scuole e istituti di istruzione e puoi aggiungere facilmente ulteriori informazioni", + "uk": "На цій мапі ви знайдете інформацію про всі типи шкіл та заклади освіти, ви також зможете легко додати додаткову інформацію" }, "icon": "./assets/layers/school/college.svg", "layers": [ diff --git a/assets/themes/elongated_coin/elongated_coin.json b/assets/themes/elongated_coin/elongated_coin.json index 49afe2f65..62900eac8 100644 --- a/assets/themes/elongated_coin/elongated_coin.json +++ b/assets/themes/elongated_coin/elongated_coin.json @@ -3,18 +3,21 @@ "title": { "en": "Penny Presses", "de": "Münzprägeautomaten", - "es": "Prensa de céntimos", + "es": "Prensas de monedas", "ca": "Premsa de cèntims", "cs": "Stroje na ražbu mincí", - "pl": "Prasy do groszy" + "pl": "Prasy do groszy", + "hu": "Kinyújtottérem-automaták", + "uk": "Монетні преси" }, "description": { "en": "Find penny presses to create your own elongated coins.", "de": "Finde Automaten um Souvenirmünzen zu prägen.", - "es": "Encuentra prensas de centimos para crear tus propias monedas alargadas.", + "es": "Encuentra prensas de monedas para crear tus propias monedas alargadas.", "ca": "Trobeu premses de cèntims per crear les vostres pròpies monedes allargades.", "cs": "Najděte automaty na ražbu suvenýrových mincí.", - "pl": "Znajdź prasy do groszy, aby stworzyć własne wydłużone monety." + "pl": "Znajdź prasy do groszy, aby stworzyć własne wydłużone monety.", + "uk": "Знайдіть преси для монет, щоб створити власні витягнуті монети." }, "icon": "./assets/themes/elongated_coin/penny.svg", "startZoom": 11, diff --git a/assets/themes/etymology/etymology.json b/assets/themes/etymology/etymology.json index 337b7e039..c85882821 100644 --- a/assets/themes/etymology/etymology.json +++ b/assets/themes/etymology/etymology.json @@ -7,14 +7,15 @@ "it": "Etimologia - da cosa prende nome un luogo?", "ru": "Открытая этимологическая карта", "zh_Hant": "開放詞源地圖", - "hu": "Etimológiai térkép", + "hu": "Etimológiai térkép – miről kapta a nevét ez a hely?", "fr": "Étymologie - d'où les rues tirent leur nom ?", "ca": "Etimologia: com rep el nom un lloc?", "da": "Etymology - hvad er et sted opkaldt efter?", "nb_NO": "Åpent etymologikart", "cs": "Etymologie - podle čeho je místo pojmenováno?", - "es": "Etimología: ¿De qué recibe el nombre un lugar?", - "pl": "Etymologia - od czego pochodzi nazwa ulicy?" + "es": "Etimología - ¿De qué proviene el nombre de un lugar?", + "pl": "Etymologia - od czego pochodzi nazwa ulicy?", + "uk": "Етимологія — на честь чого названо місце?" }, "description": { "en": "On this map, you can see what an object is named after. The streets, buildings, ... come from OpenStreetMap which got linked with Wikidata. In the popup, you'll see the Wikipedia article (if it exists) or a wikidata box of what the object is named after. If the object itself has a wikipedia page, that'll be shown too.

You can help contribute too!Zoom in enough and all streets will show up. You can click one and a Wikidata-search box will popup. With a few clicks, you can add an etymology link. Note that you need a free OpenStreetMap account to do this.", @@ -26,9 +27,10 @@ "fr": "Retrouvez sur cette carte l’origine du nom d’un élément. Les rues, bâtiments, etc. proviennent d’OpenStreetMap et sont liés aux données venant de Wikidata. La fenêtre pop-up affiche l’article Wikipedia (s’il existe) ou l’infobox Wikidata de l’objet dont provient le nom. Si l’objet a sa propre page Wikipedia, elle sera aussi affichée.

Vous pouvez contribuer aussi ! Zoomez suffisamment et toutes les rues seront affichées. Cliquez sur l'une d'elles et une boîte de recherche Wikidata apparaîtra. En quelques clics, vous pouvez ajouter un lien étymologique. Vous devez disposer d’un compte OpenStreetMap gratuit.", "da": "På dette kort kan du se, hvad et objekt er opkaldt efter. Gaderne, bygningerne, ... kommer fra OpenStreetMap, som blev forbundet med Wikidata. I pop op-vinduet vil du se Wikipedia-artiklen (hvis den findes) eller en wikidata-boks med, hvad objektet er opkaldt efter. Hvis selve objektet har en wikipedia-side, vil det også blive vist.

Du kan også hjælpe med at bidrage!Zoom nok ind og alle gader vil dukke op. Du kan klikke på en og en Wikidata-søgeboks vil poppe op. Med et par klik kan du tilføje et etymologilink. Bemærk, at du har brug for en gratis OpenStreetMap-konto for at gøre dette.", "cs": "Na této mapě se můžete podívat, podle čeho je objekt pojmenován. Ulice, budovy, ... pocházejí z OpenStreetMap, které byly propojeny s Wikidaty. Ve vyskakovacím okně se zobrazí článek na Wikipedii (pokud existuje) nebo wikidatové pole toho, po čem je objekt pojmenován. Pokud má samotný objekt stránku na Wikipedii, zobrazí se i ta.

Přispět můžete i vy!Dostatečně si objekt přiblížíte a zobrazí se všechnyulice. Na některou z nich můžete kliknout a objeví se okno pro vyhledávání na Wikidatech. Několika kliknutími můžete přidat etymologický odkaz. K provádění těchto úprav potřebujete bezplatný účet na OpenStreetMap.", - "es": "En este mapa, puedes ver el nombre de un objeto. Las calles, edificios, ... provienen de OpenStreetMap que tienen enlace con Wikidata. En la ventana emergente, verás el artículo de Wikipedia (si existe) o un recuadro de wikidata del nombre del objeto. Si el objeto en sí tiene una página wikipedia, también se mostrará.

¡Puedes contribuir! Acerca el zoom lo suficiente y aparecerán todas las calles. Puedes hacer clic en una y aparecerá un cuadro de búsqueda en Wikidata. Con unos pocos clics, puedes añadir un enlace etimológico. Ten en cuenta que para ello necesitas una cuenta gratuita de OpenStreetMap.", + "es": "En este mapa, puedes ver el origen del nombre de un objeto. Las calles, edificios, etc., provienen de OpenStreetMap, que se ha vinculado con Wikidata. En la ventana emergente, verás el artículo de Wikipedia (si existe) o un cuadro de Wikidata sobre el origen del nombre del objeto. Si el objeto en sí tiene una página de Wikipedia, también se mostrará.

¡También puedes ayudar a contribuir!Amplía lo suficiente y todas las calles aparecerán. Puedes hacer clic en una y aparecerá un cuadro de búsqueda de Wikidata. Con unos pocos clics, puedes agregar un enlace de etimología. Ten en cuenta que necesitas una cuenta gratuita de OpenStreetMap para hacer esto.", "ca": "En aquest mapa, podeu veure el nom d'un objecte. Els carrers, edificis, ... provenen d'OpenStreetMap que tenen un enllaça a Wikidata. A la finestra emergent, veuràs l'article de la Viquipèdia (si existeix) o un quadre de wikidata amb el nom de l'objecte. Si l'objecte en si té una pàgina de viquipèdia, també es mostrarà.

També pots ajudar a contribuir!Amplia prou i tots els carrers apareixerà. Podeu fer clic en un i apareixerà un quadre de cerca de Wikidata. Amb uns quants clics, podeu afegir un enllaç d'etimologia. Tingueu en compte que necessiteu un compte d'OpenStreetMap gratuït per fer-ho.", - "pl": "Na tej mapie możesz zobaczyć, od czego pochodzi nazwa obiektu. Ulice, budynki,... pochodzą z OpenStreetMap, który został powiązany z Wikidanymi. W wyskakującym okienku zobaczysz artykuł w Wikipedii (jeśli istnieje) lub pole wikidanych zawierające nazwę obiektu. Jeśli sam obiekt ma stronę w Wikipedii, ona również zostanie wyświetlona.

Ty też możesz pomóc!Powiększ wystarczająco mapę i wszystkie ulice się pojawią. Możesz kliknąć jedną, a pojawi się okno wyszukiwania Wikidanych. Za pomocą kilku kliknięć możesz dodać odnośnik etymologiczny. Pamiętaj, że potrzebujesz do tego darmowego konta OpenStreetMap." + "pl": "Na tej mapie możesz zobaczyć, od czego pochodzi nazwa obiektu. Ulice, budynki,... pochodzą z OpenStreetMap, który został powiązany z Wikidanymi. W wyskakującym okienku zobaczysz artykuł w Wikipedii (jeśli istnieje) lub pole wikidanych zawierające nazwę obiektu. Jeśli sam obiekt ma stronę w Wikipedii, ona również zostanie wyświetlona.

Ty też możesz pomóc!Powiększ wystarczająco mapę i wszystkie ulice się pojawią. Możesz kliknąć jedną, a pojawi się okno wyszukiwania Wikidanych. Za pomocą kilku kliknięć możesz dodać odnośnik etymologiczny. Pamiętaj, że potrzebujesz do tego darmowego konta OpenStreetMap.", + "uk": "На цій мапі можна побачити, на честь чого або кого названо обʼєкт. Вулиці, будинки, …взяті з OpenStreetMap, пов’язані з Wikidata. У спливаючому вікні ви побачите статтю Вікіпедії (якщо вона існує) або вікно вікіданих, на честь кого або чого об’єкт отримав свою назву. Якщо сам об’єкт має сторінку у Вікіпедії, це також буде показано.

Ви також можете допомогти!Наблизьтесь та всі вулиці зʼявляться. Ви можете клацнути одну з них, і з’явиться вікно пошуку Вікіданих. За допомогою кількох клацань ви можете додати етимологічне посилання. Зауважте, що для цього вам потрібен обліковий запис OpenStreetMap." }, "shortDescription": { "en": "What is the origin of a toponym?", @@ -38,11 +40,13 @@ "zh_Hant": "地名的由來是?", "hu": "Mi az eredete egy helynévnek?", "fr": "Quelle est l'origine de ce toponyme ?", - "es": "¿Cual es el origen de un topónimo?", + "es": "¿Cuál es el origen de un topónimo?", "ca": "Quin és l'origen d'un topònim?", "da": "Hvad er oprindelsen af et stednavn?", "cs": "Jaký je původ toponyma?", - "pl": "Jakie jest pochodzenie toponimów?" + "pl": "Jakie jest pochodzenie toponimów?", + "ru": "Каково происхождение топонима?", + "uk": "Від чого походить назва топоніма?" }, "icon": "./assets/layers/etymology/logo.svg", "hideFromOverview": false, @@ -60,12 +64,13 @@ "zh_Hant": "道路沒有詞源資訊", "hu": "Etimológiai adat nélküli utcák", "fr": "Route sans origine étymologique", - "es": "Calles sin información etimológica", + "es": "Calles sin información de etimología", "ca": "Carrers sense informació etimològica", "da": "Gader uden oprindelses information", "nb_NO": "Gater uten etymologi-info", "cs": "Ulice bez etymologických informací", - "pl": "Ulice bez informacji o etymologii" + "pl": "Ulice bez informacji o etymologii", + "uk": "Вулиці без етимологічної інформації" }, "minzoom": 15, "isCounted": false, @@ -92,12 +97,13 @@ "zh_Hant": "公園與森哥沒有詞源資訊", "hu": "Etimológiai adat nélküli parkok és erdők", "fr": "Parcs et forêts sans origine étymologique", - "es": "Parques y bosques sin información etimológica", + "es": "Parques y bosques sin información de etimología", "ca": "Parcs i boscos sense informació etimològica", "da": "Parker og skove uden oprindelses information", "nb_NO": "Parker og skoger uten etymologi-info", "cs": "Parky a lesy bez etymologických informací", - "pl": "Parki i lasy bez informacji o etymologii" + "pl": "Parki i lasy bez informacji o etymologii", + "uk": "Парки та ліси без етимологічної інформації" }, "minzoom": 18, "isCounted": false, @@ -124,13 +130,14 @@ "en": "Education institutions without etymology information", "de": "Bildungseinrichtungen ohne Namensherkunft", "fr": "Institutions d'éducation sans origine étymologique", - "es": "Instituciones educacionales sin información etimológica", + "es": "Instituciones educativas sin información de etimología", "nl": "Onderwijsinstelling zonder etymologische informatie", "ca": "Institucions educatives sense informació d'etimològica", "da": "Uddannelsesinstitutioner uden oprindelses oplysninger", "nb_NO": "Utdannelsesinstitusjoner uten etymologi-info", "cs": "Vzdělávací instituce bez etymologických informací", - "pl": "Instytucje edukacyjne bez informacji o etymologii" + "pl": "Instytucje edukacyjne bez informacji o etymologii", + "uk": "Навчальні заклади без етимологічної інформації" }, "minzoom": 18, "isCounted": false, @@ -160,13 +167,14 @@ "en": "Cultural places without etymology information", "de": "Kultureinrichtungen ohne Namensherkunft", "fr": "Lieux culturels sans origine étymologique", - "es": "Lugares culturales sin información etimológica", + "es": "Lugares culturales sin información de etimología", "nl": "Culturele plaatsen zonder etymologische informatie", "ca": "Llocs culturals sense informació etimològica", "da": "Kulturelle steder uden oprindelses information", "nb_NO": "Kulturelle steder uten etymologi-info", "cs": "Kulturní místa bez etymologických informací", - "pl": "Miejsca kulturowe bez informacji o etymologii" + "pl": "Miejsca kulturowe bez informacji o etymologii", + "uk": "Культурні місця без етимологічної інформації" }, "minzoom": 18, "isCounted": false, @@ -196,13 +204,14 @@ "en": "Touristic places without etymology information", "de": "Touristische Einrichtungen ohne Namensherkunft", "fr": "Lieux touristiques sans origine étymologique", - "es": "Lugares turísticos sin información etimológica", + "es": "Lugares turísticos sin información de etimología", "nl": "Toeristische plaatsen zonder etymologische informatie", "ca": "Llocs turístics sense informació etimològica", "da": "Turistiske steder uden oprindelses information", "nb_NO": "Turiststeder uten etymologi-info", "cs": "Turistická místa bez etymologických informací", - "pl": "Miejsca turystyczne bez informacji o etymologii" + "pl": "Miejsca turystyczne bez informacji o etymologii", + "uk": "Туристичні місця без інформації про етимологію" }, "minzoom": 18, "isCounted": false, @@ -236,8 +245,9 @@ "da": "Sundhed og sociale steder uden oprindelses information", "nb_NO": "Helse- og sosiale steder uten etymologi-info", "cs": "Zdravotní a sociální místa bez etymologických informací", - "es": "Lugares sanitarios y sociales sin información etimológica", - "pl": "Miejsca związane ze zdrowiem i społeczeństwem bez informacji o etymologii" + "es": "Lugares de salud y sociales sin información de etimología", + "pl": "Miejsca związane ze zdrowiem i społeczeństwem bez informacji o etymologii", + "uk": "Медичні та соціальні заклади без етимологічної інформації" }, "minzoom": 18, "isCounted": false, @@ -265,13 +275,14 @@ "en": "Sport places without etymology information", "de": "Sporteinrichtungen ohne Namensherkunft", "fr": "Lieux sportifs sans origine étymologique", - "es": "Lugares deportivos sin información etimológica", + "es": "Lugares deportivos sin información de etimología", "nl": "Sportplekken zonder etymologische informatie", "ca": "Llocs esportius sense informació etimològica", "da": "Sportspladser uden oprindelses information", "nb_NO": "Sportssteder uten etymologi-info", "cs": "Sportovní místa bez etymologických informací", - "pl": "Miejsca sportowe bez informacji o etymologii" + "pl": "Miejsca sportowe bez informacji o etymologii", + "uk": "Спортивні місця без етимологічної інформації" }, "minzoom": 18, "isCounted": false, diff --git a/assets/themes/facadegardens/facadegardens.json b/assets/themes/facadegardens/facadegardens.json index c7b2ee42c..d5fd83d32 100644 --- a/assets/themes/facadegardens/facadegardens.json +++ b/assets/themes/facadegardens/facadegardens.json @@ -13,7 +13,9 @@ "es": "Jardines de fachada", "da": "Facadehaver", "cs": "Fasádní zahrady", - "pl": "Ogrody fasadowe" + "pl": "Ogrody fasadowe", + "ru": "Фасадные сады", + "uk": "Фасадні сади" }, "description": { "nl": "Ontharde voortuintjes, groene gevels en bomen ín de stad brengen naast rust ook een mooiere stad, een grotere biodiversiteit, een verkoelend effect en een betere luchtkwaliteit.
Klimaan VZW en 'Mechelen Klimaatneutraal' willen met het project Klim(t)aan je Gevel bestaande en nieuwe geveltuintjes in kaart brengen als voorbeeld voor mensen zelf een tuintje willen aanleggen of voor stadwandelaars die houden van de natuur.
Meer info over het project op klimaan.be.", @@ -25,7 +27,7 @@ "hu": "A homlokzatkertek, zöld homlokzatok és fák a városban nemcsak békét és nyugalmat, hanem szebb várost, nagyobb biológiai sokféleséget, hűsítő hatást és jobb levegőminőséget is hoznak.
A Klimaan VZW és a Mechelen Klimaatneutraal a meglévő és új homlokzati kerteket szeretné feltérképezni, hogy példaként szolgáljanak a saját kertet építeni vágyóknak vagy a természetet kedvelő városi sétálóknak.
További információ a projektről a klimaan.be oldalon.", "da": "Facadehaver, grønne facader og træer i byen bringer ikke kun fred og ro, men også en smukkere by , større biodiversitet, en kølende effekt og bedre luftkvalitet.
Klimaan VZW og Mechelen Klimaatneutraal ønsker at kortlægge eksisterende og nye facadehaver som et eksempel for folk, der vil bygge deres egen have eller for byvandrere, der elsker naturen.
Mere info om projektet på klimaan.be.", "cs": "Fasádní zahrady, zelené fasády a stromy ve městě přinášejí nejen klid a pohodu, ale také krásnější město, větší biodiverzitu, ochlazující efekt a lepší kvalitu ovzduší.
Klimaan VZW a Mechelen Klimaatneutraal chtějí zmapovat stávající i nové fasádní zahrady jako příklad pro lidi, kteří si chtějí vybudovat vlastní zahradu, nebo pro městské chodce, kteří mají rádi přírodu.
Více informací o projektu najdete na klimaan.be.", - "es": "Los jardines de fachada, las fachadas verdes y los árboles en la ciudad no sólo aportan paz y tranquilidad, sino también una ciudad más bella, una mayor biodiversidad, un efecto refrescante y una mejor calidad del aire.
Klimaan VZW y Mechelen Klimaatneutraal quieren trazar un mapa de los jardines de fachada existentes y nuevos como ejemplo para las personas que quieran construir su propio jardín o para los paseantes urbanos amantes de la naturaleza.
Más información sobre el proyecto en klimaan.be.", + "es": "Jardines de fachada, fachadas verdes y árboles en la ciudad no solo traen paz y tranquilidad, sino también una ciudad más hermosa, una mayor biodiversidad, un efecto de enfriamiento y una mejor calidad del aire.
Klimaan VZW y Mechelen Klimaatneutraal quieren mapear los jardines de fachada existentes y nuevos como un ejemplo para las personas que quieren construir su propio jardín o para los paseantes de la ciudad que aman la naturaleza.
Más información sobre el proyecto en klimaan.be.", "ca": "Els Jardins de façana, façanes verdes i arbres de la ciutat no només aporten pau i tranquil·litat, sinó també una ciutat més bella , una major biodiversitat, un efecte de refredament i una millor qualitat de l'aire.
Klimaan VZW i Mechelen Klimaatneutraal volen cartografiar els jardins de façana existents i nous com a exemple per a les persones que volen construir el seu propi jardí o per als excursionistes de la ciutat que estimen la natura.
Més informació sobre el projecte a klimaan.be.", "pl": "Ogrody fasadowe, zielone fasady i drzewa w mieście nie tylko zapewniają ciszę i spokój, ale także piękniejsze miasto, większą różnorodność biologiczną, efekt chłodzący i lepszą jakość powietrza.
Klimaan VZW i Mechelen Klimaatneutraal chcą zmapować istniejące i nowe ogrody fasadowe jako przykład dla osób chcących zbudować własny ogród lub dla spacerowiczów kochających przyrodę.
Więcej informacji o projekcie na klimaan.be." }, @@ -38,11 +40,12 @@ "fr": "Cette carte indique les murs végétalisés avec des photos et des informations comme leur orientation, l’ensoleillement et le type de plantes.", "de": "Diese Karte zeigt Fassadengärten mit Bildern und Details zu Ausrichtung, Sonneneinstrahlung und Pflanzen.", "hu": "Ez a térkép homlokzati kerteket jelenít meg képekkel, valamint adatokkal a tájolásukról, a napsütésnek való kitettségükről és a bennük található növényzetről.", - "es": "Este mapa muestra jardines de fachada con fotografías e información útil sobre la orientación, la luz del sol y los tipos de plantas.", + "es": "Este mapa muestra jardines de fachada con imágenes e información útil sobre la orientación, la luz solar y los tipos de plantas.", "da": "Dette kort viser facadehaver med billeder og nyttig info om orientering, solskin og plantetyper.", "cs": "Tato mapa zobrazuje fasádní zahrady s obrázky a užitečnými informacemi o orientaci, oslunění a druzích rostlin.", "ca": "Aquest mapa mostra jardins a façanes amb fotografies i informació útil sobre l'orientació, llum del sol i els tipus de plantes.", - "pl": "Mapa przedstawia ogrody fasadowe ze zdjęciami i przydatnymi informacjami na temat orientacji, nasłonecznienia i rodzajów roślin." + "pl": "Mapa przedstawia ogrody fasadowe ze zdjęciami i przydatnymi informacjami na temat orientacji, nasłonecznienia i rodzajów roślin.", + "uk": "На цій мапі показані фасадні сади з фотографіями та корисною інформацією про орієнтацію, сонячне освітлення та типи рослин." }, "icon": "./assets/themes/facadegardens/geveltuin.svg", "startZoom": 15, @@ -135,7 +138,7 @@ "de": "Wie ist der Garten ausgerichtet?", "it": "Com’è orientato questo giardino?", "hu": "Milyen a kert tájolása?", - "es": "¿Cual es la orientación del jardín?", + "es": "¿Cuál es la orientación del jardín?", "da": "Hvad er havens orientering?", "ca": "Quina és l'orientació del jardí?", "cs": "Jaká je orientace zahrady?", @@ -164,7 +167,7 @@ "fr": "Le jardin est en plein soleil", "de": "Der Garten liegt in voller Sonne", "hu": "A kert teljesen a napon van", - "es": "El jardín está completamente al sol", + "es": "El jardín está a pleno sol", "nb_NO": "Hagen er ikke i skyggen", "da": "Haven er i fuld sol", "cs": "Zahrada je na přímém slunci", @@ -226,7 +229,7 @@ "fr": "Quel est l’ensoleillement du jardin ?", "de": "Ist der Garten schattig oder sonnig?", "hu": "Árnyékban vagy napon van a kert?", - "es": "¿El jardín está al sol o a la sombra?", + "es": "¿El jardín está a la sombra o soleado?", "nb_NO": "Er hagen i skygge eller ei?", "da": "Er haven skyggefuld eller solrig?", "cs": "Je zahrada zastíněná nebo slunná?", @@ -297,7 +300,7 @@ "da": "Der er ingen regntønde", "cs": "Sud na dešťovou vodu není k dispozici", "ca": "No hi ha un barril de pluja", - "es": "No hay barril de lluvia", + "es": "No hay un barril de lluvia", "pl": "Nie ma beczki na deszczówkę" } } @@ -328,7 +331,7 @@ "fr": "Quand le jardin a-t’il été construit ? (L’année suffit)", "de": "Wann wurde der Garten angelegt? (Jahr ist ausreichend)", "hu": "Mikor épült a kert? (Év megadása is elegendő)", - "es": "¿Cuándo se construyó el jardín? (el año es suficiente)", + "es": "¿Cuándo se construyó el jardín? (un año es suficiente)", "nb_NO": "Når ble hagen opprettet? (Årstall holder.)", "da": "Hvornår blev haven bygget? (et år er nok)", "cs": "Kdy byla zahrada postavena? (rok je postačující)", @@ -397,7 +400,7 @@ "fr": "Y-a-t’il des plantes comestibles ?", "de": "Gibt es essbare Pflanzen?", "hu": "Van-e benne ehető növény?", - "es": "¿Hay alguna planta comestible?", + "es": "¿Hay plantas comestibles?", "nb_NO": "Finnes det noen spisbare planter?", "da": "Er der nogle spiselige planter?", "cs": "Jsou zde jedlé rostliny?", @@ -436,7 +439,7 @@ "hu": "Van benne szőlő", "da": "Der er vinstokke", "cs": "Zde jsou révy", - "es": "Esto son viñedos", + "es": "Hay vides", "ca": "Hi ha vinyes", "pl": "Są winorośle" } @@ -487,7 +490,7 @@ "hu": "Van benne talajtakaró növény", "da": "Der er bunddækkende planter", "cs": "Jsou zde půdopokryvné rostliny", - "es": "Hay plantas cubresuelos", + "es": "Hay plantas tapizantes", "ca": "Hi ha plantes que cobreixen el sòl", "pl": "Istnieją rośliny okrywowe" } @@ -522,7 +525,7 @@ "fr": "Détails supplémentaires sur le jardin (si nécessaire et non décrit précédemment)", "de": "Zusätzliche Informationen über den Garten (falls erforderlich und oben noch nicht beschrieben)", "hu": "További leíró jellegű információ a kertről (ha szükséges, és följebb nincs leírva)", - "es": "Información descriptiva complementaria sobre el jardín (si es necesaria pero no se describe arriba)", + "es": "Información adicional que describe el jardín (si es necesario y aún no se describe arriba)", "nb_NO": "Ekstra beskrivende info om hagen (hvis det trengs og ikke er gjengitt ovenfor)", "da": "Ekstra beskrivende info om haven (hvis nødvendigt og endnu ikke beskrevet ovenfor)", "cs": "Další popisné informace o zahradě (pokud jsou potřeba a nejsou popsány výše)", @@ -569,7 +572,7 @@ "de": "Einen Fassadengarten hinzufügen", "hu": "Homlokzatkert hozzáadása", "ca": "Afegeix un jardí vertical", - "es": "Añadir un jardín de fachada", + "es": "Agregar un jardín de fachada", "nb_NO": "Legg til en fronthage", "da": "Tilføj en facadehave", "cs": "Přidat fasádní zahradu", diff --git a/assets/themes/fireplace/fireplace.json b/assets/themes/fireplace/fireplace.json index a51cd86f0..0ebec5245 100644 --- a/assets/themes/fireplace/fireplace.json +++ b/assets/themes/fireplace/fireplace.json @@ -3,16 +3,19 @@ "title": { "en": "Fireplaces and barbeques", "de": "Feuerstellen und Grillplätze", - "es": "Chimenea y barbacoas", + "es": "Chimeneas y barbacoas", "ca": "Xemeneies i barbacoes", - "cs": "Ohniště a grily" + "cs": "Ohniště a grily", + "hu": "Tűzrakó- és grillezőhelyek", + "uk": "Вогнища та барбекю" }, "description": { "de": "Stelle im Freien zum Feuermachen oder ein ortsfest installierter Grill an einer offizielle Stelle.", "en": "Outdoor place to make a fire or a fixed barbecue in an official place.", - "es": "Lugar al aire libre adecuado para hacer fuego y con barbacoas.", + "es": "Lugar al aire libre para hacer fuego o una barbacoa/parrilla fija en un lugar oficial.", "ca": "Lloc a l'aire lliure adequat per a fer foc i barbacoes.", - "cs": "Venkovní místo pro rozdělání ohně nebo grilování na oficiálním místě." + "cs": "Venkovní místo pro rozdělání ohně nebo grilování na oficiálním místě.", + "uk": "Відкрите місце для розведення багаття або стаціонарне барбекю в офіційному місці." }, "icon": "./assets/layers/assembly_point/fire.svg", "layers": [ diff --git a/assets/themes/food/food.json b/assets/themes/food/food.json index 687a5b01e..ebecb7b81 100644 --- a/assets/themes/food/food.json +++ b/assets/themes/food/food.json @@ -14,20 +14,22 @@ "da": "Restauranter og fastfood", "cs": "Restaurace a rychlé občerstvení", "ru": "Общественное питание", - "pl": "Restauracje i fast foody" + "pl": "Restauracje i fast foody", + "uk": "Ресторани та фаст-фуд" }, "description": { "nl": "Restaurants en fast food", "en": "Restaurants and fast food", "de": "Restaurants und Schnellimbisse", - "es": "Restaurantes y Comida rápida", + "es": "Restaurantes y comida rápida", "nb_NO": "Restauranter og søppelmat", "fr": "Restaurants et restaurants à service rapide", "da": "Restauranter og fastfood", "ca": "Restaurants i menjar ràpid", "cs": "Restaurace a rychlého občerstvení", "pl": "Restauracje i fast foody", - "it": "Ristoranti e fast food" + "it": "Ristoranti e fast food", + "uk": "Ресторани та фаст-фуд" }, "icon": "./assets/layers/food/restaurant.svg", "layers": [ diff --git a/assets/themes/fritures/fritures.json b/assets/themes/fritures/fritures.json index 5fc590fb5..931ec2c05 100644 --- a/assets/themes/fritures/fritures.json +++ b/assets/themes/fritures/fritures.json @@ -9,8 +9,9 @@ "da": "Pomfritbutikker", "pa_PK": "فرائیاں دیاں دکاناں", "cs": "Obchody s hranolky", - "es": "Tiendas de patatas fritas", - "pl": "Sklepy z frytkami" + "es": "Tiendas de papas fritas", + "pl": "Sklepy z frytkami", + "uk": "Картопля фрі" }, "description": { "en": "On this map, you'll find your favourite fries shop!", @@ -20,8 +21,9 @@ "da": "På dette kort finder du din foretrukne pomfrits-butik!", "cs": "Na této mapě najdete své oblíbené obchody s hranolky!", "ca": "A aquest mapa, trobaràs la teva botiga preferida de patates!", - "es": "¡En este mapa encontrarás tu tienda de patatas fritas favorita!", - "pl": "Na tej mapie znajdziesz swój ulubiony sklep z frytkami!" + "es": "¡En este mapa, encontrarás tu tienda de papas fritas favorita!", + "pl": "Na tej mapie znajdziesz swój ulubiony sklep z frytkami!", + "uk": "На цій мапі ви знайдете свій улюблений заклад з картоплею фрі!" }, "icon": "./assets/themes/fritures/logo.svg", "layers": [ @@ -40,7 +42,7 @@ "da": "Pomfritbutik", "pa_PK": "فرائیاں دی دکان", "cs": "Obchod s hranolky", - "es": "Tienda de patatas fritas", + "es": "Tienda de papas fritas", "pl": "Sklep z frytkami" }, "=presets": [], @@ -65,7 +67,7 @@ "question": { "en": "No oil type preference", "de": "Kein Öltyp bevorzugt", - "es": "No se prefiere ningún tipo de aceite", + "es": "Sin preferencia de tipo de aceite", "cs": "Žádný preferovaný typ oleje" } }, @@ -74,7 +76,7 @@ "en": "Only show fritures using vegetable oil", "de": "Nur Friteusen mit Pflanzenöl anzeigen", "ca": "Només mostra freiduries que utilitzen oli vegetal", - "es": "Solo muestra freiduras que utilizan aceite vegetal", + "es": "Mostrar solo freidoras que usan aceite vegetal", "cs": "Zobrazit pouze jídla smažená na rostlinném oleji" }, "osmTags": "friture:oil=vegetable" @@ -84,7 +86,7 @@ "en": "Only show fritures using animal oil", "de": "Nur Friteusen mit tierischem Öl anzeigen", "ca": "Només mostra freiduries que utilitzen oli animal", - "es": "Solo muestra freiduras que utilizan aceite animal", + "es": "Mostrar solo freidoras que usan aceite animal", "cs": "Zobrazit pouze jídla smažená na živočišném oleji" }, "osmTags": "friture:oil=animal" diff --git a/assets/themes/ghostbikes/ghostbikes.json b/assets/themes/ghostbikes/ghostbikes.json index c97680130..389395dd8 100644 --- a/assets/themes/ghostbikes/ghostbikes.json +++ b/assets/themes/ghostbikes/ghostbikes.json @@ -9,7 +9,7 @@ "zh_Hant": "幽靈單車", "fr": "Vélo fantôme", "eo": "Fantombicikloj", - "es": "Bicicletas blanca", + "es": "Bicicletas fantasma", "fi": "Haamupyörä", "gl": "Bicicleta pantasma", "hu": "Szellemkerékpárok", @@ -21,7 +21,8 @@ "da": "Spøgelsescykler", "ca": "Bicicletes fantasmes", "cs": "Kola duchů", - "pt": "Bicicleta fantasma" + "pt": "Bicicleta fantasma", + "uk": "Примарні велосипеди" }, "description": { "en": "A ghost bike is a memorial for a cyclist who died in a traffic accident, in the form of a white bicycle placed permanently near the accident location.

On this map, one can see all the ghost bikes which are known by OpenStreetMap. Is a ghost bike missing? Everyone can add or update information here - you only need to have a (free) OpenStreetMap account.

There exists an automated account on Mastodon which posts a monthly overview of ghost bikes worldwide

", @@ -31,12 +32,13 @@ "zh_Hant": "幽靈單車是用來紀念死於交通事故的單車騎士,在事發地點附近放置白色單車。

在這份地圖上面,你可以看到所有在開放街圖已知的幽靈單車。有缺漏的幽靈單車嗎?所有人都可以在這邊新增或是更新資訊-只有你有(免費)開放街圖帳號。", "fr": "Les vélos fantômes sont des mémoriaux pour les cyclistes tuées sur la route, prenant la forme de vélos blancs placés à proximité des faits.

Cette carte indique leur emplacement à partir d’OpenStreetMap. Il est possible de contribuer aux informations ici, sous réserve d’avoir un compte OpenStreetMap (gratuit).

Il existe un compte automatisé Mastodon qui publie un aperçu mensuel des vélos fantômes à travers le monde

", "it": "Una bici fantasma è un monumento in ricordo di un ciclista che è morto in un incidente stradale, che ha la forma di un una bicicletta bianca installata in maniera permanente ne luogo dell’incidente.

In questa mappa, è possibile vedere tutte le bici fantasma che sono state aggiunte su OpenStreetMap. Ne manca una? Chiunque può aggiungere o migliorare le informazioni qui presenti (è solo richiesto un account gratuito su OpenStreetMap).

Esiste un account automatizzato su Mastodon da aggiornamenti mensili sulle bici fantasma del mondo

", - "hu": "A szellemkerékpár egy közlekedési balesetben elhunyt kerékpáros emlékműve: egy fehér kerékpár, amelyet állandó jelleggel a baleset helyszínének közelében helyeznek el.

A térképen az OpenStreetMap által ismert összes szellemkerékpár megtekinthető. Hiányzik róla egy szellemkerékpár? Bárki hozzáadhat vagy frissíthet adatokat – csak egy (ingyenes) OpenStreetMap-fiókra van szükség hozzá.", + "hu": "A szellemkerékpár egy közlekedési balesetben elhunyt kerékpáros emlékműve: egy fehér kerékpár, amelyet állandó jelleggel a baleset helyszínének közelében helyeznek el.

A térképen az OpenStreetMap által ismert összes szellemkerékpár megtekinthető. Hiányzik róla egy szellemkerékpár? Bárki hozzáadhat vagy frissíthet adatokat – csak egy (ingyenes) OpenStreetMap-fiókra van szükség hozzá.

A Mastodonon van egy automatizált fiók, amely havonta közzétesz egy áttekintést a szellemkerékpárokról világszerte.

", "da": "En spøgelsescykel er et mindesmærke for en cyklist, der døde i en trafikulykke, i form af en hvid cykel placeret permanent i nærheden af ulykkesstedet.

På dette kort er en kan se alle de spøgelsescykler, som er kendt af OpenStreetMap. Mangler der en spøgelsescykel? Alle kan tilføje eller opdatere oplysninger her - du behøver kun at have en (gratis) OpenStreetMap-konto.", "cs": "Kolo duchů je památník pro cyklisty, kteří zemřeli při dopravní nehodě, ve formě bílého kola trvale umístěného poblíž místa nehody.

Na této mapě je možné vidět všechna kola duchů, která jsou známa OpenStreetMap. Chybí na mapě nějaké? Každý může přidat nebo aktualizovat informace zde - stačí mít pouze (bezplatný) účet OpenStreetMap.

Na Mastodonu existuje automatizovaný účet, který posílá měsíční přehled kol duchů po celém světě

", - "es": "Una bicicleta fantasma es un monumento en memoria de un ciclista fallecido en un accidente de tráfico, en forma de una bicicleta blanca colocada permanentemente cerca del lugar del accidente.

En este mapa se pueden ver todas las bicicletas fantasma conocidas por OpenStreetMap. ¿Falta alguna bicicleta fantasma? Todo el mundo puede añadir o actualizar información aquí - sólo necesitas tener una cuenta (gratuita) de OpenStreetMap.

Existe una cuenta automatizada en Mastodon que publica un resumen mensual de las bicis fantasma de todo el mundo

", + "es": "Una bicicleta fantasma es un monumento en memoria de un ciclista que murió en un accidente de tráfico, en forma de una bicicleta blanca colocada permanentemente cerca del lugar del accidente.

En este mapa, se pueden ver todas las bicicletas fantasma que se conocen en OpenStreetMap. ¿Falta una bicicleta fantasma? Cualquiera puede agregar o actualizar información aquí; solo necesitas tener una cuenta (gratuita) de OpenStreetMap.

Existe una cuenta automatizada en Mastodon que publica un resumen mensual de bicicletas fantasma en todo el mundo

", "ca": "Una bicicleta fantasma és un monument commemoratiu d'un ciclista que va morir en un accident de trànsit en forma d'una bicicleta blanca col·locada permanentment a prop del lloc de l'accident.

En aquest mapa, un pot veure totes les bicicletes fantasma conegudes per OpenStreetMap. Falta una bicicleta fantasma? Tothom pot afegir o actualitzar informació aquí; només cal que tingueu un compte d'OpenStreetMap (gratuït).

Hi ha un compte automatitzat a Mastodon que publica una visió mensual de les bicicletes fantasma a tot el món

", - "pl": "Duch roweru to pomnik upamiętniający rowerzystę, który zginął w wypadku drogowym, w postaci białego roweru umieszczonego na stałe w pobliżu miejsca wypadku.

Na tej mapie każdy może zobaczyć wszystkie takie duchy roweru znane w OpenStreetMap. Czy brakuje ducha roweru? Każdy może tu dodać lub zaktualizować informacje - wystarczy posiadać (bezpłatne) konto OpenStreetMap.

Istnieje automatyczne konto na Mastodonie, na którym publikowany jest miesięczny przegląd duchów roweru na całym świecie

" + "pl": "Duch roweru to pomnik upamiętniający rowerzystę, który zginął w wypadku drogowym, w postaci białego roweru umieszczonego na stałe w pobliżu miejsca wypadku.

Na tej mapie każdy może zobaczyć wszystkie takie duchy roweru znane w OpenStreetMap. Czy brakuje ducha roweru? Każdy może tu dodać lub zaktualizować informacje - wystarczy posiadać (bezpłatne) konto OpenStreetMap.

Istnieje automatyczne konto na Mastodonie, na którym publikowany jest miesięczny przegląd duchów roweru na całym świecie

", + "uk": "Велосипед-примара — це меморіал велосипедисту, який загинув у дорожньо-транспортній пригоді, у вигляді білого велосипеда, постійно розміщеного поблизу місця аварії.

На цій мапі ви можете побачити всі велосипеди-примари, відомі в OpenStreetMap. Велосипед-примара відсутній? Кожен може додавати або оновлювати інформацію тут — вам потрібно лише мати обліковий запис OpenStreetMap.

На Mastodon існує бот, який публікує щомісячний огляд велосипедів-примар у всьому світі

" }, "icon": "./assets/themes/ghostbikes/logo.svg", "defaultBackgroundId": "protomaps.white", diff --git a/assets/themes/ghostsigns/ghostsigns.json b/assets/themes/ghostsigns/ghostsigns.json index 8632100ca..7b58ccf6e 100644 --- a/assets/themes/ghostsigns/ghostsigns.json +++ b/assets/themes/ghostsigns/ghostsigns.json @@ -3,15 +3,17 @@ "title": { "en": "Ghost Signs", "de": "Geisterzeichen", - "es": "Señales fantasma", - "cs": "Nápisy na zdech" + "es": "Letreros fantasma", + "cs": "Nápisy na zdech", + "uk": "Примарні знаки" }, "description": { "en": "A map showing disused signs on buildings", "de": "Eine Karte, die ungenutzte Zeichen auf Gebäuden zeigt", - "es": "Un mapa que muestra los rótulos en desuso de los edificios", + "es": "Un mapa que muestra letreros en desuso en los edificios", "ca": "Un mapa que mostra els rètols en desús dels edificis", - "cs": "Mapa zobrazující nepoužívané nápisy na budovách" + "cs": "Mapa zobrazující nepoužívané nápisy na budovách", + "uk": "Мапа, на якій показані вивіски на будівлях, що не використовуються" }, "icon": "./assets/themes/advertising/wall_painting.svg", "layers": [ diff --git a/assets/themes/glutenfree/glutenfree.json b/assets/themes/glutenfree/glutenfree.json index 134ec8102..b3933cff4 100644 --- a/assets/themes/glutenfree/glutenfree.json +++ b/assets/themes/glutenfree/glutenfree.json @@ -6,15 +6,19 @@ "it": "Senza glutine", "es": "Sin gluten", "ca": "Sense gluten", - "cs": "Bez lepku" + "cs": "Bez lepku", + "ru": "Без глютена", + "hu": "Gluténmentes helyek", + "uk": "Без глютену" }, "description": { "en": "A crowdsourced map with glutenfree items", "de": "Eine gemeinschaftliche Karte mit glutenfreien Produkten", "it": "Una mappa in crowdsourcing per articoli senza glutine", - "es": "Un menú compartido con productos sin gluten", + "es": "Un mapa colaborativo con artículos sin gluten", "ca": "Un mapa col·lectiu amb articles sense gluten", - "cs": "Mapa s bezlepkovými položkami vytvořená pomocí crowdsourcingu" + "cs": "Mapa s bezlepkovými položkami vytvořená pomocí crowdsourcingu", + "uk": "Колективна мапа з безглютеновими продуктами" }, "icon": "./assets/layers/questions/glutenfree.svg", "layers": [ diff --git a/assets/themes/grb/grb.json b/assets/themes/grb/grb.json index 7da6995b4..9bacdb89d 100644 --- a/assets/themes/grb/grb.json +++ b/assets/themes/grb/grb.json @@ -9,7 +9,7 @@ "hu": "Ez a sablon a flandriai GRB épületimportálás automatizlását kívánja megkönnyíteni.", "de": "Dieses Thema ist ein Versuch, die Automatisierung des GRB-Imports zu unterstützen.", "fr": "Ce thème tente d’aider l’import automatique GRB.", - "es": "Este tema es un intento de automatizar la importación GRB.", + "es": "Este tema es un intento de ayudar a automatizar la importación de GRB.", "da": "Dette tema er et forsøg på at hjælpe med at automatisere GRB-importen.", "ca": "Aquest tema és un intent d'automatitzar la importació GRB.", "cs": "Toto téma je pokusem o automatizaci importu GRB.", @@ -162,7 +162,7 @@ "de": "Wurde von GRB importiert, Referenznummer ist {source:geometry:ref}", "ca": "Ha estat importat des de GRB, el número de referència és {source:geometry:ref}", "cs": "Byl importován z GRB, referenční číslo je {source:geometry:ref}", - "es": "Se ha importado de GRB, el número de referencia es {source:geometry:ref}", + "es": "Ha sido importado de GRB, el número de referencia es {source:geometry:ref}", "pl": "Został zaimportowany z GRB, numer referencyjny to {source:geometry:ref}" }, "condition": "source:geometry:ref~*" @@ -331,7 +331,7 @@ "fr": "Les balises meta ne sont pas encore calculées ... Rouvrir cette fenêtre pop-up", "da": "Har endnu ikke beregnet metatags... Genåbn denne popup", "cs": "Metatags ještě nebyly vypočítány... Znovu otevřete toto vyskakovací okno", - "es": "Aún no se han calculado los metatags... Reabrir esta ventana emergente", + "es": "Aún no se calcularon las metaetiquetas... Vuelve a abrir esta ventana emergente", "ca": "Encara no s'han calculat les metaetiquetes... Torneu a obrir aquesta finestra emergent", "pl": "Jeszcze nie obliczono metaznaczników... Otwórz to okienko ponownie" } @@ -348,7 +348,7 @@ "then": { "en": "This building has holes and is modeled as a relation. As such, it cannot be conflated. Conflate it manually via the building export site {open_in_josm()}", "de": "Dieses Gebäude hat Löcher und ist als Relation modelliert. Als solches kann es nicht zusammengeführt werden. Es kann manuell zusammengeführt werden über die Gebäudeexportseite {open_in_josm()}", - "es": "Este edificio tiene agujeros y está modelado como una relación. Por lo tanto, no se puede combinar. Combínalo manualmente a través el sitio de exportación de edificios {open_in_josm()}", + "es": "Este edificio tiene huecos y se modela como una relación. Como tal, no se puede fusionar. Fusionarlo manualmente a través de el sitio de exportación de edificios {open_in_josm()}", "fr": "Ce bâtiment a des ouvertures et est modélisé comme une relation. Il ne peut être fusionné. Fusionnez-le manuellement via le site d’export de bâtiment {open_in_josm()}", "nl": "Dit gebouw heeft openingen en is gemodelleerd als een relatie. Bijgevolg kan het niet worden samengevoegd. Voeg het manueel samen via de export-site voor gebouwen {open_in_josm()}", "da": "Denne bygning har huller og er modelleret som en relation. Som sådan kan det ikke sammenblandes. Sammensæt det manuelt via bygningseksportwebstedet {open_in_josm()}", diff --git a/assets/themes/guideposts/guideposts.json b/assets/themes/guideposts/guideposts.json index d59671e63..001f4f6d6 100644 --- a/assets/themes/guideposts/guideposts.json +++ b/assets/themes/guideposts/guideposts.json @@ -4,16 +4,19 @@ "en": "Guideposts", "cs": "Rozcestníky", "de": "Wegweiser", - "es": "Poste guía", + "es": "Postes indicadores", "pl": "Drogowskazy", - "ca": "Pal guia" + "ca": "Pal guia", + "ru": "Указатели", + "uk": "Вказівники" }, "description": { "en": "Guideposts (also known as fingerposts or finger posts) are often found along official hiking, cycling, skiing or horseback riding routes to indicate the directions to different destinations. Additionally, they are often named after a region or place and show the altitude.\n\nThe position of a signpost can be used by a hiker/biker/rider/skier as a confirmation of the current position, especially if they use a printed map without a GPS receiver. ", "cs": "Podél oficiálních turistických, cyklistických, lyžařských nebo jezdeckých tras se často nacházejí rozcestníky (také známé jako ukazatel směru), které ukazují směry k různým cílům. Navíc jsou často pojmenovány po regionu nebo místě a ukazují nadmořskou výšku.\n\nPolohu rozcestníku může turista/cyklista/jezdec/lyžař využít jako potvrzení aktuální polohy, zejména pokud používá tištěnou mapu bez GPS přijímače. ", "de": "Wegweiser an offiziellen Wander-, Rad-, Ski- oder Reitstrecken, um Richtungen zu verschiedenen Zielen anzuzeigen. Sie sind oft nach einer Region oder einem Ort benannt und zeigen die Höhe an.\n\nDie Position eines Wegweisers kann von Wanderern, Radfahrern, Reitern oder Skifahrern als Bestätigung der aktuellen Position genutzt werden, insbesondere wenn sie eine gedruckte Karte ohne GPS-Empfänger verwenden. ", - "es": "Los postes guía o indicadores (también conocidos como \"fingerposts\") suelen encontrarse a lo largo de las rutas oficiales de senderismo, ciclismo, esquí o equitación para indicar las direcciones a los distintos destinos. Además, suelen llevar el nombre de una región o lugar e indican la altitud.\n\nLa posición de un poste indicador puede servir al excursionista, ciclista, jinete o esquiador para confirmar su posición actual, sobre todo si utiliza un mapa impreso sin receptor GPS. ", - "pl": "Drogowskazy (znane również jako \"palce na słupkach\") często znajdują się wzdłuż oficjalnych szlaków pieszych, rowerowych, narciarskich lub konnych i wskazują drogę do różnych miejsc. Ponadto często noszą nazwy regionu lub miejsca i wskazują wysokość.\n\nPozycja drogowskazu może być wykorzystana przez turystę/rowerzystę/jeźdźca/narciarza jako potwierdzenie aktualnej pozycji, zwłaszcza jeśli korzysta z drukowanej mapy bez odbiornika GPS. " + "es": "Los postes indicadores (también conocidos como señalización o \"fingerposts\") suelen encontrarse a lo largo de rutas oficiales de senderismo, ciclismo, esquí o equitación para indicar las direcciones a diferentes destinos. Además, a menudo llevan el nombre de una región o lugar y muestran la altitud.\n\nLa posición de un poste indicador puede ser utilizada por un excursionista/ciclista/jinete/esquiador como confirmación de la posición actual, especialmente si utiliza un mapa impreso sin un receptor GPS. ", + "pl": "Drogowskazy (znane również jako \"palce na słupkach\") często znajdują się wzdłuż oficjalnych szlaków pieszych, rowerowych, narciarskich lub konnych i wskazują drogę do różnych miejsc. Ponadto często noszą nazwy regionu lub miejsca i wskazują wysokość.\n\nPozycja drogowskazu może być wykorzystana przez turystę/rowerzystę/jeźdźca/narciarza jako potwierdzenie aktualnej pozycji, zwłaszcza jeśli korzysta z drukowanej mapy bez odbiornika GPS. ", + "uk": "Орієнтири (також відомі як вказівні стовпчики) часто зустрічаються вздовж офіційних пішохідних, велосипедних, лижних або кінних маршрутів, щоб вказати напрямок до різних пунктів призначення. Крім того, вони часто названі на честь регіону або місця і показують висоту над рівнем моря.\n\nПоложення вказівника може використовуватися пішоходом/велосипедистом/вершником/лижником як підтвердження поточного положення, особливо якщо він користується друкованою картою без GPS-приймача. " }, "icon": "./assets/layers/guidepost/guidepost.svg", "layers": [ diff --git a/assets/themes/hackerspaces/hackerspaces.json b/assets/themes/hackerspaces/hackerspaces.json index 8cab4d804..40ad3853d 100644 --- a/assets/themes/hackerspaces/hackerspaces.json +++ b/assets/themes/hackerspaces/hackerspaces.json @@ -15,7 +15,8 @@ "cs": "Hackerspaces a tvůrčí prostory", "es": "Hackerspaces y makerspaces", "eu": "Hackerspace", - "pl": "Hackerspace'y" + "pl": "Hackerspace'y", + "uk": "Хакерспейси та мейкерспейси" }, "description": { "en": "On this map you can see hackerspaces, add a new hackerspace or update data directly", @@ -26,7 +27,7 @@ "nl": "Op deze kaart kan je hackerspaces zien, toevoegen en updaten", "fr": "Retrouvez, renseignez ou modifiez des ateliers numériques ouverts", "da": "På dette kort kan du se hackerspaces, tilføje et nyt hackerspace eller opdatere data direkte", - "es": "En este mapa puedes ver hackerspaces, añadir un nuevo hackerspace o actualizar datos directamente", + "es": "En este mapa puedes ver hackerspaces, agregar un nuevo hackerspace o actualizar datos directamente", "cs": "Na této mapě si můžete prohlédnout hackerspaces, přidat nový hackerspace nebo přímo aktualizovat data", "ca": "En aquest mapa podeu veure els hackerspaces, afegir un nou hackerspace o actualitzar les dades directament", "pl": "Na tej mapie możesz zobaczyć hackerspace, dodać nową hackerspace lub bezpośrednio zaktualizować dane" @@ -43,7 +44,8 @@ "cs": "Mapa označující Hackerspaces", "es": "Un mapa de hackerspaces", "ca": "Un mapa dels hackerspaces", - "pl": "Mapa hackerspaceów" + "pl": "Mapa hackerspaceów", + "uk": "Мапа хакерських просторів" }, "icon": "./assets/themes/hackerspaces/glider.svg", "layers": [ diff --git a/assets/themes/hailhydrant/hailhydrant.json b/assets/themes/hailhydrant/hailhydrant.json index d57485476..27d2d0db5 100644 --- a/assets/themes/hailhydrant/hailhydrant.json +++ b/assets/themes/hailhydrant/hailhydrant.json @@ -9,13 +9,14 @@ "it": "Idranti, estintori, caserme dei vigili del fuoco e stazioni delle ambulanze", "nb_NO": "Hydranter, brannslukkere, brannstasjoner, og ambulansestasjoner.", "de": "Brandschutz", - "hu": "Tűzcsapok, tűzoltó készülékek, tűzoltóságok és mentőállomások.", + "hu": "Tűzcsapok, tűzoltó készülékek, tűzoltóságok és mentőállomások", "nl": "Brandkranen, brandblussers, brandweerposten en ambulanceposten", - "es": "Bocas de incendios, Extintores, Parques de bomberos y Parques de ambulancias", + "es": "Bocas de incendio, extintores, estaciones de bomberos y estaciones de ambulancias", "ca": "Hidrants, Extintors, Parcs de Bombers i estacions d'Ambulàncies", "da": "Brandhaner, brandslukkere, brandstationer og ambulancestationer", "cs": "Hydranty, hasicí přístroje, požární stanice a stanice záchranné služby", - "pl": "Hydranty, gaśnice, remizy strażackie i pogotowia ratunkowe" + "pl": "Hydranty, gaśnice, remizy strażackie i pogotowia ratunkowe", + "uk": "Гідранти, вогнегасники, пожежні станції та станції швидкої допомоги" }, "description": { "en": "On this map you can find and update hydrants, fire stations, ambulance stations, and extinguishers in your favorite neighborhoods.", @@ -24,9 +25,9 @@ "fr": "Sur cette carte on trouve et met à jour les bornes incendies, extincteurs, casernes de pompiers et ambulanciers dans son quartier.", "de": "Auf dieser Karte können Sie Hydranten, Feuerwachen, Krankenwagen und Feuerlöscher in Ihren bevorzugten Stadtvierteln finden und aktualisieren.", "it": "In questa cartina puoi vedere e aggiornare idranti, stazioni dei pompieri, stazioni delle ambulanze ed estintori del tuo quartiere preferito.", - "hu": "Ezen a térképen tűzcsapokat, tűzoltóállomásokat, mentőállomásokat és tűzoltóállomásokat találhat és szerkeszthet kedvenc városrészeiben (vagy másutt).\n\nA bal alsó sarokban nyomon követheti pontos tartózkodási helyét (csak mobilon), és kiválaszthatja az Ön számára releváns rétegeket. Ezzel az eszközzel gombostűket (érdekes pontokat, POI-kat) is szerkeszthet vagy felrajzolhat a térképre, a rendelkezésre álló kérdések megválaszolásával pedig további részleteket adhat meg.\n\nAz Ön által elvégzett módosítások automatikusan elmentődnek az OpenStreetMap globális adatbázisában, és mások szabadon újra felhasználhatják azokat.", + "hu": "Ezen a térképen tűzcsapokat, tűzoltóállomásokat, mentőállomásokat és tűzoltó készülékeket találhatsz és aktualizálhatsz a kedvenc környékeden.", "ru": "На этой карте вы можете найти и обновить местоположение пожарных гидрантов, пожарных станций, станций скорой помощи и огнетушителей в ваших избранных районах населенного пункта.\n\nВы можете записать своё точное месторасположение (только на мобильных устройствах) и выбрать интересующие слои данных в левом нижнем углу. Вы также можете использовать этот инструмент для добавления или изменения точек интереса на карте и дополнять данные, отвечая на вопросы.\n\nВсе сделанные вами изменения автоматически сохраняются в базе данных OpenStreetMap и могут быть свободно переработаны другими пользователями.", - "es": "En este mapa puedes encontrar y actualizar hidrantes contra incendios, estaciones de bomberos, estaciones de ambulancias y extintores en tus vecindarios favoritos.", + "es": "En este mapa puedes encontrar y actualizar bocas de incendio, estaciones de bomberos, estaciones de ambulancias y extintores en tus barrios favoritos.", "nl": "Op deze kaart kan je hydranten, brandblussers, brandweerkazernes en stalplaatsen voor ambulances vinden en updaten.", "da": "På dette kort kan du finde og opdatere brandhaner, brandstationer, ambulancestationer og brandslukkere i dine yndlingskvarterer.\n\nDu kan spore din præcise placering (kun mobil) og vælge lag, der er relevante for dig, i nederste venstre hjørne. Du kan også bruge dette værktøj til at tilføje eller redigere POI (points of interest) til kortet og give yderligere detaljer ved at besvare tilgængelige spørgsmål.\n\nAlle ændringer, du foretager, bliver automatisk gemt i den globale database af OpenStreetMap og kan frit genbruges af andre.", "ca": "A aquest mapa pots trobar i actualizar boques d'incendis, parcs de bombers, estacions d'ambulàncies i extintors als seus veïnats preferits.", @@ -42,12 +43,13 @@ "de": "Eine Karte mit Hydranten, Feuerlöschern, Feuerwachen und Rettungswachen.", "it": "Carta che mostra gli idranti, gli estintori, le caserme dei vigili del fuoco e le stazioni delle ambulanze.", "hu": "Térkép tűzcsapok, tűzoltó készülékek, tűzoltóságok és mentőállomások megjelenítéséhez.", - "es": "Mapa para mostrar bocas de incendios, extintores, parques de bomberos y parques de ambulancias.", + "es": "Mapa para mostrar bocas de incendio, extintores, estaciones de bomberos y estaciones de ambulancias.", "ca": "Mapa per a mostrar hidrants, extintors, parcs de bombers i estacions d'ambulàncies.", "nl": "Kaart om hydranten, brandblussers, brandweerkazernes en ambulanceposten weer te geven.", "da": "Kort for at vise brandhaner, brandslukkere, brandstationer og ambulancestationer.", "cs": "Mapa zobrazující hydranty, hasicí přístroje, požární stanice a stanice záchranné služby.", - "pl": "Mapa przedstawiająca hydranty, gaśnice, remizy strażackie i karetki pogotowia." + "pl": "Mapa przedstawiająca hydranty, gaśnice, remizy strażackie i karetki pogotowia.", + "uk": "Мапа, що показує гідранти, вогнегасники, пожежні станції та станції швидкої допомоги." }, "icon": "./assets/themes/hailhydrant/logo.svg", "startZoom": 6, @@ -64,4 +66,4 @@ "ambulancestation" ], "widenFactor": 3 -} \ No newline at end of file +} diff --git a/assets/themes/healthcare/healthcare.json b/assets/themes/healthcare/healthcare.json index 41b9686f8..574178b07 100644 --- a/assets/themes/healthcare/healthcare.json +++ b/assets/themes/healthcare/healthcare.json @@ -11,11 +11,13 @@ "cs": "Zdravotní péče", "nb_NO": "Helsebehandling", "ru": "Здравоохранение", - "es": "Atención sanitaria", + "es": "Atención médica", "eu": "Osasun laguntza", "pl": "Służba zdrowia", "zh_Hant": "醫療保健", - "it": "Assistenza sanitaria" + "it": "Assistenza sanitaria", + "hu": "Egészségügy", + "uk": "Охорона здоров'я" }, "description": { "en": "On this map, various healthcare related items are shown", @@ -25,9 +27,10 @@ "da": "På dette kort er forskellige sundhedsrelaterede emner vist", "nl": "Op deze kaart vind je dokters, apothekers, kinesisten, ziekenhuizen en andere gezondheidsgerelateerde diensten", "cs": "Na této mapě jsou zobrazeny různé položky související se zdravotní péčí", - "es": "En este mapa se muestran varios elementos relacionados con la salud", + "es": "En este mapa, se muestran varios elementos relacionados con la atención médica", "pl": "Na tej mapie pokazane są różne elementy związane z opieką zdrowotną", - "it": "Su questa mappa sono indicati vari elementi relativi all'assistenza sanitaria" + "it": "Su questa mappa sono indicati vari elementi relativi all'assistenza sanitaria", + "uk": "На цій мапі показані різні обʼєкти, повʼязані з охороною здоровʼя" }, "icon": "./assets/layers/doctors/doctors.svg", "startZoom": 16, diff --git a/assets/themes/hotels/hotels.json b/assets/themes/hotels/hotels.json index 5f883cb1a..60af39d7a 100644 --- a/assets/themes/hotels/hotels.json +++ b/assets/themes/hotels/hotels.json @@ -14,7 +14,10 @@ "eu": "Hotelak", "pl": "Hotele", "zh_Hant": "飯店", - "it": "Hotel" + "it": "Hotel", + "ru": "Гостиницы", + "hu": "Szállodák", + "uk": "Готелі" }, "description": { "en": "On this map, you'll find hotels in your area", @@ -24,10 +27,11 @@ "nl": "Op deze kaart vind je hotels in je omgeving", "fr": "Sur cette carte, vous trouverez les hôtels dans votre zone", "cs": "Na této mapě najdete hotely ve vašem okolí", - "es": "En este mapa encontrarás hoteles en tu zona", + "es": "En este mapa, encontrarás hoteles en tu área", "ca": "En aquest mapa trobareu hotels a la vostra zona", "pl": "Na tej mapie znajdziesz hotele w Twojej okolicy", - "it": "Su questa mappa, troverai gli hotel della tua zona" + "it": "Su questa mappa, troverai gli hotel della tua zona", + "uk": "На цій мапі ви знайдете готелі поруч з вами" }, "icon": "./assets/layers/tourism_accomodation/hotel.svg", "startZoom": 13, diff --git a/assets/themes/icecream/icecream.json b/assets/themes/icecream/icecream.json index 4f9d48b31..264acbe1e 100644 --- a/assets/themes/icecream/icecream.json +++ b/assets/themes/icecream/icecream.json @@ -5,16 +5,19 @@ "de": "Eiscreme", "cs": "Zmrzlina", "ca": "Gelat", - "es": "Helado", + "es": "Helados", "da": "Is", - "it": "Gelato" + "it": "Gelato", + "ru": "Мороженое", + "hu": "Fagylalt", + "uk": "Морозиво" }, "description": { "en": "A map showing ice cream parlors and ice cream vending machines", "de": "Eine Karte, die Eisdielen und Eisautomaten zeigt", "cs": "Mapa zobrazující prodej zmrzliny a automaty na zmrzlinu", "ca": "Un mapa que mostra les gelateries i les màquines expenedores de gelats", - "es": "Mapa de heladerías y máquinas expendedoras de helados", + "es": "Un mapa que muestra heladerías y máquinas expendedoras de helados", "it": "Una mappa che mostra le gelaterie e i distributori automatici di gelato" }, "icon": "./assets/layers/ice_cream/ice_cream.svg", diff --git a/assets/themes/indoors/indoors.json b/assets/themes/indoors/indoors.json index 21a78f89b..2e75e515d 100644 --- a/assets/themes/indoors/indoors.json +++ b/assets/themes/indoors/indoors.json @@ -14,20 +14,24 @@ "eu": "Barnealdean", "pl": "Wewnątrz", "zh_Hant": "室內", - "it": "Al chiuso" + "it": "Al chiuso", + "ru": "Внутри помещений", + "hu": "Beltéri létesítmények", + "uk": "Плани приміщень" }, "description": { "en": "On this map, publicly accessible indoor places are shown", - "de": "Diese Karte zeigt öffentlich zugängliche Innenräume", + "de": "Eine Karte mit öffentlich zugänglichen Innenräumen", "fr": "Sur cette carte, les lieux intérieurs accessibles au public sont montrés", "da": "På dette kort er offentligt tilgængelige indendørs steder vist", "nl": "Op deze kaart worden publiek toegankelijke binnenruimtes getoond", "cs": "Na této mapě jsou zobrazeny veřejně přístupné vnitřní prostory", "nb_NO": "Viser offentlig tilgjenglige innendørssteder", - "es": "En este mapa se muestran los lugares cubiertos de acceso público", + "es": "En este mapa, se muestran lugares interiores de acceso público", "ca": "En aquest mapa es mostren els llocs interiors accessibles al públic", "pl": "Na tej mapie pokazane są publicznie dostępne miejsca w pomieszczeniach zamkniętych", - "it": "Su questa mappa sono indicati i luoghi al chiuso accessibili al pubblico" + "it": "Su questa mappa sono indicati i luoghi al chiuso accessibili al pubblico", + "uk": "На цій мапі показані загальнодоступні плани приміщень" }, "icon": "./assets/layers/entrance/entrance.svg", "startZoom": 14, diff --git a/assets/themes/items_with_image/items_with_image.json b/assets/themes/items_with_image/items_with_image.json index 61f601005..fa9445ba4 100644 --- a/assets/themes/items_with_image/items_with_image.json +++ b/assets/themes/items_with_image/items_with_image.json @@ -4,12 +4,13 @@ "en": "All items with images", "de": "Alle Elemente mit Bildern", "es": "Todos los elementos con imágenes", - "cs": "Všechny položky s obrázky" + "cs": "Všechny položky s obrázky", + "hu": "Minden képpel rendelkező térképobjektum" }, "description": { "en": "A map showing all items on OSM which have an image. This theme is a very bad fit for MapComplete as someone is not able to directly add a picture. However, this theme is mostly here to include this all into the database, which'll allow this to quickly fetch images nearby for other features", "de": "Eine Karte, die alle Objekte auf OSM zeigt, die ein Bild haben. Dieses Thema ist sehr schlecht für MapComplete geeignet, da man nicht direkt ein Bild hinzufügen kann. Dieses Thema ist jedoch hauptsächlich dazu da, um alles in die Datenbank aufzunehmen, was es ermöglicht, Bilder in der Nähe für andere Funktionen schnell zu finden", - "es": "Un mapa que muestra todos los objetos en OSM que tienen una imagen. Este tema no es muy adecuado para MapComplete porque no se puede agregar una imagen directamente. Sin embargo, este tema está ahí principalmente para poner todo en la base de datos, lo que permite encontrar rápidamente imágenes cercanas para otras funciones", + "es": "Un mapa que muestra todos los elementos en OSM que tienen una imagen. Este tema no es adecuado para MapComplete, ya que no se puede agregar una imagen directamente. Sin embargo, este tema está aquí principalmente para incluir todo esto en la base de datos, lo que permitirá obtener rápidamente imágenes cercanas para otras funciones", "cs": "Mapa zobrazující všechny položky v OSM, které mají obrázek. Toto téma je pro MapComplete velmi nevhodné, protože někdo nemůže přímo přidat obrázek. Nicméně toto téma je zde hlavně proto, aby to vše zahrnovalo do databáze, což umožní rychle načítat obrázky v okolí pro další funkce" }, "icon": "./assets/layers/item_with_image/camera.svg", diff --git a/assets/themes/kerbs_and_crossings/kerbs_and_crossings.json b/assets/themes/kerbs_and_crossings/kerbs_and_crossings.json index 91583ecb7..39a87bad0 100644 --- a/assets/themes/kerbs_and_crossings/kerbs_and_crossings.json +++ b/assets/themes/kerbs_and_crossings/kerbs_and_crossings.json @@ -11,7 +11,9 @@ "ru": "Бордюры и пешеходные переходы", "es": "Bordillos y cruces", "ca": "Vorals i encreuaments", - "pl": "Krawężniki i przejścia" + "pl": "Krawężniki i przejścia", + "hu": "Járdaszegélyek és gyalogosátkelők", + "uk": "Бордюри та переходи" }, "description": { "en": "A map showing kerbs and crossings.", @@ -23,7 +25,8 @@ "nb_NO": "Fortauskanter og fotgjengerfelt.", "es": "Un mapa que muestra bordillos y cruces.", "ca": "Un mapa amb voreres i encreuaments.", - "pl": "Mapa pokazująca krawężniki i przejścia." + "pl": "Mapa pokazująca krawężniki i przejścia.", + "uk": "Мапа з позначенням бордюрів та пішохідних переходів." }, "icon": "./assets/layers/kerbs/KerbIcon.svg", "startZoom": 19, diff --git a/assets/themes/lactosefree/lactosefree.json b/assets/themes/lactosefree/lactosefree.json index 9fe2f5a4e..5453819cf 100644 --- a/assets/themes/lactosefree/lactosefree.json +++ b/assets/themes/lactosefree/lactosefree.json @@ -3,16 +3,19 @@ "title": { "en": "Lactose free shops and restaurants", "de": "Laktosefreie Geschäfte und Restaurants", - "es": "Tiendas y restaurantes con productos sin lactosa", + "es": "Tiendas y restaurantes sin lactosa", "ca": "Botigues i restaurants amb productes sense lactosa", - "cs": "Bezlaktózové obchody a restaurace" + "cs": "Bezlaktózové obchody a restaurace", + "hu": "Laktózmentes boltok és éttermek", + "uk": "Магазини та ресторани без лактози" }, "description": { "en": "A crowdsourced map with lactose free shops and restaurants", "de": "Eine Crowdsourcing-Karte mit laktosefreien Geschäften und Restaurants", - "es": "Un mapa en que colaborar con tiendas y restaurantes con productos sin lactosa", + "es": "Un mapa colaborativo con tiendas y restaurantes sin lactosa", "ca": "Un mapa col·lectiu amb botigues i restaurants sense lactosa", - "cs": "Mapa bezlaktózových obchodů a restaurací vytvořená crowdsourcingem" + "cs": "Mapa bezlaktózových obchodů a restaurací vytvořená crowdsourcingem", + "uk": "Колективна мапа з магазинами та ресторанами з безлактозними продуктами" }, "icon": "./assets/layers/questions/lactose_free.svg", "layers": [ diff --git a/assets/themes/lighthouses/lighthouses.json b/assets/themes/lighthouses/lighthouses.json index c452702a7..7d6a934bd 100644 --- a/assets/themes/lighthouses/lighthouses.json +++ b/assets/themes/lighthouses/lighthouses.json @@ -7,14 +7,17 @@ "it": "Fari", "es": "Faros", "ca": "Fars", - "cs": "Majáky" + "cs": "Majáky", + "hu": "Világítótornyok", + "uk": "Маяки" }, "description": { "en": "Lighthouses are tall buildings with a light on top to guide marine traffic.", "de": "Leuchttürme sind hohe Gebäude mit einem Licht an der Spitze, das den Schiffsverkehr leitet.", "it": "I fari sono edifici alti con una luce in cima per guidare il traffico marittimo.", "es": "Los faros son edificios altos con una luz en la parte superior para guiar el tráfico marítimo.", - "cs": "Majáky jsou vysoké budovy se světlem na vrcholu, které slouží k vedení námořní dopravy." + "cs": "Majáky jsou vysoké budovy se světlem na vrcholu, které slouží k vedení námořní dopravy.", + "uk": "Маяки - це високі будівлі зі світлом на вершині, що спрямовують морський рух." }, "icon": "./assets/themes/lighthouses/lighthouse.svg", "startLat": 51.33884, diff --git a/assets/themes/mapcomplete-changes/mapcomplete-changes.json b/assets/themes/mapcomplete-changes/mapcomplete-changes.json index d02f116aa..504e47bf2 100644 --- a/assets/themes/mapcomplete-changes/mapcomplete-changes.json +++ b/assets/themes/mapcomplete-changes/mapcomplete-changes.json @@ -3,12 +3,14 @@ "title": { "en": "Changes made with MapComplete", "de": "Änderungen mit MapComplete", - "cs": "Změny provedené pomocí MapComplete" + "cs": "Změny provedené pomocí MapComplete", + "es": "Cambios realizados con MapComplete" }, "shortDescription": { "en": "Shows changes made by MapComplete", "de": "Zeigt die von MapComplete vorgenommenen Änderungen an", - "cs": "Zobrazuje změny provedené nástrojem MapComplete" + "cs": "Zobrazuje změny provedené nástrojem MapComplete", + "es": "Muestra los cambios realizados por MapComplete" }, "description": { "en": "This maps shows all the changes made with MapComplete", @@ -27,7 +29,8 @@ "id": "mapcomplete-changes", "name": { "en": "Changeset centers", - "de": "Changeset-Zentren" + "de": "Changeset-Zentren", + "es": "Centros de conjuntos de cambios" }, "minzoom": 0, "source": { @@ -39,7 +42,8 @@ "render": { "en": "Changeset for {theme}", "de": "Änderungssatz für {theme}", - "cs": "Sada změn pro {theme}" + "cs": "Sada změn pro {theme}", + "es": "Conjunto de cambios para {theme}" } }, "description": { @@ -54,7 +58,8 @@ "render": { "en": "Changeset {id}", "de": "Änderungssatz {id}", - "cs": "Sada změn {id}" + "cs": "Sada změn {id}", + "es": "Conjunto de cambios {id}" } }, { @@ -62,7 +67,8 @@ "question": { "en": "What contributor did make this change?", "de": "Wer hat zu dieser Änderung beigetragen?", - "cs": "Který přispěvatel provedl tuto změnu?" + "cs": "Který přispěvatel provedl tuto změnu?", + "es": "¿Qué colaborador realizó este cambio?" }, "freeform": { "key": "user" @@ -70,7 +76,8 @@ "render": { "en": "Change made by {user}", "de": "Änderung vorgenommen von {user}", - "cs": "Změna provedena uživatelem {user}" + "cs": "Změna provedena uživatelem {user}", + "es": "Cambio realizado por {user}" } }, { @@ -78,14 +85,16 @@ "question": { "en": "What theme was used to make this change?", "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 realizar este cambio?" }, "freeform": { "key": "theme" }, "render": { "en": "Change with theme {theme}", - "de": "Änderung mit Thema {theme}" + "de": "Änderung mit Thema {theme}", + "es": "Cambio con el tema {theme}" } }, { @@ -96,12 +105,14 @@ "question": { "en": "What locale (language) was this change made in?", "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é configuración regional (idioma) se realizó este cambio?" }, "render": { "en": "User locale is {locale}", "de": "Die Benutzersprache ist {locale}", - "cs": "Uživatelské prostředí je {locale}" + "cs": "Uživatelské prostředí je {locale}", + "es": "Configuración regional del usuario es {locale}" } }, { @@ -109,12 +120,14 @@ "render": { "en": "Change with with {host}", "de": "Änderung mit {host}", - "cs": "Změnit pomocí {host}" + "cs": "Změnit pomocí {host}", + "es": "Cambio realizado con {host}" }, "question": { "en": "What host (website) was this change made with?", "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é anfitrión (sitio web) se realizó este cambio?" }, "freeform": { "key": "host" @@ -137,12 +150,14 @@ "question": { "en": "What version of MapComplete was used to make this change?", "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 realizar este cambio?" }, "render": { "en": "Made with {editor}", "de": "Erstellt mit {editor}", - "cs": "Vytvořeno pomocí {editor}" + "cs": "Vytvořeno pomocí {editor}", + "es": "Hecho con {editor}" }, "freeform": { "key": "editor" @@ -542,7 +557,7 @@ "question": { "en": "Themename contains {search}", "de": "Themenname enthält {search}", - "es": "El nombre contiene {search}", + "es": "El nombre del tema contiene {search}", "pl": "Nazwa tematu zawiera {search}", "cs": "Název obsahuje {search}" } @@ -600,7 +615,7 @@ "question": { "en": "Not made by contributor {search}", "de": "Nicht erstellt von Mitwirkendem {search}", - "es": "No realizado por el colaborador {search}", + "es": "No hecho por el colaborador {search}", "cs": "Nevytvořeno přispěvatelem {search}" } } @@ -620,7 +635,7 @@ "question": { "en": "Made before {search}", "de": "Erstellt vor {search}", - "es": "Realizado antes de {search}", + "es": "Hecho antes de {search}", "cs": "Vytvořeno před {search}" } } @@ -640,7 +655,7 @@ "question": { "en": "Made after {search}", "de": "Erstellt nach {search}", - "es": "Realizado después de {search}", + "es": "Hecho después de {search}", "cs": "Vytvořeno po {search}" } } @@ -659,7 +674,7 @@ "question": { "en": "User language (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}" } } @@ -679,7 +694,7 @@ "en": "Made with host {search}", "de": "Erstellt mit Host {search}", "cs": "Vytvořeno pomocí hostitele {search}", - "es": "Hecho con host {search}" + "es": "Hecho con el anfitrión {search}" } } ] @@ -693,7 +708,7 @@ "en": "Changeset added at least one image", "de": "Changeset hat mindestens ein Bild hinzugefügt", "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" } } ] @@ -706,7 +721,8 @@ "question": { "en": "Exclude GRB theme", "de": "GRB-Thema ausschließen", - "cs": "Vyloučit motiv GRB" + "cs": "Vyloučit motiv GRB", + "es": "Excluir el tema GRB" } } ] @@ -719,7 +735,7 @@ "question": { "en": "Exclude etymology theme", "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" } } @@ -737,7 +753,8 @@ "render": { "en": "More statistics can be found here", "de": "Weitere Statistiken findest du hier", - "cs": "Další statistiky najdete zde" + "cs": "Další statistiky najdete zde", + "es": "Puedes encontrar más estadísticas aquí" } }, { diff --git a/assets/themes/mapcomplete-changes/mapcomplete-changes.proto.json b/assets/themes/mapcomplete-changes/mapcomplete-changes.proto.json index 225de1127..954e6eb63 100644 --- a/assets/themes/mapcomplete-changes/mapcomplete-changes.proto.json +++ b/assets/themes/mapcomplete-changes/mapcomplete-changes.proto.json @@ -3,12 +3,14 @@ "title": { "en": "Changes made with MapComplete", "de": "Änderungen mit MapComplete", - "cs": "Změny provedené pomocí MapComplete" + "cs": "Změny provedené pomocí MapComplete", + "es": "Cambios realizados con MapComplete" }, "shortDescription": { "en": "Shows changes made by MapComplete", "de": "Zeigt die von MapComplete vorgenommenen Änderungen an", - "cs": "Zobrazuje změny provedené nástrojem MapComplete" + "cs": "Zobrazuje změny provedené nástrojem MapComplete", + "es": "Muestra los cambios realizados por MapComplete" }, "description": { "en": "This maps shows all the changes made with MapComplete", @@ -27,7 +29,8 @@ "id": "mapcomplete-changes", "name": { "en": "Changeset centers", - "de": "Changeset-Zentren" + "de": "Changeset-Zentren", + "es": "Centros de conjuntos de cambios" }, "minzoom": 0, "source": { @@ -39,7 +42,8 @@ "render": { "en": "Changeset for {theme}", "de": "Änderungssatz für {theme}", - "cs": "Sada změn pro {theme}" + "cs": "Sada změn pro {theme}", + "es": "Conjunto de cambios para {theme}" } }, "description": { @@ -54,7 +58,8 @@ "render": { "en": "Changeset {id}", "de": "Änderungssatz {id}", - "cs": "Sada změn {id}" + "cs": "Sada změn {id}", + "es": "Conjunto de cambios {id}" } }, { @@ -62,7 +67,8 @@ "question": { "en": "What contributor did make this change?", "de": "Wer hat zu dieser Änderung beigetragen?", - "cs": "Který přispěvatel provedl tuto změnu?" + "cs": "Který přispěvatel provedl tuto změnu?", + "es": "¿Qué colaborador realizó este cambio?" }, "freeform": { "key": "user" @@ -70,7 +76,8 @@ "render": { "en": "Change made by {user}", "de": "Änderung vorgenommen von {user}", - "cs": "Změna provedena uživatelem {user}" + "cs": "Změna provedena uživatelem {user}", + "es": "Cambio realizado por {user}" } }, { @@ -78,14 +85,16 @@ "question": { "en": "What theme was used to make this change?", "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 realizar este cambio?" }, "freeform": { "key": "theme" }, "render": { "en": "Change with theme {theme}", - "de": "Änderung mit Thema {theme}" + "de": "Änderung mit Thema {theme}", + "es": "Cambio con el tema {theme}" } }, { @@ -96,12 +105,14 @@ "question": { "en": "What locale (language) was this change made in?", "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é configuración regional (idioma) se realizó este cambio?" }, "render": { "en": "User locale is {locale}", "de": "Die Benutzersprache ist {locale}", - "cs": "Uživatelské prostředí je {locale}" + "cs": "Uživatelské prostředí je {locale}", + "es": "Configuración regional del usuario es {locale}" } }, { @@ -109,12 +120,14 @@ "render": { "en": "Change with with {host}", "de": "Änderung mit {host}", - "cs": "Změnit pomocí {host}" + "cs": "Změnit pomocí {host}", + "es": "Cambio realizado con {host}" }, "question": { "en": "What host (website) was this change made with?", "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é anfitrión (sitio web) se realizó este cambio?" }, "freeform": { "key": "host" @@ -137,12 +150,14 @@ "question": { "en": "What version of MapComplete was used to make this change?", "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 realizar este cambio?" }, "render": { "en": "Made with {editor}", "de": "Erstellt mit {editor}", - "cs": "Vytvořeno pomocí {editor}" + "cs": "Vytvořeno pomocí {editor}", + "es": "Hecho con {editor}" }, "freeform": { "key": "editor" @@ -180,7 +195,7 @@ "question": { "en": "Themename contains {search}", "de": "Themenname enthält {search}", - "es": "El nombre contiene {search}", + "es": "El nombre del tema contiene {search}", "pl": "Nazwa tematu zawiera {search}", "cs": "Název obsahuje {search}" } @@ -238,7 +253,7 @@ "question": { "en": "Not made by contributor {search}", "de": "Nicht erstellt von Mitwirkendem {search}", - "es": "No realizado por el colaborador {search}", + "es": "No hecho por el colaborador {search}", "cs": "Nevytvořeno přispěvatelem {search}" } } @@ -258,7 +273,7 @@ "question": { "en": "Made before {search}", "de": "Erstellt vor {search}", - "es": "Realizado antes de {search}", + "es": "Hecho antes de {search}", "cs": "Vytvořeno před {search}" } } @@ -278,7 +293,7 @@ "question": { "en": "Made after {search}", "de": "Erstellt nach {search}", - "es": "Realizado después de {search}", + "es": "Hecho después de {search}", "cs": "Vytvořeno po {search}" } } @@ -297,7 +312,7 @@ "question": { "en": "User language (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}" } } @@ -317,7 +332,7 @@ "en": "Made with host {search}", "de": "Erstellt mit Host {search}", "cs": "Vytvořeno pomocí hostitele {search}", - "es": "Hecho con host {search}" + "es": "Hecho con el anfitrión {search}" } } ] @@ -331,7 +346,7 @@ "en": "Changeset added at least one image", "de": "Changeset hat mindestens ein Bild hinzugefügt", "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" } } ] @@ -344,7 +359,8 @@ "question": { "en": "Exclude GRB theme", "de": "GRB-Thema ausschließen", - "cs": "Vyloučit motiv GRB" + "cs": "Vyloučit motiv GRB", + "es": "Excluir el tema GRB" } } ] @@ -357,7 +373,7 @@ "question": { "en": "Exclude etymology theme", "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" } } @@ -375,7 +391,8 @@ "render": { "en": "More statistics can be found here", "de": "Weitere Statistiken findest du hier", - "cs": "Další statistiky najdete zde" + "cs": "Další statistiky najdete zde", + "es": "Puedes encontrar más estadísticas aquí" } }, { diff --git a/assets/themes/maproulette/maproulette.json b/assets/themes/maproulette/maproulette.json index 287d48753..03ba82f4c 100644 --- a/assets/themes/maproulette/maproulette.json +++ b/assets/themes/maproulette/maproulette.json @@ -11,7 +11,8 @@ "es": "Tareas de MapRoulette", "cs": "Úkoly MapRoulette", "zh_Hant": "MapRoulette 任務", - "pl": "Zadania MapRoulette" + "pl": "Zadania MapRoulette", + "hu": "MapRoulette-feladatok" }, "description": { "en": "Theme showing MapRoulette tasks, allowing you to search, filter and fix them.", @@ -19,7 +20,7 @@ "fr": "Thème MapRoulette permettant d’afficher, rechercher, filtrer et résoudre les tâches.", "da": "Tema, der viser MapRoulette-opgaver, så du kan søge, filtrere og rette dem.", "nl": "Thema met MapRoulette taken, waar je ze kunt zoeken, filteren en ze oplossen.", - "es": "Tema que muestra las tareas de MapRoulette, permitiendo buscarlas, filtrarlas y arreglarlas.", + "es": "Tema que muestra las tareas de MapRoulette, permitiéndote buscarlas, filtrarlas y solucionarlas.", "cs": "Téma zobrazující úkoly MapRoulette, které umožňuje vyhledávat, filtrovat a opravovat je.", "ca": "Tema que mostra les tasques de MapRoulette, que us permet cercar-les, filtrar-les i solucionar-les.", "pl": "Temat pokazujący zadania MapRoulette, umożliwiający ich wyszukiwanie, filtrowanie i naprawianie." diff --git a/assets/themes/maps/maps.json b/assets/themes/maps/maps.json index 6743b2244..d09b49cfc 100644 --- a/assets/themes/maps/maps.json +++ b/assets/themes/maps/maps.json @@ -14,7 +14,9 @@ "ca": "Un mapa de mapes", "es": "Un mapa de mapas", "cs": "Mapa map", - "pl": "Mapa map" + "pl": "Mapa map", + "hu": "Térképek térképe", + "uk": "Мапа мап" }, "description": { "en": "On this map you can find all maps OpenStreetMap knows - typically a big map on an information board showing the area, city or region, e.g. a tourist map on the back of a billboard, a map of a nature reserve, a map of cycling networks in the region, ...)

If a map is missing, you can easily map this map on OpenStreetMap.", @@ -24,7 +26,7 @@ "zh_Hant": "在這份地圖你可以找到所在在開放街圖上已知的地圖 - 特別是顯示地區、城市、區域的資訊版面上的大型地圖,例如佈告欄背面的旅遊地圖,自然保護區的地圖,區域的單車網路地圖,...)

如果有缺少的地圖,你可以輕易在開放街圖上新增這地圖。", "de": "Auf dieser Karte findest du alle Karten, die OpenStreetMap kennt - typischerweise eine große Karte auf einer Informationstafel, die das Gebiet, die Stadt oder die Region zeigt, z.B. eine touristische Karte auf der Rückseite einer Plakatwand, eine Karte eines Naturschutzgebietes, eine Karte der Radwegenetze in der Region, ...)

Wenn eine Karte fehlt, können Sie diese leicht auf OpenStreetMap kartieren.", "it": "In questa carta puoi trovare tutte le mappe conosciute da OpenStreetMap (tipicamente una grossa mappa su di un pannello informativo che mostra l’area, la città o la regione, ad es. una mappa turistica dietro a un manifesto, la mappa di una riserva naturale, la mappa della rete ciclistica regionale, etc.)

Se manca una mappa, puoi aggiungerla facilmente a questa su OpenStreetMap.", - "es": "En este mapa puedes encontrar todos los mapas que OpenStreetMap conoce - típicamente un mapa grande con un tablero que muestra el área, la ciudad o la región, ej. un mapa turista detrás de una vaya publicitaria, un mapa de una reserva natural, un mapa de redes ciclistas en la región, ...)

Si falta un mapa, puedes mapear este mapa fácilmente en OpenStreetMap.", + "es": "En este mapa puedes encontrar todos los mapas que conoce OpenStreetMap; normalmente un mapa grande en un tablero de información que muestra el área, la ciudad o la región, por ejemplo, un mapa turístico en la parte trasera de una cartelera, un mapa de una reserva natural, un mapa de redes ciclistas en la región, ...

Si falta un mapa, puedes mapear fácilmente este mapa en OpenStreetMap.", "da": "På dette kort kan du finde alle kort, OpenStreetMap kender - typisk et stort kort på en informationstavle, der viser området, byen eller regionen, f.eks. et turistkort på bagsiden af en tavle, et kort over et naturreservat, et kort over cykelnetværk i regionen, ...)

Hvis der mangler et kort, kan du nemt kortlægge dette kort på OpenStreetMap.", "cs": "Na této mapě najdete všechny mapy, které OpenStreetMap zná - typicky je zde velká mapa na informační tabuli zobrazující oblast, město nebo region, (např. turistická mapa na zadní straně billboardu, mapa přírodní rezervace, mapa cyklistických sítí v regionu, ...).

Pokud mapa chybí, můžete ji snadno zmapovat na OpenStreetMap.", "ca": "En aquest mapa podeu trobar tots els mapes que OpenStreetMap coneix, normalment un mapa gran en un tauler informatiu que mostra la zona, la ciutat o la regió, p. un mapa turístic al dors d'una tanca publicitària, un mapa d'una reserva natural, un mapa de les xarxes ciclistes de la regió, ...)

Si falta un mapa, podeu mapejar aquest mapa fàcilment a OpenStreetMap.", @@ -42,7 +44,9 @@ "da": "Dette tema viser alle (turisme) kort, som OpenStreetMap kender til", "cs": "Toto téma zobrazuje všechny (turistické) mapy, které zná OpenStreetMap", "ca": "Aquest tema mostra tots els mapes (turístics) que OpenStreetMap coneix", - "pl": "Ten motyw pokazuje wszystkie mapy (turystyczne), które zna OpenStreetMap" + "pl": "Ten motyw pokazuje wszystkie mapy (turystyczne), które zna OpenStreetMap", + "ru": "Эта тема показывает все (туристические) карты, известные OpenStreetMap", + "uk": "Ця тема показує всі (туристичні) мапи, які відомі OpenStreetMap" }, "icon": "./assets/themes/maps/logo.svg", "defaultBackgroundId": "protomaps.white", diff --git a/assets/themes/maxspeed/maxspeed.json b/assets/themes/maxspeed/maxspeed.json index db6f21a4a..9428bc24c 100644 --- a/assets/themes/maxspeed/maxspeed.json +++ b/assets/themes/maxspeed/maxspeed.json @@ -2,7 +2,7 @@ "id": "maxspeed", "title": { "en": "Maxspeed", - "es": "Velocidad", + "es": "Velocidad máxima", "ca": "Velocitat", "de": "Höchstgeschwindigkeit", "fr": "Vitesse maximale", @@ -13,7 +13,9 @@ "ru": "Ограничения скорости", "zh_Hant": "最高速限", "eu": "Abiadiura", - "pl": "Prędkość maksymalna" + "pl": "Prędkość maksymalna", + "hu": "Sebességkorlátozások", + "uk": "Максимальна швидкість" }, "description": { "en": "This map shows the legally allowed maximum speed on every road. If a maxspeed is missing or wrong, you can correct it here.", @@ -22,7 +24,7 @@ "da": "Dette kort viser den lovligt tilladte maksimale hastighed på hver vej. Hvis en maxspeed mangler eller er forkert, kan du rette den her.", "nl": "Deze kaart toont de maximum toegestane snelheid voor elke weg. Als er een maximumsnelheid mist of niet klopt, kan je hem hier aanpassen.", "cs": "Tato mapa zobrazuje zákonem povolenou maximální rychlost na každé silnici. Pokud maximální rychlost chybí nebo je nesprávná, můžete ji zde opravit.", - "es": "Este mapa muestra la velocidad máxima legalmente permitida en cada carretera. Si falta una velocidad máxima o es incorrecta, puedes corregirla aquí.", + "es": "Este mapa muestra la velocidad máxima legalmente permitida en cada carretera. Si falta o está mal una velocidad máxima, puedes corregirla aquí.", "ca": "Aquest mapa mostra la velocitat màxima permesa legalment a cada carretera. Si falta una velocitat màxima o és incorrecta, podeu corregir-la aquí.", "zh_Hant": "這份地圖顯示每一條道路的法定允許的最高速限,如果有缺漏的最高速限或是標示錯誤,你可以在這邊更正資訊。", "pl": "Ta mapa pokazuje prawnie dozwoloną maksymalną prędkość na każdej drodze. Jeśli brakuje maksymalnej prędkości lub jest ona nieprawidłowa, możesz ją tutaj poprawić." @@ -34,10 +36,12 @@ "nl": "Deze kaart toont de maximumsnelheid voor elke straat.", "da": "Dette kort viser den lovligt tilladte maksimale hastighed på hver vej.", "cs": "Tato mapa zobrazuje zákonem povolenou maximální rychlost na každé silnici.", - "es": "Este mapa muestra la velocidad máxima permitida legalmente en cada carretera.", + "es": "Este mapa muestra la velocidad máxima legalmente permitida en cada carretera.", "ca": "Aquest mapa mostra la velocitat màxima permesa legalment a cada carretera.", "zh_Hant": "這份地圖顯示每一條道路的法定允許的最高速限。", - "pl": "Ta mapa pokazuje prawnie dozwoloną maksymalną prędkość na każdej drodze." + "pl": "Ta mapa pokazuje prawnie dozwoloną maksymalną prędkość na każdej drodze.", + "ru": "На этой карте показана разрешенная законом максимальная скорость на каждой дороге.", + "uk": "Ця мапа показує дозволену законом максимальну швидкість на кожній дорозі." }, "icon": "./assets/themes/maxspeed/maxspeed_logo.svg", "layers": [ diff --git a/assets/themes/memorials/memorials.json b/assets/themes/memorials/memorials.json index bd9cbdd8e..baa7054b0 100644 --- a/assets/themes/memorials/memorials.json +++ b/assets/themes/memorials/memorials.json @@ -7,16 +7,20 @@ "nl": "Gedenktekens en graven", "da": "Mindesmærker", "sl": "Spomeniki", - "es": "Memoriales", - "cs": "Památníky" + "es": "Monumentos conmemorativos", + "cs": "Památníky", + "ru": "Памятники", + "hu": "Emlékművek", + "uk": "Памʼятники" }, "description": { "en": "Memorials are physical objects permantently placed in the public space to remember a person or event. They can be a wide range of objects, such as statues, plaques, paintings, military objects (such as tanks), ...", "de": "Denkmäler sind physische Objekte, die dauerhaft im öffentlichen Raum aufgestellt werden, um an eine Person oder ein Ereignis zu erinnern. Dabei kann es sich um eine Vielzahl von Objekten handeln, z. B. Statuen, Tafeln, Gemälde, militärische Objekte (wie Panzer), ...", "fr": "Un mémorial est un objet physiquement installé sur l'espace public en souvenir d'une personne ou d'un évènement. Cela peut être toute sorte d'objets, comme une statue, une plaque, une peinture, un objet militaire (comme un tank), ...", "nl": "Een gedenkteken is een fysiek object dat permanent in de publieke ruimte aanwezig is om een persoon of gebeurtenis te herdenken. Dit kan in diverse vormen, zoals standbeelden, naamborden, muurschilderingen, militaire objecten,...", - "es": "Los monumentos conmemorativos son objetos físicos colocados de forma permanente en el espacio público para recordar a una persona o un acontecimiento. Pueden ser objetos muy diversos, como estatuas, placas, pinturas, objetos militares (como tanques),...", - "cs": "Památníky jsou fyzické předměty trvale umístěné na veřejném prostranství, které připomínají určitou osobu nebo událost. Může se jednat o nejrůznější předměty, jako jsou sochy, pamětní desky, obrazy, vojenské objekty (např. tanky), ..." + "es": "Los monumentos conmemorativos son objetos físicos colocados permanentemente en el espacio público para recordar a una persona o un evento. Pueden ser una amplia gama de objetos, como estatuas, placas, pinturas, objetos militares (como tanques),...", + "cs": "Památníky jsou fyzické předměty trvale umístěné na veřejném prostranství, které připomínají určitou osobu nebo událost. Může se jednat o nejrůznější předměty, jako jsou sochy, pamětní desky, obrazy, vojenské objekty (např. tanky), ...", + "uk": "Меморіали — це фізичні обʼєкти, постійно розміщені в публічному просторі на згадку про особу чи подію. Це можуть бути найрізноманітніші обʼєкти, такі як статуї, меморіальні дошки, картини, військові обʼєкти (наприклад, танки), …" }, "icon": "./assets/layers/memorial/memorial.svg", "layers": [ diff --git a/assets/themes/nature/nature.json b/assets/themes/nature/nature.json index 785c1e266..c6e5d94c4 100644 --- a/assets/themes/nature/nature.json +++ b/assets/themes/nature/nature.json @@ -11,33 +11,39 @@ "cs": "Do přírody", "es": "En la naturaleza", "zh_Hant": "投入自然懷抱", - "pl": "W naturze" + "pl": "W naturze", + "ru": "На природе", + "hu": "Ki a természetbe", + "uk": "На природі" }, "description": { "en": "On this map, one can find interesting information for tourists and nature lovers.", "nl": "Op deze kaart vind je informatie voor natuurliefhebbers, zoals info over het natuurgebied waar je inzit, vogelkijkhutten, informatieborden, ...", "de": "Eine Karte mit interessanten Informationen für Touristen und Naturliebhaber.", - "es": "En este mapa, uno puede encontrar información interesante para turistas y amantes de la naturaleza.", + "es": "En este mapa, se puede encontrar información interesante para turistas y amantes de la naturaleza.", "fr": "Retrouvez sur cette carte des informations pour les touristes et les amoureux de la nature.", "da": "På dette kort kan man finde interessant information for turister og naturelskere, som f.eks ", "cs": "Na této mapě najdete zajímavé informace pro turisty a milovníky přírody.", "ca": "En aquest mapa es pot trobar informació interessant per a turistes i amants de la natura.", "zh_Hant": "在這份地圖,你可以找到觀光客與自然愛好者感興趣的資訊...", "pl": "Na tej mapie można znaleźć ciekawe informacje dla turystów i miłośników przyrody.", - "it": "Su questa mappa si possono trovare informazioni interessanti per turisti e amanti della natura." + "it": "Su questa mappa si possono trovare informazioni interessanti per turisti e amanti della natura.", + "uk": "На цій мапі можна знайти цікаву інформацію для туристів та любителів природи." }, "shortDescription": { "en": "A map for nature lovers, with interesting POI's", "nl": "Deze kaart bevat informatie voor natuurliefhebbers", "de": "Eine Karte mit interessanten Orten für Naturliebhaber", - "es": "Un mapa para amantes de la naturaleza, con PDIs interesantes", + "es": "Un mapa para amantes de la naturaleza, con PDI interesantes", "fr": "Une carte pour les amoureux de la nature", "da": "Et kort for naturelskere med interessante POI'er", "cs": "Mapa pro milovníky přírody se zajímavými body zájmu", "ca": "Un mapa per als amants de la natura, amb PDI interessants", "zh_Hant": "為了自然愛好者,以及有趣的興趣點的地圖", "pl": "Mapa dla miłośników przyrody z ciekawymi punktami POI", - "it": "Una mappa per amanti della natura con interessanti POI" + "it": "Una mappa per amanti della natura con interessanti POI", + "ru": "Карта для любителей природы, с интересными POI", + "uk": "Мапа для любителів природи, з Точками інтересу" }, "icon": "./assets/themes/nature/logo.svg", "startZoom": 12, diff --git a/assets/themes/notes/notes.json b/assets/themes/notes/notes.json index c27ee0195..948c8433f 100644 --- a/assets/themes/notes/notes.json +++ b/assets/themes/notes/notes.json @@ -12,20 +12,23 @@ "da": "Noter på OpenStreetMap", "cs": "Poznámky k OpenStreetMap", "zh_Hant": "開放街圖上的註解", - "pl": "Notatki na OpenStreetMap" + "pl": "Notatki na OpenStreetMap", + "ru": "Заметки в OpenStreetMap", + "uk": "Нотатки OpenStreetMap" }, "description": { "en": "A note is a pin on the map with some text to indicate something wrong.

Make sure to checkout the filter view to search for users and text.", "hu": "A jegyzet egy gombostű a térképen egy szöveggel, amely azt jelzi, hogy valami nem stimmel.

Felhasználók vagy szövegek kereséséhez nézd meg a szűrő nézetet.", "nl": "Een kaartnota bevat tekst op een specifieke locatie om aan te duiden dat er iets mis is of ontbreekt.

Bekijk ook het filtermenu om de notas te filteren op tekst, gebruiker, datum, ...", "de": "Eine Notiz enthält eine Fehlerbeschreibung und ist als Markierung auf der Karte sichtbar.

In der Ebenenauswahl kann nach Ersteller, Bearbeiter und Inhalt gesucht werden.", - "es": "Una nota es un pin en el mapa con algún texto para indicar algo erróneo.

Asegúrate de comprobar la vista de filtros para buscar usuarios y texto.", + "es": "Una nota es un pin en el mapa con algo de texto para indicar algo incorrecto.

Asegúrate de revisar la vista de filtro para buscar usuarios y texto.", "fr": "Une note est une épingle sur la carte avec du text pour indiquer une erreur.

Assurez-vous d’utiliser le filtre pour chercher des utilisateurs and du texte.", "da": "En note er en nål på kortet med noget tekst, der indikerer, at noget er forkert.

Sørg for at tjekke filtervisningen for at søge efter brugere og tekst .", "cs": "Poznámka je špendlík na mapě s textem, jež označuje, že něco není v pořádku.

Nezapomeňte si prohlédnout zobrazení filtru pro vyhledávání uživatelů a textu.", "ca": "Una nota és un marcador al mapa amb un text per indicar alguna cosa incorrecta.

Assegureu-vos de revisar la visualització de filtres per cercar usuaris i text.", "zh_Hant": "註解會散佈在地圖上並且有一些文字說明,來顯示那邊有錯誤。

請確認用過濾檢視來搜尋使用者或是文字。", - "pl": "Uwaga to pinezka na mapie z tekstem wskazującym, że coś jest nie tak.

Pamiętaj o skorzystaniu z widoku filtra, aby wyszukać użytkowników i tekst ." + "pl": "Uwaga to pinezka na mapie z tekstem wskazującym, że coś jest nie tak.

Pamiętaj o skorzystaniu z widoku filtra, aby wyszukać użytkowników i tekst .", + "uk": "Нотатка — це мітка на мапі з певним текстом, яка вказує на те, що щось не так.

Не забудьте переглянути фільтри для пошуку користувачів і тексту." }, "icon": "./assets/themes/notes/logo.svg", "layers": [ diff --git a/assets/themes/observation_towers/observation_towers.json b/assets/themes/observation_towers/observation_towers.json index 49f0a7fa1..30c2726ee 100644 --- a/assets/themes/observation_towers/observation_towers.json +++ b/assets/themes/observation_towers/observation_towers.json @@ -14,7 +14,8 @@ "nb_NO": "Observasjonstårn", "da": "Udsigtstårne", "cs": "Rozhledny", - "pl": "Wieże obserwacyjne" + "pl": "Wieże obserwacyjne", + "uk": "Спостережні вежі" }, "description": { "nl": "Publieke uitkijktorens om van het panorama te genieten", @@ -23,7 +24,7 @@ "it": "Torri pubblicamente accessibili per godere della vista", "zh_Hant": "開放可及能觀景的高塔", "hu": "Nyilvános tornyok, hogy gyönyörködhessünk a kilátásban", - "es": "Torres accesibles públicamente para disfrutar de la vista", + "es": "Torres de acceso público para disfrutar de la vista", "fr": "Tours libres d’accès pour admirer la vue", "nb_NO": "Offentlig tilgjengelige tårn for å nyte utsikten", "da": "Offentligt tilgængelige tårne for at nyde udsigten", @@ -38,13 +39,15 @@ "it": "Torri pubblicamente accessibili per godere della vista", "zh_Hant": "開發可及能觀景的高塔", "hu": "Nyilvános tornyok, hogy gyönyörködhessünk a kilátásban", - "es": "Torres accesibles públicamente para disfrutar de la vista", + "es": "Torres de acceso público para disfrutar de la vista", "fr": "Tours libres d’accès pour admirer la vue", "nb_NO": "Offentlig tilgjengelige tårn for å nyte utsikten", "da": "Offentligt tilgængelige tårne for at nyde udsigten", "cs": "Veřejně přístupné věže s výhledem", "ca": "Torres accesibles públicament per a disfrutar de la vista", - "pl": "Publicznie dostępne wieże do podziwiania widoku" + "pl": "Publicznie dostępne wieże do podziwiania widoku", + "ru": "Общедоступные башни, с которых можно любоваться видами", + "uk": "Загальнодоступні вежі, з яких можна насолоджуватися краєвидом" }, "icon": "./assets/layers/observation_tower/Tower_observation.svg", "layers": [ diff --git a/assets/themes/onwheels/onwheels.json b/assets/themes/onwheels/onwheels.json index 6cdf2f514..26523f2ed 100644 --- a/assets/themes/onwheels/onwheels.json +++ b/assets/themes/onwheels/onwheels.json @@ -11,7 +11,9 @@ "es": "Sobre ruedas", "cs": "Na kolečkách", "eu": "Gurpil gainean", - "pl": "Na kółkach" + "pl": "Na kółkach", + "ru": "Коляски", + "uk": "На колесах" }, "description": { "en": "On this map, publicly weelchair accessible places are shown and can be easily added", @@ -20,10 +22,11 @@ "nl": "Op deze kaart kan je informatie rond rolstoeltoegankelijkheid zien, zoals toegangsdeuren met hun breedte en drempelhoogte, toiletten met toegankelijkheidsinformatie, recepties maar ook winkels, cafés en restaurants.", "da": "På dette kort vises steder, der er offentligt tilgængelige for kørestolsbrugere, og de kan nemt tilføjes", "cs": "Na této mapě jsou zobrazena veřejně přístupná místa pro vozíčkáře, a lze je také snadno přidat", - "es": "En este mapa se muestran los lugares accesibles al público en silla de ruedas, que pueden añadirse fácilmente", + "es": "En este mapa, se muestran y se pueden agregar fácilmente lugares accesibles para sillas de ruedas", "ca": "En aquest mapa, es mostren llocs públics accessibles per a cadira de rodes i es poden afegir fàcilment", "pl": "Na tej mapie pokazane są miejsca publicznie dostępne dla wózków inwalidzkich, które można łatwo dodać", - "it": "Su questa mappa sono indicati i luoghi pubblici accessibili con sedia a rotelle e possono essere facilmente aggiunti" + "it": "Su questa mappa sono indicati i luoghi pubblici accessibili con sedia a rotelle e possono essere facilmente aggiunti", + "uk": "На цій мапі показані громадські місця, доступні для осіб в інвалідних візків, їх також можна легко додати" }, "icon": "./assets/themes/onwheels/crest.svg", "startZoom": 17, @@ -104,7 +107,7 @@ "fr": "Toute/aucune information sur la largeur", "da": "Eventuelle/ingen bredde info", "cs": "Jakékoliv/žádné informace o šířce", - "es": "Cualquiera/Sin información de anchura", + "es": "Información de ancho/sin información de ancho", "ca": "Qualsevol/Sense informació d'amplada", "pl": "Dowolna/brak informacji o szerokości" } @@ -120,7 +123,7 @@ "cs": "Bez informací o šířce", "nb_NO": "Uten breddeinfo", "ca": "Sense informació de l'amplada", - "es": "Sin información de anchura", + "es": "Sin información de ancho", "pl": "Bez informacji o szerokości" } } @@ -215,7 +218,7 @@ "fr": "Ressaut à niveau (~ 0 cm)", "da": "Skyl kantsten (~0 cm)", "cs": "Zapuštěný obrubník (~0 cm)", - "es": "Bordillo enrasado (~0 cm)", + "es": "Bordillo a ras (~0cm)", "ca": "Voral ras (~0 cm)", "pl": "Krawężnik zlicowany (~0cm)" } @@ -278,7 +281,7 @@ "nl": "Parkeerplaatsen voor personen met een beperking", "fr": "Places de stationnement pour personnes handicapées", "cs": "Parkovací místa pro osoby se zdravotním postižením", - "es": "Plazas de aparcamiento para discapacitados", + "es": "Plazas de estacionamiento para discapacitados", "ca": "Places d'aparcament per a minusvàlids", "pl": "Miejsca parkingowe dla niepełnosprawnych", "da": "Handikapparkeringspladser", @@ -487,7 +490,8 @@ "eu": "Estatistika", "pl": "Statystyki", "zh_Hant": "統計數據", - "it": "Statistiche" + "it": "Statistiche", + "hu": "Statisztika" } }, "tagRenderings+": [ @@ -553,7 +557,7 @@ "nb_NO": "Legg til alle foreslåtte", "nl": "Voeg alle gesuggereerde tags toe", "cs": "Přidat všechny navrhované značky", - "es": "Añadir todas las etiquetas sugeridas", + "es": "Agregar todas las etiquetas sugeridas", "ca": "Afegiu totes les etiquetes suggerides", "pl": "Dodaj wszystkie sugerowane znaczniki" }, diff --git a/assets/themes/openlovemap/openlovemap.json b/assets/themes/openlovemap/openlovemap.json index f7707c46c..ba5148545 100644 --- a/assets/themes/openlovemap/openlovemap.json +++ b/assets/themes/openlovemap/openlovemap.json @@ -4,12 +4,13 @@ "en": "Open Love Map", "de": "Open Love Map", "es": "Open Love Map", - "cs": "Open Love Map" + "cs": "Open Love Map", + "hu": "Open Love Map - szerelemtérkép" }, "description": { "en": "

Love in the palm of your hand

Open Love Map lists various adult entries, such as brothels, erotic stores and stripclubs.", "de": "

Liebe in der Hand

Open Love Map listet verschiedene Einträge für Erwachsene, wie Bordelle, Erotikshops und Stripclubs.", - "es": "

Amor en la palma de tu mano

Open Love Map lista varias entradas para adultos, como burdeles, tiendas eróticas y clubs de striptease.", + "es": "

Amor en la palma de tu mano

Open Love Map lista varias entradas para adultos, como burdeles, tiendas eróticas y clubes de striptease.", "cs": "

Láska na dlani

Open Love Map obsahuje různé položky pro dospělé, například nevěstince, erotické obchody a striptýzové kluby." }, "icon": "./assets/layers/stripclub/stripclub.svg", @@ -57,7 +58,7 @@ "question": { "en": "Does this shop offer fetish gear?", "de": "Bietet dieser Laden Fetischkleidung an?", - "es": "¿Ofrece esta tienda artículos fetichistas?", + "es": "¿Esta tienda ofrece artículos fetiche?", "cs": "Nabízí tento obchod vybavení pro fetišisty?" }, "mappings": [ @@ -67,7 +68,7 @@ "then": { "en": "This shop offers soft BDSM-gear, such as fluffy handcuffs, a 'fifty-shade-of-grey'-starterset, ...", "de": "Dieser Laden bietet weiches BDSM-Zubehör an, wie zum Beispiel flauschige Handschellen, ein \"Fifty Shades of Grey\"-Starterset, ...", - "es": "Esta tienda ofrece artículos BDSM suaves, como esposas mullidas, un conjunto de ...", + "es": "Esta tienda ofrece artículos BDSM suaves, como esposas de peluche, un kit de iniciación 'cincuenta sombras de Grey',...", "cs": "Tento obchod nabízí měkké BDSM pomůcky, jako jsou chlupatá pouta, sada „padesát odstínů šedi“, ..." } }, @@ -77,7 +78,7 @@ "then": { "en": "This shop offers specialized BDSM-gear, such as spreader bars, supplies for needle play, medical bondage supplies, impact tools, shackles, metal colors, cuffs, nipple clamps, shibari accessories, ...", "de": "Dieser Laden bietet spezialisiertes BDSM-Zubehör an, wie zum Beispiel Spreizstangen, Utensilien für Nadelfolter, medizinische Bondage-Ausrüstung, Schlagwerkzeuge, Fesseln, Metallhalsbänder, Handschellen, Nippelklemmen, Shibari-Zubehör, ...", - "es": "Esta tienda ofrece artículos especializados en BDSM, como barras separadoras, artículos para juegos con agujas, artículos de bondage médico, herramientas de impacto, grilletes, colores metálicos, esposas, pinzas para pezones, accesorios de shibari, ...", + "es": "Esta tienda ofrece artículos BDSM especializados, como barras separadoras, artículos para juegos con agujas, artículos de bondage médico, herramientas de impacto, grilletes, colores metálicos, puños, pinzas para pezones, accesorios shibari,...", "cs": "Tento obchod nabízí specializované BDSM pomůcky, jako jsou roztahovací tyče, potřeby pro hru na jehlách, potřeby pro lékařskou bondáž, nárazové nástroje, pouta, kovové barvy, pouta, svorky na bradavky, shibari doplňky, ..." } }, @@ -87,7 +88,7 @@ "then": { "en": "This shop offers pet play accessories, such as puppy masks, animal masks, pony play, tails, hoof shoes, ...", "de": "Dieser Laden bietet Petplay-Zubehör an, wie zum Beispiel Hundemasken, Tiermasken, Ponyplay-Ausrüstung, Schwänze, Hufschuhe, ...", - "es": "Esta tienda ofrece accesorios para mascotas, como máscaras de cachorros, máscaras de animales, juegos de ponis, colas, herraduras...", + "es": "Esta tienda ofrece accesorios para juegos con mascotas, como máscaras de cachorro, máscaras de animales, juegos de pony, colas, zapatos de casco,...", "cs": "Tento obchod nabízí doplňky na hraní si na zvířata, jako jsou masky štěňat, masky zvířat, poníci na hraní, ocasy, boty na kopyta, ..." } }, @@ -97,7 +98,7 @@ "then": { "en": "This shop offers leather gear, including pants and shirts usable in daily life up till leather harnesses", "de": "Dieser Laden bietet Lederkleidung an, darunter Hosen und Hemden für den Alltag bis hin zu Lederharnissen", - "es": "Esta tienda ofrece ropa de cuero, desde pantalones y camisas de uso diario hasta arneses de cuero", + "es": "Esta tienda ofrece artículos de cuero, incluyendo pantalones y camisas utilizables en la vida diaria hasta arneses de cuero", "cs": "Tento obchod nabízí kožené vybavení, včetně kalhot a košil použitelných v každodenním životě až po kožené postroje" } }, @@ -107,7 +108,7 @@ "then": { "en": "This shop offers uniforms for roleplay, such nurse uniforms, military uniforms, police, school girl, french maid, ...", "de": "Dieser Laden bietet Uniformen für Rollenspiele an, wie Krankenschwester-Uniformen, Militäruniformen, Polizei-, Schulmädchen- und Dienstmädchen-Outfits, ...", - "es": "Esta tienda ofrece uniformes para juegos de rol, tales como uniformes de enfermera, uniformes militares, policía, colegiala, criada francesa, ...", + "es": "Esta tienda ofrece uniformes para juegos de rol, como uniformes de enfermera, uniformes militares, policía, colegiala, criada francesa,...", "cs": "Tento obchod nabízí uniformy pro roleplay, jako jsou uniformy zdravotní sestry, vojenské uniformy, policie, školačky, francouzské pokojské, ..." } } @@ -182,7 +183,7 @@ "title": { "en": "a condom vending machine", "de": "ein Kondomautomat", - "es": "una máquina de venta de condones", + "es": "una máquina expendedora de condones", "da": "en kondomautomat", "cs": "automat na kondomy" }, @@ -327,7 +328,7 @@ "question": { "en": "Does {title()} have a private video booth?", "de": "Hat {title()} eine private Videokabine?", - "es": "¿Este {title()} tiene una cabina de video privada?", + "es": "¿Tiene {title()} una cabina de video privada?", "cs": "Má {title()} soukromou video kabinu?" }, "questionHint": { diff --git a/assets/themes/openwindpowermap/openwindpowermap.json b/assets/themes/openwindpowermap/openwindpowermap.json index 86a689264..a78412f4e 100644 --- a/assets/themes/openwindpowermap/openwindpowermap.json +++ b/assets/themes/openwindpowermap/openwindpowermap.json @@ -8,15 +8,16 @@ "ru": "Открытая карта ветроэнергетики", "zh_Hant": "風力發電機", "id": "OpenWindPowerMap", - "hu": "OpenWindPowerMap", + "hu": "Szélerőművek", "nl": "Windmolens", "ca": "Generadors d'energia eòlica", "nb_NO": "ÅpentVindkraftKart", "pa_PK": "اوپن‌ونڈ‌پاور‌میپ", - "es": "Generadores de energía eólica", + "es": "Generadores eólicos", "cs": "Větrné elektrárny", "pl": "Generatory wiatrowe", - "da": "Vindmøller" + "da": "Vindmøller", + "uk": "Вітрогенератори" }, "description": { "en": "A map for showing and editing wind turbines.", @@ -25,13 +26,14 @@ "it": "Una cartina per la visione e la modifica delle turbine eoliche.", "zh_Hant": "顯示與編輯風機的地圖。", "hu": "Szélerőművek megjelenítésére és szerkesztésére szolgáló térkép.", - "es": "Mapa para mostrar y editar turbinas de viento.", + "es": "Un mapa para mostrar y editar aerogeneradores.", "nl": "Een kaart om windturbines te tonen en te bewerken.", "da": "Et kort til visning og redigering af vindmøller.", "nb_NO": "Et kart for visning og redigering av vindmøller.", "cs": "Mapa pro zobrazení a úpravy větrných turbín.", "ca": "Un mapa per a mostrar i editar turbines eòliques.", - "pl": "Mapa do pokazywania i edytowania turbin wiatrowych." + "pl": "Mapa do pokazywania i edytowania turbin wiatrowych.", + "uk": "Мапа для показу та редагування вітрових турбін." }, "icon": "./assets/themes/openwindpowermap/logo.svg", "startZoom": 8, diff --git a/assets/themes/osm_community_index/osm_community_index.json b/assets/themes/osm_community_index/osm_community_index.json index 80cb4c890..f35a981d2 100644 --- a/assets/themes/osm_community_index/osm_community_index.json +++ b/assets/themes/osm_community_index/osm_community_index.json @@ -5,10 +5,12 @@ "de": "OSM-Community-Index", "nl": "OSM Community Overzicht", "fr": "Index communautaire OSM", - "es": "Índice de comunidades de OSM", + "es": "Índice de la comunidad OSM", "ca": "Índex de comunitats d'OSM", "cs": "Komunitní rejstřík OSM", - "pl": "Indeks społeczności OSM" + "pl": "Indeks społeczności OSM", + "hu": "OSM-közösségek jegyzéke", + "uk": "Індекс спільноти OSM" }, "description": { "en": "A list of resources for users of OpenStreetMap. 'Resources' can be links to forums, meetups, Slack groups, IRC channels, mailing lists, and so on. Anything that mappers, especially beginners, might find interesting or helpful.", @@ -16,7 +18,7 @@ "nl": "Een lijst van hulpmiddelen van gebruikers van OpenStreetMap. 'Hulpmiddelen' kunnen fora, meetups, Slack groepen, IRC kanalen, mailinglijsten, en meer zijn. Alles dat mappers, vooral beginners, nuttig of behulpzaam kunnen vinden.", "fr": "Une liste de ressources pour les utilisateurs d'OpenStreetMap. Les \"ressources\" peuvent être des liens vers des forums, des rencontres, des groupes Slack, des canaux IRC, des listes de diffusion, etc. Tout ce que les cartographes, en particulier les débutants, peuvent trouver intéressant ou utile.", "cs": "Seznam zdrojů pro uživatele OpenStreetMap. \"Zdroje\" mohou být odkazy na fóra, setkání, Slack skupiny, kanály IRC, poštovní konference atd. Cokoli, co by mohlo být pro mappery, zejména začátečníky, zajímavé nebo užitečné.", - "es": "Una lista de recursos para los usuarios de OpenStreetMap. Los \"recursos\" pueden ser enlaces a foros, reuniones, grupos de trabajo, canales IRC, listas de correo, etcétera. Cualquier cosa que los cartógrafos, especialmente los principiantes, puedan encontrar interesante o útil.", + "es": "Una lista de recursos para usuarios de OpenStreetMap. 'Recursos' pueden ser enlaces a foros, encuentros, grupos de Slack, canales IRC, listas de correo, etc. Cualquier cosa que los mapeadores, especialmente los principiantes, puedan encontrar interesante o útil.", "ca": "Una llista de recursos per als usuaris d'OSM. Els recursos poden ser enllaços a fòrums, reunions, grups de treball, canals IRC, llistes de correus, etcètera. Quelcom que els mapejadors, especialment els principiants poden trobar interessant o útil.", "pl": "Lista zasobów dla użytkowników OpenStreetMap. „Zasobami” mogą być odnośniki do forów, spotkań, grup na Slacku, kanałów IRC, list mailingowych i tak dalej. Wszystko, co mapujący, a zwłaszcza początkujący, mogą uznać za interesujące lub pomocne." }, @@ -28,7 +30,8 @@ "es": "Un índice de recursos comunitarios para OpenStreetMap.", "ca": "Un índex de recursos comunitaris per a OpenStreetMap.", "cs": "Rejstřík komunitních zdrojů pro OpenStreetMap.", - "pl": "Indeks zasobów społeczności dotyczących OpenStreetMap." + "pl": "Indeks zasobów społeczności dotyczących OpenStreetMap.", + "uk": "Індекс ресурсів спільноти для OpenStreetMap." }, "icon": "./assets/themes/osm_community_index/osm.svg", "startZoom": 16, diff --git a/assets/themes/parkings/parkings.json b/assets/themes/parkings/parkings.json index 9d96a04da..9d75a93ca 100644 --- a/assets/themes/parkings/parkings.json +++ b/assets/themes/parkings/parkings.json @@ -11,13 +11,14 @@ "id": "Tempat parkir", "hu": "Parkolás", "fr": "Stationnement", - "es": "Aparcamiento", + "es": "Estacionamiento", "da": "Parkering", "pa_PK": "پارکنگ", "ca": "Aparcament", "cs": "Parkoviště", "eu": "Aparkalekua", - "pl": "Parking" + "pl": "Parking", + "uk": "Парковки" }, "description": { "nl": "Deze kaart toont verschillende parkeerplekken", @@ -28,7 +29,7 @@ "id": "Peta ini menunjukkan tempat parkir yang berbeda", "hu": "Ez a térkép különböző parkolókat jelenít meg", "fr": "Cette carte affiche différents lieux de stationnement", - "es": "Este mapa muestra diferentes puntos de aparcamiento", + "es": "Este mapa muestra diferentes lugares de estacionamiento", "nb_NO": "Forskjellige parkeringsplasser", "da": "Dette kort viser forskellige parkeringspladser", "ca": "Aquest mapa mostra diferents punts d'aparcament", @@ -44,12 +45,13 @@ "zh_Hant": "這地圖顯示不同的停車空間", "id": "Peta ini menunjukkan tempat parkir yang berbeda", "hu": "Ez a térkép különböző parkolókat jelenít meg", - "es": "Este mapa muestra diferentes puntos de aparcamiento", + "es": "Este mapa muestra diferentes lugares de estacionamiento", "fr": "Cette montre les emplacements de parking", "da": "Dette kort viser forskellige parkeringspladser", "ca": "Aquest mapa mostra diferents punts d'aparcament", "cs": "Na této mapě jsou vyznačena různá parkovací místa", - "pl": "Ta mapa pokazuje różne miejsca parkingowe" + "pl": "Ta mapa pokazuje różne miejsca parkingowe", + "uk": "На цій мапі показані різні місця для паркування" }, "icon": "./assets/themes/parkings/parkings.svg", "startZoom": 12, diff --git a/assets/themes/personal/personal.json b/assets/themes/personal/personal.json index 38937002d..6c1d454b3 100644 --- a/assets/themes/personal/personal.json +++ b/assets/themes/personal/personal.json @@ -3,7 +3,7 @@ "title": { "en": "Personal theme", "nl": "Persoonlijk thema", - "es": "Interficie personal", + "es": "Tema personal", "ca": "Interfície personal", "gl": "Tema personalizado", "fr": "Thème personnalisé", @@ -16,12 +16,15 @@ "da": "Personligt tema", "pa_PK": "چݨی تھیم", "cs": "Osobní téma", - "pl": "Temat osobisty" + "pl": "Temat osobisty", + "ru": "Собственная тема", + "hu": "Személyes téma", + "uk": "Власна тема" }, "description": { "en": "Create a personal theme based on all the available layers of all themes. In order to show some data, open layer selection", "nl": "Stel je eigen thema samen door lagen te combineren van alle andere themas", - "es": "Crea un tema personal basado en todas las capas disponibles de todos los temas. Con el objetivo de mostrar algunos datos, abre selección de capas", + "es": "Crea un tema personal basado en todas las capas disponibles de todos los temas. Para mostrar algunos datos, abre la selección de capas", "ca": "Crea un tema personal basat en totes les capes disponibles de totes els temes. Per a mostrar les dades, obri selecció de capes", "gl": "Crea un tema baseado en todas as capas dispoñíbeis de todos os temas", "fr": "Créez un thème personnalisé basé sur toutes les couches disponibles de tous les thèmes. Pour afficher des données, ouvrez la sélection de couches", @@ -32,7 +35,8 @@ "it": "Crea un tema personale basato sui livelli disponibili per tutti i temi. Per mostrare dei dati, apri selezione livello", "da": "Opret et personligt tema baseret på alle de tilgængelige lag af alle temaer. For at vise nogle data skal du åbne lagvalg", "cs": "Vytvořte si osobní téma na základě všech dostupných vrstev všech témat. Chcete-li vidět nějaká data, otevřete si výběr vrstev", - "pl": "Utwórz osobisty temat w oparciu o wszystkie dostępne warstwy wszystkich tematów. Aby wyświetlić dane, otwórz wybór warstwy" + "pl": "Utwórz osobisty temat w oparciu o wszystkie dostępne warstwy wszystkich tematów. Aby wyświetlić dane, otwórz wybór warstwy", + "uk": "Створіть особисту тему на основі всіх доступних шарів усіх тем. Щоб показати деякі дані, відкрийте вибір шару" }, "icon": "./assets/svg/addSmall.svg", "layers": [], diff --git a/assets/themes/pets/pets.json b/assets/themes/pets/pets.json index 5846015cc..c8dffb1a7 100644 --- a/assets/themes/pets/pets.json +++ b/assets/themes/pets/pets.json @@ -11,7 +11,10 @@ "cs": "Veterináři, psí parky a další služby pro domácí zvířata", "zh_Hant": "獸醫院、寵物公園以及其他寵物設施", "pl": "Kliniki weterynaryjne, parki dla psów i inne obiekty dla zwierząt", - "it": "Veterinari, parchi accessibili ai cani e altri servizi per animali domestici" + "it": "Veterinari, parchi accessibili ai cani e altri servizi per animali domestici", + "ru": "Ветеринары, парки для собак и другие удобства для домашних животных", + "hu": "Állatorvosok, kutyafuttatók és hasonló, kedvtelésből tartott állatoknak szóló létesítmények", + "uk": "Ветеринари, собачі парки та інші зручності для домашніх тварин" }, "description": { "en": "On this map, you'll find various interesting places for you pets: veterinarians, dog parks, pet shops, dog-friendly restaurants, ...", @@ -20,9 +23,11 @@ "nl": "Deze kaart helpt je op weg met je huisdier: dierenartsen, hondenloopzones, dierenwinkels, hondenvriendelijke restaurants, ...", "fr": "Retrouvez sur cette carte des points d’intérêts pour votre animal : vétérinaires, parcs à chien, animaleries, restaurants acceptant les chiens, etc.", "ca": "A aquest mapa, trobaràs diferents llocs interesants per a les teves mascotes: veterinaris, parcs per a gossos, botigues d'animals, restaurants amables amb gossos, ...", - "es": "En este mapa, encontrarás varios lugares interesantes para tus mascotas: veterinarios, parques para perros, tiendas de mascotas, restaurantes aptos para perros, ...", + "es": "En este mapa, encontrarás varios lugares interesantes para tus mascotas: veterinarios, parques para perros, tiendas de mascotas, restaurantes que admiten perros...", "cs": "Na této mapě najdete různá zajímavá místa pro vaše domácí mazlíčky: veterináře, psí parky, obchody pro zvířata, restaurace pro psy, ...", - "pl": "Na tej mapie znajdziesz różne ciekawe miejsca dla swoich zwierząt: weterynarze, wybiegi dla psów, sklepy zoologiczne, restauracje przyjazne psom, ..." + "pl": "Na tej mapie znajdziesz różne ciekawe miejsca dla swoich zwierząt: weterynarze, wybiegi dla psów, sklepy zoologiczne, restauracje przyjazne psom, ...", + "ru": "На этой карте вы найдете различные интересные места для ваших питомцев: ветеринарные клиники, парки для собак, зоомагазины, рестораны для собак, ...", + "uk": "На цій мапі ви знайдете різні цікаві місця для ваших домашніх улюбленців: ветеринари, парки для собак, зоомагазини, ресторани, дружні до собак, …" }, "icon": "./assets/layers/dogpark/dog-park.svg", "startZoom": 10, @@ -49,7 +54,8 @@ "cs": "Restaurace vhodné pro vstup se psy", "zh_Hant": "寵物友善餐廳", "pl": "Restauracje przyjazne psom", - "it": "Ristoranti che accettano i cani" + "it": "Ristoranti che accettano i cani", + "ru": "Заведения, где можно поесть с собаками" }, "pointRendering": [ { @@ -101,7 +107,7 @@ "fr": "Magasins acceptant les chiens", "ca": "Botigues amigues dels gossos", "pa_PK": "کُتیاں دی اِجازت دیاں دکاناں", - "es": "Tiendas aptas para perros", + "es": "Tiendas que admiten perros", "cs": "Obchody vhodné pro vstup se psy", "zh_Hant": "寵物友善商家", "pl": "Sklepy przyjazne psom", @@ -117,11 +123,12 @@ "fr": "Magasins acceptant les chiens", "ca": "Botigues amigues dels gossos", "pa_PK": "کُتیاں دی اِجازت دیاں دکاناں", - "es": "Tiendas aptas para perros", + "es": "Tiendas que admiten perros", "cs": "Obchody vhodné pro vstup se psy", "zh_Hant": "寵物友善商家", "pl": "Sklepy przyjazne psom", - "it": "Negozi che accettano i cani" + "it": "Negozi che accettano i cani", + "hu": "Kutyabarát üzletek" }, "mappings": [ { @@ -216,7 +223,7 @@ "fr": "magasin acceptant les chiens", "ca": "botiga amiga dels gossos", "pa_PK": "کُتیاں دی اِجازت دی دکان", - "es": "Tienda adaptada para perros", + "es": "tienda que admite perros", "cs": "obchod vhodný pro vstup se psem", "zh_Hant": "寵物友善商家", "pl": "sklep przyjazny psom" @@ -232,7 +239,7 @@ "nl": "Een winkel waar je je hond in bijna heel de winkel mag meenemen", "fr": "Un magasin où vous pouvez amener votre chien presque partout", "ca": "Una botiga on pots dur al gos gairebé a tot arreu", - "es": "Una tienda a la que se puede llevar un perro a casi todas partes", + "es": "Una tienda donde puedes llevar a un perro casi a todas partes", "cs": "Obchod, ve kterém si můžete vzít psa téměř kamkoli", "zh_Hant": "你幾乎可以攜帶寵物到處去的商店", "pl": "Sklep, w którym niemal wszędzie można zabrać psa" diff --git a/assets/themes/playgrounds/playgrounds.json b/assets/themes/playgrounds/playgrounds.json index 02efb01d3..35ede40c0 100644 --- a/assets/themes/playgrounds/playgrounds.json +++ b/assets/themes/playgrounds/playgrounds.json @@ -13,11 +13,12 @@ "id": "Taman bermain", "hu": "Játszóterek", "ca": "Parcs infantils", - "es": "Parques infanties", + "es": "Parques infantiles", "da": "Legepladser", "cs": "Dětská hřiště", "eu": "Jolas parkeak", - "pl": "Place zabaw" + "pl": "Place zabaw", + "uk": "Дитячі майданчики" }, "description": { "nl": "Op deze kaart vind je speeltuinen en kan je zelf meer informatie en foto's toevoegen", @@ -30,11 +31,12 @@ "it": "In questa cartina vengono mostrati i parchi giochi a cui è possibile aggiungere dettagli", "id": "Di peta ini, Anda menemukan taman bermain dan dapat menambahkan lebih banyak informasi", "hu": "Ezen a térképen játszótereket találsz, és további információkat adhatsz hozzájuk", - "es": "En este mapa, puedes encontrar parques y añadir más información", + "es": "En este mapa, encuentras parques infantiles y puedes agregar más información", "da": "På dette kort finder du legepladser og kan tilføje flere oplysninger", "ca": "A aquest mapa, pots trobar parcs i afegir més informació", "cs": "Na této mapě najdete dětská hřiště a můžete k nim přidat další informace", - "pl": "Na tej mapie znajdziesz place zabaw, możesz też dodać o nich więcej informacji" + "pl": "Na tej mapie znajdziesz place zabaw, możesz też dodać o nich więcej informacji", + "uk": "На цій мапі ви знайдете дитячі майданчики та зможете додати додаткову інформацію" }, "shortDescription": { "nl": "Een kaart met speeltuinen", @@ -52,7 +54,8 @@ "es": "Un mapa con parques infantiles", "da": "Et kort med legepladser", "cs": "Mapa dětských hřišť", - "pl": "Mapa z placami zabaw" + "pl": "Mapa z placami zabaw", + "uk": "Мапа дитячих майданчиків" }, "icon": "./assets/themes/playgrounds/playground.svg", "startZoom": 13, @@ -70,7 +73,8 @@ "bbq" ], "override": { - "minzoom": 16 + "minzoom": 16, + "isCounted": false } } ], diff --git a/assets/themes/postal_codes/postal_codes.json b/assets/themes/postal_codes/postal_codes.json index 5d61e4b37..1133d9255 100644 --- a/assets/themes/postal_codes/postal_codes.json +++ b/assets/themes/postal_codes/postal_codes.json @@ -179,7 +179,7 @@ "fr": "mairies", "nb_NO": "rådhus", "da": "rådhuse", - "es": "Municipios", + "es": "ayuntamientos", "cs": "radnice", "zh_Hant": "城鎮", "pl": "ratusz", @@ -197,7 +197,7 @@ "da": "Rådhus {name}", "nb_NO": "{name}-rådhuset", "ca": "Ajuntament de {name}", - "es": "Municipio {name}", + "es": "Ayuntamiento {name}", "cs": "Radnice {name}", "zh_Hant": "城鎮 {name}", "pl": "Ratusz {name}", diff --git a/assets/themes/postboxes/postboxes.json b/assets/themes/postboxes/postboxes.json index 504a2b695..30ae42189 100644 --- a/assets/themes/postboxes/postboxes.json +++ b/assets/themes/postboxes/postboxes.json @@ -11,17 +11,18 @@ "fr": "Carte des bureaux de poste et boîtes à lettres", "da": "Postkasser og posthuse", "ca": "Mapa de bústies i oficines de correus", - "es": "Mapa de Buzones y Oficinas de Correos", + "es": "Mapa de buzones y oficinas de correos", "cs": "Mapa poštovních schránek a pošt", - "pl": "Mapa skrzynek i urzędów pocztowych" + "pl": "Mapa skrzynek i urzędów pocztowych", + "uk": "Мапа поштових скриньок та поштових відділень" }, "description": { "en": "On this map you can find and add data of post offices and post boxes. You can use this map to find where you can mail your next postcard! :)
Spotted an error or is a post box missing? You can edit this map with a free OpenStreetMap account.", "it": "In questa mappa puoi veder e modificare gli uffici postali e le buche delle lettere. Puoi usare questa mappa per scoprire dove imbucare la tua prossima cartolina! :)
Hai trovato un errore o una buca delle lettere mancante? Puoi modificare questa cartina con un account gratuito su OpenStreetMap.", "zh_Hant": "在這份地圖你能找到與新增有關郵局與郵筒的資料,你可以用這份地圖找到寄送您下張明信片的地方!:)
發現錯誤或是有郵筒遺漏嗎?你可以用免費的開放街圖帳號來編輯。", - "hu": "Ezen a térképen postahivatalok és postaládák adatait találod és egészítheted ki. Utánanézhetsz, hogy hol adhatod fel a következő képeslapodat! :)
Hibát találtál, vagy hiányzik egy postaláda? Ezt a térképet mindössze egy ingyenes OpenStreetMap-fiókkal szerkesztheted. ", + "hu": "Ezen a térképen postahivatalok és postaládák adatait találod és viheted föl. A térkép segítségével utánanézhetsz, hogy hol adhatod fel a következő képeslapodat! :)
Hibát találtál, vagy hiányzik egy postaláda? A térképet mindössze egy ingyenes OpenStreetMap-fiókkal szerkesztheted.", "de": "Auf dieser Karte können Sie Daten von Poststellen und Briefkästen finden und ergänzen. Sie können diese Karte nutzen, um herauszufinden, wo Sie Ihre nächste Postkarte versenden können :)
Haben Sie einen Fehler entdeckt oder fehlt ein Briefkasten? Sie können die Kartenddaten mit einem kostenlosen OpenStreetMap-Konto bearbeiten.", - "es": "En este mapa podrás buscar y añadir los datos de las oficinas de correos y buzones de correo. ¡Puedes utilizar este mapa para encontrar dónde enviar tu próxima postal! :)
¿Has detectado un error o falta algún buzón de correo? Puedes editar este mapa con una cuenta gratuita de OpenStreetMap.", + "es": "En este mapa puedes encontrar y agregar datos de oficinas de correos y buzones. ¡Puedes usar este mapa para encontrar dónde enviar tu próxima postal! :)
¿Viste un error o falta un buzón? Puedes editar este mapa con una cuenta gratuita de OpenStreetMap.", "nl": "Op deze kaart kan je informatie over brievenbussen en postkantoren vinden en toevoegen. Je kan deze kaart gebruiken om te achterhalen waar je je volgende postkaart naar kan sturen! :)
Zie je een fout of ontbreekt een brievenbus? Dan kan je deze kaart aanpassen met een gratis OpenStreetMap account. ", "fr": "Trouvez et ajoutez des bureaux de poste et boîtes à lettres sur cette carte. Utilisez cette carte où vous pouvez envoyer vos cartes postales ! :)
Vous avez trouvez une erreur ou une boîte à lettres est manquante ? Vous pouvez modifier cette carte avec un compte OpenStreetMap gratuit.", "da": "På dette kort kan du finde og tilføje data for posthuse og postkasser. Du kan bruge dette kort til at finde, hvor du kan sende dit næste postkort! :)
Har du fundet en fejl, eller mangler der en postboks? Du kan redigere dette kort med en gratis OpenStreetMap-konto. ", @@ -35,14 +36,15 @@ "it": "Una cartina che mostra le buche delle lettere e gli uffici postali", "zh_Hant": "顯示郵筒與郵局的地圖", "hu": "Posták és postaládák térképe", - "es": "Un mapa que muestra buzones y oficinas de correo", + "es": "Un mapa que muestra buzones y oficinas de correos", "nl": "Een kaart die brievenbussen en postkantoren toont", "fr": "Une carte des bureaux de poste et des boîtes à lettres", "nb_NO": "Postbokser og postkontor", "da": "Et kort med postkasser og posthuse", "ca": "Un mapa que mostra bústies i oficines de correus", "cs": "Mapa s poštovními schránkami a poštami", - "pl": "Mapa pokazująca skrzynki pocztowe i urzędy pocztowe" + "pl": "Mapa pokazująca skrzynki pocztowe i urzędy pocztowe", + "uk": "Мапа з позначенням поштових скриньок та поштових відділень" }, "icon": "./assets/layers/postboxes/postbox.svg", "startZoom": 13, @@ -63,7 +65,7 @@ "description": { "en": "Add a new post partner to the map in an existing shop", "de": "Hinzufügen eines neuen Post-Partners auf der Karte in einem bestehenden Geschäft", - "es": "Agregar un nuevo punto de recogida al mapa en una tienda existente", + "es": "Agregar un nuevo socio postal al mapa en una tienda existente", "cs": "Přidání nového poštovního partnera do mapy v existujícím obchodě" }, "+tagRenderings": [ @@ -73,7 +75,7 @@ "en": "Is this shop a post partner?", "de": "Ist dieses Geschäft ein Post-Partner?", "nl": "Is deze winkel een post-partner?", - "es": "¿Es esta tienda un puesto de recogida de paquetes?", + "es": "¿Es esta tienda un socio postal?", "cs": "Je tento obchod partnerem pošty?" }, "mappings": [ @@ -83,7 +85,7 @@ "en": "This shop is a post partner", "de": "Dieses Geschäft ist ein Post-Partner", "nl": "Deze winkel is een post-partner", - "es": "Esta tienda es colaboradora de correos o alguna agencia de transporte", + "es": "Esta tienda es un socio postal", "cs": "Tento obchod je partnerem pošty" } }, @@ -93,7 +95,7 @@ "en": "This shop is not a post partner", "de": "Dieses Geschäft ist kein Post-Partner", "nl": "Deze winkel is geen post-partner", - "es": "Esta tienda no está asociada a ninguna agencia de transporte", + "es": "Esta tienda no es un socio postal", "cs": "Tento obchod není partnerem pošty" } } @@ -110,13 +112,13 @@ "title": { "en": "a missing shop that is a post partner", "de": "ein fehlendes Geschäft, das ein Post-Partner ist", - "es": "Una tienda desaparecida que era un punto de recogida de paquetes", + "es": "una tienda que falta y que es un socio postal", "cs": "chybějící obchod, který je partnerem pošty" }, "description": { "en": "If a shop is not yet on the map and is a post partner, you can add it here.", "de": "Wenn ein Laden noch nicht auf der Karte ist und ein Post-Partner ist, kannst du ihn hier hinzufügen.", - "es": "Si una tienda aún no está en el mapa y es un puntode recogida de paquetes, puedes añadirla aquí.", + "es": "Si una tienda aún no está en el mapa y es un socio postal, puedes agregarla aquí.", "cs": "Pokud obchod ještě není na mapě a je partnerem pošty, můžete jej přidat zde." } } diff --git a/assets/themes/rainbow_crossings/rainbow_crossings.json b/assets/themes/rainbow_crossings/rainbow_crossings.json index b0a9a5b4b..c276a28cc 100644 --- a/assets/themes/rainbow_crossings/rainbow_crossings.json +++ b/assets/themes/rainbow_crossings/rainbow_crossings.json @@ -8,10 +8,12 @@ "nl": "Regenboogzebrapaden", "ru": "Радужные пешеходные переходы", "ca": "Pasos de vianants amb l'arc de Sant Martí", - "es": "Pasos de peatones arco iris", + "es": "Pasos de peatones arcoíris", "cs": "Duhové přechody pro chodce", "zh_Hant": "彩虹人行穿越道", - "pl": "Tęczowe przejścia dla pieszych" + "pl": "Tęczowe przejścia dla pieszych", + "hu": "Szivárványos gyalogosátkelők", + "uk": "Веселкові пішохідні переходи" }, "description": { "en": "On this map, rainbow-painted pedestrian crossings are shown and can be easily added", @@ -20,9 +22,10 @@ "da": "På dette kort er regnbuemalede fodgængerfelter vist og kan nemt tilføjes", "nl": "Deze kaart toont zebrapaden die in regenboogkleuren of pridekleuren geschilderd zijn.", "ca": "A aquest mapa es mostren els pasos de vianants pintats amb l'arc de Sant Martí i poden afegir-se fàcilment", - "es": "En este mapa se muestran los pasos de peatones pintados con el arco iris, que pueden añadirse fácilmente", + "es": "En este mapa, se muestran y se pueden agregar fácilmente pasos de peatones pintados con arcoíris", "cs": "Na této mapě si můžete zobrazit a snadno přidat přechody pro chodce s duhovými malbami", - "pl": "Na tej mapie pokazane są tęczowo pomalowane przejścia dla pieszych, które można łatwo dodać" + "pl": "Na tej mapie pokazane są tęczowo pomalowane przejścia dla pieszych, które można łatwo dodać", + "uk": "На цій мапі показуються пішохідні переходи позначені кольорами веселки, вони також можуть бути легко додані" }, "icon": "./assets/themes/rainbow_crossings/logo.svg", "startZoom": 16, @@ -45,12 +48,18 @@ } } }, - "rainbow_crossings", + { + "builtin": "rainbow_crossings", + "override": { + "isCounted": false + } + }, { "builtin": "cycleways_and_roads", "override": { "minzoom": 18, - "name": null + "name": null, + "isCounted": false } } ], diff --git a/assets/themes/shops/shops.json b/assets/themes/shops/shops.json index 3e733c223..23e9c4e04 100644 --- a/assets/themes/shops/shops.json +++ b/assets/themes/shops/shops.json @@ -9,14 +9,15 @@ "de": "Geschäfte", "it": "Negozi", "nb_NO": "Kart over åpne butikker", - "hu": "Bolttérkép", + "hu": "Boltok", "nl": "Winkels", "ca": "Botigues", "da": "Butikker", "es": "Tiendas", "cs": "Obchody", "eu": "Denda", - "pl": "Sklepy" + "pl": "Sklepy", + "uk": "Магазини" }, "description": { "en": "On this map, one can mark basic information about shops, add opening hours and phone numbers", @@ -25,13 +26,14 @@ "zh_Hant": "這份地圖上,你可以標記商家基本資訊,新增營業時間以及聯絡電話", "de": "Auf dieser Karte kann man grundlegende Informationen über Geschäfte markieren, Öffnungszeiten und Telefonnummern hinzufügen", "it": "In questa cartina è possibile aggiungere informazioni di base di un negozio, orari di apertura e numeri di telefono", - "hu": "Ezen a térképen az üzletek alapvető adatait lehet megadni, például nyitvatartási időt és telefonszámokat.", - "es": "En este mapa, se puede marcar información básica sobre tiendas, añadir horarios y números de teléfono", + "hu": "Ezen a térképen az üzletek alapvető adatait lehet megadni, például nyitvatartási időt és telefonszámokat", + "es": "En este mapa, se puede marcar información básica sobre tiendas, agregar horarios de apertura y números de teléfono", "nl": "Op deze kaart kan men algemene informatie over winkels toevoegen, evenals openingsuren en telefoonnummers", "da": "På dette kort kan man markere grundlæggende informationer om butikker, tilføje åbningstider og telefonnumre", "ca": "A aquest mapa, es pot marcar informació bàsica sobre botigues, afegir horaris i números de telèfon", "cs": "Na této mapě můžete označit základní informace o obchodech, přidat otevírací dobu a telefonní čísla", - "pl": "Na mapie tej można zaznaczyć podstawowe informacje o sklepach, dodać godziny otwarcia oraz numery telefonów" + "pl": "Na mapie tej można zaznaczyć podstawowe informacje o sklepach, dodać godziny otwarcia oraz numery telefonów", + "uk": "На цій мапі можна позначити основну інформацію про магазини, додати години роботи та номери телефонів" }, "shortDescription": { "en": "An editable map with basic shop information", @@ -40,13 +42,15 @@ "de": "Eine bearbeitbare Karte mit grundlegenden Geschäftsinformationen", "it": "Una cartina modificabile con informazioni di base dei negozi", "hu": "Szerkeszthető térkép üzletek alapvető adataival", - "es": "Un mapa editable con información básica sobre tiendas", + "es": "Un mapa editable con información básica de la tienda", "nl": "Een bewerkbare kaart met simpele informatie over winkels", "da": "Et redigerbart kort med grundlæggende butiksoplysninger", "ca": "Un mapa editable amb informació bàsica sobre botigues", "cs": "Upravitelná mapa se základními informacemi o obchodech", "zh_Hant": "有基本商家資訊的可編輯性的地圖", - "pl": "Edytowalna mapa z podstawowymi informacjami o sklepach" + "pl": "Edytowalna mapa z podstawowymi informacjami o sklepach", + "ru": "Редактируемая карта с основной информацией о магазине", + "uk": "Мапа з можливістю редагування з основною інформацією про магазин" }, "icon": "./assets/themes/shops/shop.svg", "layers": [ diff --git a/assets/themes/ski/ski.json b/assets/themes/ski/ski.json index da04e94a2..a0ed94994 100644 --- a/assets/themes/ski/ski.json +++ b/assets/themes/ski/ski.json @@ -3,16 +3,19 @@ "title": { "en": "Ski pistes and aerialways", "de": "Skipisten und Seilbahnen", - "es": "Pistas de esquí y vías aéreas", + "es": "Pistas de esquí y remontes", "da": "Skiløjper og skilifte", "fr": "Pistes de ski et remontées mécaniques", - "cs": "Sjezdovky a lanové dráhy" + "cs": "Sjezdovky a lanové dráhy", + "hu": "Sípályák és felvonók", + "uk": "Гірськолижні траси та витяги" }, "description": { "en": "Everything you need to go skiing", "de": "Alles, was Sie zum Skifahren brauchen", "es": "Todo lo que necesitas para esquiar", - "cs": "Vše, co potřebujete k lyžování" + "cs": "Vše, co potřebujete k lyžování", + "uk": "Все необхідне для катання на лижах" }, "icon": "./assets/layers/aerialway/chair_lift.svg", "layers": [ diff --git a/assets/themes/sport_pitches/sport_pitches.json b/assets/themes/sport_pitches/sport_pitches.json index 4d594d265..25b08f617 100644 --- a/assets/themes/sport_pitches/sport_pitches.json +++ b/assets/themes/sport_pitches/sport_pitches.json @@ -11,10 +11,11 @@ "it": "Campi sportivi", "hu": "Sportpályák", "ca": "Camps d'esports", - "es": "Pistas de deportes", + "es": "Canchas deportivas", "da": "Sportspladser", "cs": "Sportovní hřiště", - "pl": "Boiska sportowe" + "pl": "Boiska sportowe", + "uk": "Спортивні майданчики" }, "description": { "nl": "Een sportveld is een ingerichte plaats met infrastructuur om een sport te beoefenen", @@ -26,7 +27,7 @@ "it": "Un campo sportivo è un'area dove vengono praticati degli sport", "hu": "A sportpálya egy olyan terület, amelyen valamilyen sportot űznek", "ru": "Спортивная площадка - пространство для занятий спортом", - "es": "Una pista de deportes es una área donde se practican deportes", + "es": "Una cancha deportiva es un área donde se practican deportes", "da": "En sportsplads er et område, hvor der dyrkes sport", "ca": "Una pista d'esports és un àrea on es practiquen esports", "cs": "Sportovní hřiště je plocha, na které se provozují sporty", @@ -42,11 +43,12 @@ "de": "Eine Karte mit Sportplätzen", "it": "Una cartina che mostra i campi sportivi", "hu": "Sportpályatérkép", - "es": "Un mapa que muestra pistas de deportes", + "es": "Un mapa que muestra canchas deportivas", "da": "Et kort, der viser sportspladser", "ca": "Un mapa que mostra pistes d'esports", "cs": "Mapa sportovních hřišť", - "pl": "Mapa przedstawiająca boiska sportowe" + "pl": "Mapa przedstawiająca boiska sportowe", + "uk": "Мапа з позначенням спортивних майданчиків" }, "icon": "./assets/layers/sport_pitch/table_tennis.svg", "layers": [ diff --git a/assets/themes/sports/sports.json b/assets/themes/sports/sports.json index 0cb224f39..6feaee6dd 100644 --- a/assets/themes/sports/sports.json +++ b/assets/themes/sports/sports.json @@ -12,14 +12,17 @@ "zh_Hant": "運動", "eu": "Kirolak", "pl": "Sporty", - "it": "Sport" + "it": "Sport", + "ru": "Спортивные объекты", + "hu": "Sporttérkép", + "uk": "Спорт" }, "description": { "en": "All about sports, find sport pitches, fitness centres and more.", "nl": "Alles over sport: vind sportvelden, fitnesscentra en meer.", "de": "Alles über Sport. Finden Sie Sportplätze, Fitnesscenter und vieles mehr.", "ca": "Tot sobre esports, troba camps d'esport, gimnasos i molt més.", - "es": "Todo sobre deportes, encuentra campos de deporte, gimnasios y mucho más.", + "es": "Todo sobre deportes, encuentra canchas deportivas, centros de fitness y más.", "cs": "Vše o sportu, sportovní hřiště, fitness centra a další.", "fr": "Tout sur les sports, trouver les terrains de sport, les salles de sport et plus encore.", "pl": "Wszystko o sporcie, znajdź boiska sportowe, centra fitness i nie tylko.", @@ -31,11 +34,12 @@ "de": "Karte mit Sporteinrichtungen.", "fr": "Carte des équipements sportifs.", "ca": "Mapa amb instal·lacions esportives.", - "es": "Mapa con instalaciones deportivas.", + "es": "Mapa que muestra instalaciones deportivas.", "cs": "Mapa se sportovními zařízeními.", "zh_Hant": "顯示運動設施的地圖。", "pl": "Mapa pokazująca obiekty sportowe.", - "it": "Mappa che mostra gli impianti sportivi." + "it": "Mappa che mostra gli impianti sportivi.", + "uk": "Мапа спортивних обʼєктів." }, "icon": "./assets/themes/sports/sport.svg", "layers": [ @@ -64,7 +68,7 @@ "nl": "een sportwinkel", "de": "ein Sportgeschäft", "ca": "una tenda d'esports", - "es": "una tienda de deportes", + "es": "una tienda de artículos deportivos", "cs": "sportovní obchod", "zh_Hant": "運動用品店", "fr": "une boutique de sport", @@ -76,7 +80,7 @@ "de": "Ein neues Geschäft für Sportartikel hinzufügen.", "fr": "Ajouter un nouveau commerce vendant des équipements sportifs.", "ca": "Afegeix una nova botiga d'articles esportius.", - "es": "Añade una nueva tienda de artículos deportivos.", + "es": "Agregar una nueva tienda que venda artículos deportivos.", "cs": "Přidejte nový obchod se sportovním zbožím.", "pl": "Dodaj nowy sklep sprzedający artykuły sportowe." } diff --git a/assets/themes/stations/stations.json b/assets/themes/stations/stations.json index 83a9cfd30..65fa1cfe8 100644 --- a/assets/themes/stations/stations.json +++ b/assets/themes/stations/stations.json @@ -12,7 +12,8 @@ "zh_Hant": "火車站", "pl": "Stacje Kolejowe", "da": "Togstationer", - "it": "Stazioni ferroviarie" + "it": "Stazioni ferroviarie", + "hu": "Vasútállomások" }, "description": { "en": "View, edit and add details to a train station", @@ -20,7 +21,7 @@ "nl": "Bekijk, bewerk en voeg details to aan een treinstation", "fr": "Voir, modifier et ajouter des détails à une gare ferroviaire", "ca": "Veure, editar i afegir detalls a una estació de tren", - "es": "Ver, editar y añadir detalles a una estación de tren", + "es": "Ver, editar y agregar detalles a una estación de tren", "cs": "Zobrazení, úprava a přidání podrobností o vlakovém nádraží", "pl": "Przeglądaj, edytuj i dodawaj szczegóły do stacji kolejowej", "it": "Visualizza, modifica e aggiungi informazioni su una stazione ferroviaria" @@ -71,7 +72,7 @@ "nb_NO": "Togstasjoner", "fr": "Gares ferroviaires", "ca": "Estació de tren", - "es": "Estación de Tren", + "es": "Estaciones de tren", "cs": "Vlaková nádraží", "it": "Stazioni ferroviarie", "pl": "Stacje Kolejowe", @@ -346,7 +347,7 @@ "nl": "Wat voor vertrektijdenbord is dit?", "fr": "De quel type de panneau de départs s'agit-il ?", "ca": "Quin tipus de tauler de sortides és aquest?", - "es": "¿Qué tipo de tablero de salidas es éste?", + "es": "¿Qué tipo de tablero de salidas es este?", "cs": "Co je to za odjezdovou tabuli?", "zh_Hant": "這是那種類型的時刻表?", "pl": "Co to za tablica odjazdów?", @@ -361,7 +362,7 @@ "nl": "Dit is een vertrektijdenbord van een onbekend type", "fr": "Panneau des départs de type inconnu", "ca": "Aquest tauler de sortides és de tipus desconegut", - "es": "Este es un panel de salidas de tipo desconocido", + "es": "Este es un tablero de salidas de un tipo desconocido", "cs": "Toto je odjezdová tabule neznámého typu", "pl": "Jest to tablica odjazdów nieznanego typu" } @@ -374,7 +375,7 @@ "nl": "Dit is een elektronisch bord, met realtime vertrektijden", "fr": "Panneau électronique, affichant les prochains départs en temps réel", "ca": "Aquest és un tauler electrònic que mostra les pròximes sortides en temps real", - "es": "Este es un tablero electrónico que muestra las próximas salidas en tiempo real", + "es": "Este es un tablero electrónico, que muestra las próximas salidas en tiempo real", "cs": "Jedná se o elektronickou tabuli, která v reálném čase zobrazuje příští odjezdy", "pl": "To elektroniczna tablica, pokazująca w czasie rzeczywistym kolejne odjazdy" } @@ -434,7 +435,7 @@ "nl": "Voeg een bord met vertrektijden toe, elektronisch of op papier", "fr": "Ajouter un panneau indiquant les départs, qu'il soit électronique ou papier", "ca": "Afegeix un tauler que mostra les sortides, de forma electrònica o en paper", - "es": "Añadir un panel de salidas, electrónico o en papel", + "es": "Agregar un tablero que muestre las salidas, ya sea electrónico o en papel", "cs": "Přidejte tabuli s odjezdy, ať už v elektronické nebo papírové podobě", "pl": "Dodaj tablicę pokazującą odjazdy, w wersji elektronicznej lub papierowej" } diff --git a/assets/themes/street_lighting/street_lighting.json b/assets/themes/street_lighting/street_lighting.json index b75266575..5703e9267 100644 --- a/assets/themes/street_lighting/street_lighting.json +++ b/assets/themes/street_lighting/street_lighting.json @@ -15,7 +15,8 @@ "es": "Alumbrado público", "cs": "Pouliční osvětlení", "it": "Illuminazione stradale", - "pl": "Oświetlenie uliczne" + "pl": "Oświetlenie uliczne", + "uk": "Вуличне освітлення" }, "description": { "en": "On this map you can find everything about street lighting", @@ -23,14 +24,15 @@ "zh_Hant": "在這份地圖你可以找到任何有關路燈的事情", "hu": "Ezen a térképen minden megtalálható, ami a közvilágítással kapcsolatos", "de": "Eine Karte für alles zum Thema Straßenbeleuchtung", - "es": "En este mapa puedes encontrar todo sobre la iluminación callejera", + "es": "En este mapa puedes encontrar todo sobre el alumbrado público", "fr": "Retrouvez tout ce qui touche à l’éclairage de rue sur cette carte", "da": "På dette kort kan du finde alt om gadebelysning", "ca": "En aquest mapa pots trobar tot el relacionat amb l'enllumenat públic", "nb_NO": "Alt om gatebelysning", "cs": "Na této mapě najdete vše o pouličním osvětlení", "pl": "Na tej mapie możesz znaleźć wszystko o oświetleniu ulicznym", - "it": "Su questa mappa puoi trovare tutto ciò che riguarda l'illuminazione stradale" + "it": "Su questa mappa puoi trovare tutto ciò che riguarda l'illuminazione stradale", + "uk": "На цій мапі можна знайти все про вуличне освітлення" }, "icon": "./assets/layers/street_lamps/street_lamp.svg", "startZoom": 19, @@ -177,7 +179,7 @@ "zh_Hant": "這個道路 24/7 有照明", "hu": "Ez az utca éjjel-nappal ki van világítva", "de": "Diese Straße ist durchgehend beleuchtet", - "es": "Esta calle está iluminada todo el día", + "es": "Esta calle está iluminada 24/7", "nb_NO": "Denne gaten er belyst døgnet rundt", "fr": "Cette rue est éclairée en permanence", "da": "Denne gade er oplyst 24/7", @@ -201,6 +203,7 @@ }, { "id": "all_streets", + "isCounted": false, "name": { "en": "All streets", "nl": "Alle straten", @@ -268,7 +271,7 @@ "fr": "Cette rue est-elle éclairée ?", "da": "Er denne gade oplyst?", "ca": "Aquest carrer està il·luminat?", - "es": "¿Esta calle está iluminada?", + "es": "¿Está iluminada esta calle?", "cs": "Je tato ulice osvětlená?", "it": "Questa strada è illuminata?", "pl": "Czy ta ulica jest oświetlona?" diff --git a/assets/themes/surveillance/surveillance.json b/assets/themes/surveillance/surveillance.json index 83fd347e5..ed58c0c75 100644 --- a/assets/themes/surveillance/surveillance.json +++ b/assets/themes/surveillance/surveillance.json @@ -15,7 +15,9 @@ "es": "Vigilancia bajo vigilancia", "cs": "Dohled pod dohledem", "pl": "Monitoring monitoringu", - "sl": "Nadzor nadzora" + "sl": "Nadzor nadzora", + "ru": "Наблюдение под наблюдением", + "uk": "Нагляд під наглядом" }, "description": { "en": "On this open map, you can find surveillance cameras.", @@ -31,8 +33,9 @@ "da": "På dette åbne kort kan du finde overvågningskameraer.", "nb_NO": "Her finner du overvåkningskameraer.", "ca": "A aquest mapa obert pots trobar càmeres de vigilància.", - "es": "En este mapa abierto, puede encontrar cámaras de vigilancia.", - "cs": "Na této otevřené mapě najdete bezpečnostní kamery." + "es": "En este mapa abierto, puedes encontrar cámaras de vigilancia.", + "cs": "Na této otevřené mapě najdete bezpečnostní kamery.", + "uk": "На цій відкритій мапі ви можете знайти камери спостереження." }, "shortDescription": { "en": "Surveillance cameras and other means of surveillance", @@ -48,7 +51,8 @@ "nb_NO": "Overvåkningskameraer og andre typer overvåkning", "ca": "Càmeres de vigilància i altres tipus de vigilància", "es": "Cámaras de vigilancia y otros medios de vigilancia", - "cs": "Bezpečnostní kamery a další prostředky sledování" + "cs": "Bezpečnostní kamery a další prostředky sledování", + "uk": "Камери спостереження та інші засоби спостереження" }, "icon": "./assets/themes/surveillance/logo.svg", "defaultBackgroundId": "maptiler.carto", diff --git a/assets/themes/toilets/toilets.json b/assets/themes/toilets/toilets.json index 93665a955..55832c36d 100644 --- a/assets/themes/toilets/toilets.json +++ b/assets/themes/toilets/toilets.json @@ -11,11 +11,12 @@ "pl": "Publiczne toalety", "it": "Servizi igienici pubblici", "nb_NO": "Åpent toalettkart", - "hu": "WC-térkép", + "hu": "Nyilvános illemhelyek", "ca": "Lavabos públics", "da": "Offentlige toiletter", "es": "Baños públicos", - "cs": "Veřejné toalety" + "cs": "Veřejné toalety", + "uk": "Громадські туалети" }, "description": { "en": "A map of public toilets", @@ -31,8 +32,9 @@ "nb_NO": "Et kart over offentlige toaletter", "da": "Et kort over offentlige toiletter", "ca": "Mapa de lavabos públics", - "es": "Mapa de aseos públicos", - "cs": "Mapa veřejných toalet" + "es": "Un mapa de baños públicos", + "cs": "Mapa veřejných toalet", + "uk": "Мапа показує розташування громадських туалетів" }, "icon": "./assets/themes/toilets/toilets.svg", "startZoom": 12, diff --git a/assets/themes/transit/transit.json b/assets/themes/transit/transit.json index 5676d6802..6e9ab4a8f 100644 --- a/assets/themes/transit/transit.json +++ b/assets/themes/transit/transit.json @@ -12,7 +12,10 @@ "es": "Rutas de autobús", "cs": "Autobusové linky", "zh_Hant": "公車路線", - "pl": "Trasy autobusowe" + "pl": "Trasy autobusowe", + "ru": "Автобусные маршруты", + "hu": "Buszjáratok", + "uk": "Автобусні маршрути" }, "description": { "en": "Plan your trip with the help of the public transport system.", @@ -22,7 +25,7 @@ "nl": "Plan je trip met behulp van het openbaar vervoer.", "nb_NO": "Planlegg turen din med offentlig transport", "ca": "Planifica el teu viatge amb l'ajuda del sistema públic de transport.", - "es": "Planifique su viaje con ayuda del sistema de transporte público.", + "es": "Planifica tu viaje con la ayuda del sistema de transporte público.", "cs": "Naplánujte si cestu pomocí systému veřejné dopravy.", "zh_Hant": "藉由大眾運輸系統來計畫你的旅程。", "pl": "Zaplanuj swoją podróż korzystając z systemu transportu publicznego." diff --git a/assets/themes/trees/trees.json b/assets/themes/trees/trees.json index 63799d09e..7e9084935 100644 --- a/assets/themes/trees/trees.json +++ b/assets/themes/trees/trees.json @@ -20,7 +20,8 @@ "cs": "Stromy", "pt_BR": "Árvores", "eu": "Zuhaitzak", - "pt": "Árvores" + "pt": "Árvores", + "uk": "Дерева" }, "description": { "nl": "Breng bomen in kaart!", @@ -34,7 +35,7 @@ "nb_NO": "Kartlegg trærne.", "hu": "Térképezzünk fel minden fát!", "ca": "Mapeja tots els arbres!", - "es": "¡Mapa de los Árboles!", + "es": "¡Mapea todos los árboles!", "da": "Kortlæg alle træerne!", "cs": "Zmapujte všechny stromy!", "pt_BR": "Mapeie todas as árvores!", @@ -54,9 +55,10 @@ "nb_NO": "Kartlegg alle trærne", "hu": "Az összes fa feltérképezése", "ca": "Mapeja tots els arbres", - "es": "Mapa de los Árboles", + "es": "Mapea todos los árboles", "da": "Kortlæg alle træer", - "cs": "Zmapujte všechny stromy" + "cs": "Zmapujte všechny stromy", + "uk": "Додайте на мапу всі дерева" }, "icon": "./assets/themes/trees/logo.svg", "socialImage": "./assets/themes/trees/logo.svg", diff --git a/assets/themes/velopark/velopark.json b/assets/themes/velopark/velopark.json index a27ccf7b0..428ea0b51 100644 --- a/assets/themes/velopark/velopark.json +++ b/assets/themes/velopark/velopark.json @@ -253,6 +253,19 @@ } ] }, + { + "id": "nmbs-only", + "options": [ + { + "question": { + "en": "Only non-SNCB-bicycle parkings", + "nl": "Enkel niet-NMBS fietsstallingen" + }, + "osmTags": "ref:velopark!~i~https://data.velopark.be/data/NMBS.*", + "default": true + } + ] + }, { "id": "too-hard-only", "options": [ diff --git a/assets/themes/vending_machine/vending_machine.json b/assets/themes/vending_machine/vending_machine.json index 2dd0bd3b4..34ff48ca4 100644 --- a/assets/themes/vending_machine/vending_machine.json +++ b/assets/themes/vending_machine/vending_machine.json @@ -11,7 +11,10 @@ "pl": "Automaty sprzedające", "zh_Hant": "自動販賣機", "da": "Salgsautomater", - "it": "Distributori automatici" + "it": "Distributori automatici", + "ru": "Торговые автоматы", + "hu": "Árusító automaták", + "uk": "Торгові автомати" }, "description": { "en": "Find vending machines for everything", @@ -20,9 +23,10 @@ "fr": "Trouver tous les distributeurs", "ca": "Troba màquines expenedores per a tot", "cs": "Najít prodejní automaty na vše", - "es": "Encontrar máquinas expendedoras para todo", + "es": "Encuentra máquinas expendedoras de todo", "pl": "Znajdź wszelakie automaty sprzedające", - "it": "Trova distributori automatici per ogni cosa" + "it": "Trova distributori automatici per ogni cosa", + "uk": "Знайдіть торгові автомати для всього" }, "icon": "./assets/layers/vending_machine/vending_machine.svg", "startZoom": 19, diff --git a/assets/themes/walkingnodes/walkingnodes.json b/assets/themes/walkingnodes/walkingnodes.json index 5707d9efa..8a4726b48 100644 --- a/assets/themes/walkingnodes/walkingnodes.json +++ b/assets/themes/walkingnodes/walkingnodes.json @@ -12,7 +12,7 @@ "nl": "Deze kaart toont wandelknooppunten en laat je toe om eenvoudigweg nieuwe knooppunten toe te voegen", "de": "Diese Karte zeigt Wandernetzwerke und ermöglicht es Ihnen, einfach neue Knoten hinzuzufügen", "cs": "Tato mapa zobrazuje sítě pěších uzlů a umožňuje snadno přidávat nové uzly", - "es": "Este mapa muestra las redes de nodos de senderismo y le permite añadir nuevos nodos fácilmente" + "es": "Este mapa muestra redes de nodos de senderismo y te permite agregar nuevos nodos fácilmente" }, "icon": "./assets/themes/walkingnodes/logo.svg", "startZoom": 11, @@ -28,7 +28,7 @@ "name": { "en": "Node to node links", "de": "Knotenpunktverbindungen", - "es": "enlaces nodo a nodo", + "es": "Enlaces de nodo a nodo", "nl": "Verbindingen van node naar node", "fr": "liens noeud à noeud", "ca": "enllaços node a node", @@ -54,7 +54,7 @@ "render": { "en": "Node to node link", "de": "Knotenpunktverbindung", - "es": "enlace nodo a nodo", + "es": "Enlace de nodo a nodo", "nl": "Node-naar-node verbinding", "fr": "lien noeud à noeud", "ca": "Enllaç node a node", @@ -67,7 +67,7 @@ "then": { "en": "Node to node link {ref}", "de": "Knotenpunktverbindung {ref}", - "es": "enlace nodo a nodo {ref}", + "es": "Enlace de nodo a nodo {ref}", "nl": "Node-naar-node verbinding {ref}", "fr": "lien noeud à noeud {ref}", "ca": "Enllaç node a node {ref}", @@ -100,7 +100,7 @@ "question": { "en": "When was this node to node link last surveyed?", "de": "Wann wurde diese Knotenpunktverbindung zuletzt überprüft?", - "es": "¿Cuándo se sondeó este enlace nodo a nodo por última vez?", + "es": "¿Cuándo se inspeccionó por última vez este enlace de nodo a nodo?", "nl": "Wanneer werd deze node-naar-node verbinding het laast gesurveyed?", "fr": "Quand cette liaison de nœud à nœud a-t-elle été contrôlée sur le terrain pour la dernière fois ?", "ca": "Quan es va comprovar per última vegada aquest enllaç node a node presencialment?", @@ -110,7 +110,7 @@ "render": { "en": "This node to node link was last surveyed on {survey:date}", "de": "Diese Knotenpunktverbindung wurde zuletzt am {survey:date} überprüft", - "es": "Este enlace nodo a nodo se sondeó por última vez el {survey:date}", + "es": "Este enlace de nodo a nodo se inspeccionó por última vez el {survey:date}", "nl": "Deze node-naar-node verbinding werd het laast gesurveyed op {survey:date}", "fr": "Cette lien de nœud à nœud a été vérifié sur le terrain le {survey:date}", "ca": "Aquest enllaç node a node es va sondejar per última vegada el {survey:date}", @@ -129,7 +129,7 @@ "en": "Nodes", "de": "Knotenpunkte", "ca": "nodes", - "es": "nodos", + "es": "Nodos", "nb_NO": "noder", "nl": "Knooppunten", "fr": "noeuds", @@ -174,7 +174,7 @@ "en": "Walking node", "nl": "Wandelknooppunt", "de": "Wanderknoten", - "es": "Nodo de senderismo", + "es": "Hito de senderismo", "cs": "Pěší uzel" }, "mappings": [ @@ -184,7 +184,7 @@ "en": "Walking node {rwn_ref}", "nl": "Wandelknooppunt {rwn_ref}", "de": "Wanderknoten {rwn_ref}", - "es": "Nodo de senderismo {rwn_ref}", + "es": "Hito de senderismo {rwn_ref}", "cs": "Pěší uzel {rwn_ref}" } }, @@ -194,7 +194,7 @@ "en": "Proposed walking node {proposed:rwn_ref}", "nl": "Voorgesteld wandelknooppunt {proposed:rwn_ref}", "de": "Vorgeschlagener Wanderknoten {proposed:rwn_ref}", - "es": "Nodo de senderismo propuesto {proposed:rwn_ref}", + "es": "Hito de senderismo propuesto {proposed:rwn_ref}", "cs": "Navrhovaný pěší uzel {proposed:rwn_ref}" } } @@ -219,14 +219,14 @@ "nl": "bijv. 1", "de": "z.B. 1", "cs": "e.g. 1", - "es": "Por ejemplo, 1" + "es": "p.ej.1" } }, "render": { "en": "This walking node has reference number {rwn_ref}", "nl": "Dit wandelknooppunt heeft referentienummer {rwn_ref}", "de": "Dieser Wanderknoten hat die Referenznummer {rwn_ref}", - "es": "Este nodo de senderismo tiene la referencia número {rwn_ref}", + "es": "Este nodo de senderismo tiene el número de referencia {rwn_ref}", "cs": "Tento pěší uzel má referenční číslo {rwn_ref}" }, "condition": "rwn_ref~*" @@ -238,14 +238,14 @@ "en": "When was this walking node last surveyed?", "nl": "Wanneer is dit wandelknooppunt het laatst gesurveyed?", "de": "Wann wurde dieser Wanderknoten zuletzt überprüft?", - "es": "¿Cuándo fue la última revisión de este nodo de senderismo?", + "es": "¿Cuándo se inspeccionó por última vez este nodo de senderismo?", "cs": "Kdy byl tento pěší uzel naposledy zkontrolován?" }, "render": { "en": "This walking node was last surveyed on {survey:date}", "nl": "Dit wandelknooppunt werd het laatst gesurveyed op {survey:date}", "de": "Dieser Wanderknoten wurde zuletzt am {survey:date} überprüft", - "es": "Este nodo de senderismo fue revisado por última vez en {survey:date}", + "es": "Este hito de senderismo se inspeccionó por última vez el {survey:date}", "cs": "Tento pěší uzel byl naposledy zkontrolován dne {survey:date}" } } @@ -256,13 +256,13 @@ "nl": "Met hoeveel andere wandelknooppunten heeft dit knooppunt een verbinding?", "de": "Mit wie vielen anderen Wanderknoten ist dieser Knoten verbunden?", "cs": "S kolika dalšími pěšími uzly je tento uzel propojen?", - "es": "¿A cuántos otros nodos de senderismo conecta este nodo?" + "es": "¿A cuántos otros nodos de senderismo se conecta este nodo?" }, "render": { "en": "This node links to {expected_rwn_route_relations} other walking nodes.", "nl": "Dit knooppunt verbindt met {expected_rwn_route_relations} andere wandelknooppunten.", "de": "Dieser Knoten ist mit {expected_rwn_route_relations} anderen Wanderknoten verbunden.", - "es": "Este nodo se vincula a {expected_rwn_route_relations} otros nodos de senderismo.", + "es": "Este nodo se conecta a {expected_rwn_route_relations} otros nodos de senderismo.", "cs": "Tento uzel je propojen s {expected_rwn_route_relations} dalšími uzly pro pěší." }, "freeform": { @@ -273,7 +273,7 @@ "nl": "bijv. 3", "de": "z.B. 3", "cs": "e.g. 3", - "es": "Por ejemplo, 3" + "es": "p.ej.3" } }, "id": "node-expected_rwn_route_relations" @@ -326,14 +326,14 @@ "name": { "en": "Hiking guideposts", "de": "Wanderwegweiser", - "es": "Postes guías de senderismo", + "es": "Señalización de senderismo", "cs": "Turistické rozcestníky" }, "title": { "render": { "en": "Hiking guidepost", "de": "Wanderwegweiser", - "es": "Poste guía de senderismo", + "es": "Hito de senderismo", "cs": "Turistický rozcestník" } } diff --git a/assets/themes/walls_and_buildings/walls_and_buildings.json b/assets/themes/walls_and_buildings/walls_and_buildings.json index ed4aee801..c4ff082f3 100644 --- a/assets/themes/walls_and_buildings/walls_and_buildings.json +++ b/assets/themes/walls_and_buildings/walls_and_buildings.json @@ -8,10 +8,11 @@ "nb_NO": "Murer og bygninger", "nl": "Muren en gebouwen", "ca": "Murs i edificis", - "es": "Muros y edificios", + "es": "Paredes y edificios", "cs": "Stěny a budovy", "zh_Hant": "牆壁與建築", - "pl": "Ściany i budynki" + "pl": "Ściany i budynki", + "hu": "Falak és épületek" }, "description": { "en": "Special builtin layer providing all walls and buildings. This layer is useful in presets for objects which can be placed against walls (e.g. AEDs, postboxes, entrances, addresses, surveillance cameras, …). This layer is invisible by default and not toggleable by the user.", @@ -20,7 +21,7 @@ "da": "Specielt indbygget lag giver alle vægge og bygninger. Dette lag er nyttigt i forudindstillinger til objekter, der kan placeres mod vægge (f.eks. AED'er, postkasser, indgange, adresser, overvågningskameraer, …). Dette lag er usynligt som standard og kan ikke skiftes af brugeren.", "nl": "Speciale ingebouwde laag voor alle muren en gebouwen. Deze laag is nuttig in voorkeuzen voor objecten die tegen muren geplaatst kunnen worden (bv. AEDs, brievenbussen, ingangen, adressen, beveiligingscamera's,…). Deze laag is standaard onzichtbaar en niet in te schakelen door de gebruiker.", "ca": "Capa construïda especial que proporciona totes les parets i edificis. Aquesta capa és útil als predefinits per a objectes que es poden col·locar a les parets (p. ex. DEA, bústies de correus, entrades, adreces, càmeres de vigilància, ...). Aquesta capa és invisible per defecte i no es pot activar per l'usuari.", - "es": "Capa especial incorporada que proporciona todas las paredes y edificios. Esta capa es útil en los preajustes para objetos que pueden colocarse contra las paredes (por ejemplo: AEDs, buzones de correos, entradas, direcciones, cámaras de vigilancia, ...). Esta capa es invisible por defecto y no puede ser activada por el usuario.", + "es": "Capa incorporada especial que proporciona todas las paredes y edificios. Esta capa es útil en los ajustes preestablecidos para objetos que se pueden colocar contra las paredes (por ejemplo, DEA, buzones, entradas, direcciones, cámaras de vigilancia, etc.). Esta capa es invisible de forma predeterminada y el usuario no puede activarla.", "cs": "Speciální zabudovaná vrstva poskytující všechny stěny a budovy. Tato vrstva je užitečná v předvolbách pro objekty, které lze umístit ke stěnám (např. AED, poštovní schránky, vchody, adresy, bezpečnostní kamery, …). Tato vrstva je ve výchozím nastavení neviditelná a uživatel ji nemůže přepínat.", "zh_Hant": "特殊的內建圖層顯示所有牆壁與建築。這個圖層對於規畫要靠牆的東西 (例如 AED、郵筒、入口、地址、監視器等) 相當實用。這個圖層預設顯示而且無法由使用者開關。", "pl": "Specjalna warstwa zabudowana zapewniająca wszystkie mury i budynki. Warstwa ta jest przydatna w ustawieniach wstępnych obiektów, które można umieścić przy ścianach (np. AED, skrzynki pocztowe, wejścia, adresy, kamery monitorujące itp.). Warstwa ta jest domyślnie niewidoczna i użytkownik nie może jej przełączać." diff --git a/assets/themes/waste/waste.json b/assets/themes/waste/waste.json index b1308ac1a..e93cf7f51 100644 --- a/assets/themes/waste/waste.json +++ b/assets/themes/waste/waste.json @@ -9,12 +9,14 @@ "fr": "Déchets", "it": "Rifiuti", "da": "Affald", - "es": "Basura y reciclaje", + "es": "Residuos", "ru": "Мусор", "cs": "Odpad", "zh_Hant": "廢棄物", "eu": "Hondakinak eta birziklapena", - "pl": "Odpady" + "pl": "Odpady", + "hu": "Hulladék", + "uk": "Відходи" }, "description": { "en": "Map showing waste baskets and recycling facilities.", @@ -24,10 +26,11 @@ "it": "Mappa dei cestini per i rifiuti e i centri di raccolta e riciclo rifiuti.", "ca": "Mapa que mostra papereres i infraestructures de reciclatge.", "da": "Kort over skraldespande og genbrugsanlæg.", - "es": "Mapa que muestra las papeleras y las instalaciones de reciclaje.", + "es": "Mapa que muestra papeleras y instalaciones de reciclaje.", "cs": "Mapa zobrazující koše na odpadky a recyklační zařízení.", "zh_Hant": "顯示垃圾筒與回收設施的地圖。", - "pl": "Mapa przedstawiająca kosze na śmieci i zakłady recyklingu." + "pl": "Mapa przedstawiająca kosze na śmieci i zakłady recyklingu.", + "uk": "Мапа сміттєвих контейнерів та пунктів перероблення вторсировини." }, "icon": "./assets/layers/recycling/recycling-14.svg", "startZoom": 19, diff --git a/assets/themes/waste_basket/waste_basket.json b/assets/themes/waste_basket/waste_basket.json index d4762139f..932a96b58 100644 --- a/assets/themes/waste_basket/waste_basket.json +++ b/assets/themes/waste_basket/waste_basket.json @@ -15,7 +15,9 @@ "pa_PK": "کوڑے دی ٹوکری", "es": "Papeleras", "cs": "Odpadkové koše", - "pl": "Kosz na śmieci" + "pl": "Kosz na śmieci", + "ru": "Корзины для мусора", + "uk": "Урни для сміття" }, "description": { "en": "On this map, you'll find waste baskets near you. If a waste basket is missing on this map, you can add it yourself.", @@ -23,13 +25,14 @@ "de": "Die Karte zeigt Abfalleimer in der Nähe. Wenn ein Abfalleimer fehlt, kannst du ihn selbst hinzufügen.", "it": "In questa cartina troverai i cestini dei rifiuti nei tuoi paraggi. Se manca un cestino, puoi inserirlo tu stesso", "zh_Hant": "在這份地圖當中,你可以找到你附近的垃圾筒。如果地圖有遺漏垃圾筒,你可以自己加上去", - "hu": "Ezen a térképen megtalálhatod a közeledben lévő szemeteskosarakat. Ha hiányzik egy kuka a térképről, te is felrajzolhatod", + "hu": "Ezen a térképen megtalálhatod a közeledben lévő szemeteskosarakat. Ha hiányzik egy kuka a térképről, te is felrajzolhatod.", "fr": "Retrouvez les poubelles près de vous. Si une poubelle est manquante, vous pouvez l’ajouter vous même", "da": "På dette kort finder du skraldespande i nærheden af dig. Hvis der mangler en skraldespand på dette kort, kan du selv tilføje den", "ca": "A aquest mapa trobaràs les papereres a prop teua. Si falta una paperera al mapa pots afegir-la tu mateix", - "es": "En este mapa, encontrarás las papeleras cercanas a ti. Si falta alguna en el mapa, puedes añadirla tu mismo.", + "es": "En este mapa, encontrarás papeleras cerca de ti. Si falta alguna papelera en este mapa, puedes añadirla tú mismo.", "cs": "Na této mapě najdete koše na odpadky ve vašem okolí. Pokud na této mapě odpadkový koš chybí, můžete jej přidat sami.", - "pl": "Na tej mapie znajdziesz kosze na śmieci w twojej okolicy. Jeśli brakuje kosza, możesz go dodać" + "pl": "Na tej mapie znajdziesz kosze na śmieci w twojej okolicy. Jeśli brakuje kosza, możesz go dodać", + "uk": "На цій мапі ви знайдете найближчі до вас контейнери для сміття. Якщо на мапі відсутній кошик для сміття, ви можете додати його самостійно." }, "shortDescription": { "en": "A map with waste baskets", @@ -44,7 +47,8 @@ "ca": "Un mapa amb papereres", "es": "Un mapa con papeleras", "cs": "Mapa odpadkových košů", - "pl": "Mapa koszy na śmieci" + "pl": "Mapa koszy na śmieci", + "uk": "Мапа з урнами для сміття" }, "icon": "./assets/themes/waste_basket/waste_basket.svg", "layers": [ diff --git a/langs/ca.json b/langs/ca.json index 0eb0d7744..2ec248b9f 100644 --- a/langs/ca.json +++ b/langs/ca.json @@ -20,6 +20,7 @@ "cancel": "Cancel·lar", "cannotBeDeleted": "Aquest element no pot ser esborrat", "delete": "Esborrar", + "deletedTitle": "Element eliminat", "explanations": { "hardDelete": "Aquest element s'esborrarà a OpenStreetMap. Es podria recuperar per part d'un contribuïdor experimentat", "retagNoOtherThemes": "Aquest element serà reclasificada i ocultada a aquesta aplicació", @@ -46,6 +47,19 @@ "useSomethingElse": "Utilitza un altre editor d'OpenStreetMap per esborrar-lo", "whyDelete": "Per què s'hauria d'esborrar aquest element?" }, + "external": { + "allAreApplied": "Tots els valors externs que faltaven s'han copiat a OpenStreetMap", + "conflicting": { + "title": "Elements conflictius" + }, + "currentInOsmIs": "Pel moment, OpenStreetMap té el següent valor registrat:", + "done": "Fet", + "missing": { + "intro": "OpenStreetMap no té informació sobre els següents atributs", + "title": "Elements que falten" + }, + "noDataLoaded": "El lloc web extern no té dades vinculades que es puguen carregar" + }, "favourite": { "loginNeeded": "

Entrar

El disseny personalitzat només està disponible pels usuaris d'OpenstreetMap", "panelIntro": "

La teva interfície personal

Activa les teves capes favorites de totes les interfícies oficials", @@ -57,6 +71,8 @@ "isNotMarkedShort": "No marcat com a favorit", "markAsFavouriteTitle": "Marca aquesta ubicació com a preferida" }, + "introPrivacy": "Aquesta llista nomes és visible per a tu", + "loginToSeeList": "Inicia sessió per a veure la llista d'ubicacions marcades com a favorites", "tab": "Els teus favorits i opinions", "title": "Les teues ubicacions favorites" }, @@ -153,6 +169,7 @@ "donate": "Donar suport econòmic a MapComplete", "editId": "Obre l'editor en línia d'OpenStreetMap aquí", "editJosm": "Editar aquí amb JOSM", + "emailCreators": "Envia un correu electrònic als creadors", "followOnMastodon": "Segueix MapComplet a Mastodon", "gotoSourceCode": "Veure el codi font", "iconAttribution": { diff --git a/langs/cs.json b/langs/cs.json index 478afc8e9..a51fc7a85 100644 --- a/langs/cs.json +++ b/langs/cs.json @@ -130,7 +130,7 @@ "osm": "OpenStreetMap je online mapa, kterou může kdokoli upravovat a znovu používat k jakémukoli účelu, pokud uvede autora a data zůstanou otevřená.\n\nJedná se o největší geoprostorovou databázi na světě, kterou opakovaně využívají tisíce aplikací a webových stránek.", "tagline": "Shromažďování geodat pomocí OpenStreetMap", "title": "mapcomplete.org", - "toerisme_vlaanderen": "Pro společný projekt s Visit Flanders byl vytvořen projekt \"Pin your point\". Více než 160 přispěvatelů přidalo několik tisíc laviček a piknikových stolů a objevilo 100 nabíjecích stanic pro kola.", + "toerisme_vlaanderen": "V rámci společného projektu s Visit Flanders byl vytvořen projekt „Pin your point“. Více než 160 přispěvatelů přidalo několik tisíc laviček a piknikových stolů a objevilo 100 dobíjecích stanic pro kola.", "whatIsOsm": "Co je OpenStreetMap?" }, "general": { @@ -206,6 +206,7 @@ "openPanoramax": "Zde otevřete Panoramax", "openThemeDocumentation": "Otevřít dokumentaci k tematické mapě {name}", "panoramaxHelp": "Panoramax je online služba, která shromažďuje snímky z úrovně ulic a nabízí je pod bezplatnou licencí. Přispěvatelé mohou tyto snímky používat ke zlepšení OpenStreetMap", + "panoramaxLicenseCCBYSA": "Vaše obrázky jsou zveřejněny pod licencí CC-BY-SA - každý může váš obrázek znovu použít, pokud uvede vaše jméno", "seeOnMapillary": "Podívejte se na tento obrázek na Mapillary", "themeBy": "Téma spravuje {author}", "title": "Autorská práva a uvedení zdroje", @@ -223,7 +224,7 @@ "customThemeTitle": "Vlastní témata", "download": { "custom": { - "download": "Stáhnout PNG o {width} mm na šířku a {height} mm na výšku", + "download": "Stáhněte si formát PNG o šířce {width}mm a výšce {height}mm", "downloadHelper": "Toto je určeno pro tisk", "height": "Výška obrázku (v mm):", "title": "Stáhněte si obrázek s vlastní šířkou a výškou", @@ -257,8 +258,8 @@ "toMuch": "Existuje mnoho funkcí, které lze stáhnout všechny", "uploadGpx": "Nahrajte svou trasu do OpenStreetMap" }, - "enableGeolocationForSafari": "Nezobrazilo se vám vyskakovací okno s žádostí o geografické povolení?", - "enableGeolocationForSafariLink": "Přečtěte si, jak povolit oprávnění ke geolokaci v nastavení", + "enableGeolocationForSafari": "Nezobrazilo se vyskakovací okno s žádostí o povolení k umístění?", + "enableGeolocationForSafariLink": "Zjistěte, jak povolit oprávnění k poloze v nastavení", "eraseValue": "Vymažte tuto hodnotu", "error": "Něco se pokazilo", "example": "Příklad", @@ -269,7 +270,7 @@ "disableAll": "Zakázat vše", "enableAll": "Povolit vše" }, - "geopermissionDenied": "Použití geolokace bylo zamítnuto", + "geopermissionDenied": "Povolení k poloze bylo zamítnuto", "getStartedLogin": "Přihlaste se pomocí OpenStreetMap a začněte", "getStartedNewAccount": " nebo vytvořte nový účet", "goToInbox": "Otevřete složku Doručená pošta", @@ -309,6 +310,7 @@ "aboutMapComplete": "O MapComplete", "filter": "Filtrování dat", "moreUtilsTitle": "Zjistit více", + "openHereDifferentApp": "Otevřít aktuální polohu v jiných aplikacích", "showIntroduction": "Zobrazit úvod", "title": "Menu" }, @@ -488,6 +490,7 @@ "slight_right": "mírně vpravo", "straight": "přímo vpřed" }, + "east": "Pohyb na východ", "fromGps": "{distance} {direction} vaší polohy", "fromMapCenter": "{distance} {direction} středu mapy", "in": "Přiblížení na úroveň {z}", @@ -495,10 +498,14 @@ "locked": "Zobrazení je nyní uzamčeno na vaši polohu GPS, pohyb je zakázán.", "navigation": "Pomocí kláves se šipkami posouvejte mapu, stisknutím mezerníku vyberte nejbližší objekt. Stisknutím čísla vyberte místa dále.", "noCloseFeatures": "Nejsou zobrazeny žádné funkce.", + "north": "Pohyb na sever", "oneFeatureInView": "Jedna funkce ve výřezu.", "out": "Oddálení na úroveň {z}", + "south": "Pohyb na jih", + "unlocked": "Pohyb povolen.", "viewportCenterCloseToGps": "Mapa je vycentrována kolem vaší polohy.", - "viewportCenterDetails": "Střed výřezu je vzdálen {distance} a {bearing} od vaší polohy." + "viewportCenterDetails": "Střed výřezu je vzdálen {distance} a {bearing} od vaší polohy.", + "west": "Pohyb na západ" }, "waitingForGeopermission": "Čekáme na vaše povolení používat geolokaci…", "waitingForLocation": "Vyhledávání vaší aktuální polohy…", @@ -594,6 +601,7 @@ "someFailed": "Litujeme, nepodařilo se nám nahrát {count} obrázků", "uploading": "Nahrává se {count} obrázků…" }, + "noBlur": "Snímky nebudou rozmazané. Nefotografujte lidi", "one": { "done": "Váš obrázek byl úspěšně nahrán. Děkuji!", "failed": "Omlouváme se, váš obrázek se nepodařilo nahrát", diff --git a/langs/de.json b/langs/de.json index 031be7204..a2986e5c6 100644 --- a/langs/de.json +++ b/langs/de.json @@ -206,6 +206,7 @@ "openPanoramax": "Panoramax öffnen", "openThemeDocumentation": "Dokumentation zur Themenkarte {name} anzeigen", "panoramaxHelp": "Panoramax ist ein Online-Service, der Straßenbilder sammelt und sie unter einer kostenlosen Lizenz anbietet. Mitwirkende dürfen diese Bilder nutzen, um OpenStreetMap zu verbessern", + "panoramaxLicenseCCBYSA": "Ihre Bilder werden unter CC-BY-SA veröffentlicht - jeder kann Ihr Bild weiterverwenden, wenn er Ihren Namen erwähnt", "seeOnMapillary": "Dieses Bild auf Mapillary ansehen", "themeBy": "Dieses Thema wurde erstellt von {author}", "title": "Copyright und Urheberrechtsangabe", @@ -257,8 +258,8 @@ "toMuch": "Es gibt zu viele Funktionen, um sie alle herunterzuladen", "uploadGpx": "Einen Track auf OpenStreetMap hochladen" }, - "enableGeolocationForSafari": "Hast du das Popup zur Abfrage der Geo-Berechtigung nicht erhalten?", - "enableGeolocationForSafariLink": "Erfahre, wie du die Geo-Berechtigung in den Einstellungen aktivieren kannst", + "enableGeolocationForSafari": "Hast du das Popup zur Standortabfrage nicht erhalten?", + "enableGeolocationForSafariLink": "Wie die Standortberechtigung in den Einstellungen aktiviert werden kann", "eraseValue": "Wert löschen", "error": "Etwas ist schief gelaufen", "example": "Beispiel", @@ -269,7 +270,7 @@ "disableAll": "Alle deaktivieren", "enableAll": "Alle aktivieren" }, - "geopermissionDenied": "Die Verwendung der Standortbestimmung wurde verweigert", + "geopermissionDenied": "Die Standortbestimmung wurde verweigert", "getStartedLogin": "Bei OpenStreetMap anmelden, um loszulegen", "getStartedNewAccount": " oder ein neues Konto anlegen", "goToInbox": "Posteingang öffnen", @@ -309,6 +310,7 @@ "aboutMapComplete": "Über MapComplete", "filter": "Daten filtern", "moreUtilsTitle": "Mehr entdecken", + "openHereDifferentApp": "Aktuellen Standort in anderen Anwendungen öffnen", "showIntroduction": "Einführung anzeigen", "title": "Menü" }, @@ -586,10 +588,33 @@ "seeNearby": "Bilder in der Nähe durchsuchen", "title": "Straßenbilder in der Nähe" }, + "panoramax": { + "deletionRequested": "Der Bericht wurde abgeschickt. Ein Moderator wird sich in Kürze darum kümmern", + "freeform": "Gibt es weitere relevante Informationen?", + "otherFreeform": "Bitte gib an, warum dieses Bild entfernt werden soll:", + "placeholder": "Erkläre, warum das Bild gelöscht werden sollte", + "report": { + "blur_excess": "Zu viel ist unscharf und macht das Bild unbrauchbar", + "blur_missing": "Ein Gesicht oder Nummernschild ist auf diesem Bild nicht unscharf", + "copyright": "Das Bild enthält urheberrechtlich geschützte Inhalte", + "inappropriate": "Dieses Bild ist unangemessen (es enthält Nacktheit, ruft nach Hass oder ist nicht Streetview)", + "mislocated": "Das Bild ist von einem anderen Ort", + "other": "Ein weiterer Grund, bitte angeben", + "picture_low_quality": "Das Bild ist von geringer Qualität", + "privacy": "Das Bild zeigt eine private Immobilie" + }, + "requestDeletion": "Bildlöschung beantragen", + "title": "Warum sollte dieses Bild dauerhaft gelöscht werden?" + }, "pleaseLogin": "Bitte anmelden, um ein Bild hinzuzufügen", "processing": "Der Server verarbeitet das Bild", "respectPrivacy": "Laden Sie keine Bilder von Google Maps, Google Streetview oder anderen urheberrechtlich geschützten Quellen hoch.", "toBig": "Ihr Bild ist mit {actual_size} zu groß. Die maximale Bildgröße ist {max_size}", + "unlink": { + "button": "Bild entkoppeln", + "explanation": "Wenn du die Verknüpfung dieses Bildes aufhebst, wird das Bild nicht mehr mit diesem Objekt angezeigt. Es wird aber weiterhin in den Nachbarschaftsbildern und möglicherweise in anderen Objekten angezeigt.", + "title": "Dieses Bild entkoppeln?" + }, "upload": { "failReasons": "Keine Internetverbindung", "failReasonsAdvanced": "Alternativ dazu können Sie einstellen, dass Ihr Browser und Ihre Erweiterungen die APIs von Drittanbietern nicht blockieren.", @@ -599,6 +624,7 @@ "someFailed": "Entschuldigung, {count} Bilder konnten nicht hochgeladen werden", "uploading": "{count} Bilder werden hochgeladen…" }, + "noBlur": "Die Bilder werden nicht unkenntlich gemacht. Fotografieren Sie keine Menschen", "one": { "done": "Bild erfolgreich hochgeladen. Vielen Dank!", "failed": "Entschuldigung, das Bild konnte nicht hochgeladen werden", @@ -887,4 +913,4 @@ "startsWithQ": "Ein Wikidata-Identifikator beginnt mit Q und wird von einer Zahl gefolgt" } } -} \ No newline at end of file +} diff --git a/langs/el.json b/langs/el.json new file mode 100644 index 000000000..0967ef424 --- /dev/null +++ b/langs/el.json @@ -0,0 +1 @@ +{} diff --git a/langs/en.json b/langs/en.json index cd11e14f2..97116c6cc 100644 --- a/langs/en.json +++ b/langs/en.json @@ -130,7 +130,7 @@ "osm": "OpenStreetMap is an online map which can be edited and reused by anyone for any purpose as long as attribution is given and the data is kept open.\n\nIt is the biggest geospatial database in the world and is reused by thousands of applications and websites.", "tagline": "Collect geodata with OpenStreetMap", "title": "mapcomplete.org", - "toerisme_vlaanderen": "For joint project with Visit Flanders, 'Pin your point' was created. Over 160 contributors added a few thousand benches and picnictables and spotted 100 charging station for bicycles.", + "toerisme_vlaanderen": "For a joint project with Visit Flanders, 'Pin your point' was created. Over 160 contributors added a few thousand benches and picnic tables, and spotted 100 charging stations for bicycles.", "whatIsOsm": "What is OpenStreetMap?" }, "general": { @@ -224,7 +224,7 @@ "customThemeTitle": "Custom themes", "download": { "custom": { - "download": "Download PNG of {width}mm wide and {height}mm high", + "download": "Download a {width}mm wide and {height}mm high PNG", "downloadHelper": "This is meant for print", "height": "Image height (in mm):", "title": "Download an image with a custom width and height", @@ -258,8 +258,8 @@ "toMuch": "There are to many features to download them all", "uploadGpx": "Upload your track to OpenStreetMap" }, - "enableGeolocationForSafari": "Did you not get the popup to ask for geopermission?", - "enableGeolocationForSafariLink": "Learn how to enable the geolocation permission in settings", + "enableGeolocationForSafari": "Did you not get the popup to ask for location permission?", + "enableGeolocationForSafariLink": "Learn how to enable location permission in settings", "eraseValue": "Erase this value", "error": "Something went wrong", "example": "Example", @@ -270,7 +270,7 @@ "disableAll": "Disable all", "enableAll": "Enable all" }, - "geopermissionDenied": "Using the geolocation was denied", + "geopermissionDenied": "Location permission was denied", "getStartedLogin": "Log in with OpenStreetMap to get started", "getStartedNewAccount": " or create a new account", "goToInbox": "Open inbox", @@ -595,10 +595,33 @@ "seeNearby": "Browse nearby pictures", "title": "Nearby streetview imagery" }, + "panoramax": { + "deletionRequested": "The report has been sent. A moderator will look to it shortly", + "freeform": "Is there other relevant information?", + "otherFreeform": "Please specify why this image should be removed:", + "placeholder": "Explain why the picture should be deleted", + "report": { + "blur_excess": "To much is blurred, making the picture useless", + "blur_missing": "A face or license plate is not blurred in this picture", + "copyright": "The picture contains copyrighted content", + "inappropriate": "This picture is inappropriate (it contains nudity, calls for hate or is not streetview)", + "mislocated": "The picture is from a different location", + "other": "Another reason, please specify", + "picture_low_quality": "The picture is of low quality", + "privacy": "The picture shows a private property" + }, + "requestDeletion": "Request picture deletion", + "title": "Why should this image be permanently deleted?" + }, "pleaseLogin": "Please log in to add a picture", "processing": "The server is processing your image", "respectPrivacy": "Do not upload from Google Maps, Google Streetview or other copyrighted sources.", "toBig": "Your image is too large as it is {actual_size}. Please use images of at most {max_size}", + "unlink": { + "button": "Unlink picture", + "explanation": "By unlinking this image, this picture will not be shown anymore with this object. It will still appear in the nearby-images and possibly other objects.", + "title": "Unlink this image?" + }, "upload": { "failReasons": "You might have lost connection to the internet", "failReasonsAdvanced": "Alternatively, make sure your browser and extensions do not block third-party API's.", @@ -608,6 +631,7 @@ "someFailed": "Sorry, we could not upload {count} images", "uploading": "{count} images are getting uploaded…" }, + "noBlur": "Images will not be blurred. Do not photograph people", "one": { "done": "Your image was successfully uploaded. Thank you!", "failed": "Sorry, we could not upload your image", diff --git a/langs/es.json b/langs/es.json index eaec9c9a8..d2630b9b9 100644 --- a/langs/es.json +++ b/langs/es.json @@ -1,473 +1,483 @@ { "advanced": { - "title": "Funciones avanzadas" + "title": "Funcionalidades avanzadas" }, "centerMessage": { - "allFilteredAway": "Ningun elemento a la vista cumple todos los filtros", + "allFilteredAway": "Ningún elemento a la vista cumple con todos los filtros", "loadingData": "Cargando datos…", - "noData": "No hay elementos pertinentes en la vista actual", - "ready": "Hecho!", - "retrying": "La carga de datos ha fallado. Volviéndolo a probar en {count} segundos…", - "zoomIn": "Amplía para ver o editar los datos" + "noData": "No hay elementos relevantes en la vista actual", + "ready": "¡Listo!", + "retrying": "Error al cargar los datos. Intentando de nuevo en {count} segundos…", + "zoomIn": "Acerca para ver o editar los datos" }, "communityIndex": { "available": "Esta comunidad habla {native}", - "intro": "Ponte en contacto con otras personas para conocerlas, aprender de ellas, …", + "intro": "Conéctate con otras personas para conocerlas, aprender de ellas,…", "notAvailable": "Esta comunidad no habla {native}", - "title": "Ponte en contacto con otros" + "title": "Conéctate con otros" }, "delete": { "cancel": "Cancelar", - "cannotBeDeleted": "Este elemento no puede ser eliminado", + "cannotBeDeleted": "Este elemento no se puede eliminar", "delete": "Eliminar", "deletedTitle": "Elemento eliminado", "explanations": { - "hardDelete": "Este elemento será eliminado en OpenStreetMap. Puede ser recuperada por un colaborador experimentado", - "retagNoOtherThemes": "Este elemento será reclasificado y ocultado en esta aplicación", - "retagOtherThemes": "Este elemento será reetiquetado y visible en {otherThemes}", - "selectReason": "Por favor, selecciona el motivo por el que este elemento debe ser eliminado", - "softDelete": "Este elemento se actualizará y se ocultará de esta aplicación. {reason}" + "hardDelete": "Este elemento se eliminará en OpenStreetMap. Puede ser recuperado por un colaborador experimentado", + "retagNoOtherThemes": "Este elemento se reclasificará y se ocultará en esta aplicación", + "retagOtherThemes": "Este elemento se volverá a etiquetar y será visible en {otherThemes}", + "selectReason": "Por favor, selecciona por qué este elemento debería eliminarse", + "softDelete": "Este elemento se actualizará y se ocultará en esta aplicación. {reason}" }, - "isChanged": "Este elemento ha sido cambiado y ya no coincide con esta capa", - "isDeleted": "Esta función se ha eliminado", - "isntAPoint": "Solo los nodos pueden ser eliminados, el elemento seleccionado es una vía, área o relación.", - "loading": "Inspecciona las propiedades para comprobar si este elemento puede ser eliminado.", - "loginToDelete": "Debes de haber iniciado sesión para eliminar un elemento", - "notEnoughExperience": "Este elemento fue hecho por otra persona.", - "onlyEditedByLoggedInUser": "Este elemento solo ha sido editado por ti, puedes eliminarlo de manera segura.", - "partOfOthers": "Este nodo forma parte de alguna vía o relación y no se puede eliminar directamente.", - "readMessages": "Tienes mensajes sin leer. Léelos antes de eliminar un elemento - alguien puede tener algún comentario", + "isChanged": "Este elemento ha sido modificado y ya no coincide con esta capa", + "isDeleted": "Este elemento está eliminado", + "isntAPoint": "Solo se pueden eliminar nodos, el elemento seleccionado es una línea, área o relación.", + "loading": "Inspeccionando propiedades para verificar si este elemento se puede eliminar.", + "loginToDelete": "Debes iniciar sesión para eliminar un elemento", + "notEnoughExperience": "Este elemento fue creado por otra persona.", + "onlyEditedByLoggedInUser": "Este elemento solo ha sido editado por ti, puedes eliminarlo sin problemas.", + "partOfOthers": "Este nodo es parte de alguna línea o relación y no se puede eliminar directamente.", + "readMessages": "Tienes mensajes sin leer. Léelos antes de eliminar un elemento, alguien podría tener comentarios", "reasons": { - "disused": "Este elemento está fuera de uso o eliminado", + "disused": "Este elemento está en desuso o eliminado", "duplicate": "Este elemento es un duplicado de otro elemento", - "notFound": "No se pudo encontrar esta función", - "test": "Este era un elemento de pruebas - el elemento en realidad nunca estuvo ahí" + "notFound": "Este elemento no se pudo encontrar", + "test": "Este era un elemento de prueba, el elemento nunca existió realmente" }, - "safeDelete": "Este elemento puede ser eliminado con seguridad.", - "useSomethingElse": "Utilice otro editor de OpenStreetMap para eliminarlo", + "safeDelete": "Este elemento se puede eliminar sin problemas.", + "useSomethingElse": "Usa otro editor de OpenStreetMap para eliminarlo", "whyDelete": "¿Por qué debería eliminarse este elemento?" }, "external": { - "allAreApplied": "Todos los valores externos que faltan se han copiado en OpenStreetMap", - "allIncluded": "El dato cargado desde {source} está contenida en OpenStreetMap", + "allAreApplied": "Todos los valores externos faltantes se han copiado en OpenStreetMap", + "allIncluded": "Los datos cargados desde {source} están contenidos en OpenStreetMap", "apply": "Aplicar", - "applyAll": "Aplicar todos los valores perdidos", + "applyAll": "Aplicar todos los valores faltantes", "conflicting": { - "intro": "OpenStreetMap tiene un valor diferente al sitio web de origen para los siguientes valores.", + "intro": "OpenStreetMap tiene un valor diferente al del sitio web de origen para los siguientes valores.", "title": "Elementos conflictivos" }, - "currentInOsmIs": "Por el momento, OpenStreetMap tiene el siguiente valor registrado:", + "currentInOsmIs": "Actualmente, OpenStreetMap tiene registrado el siguiente valor:", "done": "Listo", - "error": "Los datos vinculados no se pudieron cargar desde el sitio web", + "error": "No se pudieron cargar los datos vinculados desde el sitio web", "lastModified": "Los datos externos se modificaron por última vez el {date}", - "loadedFrom": "Los siguientes datos se cargan desde {source} usando el JSON-LD integrado", + "loadedFrom": "Los siguientes datos se cargan desde {source} usando JSON-LD incrustado", "missing": { "intro": "OpenStreetMap no tiene información sobre los siguientes atributos", - "title": "Elementos que faltan" + "title": "Elementos faltantes" }, "noDataLoaded": "El sitio web externo no tiene datos vinculados que se puedan cargar", "overwrite": "Sobrescribir en OpenStreetMap", - "title": "Datos estructurados cargados desde un sitio externo" + "title": "Datos estructurados cargados desde el sitio web externo" }, "favourite": { - "loginNeeded": "

Iniciar sesión

El diseño personalizado solo está disponible para los usuarios de OpenStreetMap", + "loginNeeded": "

Iniciar sesión

Un diseño personal solo está disponible para usuarios de OpenStreetMap", "panelIntro": "

Tu tema personal

Activa tus capas favoritas de todos los temas oficiales", - "reload": "Recargar datos" + "reload": "Recargar los datos" }, "favouritePoi": { "button": { - "isFavourite": "Esta ubicación está marcada como favorita y aparecerá en todos los mapas temáticos de MapComplete que visites.", + "isFavourite": "Esta ubicación está actualmente marcada como favorita y aparecerá en todos los mapas temáticos de MapComplete que visites.", "isMarkedShort": "Marcada como ubicación favorita", - "isNotMarkedShort": "No marcada como favorito", + "isNotMarkedShort": "No marcada como favorita", "markAsFavouriteTitle": "Marcar esta ubicación como favorita", - "markDescription": "Añadir esta ubicación a una lista personal de tus favoritos", - "unmark": "Quitar de la lista personal de favoritos", - "unmarkNotDeleted": "Este punto no será borrado y todavía será visible para ti y otros en el mapa correspondiente" + "markDescription": "Agrega esta ubicación a una lista personal de tus favoritos", + "unmark": "Eliminar de tu lista personal de favoritos", + "unmarkNotDeleted": "Este punto no se eliminará y seguirá siendo visible en el mapa apropiado para ti y para otros" }, - "downloadGeojson": "Descarga tus favoritos como geojson", - "downloadGpx": "Descarga tus favoritos como GPX", - "intro": "Has marcado {length} ubicaciones como favoritas.", - "introPrivacy": "Esta lista sólo es visible para ti", - "loginToSeeList": "Inicia sesión para ver la lista de ubicaciones marcadas como favoritas", - "tab": "Tus favoritos y opiniones", + "downloadGeojson": "Descargar tus favoritos como geojson", + "downloadGpx": "Descargar tus favoritos como GPX", + "intro": "Marcaste {length} ubicaciones como favoritas.", + "introPrivacy": "Esta lista solo es visible para ti", + "loginToSeeList": "Inicia sesión para ver la lista de ubicaciones que marcaste como favoritas", + "tab": "Tus favoritos y reseñas", "title": "Tus ubicaciones favoritas" }, "flyer": { - "aerial": "Este mapa utiliza un fondo diferente, concretamente imágenes aéreas por Agentschap Informatie Vlaanderen", - "callToAction": "Pruebalo en mapcomplete.org", - "cyclofix": "Bombas de aire de bicicleta, estaciones de reparación, agua potable y tiendas de bicicletas están en CycloFix", - "description": "Un folleto A4-landscape para promover a MapComplete", + "aerial": "Este mapa usa un fondo diferente, concretamente imágenes aéreas de Agentschap Informatie Vlaanderen", + "callToAction": "Pruébalo en mapcomplete.org", + "cyclofix": "Bombas de bicicleta, estaciones de reparación, agua potable y tiendas de bicicletas están en CycloFix", + "description": "Un folleto A4 apaisado para promocionar MapComplete", "editing": { - "ex": "A continuación se muestra un ejemplo simplificado de lo que esto supone para una reserva natural.", + "ex": "A continuación se muestra un ejemplo simplificado de cómo se ve esto para una reserva natural.", "intro": "El usuario es recibido por un mapa con elementos. Al seleccionar uno, se muestra la información sobre ese elemento.", - "title": "Cómo se ve la interfaz?" + "title": "¿Cómo se ve la interfaz?" }, - "examples": "Hay muchos mapas temáticos disponibles de los cuales algunos se muestran aquí.\n\nHay muchos más mapas temáticos en línea: sobre salud, navegación interior, accesibilidad para sillas de ruedas, instalaciones de desechos, bibliotecas públicas, cruces peatonales con pintura arco iris,… Descúbrelos todos en mapcomplete.org", + "examples": "Hay muchos mapas temáticos disponibles, algunos de los cuales se muestran aquí.\n\nHay muchos más mapas temáticos en línea: sobre atención médica, navegación interior, accesibilidad para sillas de ruedas, instalaciones de residuos, bibliotecas públicas, pasos de peatones con pintura arcoíris,… Descúbrelos todos en mapcomplete.org", "fakeui": { - "add_images": "Añade imágenes con unos pocos clics", - "attributes": "Muestra atributos de una manera amistosa", - "edit": "Información incorrecta o anticuada? El botón de edición está justo ahí.", + "add_images": "Agrega imágenes con unos pocos clics", + "attributes": "Muestra los atributos de forma amigable", + "edit": "¿Información incorrecta o desactualizada? El botón de edición está ahí.", "question": "Si un atributo aún no se conoce, MapComplete muestra una pregunta", - "see_images": "Muestra imágenes de colaboradores anteriores, Wikipedia, Mapillary, …", - "wikipedia": "Se muestran artículos relacionados con Wikipedia" + "see_images": "Muestra imágenes de colaboradores anteriores, Wikipedia, Mapillary,…", + "wikipedia": "Se muestran los artículos de Wikipedia vinculados" }, - "frontParagraph": "MapComplete es una aplicación web fácil de usar para recopilar datos geográficos en OpenStreetMap, lo que permite recopilar y gestionar datos relevantes de forma abierta, colaborativa y reutilizable.\n\nSe pueden añadir nuevas categorías y atributos a petición.", - "lines_too": "También se muestran líneas y polígonos. Se pueden añadir atributos e imágenes y también actualizar esos objetos.", + "frontParagraph": "MapComplete es una aplicación web fácil de usar para recopilar geodatos en OpenStreetMap, permitiendo la recopilación y gestión de datos relevantes de una manera abierta, colaborativa y reutilizable.\n\nSe pueden agregar nuevas categorías y atributos a pedido.", + "lines_too": "También se muestran líneas y polígonos. Los atributos e imágenes también se pueden agregar y actualizar en esos objetos.", "mapcomplete": { - "customize": "MapComplete se puede adaptar a sus necesidades, con nuevas capas de mapa, nuevas funcionalidades o estilo con los colores y fuentes de sus organizaciones.\nTambién tenemos experiencia lanzando campañas de colaboración masiva de datos geográficos.\nContacta pietervdvn@posteo.net para un presupuesto.", - "intro": "MapComplete es un sitio web que tiene {mapCount} mapas interactivos. Cada mapa permite añadir o actualizar información. Tiene muchas funciones:", - "li0": "Muestra dónde están PDI", - "li1": "Añade nuevos puntos y actualiza información sobre los existentes", - "li2": "Añade información de contacto y horarios de apertura fácilmente", + "customize": "MapComplete se puede adaptar a tus necesidades, con nuevas capas de mapas, nuevas funcionalidades o con los colores y la fuente de tu organización.\nTambién tenemos experiencia en el inicio de campañas para la colaboración masiva de geodatos.\nContacta a pietervdvn@posteo.net para un presupuesto.", + "intro": "MapComplete es un sitio web que tiene {mapCount} mapas interactivos. Cada mapa permite agregar o actualizar información. Tiene muchas funcionalidades:", + "li0": "Mostrar dónde están los PDI", + "li1": "Agregar nuevos puntos y actualizar información sobre los existentes", + "li2": "Agregar información de contacto y horarios de apertura fácilmente", "li3": "Se puede colocar en otros sitios web como iFrame", - "li4": "Integrado dentro del ecosistema OpenStreetMap, que tiene muchas herramientas disponibles", + "li4": "Integrado dentro del ecosistema de OpenStreetMap, que tiene muchas herramientas disponibles", "li5": "Funcionalidad para importar conjuntos de datos existentes", - "li6": "Muchas funciones avanzadas, como detección de árboles y métodos avanzados de introducción de datos", - "li7": "Copiado software libre (licenciado GPL) y gratis para usar", - "title": "Qué es MapComplete?" + "li6": "Muchas funcionalidades avanzadas, como la detección de árboles y métodos de entrada avanzados", + "li7": "Software libre con licencia copyleft (licencia GPL) y gratuito de usar", + "title": "¿Qué es MapComplete?" }, - "onwheels": "También hay disponibles mapas interiores para usuarios de silla de ruedas.", - "osm": "OpenStreetMapa es un mapa en línea que puede ser editado y reutilizado por cualquiera para cualquier fin, siempre que se cite a la fuente y los datos se mantienen abiertos.\n\nEs la base de datos geoespacial más grande del mundo y es reutilizada por miles de aplicaciones y sitios web.", - "tagline": "Recolectar datos geográficos con OpenStreetMap", + "onwheels": "También hay mapas de interiores para usuarios de sillas de ruedas.", + "osm": "OpenStreetMap es un mapa en línea que puede ser editado y reutilizado por cualquiera para cualquier propósito, siempre que se dé atribución y se mantengan los datos abiertos.\n\nEs la base de datos geoespacial más grande del mundo y es reutilizada por miles de aplicaciones y sitios web.", + "tagline": "Recopila geodatos con OpenStreetMap", "title": "mapcomplete.org", - "toerisme_vlaanderen": "Para un proyecto conjunto con Visit Flanders, se creó 'Fijar tu punto'. Más de 160 colaboradores añadieron varios miles de bancos y mesas de picnic y localizaron 100 estaciones de carga para bicicletas.", + "toerisme_vlaanderen": "Para un proyecto conjunto con Visit Flanders, se creó 'Pin your point'. Más de 160 colaboradores agregaron unos pocos miles de bancos y mesas de picnic, y detectaron 100 estaciones de carga para bicicletas.", "whatIsOsm": "¿Qué es OpenStreetMap?" }, "general": { "404": "Esta página no existe", - "about": "Edita OpenStreetMap fácilmente y añade puntos sobre un tema concreto", + "about": "Edita y agrega fácilmente OpenStreetMap para un tema determinado", "aboutMapComplete": { - "intro": "Usa MapComplete para añadir información de OpenStreetMap en un único tema. Responde preguntas y en pocos minutos tus aportación estarán disponibles en todas partes. En la mayoría de los temas puedes añadir imágenes o incluso dejar una reseña. El mantenedor del tema define elementos, preguntas e idiomas para él." + "intro": "Usa MapComplete para agregar información de OpenStreetMap sobre un tema único. Responde preguntas y, en minutos, tus contribuciones estarán disponibles en todas partes. En la mayoría de los temas puedes agregar imágenes o incluso dejar una reseña. El mantenedor del tema define los elementos, las preguntas y los idiomas para él." }, "add": { - "addNew": "Añadir {category}", - "backToSelect": "Selecciones una categoría distinta", - "confirmButton": "Añadir una {category}
Tu contribución es visible para todos
", + "addNew": "Agregar {category}", + "backToSelect": "Selecciona una categoría diferente", + "confirmButton": "Agregar una {category}
Tu adición es visible para todos
", "confirmLocation": "Confirmar esta ubicación", - "confirmTitle": "¿Añadir un {title}?", - "confirmWarning": "El elemento que crees aquí será visible para todos. Por favor, solo agrega objetos al mapa si realmente existen. Muchas aplicaciones utilizan estos datos.", + "confirmTitle": "¿Agregar un/una {title}?", + "confirmWarning": "El elemento que crees aquí será visible para todos. Por favor, solo agrega cosas al mapa si realmente existen. Muchas aplicaciones usan estos datos.", "creating": "Creando un nuevo punto...", "disableFilters": "Desactivar todos los filtros", - "disableFiltersExplanation": "Algunos elementos pueden ocultarse por un filtro", + "disableFiltersExplanation": "Algunos elementos pueden estar ocultos por un filtro", "enableLayer": "Habilitar capa {name}", "hasBeenImported": "Este elemento ya ha sido importado", "import": { - "hasBeenImported": "Este objeto ya ha sido importado", - "howToTest": "Para probar, añade test=true o backend=osm-test a la URL. El conjunto de cambios se imprimirá en la consola. Por favor abre un PR para oficializar este tema para permitir realmente el botón para importar.", + "hasBeenImported": "Este objeto ha sido importado", + "howToTest": "Para probar, agrega test=true o backend=osm-test a la URL. El changeset se imprimirá en la consola. Abre un PR para oficializar este tema y habilitar el botón de importación.", "importTags": "El elemento recibirá {tags}", - "officialThemesOnly": "El botón para importar está desactivado en los temas no oficiales para evitar accidentes", - "wrongType": "Este elemento no es un nodo o una vía y no puede ser importado", - "wrongTypeToConflate": "Este elemento no es un nodo o una vía y no se puede combinar", - "zoomInMore": "Ampliar más para importar este elemento" + "officialThemesOnly": "El botón de importación está deshabilitado para temas no oficiales para evitar accidentes", + "wrongType": "Este elemento no es un nodo o una línea y no se puede importar", + "wrongTypeToConflate": "Este elemento no es un nodo o una línea y no se puede fusionar", + "zoomInMore": "Acerca más para importar este elemento" }, "importTags": "El elemento recibirá {tags}", - "intro": "Has marcado un lugar del que no conocemos los datos.
", - "layerNotEnabled": "La capa {layer} no está activada. Activa esta capa para poder añadir un elemento", - "openLayerControl": "Abrir el control de capas", - "pleaseLogin": "Por favor inicia sesión con OpenStreetMap para añadir un nuevo elemento", - "presetInfo": "El nuevo POI tendrá {tags}", - "stillLoading": "Los datos se siguen cargando. Espera un poco antes de añadir un nuevo elemento.", - "title": "Añadir un elemento nuevo", - "warnVisibleForEveryone": "Su adición será visible para todos", - "wrongType": "Este elemento no es un nodo o una vía y no puede ser importado", - "zoomInFurther": "Acércate más para añadir un elemento", - "zoomInMore": "Aumente el zoom para importar este elemento" + "intro": "Hiciste clic en algún lugar donde aún no se conocen datos.
", + "layerNotEnabled": "La capa {layer} no está habilitada. Habilita esta capa para agregar un elemento", + "openLayerControl": "Abrir el cuadro de control de capas", + "pleaseLogin": "Por favor, inicia sesión con OpenStreetMap para agregar un nuevo elemento", + "presetInfo": "El nuevo PDI tendrá {tags}", + "stillLoading": "Los datos aún se están cargando. Espera un poco antes de agregar un nuevo elemento.", + "title": "Agregar un nuevo elemento", + "warnVisibleForEveryone": "Tu adición será visible para todos", + "wrongType": "Este elemento no es un nodo o una línea y no se puede importar", + "zoomInFurther": "Acerca más para agregar un elemento", + "zoomInMore": "Acerca más para importar este elemento" }, "apply_button": { "appliedOnAnotherObject": "El objeto {id} recibirá {tags}", - "isApplied": "Los cambios serán aplicados" + "isApplied": "Los cambios se han aplicado" }, "attribution": { "attributionBackgroundLayer": "La capa de fondo actual es {name}", "attributionBackgroundLayerWithCopyright": "La capa de fondo actual es {name}: {copyright}", - "attributionContent": "

Todos los datos son proporcionados por OpenStreetMap, reutilizables libremente bajo la Licencia Abierta de Bases de Datos (ODL).

", + "attributionContent": "

Todos los datos son proporcionados por OpenStreetMap, libremente reutilizables bajo la Licencia de Base de Datos Abierta.

", "attributionTitle": "Aviso de atribución", - "codeContributionsBy": "MapComplete ha sido construido por {contributors} y {hiddenCount} colaboradores más", - "donate": "Apoya a MapComplete de manera financiera", + "codeContributionsBy": "MapComplete ha sido creado por {contributors} y {hiddenCount} colaboradores más", + "donate": "Apoya MapComplete económicamente", "editId": "Abre el editor en línea de OpenStreetMap aquí", - "editJosm": "Edita aquí conJOSM", - "emailCreators": "Enviar un correo electrónico a los creadores", - "followOnMastodon": "Seguir a MapComplete en Mastodon", + "editJosm": "Edita aquí con JOSM", + "emailCreators": "Envía un correo electrónico a los creadores", + "followOnMastodon": "Sigue a MapComplete en Mastodon", "gotoSourceCode": "Ver el código fuente", "iconAttribution": { - "title": "Iconos usados" + "title": "Iconos utilizados" }, - "josmNotOpened": "No se pudo llegar a JSOM. Asegúrate de que está abierto y que el control remoto esta activado", + "josmNotOpened": "No se pudo acceder a JOSM. Asegúrate de que esté abierto y que el control remoto esté habilitado", "josmOpened": "JOSM está abierto", - "madeBy": "Realizado por {author}", - "mapContributionsBy": "La información visible actual tiene ediciones hechas por {contributors}", - "mapContributionsByAndHidden": "Los datos visibles actuales tienen cambios hechos por {contributors} y {hiddenCount} colaboradores más", + "madeBy": "Hecho por {author}", + "mapContributionsBy": "Los datos visibles actuales tienen ediciones realizadas por {contributors}", + "mapContributionsByAndHidden": "Los datos visibles actuales tienen ediciones realizadas por {contributors} y {hiddenCount} colaboradores más", "mapDataByOsm": "Datos del mapa: OpenStreetMap", - "mapillaryHelp": "Mapillary es un servicio en línea que recoge imágenes a pie de calle y las ofrece bajo una licencia libre. Los colaboradores pueden utilizar estas imágenes para mejorar OpenStreetMap", + "mapillaryHelp": "Mapillary es un servicio en línea que recopila imágenes a nivel de calle y las ofrece bajo una licencia gratuita. Los colaboradores pueden usar estas imágenes para mejorar OpenStreetMap", "openIssueTracker": "Reportar un error", "openMapillary": "Abrir Mapillary aquí", - "openOsmcha": "Ver las últimas ediciones hechas con {theme}", + "openOsmcha": "Ver las últimas ediciones realizadas con {theme}", "openOsmchaLastWeek": "Ver ediciones de los últimos 7 días", "openPanoramax": "Abrir Panoramax aquí", "openThemeDocumentation": "Abrir la documentación para el mapa temático {name}", - "panoramaxHelp": "Panoramax es un servicio en línea que recoge imágenes a pie de calle y las ofrece bajo una licencia libre. Los colaboradores pueden utilizar estas imágenes para mejorar OpenStreetMap", - "seeOnMapillary": "Vea esta imagen en Mapillary", + "panoramaxHelp": "Panoramax es un servicio en línea que recopila imágenes a nivel de calle y las ofrece bajo una licencia gratuita. Los colaboradores pueden usar estas imágenes para mejorar OpenStreetMap", + "panoramaxLicenseCCBYSA": "Tus imágenes se publican bajo CC-BY-SA: todos pueden reutilizar tu imagen si mencionan tu nombre", + "seeOnMapillary": "Ver esta imagen en Mapillary", "themeBy": "Tema mantenido por {author}", - "title": "Derechos de autor y atribución", - "translatedBy": "MapComplete ha sido traducido por {contributors} y {hiddenCount} colaboradores más " + "title": "Copyright y atribución", + "translatedBy": "MapComplete ha sido traducido por {contributors} y {hiddenCount} colaboradores más" }, "back": "Atrás", "backToIndex": "Ver todos los mapas temáticos", "backToMap": "Volver al mapa", - "backgroundMap": "Seleccione una capa de fondo", + "backgroundMap": "Selecciona una capa de fondo", "backgroundSwitch": "Cambiar fondo", "cancel": "Cancelar", "clearPendingChanges": "Borrar cambios pendientes", "confirm": "Confirmar", - "customThemeIntro": "Estos son los temas generados por los usuarios que han sido visitados previamente.", + "customThemeIntro": "Estos son temas generados por usuarios visitados anteriormente.", "customThemeTitle": "Temas personalizados", "download": { "custom": { - "download": "Descargar PNG de {width}mm de ancho y {height}mm de alto", - "downloadHelper": "Esto está pensado para imprimir", + "download": "Descargar una imagen PNG de {width}mm de ancho y {height}mm de alto", + "downloadHelper": "Esto es para imprimir", "height": "Altura de la imagen (en mm):", - "title": "Descarga una imagen con un ancho y alto personalizados", - "width": "Ancho de imagen (en mm): " + "title": "Descargar una imagen con un ancho y alto personalizados", + "width": "Ancho de la imagen (en mm): " }, "downloadAsPdf": "Descargar un PDF del mapa actual", "downloadAsPdfHelper": "Ideal para imprimir el mapa actual", "downloadAsPng": "Descargar como imagen", "downloadAsPngHelper": "Ideal para incluir en informes", "downloadAsSvg": "Descargar un SVG del mapa actual", - "downloadAsSvgHelper": "Compatible con Inkscape o Adobe Illustrator; necesitará más procesado", - "downloadAsSvgLinesOnly": "Descarga un SVG del mapa actual que solo contenga líneas", - "downloadAsSvgLinesOnlyHelper": "Las líneas que se autointerceptan se dividen y pueden utilizarse con algunos programas 3D", - "downloadCSV": "Descargar los datos visibles como CSV", - "downloadCSVHelper": "Compatible con LibreOffice Calc, Excel, …", - "downloadFeatureAsGeojson": "Descargar como un GeoJSON", + "downloadAsSvgHelper": "Compatible con Inkscape o Adobe Illustrator; necesitará un procesamiento adicional", + "downloadAsSvgLinesOnly": "Descargar un SVG del mapa actual que solo contiene líneas", + "downloadAsSvgLinesOnlyHelper": "Las líneas que se intersecan se dividen, se pueden usar con algún software 3D", + "downloadCSV": "Descargar datos visibles como CSV", + "downloadCSVHelper": "Compatible con LibreOffice Calc, Excel,…", + "downloadFeatureAsGeojson": "Descargar como archivo GeoJSON", "downloadFeatureAsGpx": "Descargar como archivo GPX", - "downloadGeoJsonHelper": "Compatible con QGIS, ArcGIS, ESRI, …", - "downloadGeojson": "Descargar los datos visibles como GeoJSON", + "downloadGeoJsonHelper": "Compatible con QGIS, ArcGIS, ESRI,…", + "downloadGeojson": "Descargar datos visibles como GeoJSON", "downloadGpx": "Descargar como archivo GPX", - "downloadGpxHelper": "Un archivo GPX puede utilizarse con la mayoría de los dispositivos y aplicaciones de navegación", + "downloadGpxHelper": "Un archivo GPX se puede usar con la mayoría de los dispositivos y aplicaciones de navegación", "downloadImage": "Descargar imagen", "exporting": "Exportando…", - "includeMetaData": "Incluir metadatos (último editor, valores calculados, ...)", - "licenseInfo": "

Aviso de derechos

Los datos proporcionados están disponibles bajo ODbL. Reutilizarlos es gratis para cualquier propósito, pero
  • se debe mostrar la atribución colaboradores de © OpenStreetMap
  • Cualquier cambio debe publicarse bajo la misma licencia
Por favor, lee todo el aviso de derechos de autor para más detalles.", - "noDataLoaded": "Aún no se han cargado ningunos daos. La descarga estará disponible próximamente", + "includeMetaData": "Incluir metadatos (último editor, valores calculados,…)", + "licenseInfo": "

Aviso de copyright

Los datos proporcionados están disponibles bajo ODbL. Su reutilización es gratuita para cualquier propósito, pero
  • la atribución © OpenStreetMap contributors debe mostrarse
  • Cualquier cambio debe publicarse bajo la misma licencia
Lee el aviso de copyright completo para más detalles.", + "noDataLoaded": "Aún no se han cargado datos. La descarga estará disponible pronto", "pdf": { - "current_view_generic": "Exportar un archivo PDF de la vista actual en {paper_size} con orientación {orientation}" + "current_view_generic": "Exportar un PDF de la vista actual para {paper_size} en orientación {orientation}" }, "title": "Descargar", "toMuch": "Hay demasiados elementos para descargarlos todos", "uploadGpx": "Sube tu traza a OpenStreetMap" }, - "enableGeolocationForSafari": "¿No te ha aparecido la ventana emergente para pedir permiso de ubicación?", - "enableGeolocationForSafariLink": "Aprende a activar el permiso de ubicación en los ajustes", + "enableGeolocationForSafari": "¿No te apareció la ventana emergente para pedir permiso de ubicación?", + "enableGeolocationForSafariLink": "Aprende cómo habilitar el permiso de ubicación en los ajustes", "eraseValue": "Borrar este valor", - "error": "Algo fue mal", + "error": "Algo salió mal", "example": "Ejemplo", "examples": "Ejemplos", - "fewChangesBefore": "Por favor, responda algunas preguntas sobre los elementos existentes antes de añadir un nuevo elemento.", + "fewChangesBefore": "Por favor, responde algunas preguntas de elementos existentes antes de agregar un nuevo elemento.", "filterPanel": { "allTypes": "Todos los tipos", - "disableAll": "Desactivar todos", - "enableAll": "Activar todos" + "disableAll": "Deshabilitar todos", + "enableAll": "Habilitar todos" }, - "geopermissionDenied": "Se denegó el uso de la ubicación", - "getStartedLogin": "Entra en OpenStreetMap para empezar", + "geopermissionDenied": "Se denegó el permiso de ubicación", + "getStartedLogin": "Inicia sesión con OpenStreetMap para comenzar", "getStartedNewAccount": " o crea una nueva cuenta", - "goToInbox": "Abrir mensajes", + "goToInbox": "Abrir bandeja de entrada", "histogram": { "error_loading": "No se pudo cargar el histograma" }, "labels": { "background": "Cambiar fondo", "filter": "Filtrar datos", - "jumpToLocation": "Ir a la ubicación actual", - "locationNotAvailable": "Ubicación GPS no disponible. ¿La has activado en tu dispositivo o estás en un túnel?", + "jumpToLocation": "Ir a tu ubicación actual", + "locationNotAvailable": "Ubicación GPS no disponible. ¿Tiene este dispositivo ubicación o estás en un túnel?", "menu": "Menú", "zoomIn": "Acercar", "zoomOut": "Alejar" }, "layerSelection": { "title": "Seleccionar capas", - "zoomInToSeeThisLayer": "Amplía para ver esta capa" + "zoomInToSeeThisLayer": "Acerca para ver esta capa" }, "levelSelection": { - "addNewOnLevel": "¿El nuevo punto de ubicación se encuentra en el nivel {level}?", - "confirmLevel": "Sí, añadir {preset} en nivel {level}" + "addNewOnLevel": "¿La ubicación del nuevo punto está en el nivel {level}?", + "confirmLevel": "Sí, agregar {preset} en el nivel {level}" }, "loading": "Cargando…", "loadingTheme": "Cargando {theme}…", - "loginFailed": "El inicio de sesión en OpenStreetMap falló", - "loginFailedOfflineMode": "OpenStreetMap.org no está disponible por mantenimiento. Pronto será posible realizar modificaciones", - "loginFailedReadonlyMode": "OpenStreetMap.org se encuentra en modo solo lectura por mantenimiento. Pronto será posible realizar modificaciones", - "loginFailedUnreachableMode": "Actualmente no se puede acceder a OpenStreetMap.org. ¿Estás conectado a internet o bloqueas el acceso a terceros? Inténtalo de nuevo más tarde", + "loginFailed": "Error al iniciar sesión en OpenStreetMap", + "loginFailedOfflineMode": "OpenStreetMap.org no está disponible actualmente debido a mantenimiento. Pronto será posible realizar ediciones", + "loginFailedReadonlyMode": "OpenStreetMap.org está actualmente en modo de solo lectura debido a mantenimiento. Pronto será posible realizar ediciones", + "loginFailedUnreachableMode": "OpenStreetMap.org no es accesible actualmente. ¿Estás conectado a internet o bloqueas a terceros? Intenta de nuevo más tarde", "loginOnlyNeededToEdit": "si quieres hacer cambios", - "loginToStart": "Entra para contestar esta pregunta", - "loginWithOpenStreetMap": "Acceder con OpenStreetMap", - "logout": "Cerrar la sesión", - "mappingsAreHidden": "Algunas opciones están ocultas. Utiliza la búsqueda para mostrar más opciones.", + "loginToStart": "Inicia sesión para responder esta pregunta", + "loginWithOpenStreetMap": "Iniciar sesión con OpenStreetMap", + "logout": "Cerrar sesión", + "mappingsAreHidden": "Algunas opciones están ocultas. Usa la búsqueda para mostrar más opciones.", "menu": { - "aboutCurrentThemeTitle": "Sobre este mapa", - "aboutMapComplete": "Sobre MapComplete", + "aboutCurrentThemeTitle": "Acerca de este mapa", + "aboutMapComplete": "Acerca de MapComplete", "filter": "Filtrar datos", - "moreUtilsTitle": "Descubrir más", + "moreUtilsTitle": "Descubre más", + "openHereDifferentApp": "Abrir la ubicación actual en otras aplicaciones", "showIntroduction": "Mostrar introducción", "title": "Menú" }, "morescreen": { - "createYourOwnTheme": "Crea tu propia petición completa de MapComplete desde cero", - "enterToOpen": "Pulsa Entrar para abrir el tema", - "hiddenExplanation": "Estos temas solo son visibles para aquellos con el enlace. Has descubierto {hidden_discovered} de {total_hidden} temas ocultos.", + "createYourOwnTheme": "Crea tu propio tema de MapComplete desde cero", + "enterToOpen": "Presiona enter para abrir el tema", + "hiddenExplanation": "Estos temas solo son accesibles para aquellos que tienen el enlace. Has descubierto {hidden_discovered} de {total_hidden} temas ocultos.", "noMatchingThemes": "Ningún tema coincide con tus criterios de búsqueda", "noSearch": "Mostrar todos los temas", - "previouslyHiddenTitle": "Temas ocultos previamente visitados", - "requestATheme": "Si quieres hacer un tema personalizado, solicítalo en el gestor de incidencias", + "previouslyHiddenTitle": "Temas ocultos visitados anteriormente", + "requestATheme": "Si quieres un tema personalizado, solicítalo en el rastreador de incidencias", "searchForATheme": "Buscar un tema", "streetcomplete": "Otra aplicación similar es StreetComplete." }, - "nameInlineQuestion": "{category}: Su nombre es $$$", + "nameInlineQuestion": "El nombre de este/a {category} es $$$", "next": "Siguiente", - "noMatchingMapping": "No hay registros que coincidan con tu búsqueda…", + "noMatchingMapping": "Ninguna entrada coincide con tu búsqueda…", "noNameCategory": "{category} sin nombre", "noTagsSelected": "No se han seleccionado etiquetas", "notValid": "Selecciona un valor válido para continuar", "number": "número", - "openStreetMapIntro": "

Un mapa abierto

¿No sería genial si hubiera un solo mapa, que todos pudieran usar y editar libremente?¿Un solo lugar para almacenar toda la información geográfica? Entonces, todos esos sitios web con mapas diferentes, pequeños e incompatibles (que siempre están desactualizados) ya no serían necesarios.

OpenStreetMap es ese mapa. Los datos del mapa se pueden utilizar de forma gratuita (con atribución y publicación de cambios en esos datos). Además de eso, todos pueden agregar libremente nuevos datos y corregir errores. Este sitio web también usa OpenStreetMap. Todos los datos provienen de allí, y tus respuestas y correcciones también se añadirán allí.

Muchas personas y aplicaciones ya usan OpenStreetMap: Maps.me, OsmAnd, pero también los mapas de Facebook, Instagram, Apple y Bing son (en parte) impulsados por OpenStreetMap. Si cambias algo aquí, también se reflejará en esas aplicaciones, en su próxima actualización

", + "openStreetMapIntro": "

Un mapa abierto

Uno que todos pueden usar y editar libremente. Un solo lugar para almacenar toda la información geográfica. No se necesitan mapas diferentes, pequeños, incompatibles y desactualizados en ninguna parte.

OpenStreetMap no es el mapa enemigo. Los datos del mapa se pueden usar libremente (con atribución y publicación de cambios a esos datos). Todos pueden agregar nuevos datos y corregir errores. Este sitio web usa OpenStreetMap. Todos los datos provienen de ahí, y tus respuestas y correcciones se usan en todas partes.

Muchas personas y aplicaciones ya usan OpenStreetMap: Organic Maps, OsmAnd, pero también los mapas de Facebook, Instagram, Apple Maps y Bing Maps están (parcialmente) impulsados por OpenStreetMap.

", "openTheMap": "Abrir el mapa", - "openTheMapAtGeolocation": "Haz zoom a tu ubicación", - "openTheMapReason": "para ver, editar y añadir información", + "openTheMapAtGeolocation": "Acercar a tu ubicación", + "openTheMapReason": "para ver, editar y agregar información", "opening_hours": { - "all_days_from": "Abierto cada día {ranges}", - "closed_permanently": "Cerrado - sin día de apertura conocido", + "all_days_from": "Abierto todos los días {ranges}", + "closed_permanently": "Cerrado por tiempo indefinido", "closed_until": "Abre el {date}", - "error": "No se pudo analizar las horas de apertura", - "error_loading": "Error: no se han podido visualizar esos horarios de apertura.", - "friday": "Viernes {ranges}", + "error": "No se pudieron analizar los horarios de apertura", + "error_loading": "Error: no se pudieron visualizar estos horarios de apertura.", + "friday": "El viernes {ranges}", "loadingCountry": "Determinando país…", - "monday": "Lunes {ranges}", - "not_all_rules_parsed": "El horario de esta tienda es complejo. Las siguientes normas serán ignoradas en la entrada de datos:", - "on_weekdays": "Abierto en días laborales {ranges}", + "monday": "El lunes {ranges}", + "not_all_rules_parsed": "Estos horarios de apertura son complicados. Las siguientes reglas se ignoran en el elemento de entrada:", + "on_weekdays": "Abierto los días de semana {ranges}", "on_weekends": "Abierto los fines de semana {ranges}", "openTill": "hasta", - "open_24_7": "Abierto todo el día", - "open_during_ph": "Durante un festivo está", + "open_24_7": "Abierto las 24 horas", + "open_during_ph": "Durante un feriado, está", "opensAt": "desde", "ph_closed": "cerrado", "ph_not_known": " ", "ph_open": "abierto", - "ph_open_as_usual": "abierto, como siempre", + "ph_open_as_usual": "abierto, como de costumbre", "ranges": "desde {starttime} hasta {endtime}", "rangescombined": "{range0} y {range1}", - "saturday": "Sábado {ranges}", - "sunday": "Domingo {ranges}", - "thursday": "Jueves {ranges}", - "tuesday": "Martes {ranges}", - "unknown": "Se desconocen las horas de apertura", - "wednesday": "Miércoles {ranges}" + "saturday": "El sábado {ranges}", + "sunday": "El domingo {ranges}", + "thursday": "El jueves {ranges}", + "tuesday": "El martes {ranges}", + "unknown": "Se desconocen los horarios de apertura", + "wednesday": "El miércoles {ranges}" }, - "osmLinkTooltip": "Mira este objeto en OpenStreetMap para ver historial y otras opciones de edición", + "osmLinkTooltip": "Explora este objeto en OpenStreetMap para ver el historial y más opciones de edición", "pdf": { - "attr": "Datos cartográficos © colaboradores de OpenStreetMap, reutilizables en virtud de la ODbL", + "attr": "Datos del mapa © OpenStreetMap Contributors, reutilizables bajo ODbL", "attrBackground": "Capa de fondo: {background}", - "generatedWith": "Generado como mapcomplete.org/{layoutid}", + "generatedWith": "Generado con mapcomplete.org/{layoutid}", "versionInfo": "v{version} - generado el {date}" }, - "pickLanguage": "Elige el idioma", - "poweredByMapComplete": "Impulsado por MapComplete - de colaboración masiva, mapas temáticos con OpenStreetMap", + "pickLanguage": "Seleccionar idioma", + "poweredByMapComplete": "Impulsado por MapComplete: mapas temáticos colaborativos con OpenStreetMap", "poweredByOsm": "Impulsado por OpenStreetMap", "questionBox": { - "answeredMultiple": "Has respondido {answered} preguntas", - "answeredMultipleSkippedMultiple": "Has respondido {answered} preguntas y te has saltado {skipped} preguntas", - "answeredMultipleSkippedOne": "Has respondido {answered} preguntas y te has saltado una pregunta", - "answeredOne": "Has respondido una pregunta", - "answeredOneSkippedMultiple": "Has respondido una pregunta y te has saltado {skipped} preguntas", - "answeredOneSkippedOne": "Has respondido una pregunta y te has saltado una pregunta", + "answeredMultiple": "Respondiste {answered} preguntas", + "answeredMultipleSkippedMultiple": "Respondiste {answered} preguntas y saltaste {skipped} preguntas", + "answeredMultipleSkippedOne": "Respondiste {answered} preguntas y saltaste una pregunta", + "answeredOne": "Respondiste una pregunta", + "answeredOneSkippedMultiple": "Respondiste una pregunta y saltaste {skipped} preguntas", + "answeredOneSkippedOne": "Respondiste una y saltaste una pregunta", "done": "¡No hay más preguntas! ¡Gracias!", - "reactivate": "Volver a activar las preguntas omitidas", - "skippedMultiple": "Te has saltado {skipped} preguntas", - "skippedOne": "Te has saltado una pregunta" + "reactivate": "Reactivar preguntas saltadas", + "skippedMultiple": "Saltaste {skipped} preguntas", + "skippedOne": "Saltaste una pregunta" }, - "readYourMessages": "Lee todos tus mensajes de OpenStreetMap antes de añadir nuevos elementos.", - "removeLocationHistory": "Eliminar el historial de ubicaciones", + "questions": { + "emailIs": "El correo electrónico de este/a {category} es {email}", + "emailOf": "¿Cuál es el correo electrónico de {category}?", + "phoneNumberIs": "El número de teléfono de este/a {category} es {phone}", + "phoneNumberOf": "¿Cuál es el número de teléfono de {category}?", + "websiteIs": "Sitio web: {website}", + "websiteOf": "¿Cuál es el sitio web de {category}?" + }, + "readYourMessages": "Por favor, lee todos tus mensajes de OpenStreetMap antes de agregar un nuevo elemento.", + "removeLocationHistory": "Eliminar el historial de ubicación", "retry": "Reintentar", "returnToTheMap": "Volver al mapa", "save": "Guardar", - "screenToSmall": "Abrir {theme} en una ventana nueva", + "screenToSmall": "Abrir {theme} en una nueva ventana", "search": { "activeFilters": "Filtros activos", - "clearFilters": "Limpiar filtros", + "clearFilters": "Borrar filtros", "deleteSearchHistory": "Eliminar historial de ubicación", "deleteThemeHistory": "Eliminar temas visitados anteriormente", "editSearchSyncSettings": "Editar ajustes de sincronización", "editThemeSync": "Editar ajustes de sincronización", - "error": "Alguna cosa no ha ido bien…", - "instructions": "Utiliza la barra de búsqueda de arriba para buscar ubicaciones, filtros u otros mapas temáticos", + "error": "Algo salió mal…", + "instructions": "Usa la barra de búsqueda de arriba para buscar ubicaciones, filtros u otros mapas temáticos", "locations": "Ubicaciones", "nMoreFilters": "{n} más", "nothing": "Nada encontrado…", - "nothingFor": "No se han encontrado resultados para {term}", + "nothingFor": "No se encontraron resultados para {term}", "otherMaps": "Otros mapas", - "pickFilter": "Elige un filtro", + "pickFilter": "Elegir un filtro", "recentThemes": "Mapas visitados recientemente", "recents": "Lugares vistos recientemente", - "search": "Busca una ubicación", + "search": "Buscar una ubicación", "searchShort": "Buscar…", "searching": "Buscando…" }, "searchAnswer": "Buscar una opción…", - "seeIndex": "Ver la vista general con todos los mapas temáticos", + "seeIndex": "Ver el resumen con todos los mapas temáticos", "share": "Compartir", "sharescreen": { - "copiedToClipboard": "Enlace copiado en el portapapeles", + "copiedToClipboard": "Enlace copiado al portapapeles", "documentation": "Para más información sobre los parámetros de URL disponibles, consulta la documentación", - "embedIntro": "

Integrado en tu página web

Por favor, incluye este mapa en tu página web.
Te animamos a hacerlo, no hace falta que pidas permiso.
Es gratis, y siempre lo será. A más gente que lo use más valioso será.", - "fsBackground": "Activar el cambio del fondo", - "fsFilter": "Activar la posibilidad de cambiar las capas y filtros", - "fsGeolocation": "Activar la ubicación", - "fsUserbadge": "Activa el botón de inicio de sesión y por lo tanto la posibilidad de hacer cambios", - "fsWelcomeMessage": "Muestra el mensaje emergente de bienvenida y pestañas asociadas", - "intro": "Comparte este mapa copiando el enlace de debajo y enviándolo a amigos y familia:", - "openInOtherApplications": "Abrir la ubicación actual con otra aplicación de mapa", + "embedIntro": "

Integrar en tu sitio web

Por favor, integra este mapa en tu sitio web.
Te animamos a hacerlo, ni siquiera tienes que pedir permiso.
Es gratis, y siempre lo será. Cuanto más gente lo use, más valioso se vuelve.", + "fsBackground": "Habilitar el cambio de fondos", + "fsFilter": "Habilitar la posibilidad de alternar capas y filtros", + "fsGeolocation": "Habilitar geolocalización", + "fsUserbadge": "Habilitar el botón de inicio de sesión y, por lo tanto, la posibilidad de realizar cambios", + "fsWelcomeMessage": "Mostrar la ventana emergente del mensaje de bienvenida y las pestañas asociadas", + "intro": "Comparte este mapa copiando el enlace a continuación y enviándolo a tus amigos y familiares:", + "openInOtherApplications": "Abrir la ubicación actual con otra aplicación de mapas", "openLayers": "Abrir el menú de capas y filtros", "options": "Opciones para compartir", - "stateIsIncluded": "El estado actual de las capas y filtros está incluido en el enlace compartido y en el iframe.", - "thanksForSharing": "Gracias por compartir!", - "title": "Comparte este mapa" + "stateIsIncluded": "El estado actual de las capas y los filtros se incluye en el enlace compartido y el iframe.", + "thanksForSharing": "¡Gracias por compartir!", + "title": "Compartir este mapa" }, "skip": "Saltar esta pregunta", - "testing": "Probando - los cambios no se guardarán", + "testing": "Prueba: los cambios no se guardarán", "uploadError": "Error al subir los cambios: {error}", "uploadGpx": { - "choosePermission": "Elige a continuación como se debe compartir tu trazado:", + "choosePermission": "Elige a continuación cómo se debe compartir tu traza:", "confirm": "Confirmar subida", - "gpxServiceOffline": "El servicio GPX está actualmente fuera de línea - en este momento no es posible subir archivos. Vuelve a intentarlo más tarde.", - "intro0": "Al subir tu trazado, OpenStreetMap.org conservará una copia completa del mismo.", - "intro1": "Podrás descargar tus recorridos de nuevo y cargarlos de nuevo en los programas de edición de OpenStreetMap", + "gpxServiceOffline": "El servicio GPX está actualmente fuera de línea: la subida no es posible actualmente. Intenta de nuevo más tarde.", + "intro0": "Al subir tu traza, OpenStreetMap.org retendrá una copia completa de la traza.", + "intro1": "Podrás descargar tu traza de nuevo y cargarla en programas de edición de OpenStreetMap", "meta": { - "descriptionIntro": "Opcionalmente, puede introducir una descripción de tu trazado:", - "descriptionPlaceHolder": "Introducir una descripción de tu trazado", - "intro": "Añadir un título a tu recorrido:", + "descriptionIntro": "Opcionalmente, puedes ingresar una descripción de tu traza:", + "descriptionPlaceHolder": "Ingresa una descripción de tu traza", + "intro": "Agrega un título para tu traza:", "title": "Título y descripción", - "titlePlaceholder": "Introduce el título de tu trazado" + "titlePlaceholder": "Ingresa el título de tu traza" }, "modes": { "private": { - "docs": "Los puntos de tu recorrido serán compartidos y añadidos entre otros recorridos. El recorrido completo será visible para ti y podrás cargarlo en otros programas de edición. OpenStreetMap.org mantiene una copia de tu trazado", + "docs": "Los puntos de tu traza se compartirán y agregarán entre otras trazas. La traza completa será visible para ti y podrás cargarla en otros programas de edición. OpenStreetMap.org conserva una copia de tu traza", "name": "Anónimo" }, "public": { - "docs": "Tu trazado será visible para todos, tanto en tu perfil de usuario como en la lista de trazados GPS en openstreetmap.org", + "docs": "Tu traza será visible para todos, tanto en tu perfil de usuario como en la lista de trazas GPS en openstreetmap.org", "name": "Público" } }, - "title": "Sube tu recorrido a OpenStreetMap.org", - "uploadFinished": "¡Se ha subido tu recorrido!", - "uploading": "Cargando su trazo…" + "title": "Subir tu traza a OpenStreetMap.org", + "uploadFinished": "¡Tu traza ha sido subida!", + "uploading": "Subiendo tu traza…" }, "uploadPending": "{count} cambios pendientes", "uploadPendingSingle": "Un cambio pendiente", "uploadingChanges": "Subiendo cambios…", - "useSearch": "Utiliza la búsqueda de arriba para ver más opciones", + "useSearch": "Usa la búsqueda de arriba para ver más opciones", "visualFeedback": { - "closestFeaturesAre": "{n} elementos dentro de la ventana gráfica.", + "closestFeaturesAre": "{n} elementos dentro de la vista.", "directionsAbsolute": { "E": "este", "N": "norte", @@ -479,43 +489,43 @@ "W": "oeste" }, "directionsRelative": { - "behind": "detrás", + "behind": "detrás tuyo", "left": "izquierda", "right": "derecha", - "sharp_left": "bruscamente a la izquierda", - "sharp_right": "bruscamente a la derecha", + "sharp_left": "fuertemente a la izquierda", + "sharp_right": "fuertemente a la derecha", "slight_left": "ligeramente a la izquierda", "slight_right": "ligeramente a la derecha", - "straight": "en línea recta" + "straight": "recto hacia adelante" }, - "east": "Hacia el este", + "east": "Moviéndose hacia el este", "fromGps": "{distance} {direction} de tu ubicación", "fromMapCenter": "{distance} {direction} del centro del mapa", - "in": "Acercarse a nivel {z}", - "islocked": "La vista está bloqueada a tu ubicación GPS, movimiento desactivado. Pulsa el botón de ubicación para desbloquear.", - "locked": "La vista ahora está bloqueada a tu ubicación GPS, movimiento desactivado.", - "navigation": "Usa las teclas de flecha para mover el mapa, pulsa Espacio para seleccionar el elemento más cercano. Pulsa un número para seleccionar las ubicaciones más lejanas.", - "noCloseFeatures": "Sin elementos en la vista.", - "north": "Hacia el norte", - "oneFeatureInView": "Un elemento dentro de la ventana gráfica.", - "out": "Alejarse a nivel {z}", - "south": "Hacia el sur", - "unlocked": "Movimiento activado.", - "viewportCenterCloseToGps": "El mapa está centrado en tu ubicación.", - "viewportCenterDetails": "El centro de la ventana está alejado {distance} y {bearing} de tu ubicación.", - "west": "Hacia el oeste" + "in": "Acercando al nivel {z}", + "islocked": "Vista bloqueada en tu ubicación GPS, movimiento deshabilitado. Presiona el botón de geolocalización para desbloquear.", + "locked": "La vista ahora está bloqueada en tu ubicación GPS, movimiento deshabilitado.", + "navigation": "Usa las flechas para mover el mapa, presiona espacio para seleccionar el elemento más cercano. Presiona un número para seleccionar ubicaciones más lejanas.", + "noCloseFeatures": "No hay elementos en la vista.", + "north": "Moviéndose hacia el norte", + "oneFeatureInView": "Un elemento dentro de la vista.", + "out": "Alejando al nivel {z}", + "south": "Moviéndose hacia el sur", + "unlocked": "Movimiento habilitado.", + "viewportCenterCloseToGps": "El mapa está centrado alrededor de tu ubicación.", + "viewportCenterDetails": "El centro de la vista está a {distance} de distancia y {bearing} de tu ubicación.", + "west": "Moviéndose hacia el oeste" }, - "waitingForGeopermission": "Esperando tu permiso para utilizar la ubicación…", + "waitingForGeopermission": "Esperando tu permiso para usar la geolocalización…", "waitingForLocation": "Buscando tu ubicación actual…", "weekdays": { "abbreviations": { "friday": "Vie", "monday": "Lun", - "saturday": "Sab", + "saturday": "Sáb", "sunday": "Dom", "thursday": "Jue", "tuesday": "Mar", - "wednesday": "Mie" + "wednesday": "Mié" }, "friday": "Viernes", "monday": "Lunes", @@ -527,24 +537,24 @@ }, "welcomeBack": "¡Bienvenido de nuevo!", "welcomeExplanation": { - "addNew": "¿Falta un objeto? Utiliza el botón en la parte inferior izquierda para añadir un nuevo punto de interés.", - "general": "En este mapa, puedes ver, editar y añadir puntos de interés. Haz zoom para ver los POI, toca uno para ver o editar la información. Todos los datos proceden y se guardan en OpenStreetMap, que puede reutilizarse libremente." + "addNew": "¿Falta algún elemento? Usa el botón en la parte inferior izquierda para agregar un nuevo punto de interés.", + "general": "En este mapa, puedes ver, editar y agregar puntos de interés. Navega para ver los PDI, toca uno para ver o editar la información. Todos los datos provienen y se guardan en OpenStreetMap, que se puede reutilizar libremente." }, "wikipedia": { - "addEntry": "Añadir otra página de Wikipedia", - "createNewWikidata": "Crear un nuevo ítem Wikidata", + "addEntry": "Agregar otra página de Wikipedia", + "createNewWikidata": "Crear un nuevo elemento de Wikidata", "doSearch": "Busca arriba para ver los resultados", - "failed": "La carga de la entrada de Wikipedia falló", + "failed": "Error al cargar la entrada de Wikipedia", "fromWikipedia": "De Wikipedia, la enciclopedia libre", "loading": "Cargando Wikipedia…", - "noResults": "No se encontró nada para {search}", - "noWikipediaPage": "Este ítem de wikidata aún no tiene una página de Wikipedia correspondiente.", + "noResults": "Nada encontrado para {search}", + "noWikipediaPage": "Este elemento de Wikidata aún no tiene una página de Wikipedia correspondiente.", "previewbox": { - "born": "Nacido: {value}", - "died": "Murió: {value}" + "born": "Nacimiento: {value}", + "died": "Fallecimiento: {value}" }, "readMore": "Leer el resto del artículo", - "searchToShort": "Tu búsqueda es demasiado corta, introduce un texto más largo", + "searchToShort": "Tu consulta de búsqueda es demasiado corta, ingresa un texto más largo", "searchWikidata": "Buscar en Wikidata", "wikipediaboxTitle": "Wikipedia" } @@ -552,165 +562,194 @@ "hotkeyDocumentation": { "action": "Acción", "closeSidebar": "Cerrar la barra lateral", - "geolocate": "Desplaza, amplia o aleja el mapa hasta la ubicación actual. Solicita permisos de ubicación", + "geolocate": "Mover el mapa a la ubicación actual o acercar el mapa a la ubicación actual. Solicita permiso de geolocalización", "intro": "MapComplete admite las siguientes teclas:", - "key": "Combinaciones de teclas", - "openFilterPanel": "Abre las capas POI y el panel de filtro", - "openLayersPanel": "Abrir selección de las capas del fondo", - "queryCurrentLocation": "Muestra la dirección más cercana al centro del mapa", - "selectAerial": "Establece el fondo con imágenes aéreas o de satélite. Alterna entre las dos mejores capas disponibles", - "selectFavourites": "Abre la página de favoritos", - "selectItem": "Seleccione el PDI más cercano al centro del mapa (cruz). Solo cuando se utiliza la navegación por teclado", - "selectItem2": "Seleccione el PDI que es el segundo elemento más cercano al centro del mapa (cruz). Solo cuando se utiliza la navegación mediante el teclado", - "selectItem3": "Seleccione el PDI que es el tercer elemento más cercano al centro del mapa (cruz). Solo cuando se utiliza la navegación mediante el teclado", - "selectSearch": "Selecciona la barra de búsqueda para buscar ubicaciones", - "shakePhone": "Agitar tu teléfono", + "key": "Combinación de teclas", + "openFilterPanel": "Abre el panel de capas y filtros de PDI", + "openLayersPanel": "Abre el panel de capas de fondo", + "queryCurrentLocation": "Mostrar la dirección más cercana al centro del mapa", + "selectAerial": "Establecer el fondo a imágenes aéreas o de satélite. Alterna entre las dos mejores capas disponibles", + "selectFavourites": "Abrir la página de favoritos", + "selectItem": "Seleccionar el PDI más cercano al centro del mapa (cruz). Solo cuando se utiliza la navegación por teclado", + "selectItem2": "Seleccionar el segundo elemento más cercano al centro del mapa (cruz). Solo cuando se utiliza la navegación por teclado", + "selectItem3": "Seleccionar el tercer elemento más cercano al centro del mapa (cruz). Solo cuando se utiliza la navegación por teclado", + "selectItemI": "Seleccionar el elemento {i} más cercano al centro del mapa (cruz). Solo cuando se utiliza la navegación por teclado", + "selectMap": "Establecer el fondo a un mapa de fuentes externas. Alterna entre las dos mejores capas disponibles", + "selectMapnik": "Establecer la capa de fondo a OpenStreetMap-carto", + "selectOsmbasedmap": "Establecer la capa de fondo en un mapa basado en OpenStreetMap (o deshabilitar la capa ráster de fondo)", + "selectSearch": "Seleccionar la barra de búsqueda para buscar ubicaciones", + "shakePhone": "Agitando tu teléfono", "title": "Atajos de teclado", "translationMode": "Activar o desactivar el modo de traducción" }, "image": { - "addPicture": "Añadir foto", + "addPicture": "Agregar imagen", "currentLicense": "Tus imágenes se publicarán bajo {license}", - "doDelete": "Borrar imagen", + "doDelete": "Eliminar imagen", "dontDelete": "Cancelar", - "isDeleted": "Borrada", + "isDeleted": "Eliminado", "nearby": { - "close": "Ocultar panel de imágenes cercanas", - "failed": "Ha fallado la búsqueda de imágenes de {service}", + "close": "Contraer el panel con imágenes cercanas", + "failed": "Error al obtener imágenes de {service}", "link": "Esta imagen muestra el objeto", - "noNearbyImages": "No se han encontrado imágenes cercanas", - "seeNearby": "Explorar fotos cercanas" + "noNearbyImages": "No se encontraron imágenes cercanas", + "seeNearby": "Ver imágenes cercanas", + "title": "Imágenes a nivel calle cercanas" }, - "pleaseLogin": "Accede para cargar una imagen", - "processing": "El servidor está procesando tu imagen", - "respectPrivacy": "No cargues datos de Google Maps, Google StreetView u otras fuentes protegidas por derechos de autor.", - "toBig": "Tu imagen es demasiado grande, ya que pesa {actual_size}. Por favor utiliza imágenes de como máximo {max_size}", - "upload": { - "failReasons": "Debes haber perdido la conexión a Internet", - "failReasonsAdvanced": "Alternativamente, asegúrate de que tu navegador y las extensiones no bloquean las APIs de terceros.", - "multiple": { - "done": "Se han subido {count} imágenes con éxito. ¡Gracias!", - "partiallyDone": "Se están subiendo {count} imágenes, {done} imágenes están listas…", - "someFailed": "Lo sentimos, no pudimos subir {count} imágenes", - "uploading": "Se están subiendo {count} imágenes…" + "panoramax": { + "deletionRequested": "El informe ha sido enviado. Un moderador lo examinará en breve", + "freeform": "¿Hay alguna otra información pertinente?", + "otherFreeform": "Por favor, especifique por qué debe eliminarse esta imagen:", + "placeholder": "Explicar por qué la imagen debe ser eliminada", + "report": { + "blur_excess": "Demasiado borrosa, haciendo la imagen inútil", + "blur_missing": "Una cara o placa de matrícula no está borrosa en esta imagen", + "copyright": "La imagen contiene contenido protegido por derechos de autor", + "inappropriate": "Esta imagen es inapropiada (contiene desnudez, incita al odio o no es streetview)", + "mislocated": "La imagen es de una ubicación diferente", + "other": "Otra razón, por favor especifíquese", + "picture_low_quality": "La imagen es de baja calidad", + "privacy": "La imagen muestra una propiedad privada" }, + "requestDeletion": "Solicitar la eliminación de una imagen", + "title": "¿Por qué debería esta imagen ser eliminada permanentemente?" + }, + "pleaseLogin": "Por favor, inicia sesión para agregar una imagen", + "processing": "El servidor está procesando tu imagen", + "respectPrivacy": "No subas imágenes de Google Maps, Google Street View u otras fuentes con derechos de autor.", + "toBig": "Tu imagen es demasiado grande, tiene {actual_size}. Por favor, usa imágenes de como máximo {max_size}", + "unlink": { + "button": "Desvincular imagen", + "explanation": "Al desvincular esta imagen, esta imagen ya no se mostrará con este objeto. Todavía aparecerá en las imágenes cercanas y posiblemente otros objetos.", + "title": "¿Desvincular esta imagen?" + }, + "upload": { + "failReasons": "Podrías haber perdido la conexión a internet", + "failReasonsAdvanced": "Alternativamente, asegúrate de que tu navegador y extensiones no bloqueen las API de terceros.", + "multiple": { + "done": "{count} imágenes se han subido correctamente. ¡Gracias!", + "partiallyDone": "{count} imágenes se están subiendo, {done} imágenes están listas…", + "someFailed": "Lo sentimos, no pudimos subir {count} imágenes", + "uploading": "{count} imágenes se están subiendo…" + }, + "noBlur": "Las imágenes no se mostrarán borrosas. No fotografíes a personas", "one": { - "done": "Tu imagen se ha subido con éxito. ¡Gracias!", + "done": "¡Tu imagen se ha subido correctamente! ¡Gracias!", "failed": "Lo sentimos, no pudimos subir tu imagen", "retrying": "Tu imagen se está subiendo de nuevo…", "uploading": "Tu imagen se está subiendo…" } }, - "uploadDone": "Se ha añadido la imagen. Gracias por ayudar!", - "uploadFailed": "No se pudo subir la imagen. ¿Tiene conexión a Internet y permite APIs de terceros? El navegador Brave o el complemento uMatrix podrían bloquearlas.", - "uploadMultipleDone": "Se han añadido {count} imágenes. Gracias por ayudar!", - "uploadingMultiple": "Cargando {count} imágenes…", - "uploadingPicture": "Cargando la imagen…" + "uploadDone": "¡Tu imagen ha sido agregada! ¡Gracias por ayudar!", + "uploadFailed": "No se pudo subir tu imagen. ¿Estás conectado a Internet y permites las API de terceros? El navegador Brave o el complemento uMatrix podrían bloquearlas.", + "uploadMultipleDone": "{count} imágenes han sido agregadas. ¡Gracias por ayudar!", + "uploadingMultiple": "Subiendo {count} imágenes…", + "uploadingPicture": "Subiendo tu imagen…" }, "importInspector": { - "title": "Inspeccionar y gestionar las notas de importación" + "title": "Inspeccionar y gestionar notas de importación" }, "importLayer": { - "alreadyMapped": "{title} ya está en el mapa - este punto es un duplicado", - "description": "Una capa que importar entradas para {title}", - "importButton": "import_button({layerId},_tags, He encontrado un {title} aquí - añádelo al mapa,./assets/svg/addSmall.svg,,,id)", - "importHandled": "
¡Se ha gestionado este elemento! Gracias por tu labor
", + "alreadyMapped": "{title} ya está en el mapa: este punto es un duplicado", + "description": "Una capa que importa entradas para {title}", + "importButton": "import_button({layerId}, _tags, He encontrado un/una {title} aquí: agrégalo al mapa,./assets/svg/addSmall.svg,,,id)", + "importHandled": "
¡Este elemento ha sido gestionado! Gracias por tu esfuerzo
", "layerName": "Posible {title}", - "nearbyImagesIntro": "

Imágenes cercanas

Las siguientes imágenes son imágenes geoetiquetadas cerca de varios servicios en línea. Pueden ayudarte a resolver esta nota. {nearby_images(open)}", - "notFound": "No he podido encontrar {title} - eliminarlo", - "popupTitle": "Puede haber {title} aquí" + "nearbyImagesIntro": "

Imágenes cercanas

Las siguientes imágenes son imágenes geoetiquetadas cercanas de varios servicios en línea. Podrían ayudarte a resolver esta nota.{nearby_images(open)}", + "notFound": "No pude encontrar {title}: elimínalo", + "popupTitle": "Podría haber un/una {title} aquí" }, "index": { - "#": "Estos textos son mostrados sobre los botones del tema cuando no hay un tema cargado", - "about": "Sobre MapComplete", - "featuredThemeTitle": "Esta semana destacamos", - "intro": "Mapas sobre diversos temas a los que puedes contribuir", - "learnMore": "Más información", - "logIn": "Inicia sesión para ver otros temas que visitaste anteriormente", - "pickTheme": "Elige un tema de abajo para empezar.", + "#": "Estos textos se muestran sobre los botones del tema cuando no hay ningún tema cargado", + "about": "Acerca de MapComplete", + "featuredThemeTitle": "Recomendado esta semana", + "intro": "Mapas sobre varios temas a los que puedes contribuir", + "learnMore": "Aprende más", + "logIn": "Inicia sesión para ver otros temas que has visitado anteriormente", + "pickTheme": "Elige un tema a continuación para comenzar.", "title": "MapComplete" }, "move": { - "cancel": "Elige una razón diferente", + "cancel": "Seleccionar una razón diferente", "cannotBeMoved": "Este elemento no se puede mover.", "confirmMove": "Mover aquí", "inviteToMove": { "generic": "Mover este punto", "reasonInaccurate": "Mejorar la precisión de este punto", - "reasonRelocation": "Mover este objeto a otro lugar porque se ha relocalizado" + "reasonRelocation": "Mover este objeto a otro lugar porque se ha reubicado" }, - "inviteToMoveAgain": "Mover este punto otra vez", + "inviteToMoveAgain": "Mover este punto de nuevo", "isRelation": "Este elemento es una relación y no se puede mover", - "isWay": "Este elemento es una vía. Utiliza otro editor de OpenStreetMap para moverlo.", - "loginToMove": "Debes de iniciar sesión para mover un punto", + "isWay": "Este elemento es una línea. Usa otro editor de OpenStreetMap para moverlo.", + "loginToMove": "Debes iniciar sesión para mover un punto", "moveTitle": "Mover este punto", - "partOfAWay": "Este elemento es parte de otra vía. Utiliza otro editor para moverlo.", - "partOfRelation": "Este elemento es parte de una relación. Utiliza otro editor para moverlo.", - "pointIsMoved": "Este punto ha sido eliminado", + "partOfAWay": "Este elemento es parte de otra línea. Usa otro editor para moverlo.", + "partOfRelation": "Este elemento es parte de una relación. Usa otro editor para moverlo.", + "pointIsMoved": "El punto ha sido movido", "reasons": { - "reasonInaccurate": "La ubicación es inexacta por unos pocos metros", - "reasonRelocation": "El objeto a sido relocalizado a una localización completamente diferente", - "reasonSnapTo": "Esto se debe encajar en {name}" + "reasonInaccurate": "La ubicación es imprecisa en unos pocos metros", + "reasonRelocation": "El objeto ha sido reubicado a una ubicación totalmente diferente", + "reasonSnapTo": "Esto debería ajustarse a {name}" }, - "selectReason": "¿Por qué has movido este objeto?", + "selectReason": "¿Por qué mueves este objeto?", "whyMove": "¿Por qué quieres mover este punto?", - "zoomInFurther": "Acercar más para confirmar este movimiento" + "zoomInFurther": "Acerca más para confirmar este movimiento" }, "multi_apply": { - "autoApply": "Cuando se cambian los atributos {attr_names}, estos atributos también se cambiarán automáticamente en otros {count} objetos" + "autoApply": "Al cambiar los atributos {attr_names}, estos atributos también se cambiarán automáticamente en otros {count} objetos" }, "notes": { - "addAComment": "Añadir un comentario", - "addComment": "Añadir comentario", - "addCommentAndClose": "Añadir un comentario y cerrar", - "addCommentPlaceholder": "Añadir un comentario…", - "anonymous": "Usuarioi anónimo", + "addAComment": "Agregar un comentario", + "addComment": "Agregar comentario", + "addCommentAndClose": "Agregar comentario y cerrar", + "addCommentPlaceholder": "Agregar un comentario…", + "anonymous": "Usuario anónimo", "closeNote": "Cerrar nota", - "createNote": "Crear una nota nueva", - "createNoteIntro": "¿Hay algún error o falta algo en el mapa? Crea una nota aquí. Estas serán revisadas por voluntarios.", + "createNote": "Crear una nueva nota", + "createNoteIntro": "¿Algo está mal o falta en el mapa? Crea una nota aquí. Estas serán revisadas por voluntarios.", "createNoteTitle": "Crear una nueva nota aquí", "creating": "Creando nota…", - "disableAllNoteFilters": "Deshabilitar todos los filtros", + "disableAllNoteFilters": "Desactivar todos los filtros", "isClosed": "Esta nota está resuelta", "isCreated": "¡Tu nota ha sido creada!", - "loginToAddComment": "Inicia sesión para añadir un comentario", - "loginToAddPicture": "Inicia sesión para añadir una imagen", + "loginToAddComment": "Inicia sesión para agregar un comentario", + "loginToAddPicture": "Inicia sesión para agregar una imagen", "loginToClose": "Inicia sesión para cerrar esta nota", - "noteIsPublic": "Esto será visible para cualquiera", + "noteIsPublic": "Esto será visible para todos", "noteLayerDoEnable": "Habilitar la capa que muestra las notas", "noteLayerHasFilters": "Algunas notas pueden estar ocultas por un filtro", - "noteLayerNotEnabled": "La capa que muestra las notas no está activada. Esta capa debe activarse para añadir una nota nueva", - "notesLayerMustBeEnabled": "La capa de notas está deshabilitada. Habilítala para añadir una nota", + "noteLayerNotEnabled": "La capa que muestra las notas no está habilitada. Esta capa debe estar habilitada para agregar una nueva nota", + "notesLayerMustBeEnabled": "La capa 'notas' está deshabilitada. Habilítala para agregar una nota", "reopenNote": "Reabrir nota", - "reopenNoteAndComment": "Reabrir la nota y comentar", - "textNeeded": "Introduce un texto descriptivo para crear una nota", - "typeText": "Teclea algún texto para añadir un comentario", + "reopenNoteAndComment": "Reabrir nota y comentar", + "textNeeded": "Ingresa un texto descriptivo para crear una nota", + "typeText": "Escribe algo de texto para agregar un comentario", "warnAnonymous": "No has iniciado sesión. No podremos contactarte para resolver tu problema." }, "plantDetection": { - "back": "Volver a la vista general de especies", - "button": "Detectar la especie de planta automáticamente usando la IA de Plantnet.org", + "back": "Volver al resumen de especies", + "button": "Detectar automáticamente la especie vegetal usando la IA de Plantnet.org", "confirm": "Seleccionar especie", - "done": "La especie se ha aplicado", - "error": "Algo falló mientras se detectaban las especies de árbol: {error}", + "done": "La especie ha sido aplicada", + "error": "Algo salió mal al detectar la especie del árbol: {error}", "howTo": { - "intro": "Para resultados óptimos,", - "li0": "toma una foto que muestre el árbol en el centro sin demasiado fondo", - "li1": "toma una foto que muestre un sola hoja", + "intro": "Para obtener resultados óptimos,", + "li0": "toma una foto que muestre el árbol en el centro sin mucho fondo", + "li1": "toma una foto que muestre una sola hoja", "li2": "toma una foto que muestre la corteza", "li3": "toma una foto de las flores", - "li4": "toma una foto de las frutas" + "li4": "toma una foto de los frutos" }, "loadingWikidata": "Cargando información sobre {species}…", - "matchPercentage": "coincidencia {match}%", - "overviewIntro": "LA IA de plantnet.org cree que las imágenes muestran las especies a continuación.", - "overviewTitle": "Detectar especies automáticamente", - "overviewVerify": "Por favor, verifica las especies correctas y enlázala al árbol", + "matchPercentage": "{match}% de coincidencia", + "overviewIntro": "La IA de plantnet.org cree que las imágenes muestran las especies a continuación.", + "overviewTitle": "Especies detectadas automáticamente", + "overviewVerify": "Por favor, verifica que la especie sea correcta y enlázala al árbol", "poweredByPlantnet": "Impulsado por plantnet.org", "querying": "Consultando plantnet.org con {length} imágenes", - "seeInfo": "Más información sobre las especies", + "seeInfo": "Ver más información sobre la especie", "takeImages": "Toma imágenes del árbol para detectar automáticamente el tipo de árbol", - "tryAgain": "Selecciona una especie diferente" + "tryAgain": "Seleccionar una especie diferente" }, "preset_type": { "question": "¿De qué tipo es este objeto?", @@ -718,83 +757,85 @@ "typeTitle": "Esto es {title}" }, "privacy": { - "editingIntro": "Cuando efectúas un cambio al mapa, este cambio se registra en OpenStreetMap y está disponible públicamente a cualquiera. Un conjunto de cambios hecho con MapComplete incluye los siguientes datos:", - "editingOutro": "Por favor consulta la política de privacidad en OpenStreetMap.org para obtener información detallada. Queremos recordarte que puedes utilizar un nombre ficticio al registrarte.", - "editingTitle": "Cuando se hagan cambios", - "geodata": "Cuando MapComplete consigue tu ubicación, tu ubicación y las ubicaciones previamente visitadas se mantienen en tu dispositivo. Tus datos de localización nunca se envían automáticamente a ningún otro sitio - a menos que alguna funcionalidad establezca claramente lo contrario.", - "geodataTitle": "Tu ubicación", - "intro": "La privacidad es importante - tanto para el individual como para la sociedad. MapComplete intenta respetar tu privacidad tanto como sea posible - hasta el punto de que no se necesita ningún banner de cookies molesto. Sin embargo, nos gustaría informarte de qué información se recopila, bajo qué circunstancias y por qué se hacen estos compromisos.", + "editingIntro": "Cuando realizas un cambio en el mapa, este cambio se registra en OpenStreetMap y está públicamente disponible para cualquiera. Un changeset realizado con MapComplete incluye los siguientes datos:", + "editingOutro": "Por favor, consulta la política de privacidad en OpenStreetMap.org para obtener información detallada. Nos gustaría recordarte que puedes usar un nombre ficticio al registrarte.", + "editingTitle": "Al realizar cambios", + "geodata": "Cuando MapComplete obtiene tu geolocalización, tu geolocalización y las ubicaciones visitadas anteriormente permanecen en tu dispositivo. Tus datos de ubicación nunca se envían automáticamente a ningún otro lugar, a menos que alguna funcionalidad lo indique claramente.", + "geodataTitle": "Tu geolocalización", + "intro": "La privacidad es importante, tanto para el individuo como para la sociedad. MapComplete intenta respetar tu privacidad tanto como sea posible, hasta el punto de que no se necesita un banner de cookies molesto. Sin embargo, aún queremos informarte qué información se recopila y comparte, bajo qué circunstancias y por qué se hacen estas concesiones.", "items": { - "changesYouMake": "Los cambios que has hecho", - "date": "Cuándo se efectuó el cambio", - "distanceIndicator": "Una indicación de como de cerca estabas a los objetos cambiados. Otros cartógrafos pueden utilizar esta información para determina si un cambio se hizo basándose en un sondeo o en una investigación remota", + "changesYouMake": "Los cambios que hiciste", + "date": "Cuándo se realizó este cambio", + "distanceIndicator": "Una indicación de qué tan cerca estabas de los objetos cambiados. Otros mapeadores pueden usar esta información para determinar si un cambio se realizó en base a una encuesta o a una investigación remota", "language": "El idioma de la interfaz de usuario", - "theme": "El tema que utilizaste mientras que hacías el cambio", + "theme": "El tema que usaste al realizar el cambio", "username": "Tu nombre de usuario" }, - "miscCookies": "MapComplete se integra con otros servicios, especialmente para subir imágenes de elementos. Las imágenes se alojan en varios servidores de terceros, que puede que establezcan cookies por si mismos.", + "miscCookies": "MapComplete se integra con varios otros servicios, especialmente para cargar imágenes de elementos. Las imágenes se alojan en varios servidores de terceros, que pueden establecer sus propias cookies.", "miscCookiesTitle": "Otras cookies", - "surveillance": "Ya que estás leyendo la política de privacidad, probablemente te importe la privacidad - ¡también a nosotros! Incluso hemos hecho un tema que muestra cámaras de seguridad. ¡Siéntete libre de mapearlas todas!", + "surveillance": "Como estás leyendo la política de privacidad, probablemente te preocupe la privacidad, ¡a nosotros también! Incluso hemos creado un tema que muestra cámaras de vigilancia. ¡Siéntete libre de mapearlas todas!", "title": "Política de privacidad", - "tracking": "Para tener una idea de quién visita nuestro sitio web, se recoge alguna información técnica. Esto incluye el país desde el que visitaste MapComplete, el sitio que te refirió a MapComplete, el tipo de tu dispositivo y el tamaño de la pantalla. Una cookie coloca en tu dispositivo para indicar que visitaste MapComplete anteriormente hoy. Estos datos no están suficientemente detallados para identificarte personalmente. Estas estadísticas solo están disponibles a cualquiera en conjunto y están disponibles públicamente a cualquiera", + "tracking": "Para recopilar información sobre quién visita nuestro sitio web, se recopila cierta información técnica. Esto incluye el país desde el que visitaste la página web, qué sitio web te remitió a MapComplete, el tipo de tu dispositivo y el tamaño de la pantalla. Se coloca una cookie en tu dispositivo para indicar que visitaste MapComplete el día de hoy. Estos datos no son lo suficientemente detallados como para identificarte personalmente. Estas estadísticas solo están disponibles para cualquiera en forma agregada y están públicamente disponibles para cualquiera", "trackingTitle": "Datos estadísticos", - "whileYoureHere": "¿Te importa la privacidad?" + "whileYoureHere": "¿Te preocupa la privacidad?" }, "reviews": { - "affiliated_reviewer_warning": "(Revisión afiliada)", + "affiliated_reviewer_warning": "(Reseña afiliada)", "attribution": "Por Mangrove Reviews", - "averageRating": "Puntuación media de {n} estrellas", - "i_am_affiliated": "Estoy afiliado a este objeto", - "i_am_affiliated_explanation": "Comprueba si eres un propietario, creador, empleado, …", - "name_required": "Se requiere un nombre para mostrar y crear comentarios", - "no_reviews_yet": "Todavía no hay comentarios. ¡Sé el primero!", + "averageRating": "Calificación promedio de {n} estrellas", + "i_am_affiliated": "Estoy afiliado con este objeto", + "i_am_affiliated_explanation": "Verifica si eres propietario, creador, empleado,…", + "name_required": "Se requiere un nombre para mostrar y crear reseñas", + "no_reviews_yet": "Aún no hay reseñas. ¡Sé el primero!", "non_place_review": "Una reseña no es sobre un lugar y no se muestra aquí.", "non_place_reviews": "{n} reseñas no son sobre un lugar y no se muestran aquí.", - "question": "¿Cómo valorarías {title()}?", + "question": "¿Cómo calificarías {title()}?", "question_opinion": "¿Cómo fue tu experiencia?", - "rate": "Valorar {n} estrellas", - "rated": "Valorado {n} estrellas", + "rate": "Calificar {n} estrellas", + "rated": "Calificado con {n} estrellas", "reviewPlaceholder": "Describe tu experiencia…", - "reviewing_as": "Opinando como {nickname}", - "reviewing_as_anonymous": "Opinando como anónimo", - "reviews_bug": "¿Esperabas más opiniones? Algunas opiniones no se muestran por un fallo.", - "save": "Guardar opinión", - "saved": "Reseña guardada. ¡Gracias por compartir!", + "reviewing_as": "Reseñando como {nickname}", + "reviewing_as_anonymous": "Reseñando como anónimo", + "reviews_bug": "¿Esperabas más reseñas? Algunas reseñas no se muestran debido a un error.", + "save": "Guardar reseña", + "saved": "¡Reseña guardada! ¡Gracias por compartir!", "saving_review": "Guardando…", - "see_all": "Ver todas tus opiniones en mangrove.reviews", - "title": "{count} comentarios", - "title_singular": "Un comentario", - "too_long": "Como máximo se permiten {max} caracteres. Tu opinión tiene {amount} caracteres.", - "tos": "Si creas una reseña, aceptas los Términos De Servicio y la Política De Privacidad de Mangrove.reviews", + "see_all": "Ver todas tus reseñas en mangrove.reviews", + "title": "{count} reseñas", + "title_singular": "Una reseña", + "too_long": "Se permiten como máximo {max} caracteres. Tu reseña tiene {amount} caracteres.", + "tos": "Si creas una revisión, aceptas los TOS y la política de privacidad de Mangrove.reviews", "write_a_comment": "Deja una reseña…", - "your_reviews": "Tus opiniones anteriores", - "your_reviews_empty": "No pudimos encontrar ninguna de tus opiniones anteriores" + "your_reviews": "Tus reseñas anteriores", + "your_reviews_empty": "No pudimos encontrar ninguna de tus reseñas anteriores" }, "split": { "cancel": "Cancelar", - "hasBeenSplit": "Esta vía se ha dividido", - "inviteToSplit": "Dividir esta carretera en segmentos más pequeños. Esto te permite darle diferentes propiedades a las partes de la carretera.", - "loginToSplit": "Debes de haber iniciado sesión para dividir una carretera", + "hasBeenSplit": "Esta línea ha sido dividida", + "inviteToSplit": "Divide esta carretera en segmentos más pequeños. Esto permite dar diferentes propiedades a partes de la carretera.", + "loginToSplit": "Debes iniciar sesión para dividir una carretera", "split": "Dividir", - "splitAgain": "Dividir este carretera de nuevo", - "splitTitle": "Elije en el mapa donde las propiedades de esta carretera cambian" + "splitAgain": "Dividir esta carretera de nuevo", + "splitTitle": "Elige en el mapa dónde cambian las propiedades de esta carretera" }, "translations": { "activateButton": "Ayuda a traducir MapComplete", - "allMissing": "Aún sin traducciones", + "allMissing": "Aún no hay traducciones", "missing": "{count} cadenas sin traducir", - "notImmediate": "Las traducciones no se actualizan directamente. Habitualmente esto lleva unos días" + "notImmediate": "Las traducciones no se actualizan directamente. Esto normalmente toma unos pocos días" }, "unknown": { "clear": "Borrar respuesta", + "explanation": "Borra esta información si la respuesta actual es incorrecta pero se desconoce el valor real. No se eliminará ninguna otra información.", "keep": "Mantener respuesta", "markUnknown": "Marcar como desconocido", + "removedKeys": "Las siguientes claves se eliminarán:", "title": "¿Marcar como desconocido?" }, "userinfo": { "gotoInbox": "Abrir tu bandeja de entrada", "gotoSettings": "Ir a tus ajustes en OpenStreetMap.org", - "noDescription": "Todavía no tienes una descripción en tu perfil", + "noDescription": "Aún no tienes una descripción en tu perfil", "notLoggedIn": "Has cerrado sesión" }, "validation": { @@ -802,21 +843,23 @@ "description": "Un color o código hexadecimal" }, "date": { - "description": "Una fecha, empezando con el año" + "description": "Una fecha, comenzando con el año" }, "direction": { "description": "Una orientación" }, "distance": { - "description": "Distancia en metros" + "description": "Una distancia en metros" }, "email": { - "description": "dirección de correo electrónico", + "description": "Dirección de correo electrónico", "feedback": "Esta no es una dirección de correo electrónico válida", - "noAt": "Una dirección de correo electrónico debe de contener un @" + "noAt": "Una dirección de correo electrónico debe contener un @" }, "fediverse": { - "invalidHost": "{host} es un nombre de host no válido", + "description": "Un identificador de fediverse, a menudo @nombredeusuario@servidor.tld", + "feedback": "Un identificador de fediverse consiste en @nombredeusuario@servidor.tld o es un enlace a un perfil", + "invalidHost": "{host} no es un nombre de host válido", "onYourServer": "Ver y seguir en tu servidor" }, "float": { @@ -825,17 +868,17 @@ }, "id": { "description": "un identificador", - "invalidCharacter": "Un identificador solo puede contener letras, dígitos y guiones bajos", - "shouldBeLonger": "Un identificador debe tener al menos 3 caracteres" + "invalidCharacter": "Un ID solo puede contener letras, dígitos y guiones bajos", + "shouldBeLonger": "Un ID debe tener al menos 3 caracteres de longitud" }, "int": { "description": "un número entero" }, "nat": { - "description": "un número entero, positivo o cero", - "mustBePositive": "El número debe de ser positivo", + "description": "un número entero positivo o cero", + "mustBePositive": "Este número debe ser positivo", "mustBeWhole": "Solo se permiten números enteros", - "notANumber": "Introduce un número" + "notANumber": "Ingresa un número" }, "opening_hours": { "description": "Horarios de apertura" @@ -846,34 +889,36 @@ "phone": { "description": "un número de teléfono", "feedback": "Este no es un número de teléfono válido", - "feedbackCountry": "Este número de teléfono no es válido (para el país{country})" + "feedbackCountry": "Este no es un número de teléfono válido (para el país {country})" }, "pnat": { "description": "un número entero positivo", - "noZero": "No se permite el cero" + "noZero": "Cero no está permitido" }, "regex": { "description": "una expresión regular" }, "slope": { - "inputExplanation": "Coloca el teléfono en el suelo con la parte superior del teléfono apuntando hacia la parte superior de la pendiente.", - "inputIncorrect": "Para medidas correctas, asegúrate que la flecha se encuentra dentro del área verde." + "inputExplanation": "Coloca tu teléfono en el suelo con la parte superior de tu teléfono apuntando hacia la parte superior de la pendiente.", + "inputIncorrect": "Para mediciones correctas, asegúrate de que la flecha esté dentro del área verde." }, "string": { - "description": "una cadena de texto" + "description": "un fragmento de texto" }, "text": { - "description": "una cadena de texto" + "description": "un fragmento de texto" }, - "tooLong": "El texto es demasiado largo, como mucho se permiten 255 caracteres. Ahora tienes {count} caracteres.", + "tooLong": "El texto es demasiado largo, se permiten como máximo 255 caracteres. Ahora tienes {count} caracteres.", "url": { - "aggregator": "{host} es un sitio web de terceros. Si es posible, busca el sitio web oficial.", + "aggregator": "{host} es un sitio web de terceros. Si es posible, busca en el sitio web oficial.", "description": "enlace a un sitio web", "feedback": "Esta no es una dirección web válida", - "spamSite": "{host} es considerado un sitio web de baja calidad. No se permite usar este sitio web." + "spamSite": "{host} se considera un sitio web de baja calidad. No se permite el uso de este sitio web." }, "wikidata": { - "description": "Un identificador de Wikidata" + "description": "Un identificador de Wikidata", + "empty": "Por favor, ingresa algunas entradas de Wikidata", + "startsWithQ": "Un identificador de Wikidata comienza con Q y le sigue un número" } } -} \ No newline at end of file +} diff --git a/langs/fr.json b/langs/fr.json index a52ad4dfb..29ee02d91 100644 --- a/langs/fr.json +++ b/langs/fr.json @@ -46,6 +46,7 @@ "whyDelete": "Pourquoi cet élément devrait-il être supprimé ?" }, "external": { + "apply": "Appliquer", "done": "Fait", "missing": { "title": "Éléments manquants" @@ -197,6 +198,9 @@ "histogram": { "error_loading": "Erreur de chargement de l’histograme" }, + "labels": { + "jumpToLocation": "Aller à votre emplacement" + }, "layerSelection": { "title": "Selectionner des couches", "zoomInToSeeThisLayer": "Zoomer pour voir cette couche" diff --git a/langs/hu.json b/langs/hu.json index e89a3a118..9e7685a03 100644 --- a/langs/hu.json +++ b/langs/hu.json @@ -1,69 +1,176 @@ { + "advanced": { + "title": "Speciális funkciók" + }, "centerMessage": { + "allFilteredAway": "A nézetben egyetlen objektum sem felel meg az összes szűrőnek", "loadingData": "Adatok betöltése folyamatban…", + "noData": "Az aktuális nézetben nincs megfelelő objektum", "ready": "Kész!", "retrying": "Nem sikerült betölteni az adatokat. Újrapróbálkozás {count} másodperc múlva…", "zoomIn": "Közelíts az adatok megtekintéséhez és szerkesztéséhez" }, + "communityIndex": { + "available": "Ez a közösség {native} nyelven beszél", + "intro": "Lépj kapcsolatba másokkal, hogy megismerd őket, és tanulj tőlük…", + "notAvailable": "Ez a közösség nem beszél {native} nyelven", + "title": "Lépj kapcsolatba másokkal" + }, "delete": { "cancel": "Mégse", - "cannotBeDeleted": "Ez a térkpelem nem törölhető", + "cannotBeDeleted": "Ez az objektum nem törölhető", "delete": "Törlés", + "deletedTitle": "Törölt objektum", "explanations": { - "hardDelete": "Ez a térképelem törlődik az OpenStreetMapről. Csak tapasztalt szerkesztő tudja visszaállítani", - "selectReason": "Kérjük, jelöld meg, miért kellene ezt a térképelemet törölni", - "softDelete": "Ez a térképelem frissülni fog és ebben az alkalmazásban nem fog látszani. {reason}" + "hardDelete": "Ez az objektum törlődik az OpenStreetMapről. Csak tapasztalt szerkesztő tudja visszaállítani", + "retagNoOtherThemes": "Ez az objektum át lesz minősítve és eltűnik ebből az alkalmazásból", + "retagOtherThemes": "Ez az objektum át lesz címkézve és látható lesz itt: {otherThemes}", + "selectReason": "Kérjük, add meg, miért kellene ezt az objektumot törölni", + "softDelete": "Ez az objektum frissülni fog és ebben az alkalmazásban nem fog látszani. {reason}" }, - "isDeleted": "Ez a térképelem törlődött", - "isntAPoint": "Csak pontot lehet törölni, a kiválasztott térképelem viszont vonal, terület vagy kapcsolat.", - "loading": "Tulajdonságok megvizsgálása annak ellenőrzéséhez, hogy a térképelem törölhető-e.", - "loginToDelete": "Térképelem törléséhez be kell jelentkezni", - "notEnoughExperience": "Ezt a térképelemet valaki más készítette.", - "onlyEditedByLoggedInUser": "Ezt a térképelemet csak te magad szerkesztetted, így nyugodtan törölheted.", + "isChanged": "Megváltozott, és már nem felel meg ennek a rétegnek", + "isDeleted": "Az objektum törlődött", + "isntAPoint": "Csak pontot lehet törölni, a kijelölt objektum viszont vonal, terület vagy kapcsolat.", + "loading": "Tulajdonságok megvizsgálása annak ellenőrzéséhez, hogy az objektum törölhető-e.", + "loginToDelete": "Objektum törléséhez be kell jelentkezni", + "notEnoughExperience": "Az objektumot valaki más készítette.", + "onlyEditedByLoggedInUser": "Ezt az objektumot csak te magad szerkesztetted, így nyugodtan törölheted.", "partOfOthers": "Ez a pont egy vonal vagy kapcsolat része, ezért közvetlenül nem törölhető.", - "readMessages": "Olvasatlan üzeneteid vannak. Olvasd el őket, mielőtt törölnél egy térképelemet – lehet, hogy valaki épp erről írt", + "readMessages": "Olvasatlan üzeneteid vannak. Olvasd el őket, mielőtt törölnél egy objektumot – lehet, hogy valaki épp erről írt", "reasons": { - "disused": "Ez a térképelem használaton kívüli vagy el lett távolítva", - "duplicate": "Ez a térképelem egy másik térképelem megkettőzése", - "notFound": "Ezt a térképelemet nem sikerült megtalálni", - "test": "Ez egy tesztelésre szolgáló térképelem volt: az általa jelölt objektum valójában soha nem létezett" + "disused": "Használaton kívüli vagy el lett távolítva", + "duplicate": "Egy másik objektum megkettőzése", + "notFound": "Nem sikerült megtalálni a valóságban", + "test": "Csak egy tesztobjektum volt: az általa jelölt objektum a valóságban soha nem létezett" }, - "safeDelete": "Ez a térképelem nyugodtan törölhető.", + "safeDelete": "Nyugodtan törölhető.", "useSomethingElse": "A törléséhez használj egy másik OpenStreetMap-szerkesztőt", - "whyDelete": "Miért kellene törölni ezt a térképelemet?" + "whyDelete": "Miért kellene törölni ezt az objektumot?" + }, + "external": { + "allAreApplied": "Az összes hiányzó, külső érték átmásoltatott az OpenStreetMap-re", + "allIncluded": "A {source} forrásból betöltött adatokat az OpenStreetMap tartalmazza", + "apply": "Alkalmazás", + "applyAll": "Az összes hiányzó érték alkalmazása", + "conflicting": { + "intro": "Az OpenStreetMap a következő értékeknél más értéket ad, mint a forrás weboldal.", + "title": "Egymásnak ellentmondó elemek" + }, + "currentInOsmIs": "Jelenleg az OpenStreetMapen a következő érték van rögzítve:", + "done": "Kész", + "error": "Nem sikerült betölteni a belinkelt adatokat a webhelyről", + "lastModified": "A külső adatok utolsó módosítása: {date}", + "loadedFrom": "A következő adatok a {source} oldalról töltődnek be a beágyazott JSON-LD segítségével", + "missing": { + "intro": "Az OpenStreetMapen nincs adat a következő tulajdonságokról", + "title": "Hiányzó elemek" + }, + "noDataLoaded": "A külső weboldalon nincs olyan belinkelt adat, amelyet be lehetne tölteni", + "overwrite": "Felülírás az OpenStreetMapen", + "title": "A külső weboldalról betöltött strukturált adatok" }, "favourite": { "loginNeeded": "

Jelentkezz be

A személyes elrendezés csak OpenStreetMap-felhasználóknak érhető el", - "panelIntro": "

A személyes témád

Aktiváld a kedvenc rétegeidet az összes hivatalos téma közül", + "panelIntro": "

A személyes tematikus térképed

Aktiváld a kedvenc rétegeidet az összes hivatalos tematikus térkép közül", "reload": "Adatok újratöltése" }, + "favouritePoi": { + "button": { + "isFavourite": "Ez a hely jelenleg kedvencnek van jelölve, és megjelenik a MapComplete összes olyan tematikus térképén, amelyet megnézel.", + "isMarkedShort": "Kedvenc helyként megjelölve", + "isNotMarkedShort": "Nincs kedvenc helyként megjelölve", + "markAsFavouriteTitle": "Hely megjelölése kedvenc helyként", + "markDescription": "Add hozzá ezt a helyet a saját kedvenclistádhoz", + "unmark": "Eltávolítás a személyes kedvencek listájáról", + "unmarkNotDeleted": "A pont nem törlődik, és a megfelelő térképen továbbra is látható marad" + }, + "downloadGeojson": "Kedvencek letöltése GeoJSON-formátumban", + "downloadGpx": "Kedvencek letöltése GPX-formátumban", + "intro": "Megjelölte {length} helyszínt kedvenc helyként.", + "introPrivacy": "Ezt a listát csak te látod", + "loginToSeeList": "Jelentkezz be a kedvencként megjelölt helyeid listájának megtekintéséhez", + "tab": "Kedvencek és értékelések", + "title": "Kedvenc helyeid" + }, + "flyer": { + "aerial": "Ez a térkép más hátteret használ, mégpedig az Agentschap Informatie Vlaanderen (Flamand Informatikai Ügynökség) légifelvételeit", + "callToAction": "Próbáld ki mapcomplete.org-on", + "cyclofix": "Kerékpárpumpák, javítóállomások, ivóvíz és kerékpárboltok a CycloFixen vannak", + "description": "Fektetett A4 alakú szórólap a MapComplete népszerűsítésére", + "editing": { + "ex": "Az alábbiakban látható egy leegyszerűsített példa arra, hogy ez hogyan néz ki egy természetvédelmi területnél.", + "intro": "A felhasználót egy objektumokat tartalmazó térkép köszönti. Ha kijelöl egy objektumot, megjelennek az adatai.", + "title": "Hogyan néz ki a kezelőfelület?" + }, + "examples": "Nagyon sok tematikus térkép áll rendelkezésre, amelyek közül itt csak néhányat mutatunk be.\n\nAz interneten még sok más tematikus térkép is fellelhető: az egészségügyről, a beltéri navigációról, a kerekesszékes akadálymentességről, hulladékkezelő létesítményekről, nyilvános könyvszekrényekről, szivárványfestéssel ellátott gyalogátkelőhelyekről… Fedezd fel mindet a mapcomplete.org oldalon", + "fakeui": { + "add_images": "Kép hozzáadása néhány kattintással", + "attributes": "Barátságos módon jelenít meg tulajdonságokat", + "edit": "Téves vagy elavult az információ? A szerkesztés gomb ott van!", + "question": "Ha egy tulajdonság még nem ismert, a MapComplete feldob egy kérdést", + "see_images": "Megjelenít képeket korábbi szerkesztőktől, a Wikipédiáról, a Mapillaryről stb.", + "wikipedia": "Láthatók a belinkelt Wikipédia-szócikkek" + }, + "frontParagraph": "A MapComplete egy könnyen használható webes alkalmazás OpenStreetMap földrajzi adatok gyűjtésére, amellyel nyílt, tömeges és újrafelhasználható módon gyűjthetők és kezelhetők a megfelelő adatok.\n\nKérésre új kategóriák és tulajdonságok is felvehetők.", + "lines_too": "Vonalak és sokszögek is megjelennek. Az objektumokhoz tulajdonságok és képek kapcsolhatók, és ezeket frissíteni is lehet.", + "mapcomplete": { + "customize": "A MapComplete a saját igényeidhez igazítható, új térképrétegekkel, új funkciókkal, vagy a saját szervezeted színeivel és betűtípusával.\nVan tapasztalatunk földrajzi adatok gyűjtéséről szóló crowdsource-kampányok indításában is.\nÁrajánlatért írj a pietervdvn@posteo.net címre.", + "intro": "A MapComplete olyan weboldal, amelyen {mapCount} interaktív térkép található. Minden egyes térképen lehet adatokat felvinni vagy frissíteni. Számos funkcióval rendelkezik:", + "li0": "Megmutatja, hol van érdekes pont (POI)", + "li1": "Új pont hozzáadása és a meglévők adatainak frissítése", + "li2": "Kapcsolattartási adatok és nyitvatartási idő egyszerű hozzáadása", + "li3": "iFrame-mel más weboldalakon is elhelyezhető", + "li4": "Az OpenStreetMap-ökoszisztémába ágyazva, amely számos eszközzel rendelkezik", + "li5": "Meglévő adatkészletek importálásának lehetősége", + "li6": "Számos speciális funkció, például fák felismerése és speciális beviteli módszerek", + "li7": "Copylefted szabad szoftver (GPL licenc) és ingyenesen használható", + "title": "Mi a MapComplete?" + }, + "onwheels": "Kerekesszékeseknek beltéri térképek is rendelkezésre állnak.", + "osm": "Az OpenStreetMap egy olyan online térkép, amelyet bárki szerkeszthet és újra felhasználhat bármilyen célra, feltéve, hogy az adatokat továbbra is nyíltan hozzáférhetővé teszi.\n\nEz a világ legnagyobb térinformatikai adatbázisa, amelyet alkalmazások és weboldalak ezrei hasznosítanak.", + "tagline": "Földrajzi adatok gyűjtése az OpenStreetMappel", + "title": "mapcomplete.org", + "toerisme_vlaanderen": "A Pin your point egy a flamand turisztikai ügynökséggel (Visit Flanders) közös projekt keretében jött létre. Több mint 160 szerkesztő több ezer padot és piknikezőasztalt, valamint 100 kerékpártöltő állomást rajzolt fel.", + "whatIsOsm": "Mi az OpenStreetMap?" + }, "general": { - "about": "Egy adott téma esetében az OpenStreetMap egyszerű szerkesztése és hozzáadása", + "404": "Ez az oldal nem létezik", + "about": "Tematikus OpenStreetMap-objektumok egyszerű felrajzolása és szerkesztése", + "aboutMapComplete": { + "intro": "A MapComplete segítségével felvihetsz egy adott témához kapcsolódó OpenStreetMap-adatokat. Válaszolj a kérdésekre, és a szerkesztésed perceken belül világszerte láthatóvá válik. A legtöbb tematikus térképen fotókat is feltölthetsz, vagy akár értékelést is írhatsz. Az elemeket, a kérdéseket és a nyelveket tematikus térkép gazdája határozza meg." + }, "add": { - "addNew": "Új {category} hozzáadása", - "confirmButton": "{category} hozzáadása.
A hozzáadott objektum mindenki számára látható lesz
", + "addNew": "Új {category} felvétele", + "backToSelect": "Másik kategória kijelölése", + "confirmButton": "{category} felvétele.
A felvett dolgokat mindenki látni fogja
", + "confirmLocation": "Hely megerősítése", + "confirmTitle": "Adsz hozzá {title} szöveget is?", + "confirmWarning": "Az itt létrehozott objektumot mindenki látni fogja. Csak akkor rajzolj valamit a térképre, ha az valóban létezik. Sok alkalmazás használja ezeket az adatokat.", + "creating": "Új pont létrehozása…", "disableFilters": "Minden szűrő kikapcsolása", - "disableFiltersExplanation": "Lehet, hogy a szűrő miatt egyes térképelemek nem látszanak", - "hasBeenImported": "Ezt a térképelemet már importálták", + "disableFiltersExplanation": "A szűrő elrejthet bizonyos objektumokat", + "enableLayer": "{name} réteg engedélyezése", + "hasBeenImported": "Ez az objektum már importáltatott", "import": { "hasBeenImported": "Ez az objektum importáltatott", - "howToTest": "A teszteléshez add hozzá az URL-hez a test=true vagy a backend=osm-test szöveget. A módosításkészlet a konzolra lesz nyomtatva. Ha hivatalossá szeretnéd tenni ezt a témát (és szeretnéd engedélyezni az importálás gombot), akkor nyiss egy lekéréses kérelmet (pull request).", + "howToTest": "A teszteléshez add hozzá az URL-hez a test=true vagy a backend=osm-test szöveget. A módosításkészlet a konzolra lesz nyomtatva. Ha hivatalossá szeretnéd tenni ezt a tematikus térképet (és szeretnéd engedélyezni az importálás gombot), akkor nyiss egy lekéréskérelmet (pull request).", "importTags": "Az elem a következő címkéket fogja kapni: {tags}", - "officialThemesOnly": "A balesetek elkerülése érdekében a nem hivatalos témáknál ki van kapcsolva az importálás gomb", - "wrongType": "Ez a térképelem nem pont vagy vonal, ezért nem importálható", - "zoomInMore": "Nagyíts tovább a térképelem importálásához" + "officialThemesOnly": "A balesetek elkerülése érdekében a nem hivatalos tematikus térképeknél ki van kapcsolva az importálás gomb", + "wrongType": "Ez az objektum nem pont vagy vonal, ezért nem importálható", + "wrongTypeToConflate": "Ez az objektum nem pont vagy vonal, ezért nem lehet összevonni", + "zoomInMore": "Nagyíts tovább az objektum importálásához" }, "importTags": "Az elem {tags} címkéket fog kapni", - "intro": "Olyan helyre kattintottál, ahol még nincs ismert adat.
", - "layerNotEnabled": "A {layer} réteg nincs engedélyezve. Térképelem hozzáadásához engedélyezd ezt a réteget", + "intro": "Olyan helyre kattintottál, ahol még nincs ismert adat.
", + "layerNotEnabled": "A {layer} réteg nincs engedélyezve. Objektum felrajzolásához engedélyezd ezt a réteget", "openLayerControl": "Rétegvezérlő-doboz megnyitása", - "pleaseLogin": "Új térképelem hozzáadásához be kell jelentkezned", + "pleaseLogin": "Új objektum felvételéhez be kell jelentkezned", "presetInfo": "Az új érdekes pont (POI) címkéi: {tags}", - "stillLoading": "Az adatok betöltése folyamatban van. Kérjük, várj egy kicsit mielőtt elhelyezel egy új térképelemet.", - "title": "Hozzáadsz egy új térképelemet?", + "stillLoading": "Az adatok betöltése folyamatban van. Kérjük, várj egy kicsit mielőtt felviszel egy új objektumot.", + "title": "Új objektum felvétele", "warnVisibleForEveryone": "A kiegészítésed mindenki számára látható lesz", "wrongType": "Ez az elem nem pont vagy vonal, ezért nem importálható", - "zoomInFurther": "Térképelem hozzáadásához közelíts jobban.", + "zoomInFurther": "Objektum felvételéhez közelíts jobban", "zoomInMore": "Nagyíts tovább az elem importálásához" }, "apply_button": { @@ -71,34 +178,66 @@ "isApplied": "A módosítások alkalmazva lettek" }, "attribution": { - "attributionContent": "

Az összes adatot az OpenStreetMap biztosítja, és szabadon újrafelhasználható az Open DataBase License alapján.

", + "attributionBackgroundLayer": "A jelenlegi háttérréteg: {name}", + "attributionBackgroundLayerWithCopyright": "A jelenlegi háttérréteg: {name} ({copyright})", + "attributionContent": "

Az összes adatot az OpenStreetMap biztosítja; szabadon újrafelhasználhatók az Open DataBase License alapján.

", "attributionTitle": "Szerzők", "codeContributionsBy": "A MapComplete-et {contributors} és további {hiddenCount} közreműködő fejleszti", "donate": "A MapComplete pénzügyi támogatása", "editId": "Az OpenStreetMap online szerkesztőjének megnyitása itt", "editJosm": "Szerkesztés itt JOSM-mal", + "emailCreators": "E-mail küldése az alkotóknak", "followOnMastodon": "Kövesse a MapComplete-et a Mastodonon", + "gotoSourceCode": "Forráskód megtekintése", "iconAttribution": { "title": "Felhasznált ikonok" }, "josmNotOpened": "A JOSM-ot nem lehetett elérni. Győződj meg róla, hogy meg van nyitva, és a távvezérlés engedélyezve van", "josmOpened": "A JOSM megnyílt", + "madeBy": "Készítette: {author}", "mapContributionsBy": "A jelenleg látható adatokat szerkesztette: {contributors}", "mapContributionsByAndHidden": "A jelenleg látható adatokat szerkesztette: {contributors} és {hiddenCount} további közreműködő", + "mapDataByOsm": "Térképadatok: OpenStreetMap", + "mapillaryHelp": "A Mapillary olyan online szolgáltatás, amely utcaképeket gyűjt, és ingyenes licenc alatt kínálja őket. A szerkesztők felhasználhatják ezeket a képeket az OpenStreetMap javítására", "openIssueTracker": "Hiba bejelentése", "openMapillary": "Mapillary megnyitása itt", - "openOsmcha": "A téma {theme} legutóbbi szerkesztéseinek megtekintése", - "themeBy": "A téma karbantartója: {author}" + "openOsmcha": "A {theme} tematikus térkép legutóbbi szerkesztéseinek megtekintése", + "openOsmchaLastWeek": "Az előző 7 nap szerkesztéseinek megtekintése", + "openPanoramax": "Panoramax megnyitása itt", + "openThemeDocumentation": "{name} tematikus térkép dokumentációjának megnyitása", + "panoramaxHelp": "A Panoramax olyan online szolgáltatás, amely utcaképeket gyűjt, és ingyenes licenc alatt kínálja őket. A szerkesztők felhasználhatják ezeket a képeket az OpenStreetMap javítására", + "panoramaxLicenseCCBYSA": "A képeid CC-BY-SA licenc szerint jelennek meg, és bárki újra felhasználhatja őket, ha megemlíti a neved", + "seeOnMapillary": "Kép megtekintése a Mapillaryn", + "themeBy": "A tematikus térkép karbantartója: {author}", + "title": "Szerzői jogok és tulajdonjog", + "translatedBy": "A MapComplete fordítói: {contributors} és {hiddenCount} további közreműködők" }, "back": "Vissza", - "backgroundMap": "Háttértérkép", + "backToIndex": "Az összes tematikus térkép megtekintése", + "backToMap": "Vissza a térképhez", + "backgroundMap": "Háttérréteg kijelölése", + "backgroundSwitch": "Háttér váltása", "cancel": "Mégse", + "clearPendingChanges": "Függőben lévő módosítások törlése", "confirm": "Megerősítés", - "customThemeIntro": "

Egyéni témák

Ezek korábban megnézett, felhasználó által létrehozott témák.", + "customThemeIntro": "Ezek korábban megtekintett, felhasználó által létrehozott tematikus térképek.", + "customThemeTitle": "Egyéni tematikus térképek", "download": { + "custom": { + "download": "{width} mm széles és {height} mm magas PNG-kép letöltése", + "downloadHelper": "Nyomtatásra való", + "height": "Kép magassága (mm):", + "title": "Egyedi szélességű és magasságú kép letöltése", + "width": "Kép szélessége (mm): " + }, "downloadAsPdf": "A jelenlegi térkép letöltése PDF-ként", "downloadAsPdfHelper": "Eszményi a jelenlegi térkép kinyomtatásához", + "downloadAsPng": "Letöltés képként", + "downloadAsPngHelper": "Eszményi módon elhelyezhető jelentésekben", "downloadAsSvg": "Az aktuális térkép letöltése SVG formátumban", + "downloadAsSvgHelper": "Kompatibilis az Inkscape vagy az Adobe Illustrator programmal; további feldolgozást igényel", + "downloadAsSvgLinesOnly": "Az aktuális térkép letöltése SVG formátumban, amely csak vonalakat tartalmaz", + "downloadAsSvgLinesOnlyHelper": "Az önmagukat metsző vonalak megszakadnak; egyes 3D szoftverekkel használható", "downloadCSV": "Látható adatok letöltése CSV-ként", "downloadCSVHelper": "Kompatibilis a LibreOffice Calc-kal, az Excellel…", "downloadFeatureAsGeojson": "Letöltés GeoJSON-fájlként", @@ -107,64 +246,124 @@ "downloadGeojson": "A látható adatok letöltése GeoJSON-ként", "downloadGpx": "Letöltés GPX-ként", "downloadGpxHelper": "A GPX-fájlok a legtöbb navigációs eszközzel és alkalmazással használhatók", + "downloadImage": "Kép letöltése", "exporting": "Exportálás…", "includeMetaData": "Metaadatokat is tartalmazzon (legutóbbi szerkesztő, számított értékek stb.)", - "licenseInfo": "

Szerzői jogi nyilatkozat

A megadott adatok az ODbL licenc szerint érhetők el. Újrafelhasználásuk bármilyen célra ingyenes, de
  • a © OpenStreetMap-közreműködők megnevezés szükséges, és
  • minden változtatáshoz ezt a licencet kell használni
A részletekért kérjük, olvassa el a teljes szerzői jogi nyilatkozatot.", + "licenseInfo": "

Szerzői jogi nyilatkozat

A megadott adatok az ODbL licenc szerint érhetők el. Újrafelhasználásuk bármilyen célra ingyenes, de
  • meg kell nevezni az © OpenStreetMap-közreműködőket, és
  • minden változtatáshoz ezt a licencet kell használni
A részletekért kérjük, olvasd el a teljes szerzői jogi nyilatkozatot.", "noDataLoaded": "Még nincs betöltött adat. A letöltés hamarosan elérhető lesz", - "title": "A látható adatok letöltése", + "pdf": { + "current_view_generic": "Az aktuális nézet exportálása PDF-be ({paper_size} méret9 és {orientation} tájolás)" + }, + "title": "Letöltés", + "toMuch": "Túl sok az objektum: ennyit nem lehet letölteni", "uploadGpx": "Töltsd fel a nyomvonalaidat az OpenStreetMapre" }, + "enableGeolocationForSafari": "Nem jelent meg a felugró ablak a tartózkodási helyed felhasználásának engedélyezéséről?", + "enableGeolocationForSafariLink": "A beállításokban megnézheted, hogyan engedélyezheted a tartózkodási helyed felhasználását", + "eraseValue": "Érték törlése", "error": "Valami rosszul sült el", "example": "Példa", "examples": "Példák", - "fewChangesBefore": "Kérjük, válaszolj néhány meglévő térképelemekre vonatkozó kérdésre, mielőtt új elemet adnál hozzá.", + "fewChangesBefore": "Kérjük, válaszolj néhány meglévő objektumokra vonatkozó kérdésre, mielőtt felvennél egy újat.", + "filterPanel": { + "allTypes": "Minden típus", + "disableAll": "Összes letiltása", + "enableAll": "Összes engedélyezése" + }, + "geopermissionDenied": "A tartózkodási hely felhasználása meg lett tagadva", "getStartedLogin": "A kezdéshez jelentkezz be az OpenStreetMap-fiókoddal,", "getStartedNewAccount": " vagy hozz létre új fiókot", "goToInbox": "Beérkezett üzenetek megnyitása", "histogram": { "error_loading": "Nem sikerült betölteni a hisztogramot" }, + "labels": { + "background": "Háttér megváltoztatása", + "filter": "Adatok szűrése", + "jumpToLocation": "Ugrás a jelenlegi helyzetedhez", + "locationNotAvailable": "GPS-helyzet nem elérhető. Lehet, hogy a készülékeden nincs helymeghatározás vagy egy alagútban vagy?", + "menu": "Menü", + "zoomIn": "Közelítés", + "zoomOut": "Távolítás" + }, "layerSelection": { "title": "Rétegek kijelölése", "zoomInToSeeThisLayer": "Nagyíts a réteg megtekintéséhez" }, + "levelSelection": { + "addNewOnLevel": "Ezen a szinten található az új pont: {level}?", + "confirmLevel": "Igen, {preset} hozzáadása a következő szinten: {level}" + }, "loading": "Betöltés…", - "loadingTheme": "{theme} betöltése…", + "loadingTheme": "{theme} tematikus térkép betöltése…", "loginFailed": "Az OpenStreetMap-be való bejelentkezés nem sikerült", - "loginOnlyNeededToEdit": "ha szerkeszteni szeretnéd a térképet", + "loginFailedOfflineMode": "Az OpenStreetMap.org karbantartás miatt jelenleg nem elérhető. Hamarosan megint lehet szerkeszteni", + "loginFailedReadonlyMode": "Az OpenStreetMap.org karbantartás miatt jelenleg csak olvasható üzemmódban van. Hamarosan megint lehet szerkeszteni", + "loginFailedUnreachableMode": "Az OpenStreetMap.org jelenleg nem elérhető. Nem lehet, hogy nincs internetkapcsolatod, vagy blokkolsz harmadik feleket? Próbáld meg később újra", + "loginOnlyNeededToEdit": "ha módosítani szeretnél", "loginToStart": "A kérdés megválaszolásához be kell jelentkezni", "loginWithOpenStreetMap": "Bejelentkezés OpenStreetMap-fiókkal", "logout": "Kijelentkezés", + "mappingsAreHidden": "Néhány beállítás el van rejtve. További beállítások megjelenítéséhez használd a keresést.", + "menu": { + "aboutCurrentThemeTitle": "Térkép névjegye", + "aboutMapComplete": "A MapComplete névjegye", + "filter": "Adatok szűrése", + "moreUtilsTitle": "Ismerj meg többet", + "openHereDifferentApp": "Jelenlegi helyzet megnyitása más alkalmazásban", + "showIntroduction": "Bevezetés megjelenítése", + "title": "Menü" + }, "morescreen": { - "createYourOwnTheme": "Készítsd el saját MapComplete témád a semmiből", - "hiddenExplanation": "Ezeket a témákat csak az érheti el, akik ismeri a linket. {total_hidden} rejtett téma közül {hidden_discovered} témát ismersz.", - "noMatchingThemes": "Nincs olyan téma, amely megfelelt volna a keresési feltételeknek", - "noSearch": "Minden téma megjelenítése", - "previouslyHiddenTitle": "Korábban megnézett rejtett témák", - "requestATheme": "Ha egyedi témát szeretnél, kérd a problémakövetőben (issue tracker)", + "createYourOwnTheme": "Készítsd el saját MapComplete tematikus térképed", + "enterToOpen": "Nyomd meg az entert a tematikus térkép megnyitásához", + "hiddenExplanation": "Ezeket a tematikus térképeket csak az éri el, aki ismeri a linkjüket. Te {total_hidden} rejtett tematikus térkép közül {hidden_discovered} darabot ismersz.", + "noMatchingThemes": "Nincs olyan tematikus térkép, amely megfelelne a keresési feltételeknek", + "noSearch": "Minden tematikus térkép megjelenítése", + "previouslyHiddenTitle": "Korábban megnézett rejtett tematikus térképek", + "requestATheme": "Ha egyedi tematikus térképet szeretnél, kérhetsz a problémakövetőben (issue tracker)", + "searchForATheme": "Tematikus térkép keresése", "streetcomplete": "Egy másik, hasonló alkalmazás a StreetComplete." }, "nameInlineQuestion": "Ezen {category} neve: $$$", "next": "Következő", + "noMatchingMapping": "Nincs a keresésnek megfelelő találat…", "noNameCategory": "Név nélküli {category}", "noTagsSelected": "Nincs kijelölt címke", + "notValid": "A folytatáshoz jelölj ki egy érvényes értéket", "number": "szám", "openStreetMapIntro": "

Nyílt térkép

Ezt a térképet mindenki szabadon használhatja és szerkesztheti. Ez egy olyan egységes hely, ahol <i>minden</i> térinformatikai adatot tárolni lehet. Semmi szükség különböző, kicsi, nem kompatibilis és elavult térképekre.

Az OpenStreetMap (OSM) nem az ellenség térképe. A térképadatok szabadon felhasználhatók (a tulajdonlással és az adatokban bekövetkezett változások feltüntetésével). Mindenki adhat hozzá új térképadatokat és javíthat hibákat. Ez a weboldal is az OpenStreetMapet használja. Minden adat onnan származik, és a Te válaszaid és javításaid is meg fognak jelenni mindenütt.

Sok ember és alkalmazás már használja az OpenStreetMapet: például az Organic Maps vagy az OsmAnd, de a Facebook, az Instagram, az Apple és a Bing (Microsoft) térképei is (részben) az OpenStreetMap adataira támaszkodnak.

", - "openTheMap": "Nyisd meg a térképet,", + "openTheMap": "Térkép megnyitása", + "openTheMapAtGeolocation": "Nagyítás a saját helyzetemre", + "openTheMapReason": "az adatok megtekintéséhez, szerkesztéséhez és kiegészítéséhez", "opening_hours": { + "all_days_from": "Nyitva minden nap: {ranges}", "closed_permanently": "Ismeretlen ideig zárva", "closed_until": "Zárva eddig: {date}", + "error": "A megadott nyitvatartási idő nem értelmezhető", "error_loading": "Hiba: nem sikerült megjeleníteni ezt a nyitva tartási időt.", + "friday": "Péntek {ranges}", "loadingCountry": "Ország meghatározása…", + "monday": "Hétfő {ranges}", "not_all_rules_parsed": "Ez a nyitva tartás bonyolult. A beviteli elemben a következő szabályok nem vétetnek figyelembe:", + "on_weekdays": "Nyitva hétköznap {ranges}", + "on_weekends": "Nyitva hétvégén {ranges}", "openTill": "eddig:", "open_24_7": "Éjjel-nappal nyitva", - "open_during_ph": "Munkaszüneti napokon ez", + "open_during_ph": "Munkaszüneti napokon", "opensAt": "ettől:", "ph_closed": "zárva", "ph_not_known": " ", "ph_open": "nyitva", - "ph_open_as_usual": "a szokásos rend szerint nyitva" + "ph_open_as_usual": "a szokásos rend szerint nyitva", + "ranges": "ettől: {starttime} eddig: {endtime}", + "rangescombined": "{range0} és {range1}", + "saturday": "Szombat {ranges}", + "sunday": "Vasárnap {ranges}", + "thursday": "Csütörtök {ranges}", + "tuesday": "Kedd {ranges}", + "unknown": "Nyitva tartás ismeretlen", + "wednesday": "Szerda {ranges}" }, "osmLinkTooltip": "A szerkesztési előzmények és további szerkesztési lehetőségek megtekintéséhez nézd meg ezt az objektumot az OpenStreetMapen", "pdf": { @@ -173,28 +372,151 @@ "generatedWith": "Létrehozva a mapcomplete.org/{layoutid} segítségével", "versionInfo": "{version} verzió – létrehozva: {date}" }, - "pickLanguage": "Nyelv kiválasztása: ", + "pickLanguage": "Nyelv kiválasztása", + "poweredByMapComplete": "Motor: MapComplete – sokak által szerkesztett tematikus térképek az OpenStreetMap segítségével", "poweredByOsm": "Motor: OpenStreetMap", - "readYourMessages": "Kérjük, új térképelem hozzáadása előtt olvasd el az összes OpenStreetMap-üzeneted.", + "questionBox": { + "answeredMultiple": "Megválaszoltál {answered} kérdést", + "answeredMultipleSkippedMultiple": "Megválaszoltál {answered} kérdést, és kihagytál {skipped} másikat", + "answeredMultipleSkippedOne": "Megválaszoltál {answered} kérdést, és kihagytál egyet", + "answeredOne": "Megválaszoltál egy kérdést", + "answeredOneSkippedMultiple": "Megválaszoltál egy kérdést, és kihagytál {skipped} másikat", + "answeredOneSkippedOne": "Megválaszoltál egy kérdést és kihagytál egy másikat", + "done": "Nincs több kérdés. Köszönjük!", + "reactivate": "Kihagyott kérdések újraaktiválása", + "skippedMultiple": "Kihagytál {skipped} kérdést", + "skippedOne": "Kihagytál egy kérdést" + }, + "questions": { + "emailIs": "{category} e-mail-címe: {email}", + "emailOf": "Mi az e-mail-címe ennek ({category})?", + "phoneNumberIs": "{category} telefonszáma: {phone}", + "phoneNumberOf": "Mi a telefonszáma ennek ({category})?", + "websiteIs": "Weboldal: {website}", + "websiteOf": "Mi a weboldala ennek ({category})?" + }, + "readYourMessages": "Kérjük, új objektum felvétele előtt olvasd el az összes OpenStreetMap-üzeneted.", "removeLocationHistory": "Helyelőzmények törlése", + "retry": "Újrapróbálkozás", "returnToTheMap": "Vissza a térképhez", "save": "Mentés", + "screenToSmall": "{theme} tematikus térkép megnyitása új ablakban", "search": { + "activeFilters": "Bekapcsolt szűrők", + "clearFilters": "Szűrők törlése", + "deleteSearchHistory": "Helyelőzmények törlése", + "deleteThemeHistory": "Korábban megtekintett tematikus térképek törlése", + "editSearchSyncSettings": "Szinkronizálási beállítások törlése", + "editThemeSync": "Szinkronizálási beállítások szerkesztése", "error": "Hiba történt…", + "instructions": "Helyek, szűrők vagy más tematikus térképek kereséséhez használja a fenti keresősávot", + "locations": "Helyek", + "nMoreFilters": "{n} további", "nothing": "Nincs találat…", + "nothingFor": "Nem található semmi erre a kifejezésre: {term}", + "otherMaps": "Más térképek", + "pickFilter": "Szűrő bekapcsolása", + "recentThemes": "Legutóbb megnézett térképek", + "recents": "Legutóbb megnézett helyek", "search": "Helyszín keresése", + "searchShort": "Keresés…", "searching": "Keresés…" }, + "searchAnswer": "Beállítás keresése…", + "seeIndex": "Az összes tematikus térkép áttekintése", + "share": "Megosztás", "sharescreen": { "copiedToClipboard": "Link a vágólapra másolva", - "embedIntro": "

Beágyazás egy weboldalon

Kérjük, illeszd be ezt a térképet a weboldalba.
Biztatunk, tedd meg – még engedélyt sem kell kérned.
Ingyenes, és az is marad. Minél többen használják, annál értékesebbé válik. A pipákra kattintva módosíthatod a paramétereket:", - "fsUserbadge": "Bejelentkezési gomb engedélyezése", + "documentation": "A használható URL-paraméterekről további információt a dokumentációban találsz", + "embedIntro": "

Beágyazás egy weboldalon

Kérjük, illeszd be ezt a térképet a weboldalba.
Nosza, tedd meg – még engedélyt sem kell kérned.
Ingyenes, és az is marad. Minél többen használják, annál értékesebbé válik.", + "fsBackground": "Háttér váltásának engedélyezése", + "fsFilter": "Tétegek és szűrők közötti váltások lehetőségének engedélyezése", + "fsGeolocation": "Tartózkodási hely felhasználásának engedélyezése", + "fsUserbadge": "Engedélyezze a bejelentkezés gombot és így a módosítás lehetőségét", "fsWelcomeMessage": "Felugró üdvözlő üzenet és kapcsolódó fülek megjelenítése", - "intro": "

Térkép megosztása

Oszd meg ezt a térképet! Másold ki az alábbi linket, és küldd el a barátaidnak és a családodnak:", - "thanksForSharing": "Köszönjük a megosztást!" + "intro": "Oszd meg ezt a térképet! Másold ki az alábbi linket, és küldd el barátaidnak és családodnak:", + "openInOtherApplications": "Jelenlegi helyzet megnyitása más térképalkalmazásban", + "openLayers": "Rétegek és szűrők menü megnyitása", + "options": "Megosztási beállítások", + "stateIsIncluded": "A megosztott link és az iframe tartalmazza a rétegek és szűrők aktuális állapotát is.", + "thanksForSharing": "Köszönjük a megosztást!", + "title": "Térkép megosztása" }, "skip": "Kérdés kihagyása", "testing": "Kipróbálás – a módosítások nem lesznek elmentve", + "uploadError": "Hiba történt a módosítások feltöltésekor: {error}", + "uploadGpx": { + "choosePermission": "Válaszd ki, hogyan osztassék meg a nyomvonalad:", + "confirm": "Feltöltés megerősítése", + "gpxServiceOffline": "A GPX-szolgáltatás jelenleg offline, jelenleg nem lehet feltölteni semmit. Próbálja meg később újra.", + "intro0": "A nyomvonal feltöltésével az OpenStreetMap.org megőriz belőle egy példányt.", + "intro1": "A nyomvonalat újra le tudod majd tölteni, valamint be tudod tölteni OpenStreetMap szerkesztőprogramokba is", + "meta": { + "descriptionIntro": "Megadhatod a nyomvonal leírását (nem kötelező):", + "descriptionPlaceHolder": "Adj meg egy leírást a nyomvonaladhoz", + "intro": "Nyomvonal címe:", + "title": "Cím és leírás", + "titlePlaceholder": "Add meg a nyomvonalad címét" + }, + "modes": { + "private": { + "docs": "A nyomvonalad pontjait megosztják és összesítik más nyomvonalakkal. Te a teljes nyomvonalat látni fogod és be tudod majd tölteni más szerkesztőprogramokba. Az OpenStreetMap.org megőrzi a nyomvonalad egy példányát", + "name": "Névtelen" + }, + "public": { + "docs": "Nyomvonaladat mindenki láthatja mind a felhasználói profilodnál, mind pedig az openstreetmap.org-on a GPS-nyomvonalak listáján", + "name": "Nyilvános" + } + }, + "title": "Nyomvonalad feltöltése az OpenStreetMap.org-ra", + "uploadFinished": "A nyomvonalad fel lett töltve", + "uploading": "Nyomvonal felöltése…" + }, + "uploadPending": "{count} módosítás függőben", + "uploadPendingSingle": "Egy módosítás függőben", + "uploadingChanges": "Módosítások feltöltése…", + "useSearch": "További beállítások megtekintéséhez használd a fenti keresést", + "visualFeedback": { + "closestFeaturesAre": "{n} objektum található a nézetablakban.", + "directionsAbsolute": { + "E": "keletre", + "N": "északra", + "NE": "északkeletre", + "NW": "északnyugatra", + "S": "délre", + "SE": "délkeletre", + "SW": "délnyugatra", + "W": "nyugatra" + }, + "directionsRelative": { + "behind": "hátra", + "left": "balra", + "right": "jobbra", + "sharp_left": "élesen balra", + "sharp_right": "élesen jobra", + "slight_left": "enyhén balra", + "slight_right": "enyhén jobbra", + "straight": "egyenesen" + }, + "east": "Kelet felé", + "fromGps": "{distance} {direction} a tartózkodási helyedtől", + "fromMapCenter": "{distance} {direction} a térkép közepétől", + "in": "Közelítés {z} nagyítási szintig", + "islocked": "GPS-helyzetedhez rögzített nézet, mozgás letiltva. A feloldáshoz nyomd meg a tartózkodási hely elérésének engedélyezése gombot.", + "locked": "A nézet mostantól a GPS-helyzetedhez van rögzítve, a mozgás letiltva.", + "navigation": "A térképet a nyílbillentyűkkel mozgathatod, a legközelebbi objektumot a szóközzel, a távolabbi helyeket pedig a számokkal jelölheted ki.", + "noCloseFeatures": "Nincs objektum a térképnézetben.", + "north": "Észak felé", + "oneFeatureInView": "Egy objektum van a nézetablakban.", + "out": "Távolítás {z} nagyítási szintig", + "south": "Dél felé", + "unlocked": "Mozgás engedélyezve.", + "viewportCenterCloseToGps": "A térkép közepe a tartózkodási helyed.", + "viewportCenterDetails": "A nézetablakban közepe {distance} távolságra és {bearing} távolságra van a tartózkodási helyedtől.", + "west": "Nyugat felé" + }, + "waitingForGeopermission": "Az oldal várja az engedélyed, hogy felhasználhassa a tartózkodási helyed…", + "waitingForLocation": "Jelenlegi helyzeted keresése…", "weekdays": { "abbreviations": { "friday": "Pé", @@ -213,43 +535,143 @@ "tuesday": "Kedd", "wednesday": "Szerda" }, - "welcomeBack": "Be vagy jelentkezve, üdv ismét!", + "welcomeBack": "Isten hozott ismét!", + "welcomeExplanation": { + "addNew": "Hiányzik egy elem? A bal alsó sarokban található gombbal felvihetsz egy új érdekes pontot (POI-t).", + "general": "Ezen a térképen megtekinthetsz, szerkeszthetsz és felvihetsz érdekes pontokat (POI-kat). Nagyíts, hogy lásd őket, az adatok megtekintéséhez vagy szerkesztéséhez pedig koppints valamelyikre. Minden adat az OpenStreetMapről származik, és az OpenStreetMapre van mentve, amely szabadon újra felhasználható." + }, "wikipedia": { + "addEntry": "További Wikipédia-oldal hozzáfűzése", "createNewWikidata": "Új Wikidata-elem létrehozása", "doSearch": "Keress fent az eredmények megtekintéséhez", "failed": "Wikipédia-szócikk betöltése sikertelen", + "fromWikipedia": "A Wikipédiából, a szabad enciklopédiából", "loading": "Wikipédia betöltése…", "noResults": "Nincs találat erre: {search}", "noWikipediaPage": "Ennek a Wikidata-elemnek még nincs megfelelő Wikipédia-oldala.", + "previewbox": { + "born": "Született: {value}", + "died": "Elhunyt: {value}" + }, + "readMore": "Teljes szócikk elolvasása", + "searchToShort": "Túl rövid a keresési kifejezés, írj be egy hosszabb szöveget", "searchWikidata": "Keresés a Wikidatán", "wikipediaboxTitle": "Wikipédia" } }, + "hotkeyDocumentation": { + "action": "Művelet", + "closeSidebar": "Oldalsáv bezárása", + "geolocate": "Húzd vagy közelítsd a térképet az aktuális helyre. Engedélyezned kell a tartózkodási helyet elérését", + "intro": "A MapComplete a következő kulcsokat támogatja:", + "key": "Kulcskombináció", + "openFilterPanel": "Megnyitja az érdekes pontok (POI-k) rétegét és a szűrőpanelt", + "openLayersPanel": "Megnyitja a háttérrétegek paneljét", + "queryCurrentLocation": "A térkép közepéhez legközelebbi cím megjelenítése", + "selectAerial": "Háttér beállítása légi felvételre vagy műholdképre. A két legjobb elérhető réteg között lehet váltani", + "selectFavourites": "Kedvencek oldal megnyitása", + "selectItem": "A térkép középpontjához (célkereszt) legközelebbi érdekes pont kijelölése . Csak billentyűzetes navigációval működik", + "selectItem2": "A térkép középpontjához (célkereszt) második legközelebbi érdekes pont kijelölése . Csak billentyűzetes navigációval működik", + "selectItem3": "A térkép középpontjához (célkereszt) harmadik legközelebbi érdekes pont kijelölése . Csak billentyűzetes navigációval működik", + "selectItemI": "A térkép középpontjához (célkereszt) {i}. legközelebbi érdekes pont kijelölése . Csak billentyűzetes navigációval működik", + "selectMap": "Külső forrásból származó térkép beállítása háttérként. A két legjobb elérhető réteg között lehet váltani", + "selectMapnik": "Háttérréteg beállítása OpenStreetMap-carto-ra", + "selectOsmbasedmap": "Háttérréteg beállítása egy OpenStreetMap-alapú térképre (vagy a raszteres háttérréteg letiltása)", + "selectSearch": "Helyszín kereséséhez jelölje ki a keresősávot", + "shakePhone": "Telefon rázása", + "title": "Gyorsbillentyűk", + "translationMode": "Fordítási mód be- vagy kikapcsolása" + }, "image": { "addPicture": "Kép hozzáadása", + "currentLicense": "Képeid {license} alapján lesznek közzétéve", "doDelete": "Kép eltávolítása", "dontDelete": "Mégse", "isDeleted": "Törölve", + "nearby": { + "close": "Panel összecsukása a környező képekkel", + "failed": "Nem sikerült a képek lehívása innen: {service}", + "link": "Ez a kép az objektumot ábrázolja", + "noNearbyImages": "Nincs a közelben kép", + "seeNearby": "Közeli képek böngészése", + "title": "Közeli utcakép" + }, + "panoramax": { + "deletionRequested": "A jelentés be lett küldve; egy moderátor rövidesen megvizsgálja", + "freeform": "Van-e további lényeges információ?", + "otherFreeform": "Írd le, miért kellene eltávolítani ezt a képet:", + "placeholder": "Fejtsd ki, miért kellene törölni ezt a képet", + "report": { + "blur_excess": "A kép használhatatlan, mert túl nagy része homályos", + "blur_missing": "A képen nincs elhomályosítva egy arc vagy egy rendszámtábla", + "copyright": "A kép szerzői jog hatálya alá tartozó tartalmat jelenít meg", + "inappropriate": "A kép nem megfelelő (meztelenséget tartalmaz, gyűlöletre hív vagy nem utcakép)", + "mislocated": "A kép egy másik helyet ábrázol", + "other": "Más ok, kérjük, fejtsd ki", + "picture_low_quality": "A kép gyatra minőségű", + "privacy": "A kép magánterületet ábrázol" + }, + "requestDeletion": "Képtörlés kérése", + "title": "Miért kellene ezt a képet véglegesen törölni?" + }, "pleaseLogin": "Kép hozzáadásához be kell jelentkezni", - "respectPrivacy": "Ne készíts fényképet emberekről és rendszámtáblákról. Ne tölts fel képet a Google Mapsről, a Google Streetview-ról (utcaképről) és egyéb szerzői jog által védett forrásokból.", + "processing": "A szerver feldolgozza a képet", + "respectPrivacy": "Ne tölts fel képet a Google térképről, a Google Streetview-ról (utcaképről) és egyéb szerzői jog által védett forrásokból.", "toBig": "A kép túl nagy ({actual_size}). Kérjük, legfeljebb {max_size} méretű képeket használj", + "unlink": { + "button": "Kép leválasztása", + "explanation": "A kép belinkeltségének feloldásával ez a kép nem jelenik meg többé ezzel az objektummal együtt. A közeli képek között és esetleg más objektumokban azonban továbbra is meg fog jelenni.", + "title": "Megszűnjék a kép belinkelése?" + }, + "upload": { + "failReasons": "Lehet, hogy megszakadt az internetkapcsolatod", + "failReasonsAdvanced": "Másik lehetőségként győződj meg arról, hogy a böngésződ vagy bővítményei nem blokkolnak-e harmadik féltől származó API-kat.", + "multiple": { + "done": "{count} kép sikeresen feltöltve. Köszönjük!", + "partiallyDone": "{count} kép feltöltése folyamatban, {done} kép már kész…", + "someFailed": "Sajnáljuk, {count} képet nem sikerült feltöltenünk", + "uploading": "{count} kép feltöltése folyamatban…" + }, + "noBlur": "A képek nem lesznek elhomályosítva. Ne fényképezz embert", + "one": { + "done": "Kép sikeresen feltöltve. Köszönjük!", + "failed": "Sajnos nem sikerült feltöltenünk a képed", + "retrying": "A kép feltöltése újból folyamatban van…", + "uploading": "Kép feltöltése…" + } + }, "uploadDone": "A kép hozzá lett adva. Köszönjük a segítséged!", "uploadFailed": "Nem sikerült feltölteni a képet. Van-e internetkapcsolatod, és engedélyezted-e a harmadik féltől származó API-kat? A Brave böngésző vagy a uMatrix bővítmény blokkolhatja őket.", "uploadMultipleDone": "{count} kép hozzáadva. Köszönjük a segítséget!", "uploadingMultiple": "{count} kép feltöltése folyamatban…", "uploadingPicture": "Kép feltöltése folyamatban…" }, + "importInspector": { + "title": "Importált jegyzetek felügyelete és kezelése" + }, + "importLayer": { + "alreadyMapped": "A térképen már van {title} – ez a pont duplikátum", + "description": "Egy réteg, amely bejegyzéseket importál a következőhöz: {title}", + "importButton": "import_button({layerId}, _tags, van itt egy {title} nevű cím – felvitel a térképre,./assets/svg/addSmall.svg,,,id)", + "importHandled": "
Ez az objektum el van rendezve. Köszönjük a munkádat.
", + "layerName": "Lehetséges {title}", + "nearbyImagesIntro": "

Közeli képek

A következők különböző online szolgáltatásokból származó, a közelben található és földrajzi pozícióval felcímkézett (geotagelt) képek. Segíthetnek a jegyzet megoldásában.{nearby_images(open)}", + "notFound": "Nem sikerült megtalálnom ezt: {title}. Távolítsd el", + "popupTitle": "Itt lehet egy {title}" + }, "index": { - "#": "Ezek a szövegek akkor jelennek meg a témagombok felett, ha nincs betöltve téma", + "#": "Ezek a szövegek akkor jelennek meg a tematikus térkép gombjai felett, ha nincs betöltve térkép", + "about": "A MapComplete névjegye", "featuredThemeTitle": "Kiemelt ezen a héten", - "intro": "A MapComplete egy OpenStreetMap-nézegető és -szerkesztő program, amely egy adott témához kapcsolódó objektumokról jelenít meg információkat, és lehetővé teszi ezek frissítését.", - "logIn": "A korábban megnézett témák megtekintéséhez be kell jelentkezned", - "pickTheme": "Válassz egy témát lent a kezdéshez.", - "title": "Isten hozott a MapComplete-en" + "intro": "Tematikus térképek, amelyeket te is szerkeszthetsz", + "learnMore": "További tudnivalók", + "logIn": "A korábban megnézett tematikus térképek megtekintéséhez be kell jelentkezned", + "pickTheme": "Kezdésként válassz egy tematikus térképet az alábbiakból.", + "title": "MapComplete" }, "move": { - "cancel": "Áthelyezés megszakítása", - "cannotBeMoved": "Ez a térképelem nem mozdítható el.", + "cancel": "Válassz másik okot", + "cannotBeMoved": "Ez az objektum nem mozdítható el.", "confirmMove": "Áthelyezés ide", "inviteToMove": { "generic": "Pont áthelyezése", @@ -257,16 +679,17 @@ "reasonRelocation": "Objektum áthelyezése mert a valóságban is áthelyezték" }, "inviteToMoveAgain": "Pont áthelyezése ismét", - "isRelation": "Ez a térképelem egy kapcsolat, amely nem mozdítható el", - "isWay": "Ez a térképelem egy vonal, amelyet csak egy másik OpenStreetMap-szerkesztővel lehet áthelyezni.", + "isRelation": "Ez az objektum egy kapcsolat, amely nem mozdítható el", + "isWay": "Ez a objektum egy vonal, amelyet csak egy másik OpenStreetMap-szerkesztővel lehet áthelyezni.", "loginToMove": "Pont áthelyezéséhez be kell jelentkezned", "moveTitle": "Pont áthelyezése", - "partOfAWay": "Ez a térképelem egy másik vonal része; csak egy másik szerkesztő használatával lehet elmozdítani.", - "partOfRelation": "Ez a térképelem egy kapcsolat része; csak egy másik szerkesztő használatával mozdítható el.", + "partOfAWay": "Ez az objektum egy másik vonal része; csak egy másik szerkesztővel lehet elmozdítani.", + "partOfRelation": "Ez az objektum egy kapcsolat része; csak egy másik szerkesztővel mozdítható el.", "pointIsMoved": "A pont áthelyeződött", "reasons": { - "reasonInaccurate": "Az objektum helye pontatlan a térképen, ezért néhány méterrel arrébb kell tenni", - "reasonRelocation": "Az objektumot áthelyezték egy teljesen más helyre" + "reasonInaccurate": "Az objektum helye pontatlan, pár méterrel odébb van", + "reasonRelocation": "Az objektumot áthelyezték egy teljesen más helyre", + "reasonSnapTo": "Hozzá kellene illeszteni ehhez: {name}" }, "selectReason": "Miért szeretnéd áthelyezni ezt az objektumot?", "whyMove": "Miért szeretnéd áthelyezni ezt a pontot?", @@ -275,26 +698,116 @@ "multi_apply": { "autoApply": "A(z) {attr_names} tulajdonságok módosításával ezek a tulajdonságok automatikusan módosulnak {count} további objektumon is" }, + "notes": { + "addAComment": "Hozzászólás", + "addComment": "Hozzászólás írása", + "addCommentAndClose": "Hozzászólás és lezárás", + "addCommentPlaceholder": "Hozzászólás…", + "anonymous": "Névtelen felhasználó", + "closeNote": "Jegyzet lezárása", + "createNote": "Új jegyzet létrehozása", + "createNoteIntro": "Valami hibás vagy hiányzik a térképen? Írj ide egy jegyzetet, amelyet majd önkéntesek ellenőriznek.", + "createNoteTitle": "Új jegyzet létrehozása itt", + "creating": "Jegyzet létrehozása folyamatban…", + "disableAllNoteFilters": "Szűrők letiltása", + "isClosed": "Ez a jegyzet meg lett oldva", + "isCreated": "Létrejött a jegyzeted", + "loginToAddComment": "Hozzászóláshoz be kell jelentkezned", + "loginToAddPicture": "Kép felviteléhez be kell jelentkezned", + "loginToClose": "A jegyzet lezáráshoz be kell jelentkezned", + "noteIsPublic": "Ezt mindenki látni fogja", + "noteLayerDoEnable": "Jegyzeteket megjelenítő réteg engedélyezése", + "noteLayerHasFilters": "Egy szűrő elrejthet néhány jegyzetet", + "noteLayerNotEnabled": "Nincs engedélyezve a jegyzeteket megjelenítő réteg. Új jegyzet hozzáadásához engedélyezni kell", + "notesLayerMustBeEnabled": "A 'jegyzetek' réteg le van tiltva. Engedélyezd jegyzet felviteléhez", + "reopenNote": "Jegyzet újbóli megnyitása", + "reopenNoteAndComment": "Jegyzet újbóli megnyitása és hozzászólás", + "textNeeded": "Jegyzet létrehozásához adj meg egy leíró jellegű szöveget", + "typeText": "Hozzászólásként írj ide egy szöveget", + "warnAnonymous": "Nem vagy bejelentkezve, így nem tudunk elérni, hogy megoldjuk a problémádat." + }, + "plantDetection": { + "back": "Vissza a fajok áttekintéséhez", + "button": "Automatikusan felismeri a növényfajokat a plantnet.org mesterséges intelligenciája segítségével", + "confirm": "Faj kiválasztása", + "done": "A faj meg lett adva", + "error": "Valami nem sikerült a fafaj meghatározásakor: {error}", + "howTo": { + "intro": "A legjobb eredmény érdekében", + "li0": "készíts egy képet, amelynek a fa foglalja el a közepét, és kevés háttér van körülötte", + "li1": "készíts egy képet egyetlen levélről", + "li2": "készíts egy képet a kéregről", + "li3": "készíts egy képet a virágokról", + "li4": "készíts egy képet a gyümölcsökről" + }, + "loadingWikidata": "Adatok betöltése a következőről: {species}…", + "matchPercentage": "{match}%-os illeszkedés", + "overviewIntro": "A Pl@ntNet.org mesterséges intelligenciája szerint a képeken az alábbi faj lehet.", + "overviewTitle": "Automatikusan észlelt fajok", + "overviewVerify": "Ellenőrizd, hogy megfelelő-e faj, és linkeld a fához", + "poweredByPlantnet": "Motor: Pl@ntNet.org", + "querying": "A Pl@ntNet.org lekérdezése {length} képpel", + "seeInfo": "További információk a fajról", + "takeImages": "Fényképezd le a fát a fajának automatikus felismeréséhez", + "tryAgain": "Másik faj kiválasztása" + }, + "preset_type": { + "question": "Mi ez az objektum?", + "typeDescription": "Ez egy {title}.
{description}
", + "typeTitle": "Ez egy {title}" + }, "privacy": { + "editingIntro": "Ha változtatsz a térképen, akkor a módosítás rögzül az OpenStreetMapen, és bárki számára nyilvánosan látható lesz. A MapComplete-tal létrehozott módosításkészlet a következő adatokat tartalmazza:", + "editingOutro": "Részletes információkért kérjük, olvassa el az OpenStreetMap.org adatvédelmi szabályzatát. Ne feledd, hogy a regisztrációnál kitalált nevet is használhatsz.", + "editingTitle": "Módosításkor", "geodata": "Amikor a MapComplete lekéri a földrajzi helyed meghatározását, az – a korábban meglátogatott helyekkel együtt – az eszközödön marad. Helyadatokat soha nem küldünk el automatikusan máshová – kivéve, ha bizonyos funkciók egyértelműen másként rendelkeznek.", - "geodataTitle": "Földrajzi helyed", + "geodataTitle": "Tartózkodási helyed", "intro": "A magánélet fontos – az egyénnek és a társadalomnak egyaránt. A MapComplete igyekszik a lehető legnagyobb mértékben tiszteletben tartani a magánéletedet – egészen addig a pontig, hogy már idegesítő cookie-bannerre sincs szükségünk. Ennek ellenére szeretnénk tájékoztatni arról, hogy milyen információkat gyűjtünk és osztunk meg, milyen körülmények között, és miért kell ezeket a kompromisszumoknak megkötnünk.", + "items": { + "changesYouMake": "Az általad elvégzett módosítások", + "date": "Amikor ez a módosítás létrejön", + "distanceIndicator": "Annak megjelölése, hogy milyen közel voltál a módosított objektumhoz. Más térképészek ebből tudják majd megállapítani, hogy (helyszíni) felmérés vagy távoli kutatás (pl. légi felvétel) alapján rajzoltál-e a térképre", + "language": "Felhasználói felület nyelve", + "theme": "A módosításkor használt tematikus térkép", + "username": "Felhasználóneved" + }, + "miscCookies": "A MapComplete együttműködik más szolgáltatókkal , különösen az objektumokról szóló fényképek betöltése érdekében. A képek különféle harmadik felek szerverein vannak tárolva, amelyek maguk is küldhetnek cookie-kat.", + "miscCookiesTitle": "Más cookie-k", + "surveillance": "Minthogy elolvasod az adatvédelmi irányelveket, valószínűleg törődsz az adatvédelemmel. Mi is! Még egy térfigyelő kamerákat tartalmazó térképet is készítettünk. Rajzold fel az összeset!", "title": "Adatvédelmi irányelvek", "tracking": "Ahhoz, hogy némi betekintést nyerünk abba, hogy ki látogatja meg weboldalunkat, néhány technikai adatot gyűjtünk. Ez tartalmazza azt az országot, ahonnan meglátogattad a weboldalt, azt a webhelyet, amely a MapComplete-re irányított, az eszközöd típusát és képernyőméretét. Egy cookie kerül elhelyezésre a készülékeden, amely jelzi, hogy ma meglátogatta a MapComplete-et. Ezek az adatok nem elég részletesek ahhoz, hogy személyesen azonosítsanak. A statisztika csak összesítetten érhető el, és mindenkinek nyilvános", - "trackingTitle": "Statisztikai adatok" + "trackingTitle": "Statisztikai adatok", + "whileYoureHere": "Érdekel az adatvédelem?" }, "reviews": { - "affiliated_reviewer_warning": "(Kapcsolódó személy véleménye)", - "attribution": "A véleményeket Mangrove Reviews tárolja, és a CC-BY 4.0 licenc szerint érhetők el.", - "i_am_affiliated": "Kapcsolatban állok ezzel a létesítménnyel
Ellenőrizd, hogy tulajdonos, alkotó, alkalmazott vagy hasonló vagy-e.", - "name_required": "Vélemények megjelenítéséhez és létrehozásához névre van szükség", - "no_reviews_yet": "Még nincs vélemény. Légy Te az első, aki ír, és ezzel támogasd a nyílt adatokat és az üzletet!", - "saved": "Vélemény elmentve. Köszönjük a megosztást!", + "affiliated_reviewer_warning": "(Kapcsolódó személy értékelése)", + "attribution": "A Mangrove Reviews által", + "averageRating": "Átlagos értékelés: {n} csillag", + "i_am_affiliated": "Kapcsolatban állok ezzel a létesítménnyel", + "i_am_affiliated_explanation": "Annak ellenőrzése, hogy tulajdonos, létrehozó, alkalmazott stb. vagy-e.", + "name_required": "Értékelés megjelenítéséhez és létrehozásához névre van szükség", + "no_reviews_yet": "Még nincs értékelés. Légy Te az első!", + "non_place_review": "Egy értékelés nem helyről szól, ezért itt nem jelenik meg.", + "non_place_reviews": "{n} értékelés nem helyről szól, ezért itt nem jelenik meg.", + "question": "Hogyan értékelnéd ezt: {title()}?", + "question_opinion": "Milyen tapasztalatokat szereztél?", + "rate": "Értékelés {n} csillagra", + "rated": "{n} csillagra értékelve", + "reviewPlaceholder": "Írd le a tapasztalataidat…", + "reviewing_as": "Értékelés mint {nickname}", + "reviewing_as_anonymous": "Értékelés névtelenül", + "reviews_bug": "Több értékelést vártál? Egy programhiba miatt néhány nem jelenik meg.", + "save": "Értékelés mentése", + "saved": "Értékelés elmentve. Köszönjük a megosztást!", "saving_review": "Mentés…", - "title": "{count} vélemény", - "title_singular": "Egy vélemény", - "tos": "Ha véleményt írsz, elfogadod a a Mangrove.reviews általános szerződési feltételeit (ászf.) és adatvédelmi irányelveit", - "write_a_comment": "Mondj véleményt…" + "see_all": "A mangrove.reviews oldalon az összes értékelésedet megtalálod", + "title": "{count} értékelés", + "title_singular": "Egy értékelés", + "too_long": "Legfeljebb {max} karakter engedélyezett. Az te értékelésed {amount} karakterből áll.", + "tos": "Ha értékelést írsz, elfogadod a a Mangrove.reviews általános szerződési feltételeit (ászf.) és adatvédelmi irányelveit", + "write_a_comment": "Értékelés írása…", + "your_reviews": "Korábbi értékeléseid", + "your_reviews_empty": "Nem találtunk tőled korábbi értékelést" }, "split": { "cancel": "Mégse", @@ -302,6 +815,110 @@ "inviteToSplit": "Út szétvágása rövidebb szakaszokra. Ez lehetővé teszi, hogy az út egyes részei különböző tulajdonságokkal rendelkezzenek.", "loginToSplit": "Egy út szétvágásához be kell jelentkezni", "split": "Szétvágás", - "splitTitle": "Válaszd ki a térképen, hogy az út hol legyen elvágva" + "splitAgain": "Út ismételt elvágása", + "splitTitle": "Válaszd ki a térképen, hol változnak az út tulajdonságai" + }, + "translations": { + "activateButton": "Segítség a MapComplete fordításában", + "allMissing": "Még nincs fordítás", + "missing": "{count} lefordítatlan elem", + "notImmediate": "A fordítások nem közvetlenül frissülnek, hanem általában néhány nappal később" + }, + "unknown": { + "clear": "Válasz törlése", + "explanation": "Töröld ezt az információdarabot, ha a jelenlegi válasz helytelen, és a tényleges érték sem ismert. Más információ nem lesz eltávolítva.", + "keep": "Válasz megtartása", + "markUnknown": "Megjelölés ismeretlenként", + "removedKeys": "A következő kulcsok el lesznek távolítva:", + "title": "Megjelölöd ismeretlenként?" + }, + "userinfo": { + "gotoInbox": "Nyisd meg a beérkezett leveleidet", + "gotoSettings": "Menj az OpenStreetMap.org oldalon a beállításaidhoz", + "noDescription": "Még nincs leírás a profiloldaladon", + "notLoggedIn": "Kijelentkeztél" + }, + "validation": { + "color": { + "description": "Szín vagy hexadecimális kód" + }, + "date": { + "description": "Dátum, az évszámmal kezdődően" + }, + "direction": { + "description": "Tájolás" + }, + "distance": { + "description": "Távolság (méter)" + }, + "email": { + "description": "e-mail-cím", + "feedback": "Ez nem érvényes e-mail-cím", + "noAt": "Az e-mail-címnek tartalmaznia kell egy @ karaktert" + }, + "fediverse": { + "description": "Egy fediverzum-felhasználónév (fediverse handle), általában @username@server.tld", + "feedback": "Egy fediverzum-felhasználónév (fediverse handle) @username@server.tld formátumú vagy egy profilra vezető link", + "invalidHost": "{host} nem érvényes host-név", + "onYourServer": "Lásd és kövesd a szervereden" + }, + "float": { + "description": "szám", + "feedback": "Ez nem egy szám" + }, + "id": { + "description": "azonosító", + "invalidCharacter": "Az azonosító csak betűt, számjegyet és aláhúzást tartalmazhat", + "shouldBeLonger": "Az azonosítónak legalább 3 karakter hosszúnak kell lennie" + }, + "int": { + "description": "egész szám" + }, + "nat": { + "description": "pozitív egész szám vagy nulla", + "mustBePositive": "A számnak pozitívnak kell lennie", + "mustBeWhole": "Csak egész szám engedélyezett", + "notANumber": "Adj meg egy számot" + }, + "opening_hours": { + "description": "Nyitva tartás" + }, + "pfloat": { + "description": "pozitív szám" + }, + "phone": { + "description": "telefonszám", + "feedback": "Ez nem érvényes telefonszám", + "feedbackCountry": "Ez nem érvényes telefonszám itt: {country}" + }, + "pnat": { + "description": "pozitív egész szám", + "noZero": "Nulla nem megengedett" + }, + "regex": { + "description": "reguláris kifejezés" + }, + "slope": { + "inputExplanation": "Helyezd a telefont a földre úgy, hogy a telefon felső oldala a lejtő teteje felé mutasson.", + "inputIncorrect": "A pontos méréshez győződj meg arról, hogy a nyíl a zöld területen belül van." + }, + "string": { + "description": "szövegdarab" + }, + "text": { + "description": "szövegdarab" + }, + "tooLong": "A szöveg túl hosszú, legfeljebb 255 karakter engedélyezett, most viszont {count} karakterből áll.", + "url": { + "aggregator": "{host} egy harmadik fél weboldala. Ha lehetséges, keresd meg a hivatalos honlapot.", + "description": "link egy weboldalra", + "feedback": "Ez nem érvényes webcím", + "spamSite": "{host} gyatra minőségű weboldalnak minősül. Használata nem megengedett." + }, + "wikidata": { + "description": "Wikidata-azonosító", + "empty": "Adj meg néhány Wikidata-bejegyzést", + "startsWithQ": "A Wikidata-azonosító Q-val kezdődik, amelyet egy szám követ" + } } -} \ No newline at end of file +} diff --git a/langs/ko.json b/langs/ko.json new file mode 100644 index 000000000..c324a701f --- /dev/null +++ b/langs/ko.json @@ -0,0 +1,8 @@ +{ + "advanced": { + "title": "고급 기능" + }, + "delete": { + "cancel": "취소" + } +} \ No newline at end of file diff --git a/langs/layers/ca.json b/langs/layers/ca.json index 15373e975..46963065c 100644 --- a/langs/layers/ca.json +++ b/langs/layers/ca.json @@ -1210,9 +1210,6 @@ }, "2": { "then": "L'accés està limitat a membres d'una escola, companyia o organització" - }, - "3": { - "then": "L'accés està limitat a membres d'una escola, companyia o organització" } }, "question": "Qui pot utilitzar aquest aparcament de bicicletes?", @@ -2401,10 +2398,10 @@ "1": { "then": "Aquest rellotge està muntat en una paret" }, - "2": { + "3": { "then": "Aquest rellotge està muntat en una tanca publicitària" }, - "3": { + "4": { "then": "Aquest rellotge està al sòl" } }, @@ -2515,17 +2512,6 @@ }, "question": "Aquest creuament té una illa al mig?" }, - "crossing-is-zebra": { - "mappings": { - "0": { - "then": "Açò és un pas de vianants" - }, - "1": { - "then": "Açò no és un pas de vianants" - } - }, - "question": "Açò és un pas de vianants?" - }, "crossing-minimap": { "mappings": { "0": { @@ -8957,23 +8943,6 @@ } } }, - "picture-license": { - "mappings": { - "0": { - "then": "Les imatges que feu tindran llicència CC0 i s'afegiran al domini públic. Això vol dir que tothom pot utilitzar les vostres imatges per a qualsevol propòsit. Aquesta és l'opció predeterminada. " - }, - "1": { - "then": "Les imatges que feu tindran llicència CC0 i s'afegiran al domini públic. Això vol dir que tothom pot utilitzar les vostres imatges per a qualsevol propòsit." - }, - "2": { - "then": "Les fotografies que facis es publicaran sota CC-BY 4.0 que requereix que qualsevol que utilitzi la vostra imatge us ha de donar crèdits" - }, - "3": { - "then": "Les imatges que feu tindran una llicència amb CC-BY-SA 4.0 el que significa que tothom que utilitzi la vostra imatge us ha d'atribuir i que els derivats de la vostra imatge s'han de tornar a compartir amb la mateixa llicència." - } - }, - "question": "Sota quina llicència vols publicar les teves fotos?" - }, "profile-description": { "mappings": { "0": { @@ -9625,4 +9594,4 @@ "render": "Turbina eòlica" } } -} \ No newline at end of file +} diff --git a/langs/layers/cs.json b/langs/layers/cs.json index 56cd2a519..2618f40f1 100644 --- a/langs/layers/cs.json +++ b/langs/layers/cs.json @@ -543,7 +543,7 @@ "then": "Toto dílo slouží také jako památník" }, "1": { - "then": "Toto dílo neslouží jako lavička" + "then": "Toto umělecké dílo neslouží jako památník" } }, "question": "Slouží toto dílo jako památník?" @@ -1219,8 +1219,38 @@ "freeform": { "placeholder": "Název započítávané lokality" }, - "question": "Jak se jmenuje započítávaná lokalita?" + "question": "Jak se jmenuje započítávaná lokalita?", + "render": "Název započítávaného místa: {name}" + }, + "ref": { + "freeform": { + "placeholder": "Referenční číslo počítadla" + }, + "mappings": { + "0": { + "then": "Toto počítadlo nemá referenční číslo" + } + }, + "question": "Jaké je referenční číslo tohoto počítadla?", + "render": "Referenční číslo počítadla: {ref}" + }, + "start_date": { + "freeform": { + "placeholder": "Datum spuštění počítadla" + }, + "question": "Kdy toto počítadlo začalo počítat?", + "render": "Toto počítadlo se začalo počítat dne {start_date}" + }, + "website": { + "freeform": { + "placeholder": "Webové stránky počítadla" + }, + "question": "Existuje webová stránka tohoto počítadla jízdních kol?", + "render": "Webové stránky počítadla: {website}" } + }, + "title": { + "render": "Počítadlo jízdních kol" } }, "bicycle_library": { @@ -1318,6 +1348,9 @@ }, "7": { "then": "Zde si můžete půjčit cyklistické přilby" + }, + "8": { + "then": "Nákladní kola si můžete půjčit zde" } }, "question": "Jaká jízdní kola a příslušenství se zde půjčují?", @@ -1514,7 +1547,7 @@ "then": "Přístup je omezen na členy školy, společnosti nebo organizace" }, "3": { - "then": "Přístup je omezen na členy školy, společnosti nebo organizace" + "then": "Soukromé parkoviště pro kola, které není nikdy přístupné veřejnosti, a to ani za členský poplatek" } }, "question": "Kdo může parkoviště pro jízdní kola využívat?", @@ -1525,6 +1558,12 @@ "0": { "then": "Stojany" }, + "1": { + "then": "Stojan s bočními smyčkami" + }, + "10": { + "then": "Skloněný držák s možností použití zámku přes očko. Sedlovou trubku lze za stojan uchytit pomocí kotvy" + }, "2": { "then": "Stojan na kola / smyčky" }, @@ -1545,16 +1584,25 @@ }, "8": { "then": "Plocha na zemi označená pro parkování jízdních kol" + }, + "9": { + "then": "Skříňka - kola jsou uzavřena zcela samostatně nebo s několika koly dohromady. Skříňka je příliš malá na to, aby se do ní vešla stojící osoba.." } }, "question": "Jaký je typ tohoto parkoviště pro jízdní kola?", "render": "Jde o typ parkoviště pro jízdní kola: {bicycle_parking}" }, "Capacity": { - "question": "Kolik jízdních kol se vejde na toto parkoviště (včetně případných nákladních kol)?", + "question": "Kolik jízdních kol se vejde na toto parkoviště?", + "questionHint": "Patří sem běžná jízdní kola, nákladní kola, elektrokola, ...", "render": "Místo pro {capacity} kol" }, "Cargo bike capacity?": { + "mappings": { + "0": { + "then": "Nejsou zde žádná vyhrazená místa pro nákladní kola nebo zde není parkování nákladních kol povoleno" + } + }, "question": "Kolik nákladních jízdních kol se vejde do tohoto parkoviště pro jízdní kola?", "render": "Toto parkoviště je vhodné pro {capacity:cargo_bike} nákladních kol" }, @@ -1567,7 +1615,7 @@ "then": "Toto parkoviště má vyhrazená (oficiální) místa pro nákladní kola." }, "2": { - "then": "Není povoleno parkovat nákladní kola" + "then": "Parkovat nákladní kola není povoleno nebo nejsou k dispozici žádná místa pro nákladní kola" } }, "question": "Má toto parkoviště místa pro nákladní kola?" @@ -1599,6 +1647,41 @@ } }, "question": "Jaké je relativní umístění tohoto parkoviště pro jízdní kola?" + }, + "charge": { + "question": "Kolik stojí zaparkování kola na tomto místě?", + "questionHint": "To je částka, která se účtuje za jedno jízdní kolo", + "render": "Parkování kola stojí {charge}" + }, + "fee": { + "mappings": { + "0": { + "then": "Za použití tohoto parkoviště pro kola se musí platit" + }, + "1": { + "then": "Bezplatné použití" + } + }, + "question": "Jsou tato parkoviště pro jízdní kola zdarma?" + }, + "maxstay": { + "question": "Jaká je maximální povolená doba parkování?", + "questionHint": "Pokud je kolo zaparkované delší dobu, může ho provozovatel odstranit", + "render": "Kolo zde může být zaparkováno maximálně po dobu {canonical(maxstay)}" + }, + "operator": { + "question": "Kdo se stará o parkování jízdních kol?", + "render": "Toto parkoviště pro jízdní kola spravuje {operator}" + }, + "operator_email": { + "question": "Jaká je e-mailová adresa provozovatele tohoto parkoviště pro jízdní kola?" + }, + "operator_phone": { + "question": "Jaké je telefonní číslo na provozovatele tohoto parkoviště pro jízdní kola?", + "questionHint": "Na toto číslo je možné volat v případě problémů, např. při odstraňování neudržovaných jízdních kol" + }, + "operator_website": { + "question": "Jaké je číslo internetové stránky provozovatele tohoto parkoviště pro jízdní kola?" } }, "title": { @@ -1952,6 +2035,24 @@ "render": "Místo pozorování ptáků" } }, + "brothel": { + "description": "Zařízení zaměřené speciálně na prostituci. ", + "name": "Nevěstince", + "presets": { + "0": { + "title": "nevěstinec" + } + }, + "tagRenderings": { + "name": { + "question": "Jak se jmenuje tento nevěstinec?", + "render": "Tento nevěstinec se jmenuje {name}" + } + }, + "title": { + "render": "Nevěstinec" + } + }, "cafe_pub": { "deletion": { "extraDeleteReasons": { @@ -2013,6 +2114,15 @@ "mappings": { "0": { "then": "{name}" + }, + "1": { + "then": "Bar" + }, + "2": { + "then": "Kavárna" + }, + "3": { + "then": "Noční klub" } }, "render": "Hospoda" @@ -2642,10 +2752,10 @@ "1": { "then": "Tyto hodiny jsou namontovány na stěně" }, - "2": { + "3": { "then": "Tyto hodiny jsou součástí billboardu" }, - "3": { + "4": { "then": "Tyto hodiny jsou na zemi" } }, @@ -2756,17 +2866,6 @@ }, "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": { "mappings": { "0": { @@ -5005,7 +5104,48 @@ } }, "icons": { - "description": "Vrstva sloužící jako knihovna pro ikony-značky, zejména pro zobrazení jako odznak vedle bodu zájmu" + "description": "Vrstva sloužící jako knihovna pro ikony-značky, zejména pro zobrazení jako odznak vedle bodu zájmu", + "tagRenderings": { + "osmlink": { + "mappings": { + "1": { + "then": { + "special": { + "arialabel": "Otevřít na openstreetmap.org" + } + } + }, + "2": { + "then": { + "special": { + "arialabel": "Otevřít na openstreetmap.org" + } + } + } + }, + "render": { + "special": { + "arialabel": "Otevřít na openstreetmap.org" + } + } + }, + "phonelink": { + "mappings": { + "0": { + "then": { + "special": { + "arialabel": "telefon" + } + } + } + }, + "render": { + "special": { + "arialabel": "telefon" + } + } + } + } }, "indoors": { "description": "Základní mapování interiérů: zobrazuje obrysy místností", @@ -5350,7 +5490,7 @@ "then": "Mapa zobrazující vesnici nebo město" }, "3": { - "then": " Mapa města" + "then": "Mapa města" }, "4": { "then": "Mapa celého regionu s několika městy a vesnicemi" @@ -5817,6 +5957,11 @@ } }, "render": "Poznámka" + }, + "titleIcons": { + "0": { + "ariaLabel": "Zobrazit na OpenStreetMap.org" + } } }, "observation_tower": { @@ -7532,6 +7677,14 @@ "render": "Škola {name}" } }, + "search": { + "description": "Soukromá vrstva zobrazující výsledky hledání", + "tagRenderings": { + "intro": { + "render": "Výsledek hledání" + } + } + }, "selected_element": { "description": "Zvýrazní aktuálně vybraný prvek. Přepište tuto vrstvu, aby měla různé barvy" }, @@ -7589,7 +7742,7 @@ "name": "Obchod", "presets": { "0": { - "description": "Přidat nový obchod", + "description": "Později můžete zadat, co tento obchod prodává.", "title": "obchod" } }, @@ -8299,6 +8452,11 @@ "render": "Pouliční lampa" } }, + "summary": { + "title": { + "render": "Souhrn" + } + }, "surveillance_camera": { "description": "Tato vrstva zobrazuje sledovací kamery a umožňuje přispěvateli aktualizovat informace a přidávat nové kamery", "name": "Bezpečnostní kamery", @@ -8591,6 +8749,18 @@ } }, "tagRenderings": { + "gender_segregated": { + "mappings": { + "0": { + "then": "K dispozici je oddělený, označený prostor pro muže a ženy" + }, + "1": { + "then": "Neexistuje žádný oddělený, označený prostor pro muže a ženy" + } + }, + "question": "Jsou tyto toalety rozděleny podle pohlaví?", + "questionHint": "Existují samostatné stánky nebo oddělené prostory pro muže a ženy a jsou jako takové označeny?" + }, "opening_hours_24_7": { "override": { "question": "Kdy jsou tyto toalety otevřeny?" @@ -8620,16 +8790,16 @@ "toilet-changing_table:location": { "mappings": { "0": { - "then": "Přebalovací pult je na dámské toaletě. " + "then": "Přebalovací pult je na dámské toaletě" }, "1": { - "then": "Přebalovací pult je na pánské toaletě. " + "then": "Přebalovací pult je na pánské toaletě" }, "2": { - "then": "Přebalovací pult je na toaletě pro vozíčkáře. " + "then": "Přebalovací pult je na toaletě pro vozíčkáře" }, "3": { - "then": "Přebalovací pult je ve vyhrazené místnosti. " + "then": "Přebalovací pult je ve vyhrazené místnosti" } }, "question": "Kde je umístěn přebalovací pult?", @@ -9229,6 +9399,20 @@ "usersettings": { "description": "Speciální vrstva, která není určena k zobrazení na mapě, ale slouží k nastavení uživatelských nastavení", "tagRenderings": { + "a11y-features": { + "mappings": { + "0": { + "then": "Povolení funkcí přístupnosti při použití kláves se šipkami k navigaci na mapě" + } + } + }, + "add-new-feature": { + "mappings": { + "4": { + "then": "Po kliknutí pravým tlačítkem myši nebo dlouhém stisknutí mapy se zobrazí značka, kam lze přidat nový prvek. Kromě toho se vlevo dole zobrazí tlačítko" + } + } + }, "all-questions-at-once": { "mappings": { "0": { @@ -9319,7 +9503,7 @@ "language_picker": { "mappings": { "0": { - "then": "Jazyk byl nastaven pomocí parametru URL a uživatel jej nemůže nastavit.²" + "then": "Jazyk byl nastaven pomocí parametru URL a uživatel jej nemůže nastavit." } } }, @@ -9331,22 +9515,15 @@ } } }, - "picture-license": { + "more_privacy": { "mappings": { "0": { - "then": "Pořízené fotografie budou licencovány pod CC0 a přidány do veřejné domény. To znamená, že kdokoli může vaše snímky použít k jakémukoli účelu. Toto je výchozí volba." + "then": "Při provádění změn v OpenStreetMap neuvádějte, jak daleko jste byli od změněných objektů." }, "1": { - "then": "Pořízené fotografie budou licencovány pod CC0 a přidány do veřejné domény. To znamená, že kdokoli může vaše snímky použít k jakémukoli účelu." - }, - "2": { - "then": "Pořízené fotografie budou licencovány pod CC-BY 4.0, což vyžaduje, aby vás uvedl každý, kdo použije vaší fotku" - }, - "3": { - "then": "Pořízené fotografie budou licencovány pod CC-BY-SA 4.0, což vyžaduje, aby vás uvedl každý, kdo použije vaší fotku a že odvozené fotky musí být dále sdíleny se stejnou licencí." + "then": "Při provádění změn v OpenStreetMap zhruba uveďte, jak daleko jste byli od změněných objektů. To pomůže ostatním přispěvatelům pochopit, jak jste změnu provedli" } - }, - "question": "Pod jakou licencí chcete své fotografie zveřejnit?" + } }, "profile-description": { "mappings": { @@ -9359,6 +9536,14 @@ } } }, + "scalebar": { + "mappings": { + "1": { + "then": "Skrytí panelu měřítka" + } + }, + "question": "Má být na mapě zobrazeno měřítko?" + }, "settings-link": { "render": { "special": { @@ -9402,6 +9587,19 @@ "question": "Zobrazit nezpracované/raw tagy OpenStreetMap?", "questionHint": "Tagy jsou atributy, které má každý element. Jedná se o technické údaje, které jsou uloženy v databázi. K úpravám pomocí MapComplete tyto informace nepotřebujete, ale pokročilí uživatelé by je mohli chtít použít jako referenci." }, + "sync-visited-themes": { + "mappings": { + "0": { + "then": "Uložit navštívené tematické mapy a synchronizovat je prostřednictvím openstreetmap.org. OpenStreetMap a všechny aplikace, které používáte, mohou tuto historii vidět" + } + } + }, + "title-editing": { + "render": "

Úprava nastavení

" + }, + "title-privacy-legal": { + "render": "

Soukromí a právní záležitosti

" + }, "translation-completeness": { "mappings": { "0": { @@ -9989,4 +10187,4 @@ "render": "větrná turbína" } } -} \ No newline at end of file +} diff --git a/langs/layers/da.json b/langs/layers/da.json index aea73eae3..b792b89ad 100644 --- a/langs/layers/da.json +++ b/langs/layers/da.json @@ -652,9 +652,6 @@ }, "2": { "then": "Adgangen er begrænset til medlemmer af en skole, virksomhed eller organisation" - }, - "3": { - "then": "Adgangen er begrænset til medlemmer af en skole, virksomhed eller organisation" } }, "question": "Hvem kan bruge denne cykelparkering?", @@ -2757,14 +2754,6 @@ } } }, - "picture-license": { - "mappings": { - "1": { - "then": "Billeder, som du har taget, vil blive udgivet under CC0-licensen og lagt ud i fælleseje. Det betyder, at alle kan bruge dine billeder til ethvert formål." - } - }, - "question": "Under hvilken licens vil du frigive dine billeder?" - }, "settings-link": { "render": { "special": { diff --git a/langs/layers/de.json b/langs/layers/de.json index 07baa8371..4b96e4e4f 100644 --- a/langs/layers/de.json +++ b/langs/layers/de.json @@ -93,7 +93,7 @@ "then": "Werbung wird auf beiden Seiten angezeigt" } }, - "question": "Auf wie vielen Seiten wird Werbung angezeigt?" + "question": "Von wie vielen Seiten kann man Werbung betrachten?" }, "animated": { "mappings": { @@ -543,7 +543,7 @@ "then": "Dieses Kunstwerk dient auch als Mahnmal" }, "1": { - "then": "Dieses Kunstwerk dient nicht als Sitzbank" + "then": "Dieses Kunstwerk dient nicht als Denkmal" } }, "question": "Dient dieses Kunstwerk als Mahnmal?" @@ -952,7 +952,7 @@ "then": "Gas" } }, - "question": "Mit was wird die Grillstelle angefeuert?" + "question": "Womit wird der Grill befeuert?" } }, "title": { @@ -1144,7 +1144,7 @@ }, "nonDeleteMappings": { "0": { - "then": "Diese Bushaltestelle hat keine Bank (es gab nie eine oder sie wurde entfernt)" + "then": "Diese Bushaltestelle hat keine Sitzank (es gab nie eine oder sie wurde entfernt)" } } }, @@ -1492,6 +1492,17 @@ } }, "tagRenderings": { + "automated": { + "mappings": { + "0": { + "then": "Dies ist eine manuelle Fahrradwaschanlage" + }, + "1": { + "then": "Dies ist eine automatische Fahrradwaschanlage" + } + }, + "question": "Ist dieser Fahrradreinigungsdienst automatisiert?" + }, "bike_cleaning-charge": { "mappings": { "0": { @@ -1515,6 +1526,17 @@ }, "question": "Wie viel kostet die Nutzung des Reinigungsdienstes?", "render": "Der Reinigungsservice kostet {service:bicycle:cleaning:charge}" + }, + "self_service": { + "mappings": { + "0": { + "then": "Die Reinigung erfolgt selbständig" + }, + "1": { + "then": "Dieser Reinigungsdienst wird von einem Angestellten betrieben" + } + }, + "question": "Muss die Reinigung selbständig erfolgen?" } }, "title": { @@ -1547,7 +1569,7 @@ "then": "Der Parkplatz darf nur von Mitgliedern einer Schule, Firma oder Organisation genutzt werden" }, "3": { - "then": "Der Parkplatz darf nur von Mitgliedern einer Schule, Firma oder Organisation genutzt werden" + "then": "Private Fahrradabstellplätze, die nie der Öffentlichkeit zur Verfügung stehen, auch nicht über einen Mitgliedsbeitrag" } }, "question": "Wer darf den Parkplatz nutzen?", @@ -1561,6 +1583,9 @@ "1": { "then": "Radständer mit Seitenbügel" }, + "10": { + "then": "Ein Anlehnbügel mit der Möglichkeit, ein Schloss durch eine Öse zu verwenden. Das Sitzrohr kann durch den Ständer durch einen Anker gehalten werden" + }, "2": { "then": "Metallgestänge" }, @@ -1694,11 +1719,11 @@ "title": "eine Fahrradpumpe" }, "1": { - "description": "Ein Gerät mit Werkzeugen zur Reparatur von Fahrrädern kombiniert mit einer Pumpe an einem festen Standort. Die Werkzeuge sind oft mit Ketten gegen Diebstahl gesichert.", + "description": "Ein Gerät mit Werkzeug zur Reparatur von Fahrrädern kombiniert mit einer Pumpe an einem festen Standort. Das Werkzeug ist oft mit Ketten gegen Diebstahl gesichert.", "title": "eine Fahrrad-Reparaturstation mit Pumpe" }, "2": { - "description": "Werkzeug, um Ihr Fahrrad im öffentlichen Raum zu reparieren (ohne Pumpe). Die Werkzeuge sind gegen Diebstahl gesichert.", + "description": "Werkzeug, um Ihr Fahrrad im öffentlichen Raum zu reparieren (ohne Pumpe). Das Werkzeug ist gegen Diebstahl gesichert.", "title": "eine Fahrrad-Reparaturstation ohne Pumpe" } }, @@ -3205,6 +3230,10 @@ "1": { "description": "Eine öffentlich sichtbare Uhr an einer Wand", "title": "eine an der Wand montierte Uhr" + }, + "2": { + "description": "Eine öffentlich sichtbare Uhr, die direkt an einer Wand angebracht ist", + "title": "eine Wanduhr, die direkt an der Wand angebracht ist" } }, "tagRenderings": { @@ -3285,18 +3314,34 @@ }, "question": "Zeigt diese Uhr auch die Luftfeuchtigkeit an?" }, + "indoor": { + "override": { + "mappings": { + "0": { + "then": "Diese Uhr befindet sich in Innenräumen" + }, + "1": { + "then": "Diese Uhr ist im Freien" + } + }, + "question": "Befindet sich diese Uhr in Innenräumen?" + } + }, "support": { "mappings": { "0": { "then": "Diese Uhr ist auf einem Mast montiert" }, "1": { - "then": "Diese Uhr ist an einer Wand montiert" + "then": "Diese Uhr wird an der Wand befestigt, in der Regel durch einen Träger, der senkrecht zur Wand steht" }, "2": { - "then": "Diese Uhr ist Teil einer Werbetafel" + "then": "Diese Uhr ist direkt an einer Wand montiert" }, "3": { + "then": "Diese Uhr ist Teil einer Werbetafel" + }, + "4": { "then": "Diese Uhr befindet sich auf dem Boden" } }, @@ -3407,17 +3452,6 @@ }, "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": { "mappings": { "0": { @@ -3501,6 +3535,57 @@ } }, "question": "Gibt die Ampel ein Vibrationssignal, um das Überqueren zu erleichtern? (in der Regel am unteren Ende der Ampeltaste)" + }, + "markings": { + "mappings": { + "0": { + "then": "Diese Kreuzung hat keine Markierungen" + }, + "1": { + "then": "Dieser Übergang ist mit Zebrastreifen markiert" + }, + "10": { + "then": "Dieser Übergang hat Zebrastreifen in wechselnden Farben" + }, + "11": { + "then": "Dieser Übergang hat doppelte Zebrastreifen" + }, + "12": { + "then": "Diese Kreuzung hat Piktogramme auf der Straße" + }, + "13": { + "then": "Diese Kreuzung hat Linien auf beiden Seiten der Kreuzung und Balken, die sie verbinden, mit einer Unterbrechung in jedem Balken" + }, + "14": { + "then": "Dieser Übergang hat doppelte Linien auf beiden Seiten des Übergangs" + }, + "2": { + "then": "Dieser Übergang weist Markierungen unbekannter Art auf" + }, + "3": { + "then": "Dieser Übergang hat Linien auf beiden Seiten des Übergangs" + }, + "4": { + "then": "Diese Kreuzung hat Linien auf beiden Seiten der Kreuzung, zusammen mit Stangen, die sie verbinden" + }, + "5": { + "then": "Dieser Übergang hat gestrichelte Linien auf beiden Seiten des Übergangs" + }, + "6": { + "then": "Dieser Übergang hat gestrichelte Linien auf beiden Seiten des Übergangs" + }, + "7": { + "then": "Dieser Übergang wird durch eine andersfarbige Oberfläche gekennzeichnet" + }, + "8": { + "then": "Diese Kreuzung hat Linien auf beiden Seiten der Kreuzung, zusammen mit abgewinkelten Stangen, die sie verbinden" + }, + "9": { + "then": "Dieser Übergang hat Zebrastreifen mit einer Unterbrechung in jedem Balken" + } + }, + "question": "Welche Art von Markierungen gibt es an diesem Übergang?", + "render": "Dieser Übergang hat {crossing:markings} Markierungen" } }, "title": { @@ -3916,6 +4001,57 @@ "render": "Weg" } }, + "cyclist_waiting_aid": { + "description": "Verschiedene Infrastruktureinrichtungen, die Radfahrern helfen, während sie an einer Ampel warten.", + "name": "Radfahrer-Wartehilfen", + "presets": { + "0": { + "description": "Eine Fußstütze, ein Handlauf oder ein anderes Hilfsmittel zur Verbesserung des Komforts beim Warten an der Ampel", + "title": "eine Radfahrer-Wartehilfe" + } + }, + "tagRenderings": { + "direction": { + "mappings": { + "0": { + "then": "Diese Wartehilfe kann bei der Weiterfahrt auf diesem Weg genutzt werden" + }, + "1": { + "then": "Diese Wartehilfe kann beim Rückwärtsfahren auf diesem Weg benutzt werden" + } + }, + "render": "Diese Wartehilfe kann in Fahrtrichtung {direction} benutzt werden" + }, + "side": { + "mappings": { + "0": { + "then": "Diese Wartehilfe befindet sich auf der linken Seite" + }, + "1": { + "then": "Diese Wartehilfe befindet sich auf der rechten Seite" + }, + "2": { + "then": "Auf beiden Seiten der Straße gibt es Wartehilfen" + } + }, + "question": "Auf welcher Straßenseite befindet sich dies?" + }, + "type": { + "mappings": { + "0": { + "then": "Hier gibt es ein Brett oder einen Pflock zum Abstützen des Fußes" + }, + "1": { + "then": "Hier gibt es eine Schiene oder einen Griff zum Festhalten" + } + }, + "question": "Aus welchen Bestandteilen besteht diese Wartehilfe?" + } + }, + "title": { + "render": "Radfahrer-Wartehilfe" + } + }, "defibrillator": { "description": "Eine Ebene mit Defibrillatoren, die in Notfällen eingesetzt werden können. Diese Ebene enthält öffentliche Defibrillatoren, aber auch Defibrillatoren, bei denen möglicherweise Personal benötigt wird, um das Gerät zu holen", "name": "Defibrillatoren", @@ -5397,7 +5533,7 @@ "delivery": { "mappings": { "0": { - "then": "Dieses Unternehmen liefert nach Hause (eventuell über eine dritte Partei)" + "then": "Dieses Unternehmen liefert nach Hause (möglicherweise über eine dritte Partei)" }, "1": { "then": "Dieses Unternehmen liefert nicht nach Hause" @@ -5446,6 +5582,9 @@ }, "friture-vegan": { "mappings": { + "0": { + "then": "Nur vegane Snacks und Burger erhältlich" + }, "1": { "then": "Vegane Snacks sind erhältlich" }, @@ -5460,6 +5599,9 @@ }, "friture-vegetarian": { "mappings": { + "0": { + "then": "Nur vegetarische Snacks und Burger erhältlich" + }, "1": { "then": "Vegetarische Snacks sind erhältlich" }, @@ -7893,6 +8035,15 @@ "presets": { "0": { "title": "ein Briefkasten" + }, + "1": { + "title": "ein Briefkasten an einer Wand" + } + }, + "tagRenderings": { + "operator": { + "question": "Wer betreibt diesen Briefkasten?", + "render": "Dieser Briefkasten wird von {operator} betrieben" } }, "title": { @@ -8388,6 +8539,17 @@ }, "question": "Verkauft das Geschäft glutenfreie Produkte?" }, + "indoor": { + "mappings": { + "0": { + "then": "Dieses Objekt befindet sich in einem Innenraum" + }, + "1": { + "then": "Dieses Objekt befindet sich im Freien" + } + }, + "question": "Befindet sich das Objekt in einem Innenraum?" + }, "induction-loop": { "mappings": { "0": { @@ -10478,6 +10640,133 @@ "render": "Überwachungskamera" } }, + "tactile_map": { + "description": "Ebene mit taktilen Karten, die von sehbehinderten Menschen zur Navigation in der Stadt verwendet werden können.", + "name": "Taktile Karten", + "presets": { + "0": { + "description": "Eine taktile Karte, die durch Berühren gelesen werden kann. Im Gegensatz zu einem taktilen Modell ist diese Karte relativ flach und enthält keine dreidimensionalen Gebäude oder ähnliches.", + "title": "eine taktile Karte" + } + }, + "tagRenderings": { + "braille": { + "mappings": { + "0": { + "then": "Diese taktile Karte hat einen Text in Blindenschrift." + }, + "1": { + "then": "Diese taktile Karte hat keinen Text in Blindenschrift." + } + }, + "question": "Gibt es einen Text in Blindenschrift auf dieser taktilen Karte?" + }, + "braille_languages": { + "render": { + "special": { + "question": "In welchen Sprachen ist der Text in Blindenschrift auf dieser taktilen Karte?", + "render_list_item": "Diese Karte hat Text in Blindenschrift in {language}", + "render_single_language": "Diese Karte hat Text in Blindenschrift in {language}" + } + } + }, + "description": { + "freeform": { + "placeholder": "z.B. Taktile Karte des Stadtzentrums" + }, + "question": "Was zeigt diese taktile Karte?", + "render": "Beschreibung: {blind:description:en}." + }, + "embossed_letters": { + "mappings": { + "0": { + "then": "Diese taktile Karte hat geprägte Buchstaben." + }, + "1": { + "then": "Diese taktile Karte hat keine geprägten Buchstaben." + } + }, + "question": "Gibt es auf dieser taktilen Karte geprägte Buchstaben?" + }, + "embossed_letters_languages": { + "render": { + "special": { + "question": "In welchen Sprachen sind die geprägten Buchstaben auf dieser taktilen Karte?", + "render_list_item": "Diese Karte hat geprägte Buchstaben in {language}", + "render_single_language": "Diese Karte hat geprägte Buchstaben in {language}" + } + } + } + }, + "title": "Taktile Karte" + }, + "tactile_model": { + "description": "Ebene mit dreidimensionalen ertastbaren Modellen der Umgebung.", + "name": "Taktile Modelle", + "presets": { + "0": { + "description": "Ein taktiles Modell ist ein dreidimensionales Modell eines Gebiets, das es den Menschen ermöglicht, ein Gebiet durch Berührung zu erkunden/sehen.", + "title": "ein taktiles Modell" + } + }, + "tagRenderings": { + "braille": { + "mappings": { + "0": { + "then": "Es gibt eine Beschreibung in Blindenschrift." + }, + "1": { + "then": "Es gibt keine Beschreibung in Blindenschrift." + } + }, + "question": "Gibt es eine Beschreibung in Blindenschrift?" + }, + "braille_languages": { + "render": { + "special": { + "question": "In welchen Sprachen gibt es eine Beschreibung in Blindenschrift?", + "render_list_item": "Dieses Modell hat eine Beschreibung in Brailleschrift in {language()}", + "render_single_language": "Dieses Modell hat eine Beschreibung in Brailleschrift in {language}" + } + } + }, + "description": { + "freeform": { + "placeholder": "z.B. Taktiles Modell des Stadtzentrums" + }, + "question": "Was zeigt dieses taktile Modell?", + "render": "Beschreibung: {blind:description:en}." + }, + "embossed_letters": { + "mappings": { + "0": { + "then": "Das Modell ist mit geprägten Buchstaben beschrieben." + }, + "1": { + "then": "Es gibt keine eingeprägten Buchstaben, die das Modell beschreiben." + } + }, + "question": "Gibt es eingeprägte Buchstaben, die das Modell beschreiben?" + }, + "embossed_letters_languages": { + "render": { + "special": { + "question": "In welchen Sprachen gibt es geprägte Buchstaben?", + "render_list_item": "Dieses Modell hat geprägte Buchstaben in {language()}", + "render_single_language": "Dieses Modell hat geprägte Buchstaben in {language}" + } + } + }, + "scale": { + "freeform": { + "placeholder": "z.B. 1:1000" + }, + "question": "Welchen Maßstab hat das Modell?", + "render": "Der Maßstab dieses Modells ist {scale}." + } + }, + "title": "Taktiles Modell" + }, "tertiary_education": { "name": "Hochschulen und Universitäten", "presets": { @@ -11770,23 +12059,6 @@ } } }, - "picture-license": { - "mappings": { - "0": { - "then": "Die von Ihnen aufgenommenen Bilder werden mit CC0 lizenziert und der Public Domain hinzugefügt. Das bedeutet, dass jeder Ihre Bilder für jeden Zweck verwenden kann. Dies ist die Standardeinstellung." - }, - "1": { - "then": "Ihre aufgenommenen Bilder werden mit CC0 lizenziert und der Public Domain hinzugefügt. Das bedeutet, dass jeder Ihre Bilder für jeden Zweck verwenden kann." - }, - "2": { - "then": "Die von Ihnen aufgenommenen Bilder werden mit CC-BY 4.0 lizenziert, was bedeutet, dass jeder, der Ihr Bild verwendet, Sie als Urheber nennen muss" - }, - "3": { - "then": "Die von Ihnen aufgenommenen Bilder werden mit CC-BY-SA 4.0 lizenziert, was bedeutet, dass jeder, der Ihr Bild verwendet, Sie als Urheber nennen muss und dass Ableitungen Ihres Bildes mit der gleichen Lizenz weitergegeben werden müssen." - } - }, - "question": "Unter welcher Lizenz möchten Sie Ihre Bilder veröffentlichen?" - }, "profile-description": { "mappings": { "0": { @@ -12510,4 +12782,4 @@ "render": "Windrad" } } -} \ No newline at end of file +} diff --git a/langs/layers/el.json b/langs/layers/el.json new file mode 100644 index 000000000..0967ef424 --- /dev/null +++ b/langs/layers/el.json @@ -0,0 +1 @@ +{} diff --git a/langs/layers/en.json b/langs/layers/en.json index 23f1a804f..1f5a125ee 100644 --- a/langs/layers/en.json +++ b/langs/layers/en.json @@ -543,7 +543,7 @@ "then": "This artwork also serves as a memorial" }, "1": { - "then": "This artwork does not serve as a bench" + "then": "This artwork does not serve as a memorial" } }, "question": "Does this artwork serve as a memorial?" @@ -1492,6 +1492,17 @@ } }, "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": { "mappings": { "0": { @@ -1515,6 +1526,17 @@ }, "question": "How much does it cost to use the cleaning service?", "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": { @@ -1547,7 +1569,7 @@ "then": "Access is limited to members of a school, company or organisation" }, "3": { - "then": "Access is limited to members of a school, company or organisation" + "then": "Private bicycle parking which is never available to the public, also not via a membership fee" } }, "question": "Who can use this bicycle parking?", @@ -1561,6 +1583,9 @@ "1": { "then": "Rack with side loops" }, + "10": { + "then": "A lean-to bracket with possibility to use a lock through eyelet. The seat tube can be held by the stand by an anchor" + }, "2": { "then": "Wheelbenders / rack" }, @@ -3205,6 +3230,10 @@ "1": { "description": "A publicly visible clock mounted on a wall", "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": { @@ -3285,18 +3314,34 @@ }, "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": { "mappings": { "0": { "then": "This clock is mounted on a pole" }, "1": { - "then": "This clock is mounted on a wall" + "then": "This clock is mounted on a wall, usually through a support perpendicular to the wall" }, "2": { - "then": "This clock is part of a billboard" + "then": "This clock is mounted directly on a wall" }, "3": { + "then": "This clock is part of a billboard" + }, + "4": { "then": "This clock is on the ground" } }, @@ -3407,17 +3452,6 @@ }, "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": { "mappings": { "0": { @@ -3501,6 +3535,57 @@ } }, "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": { @@ -3916,6 +4001,57 @@ "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": { "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", @@ -5397,7 +5533,7 @@ "delivery": { "mappings": { "0": { - "then": "This business does home delivery (eventually via a third party)" + "then": "This business does home delivery (possibly via a third party)" }, "1": { "then": "This business does not deliver at home" @@ -7899,6 +8035,15 @@ "presets": { "0": { "title": "a postbox" + }, + "1": { + "title": "a postbox on a wall" + } + }, + "tagRenderings": { + "operator": { + "question": "Who operates this postbox?", + "render": "This postbox is operated by {operator}" } }, "title": { @@ -8394,6 +8539,17 @@ }, "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": { "mappings": { "0": { @@ -10484,6 +10640,133 @@ "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": { "name": "Colleges and universities", "presets": { @@ -11776,23 +12059,6 @@ } } }, - "picture-license": { - "mappings": { - "0": { - "then": "Pictures you take will be licensed with CC0 and added to the public domain. This means that everyone can use your pictures for any purpose. This is the default choice." - }, - "1": { - "then": "Pictures you take will be licensed with CC0 and added to the public domain. This means that everyone can use your pictures for any purpose." - }, - "2": { - "then": "Pictures you take will be licensed with CC-BY 4.0 which requires everyone using your picture that they have to attribute you" - }, - "3": { - "then": "Pictures you take will be licensed with CC-BY-SA 4.0 which means that everyone using your picture must attribute you and that derivatives of your picture must be reshared with the same license." - } - }, - "question": "Under what license do you want to publish your pictures?" - }, "profile-description": { "mappings": { "0": { diff --git a/langs/layers/es.json b/langs/layers/es.json index e1b22ea91..8d7698fcc 100644 --- a/langs/layers/es.json +++ b/langs/layers/es.json @@ -4,73 +4,73 @@ "name": "Direcciones conocidas en OSM", "tagRenderings": { "fixme": { - "question": "¿Qué debe corregirse aquí? Expóngalo" + "question": "¿Qué debería corregirse aquí? Explica" }, "housenumber": { "mappings": { "0": { - "then": "Esta edificación no tiene número" + "then": "Este edificio no tiene número" } }, "question": "¿Cuál es el número de esta casa?", - "render": "El número de puerta es {addr:housenumber}" + "render": "El número de la casa es {addr:housenumber}" }, "street": { "question": "¿En qué calle se encuentra esta dirección?", - "render": "La dirección está en esta calle {addr:street}" + "render": "Esta dirección está en la calle {addr:street}" } }, "title": { - "render": "Domicilio conocido" + "render": "Dirección conocida" } }, "advertising": { - "description": "Completaremos los datos de los elementos publicitarios con referencia, operador y iluminación", - "name": "Anuncio", + "description": "Completaremos los datos de los elementos publicitarios con referencia, operador e iluminación", + "name": "Publicidad", "presets": { "0": { - "description": "Una estructura publicitaria grande al aire libre, que normalmente se encuentra en áreas transitadas como carreteras con mucha intensidad", - "title": "una valla publicitària" + "description": "Una gran estructura publicitaria exterior, que normalmente se encuentra en áreas de mucho tráfico, como junto a carreteras concurridas", + "title": "una valla publicitaria" }, "1": { - "description": "Una gran estructura de publicidad exterior, que suele encontrarse en zonas de mucho tráfico, por ejemplo, junto a carreteras muy transitadas", - "title": "una valla publicitaria montada en un muro" + "description": "Una gran estructura publicitaria exterior, que normalmente se encuentra en áreas de mucho tráfico, como junto a carreteras concurridas, montada en una pared", + "title": "una valla publicitaria montada en una pared" }, "10": { - "title": "una pantalla montada en una marquesina de tránsito" + "title": "una pantalla montada en un refugio de transporte público" }, "11": { - "description": "Una pieza de tela impermeable con un mensaje impreso, anclada permanentemente en una pared", + "description": "Un trozo de textil impermeable con un mensaje impreso, anclado permanentemente en una pared", "title": "una lona" }, "12": { "title": "un tótem" }, "13": { - "description": "Se utiliza para carteles publicitarios, letreros de neón, logotipos y carteles en entradas institucionales", - "title": "un señal" + "description": "Se utiliza para carteles publicitarios, letreros de neón, logotipos y letreros de entrada institucionales", + "title": "un letrero" }, "14": { "title": "una escultura" }, "15": { - "title": "una pared pintada" + "title": "un mural" }, "2": { - "title": "un mupi" + "title": "un expositor de carteles independiente" }, "3": { - "title": "un mupi sobre la pared" + "title": "un expositor de carteles montado en una pared" }, "4": { - "title": "una caja de carteles que forma parte de una marquesina de transporte público" + "title": "un expositor de carteles que forma parte de un refugio de transporte público" }, "5": { - "description": "Un pequeño tablón de anuncios para anuncios del vecindario, normalmente destinado a peatones", - "title": "un tablón de anuncios" + "description": "Pequeña valla publicitaria para publicidad vecinal, generalmente destinada a peatones", + "title": "un tablero" }, "6": { - "description": "Una estructura cilíndrica exterior que muestra publicidad", + "description": "Una estructura cilíndrica exterior que muestra anuncios", "title": "una columna" }, "7": { @@ -80,20 +80,20 @@ "title": "una pantalla" }, "9": { - "title": "una pantalla sobre una pared" + "title": "una pantalla montada en una pared" } }, "tagRenderings": { "Sides": { "mappings": { "0": { - "then": "Este objeto tiene publicidad en un único lado" + "then": "Este objeto tiene publicidad en un solo lado" }, "1": { - "then": "Este objeto tiene publicidad por los dos lados" + "then": "Este objeto tiene publicidad en ambos lados" } }, - "question": "¿Por cuantos lados puedes ver publicidad?" + "question": "¿Desde cuántos lados se puede ver la publicidad?" }, "animated": { "mappings": { @@ -101,36 +101,36 @@ "then": "Estático, siempre muestra el mismo mensaje" }, "1": { - "then": "Este objeto tiene una pantalla digital incorporada para mostrar precios o algún otro mensaje" + "then": "Este objeto tiene una pantalla digital incorporada para mostrar precios u otro mensaje" }, "2": { - "then": "Trivision - la valla publicitaria consta de muchos prismas triangulares que giran regularmente" + "then": "Trivisión: la valla publicitaria consta de muchos prismas triangulares que giran regularmente" }, "3": { - "then": "Cartells Rotatius" + "then": "Carteles desplazables" }, "4": { - "then": "Rota sobre si mismo" + "then": "Gira sobre sí mismo" } }, - "question": "¿Pasa este anuncio por varios mensajes?" + "question": "¿Este anuncio muestra varios mensajes?" }, "historic": { "mappings": { "0": { - "then": "Esto es un cartel publicitario histórico (un anuncio para un negocio que ya no existe o un cartel con un gran valor patrimonial)" + "then": "Se trata de un anuncio histórico (un anuncio de un negocio que ya no existe o un cartel muy antiguo con valor patrimonial)" }, "1": { - "then": "Este cartel publicitario no tiene valor histórico (el negocio todavía existe y no tiene valor patrimonial)" + "then": "Este anuncio no tiene valor histórico (el negocio sigue existiendo y no tiene valor patrimonial)" } }, - "question": "¿Es este cartel de un negocio que ya no existe o que ya no se mantiene?" + "question": "¿Este letrero es de un negocio que ya no existe o que ya no se mantiene?" }, "luminous_or_lit_advertising": { "override": { "+mappings": { "0": { - "then": "Esta es una luz de tubo de neón" + "then": "Se trata de una luz de tubo de neón" } } } @@ -141,7 +141,7 @@ "then": "Mensaje comercial" }, "1": { - "then": "Información municipal" + "then": "Información local" }, "2": { "then": "Información de seguridad" @@ -150,13 +150,13 @@ "then": "Publicidad electoral" }, "4": { - "then": "Información sobre teatros, conciertos, …" + "then": "Información relacionada con teatro, conciertos,…" }, "5": { - "then": "Mensaje de organizaciones sin ánimo de lucro" + "then": "Mensaje de organizaciones sin fines de lucro" }, "6": { - "then": "Exprese su opinión" + "then": "Para expresar tu opinión" }, "7": { "then": "Mensaje religioso" @@ -168,60 +168,60 @@ "then": "Un mapa" } }, - "question": "Que tipo de mensaje se muestra?" + "question": "¿Qué tipo de mensaje se muestra?" }, "operator": { - "question": "¿Quien opera este elemento?", - "render": "El operador es {operator}" + "question": "¿Quién opera este elemento?", + "render": "Operado por {operator}" }, "ref": { - "question": "¿Cual es el número de referencia?", + "question": "¿Cuál es el número de referencia?", "render": "El número de referencia es {ref}" }, "type": { "mappings": { "0": { - "then": "Esto es una valla publicitaria" + "then": "Se trata de una valla publicitaria" }, "1": { - "then": "Esto es un tablón de anuncios" + "then": "Se trata de un tablero" }, "10": { - "then": "Esto es una pared pintada" + "then": "Se trata de un mural" }, "11": { - "then": "Esto es un azulejería - la publicidad está pintada en azulejos" + "then": "Se trata de un trabajo en azulejo: el anuncio está pintado en azulejos" }, "12": { - "then": "Esto es un alivio" + "then": "Se trata de un relieve" }, "2": { - "then": "Esto es una columna" + "then": "Se trata de una columna" }, "3": { - "then": "Esto es una bandera" + "then": "Se trata de una bandera" }, "4": { - "then": "Esto es un mupi" + "then": "Se trata de un expositor de carteles" }, "5": { - "then": "Esto es una pantalla" + "then": "Se trata de una pantalla" }, "6": { - "then": "Esto es una escultura" + "then": "Se trata de una escultura" }, "7": { - "then": "Esto es un cartel" + "then": "Se trata de un letrero" }, "8": { - "then": "Esto es una lona (una pieza de tela resistente a la intemperie con un mensaje publicitario)" + "then": "Se trata de una lona (una pieza de textil impermeable con un mensaje publicitario)" }, "9": { - "then": "Esto es un tótem" + "then": "Se trata de un tótem" } }, - "question": "¿Qué tipo de elemento publicitario es?", - "render": "Esto es un {advertising}" + "question": "¿Qué tipo de elemento publicitario es este?", + "render": "Se trata de un {advertising}" } }, "title": { @@ -230,13 +230,13 @@ "then": "Valla publicitaria" }, "1": { - "then": "Tablon de anuncios" + "then": "Tablero" }, "10": { - "then": "Pared Pintada" + "then": "Mural" }, "2": { - "then": "Mupi" + "then": "Expositor de carteles" }, "3": { "then": "Columna" @@ -251,7 +251,7 @@ "then": "Escultura" }, "7": { - "then": "Cartel" + "then": "Letrero" }, "8": { "then": "Lona" @@ -263,7 +263,8 @@ } }, "aerialway": { - "description": "Diversas formas de transporte de pasajeros y mercancías que utilizan cables, como teleféricos, telecabinas, telesillas, telesquíes y tirolinas. ", + "description": "Varias formas de transporte de pasajeros y mercancías que utilizan cables, incluyendo teleféricos, góndolas, telesillas, remontes y tirolinas. ", + "name": "Teleféricos", "pointRendering": { "1": { "label": { @@ -273,59 +274,114 @@ }, "tagRenderings": { "duration": { - "question": "¿Cuánto dura un viaje en este ascensor?", - "questionHint": "Esto elimina el tiempo de espera.", - "render": "Un viaje dura {duration} minutos" + "question": "¿Cuánto dura un viaje sencillo con este ascensor?", + "questionHint": "Esto no incluye el tiempo de espera.", + "render": "Un viaje sencillo tarda {duration} minutos" + }, + "length": { + "render": "Este teleférico tiene {_length:km} kilómetros de longitud" }, "occupancy": { - "question": "¿Cuál es la capacidad de la cabina?", - "render": "{aerialway:occupancy} personas entran en un solo vagón" + "question": "¿Cuántas personas caben en una sola cabina?", + "render": "En una sola cabina caben {aerialway:occupancy} personas" + }, + "oneway": { + "mappings": { + "0": { + "then": "Este teleférico solo se puede tomar hacia arriba" + }, + "1": { + "then": "Este teleférico se puede tomar en ambas direcciones" + } + }, + "question": "¿En qué dirección se puede tomar este teleférico?" + }, + "type": { + "mappings": { + "0": { + "then": "Se trata de un teleférico donde la cabina sube y baja por el mismo cable." + }, + "1": { + "then": "Se trata de una góndola donde las cabinas giran en círculos continuos" + }, + "10": { + "then": "Una tirolina. (Una atracción turística donde la gente aventurera baja a altas velocidades) " + }, + "2": { + "then": "Un telesilla abierto con asientos para sentarse y abierto al aire libre." + }, + "3": { + "then": "Un teleférico que tiene tanto sillas como góndolas en la misma vía continua" + }, + "4": { + "then": "Un remonte" + }, + "5": { + "then": "Un remonte con transportadores en forma de T para dos pasajeros a la vez" + }, + "6": { + "then": "Un remonte con barras en forma de L para un solo pasajero a la vez" + }, + "7": { + "then": "Un remonte con una plataforma para arrastrar a un solo pasajero a la vez" + }, + "8": { + "then": "Un cable de remolque que arrastra a los esquiadores" + }, + "9": { + "then": "Una alfombra mágica (una cinta transportadora en el suelo)" + } + }, + "question": "¿Qué tipo de teleférico es este?" } + }, + "title": { + "render": "Teleférico {name}" } }, "ambulancestation": { - "description": "Una estación de ambulancias es una zona para almacenar vehículos de ambulancia, equipamiento médico, equipos de protección personal y otros suministros médicos.", + "description": "Una estación de ambulancias es un área para el almacenamiento de vehículos de ambulancia, equipo médico, equipo de protección personal y otros suministros médicos.", "name": "Mapa de estaciones de ambulancias", "presets": { "0": { - "description": "Añadir una estación de ambulancias al mapa", + "description": "Agrega una estación de ambulancias al mapa", "title": "una estación de ambulancias" } }, "tagRenderings": { "ambulance-agency": { "question": "¿Qué agencia opera esta estación?", - "render": "Esta estación la opera {operator}." + "render": "Esta estación es operada por {operator}." }, "ambulance-name": { - "question": "¿Cual es el nombre de esta estación de ambulancias?", + "question": "¿Cuál es el nombre de esta estación de ambulancias?", "render": "Esta estación se llama {name}." }, "ambulance-operator-type": { "mappings": { "0": { - "then": "La estación la opera el gobierno." + "then": "La estación es operada por el gobierno." }, "1": { - "then": "La estación la opera una organización basada en la comunidad o informal." + "then": "La estación es operada por una organización comunitaria o informal." }, "2": { - "then": "La estación la opera un grupo formal de voluntarios." + "then": "La estación es operada por un grupo formal de voluntarios." }, "3": { - "then": "La estación se opera privadamente." + "then": "La estación es de operación privada." } }, - "question": "¿Como está clasificada la operadora de la estación?", - "render": "La operadora es una entidad de tipo {operator:type}." + "question": "¿Cómo se clasifica al operador de la estación?", + "render": "El operador es una entidad {operator:type}." }, "ambulance-place": { - "question": "¿Dónde se encuentra la estación? (ej. nombre del barrio, pueblo o ciudad)", - "render": "Esta estación se encuentra en {addr:place}." + "question": "¿Dónde se encuentra la estación? (por ejemplo, nombre del barrio, aldea o ciudad)", + "render": "Esta estación se encuentra dentro de {addr:place}." }, "ambulance-street": { - "question": "¿Cual es el nombre de la calle en la que se encuentra la estación?", - "render": "Esta estación se encuentra al lado de una via llamada {addr:street}." + "question": "¿Cuál es el nombre de la calle donde se encuentra la estación?", + "render": "Esta estación se encuentra a lo largo de una carretera llamada {addr:street}." } }, "title": { @@ -333,52 +389,52 @@ } }, "animal_shelter": { - "description": "Un refugio de animales es una instalación donde se llevan animales con problemas y el personal de la instalación (voluntario o no) los alimenta y cuida, rehabilitándolos y curándolos si es necesario. Esta definición incluye las perreras para perros abandonados, los criaderos para gatos abandonados, los refugios para otros animales de compañía abandonados y los centros de recuperación de la fauna salvaje. ", - "name": "Centros de acogida de animales", + "description": "Un refugio de animales es una instalación donde se traen animales en problemas y el personal de la instalación (voluntarios o no) los alimenta y cuida, rehabilitándolos y curándolos si es necesario. Esta definición incluye perreras para perros abandonados, gaterías para gatos abandonados, refugios para otras mascotas abandonadas y centros de recuperación de fauna silvestre. ", + "name": "Refugios de animales", "presets": { "0": { - "title": "una protectora de animales" + "title": "un refugio de animales" } }, "tagRenderings": { "2": { - "question": "¿Cómo se llama este refugio de animales?", + "question": "¿Cuál es el nombre de este refugio de animales?", "render": "Este refugio de animales se llama {name}" }, "6": { "mappings": { "0": { - "then": "Los animales permanecen aquí hasta que son adoptados por un nuevo propietario" + "then": "Los animales se mantienen aquí hasta que son adoptados por un nuevo dueño" }, "1": { - "then": "Los animales reciben cuidados para el resto de su vida" + "then": "Los animales son cuidados por el resto de sus vidas" }, "2": { - "then": "Los animales heridos se rehabilitan aquí hasta que pueden ser liberados de nuevo en la naturaleza " + "then": "Los animales heridos son rehabilitados aquí hasta que pueden ser liberados en la naturaleza de nuevo " } }, - "question": "¿Cuál es la finalidad del refugio de animales?" + "question": "¿Cuál es el propósito del refugio de animales?" }, "boarded_animals": { "mappings": { "0": { - "then": "Aquí se guardan perros" + "then": "Aquí se mantienen perros" }, "1": { - "then": "Aquí se guardan gatos" + "then": "Aquí se mantienen gatos" }, "2": { - "then": "Aquí se guardan caballos" + "then": "Aquí se mantienen caballos" }, "3": { - "then": "Aquí se guardan aves" + "then": "Aquí se mantienen aves" }, "4": { - "then": "Aquí se guardan animales salvajes" + "then": "Aquí se mantienen animales salvajes" } }, - "question": "¿Qué animales se aceptan aquí?", - "render": "Aquí se guardan {animal_shelter}" + "question": "¿Qué animales son aceptados aquí?", + "render": "{animal_shelter} se mantiene aquí" } }, "title": { @@ -387,27 +443,27 @@ "then": "{name}" } }, - "render": "Centro de acogida de animales" + "render": "Refugio de animales" } }, "artwork": { - "description": "Un mapa abierto de Estatuas, bustos, Graffitis y otras Obras de Arte en todo el mundo", + "description": "Un mapa abierto de estatuas, bustos, grafitis y otras obras de arte de todo el mundo", "name": "Obras de arte", "presets": { "0": { "title": "una obra de arte" }, "1": { - "title": "una obra de arte en la pared" + "title": "una obra de arte en una pared" } }, "tagRenderings": { "artwork-artist-wikidata": { - "question": "¿Quién creó esta obra de arte?", - "render": "Esta obra de arte la creó {wikidata_label(artist:wikidata):font-weight:bold}
{wikipedia(artist:wikidata)}" + "question": "¿Quién hizo esta obra de arte?", + "render": "Esta obra de arte fue hecha por {wikidata_label(artist:wikidata):font-weight:bold}
{wikipedia(artist:wikidata)}" }, "artwork-artist_name": { - "question": "¿Que artista creó esto?", + "question": "¿Qué artista lo creó?", "render": "Creado por {artist_name}" }, "artwork-artwork_type": { @@ -419,13 +475,13 @@ "then": "Mural" }, "10": { - "then": "Azulejo (Baldosas decorativas Españolas y Portuguesas)" + "then": "Azulejo (trabajo decorativo en azulejos español)" }, "11": { - "then": "Cerámica" + "then": "Trabajo en azulejo" }, "12": { - "then": "Tallado en madera" + "then": "Talla en madera" }, "2": { "then": "Pintura" @@ -452,8 +508,8 @@ "then": "Relieve" } }, - "question": "¿Qué tipo de obra es esta pieza?", - "render": "Esta es un {artwork_type}" + "question": "¿Qué tipo de obra de arte es esta?", + "render": "Se trata de un {artwork_type}" }, "artwork-website": { "question": "¿Hay un sitio web con más información sobre esta obra de arte?", @@ -470,27 +526,27 @@ "doubles_as_bench": { "mappings": { "0": { - "then": "Esta obra de arte también sirve de banco" + "then": "Esta obra de arte también sirve como banco" }, "1": { - "then": "Esta obra no sirve de banco" + "then": "Esta obra de arte no sirve como banco" }, "2": { - "then": "Esta obra no sirve de banco" + "then": "Esta obra de arte no sirve como banco" } }, - "question": "¿Sirve esta obra de arte como banco?" + "question": "¿Esta obra de arte sirve como banco?" }, "doubles_as_memorial": { "mappings": { "0": { - "then": "Esta obra de arte también sirve como monumento conmemorativo" + "then": "Esta obra de arte también sirve como monumento" }, "1": { - "then": "Esta obra de arte no sirve como banco" + "then": "Esta obra de arte no sirve como monumento" } }, - "question": "¿Sirve esta obra de arte como monumento conmemorativo?" + "question": "¿Esta obra de arte sirve como monumento?" } }, "title": { @@ -503,20 +559,21 @@ } }, "assembly_point": { - "name": "Puntos de encuentro por emergencia", + "description": "Esta capa contiene puntos de reunión y áreas de espera donde todos los empleados, pasajeros o una gran multitud se reúnen en caso de emergencia.", + "name": "Puntos de reunión en caso de emergencia", "presets": { "0": { - "title": "un punto de encuentro" + "title": "un punto de reunión" } }, "tagRenderings": { "assembly_point_name": { - "question": "¿Cuál es el nombre de este punto de encuentro?", - "render": "Este punto de encuentro se llama {name}" + "question": "¿Cuál es el nombre de este punto de reunión?", + "render": "Este punto de reunión se llama {name}" }, "assembly_point_operator": { - "question": "¿Qué organización opera este punto de encuentro?", - "render": "Este punto de encuentro lo opera {operator}" + "question": "¿Qué organización opera este punto de reunión?", + "render": "Este punto de reunión es operado por {operator}" }, "disaster_type": { "mappings": { @@ -524,23 +581,31 @@ "then": "Terremoto" }, "1": { - "then": "Riada" + "then": "Inundación" }, "2": { "then": "Incendio" }, "3": { - "then": "Deslizamiento de tierra" + "then": "Deslave" } }, - "question": "¿A qué tipo de catástrofe está destinado este punto de encuentro?" + "question": "¿Para qué tipo de desastre está destinado este punto de reunión?" } }, "title": { - "render": "Punto de encuentro durante emergencias" + "render": "Punto de reunión en caso de emergencia" } }, "assisted_repair": { + "description": "Un taller de reparación asistida es un lugar donde la gente puede venir y reparar sus bienes con la ayuda de voluntarios y con las herramientas disponibles en el lugar. Un café de reparación es un tipo de evento organizado regularmente con los mismos principios.", + "name": "Cafés de reparación y talleres de reparación asistida", + "presets": { + "0": { + "description": "Un lugar con un taller permanente donde la gente puede venir a reparar artículos con la ayuda de voluntarios.", + "title": "un taller de reparación asistida" + } + }, "tagRenderings": { "item:repair": { "mappings": { @@ -560,10 +625,10 @@ "then": "Aquí se reparan muebles" }, "5": { - "then": "Aquí se reparan prendas textiles" + "then": "Aquí se repara ropa" } }, - "question": "¿Qué tipo de objetos se reparan aquí?" + "question": "¿Qué tipo de artículos se reparan aquí?" }, "name": { "question": "¿Cuál es el nombre de este taller de reparación?", @@ -575,7 +640,8 @@ "0": { "then": "{name}" } - } + }, + "render": "Taller de reparación asistida" } }, "atm": { @@ -584,7 +650,7 @@ "0": { "options": { "0": { - "question": "Con salida de audio" + "question": "Con salida de voz" } } } @@ -598,38 +664,38 @@ "tagRenderings": { "brand": { "freeform": { - "placeholder": "Marca" + "placeholder": "Nombre de la marca" }, - "question": "¿De qué banco es este cajero?", - "render": "El banco de este cajero automático es {brand}" + "question": "¿De qué marca es este cajero automático?", + "render": "La marca de este cajero automático es {brand}" }, "cash_in": { "mappings": { "0": { - "then": "Es probable que no pueda ingresar dinero en efectivo en este cajero automático" + "then": "Probablemente no se puede ingresar efectivo en este cajero automático" }, "1": { - "then": "Puede ingresar dinero en efectivo en este cajero automático" + "then": "Se puede ingresar efectivo en este cajero automático" }, "2": { - "then": "No se puede ingresar dinero en efectivo en este cajero automático" + "then": "No se puede ingresar efectivo en este cajero automático" } }, - "question": "¿Se puede ingresar dinero en efectivo en este cajero?" + "question": "¿Se puede ingresar efectivo en este cajero automático?" }, "cash_out": { "mappings": { "0": { - "then": "Puede retirar dinero de este cajero automático" + "then": "Se puede retirar efectivo de este cajero automático" }, "1": { - "then": "Puede retirar dinero de este cajero automático" + "then": "Se puede retirar efectivo de este cajero automático" }, "2": { - "then": "No puede retirar dinero de este cajero automático" + "then": "No se puede retirar efectivo de este cajero automático" } }, - "question": "¿Se puede sacar dinero de este cajero?" + "question": "¿Se puede retirar efectivo de este cajero automático?" }, "cash_out-denominations-notes": { "mappings": { @@ -655,28 +721,28 @@ "then": "Se pueden retirar billetes de 500 euros" } }, - "question": "¿Qué billetes puede retirar aquí?" + "question": "¿Qué billetes se pueden retirar aquí?" }, "name": { - "render": "El nombre del banco de este cajero automático es {name}" + "render": "El nombre de este cajero automático es {name}" }, "operator": { "freeform": { "placeholder": "Operador" }, - "question": "¿De qué banco es este cajero automático?", - "render": "El cajero lo opera {operator}" + "question": "¿Qué empresa opera este cajero automático?", + "render": "El cajero automático es operado por {operator}" }, "speech_output": { "mappings": { "0": { - "then": "Este cajero automático tiene salida de voz, normalmente disponible a través de una toma de auriculares" + "then": "Este cajero automático tiene salida de voz, generalmente disponible a través de una toma de auriculares" }, "1": { - "then": "Este cajero no tiene salida de voz" + "then": "Este cajero automático no tiene salida de voz" } }, - "question": "¿Dispone este cajero automático de salida de voz para usuarios con discapacidad visual?" + "question": "¿Este cajero automático tiene salida de voz para usuarios con discapacidad visual?" }, "speech_output_language": { "render": { @@ -691,7 +757,7 @@ "title": { "mappings": { "0": { - "then": "Cajero automático de {brand}" + "then": "Cajero automático {brand}" } }, "render": "Cajero automático" @@ -716,27 +782,27 @@ "then": "Este banco tiene un cajero automático" }, "1": { - "then": "Este banco no tiene cajero automático" + "then": "Este banco no tiene un cajero automático" }, "2": { - "then": "Este banco tiene un cajero automático, pero aparece con un icono diferente" + "then": "Este banco tiene un cajero automático, pero se muestra con un icono diferente" } }, - "question": "¿Tiene este banco cajero automático?" + "question": "¿Este banco tiene un cajero automático?" } } }, "barrier": { - "description": "Obstáculos durante el uso de la bicicleta, como bolardos y barreras para bicicletas", + "description": "Obstáculos al ciclar, como bolardos y barreras para bicicletas", "name": "Barreras", "presets": { "0": { "description": "Un bolardo en la carretera", - "title": "una bolardo" + "title": "un bolardo" }, "1": { - "description": "Una barrera ciclista, que ralentiza a los ciclistas", - "title": "una barrera ciclista" + "description": "Barrera para bicicletas, que ralentiza a los ciclistas", + "title": "una barrera para bicicletas" } }, "tagRenderings": { @@ -749,13 +815,13 @@ "then": "Bolardo fijo" }, "2": { - "then": "Bolardo retráctil" + "then": "Bolardo que se puede plegar" }, "3": { - "then": "Bolardo flexible, normalmente plástico" + "then": "Bolardo flexible, normalmente de plástico" }, "4": { - "then": "Bolardo levadizo" + "then": "Bolardo retráctil" } }, "question": "¿Qué tipo de bolardo es este?" @@ -763,56 +829,56 @@ "Cycle barrier type": { "mappings": { "0": { - "then": "Simple, simplemente dos barreras con un espacio en el medio" + "then": "Simple, solo dos barreras con un espacio entre ellas" }, "1": { - "then": "Doble, dos barreras una detrás de otra" + "then": "Doble, dos barreras una detrás de la otra" }, "2": { - "then": "Triple, tres barreras una detrás de otra" + "then": "Triple, tres barreras una detrás de la otra" }, "3": { - "then": "Barrera de seguridad, el espacio es menor en la parte superior que en la inferior" + "then": "Puerta estrecha, el hueco es más pequeño en la parte superior que en la inferior" } }, - "question": "¿Qué tipo de barrera ciclista es esta?" + "question": "¿Qué tipo de barrera para bicicletas es esta?" }, "MaxWidth": { - "question": "¿Cómo de ancho es el hueco dejado fuera de la barrera?", - "render": "Anchura máxima: {maxwidth:physical} m" + "question": "¿Qué ancho tiene el hueco que queda además de la barrera?", + "render": "Ancho máximo: {maxwidth:physical} m" }, "Overlap (cyclebarrier)": { - "question": "¿Cuánto se solapan las barreras?", - "render": "Solapado: {overlap} m" + "question": "¿Cuánta superposición tienen las barreras?", + "render": "Superposición: {overlap} m" }, "Space between barrier (cyclebarrier)": { - "question": "¿Cuánto espacio hay entre las barreras (a lo largo de la longitud de la carretera)?", - "render": "Espacio entre barreras (a lo largo de la longitud de la carretera): {width:separation} m" + "question": "¿Cuánto espacio hay entre las barreras (a lo largo de la carretera)?", + "render": "Espacio entre barreras (a lo largo de la carretera): {width:separation} m" }, "Width of opening (cyclebarrier)": { - "question": "¿Que amplitud tiene la apertura más pequeña al lado de las barreras?", - "render": "Anchura de la apertura: {width:opening} m" + "question": "¿Qué ancho tiene la abertura más pequeña junto a las barreras?", + "render": "Ancho de abertura: {width:opening} m" }, "barrier_type": { "mappings": { "0": { - "then": "Este es un único bolardo en la carretera" + "then": "Se trata de un solo bolardo en la carretera" }, "1": { - "then": "Esta es una barrera ciclista que ralentiza a los ciclistas" + "then": "Se trata de una barrera para bicicletas que ralentiza a los ciclistas" } } }, "bicycle=yes/no": { "mappings": { "0": { - "then": "Un ciclista puede pasar esto." + "then": "Un ciclista puede pasar por aquí." }, "1": { - "then": "Un ciclista no puede pasar esto." + "then": "Un ciclista no puede pasar por aquí." } }, - "question": "¿Una bicicleta puede pasar esta barrera?" + "question": "¿Puede pasar una bicicleta por esta barrera?" } }, "title": { @@ -821,7 +887,7 @@ "then": "Bolardo" }, "1": { - "then": "Barrera Ciclista" + "then": "Barrera para bicicletas" } }, "render": "Barrera" @@ -840,24 +906,25 @@ "access": { "mappings": { "0": { - "then": "Pública" + "then": "Público" }, "1": { "then": "Sin acceso" }, "2": { - "then": "Privada" + "then": "Privado" }, "3": { - "then": "Acceso hasta que se anule" + "then": "Acceso hasta que se revoque" }, "4": { - "then": "Acceso exclusivo para clientes" + "then": "Acceso solo para clientes" }, "5": { - "then": "Acceso exclusivo a personal autorizado" + "then": "Acceso solo para personas autorizadas" } - } + }, + "question": "¿Cuál es el acceso permitido?" }, "covered": { "mappings": { @@ -893,12 +960,12 @@ } }, "bench": { - "description": "Un banco es una superficie de madera, metal, piedra, ... donde un humano se puede sentar. Estas capas los visualizan y hacen algunas preguntas sobre ellos.", + "description": "Un banco es una superficie de madera, metal, piedra,… donde un humano puede sentarse. Esta capa los visualiza y hace algunas preguntas sobre ellos.", "filter": { "0": { "options": { "0": { - "question": "es un monumento conmemorativo" + "question": "es un monumento" } } }, @@ -911,7 +978,7 @@ "question": "Tiene respaldo" }, "2": { - "question": "Sin respaldo" + "question": "No tiene respaldo" } } } @@ -919,20 +986,20 @@ "name": "Bancos", "presets": { "0": { - "title": "una banco" + "title": "un banco" } }, "tagRenderings": { "bench-armrest": { "mappings": { "0": { - "then": "Este banco dispone de uno o más reposabrazos" + "then": "Este banco tiene uno o más reposabrazos" }, "1": { - "then": "Este banco not dispone de reposabrazos" + "then": "Este banco no tiene reposabrazos" } }, - "question": "¿Dispone este banco de uno o más reposabrazos?" + "question": "¿Este banco tiene uno o más reposabrazos?" }, "bench-artwork": { "mappings": { @@ -946,13 +1013,13 @@ "then": "Este banco probablemente no tiene una obra de arte integrada" } }, - "question": "¿Tiene este banco un elemento artístico?", - "questionHint": "Por ejemplo, si lleva integrado un cuadro, una estatua u otra obra creativa no trivial" + "question": "¿Este banco tiene un elemento artístico?", + "questionHint": "Por ejemplo, tiene una pintura, estatua u otra obra creativa no trivial integrada" }, "bench-backrest": { "mappings": { "0": { - "then": "Este banco tiene dos caras y comparte el respaldo" + "then": "Este banco es de dos caras y comparte el respaldo" }, "1": { "then": "Este banco tiene respaldo" @@ -961,7 +1028,7 @@ "then": "Este banco no tiene respaldo" } }, - "question": "¿Tiene este banco respaldo?" + "question": "¿Este banco tiene respaldo?" }, "bench-colour": { "mappings": { @@ -994,20 +1061,20 @@ "render": "Color: {colour}" }, "bench-direction": { - "question": "¿En qué dirección miras sentado en el banco?", - "render": "Cuando se está sentado en el banco, se mira hacia a {direction}º." + "question": "¿En qué dirección miras cuando te sientas en el banco?", + "render": "Cuando te sientas en el banco, miras hacia {direction}°." }, "bench-inscription": { "mappings": { "0": { - "then": "Este banco no tiene inscripción" + "then": "Este banco no tiene ninguna inscripción" }, "1": { - "then": "Este banco (probablemente) no tiene inscripción" + "then": "Este banco probablemente no tiene ninguna inscripción" } }, - "question": "¿Tiene este banco una inscripción?", - "questionHint": "Por ejemplo, en una placa montada, en el respaldo, …", + "question": "¿Este banco tiene alguna inscripción?", + "questionHint": "Por ejemplo, en una placa montada, en el respaldo,…", "render": "Este banco tiene la siguiente inscripción:

{inscription}

" }, "bench-material": { @@ -1031,19 +1098,19 @@ "then": "El asiento está hecho de acero" } }, - "question": "¿De que está hecho el banco (asiento)?", + "question": "¿De qué está hecho el banco (el asiento)?", "render": "Material: {material}" }, "bench-memorial": { "mappings": { "0": { - "then": "Este banco es un memorial para alguien o algo" + "then": "Este banco es un monumento para alguien o algo" }, "1": { - "then": "Este banco es un no memorial para alguien o algo" + "then": "Este banco no es un monumento para alguien o algo" } }, - "question": "¿Actúa este banco como monumento conmemorativo de alguien o algo?" + "question": "¿Este banco actúa como monumento para alguien o algo?" }, "bench-seats": { "mappings": { @@ -1057,11 +1124,11 @@ "bench-survey:date": { "mappings": { "0": { - "then": "¡Encuestado hoy!" + "then": "¡Inspeccionado hoy!" } }, - "question": "¿Cuándo fue la última vez que se inspeccionó este banco?", - "render": "Este banco se inspeccionó por última vez el {survey:date}" + "question": "¿Cuándo se inspeccionó por última vez este banco?", + "render": "Este banco fue inspeccionado por última vez el {survey:date}" } }, "title": { @@ -1072,17 +1139,17 @@ "deletion": { "extraDeleteReasons": { "0": { - "explanation": "Esta parada ya no se usa" + "explanation": "Esta parada de autobús ya no se utiliza" } }, "nonDeleteMappings": { "0": { - "then": "Esta parada de autobús no tiene banco (nunca lo hubo o lo han quitado)" + "then": "Esta parada de autobús no tiene banco (nunca lo tuvo o se ha quitado)" } } }, - "description": "Una capa que muestra todas las paradas de transporte público que tienen bancos", - "name": "Bancos en una parada de transporte público", + "description": "Una capa que muestra todas las paradas de transporte público que tienen un banco", + "name": "Bancos en paradas de transporte público", "tagRenderings": { "bench_at_pt-bench_type": { "mappings": { @@ -1090,10 +1157,10 @@ "then": "Hay un banco normal aquí" }, "1": { - "then": "Banco de pié" + "then": "Banco de pie" }, "2": { - "then": "No hay ningún banco aquí" + "then": "No hay banco aquí" } }, "question": "¿Qué tipo de banco es este?" @@ -1105,26 +1172,89 @@ "title": { "mappings": { "0": { - "then": "Banco en una parada de transporte público" + "then": "Banco en parada de transporte público" }, "1": { - "then": "Banco en marquesina" + "then": "Banco en refugio" } }, "render": "Banco" } }, "bicycle_counter": { - "description": "Capa que muestra las estaciones de seguimiento para el tráfico de bicicletas", + "description": "Capa que muestra las estaciones de monitoreo del tráfico de bicicletas", "name": "Contadores de bicicletas", "presets": { "0": { "title": "un contador de bicicletas" } + }, + "tagRenderings": { + "clock": { + "mappings": { + "0": { + "then": "Este contador tiene un reloj" + }, + "1": { + "then": "Este contador no tiene reloj" + } + }, + "question": "¿Este contador de bicicletas tiene un reloj?" + }, + "display": { + "mappings": { + "0": { + "then": "Este contador tiene una pantalla digital" + }, + "1": { + "then": "Este contador tiene una pantalla analógica" + }, + "2": { + "then": "Este contador no tiene pantalla" + } + }, + "question": "¿Este contador de bicicletas tiene una pantalla que muestra el número de bicicletas que pasan?" + }, + "name": { + "freeform": { + "placeholder": "Nombre del lugar contado" + }, + "question": "¿Cuál es el nombre del lugar contado?", + "render": "Nombre del lugar contado: {name}" + }, + "ref": { + "freeform": { + "placeholder": "Número de referencia del contador" + }, + "mappings": { + "0": { + "then": "Este contador no tiene número de referencia" + } + }, + "question": "¿Cuál es el número de referencia de este contador?", + "render": "Número de referencia del contador: {ref}" + }, + "start_date": { + "freeform": { + "placeholder": "Fecha de inicio del contador" + }, + "question": "¿Cuándo comenzó a contar este contador?", + "render": "Este contador comenzó a contar el {start_date}" + }, + "website": { + "freeform": { + "placeholder": "Sitio web del contador" + }, + "question": "¿Hay un sitio web para este contador de bicicletas?", + "render": "Sitio web del contador: {website}" + } + }, + "title": { + "render": "Contador de bicicletas" } }, "bicycle_library": { - "description": "Una instalación donde se pueden alquilar bicicletas durante largos periodos de tiempo", + "description": "Una instalación donde se pueden prestar bicicletas por períodos de tiempo más largos", "name": "Biblioteca de bicicletas", "presets": { "0": { @@ -1142,22 +1272,22 @@ "then": "Bicicletas para adultos disponibles" }, "2": { - "then": "Bicicletas para discapacitados disponibles" + "then": "Bicicletas para personas con discapacidad disponibles" } }, - "question": "¿Quién puede alquilar bicicletas aquí?" + "question": "¿Quién puede pedir prestadas bicicletas aquí?" }, "bicycle_library-charge": { "mappings": { "0": { - "then": "Alquilar una bicicleta es gratis" + "then": "Prestar una bicicleta es gratis" }, "1": { - "then": "Alquilar una bicicleta cuesta 20€/año y 20€ de garantía" + "then": "Prestar una bicicleta cuesta €20/año y €20 de garantía" } }, - "question": "¿Cuánto cuesta alquilar una bicicleta?", - "render": "Alquilar una bicicleta cuesta {charge}" + "question": "¿Cuánto cuesta prestar una bicicleta?", + "render": "Prestar una bicicleta cuesta {charge}" }, "bicycle_library-name": { "question": "¿Cuál es el nombre de esta biblioteca de bicicletas?", @@ -1177,7 +1307,7 @@ }, "nonDeleteMappings": { "0": { - "then": "Esta tienda de bicicletas alquilaba bicis, pero ya no lo hace" + "then": "Esta tienda de bicicletas solía alquilar bicicletas, pero ya no alquila más" } } }, @@ -1185,7 +1315,7 @@ "name": "Alquiler de bicicletas", "presets": { "0": { - "description": "Una tienda atendida que se centra en el alquiler de bicicletas", + "description": "Una tienda con personal que se centra en el alquiler de bicicletas", "title": "una tienda de alquiler de bicicletas" }, "1": { @@ -1196,55 +1326,55 @@ "bicycle-types": { "mappings": { "0": { - "then": "Aquí se pueden alquilar bicis normales" + "then": "Se pueden alquilar bicicletas de ciudad normales aquí" }, "1": { - "then": "Aquí se pueden alquilar bicis eléctricas" + "then": "Se pueden alquilar bicicletas eléctricas aquí" }, "2": { - "then": "Aquí se pueden alquilar bicis BMX" + "then": "Se pueden alquilar bicicletas BMX aquí" }, "3": { - "then": "Aquí se pueden alquilar bicis de montaña" + "then": "Se pueden alquilar bicicletas de montaña aquí" }, "4": { - "then": "Aquí se pueden alquilar bicis infantiles" + "then": "Se pueden alquilar bicicletas para niños aquí" }, "5": { - "then": "Aquí se pueden alquilar tándems" + "then": "Se pueden alquilar bicicletas tándem aquí" }, "6": { - "then": "Aquí se pueden alquilar bicicletas de carreras" + "then": "Se pueden alquilar bicicletas de carreras aquí" }, "7": { - "then": "Aquí se pueden alquilar cascos" + "then": "Se pueden alquilar cascos para bicicletas aquí" }, "8": { - "then": "Aquí se pueden alquilar bicicletas de carga" + "then": "Se pueden alquilar bicicletas de carga aquí" } }, "question": "¿Qué tipo de bicicletas y accesorios se alquilan aquí?", - "render": "{rental} se alquilan aquí" + "render": "{rental} se alquila aquí" }, "bicycle_rental_type": { "mappings": { "0": { - "then": "Esta es una tienda que se centra en el alquiler de bicicletas" + "then": "Se trata de una tienda cuyo principal foco es el alquiler de bicicletas" }, "1": { - "then": "Se trata de una empresa de alquiler que alquila diversos objetos y/o vehículos. También alquila bicicletas, pero este no es el objetivo principal" + "then": "Se trata de un negocio de alquiler que alquila varios objetos y/o vehículos. También alquila bicicletas, pero este no es el foco principal" }, "2": { - "then": "Esta es una tienda que vende o alquila bicicletas, pero también las alquila" + "then": "Se trata de una tienda que vende o repara bicicletas, pero también alquila bicicletas" }, "3": { - "then": "Se trata de una estación de bicicletas automatizada donde una bicicleta se fija mecánicamente a una estructura" + "then": "Se trata de una estación de acoplamiento automática, donde una bicicleta se bloquea mecánicamente a una estructura" }, "4": { - "then": "Una máquina que dispensa y acepta llaves, eventualmente después de la autenticación y/o el pago está presente. Las bicicletas están aparcadas cerca" + "then": "Hay una máquina que dispensa y acepta llaves, eventualmente después de la autenticación y/o el pago. Las bicicletas están aparcadas cerca" }, "5": { - "then": "Se trata de un punto de entrega, por ejemplo, un aparcamiento reservado para colocar las bicicletas claramente señalizado como exclusivo para el servicio de alquiler" + "then": "Se trata de un punto de entrega, por ejemplo, un aparcamiento reservado para colocar las bicicletas claramente marcadas como exclusivas del servicio de alquiler" } }, "question": "¿Qué tipo de alquiler de bicicletas es este?" @@ -1252,29 +1382,29 @@ "rental_types": { "renderings": { "0": { - "question": "¿Cuántos type_plural se pueden alquilar aquí?", - "render": "{capacity:bicycle_type} type_plural pueden alquilarse aquí" + "question": "¿Cuántos tipos plurales se pueden alquilar aquí?", + "render": "{capacity:bicycle_type} tipos plurales se pueden alquilar aquí" } }, "rewrite": { "into": { "0": { - "1": "bicis de ciudad" + "1": "bicicletas de ciudad" }, "1": { - "1": "bicis eléctricas" + "1": "bicicletas eléctricas" }, "2": { - "1": "bicis infantiles" + "1": "bicicletas para niños" }, "3": { - "1": "bicis BMX" + "1": "bicicletas BMX" }, "4": { "1": "bicicletas de montaña" }, "5": { - "1": "alforjas de bicicleta" + "1": "alforjas para bicicletas" }, "6": { "1": "tándem" @@ -1293,47 +1423,72 @@ } }, "bike_cafe": { - "name": "Cafetería para ciclistas", + "description": "Un bike café es un café orientado a ciclistas, por ejemplo, con servicios como una bomba, con mucha decoración relacionada con bicicletas,…", + "name": "Bike café", "presets": { "0": { - "title": "una cafetería para ciclistas" + "title": "un bike café" } }, "tagRenderings": { "bike_cafe-bike-pump": { "mappings": { "0": { - "then": "Esta cafetería para ciclistas ofrece una bomba de aire para cualquier persona" + "then": "Este bike café ofrece una bomba de bicicleta para cualquiera" }, "1": { - "then": "Esta cafetería para ciclistas no ofrece una bomba de aire para cualquier persona" + "then": "Este bike café no ofrece una bomba de bicicleta para cualquiera" } }, - "question": "¿Ofrece esta cafetería para ciclistas una bomba de aire para uso de cualquier persona?" + "question": "¿Este bike café ofrece una bomba de bicicleta para que la use cualquiera?" }, "bike_cafe-name": { - "question": "¿Cómo se llama la cafetería para ciclistas?", - "render": "La cafetería para ciclistas se llama {name}" + "question": "¿Cuál es el nombre de este bike café?", + "render": "Este bike café se llama {name}" + }, + "bike_cafe-repair-service": { + "mappings": { + "0": { + "then": "Este bike café repara bicicletas" + }, + "1": { + "then": "Este bike café no repara bicicletas" + } + }, + "question": "¿Este bike café repara bicicletas?" }, "bike_cafe-repair-tools": { + "mappings": { + "0": { + "then": "Este bike café ofrece herramientas para reparaciones DIY" + }, + "1": { + "then": "Este bike café no ofrece herramientas para reparaciones DIY" + } + }, "question": "¿Se ofrecen herramientas para reparar tu propia bicicleta?" + }, + "opening_hours": { + "override": { + "question": "¿Cuándo abre este bike café?" + } } }, "title": { "mappings": { "0": { - "then": "Cafetería para ciclistas {name}" + "then": "Bike café {name}" } }, - "render": "Cafetería para ciclistas" + "render": "Bike café" } }, "bike_cleaning": { - "description": "Una capa que muestra instalaciones en las que uno puede limpiar su bici", - "name": "Servicio de limpieza de bicis", + "description": "Una capa que muestra las instalaciones donde se puede limpiar la bicicleta", + "name": "Servicio de limpieza de bicicletas", "presets": { "0": { - "title": "un servicio de limpieza de bicis" + "title": "un servicio de limpieza de bicicletas" } }, "tagRenderings": { @@ -1343,11 +1498,11 @@ "then": "Este servicio de limpieza es gratuito" }, "1": { - "then": "Este servicio de limpieza es de pago" + "then": "Hay un cargo por utilizar este servicio de limpieza" } }, - "question": "¿Cuánto cuesta utilizar el servicio de limpieza?", - "render": "Utilizar el servicio de limpieza cuesta {charge}" + "question": "¿Cuánto cuesta usar el servicio de limpieza?", + "render": "Usar el servicio de limpieza cuesta {charge}" }, "bike_cleaning-service_bicycle_cleaning_charge": { "mappings": { @@ -1355,28 +1510,28 @@ "then": "El servicio de limpieza es gratuito" }, "1": { - "then": "Uso gratuito" + "then": "Gratuito" } }, - "question": "¿Cuánto cuesta utilizar el servicio de limpieza?", - "render": "Utilizar el servicio de limpieza cuesta {service:bicycle:cleaning:charge}" + "question": "¿Cuánto cuesta usar el servicio de limpieza?", + "render": "Usar el servicio de limpieza cuesta {service:bicycle:cleaning:charge}" } }, "title": { "mappings": { "0": { - "then": "Servicio de limpieza de bicis {name}" + "then": "Servicio de limpieza de bicicletas {name}" } }, - "render": "Servicio de limpieza de bicis" + "render": "Servicio de limpieza de bicicletas" } }, "bike_parking": { - "description": "Una capa que muestra donde puedes aparcar tu bici", - "name": "Aparcamiento de bicis", + "description": "Una capa que muestra dónde puedes aparcar tu bicicleta", + "name": "Aparcamiento de bicicletas", "presets": { "0": { - "title": "un aparcamiento de bicis" + "title": "un aparcamiento de bicicletas" } }, "tagRenderings": { @@ -1386,41 +1541,70 @@ "then": "Accesible públicamente" }, "1": { - "then": "El acceso es primariamente para visitantes a un negocio" + "then": "El acceso es principalmente para visitantes de un negocio" }, "2": { - "then": "El acceso se limita a miembros de una escuela, compañía u organización" + "then": "El acceso está limitado a los miembros de una escuela, empresa u organización" }, "3": { - "then": "El acceso se limita a miembros de una escuela, compañía u organización" + "then": "Aparcamiento privado de bicicletas que nunca está disponible para el público, ni siquiera mediante una cuota de socio" } }, - "question": "¿Quién puede utilizar este aparcamiento de bicicletas?", + "question": "¿Quién puede usar este aparcamiento de bicicletas?", "render": "{access}" }, "Bicycle parking type": { "mappings": { + "0": { + "then": "Soportes" + }, + "1": { + "then": "Racks con lazos laterales" + }, + "10": { + "then": "Un soporte inclinado con posibilidad de usar un candado a través de un ojal. El tubo del sillín puede ser sujetado por el soporte mediante un ancla" + }, + "2": { + "then": "Curvadores de ruedas/rack" + }, + "3": { + "then": "Sujetador de manillar" + }, + "4": { + "then": "Rack" + }, + "5": { + "then": "De dos niveles" + }, "6": { - "then": "Caseta" + "then": "Cobertizo" }, "7": { "then": "Bolardo" }, "8": { - "then": "Una área en el suelo que está marcada para el aparcamiento de bicicletas" + "then": "Un área en el suelo que está marcada para el aparcamiento de bicicletas" + }, + "9": { + "then": "Un casillero: las bicicletas están completamente encerradas individualmente o con unas pocas bicicletas juntas. El casillero es demasiado pequeño para que quepa una persona de pie." } }, - "question": "¿Cual es el tipo de este aparcamiento de bicicletas?", - "render": "Este es un aparcamiento de bicicletas del tipo: {bicycle_parking}" + "question": "¿Cuál es el tipo de este aparcamiento de bicicletas?", + "render": "Se trata de un aparcamiento de bicicletas del tipo: {bicycle_parking}" }, "Capacity": { "question": "¿Cuántas bicicletas caben en este aparcamiento de bicicletas?", - "questionHint": "Esto incluye bicis normales, de carga, eléctricas, ...", - "render": "Espacio para {capacity} bicis" + "questionHint": "Esto incluye bicicletas normales, bicicletas de carga, bicicletas eléctricas,…", + "render": "Espacio para {capacity} bicicletas" }, "Cargo bike capacity?": { + "mappings": { + "0": { + "then": "No hay espacios dedicados para bicicletas de carga aquí o no se permite aparcar bicicletas de carga aquí" + } + }, "question": "¿Cuántas bicicletas de carga caben en este aparcamiento de bicicletas?", - "render": "En este aparcamiento caben {capacity:cargo_bike} bicicletas de carga" + "render": "Este aparcamiento cabe {capacity:cargo_bike} bicicletas de carga" }, "Cargo bike spaces?": { "mappings": { @@ -1428,24 +1612,24 @@ "then": "Este aparcamiento tiene espacio para bicicletas de carga" }, "1": { - "then": "Este aparcamiento tiene huecos designados (oficialmente) para bicicletas de carga." + "then": "Este aparcamiento tiene plazas designadas (oficiales) para bicicletas de carga." }, "2": { - "then": "No está permitido aparcar bicicletas de carga" + "then": "No está permitido aparcar bicicletas de carga o no hay plazas previstas para bicicletas de carga" } }, - "question": "¿Este aparcamiento de bicicletas tiene huecos para bicicletas de carga?" + "question": "¿Este aparcamiento de bicicletas tiene plazas para bicicletas de carga?" }, "Is covered?": { "mappings": { "0": { - "then": "Este aparcamiento está cubierto (tiene un tejado)" + "then": "Este aparcamiento está cubierto (tiene techo)" }, "1": { "then": "Este aparcamiento no está cubierto" } }, - "question": "¿Está cubierto este aparcamiento? Selecciona \"cubierto\" también para aparcamientos interiores." + "question": "¿Está cubierto este aparcamiento? Selecciona también \"cubierto\" para aparcamientos interiores." }, "Underground?": { "mappings": { @@ -1456,33 +1640,34 @@ "then": "Aparcamiento a nivel de calle" }, "2": { - "then": "Aparcamiento de azotea" + "then": "Aparcamiento en azotea" }, "3": { "then": "Aparcamiento a nivel de calle" } }, - "question": "¿Cual es la localización relativa de este aparcamiento de bicicletas?" + "question": "¿Cuál es la ubicación relativa de este aparcamiento de bicicletas?" }, "charge": { - "question": "¿Cuánto cuesta aparcar aquí tu bici?", - "questionHint": "Esta es la cantidad que se cobra por una sola bici", - "render": "Aparcar tu bici cuesta {charge}" + "question": "¿Cuánto cuesta aparcar tu bicicleta aquí?", + "questionHint": "Esta es la cantidad que se cobra por una sola bicicleta", + "render": "Aparcar tu bicicleta cuesta {charge}" }, "fee": { "mappings": { "0": { - "then": "Uno tiene que pagar para utilizar este aparcamiento de bicicletas" + "then": "Hay que pagar para usar este aparcamiento de bicicletas" }, "1": { - "then": "Uso gratuito" + "then": "Gratuito" } }, - "question": "¿Son estos aparcamientos de bicicletras de uso gratuito?" + "question": "¿Son gratuitos estos aparcamientos de bicicletas?" }, "maxstay": { - "question": "¿Cuál es la duración máxima permitida de estacionamiento?", - "render": "Se puede aparcar aquí una bici por como mucho {canonical(maxstay)}" + "question": "¿Cuál es la duración máxima de aparcamiento permitida?", + "questionHint": "Si la bicicleta está aparcada durante más tiempo, el operador podría retirarla", + "render": "Una bicicleta se puede aparcar aquí como máximo durante {canonical(maxstay)}" }, "operator": { "question": "¿Quién mantiene este aparcamiento de bicicletas?", @@ -1492,30 +1677,31 @@ "question": "¿Cuál es la dirección de correo electrónico del operador de este aparcamiento de bicicletas?" }, "operator_phone": { - "question": "¿Cuál es número de teléfono del operador de este aparcamiento de bicicletas?" + "question": "¿Cuál es el número de teléfono del operador de este aparcamiento de bicicletas?", + "questionHint": "Se puede llamar a este número en caso de problemas, por ejemplo, para retirar bicicletas sin mantenimiento" }, "operator_website": { - "question": "¿Cuál es la página web del operador de este aparcamiento de bicicletas?" + "question": "¿Cuál es el número de sitio web del operador de este aparcamiento de bicicletas?" } }, "title": { - "render": "Aparcamiento de bicis" + "render": "Aparcamiento de bicicletas" } }, "bike_repair_station": { - "description": "Una capa que muestra bombas de bicicletas y puestos de herramientas de reparación de bicicletas", + "description": "Una capa que muestra bombas de bicicleta y soportes de herramientas de reparación de bicicletas", "name": "Bomba y reparación de bicicletas", "presets": { "0": { - "description": "Un dispositivo para inflar tus ruedas en una posición fija en el espacio público.", - "title": "una bomba de bicicletas" + "description": "Un dispositivo para inflar los neumáticos en una ubicación fija en el espacio público.", + "title": "una bomba de bicicleta" }, "1": { - "description": "Una bomba de bicicletas y herramientas para reparar tu bicicleta en el espacio público. Las herramientas habitualmente están aseguradas con cadenas contra el robo.", + "description": "Una bomba de bicicleta y herramientas para reparar la bicicleta en el espacio público. Las herramientas suelen estar aseguradas con cadenas contra robos.", "title": "una estación de reparación de bicicletas y bomba" }, "2": { - "description": "Herramientas para reparar tu bici en el espacio público (sin bomba).Las herramientas están aseguradas contra el robo.", + "description": "Herramientas para reparar la bicicleta en el espacio público (sin bomba). Las herramientas están aseguradas contra robos.", "title": "una estación de reparación de bicicletas sin bomba" } }, @@ -1523,13 +1709,13 @@ "Operational status": { "mappings": { "0": { - "then": "La bomba para bicicletas está rota" + "then": "La bomba de bicicleta está rota" }, "1": { - "then": "La bomba para bicicletas está operativa" + "then": "La bomba de bicicleta está operativa" } }, - "question": "¿Todavía está operativa la bomba para bicicletas?" + "question": "¿La bomba de bicicleta sigue funcionando?" }, "access": { "mappings": { @@ -1543,13 +1729,13 @@ "then": "Solo para clientes" }, "3": { - "then": "No accesible para el público general" + "then": "No accesible al público en general" }, "4": { - "then": "No accesible para el público general" + "then": "No accesible al público en general" } }, - "question": "¿A quién se le permite utilizar esta estación de reparación?" + "question": "¿Quién puede usar esta estación de reparación?" }, "bike_repair_station-available-services": { "mappings": { @@ -1557,13 +1743,13 @@ "then": "Solo hay una bomba presente" }, "1": { - "then": "Solo hay herramientas (destornilladores, pinzas...) presentes" + "then": "Solo hay herramientas (destornilladores, alicates,…) presentes" }, "2": { - "then": "Hay tanto herramientas como bombas" + "then": "Hay tanto herramientas como una bomba presentes" } }, - "question": "¿Qué servicios están disponibles en esta localización?" + "question": "¿Qué servicios están disponibles en este lugar?" }, "bike_repair_station-bike-chain-tool": { "mappings": { @@ -1571,10 +1757,10 @@ "then": "Hay una herramienta para cadenas" }, "1": { - "then": "No hay herramienta de cadenas" + "then": "No hay herramienta para cadenas" } }, - "question": "¿Esta estación de reparación tiene una herramienta especial para reparar la cadena de tu bici?" + "question": "¿Esta estación de reparación de bicicletas tiene una herramienta especial para reparar la cadena de la bicicleta?" }, "bike_repair_station-bike-stand": { "mappings": { @@ -1582,10 +1768,10 @@ "then": "Hay un gancho o soporte" }, "1": { - "then": "No hay ningún gancho o soporte" + "then": "No hay gancho ni soporte" } }, - "question": "¿Esta estación tiene un gancho para colgar tu bici o un soporte para elevarla?" + "question": "¿Esta estación de bicicletas tiene un gancho para colgar la bicicleta o un soporte para elevarla?" }, "bike_repair_station-electrical_pump": { "mappings": { @@ -1596,10 +1782,10 @@ "then": "Bomba eléctrica" } }, - "question": "¿Es una bomba eléctrica para bicis?" + "question": "¿Es una bomba de bicicleta eléctrica?" }, "bike_repair_station-email": { - "question": "¿Es esta la dirección de correo electrónico del mantenedor?" + "question": "¿Cuál es la dirección de correo electrónico del mantenedor?" }, "bike_repair_station-manometer": { "mappings": { @@ -1607,25 +1793,25 @@ "then": "Hay un manómetro" }, "1": { - "then": "No hay ningún manometro" + "then": "No hay manómetro" }, "2": { - "then": "Hay un manómetro pero está roto" + "then": "Hay un manómetro, pero está roto" } }, - "question": "¿La bomba tiene un indicador de presión o manómetro?" + "question": "¿Tiene la bomba un indicador de presión o manómetro?" }, "bike_repair_station-operator": { - "question": "¿Quién mantiene esta bomba para bicicletas?", + "question": "¿Quién mantiene esta bomba de bicicleta?", "render": "Mantenido por {operator}" }, "bike_repair_station-phone": { - "question": "¿Cual es el número de teléfono del mantenedor?" + "question": "¿Cuál es el número de teléfono del mantenedor?" }, "bike_repair_station-valves": { "mappings": { "0": { - "then": "Sclaverand/Presta (neumáticos de bicicleta estrechos)" + "then": "Sclaverand/Presta (neumáticos de bicicleta de ancho estrecho)" }, "1": { "then": "Dunlop" @@ -1634,8 +1820,8 @@ "then": "Schrader (coches y bicicletas de montaña)" } }, - "question": "¿Que válvulas se soportan?", - "render": "Esta bomba soporta las siguiente válvulas: {valves}" + "question": "¿Qué válvulas son compatibles?", + "render": "Esta bomba admite las siguientes válvulas: {valves}" }, "opening_hours_24_7": { "override": { @@ -1645,9 +1831,9 @@ "send_email_about_broken_pump": { "render": { "special": { - "body": "Hola,\n\nCon este correo, me gustaría informar de que esta bomba para bicicletas situada en https://mapcomplete.org/cyclofix?lat={_lat}&lon={_lon}&z=18#{id} está rota.\n\nUn saludo", - "button_text": "Reportar esta bomba para bicicletas como rota", - "subject": "Bomba para bicicletas rota" + "body": "Hola,\n\nCon este correo electrónico, me gustaría informarte de que la bomba de bicicleta ubicada en https://mapcomplete.org/cyclofix?lat={_lat}&lon={_lon}&z=18#{id} está rota.\n\nSaludos cordiales", + "button_text": "Informar de esta bomba de bicicleta como rota", + "subject": "Bomba de bicicleta rota" } } } @@ -1655,26 +1841,26 @@ "title": { "mappings": { "0": { - "then": "Estación de reparación de bicis" + "then": "Estación de reparación de bicicletas" }, "1": { - "then": "Estación de reparación de bicis" + "then": "Estación de reparación de bicicletas" }, "2": { "then": "Bomba rota" }, "3": { - "then": "Bomba de bicicletas {name}" + "then": "Bomba de bicicleta {name}" }, "4": { - "then": "Bomba para bicicletas" + "then": "Bomba de bicicleta" } }, - "render": "Estación de bicis (bomba y reparación)" + "render": "Estación de bicicletas (bomba y reparación)" } }, "bike_shop": { - "description": "Una tiene que vende específicamente bicis u objetos relacionados", + "description": "Una tienda que vende específicamente bicicletas o artículos relacionados", "filter": { "0": { "options": { @@ -1686,51 +1872,51 @@ "1": { "options": { "0": { - "question": "Ofrece herramientas para autorreparación de bicis" + "question": "Ofrece reparación de bicicletas DIY" } } } }, - "name": "Taller/tienda de bicis", + "name": "Reparación/tienda de bicicletas", "presets": { "0": { - "title": "un taller/tienda de bicis" + "title": "una reparación/tienda de bicicletas" } }, "title": { "mappings": { "0": { - "then": "Tienda de material deportivo {name}" + "then": "Tienda de artículos deportivos {name}" }, "2": { "then": "Tienda de alquiler de bicicletas {name}" }, "3": { - "then": "Reparación de bicis {name}" + "then": "Reparación de bicicletas {name}" }, "4": { - "then": "Tienda de bicis {name}" + "then": "Tienda de bicicletas {name}" }, "5": { - "then": "Taller/tienda de bicis {name}" + "then": "Reparación/tienda de bicicletas {name}" }, "6": { - "then": "Taller/tienda de bicis {name}" + "then": "Reparación/tienda de bicicletas {name}" } }, - "render": "Taller/tienda de bicis" + "render": "Reparación/tienda de bicicletas" } }, "bike_themed_object": { - "description": "Una capa con los objetos relacionados con bicis pero que no coinciden con ninguna otra capa", - "name": "Objeto relacionado con bicis", + "description": "Una capa con objetos con temática de bicicletas, pero que no coinciden con ninguna otra capa", + "name": "Objeto relacionado con bicicletas", "title": { "mappings": { "1": { - "then": "Carril bici" + "then": "Pista ciclista" } }, - "render": "Objeto relacionado con las bicicletas" + "render": "Objeto relacionado con bicicletas" } }, "binocular": { @@ -1738,7 +1924,7 @@ "name": "Prismáticos", "presets": { "0": { - "description": "Un telescopio o unos prismáticos montados en un poste, disponible para que el público mire alrededor. ", + "description": "Un telescopio o un par de prismáticos montados en un poste, disponibles para el público para mirar alrededor. ", "title": "unos prismáticos" } }, @@ -1746,15 +1932,15 @@ "binocular-charge": { "mappings": { "0": { - "then": "De uso gratuito" + "then": "Gratuito" } }, - "question": "¿Cuánto hay que pagar para utilizar estos prismáticos?", - "render": "Utilizar estos prismáticos cuesta {charge}" + "question": "¿Cuánto hay que pagar para usar estos prismáticos?", + "render": "Usar estos prismáticos cuesta {charge}" }, "binocular-direction": { - "question": "¿Cuándo uno mira a través de estos prismáticos, en qué dirección lo hace?", - "render": "Mira hacia {direction}º" + "question": "Al mirar a través de este prismático, ¿en qué dirección se mira?", + "render": "Mira hacia {direction}°" } }, "title": { @@ -1762,142 +1948,243 @@ } }, "birdhide": { - "description": "Un observatorio de aves", + "description": "Un escondite para pájaros", "filter": { "0": { "options": { "0": { - "question": "Accesible con sillas de ruedas" + "question": "Accesible en silla de ruedas" + } + } + }, + "1": { + "options": { + "0": { + "question": "Solo escondites cubiertos" } } } }, - "name": "Lugares para ver aves", + "name": "Lugares de observación de aves", "presets": { "0": { - "description": "Un refugio cubierto donde se pueden ver aves confortablemente", - "title": "un observatorio de aves" + "description": "Un refugio cubierto donde se pueden observar aves cómodamente", + "title": "un escondite para pájaros" }, "1": { - "description": "Una pantalla o pared con aperturas para ver pájaros" + "description": "Una pantalla o pared con aberturas para observar aves", + "title": "un escondrijo para pájaros" } }, "tagRenderings": { + "bird-hide-shelter-or-wall": { + "mappings": { + "0": { + "then": "Escondrijo para pájaros" + }, + "1": { + "then": "Escondite para pájaros" + }, + "2": { + "then": "Escondite para pájaros en torre" + }, + "3": { + "then": "Refugio para pájaros" + } + }, + "question": "¿Es un escondrijo para pájaros o un refugio para observar pájaros?" + }, "bird-hide-wheelchair": { "mappings": { "0": { - "then": "Hay provisiones especiales para usuarios de sillas de ruedas" + "then": "Hay provisiones especiales para usuarios de silla de ruedas" + }, + "1": { + "then": "Una silla de ruedas puede usar fácilmente este observatorio de aves" + }, + "2": { + "then": "Este observatorio de aves es accesible en silla de ruedas, pero no es fácil" }, "3": { - "then": "No accesible a usuarios con sillas de ruedas" + "then": "No accesible para usuarios de silla de ruedas" } - } + }, + "question": "¿Es este observatorio de aves accesible para usuarios de silla de ruedas?" }, "birdhide-operator": { "mappings": { "0": { "then": "Operado por Natuurpunt" + }, + "1": { + "then": "Operado por la Agencia para la Naturaleza y los Bosques" } }, + "question": "¿Quién opera este observatorio de aves?", "render": "Operado por {operator}" } + }, + "title": { + "mappings": { + "1": { + "then": "Observatorio de aves {name}" + }, + "2": { + "then": "Hide de aves {name}" + } + }, + "render": "Lugar de observación de aves" + } + }, + "brothel": { + "description": "Un establecimiento dedicado específicamente a la prostitución ", + "name": "Burdeles", + "presets": { + "0": { + "title": "un burdel" + } + }, + "tagRenderings": { + "name": { + "question": "¿Cuál es el nombre de este burdel?", + "render": "Este burdel se llama {name}" + } + }, + "title": { + "render": "Burdel" } }, "cafe_pub": { "deletion": { "extraDeleteReasons": { "0": { - "explanation": "{title()} ha cerrado permanentemente" + "explanation": "{title()} ha cerrado definitivamente" } } }, - "description": "Una capa que muestra cafeterías y bares donde uno se puede reunir con una bebida. La capa hace algunas preguntas relevantes", - "name": "Cafeterías y pubs", + "description": "Una capa que muestra cafés y pubs donde uno puede reunirse alrededor de una bebida La capa hace algunas preguntas relevantes", + "name": "Cafés y pubs", "presets": { "0": { - "description": "Un bar, principalmente para beber cervezas en un interior templado y relajado", - "title": "un bar" + "description": "Un pub, principalmente para beber cervezas en un ambiente cálido y relajado", + "title": "un pub" }, "1": { - "description": "Un bar de copas más moderno y comercial, posiblemente con una instalación de música y luz", - "title": "un bar de copas" + "description": "Un bar más moderno y comercial, posiblemente con una instalación de música e iluminación", + "title": "un bar" }, "2": { "description": "Un café para tomar té, café o una bebida alcohólica en un ambiente tranquilo", - "title": "una cafetería" + "title": "un café" }, "3": { - "description": "Un club nocturno o discoteca centrada en bailar, la música de un DJ acompañado por un espectáculo de luces y un bar donde conseguir bebidas (alcohólicas)", - "title": "un club nocturno o una discoteca" + "description": "Una discoteca o club nocturno con enfoque en el baile, música de un DJ con espectáculo de luces y un bar para tomar bebidas (alcohólicas)", + "title": "una discoteca o club nocturno" } }, "tagRenderings": { "Classification": { "mappings": { "0": { - "then": "Un bar, principalmente para beber cervezas en un interior cálido y relajado" + "then": "Un pub, principalmente para beber cervezas en un ambiente cálido y relajado" }, "1": { - "then": "Un bar de copas más moderno y comercial, posiblemente con una instalación de música y luz" + "then": "Un bar más moderno y comercial, posiblemente con una instalación de música e iluminación" }, "2": { - "then": "Una cafetería para beber té, café o una bebida alcohólica en un ambiente tranquilo" + "then": "Un café para tomar té, café o una bebida alcohólica en un ambiente tranquilo" }, "3": { - "then": "Un restaurante donde se pueda comer como es debido" + "then": "Un restaurante donde se puede obtener una comida adecuada" }, "4": { "then": "Un espacio abierto donde se sirve cerveza, típico de Alemania" }, "5": { - "then": "Este es un club nocturno o discoteca centrado en bailar, música de un DJ con un espectáculo de luces que la acompaña y un bar donde conseguir bebidas (alcohólicas)" + "then": "Este es un club nocturno o discoteca con enfoque en el baile, música de un DJ con espectáculo de luces y un bar para tomar bebidas (alcohólicas)" } }, - "question": "Qué tipo de cafe es este?" + "question": "¿Qué tipo de café es este?" }, "Name": { - "question": "¿Cuál es el nombre de esta empresa?", - "render": "Esta empresa se llama {name}" + "question": "¿Cuál es el nombre de este negocio?", + "render": "Este negocio se llama {name}" } }, "title": { "mappings": { "0": { "then": "{name}" + }, + "1": { + "then": "Bar" + }, + "2": { + "then": "Café" + }, + "3": { + "then": "Discoteca" } }, - "render": "Bar" + "render": "Pub" + } + }, + "car_rental": { + "description": "Lugares donde puedes alquilar un coche", + "name": "Alquiler de coches", + "presets": { + "0": { + "description": "Un lugar donde puedes alquilar un coche", + "title": "un alquiler de coches" + } + }, + "tagRenderings": { + "name": { + "freeform": { + "placeholder": "Nombre del alquiler de coches" + }, + "mappings": { + "0": { + "then": "Este alquiler de coches no tiene nombre" + } + }, + "question": "¿Cuál es el nombre de este alquiler de coches?", + "render": "Este alquiler de coches se llama {name}" + } + }, + "title": { + "render": "Alquiler de coches" } }, "caravansites": { - "description": "zonas de acampada", - "name": "Sitios de Acampada", + "description": "Áreas para autocaravanas", + "name": "Áreas para autocaravanas", "presets": { "0": { - "description": "Añade un nuevo sitio de acampada oficial. Son lugares designados para pasar la noche con tu caravana. Pueden parecerse a un camping real o simplemente a un aparcamiento. Puede que no estén señalizados en absoluto, sino que simplemente estén definidos en una decisión municipal. Un aparcamiento normal destinado a los campistas en el que no se espera que se pase la noche, no es un camping. ", - "title": "una zona de acampada" + "description": "Añade una nueva área para autocaravanas oficial. Estos son lugares designados para pasar la noche con tu autocaravana. Pueden parecer un camping real o simplemente un aparcamiento. Puede que no estén señalizados, sino definidos en una decisión municipal. Un aparcamiento normal destinado a autocaravanas donde no se espera pasar la noche, -no- es un área para autocaravanas ", + "title": "un área para autocaravanas" } }, "tagRenderings": { "caravansites-capacity": { - "question": "¿Cuántos campistas pueden alojarse aquí? (omitir si no hay un número evidente de plazas o vehículos permitidos)", - "render": "{capacity} los campistas pueden utilizar este lugar al mismo tiempo" + "question": "¿Cuántas autocaravanas pueden alojarse aquí? (omita si no hay un número obvio de plazas o vehículos permitidos)", + "render": "{capacity} autocaravanas pueden usar este lugar al mismo tiempo" }, "caravansites-charge": { "question": "¿Cuánto cobra este lugar?", "render": "Este lugar cobra {charge}" }, "caravansites-description": { - "question": "¿Te gustaría añadir una descripción general de este lugar? (No repitas información previamente preguntada o mostrada arriba. Por favor mantenla objetiva - las opiniones van en la de opiniones)", - "render": "Más detalles sobre este lugar:{description}" + "question": "¿Te gustaría añadir una descripción general de este lugar? (no repitas información previamente solicitada o mostrada arriba Manténla objetiva - las opiniones van en las reseñas)", + "render": "Más detalles sobre este lugar: {description}" }, "caravansites-fee": { "mappings": { "0": { - "then": "Necesitas pagar por su uso" + "then": "Tienes que pagar por el uso" }, "1": { - "then": "Se puede usar de manera gratuita" + "then": "Se puede usar gratis" } }, "question": "¿Este lugar cobra una tarifa?" @@ -1914,32 +2201,32 @@ "then": "No hay acceso a internet" } }, - "question": "¿Este lugar tiene acceso a internet?" + "question": "¿Este lugar proporciona acceso a internet?" }, "caravansites-internet-fee": { "mappings": { "0": { - "then": "Tienes que pagar a mayores por el acceso a internet" + "then": "Tienes que pagar extra por el acceso a internet" }, "1": { - "then": "No tienes que pagar a mayores por el acceso a internet" + "then": "No tienes que pagar extra por el acceso a internet" } }, - "question": "¿Tienes que pagar por el acceso a internet?" + "question": "¿Hay que pagar por el acceso a internet?" }, "caravansites-long-term": { "mappings": { "0": { - "then": "Hay algunas plazas de alquiler a largo plazo, pero también puedes alojarte por días" + "then": "Hay algunos lugares para alquiler a largo plazo, pero también puedes quedarte diariamente" }, "1": { "then": "No hay huéspedes permanentes aquí" }, "2": { - "then": "Solo es posible permanecer aquí si tienes un contrato a largo plazo (este lugar desaparecerá de este mapa si escoges esto)" + "then": "Solo es posible alojarse aquí si tienes un contrato a largo plazo (este lugar desaparece de este mapa si eliges esto)" } }, - "question": "¿Este lugar ofrece huecos para alquilar a largo plazo?" + "question": "¿Este lugar ofrece plazas para alquiler a largo plazo?" }, "caravansites-name": { "question": "¿Cómo se llama este lugar?", @@ -1948,65 +2235,1118 @@ "caravansites-sanitary-dump": { "mappings": { "0": { - "then": "Este lugar tiene un vertedero sanitario" + "then": "Este lugar tiene un punto de vaciado de aguas grises" }, "1": { - "then": "Este lugar no tiene vertedero sanitario" + "then": "Este lugar no tiene un punto de vaciado de aguas grises" } }, - "question": "¿Este lugar tiene un vertedero sanitario?" + "question": "¿Este lugar tiene un punto de vaciado de aguas grises?" }, "caravansites-toilets": { "mappings": { "0": { - "then": "Este lugar cuenta con sanitarios" + "then": "Este lugar tiene baños" }, "1": { - "then": "Este lugar no tiene sanitarios" + "then": "Este lugar no tiene baños" } }, "question": "¿Este lugar tiene baños?" }, "caravansites-website": { - "question": "¿Este lugar tiene un sitio web?", - "render": "Sitio web oficial: {website}" + "question": "¿Este lugar tiene una página web?", + "render": "Página web oficial: {website}" } }, "title": { "mappings": { "0": { - "then": "Camping sin nombre" + "then": "Área para autocaravanas sin nombre" } }, - "render": "Sitio de camping {name}" + "render": "Área para autocaravanas {name}" } }, - "climbing": { + "charging_station": { + "description": "Un punto de carga", + "filter": { + "0": { + "options": { + "0": { + "question": "Todos los tipos de vehículos" + }, + "1": { + "question": "Punto de carga para bicicletas" + }, + "2": { + "question": "Punto de carga para coches" + } + } + }, + "1": { + "options": { + "0": { + "question": "Solo puntos de carga en funcionamiento" + } + } + }, + "2": { + "options": { + "0": { + "question": "Todos los conectores" + }, + "1": { + "question": "Tiene un conector
Enchufe de pared Schuko sin pin de tierra (tipo CEE7/4 F)
" + }, + "10": { + "question": "Tiene un conector
Tipo 2 con cable (mennekes)
" + }, + "11": { + "question": "Tiene un conector
Tesla Supercharger CCS (un tipo2_css de marca)
" + }, + "12": { + "question": "Tiene un conector
Tesla Supercharger (destino)
" + }, + "13": { + "question": "Tiene un conector
Supercargador Tesla (destino) (Un tipo 2 con cable de marca Tesla)
" + }, + "14": { + "question": "Tiene un conector
USB para cargar teléfonos y pequeños dispositivos electrónicos
" + }, + "15": { + "question": "Tiene un conector
Bosch Active Connect con 3 pines y cable
" + }, + "16": { + "question": "Tiene un conector
Bosch Active Connect con 5 pines y cable
" + }, + "17": { + "question": "Tiene un conector
BS1363 (Tipo G)
" + }, + "18": { + "question": "Tiene un conector
NEMA 5-15 (Tipo B)
" + }, + "19": { + "question": "Tiene un conector
SEV 1011 T23 (Tipo J)
" + }, + "2": { + "question": "Tiene un conector
Enchufe de pared europeo con pin de tierra (tipo CEE7/4 E)
" + }, + "20": { + "question": "Tiene un conector
AS3112 (Tipo I)
" + }, + "21": { + "question": "Tiene un conector
NEMA 5-20 (Tipo B)
" + }, + "3": { + "question": "Tiene un conector
Chademo
" + }, + "4": { + "question": "Tiene un conector
Tipo 1 con cable (J1772)
" + }, + "5": { + "question": "Tiene un conector
Tipo 1 sin cable (J1772)
" + }, + "6": { + "question": "Tiene un conector
Tipo 1 CCS (también conocido como Tipo 1 Combo)
" + }, + "7": { + "question": "Tiene un conector
Tesla Supercharger
" + }, + "8": { + "question": "Tiene un conector
Tipo 2 (mennekes)
" + }, + "9": { + "question": "Tiene un conector
Tipo 2 CCS (mennekes)
" + } + } + } + }, + "name": "Puntos de carga", + "presets": { + "0": { + "title": "punto de carga para bicicletas eléctricas" + }, + "1": { + "title": "punto de carga para coches" + } + }, "tagRenderings": { - "average_length": { - "question": "¿Cual es la longitud (media) de las rutas en metros?", - "render": "Las rutas miden {canonical(climbing:length)} de media" + "Auth phone": { + "question": "¿Cuál es el número de teléfono para la llamada o SMS de autenticación?", + "render": "Autentifícate llamando o enviando un SMS a {authentication:phone_call:number}" + }, + "Authentication": { + "mappings": { + "0": { + "then": "Autenticación mediante tarjeta de socio" + }, + "1": { + "then": "Autenticación mediante una aplicación" + }, + "2": { + "then": "Hay disponible autenticación por llamada telefónica" + }, + "3": { + "then": "Hay disponible autenticación por SMS" + }, + "4": { + "then": "Hay disponible autenticación por NFC" + }, + "5": { + "then": "Hay disponible autenticación por tarjeta de crédito" + }, + "6": { + "then": "Hay disponible autenticación por tarjeta de débito" + }, + "7": { + "then": "La carga aquí también es posible sin autenticación" + } + }, + "question": "¿Qué tipo de autenticación está disponible en el punto de carga?" + }, + "Available_charging_stations (generated)": { + "mappings": { + "0": { + "then": "Enchufe de pared Schuko sin pin de tierra (tipo CEE7/4 F)" + }, + "1": { + "then": "Enchufe de pared Schuko sin pin de tierra (tipo CEE7/4 F)" + }, + "10": { + "then": "Tipo 1 CCS (también conocido como Tipo 1 Combo)" + }, + "11": { + "then": "Tipo 1 CCS (también conocido como Tipo 1 Combo)" + }, + "12": { + "then": "Tesla Supercharger" + }, + "13": { + "then": "Tesla Supercharger" + }, + "14": { + "then": "Tipo 2 (mennekes)" + }, + "15": { + "then": "Tipo 2 (mennekes)" + }, + "16": { + "then": "Tipo 2 CCS (mennekes)" + }, + "17": { + "then": "Tipo 2 CCS (mennekes)" + }, + "18": { + "then": "Tipo 2 con cable (mennekes)" + }, + "19": { + "then": "Tipo 2 con cable (mennekes)" + }, + "2": { + "then": "Enchufe de pared europeo con pin de tierra (tipo CEE7/4 E)" + }, + "20": { + "then": "Tesla Supercharger CCS (un tipo2_css de marca)" + }, + "21": { + "then": "Tesla Supercharger CCS (un tipo2_css de marca)" + }, + "22": { + "then": "Tesla Supercharger (destino)" + }, + "23": { + "then": "Tesla Supercharger (destino)" + }, + "24": { + "then": "Supercargador Tesla (destino) (Un tipo 2 con cable de marca Tesla)" + }, + "25": { + "then": "Supercargador Tesla (destino) (Un tipo 2 con cable de marca Tesla)" + }, + "26": { + "then": "USB para cargar teléfonos y pequeños dispositivos electrónicos" + }, + "27": { + "then": "USB para cargar teléfonos y pequeños dispositivos electrónicos" + }, + "28": { + "then": "Bosch Active Connect con 3 pines y cable" + }, + "29": { + "then": "Bosch Active Connect con 3 pines y cable" + }, + "3": { + "then": "Enchufe de pared europeo con pin de tierra (tipo CEE7/4 E)" + }, + "30": { + "then": "Bosch Active Connect con 5 pines y cable" + }, + "31": { + "then": "Bosch Active Connect con 5 pines y cable" + }, + "32": { + "then": "BS1363 (Tipo G)" + }, + "33": { + "then": "BS1363 (Tipo G)" + }, + "34": { + "then": "NEMA 5-15 (Tipo B)" + }, + "35": { + "then": "NEMA 5-15 (Tipo B)" + }, + "36": { + "then": "SEV 1011 T23 (Tipo J)" + }, + "37": { + "then": "SEV 1011 T23 (Tipo J)" + }, + "38": { + "then": "AS3112 (Tipo I)" + }, + "39": { + "then": "AS3112 (Tipo I)" + }, + "4": { + "then": "Chademo" + }, + "40": { + "then": "NEMA 5-20 (Tipo B)" + }, + "41": { + "then": "NEMA 5-20 (Tipo B)" + }, + "5": { + "then": "Chademo" + }, + "6": { + "then": "Tipo 1 con cable (J1772)" + }, + "7": { + "then": "Tipo 1 con cable (J1772)" + }, + "8": { + "then": "Tipo 1 sin cable (J1772)" + }, + "9": { + "then": "Tipo 1 sin cable (J1772)" + } + }, + "question": "¿Qué conexiones de carga están disponibles aquí?" + }, + "Network": { + "mappings": { + "0": { + "then": "No forma parte de una red mayor, por ejemplo, porque el punto de carga es mantenido por un negocio local" + }, + "1": { + "then": "No forma parte de una red mayor" + } + }, + "question": "¿Este punto de carga forma parte de una red?", + "render": "Parte de la red {network}" + }, + "OH": { + "override": { + "question": "¿Cuándo está abierto este punto de carga?" + } + }, + "Operational status": { + "mappings": { + "0": { + "then": "Este punto de carga funciona" + }, + "1": { + "then": "Este punto de carga está roto" + }, + "2": { + "then": "Aquí se planea un punto de carga" + }, + "3": { + "then": "Aquí se está construyendo un punto de carga" + }, + "4": { + "then": "Este punto de carga ha sido deshabilitado permanentemente y ya no está en uso, pero sigue siendo visible" + } + }, + "question": "¿Este punto de carga está en uso?" + }, + "Operator": { + "mappings": { + "0": { + "then": "En realidad, {operator} es la red" + } + }, + "question": "¿Quién es el operador de este punto de carga?", + "render": "Este punto de carga es operado por {operator}" + }, + "Parking:fee": { + "mappings": { + "0": { + "then": "Sin coste de aparcamiento adicional mientras se carga" + }, + "1": { + "then": "Se debe pagar una tarifa de aparcamiento adicional mientras se carga" + } + }, + "question": "¿Hay que pagar una tarifa de aparcamiento mientras se carga?" + }, + "Type": { + "mappings": { + "0": { + "then": "Aquí se pueden cargar bicicletas" + }, + "1": { + "then": "Aquí se pueden cargar coches" + }, + "2": { + "then": "Aquí se pueden cargar patinetes" + }, + "3": { + "then": "Aquí se pueden cargar vehículos de mercancías pesadas (como camiones)" + }, + "4": { + "then": "Aquí se pueden cargar autobuses" + } + }, + "question": "¿Qué vehículos pueden cargar aquí?" + }, + "access": { + "mappings": { + "0": { + "then": "Cualquiera puede usar este punto de carga (puede ser necesario el pago)" + }, + "1": { + "then": "Cualquiera puede usar este punto de carga (puede ser necesario el pago)" + }, + "2": { + "then": "Solo los clientes del lugar al que pertenece esta estación pueden usar este punto de carga
Por ejemplo, un punto de carga operado por un hotel que solo pueden usar sus huéspedes" + }, + "3": { + "then": "Se debe solicitar una llave para acceder a este punto de carga
Por ejemplo, un punto de carga operado por un hotel que solo pueden usar sus huéspedes, que reciben una llave de la recepción para desbloquear el punto de carga" + }, + "4": { + "then": "No accesible al público en general (por ejemplo, solo accesible para los propietarios, empleados, ...)" + }, + "5": { + "then": "Este punto de carga es accesible al público durante ciertas horas o condiciones Pueden aplicarse restricciones, pero se permite el uso general" + } + }, + "question": "¿Quién puede usar este punto de carga?", + "render": "El acceso es {access}" + }, + "capacity": { + "question": "¿Cuántos vehículos se pueden cargar aquí al mismo tiempo?", + "render": "{capacity} vehículos se pueden cargar aquí al mismo tiempo" + }, + "charge": { + "question": "¿Cuánto hay que pagar para usar este punto de carga?", + "render": "Usar este punto de carga cuesta {charge}" + }, + "email": { + "question": "¿Cuál es la dirección de correo electrónico del operador?", + "render": "En caso de problemas, envía un correo electrónico a {email}" }, "fee": { "mappings": { "0": { - "then": "La escalada es gratis" + "then": "De uso gratuito (sin autenticación)" }, "1": { - "then": "Hay que pagar una tasa para escalar aquí" + "then": "De uso gratuito, pero hay que autenticarse" + }, + "2": { + "then": "De uso gratuito" + }, + "3": { + "then": "De pago, pero gratuito para clientes del hotel/pub/hospital/... que opera el punto de carga" + }, + "4": { + "then": "De pago" } }, - "question": "¿Se requiere una tasa para escalar aquí?", - "render": "Se debe de pagar una tasa de {charge} para escalar aquí" + "question": "¿Hay que pagar para usar este punto de carga?" + }, + "maxstay": { + "mappings": { + "0": { + "then": "Sin límite de tiempo para dejar tu vehículo aquí" + } + }, + "question": "¿Cuál es el tiempo máximo que se permite permanecer aquí?", + "render": "Se puede permanecer como máximo {canonical(maxstay)}" + }, + "phone": { + "question": "¿A qué número se puede llamar si hay un problema con este punto de carga?", + "render": "En caso de problemas, llama a {phone}" + }, + "questions-technical": { + "render": "

Preguntas técnicas

Las preguntas a continuación son muy técnicas Siéntete libre de ignorarlas
{questions(technical)}" + }, + "ref": { + "question": "¿Cuál es el número de referencia de este punto de carga?", + "render": "El número de referencia es {ref}" + }, + "rewritten-questions": { + "renderings": { + "0": { + "question": "¿Cuántos enchufes del tipo {{description}} hay disponibles aquí?", + "render": "Hay {{{key}}} enchufes del tipo {{description}} disponibles aquí" + }, + "1": { + "mappings": { + "then": "{{description}} entrega {{commonVoltages}} voltios" + }, + "question": "¿Qué voltaje ofrecen los enchufes con {{description}}?", + "render": "{{description}} entrega {canonical({{key}}:voltage)}" + }, + "2": { + "mappings": { + "then": "{{description}} entrega como máximo {{commonCurrent}} A" + }, + "question": "¿Qué corriente ofrecen los enchufes con {{description}}?", + "render": "{{description}} entrega como máximo {canonical({{key}}:current)}" + }, + "3": { + "mappings": { + "then": "{{description}} entrega como máximo {{commonOutput}} A" + }, + "question": "¿Qué potencia de salida ofrece un solo enchufe del tipo {{description}}?", + "render": "{{description}} entrega como máximo {canonical({{key}}:output)}" + } + }, + "rewrite": { + "into": { + "0": { + "2": "Enchufe de pared Schuko sin pin de tierra (tipo CEE7/4 F)" + }, + "1": { + "2": "Enchufe de pared europeo con pin de tierra (tipo CEE7/4 E)" + }, + "10": { + "2": "Tesla Supercharger CCS (un tipo2_css de marca)" + }, + "11": { + "2": "Tesla Supercharger (destino)" + }, + "12": { + "2": "Supercargador Tesla (destino) (Un tipo 2 con cable de marca Tesla)" + }, + "13": { + "2": "USB para cargar teléfonos y pequeños dispositivos electrónicos" + }, + "14": { + "2": "Bosch Active Connect con 3 pines y cable" + }, + "15": { + "2": "Bosch Active Connect con 5 pines y cable" + }, + "16": { + "2": "BS1363 (Tipo G)" + }, + "17": { + "2": "NEMA 5-15 (Tipo B)" + }, + "18": { + "2": "SEV 1011 T23 (Tipo J)" + }, + "19": { + "2": "AS3112 (Tipo I)" + }, + "2": { + "2": "Chademo" + }, + "20": { + "2": "NEMA 5-20 (Tipo B)" + }, + "3": { + "2": "Tipo 1 con cable (J1772)" + }, + "4": { + "2": "Tipo 1 sin cable (J1772)" + }, + "5": { + "2": "Tipo 1 CCS (también conocido como Tipo 1 Combo)" + }, + "6": { + "2": "Tesla Supercharger" + }, + "7": { + "2": "Tipo 2 (mennekes)" + }, + "8": { + "2": "Tipo 2 CCS (mennekes)" + }, + "9": { + "2": "Tipo 2 con cable (mennekes)" + } + } + } + }, + "website": { + "question": "¿Cuál es la página web donde se puede encontrar más información sobre este punto de carga?", + "render": "Más información en {website}" + } + }, + "title": { + "mappings": { + "0": { + "then": "Punto de carga para bicicletas eléctricas" + }, + "1": { + "then": "Punto de carga para coches" + } + }, + "render": "Punto de carga" + } + }, + "cinema": { + "description": " Un lugar donde se proyectan películas (cine), generalmente abierto al público por una tarifa Comúnmente conocido como cine en Estados Unidos", + "name": "Cine", + "tagRenderings": { + "cinema_type": { + "mappings": { + "0": { + "then": "Este es un cine normal que proyecta películas para todas las edades" + }, + "1": { + "then": "Este es un cine erótico que proyecta películas para adultos" + } + }, + "question": "¿Qué tipo de cine es este?" + } + }, + "title": { + "render": "Cine" + } + }, + "climbing": { + "description": "Una capa ficticia que contiene representaciones de etiquetas, compartidas entre las capas de escalada", + "tagRenderings": { + "average_length": { + "question": "¿Cuál es la longitud (promedio) de las vías en metros?", + "render": "Las vías tienen una longitud promedio de {canonical(climbing:length)}" + }, + "bouldering": { + "mappings": { + "0": { + "then": "El búlder es posible aquí" + }, + "1": { + "then": "El búlder no es posible aquí" + }, + "2": { + "then": "El búlder es posible, aunque solo hay algunos problemas" + }, + "3": { + "then": "Hay {climbing:boulder} problemas de búlder" + } + }, + "question": "¿Es posible el búlder aquí?" + }, + "fee": { + "mappings": { + "0": { + "then": "Escalar aquí es gratuito" + }, + "1": { + "then": "Se requiere pagar una tarifa para escalar aquí" + } + }, + "question": "¿Se requiere una tarifa para escalar aquí?", + "render": "Se debe pagar una tarifa de {charge} para escalar aquí" + }, + "max_bolts": { + "question": "¿Cuántos parabolts tienen como máximo las vías en {title()}?", + "render": "Las vías de escalada deportiva aquí tienen como máximo {climbing:bolts:max} parabolts.
Esto es sin reuniones e indica cuántos cintas exprés necesita un escalador
" + }, + "max_difficulty": { + "question": "¿Cuál es la vía de mayor grado aquí, según el sistema de clasificación francés?", + "render": "El grado más alto es {climbing:grade:french:max} según el sistema francés/belga" + }, + "min_difficulty": { + "question": "¿Cuál es el grado de la vía más fácil aquí, según el sistema de clasificación francés?", + "render": "El grado más bajo es {climbing:grade:french:min} según el sistema francés/belga" + }, + "sportclimbing": { + "mappings": { + "0": { + "then": "La escalada deportiva es posible aquí" + }, + "1": { + "then": "La escalada deportiva no es posible aquí" + }, + "2": { + "then": "Hay {climbing:sport} vías de escalada deportiva" + } + }, + "question": "¿Es posible la escalada deportiva aquí en anclajes fijos?" + }, + "toprope": { + "mappings": { + "0": { + "then": "La escalada con cuerda desde arriba es posible aquí" + }, + "1": { + "then": "La escalada con cuerda desde arriba no es posible aquí" + }, + "2": { + "then": "Hay {climbing:toprope} vías de escalada con cuerda desde arriba" + } + }, + "question": "¿Es posible la escalada con cuerda desde arriba aquí?" + }, + "trad_climbing": { + "mappings": { + "0": { + "then": "La escalada tradicional es posible aquí" + }, + "1": { + "then": "La escalada tradicional no es posible aquí" + }, + "2": { + "then": "Hay {climbing:traditional} vías de escalada tradicional" + } + }, + "question": "¿Es posible la escalada tradicional aquí?", + "questionHint": "Usando tu propio equipo, p. ej., fisureros" + }, + "website": { + "question": "¿Hay una página web (no oficial) con más información (p. ej., croquis)?" } } }, + "climbing_area": { + "description": "Un área donde es posible escalar, p. ej., una pared, un sitio, un bloque de roca, ... Contiene una agregación de vías", + "name": "Posibilidades de escalada", + "presets": { + "0": { + "description": "Una posibilidad de escalada", + "title": "una posibilidad de escalada" + } + }, + "tagRenderings": { + "Contained routes hist": { + "render": "

Resumen de grados

{histogram(_difficulty_hist)}" + }, + "Contained routes length hist": { + "render": "

Resumen de longitudes

{histogram(_length_hist)}" + }, + "Contained_climbing_routes": { + "render": "

Contiene {_contained_climbing_routes_count} vías

    {_contained_climbing_routes}
" + }, + "Rock type (crag/rock/cliff only)": { + "mappings": { + "0": { + "then": "Caliza" + } + }, + "question": "¿Cuál es el tipo de roca aquí?", + "render": "El tipo de roca es {rock}" + }, + "Type": { + "mappings": { + "0": { + "then": "Un bloque de escalada - una sola roca o acantilado con una o pocas vías de escalada que se pueden escalar de forma segura sin cuerda" + }, + "1": { + "then": "Una pared de escalada - una sola roca o acantilado con al menos algunas vías de escalada" + }, + "2": { + "then": "Un área de escalada con una o más paredes y/o bloques de escalada" + } + } + }, + "name": { + "mappings": { + "0": { + "then": "Esta posibilidad de escalada no tiene nombre" + } + }, + "question": "¿Cuál es el nombre de esta posibilidad de escalada?", + "render": "{name}" + } + }, + "title": { + "mappings": { + "0": { + "then": "Pared de escalada {name}" + }, + "1": { + "then": "Área de escalada {name}" + }, + "2": { + "then": "Sitio de escalada" + }, + "3": { + "then": "Posibilidad de escalada {name}" + } + }, + "render": "Posibilidad de escalada" + } + }, + "climbing_club": { + "description": "Un club u organización de escalada", + "name": "Club de escalada", + "presets": { + "0": { + "description": "Un club de escalada", + "title": "un club de escalada" + }, + "1": { + "description": "Una ONG que trabaja en torno a la escalada", + "title": "una ONG de escalada" + } + }, + "tagRenderings": { + "climbing_club-name": { + "question": "¿Cuál es el nombre de este club u ONG de escalada?", + "render": "{name}" + } + }, + "title": { + "mappings": { + "0": { + "then": "ONG de escalada" + } + }, + "render": "Club de escalada" + } + }, + "climbing_gym": { + "description": "Un gimnasio de escalada", + "name": "Gimnasios de escalada", + "presets": { + "0": { + "title": "Gimnasio de escalada" + } + }, + "tagRenderings": { + "Speed climbing?": { + "mappings": { + "0": { + "then": "Hay una pared de escalada de velocidad" + }, + "1": { + "then": "No hay una pared de escalada de velocidad" + }, + "2": { + "then": "Hay {climbing:speed} paredes de escalada de velocidad" + } + }, + "question": "¿Hay una pared de escalada de velocidad?" + }, + "belay_device_rental": { + "mappings": { + "0": { + "then": "Se proporcionan dispositivos de aseguramiento en cada cuerda" + }, + "1": { + "then": "Se puede pedir prestado un dispositivo de aseguramiento gratis aquí" + }, + "2": { + "then": "Se puede alquilar un dispositivo de aseguramiento aquí por {service:climbing_belay_device:rental:charge}" + }, + "3": { + "then": "Se puede alquilar un dispositivo de aseguramiento aquí" + }, + "4": { + "then": "No se puede alquilar un dispositivo de aseguramiento aquí" + } + }, + "question": "¿Se puede alquilar un dispositivo de aseguramiento aquí?" + }, + "harness_rental": { + "mappings": { + "0": { + "then": "Se puede pedir prestado un arnés de escalada gratis aquí" + }, + "1": { + "then": "Se puede alquilar un arnés de escalada aquí por {service:climbing_harness:rental:charge}" + }, + "2": { + "then": "Se puede alquilar un arnés de escalada aquí" + }, + "3": { + "then": "No se puede alquilar un arnés de escalada aquí" + } + }, + "question": "¿Se puede alquilar un arnés de escalada aquí?" + }, + "name": { + "question": "¿Cuál es el nombre de este gimnasio de escalada?" + }, + "rope_rental": { + "mappings": { + "0": { + "then": "Se puede pedir prestada una cuerda de escalada gratis aquí" + }, + "1": { + "then": "Se puede alquilar una cuerda de escalada aquí por {service:climbing_rope:rental:charge}" + }, + "2": { + "then": "Se puede alquilar una cuerda de escalada aquí" + }, + "3": { + "then": "No se puede alquilar una cuerda de escalada aquí" + } + }, + "question": "¿Se puede alquilar una cuerda de escalada aquí?" + }, + "shoe_rental": { + "mappings": { + "0": { + "then": "Se pueden pedir prestadas zapatillas de escalada gratis aquí" + }, + "1": { + "then": "Se pueden alquilar zapatillas de escalada aquí por {service:climbing_shoes:rental:charge}" + }, + "2": { + "then": "Se pueden alquilar zapatillas de escalada aquí" + }, + "3": { + "then": "No se pueden alquilar zapatillas de escalada aquí" + } + }, + "question": "¿Se pueden alquilar zapatillas de escalada aquí?" + } + }, + "title": { + "mappings": { + "0": { + "then": "Gimnasio de escalada {name}" + } + }, + "render": "Gimnasio de escalada" + } + }, + "climbing_opportunity": { + "description": "Capa de reserva con elementos en los que la escalada _podría_ ser posible Se carga cuando se acerca mucho, para evitar que se añadan elementos duplicados", + "name": "¿Posibilidades de escalada?", + "snapName": "una pared, un acantilado o una roca", + "tagRenderings": { + "climbing-opportunity-name": { + "render": "{name}" + }, + "climbing-possible": { + "mappings": { + "0": { + "then": "La escalada es posible aquí" + }, + "1": { + "then": "La escalada no es posible aquí" + }, + "2": { + "then": "La escalada no es posible aquí" + } + }, + "question": "¿Es posible la escalada aquí?" + } + }, + "title": { + "render": "¿Posibilidad de escalada?" + } + }, + "climbing_route": { + "description": "Una sola vía de escalada y sus propiedades Algunas propiedades se derivan de las características que la contienen", + "name": "Vías de escalada", + "presets": { + "0": { + "title": "una vía de escalada" + } + }, + "tagRenderings": { + "Difficulty": { + "question": "¿Cuál es el grado de esta vía de escalada según el sistema francés/belga?", + "render": "El grado es {climbing:grade:french} según el sistema francés/belga" + }, + "Length": { + "question": "¿Cuánto mide esta vía de escalada (en metros)?", + "render": "Esta vía mide {canonical(climbing:length)} de largo" + }, + "Name": { + "mappings": { + "0": { + "then": "Esta vía de escalada no tiene nombre" + } + }, + "question": "¿Cuál es el nombre de esta vía de escalada?", + "render": "{name}" + }, + "Rock type via embedded feature": { + "render": "El tipo de roca es {_embedding_features_with_rock:rock} como se indica en la pared circundante" + }, + "bolts": { + "mappings": { + "0": { + "then": "Esta vía no tiene parabolts" + } + }, + "question": "¿Cuántos parabolts tiene esta vía antes de llegar al anclaje?", + "render": "Esta vía tiene {climbing:bolts} parabolts
Esto es sin reuniones e indica cuántos cintas exprés necesita un escalador
" + } + }, + "title": { + "mappings": { + "0": { + "then": "Vía de escalada {name}" + } + }, + "render": "Vía de escalada" + } + }, "clock": { - "description": "Capa con relojes públicos" + "description": "Capa con relojes públicos", + "name": "Relojes", + "presets": { + "0": { + "description": "Un reloj visible públicamente", + "title": "un reloj" + }, + "1": { + "description": "Un reloj visible públicamente montado en una pared", + "title": "un reloj de pared" + } + }, + "tagRenderings": { + "barometer": { + "mappings": { + "0": { + "then": "Este reloj también muestra la presión atmosférica" + }, + "1": { + "then": "Este reloj no muestra la presión atmosférica" + }, + "2": { + "then": "Este reloj probablemente no muestra la presión atmosférica" + } + }, + "question": "¿Este reloj también muestra la presión atmosférica?" + }, + "date": { + "mappings": { + "0": { + "then": "Este reloj también muestra la fecha" + }, + "1": { + "then": "Este reloj no muestra la fecha" + }, + "2": { + "then": "Este reloj probablemente no muestra la fecha" + } + }, + "question": "¿Este reloj también muestra la fecha?" + }, + "display": { + "mappings": { + "0": { + "then": "Este reloj muestra la hora con agujas" + }, + "1": { + "then": "Este reloj muestra la hora con dígitos" + }, + "2": { + "then": "Este reloj muestra la hora con una esfera de sol" + }, + "3": { + "then": "Este reloj muestra la hora de una manera no estándar, p. ej., usando binario, agua u otra cosa" + } + }, + "question": "¿Cómo muestra la hora este reloj?" + }, + "faces": { + "freeform": { + "placeholder": "Número de caras" + }, + "mappings": { + "0": { + "then": "Este reloj tiene una cara" + }, + "1": { + "then": "Este reloj tiene dos caras" + }, + "2": { + "then": "Este reloj tiene cuatro caras" + } + }, + "question": "¿Cuántas caras tiene este reloj?", + "render": "Este reloj tiene {faces} caras" + }, + "hygrometer": { + "mappings": { + "0": { + "then": "Este reloj también muestra la humedad" + }, + "1": { + "then": "Este reloj no muestra la humedad" + }, + "2": { + "then": "Este reloj probablemente no muestra la humedad" + } + }, + "question": "¿Este reloj también muestra la humedad?" + }, + "support": { + "mappings": { + "0": { + "then": "Este reloj está montado en un poste" + }, + "1": { + "then": "Este reloj está montado en una pared, generalmente a través de un soporte perpendicular a la pared" + }, + "2": { + "then": "Este reloj está montado directamente en una pared" + }, + "3": { + "then": "Este reloj es parte de un cartel" + }, + "4": { + "then": "Este reloj está en el suelo" + }, + "4": { + "then": "Este reloj está en el suelo" + } + }, + "question": "¿De qué manera está montado el reloj?" + }, + "thermometer": { + "mappings": { + "0": { + "then": "Este reloj también muestra la temperatura" + }, + "1": { + "then": "Este reloj no muestra la temperatura" + }, + "2": { + "then": "Este reloj probablemente no muestra la temperatura" + } + }, + "question": "¿Este reloj también muestra la temperatura?" + }, + "visibility": { + "mappings": { + "0": { + "then": "Este reloj es visible desde unos 5 metros de distancia (reloj pequeño de pared)" + }, + "1": { + "then": "Este reloj es visible desde unos 20 metros de distancia (reloj de cartelera de tamaño mediano)" + }, + "2": { + "then": "Este reloj es visible desde más de 20 metros de distancia (p. ej., un reloj de iglesia o de estación)" + } + }, + "question": "¿Qué tan visible es este reloj?" + } + }, + "title": { + "render": "Reloj" + } }, "crossings": { - "description": "Pasos para peatones y ciclistas", - "name": "Pasos", + "description": "Cruces para peatones y ciclistas", + "name": "Cruces", "presets": { "0": { "description": "Cruce para peatones y/o ciclistas", @@ -2018,41 +3358,52 @@ } }, "tagRenderings": { + "crossing-arrow": { + "mappings": { + "0": { + "then": "Este semáforo tiene una flecha que apunta en la dirección del cruce" + }, + "1": { + "then": "Este semáforo no tiene una flecha que apunta en la dirección del cruce" + } + }, + "question": "¿Este semáforo tiene una flecha que apunta en la dirección del cruce?" + }, "crossing-bicycle-allowed": { "mappings": { "0": { - "then": "Un ciclista puede utilizar este cruce" + "then": "Un ciclista puede usar este cruce" }, "1": { - "then": "Un ciclista no puede utilizar este cruce" + "then": "Un ciclista no puede usar este cruce" } }, - "question": "¿Este cruce también es para ciclistas?" + "question": "¿Este cruce también es para bicicletas?" }, "crossing-button": { "mappings": { "0": { - "then": "Este semáforo tiene un botón para pedir luz verde" + "then": "Este semáforo tiene un botón para solicitar luz verde" }, "1": { - "then": "Este semáforo no tiene un botón para pedir luz verde" + "then": "Este semáforo no tiene un botón para solicitar luz verde" } }, - "question": "¿Este semáforo tiene un botón para pedir luz verde?" + "question": "¿Este semáforo tiene un botón para solicitar luz verde?" }, "crossing-continue-through-red": { "mappings": { "0": { - "then": "Un ciclista puede ir de frente si la luz está roja" + "then": "Un ciclista puede seguir recto si la luz está roja" }, "1": { - "then": "Un ciclista puede ir de frente si la luz está roja" + "then": "Un ciclista puede seguir recto si la luz está roja" }, "2": { - "then": "Un ciclista no puede ir de frente si la luz está roja" + "then": "Un ciclista no puede seguir recto si la luz está roja" } }, - "question": "¿Puede ir de frente un ciclista cuando la luz está roja?" + "question": "¿Puede un ciclista seguir recto cuando la luz está roja?" }, "crossing-has-island": { "mappings": { @@ -2063,18 +3414,18 @@ "then": "Este cruce no tiene una isla en el medio" } }, - "question": "¿Tiene una isla en el medio este cruce?" + "question": "¿Este cruce tiene una isla en el medio?" }, - "crossing-is-zebra": { + "crossing-minimap": { "mappings": { "0": { - "then": "Esto es un paso de cebra" + "then": "Este semáforo tiene un mapa táctil que muestra el diseño del cruce" }, "1": { - "then": "Esto no es un paso de cebra" + "then": "Este semáforo no tiene un mapa táctil que muestra el diseño del cruce" } }, - "question": "¿Esto es un paso de cebra?" + "question": "¿Este semáforo tiene un mapa táctil que muestra el diseño del cruce?" }, "crossing-right-turn-through-red": { "mappings": { @@ -2088,21 +3439,38 @@ "then": "Un ciclista no puede girar a la derecha si la luz está roja" } }, - "question": "¿Puede girar a la derecha un ciclista cuando la luz está roja?" + "question": "¿Puede un ciclista girar a la derecha cuando la luz está roja?" + }, + "crossing-sound": { + "mappings": { + "0": { + "then": "Este semáforo tiene señales sonoras para ayudar a cruzar, tanto para encontrar el cruce como para cruzar" + }, + "1": { + "then": "Este semáforo no tiene señales sonoras para ayudar a cruzar" + }, + "2": { + "then": "Este semáforo tiene una señal sonora para ayudar a localizar el poste, pero ninguna señal para indicar que es seguro cruzar" + }, + "3": { + "then": "Este semáforo tiene una señal sonora para indicar que es seguro cruzar, pero ninguna señal para ayudar a localizar el poste" + } + }, + "question": "¿Este semáforo tiene señales sonoras para ayudar a cruzar?" }, "crossing-tactile": { "mappings": { "0": { - "then": "Este cruce tiene superficie podotáctil" + "then": "Este cruce tiene pavimento táctil" }, "1": { - "then": "Este cruce no tiene superficie podotáctil" + "then": "Este cruce no tiene pavimento táctil" }, "2": { - "then": "Este cruce tiene superficie podotáctil, pero no correctamente" + "then": "Este cruce tiene pavimento táctil, pero no es correcto" } }, - "question": "¿Este cruce tiene pavimento podotáctil?" + "question": "¿Este cruce tiene pavimento táctil?" }, "crossing-type": { "mappings": { @@ -2110,16 +3478,27 @@ "then": "Cruce, sin semáforos" }, "1": { - "then": "Cruce con semáforo" + "then": "Cruce con semáforos" }, "2": { - "then": "Paso de cebra" + "then": "Paso de peatones" }, "3": { - "then": "Cruce sin señalizar" + "then": "Cruce sin marcas de cruce" } }, "question": "¿Qué tipo de cruce es este?" + }, + "crossing-vibration": { + "mappings": { + "0": { + "then": "El botón de este semáforo tiene una señal de vibración para indicar que es seguro cruzar" + }, + "1": { + "then": "El botón de este semáforo no tiene una señal de vibración para indicar que es seguro cruzar" + } + }, + "question": "¿Este semáforo tiene señales de vibración para ayudar a cruzar? (normalmente ubicado en la parte inferior del botón de cruce)" } }, "title": { @@ -2135,14 +3514,15 @@ } }, "cycle_highways": { - "name": "autovías ciclistas", + "name": "Carreteras para bicicletas", "title": { - "render": "autovía ciclista" + "render": "Carretera para bicicletas" } }, "cycleways_and_roads": { - "description": "Todas las infraestructuras sobre las que se puede circular en bicicleta, acompañadas de preguntas sobre las mismas", + "description": "Toda la infraestructura por la que alguien puede circular en bicicleta, acompañada de preguntas sobre esta infraestructura", "name": "Carriles bici y carreteras", + "snapName": "una carretera o un carril bici", "tagRenderings": { "Cycleway type for a road": { "mappings": { @@ -2150,10 +3530,10 @@ "then": "Hay un carril compartido" }, "1": { - "then": "Hay un carril a lado de la carretera (separado con pintura)" + "then": "Hay un carril junto a la carretera (separado con pintura)" }, "2": { - "then": "Hay una pista, pero no hay un carril bici dibujado separado de esta carretera en el mapa." + "then": "Hay una pista, pero ningún carril bici dibujado por separado de esta carretera en el mapa" }, "3": { "then": "Hay un carril bici dibujado por separado" @@ -2169,11 +3549,32 @@ }, "Cycleway:smoothness": { "mappings": { + "0": { + "then": "Utilizable para ruedas finas: patines, monopatín" + }, + "1": { + "then": "Utilizable para ruedas finas: bicicleta de carreras" + }, "2": { - "then": "Utilizable para ruedas normales: bici de ciudad, sillas de ruedas, scooter" + "then": "Utilizable para ruedas normales: bicicleta urbana, silla de ruedas, patinete" + }, + "3": { + "then": "Utilizable para ruedas robustas: bicicleta de trekking, coche, rickshaw" + }, + "4": { + "then": "Utilizable para vehículos con altura libre al suelo alta: vehículo todoterreno ligero" + }, + "5": { + "then": "Utilizable para vehículos todoterreno: vehículo todoterreno pesado" + }, + "6": { + "then": "Utilizable para vehículos todoterreno especializados: tractor, ATV" + }, + "7": { + "then": "Intransitable / Ningún vehículo con ruedas" } }, - "question": "¿Cual es la suavidad de este carril bici?" + "question": "¿Cuál es la suavidad de este carril bici?" }, "Cycleway:surface": { "mappings": { @@ -2184,20 +3585,32 @@ "then": "Este carril bici está pavimentado" }, "10": { - "then": "Este carril bici está hecho de gravilla" + "then": "Este carril bici está hecho de grava fina" + }, + "11": { + "then": "Este carril bici está hecho de adoquines" }, "12": { - "then": "Este carril bici está hecho de tierra natural" + "then": "Este carril bici está hecho de tierra" }, "2": { "then": "Este carril bici está hecho de asfalto" }, "3": { - "then": "Este carril bici está hecho de piedras de pavimento suaves" + "then": "Este carril bici está hecho de adoquines lisos" }, "4": { "then": "Este carril bici está hecho de hormigón" }, + "5": { + "then": "Este carril bici está hecho de adoquines (sin labrar o de sillería)" + }, + "6": { + "then": "Este carril bici está hecho de adoquines naturales sin labrar" + }, + "7": { + "then": "Este carril bici está hecho de adoquines planos y cuadrados" + }, "8": { "then": "Este carril bici está hecho de madera" }, @@ -2205,58 +3618,79 @@ "then": "Este carril bici está hecho de grava" } }, - "question": "¿De qué superficie está hecho este carril bici?", + "question": "¿De qué material está hecha la superficie del carril bici?", "render": "Este carril bici está hecho de {cycleway:surface}" }, "Is this a cyclestreet? (For a road)": { "mappings": { "0": { - "then": "Esta es una ciclocalle, y una zona 30km/h." + "then": "Esta es una calle para bicicletas, y una zona de 30 km/h" }, "1": { - "then": "Esta es una ciclocalle" + "then": "Esta es una calle para bicicletas" }, "2": { - "then": "Esta no es una ciclocalle." + "then": "Esta no es una calle para bicicletas" } }, - "question": "¿Esta es una ciclocalle?" + "question": "¿Es esta una calle para bicicletas?" }, "Maxspeed (for road)": { "mappings": { "0": { - "then": "La velocidad máxima es de 20km/h" + "then": "La velocidad máxima es de 20 km/h" }, "1": { - "then": "La velocidad máxima es de 30km/h" + "then": "La velocidad máxima es de 30 km/h" }, "2": { - "then": "La velocidad máxima es de 50km/h" + "then": "La velocidad máxima es de 50 km/h" }, "3": { - "then": "La velocidad máxima es de 70km/h" + "then": "La velocidad máxima es de 70 km/h" }, "4": { - "then": "La velocidad máxima es de 90km/h" + "then": "La velocidad máxima es de 90 km/h" } }, - "question": "¿Cual es la velocidad máxima en esta calle?", + "question": "¿Cuál es la velocidad máxima en esta calle?", "render": "La velocidad máxima en esta carretera es de {maxspeed} km/h" }, "Surface of the road": { "mappings": { + "0": { + "then": "Este carril bici no está pavimentado" + }, "1": { "then": "Este carril bici está pavimentado" }, "10": { - "then": "Este carril bici está hecho de gravilla" + "then": "Este carril bici está hecho de grava fina" + }, + "11": { + "then": "Este carril bici está hecho de adoquines" + }, + "12": { + "then": "Este carril bici está hecho de tierra" }, "2": { "then": "Este carril bici está hecho de asfalto" }, + "3": { + "then": "Este carril bici está hecho de adoquines lisos" + }, "4": { "then": "Este carril bici está hecho de hormigón" }, + "5": { + "then": "Este carril bici está hecho de adoquines (sin labrar o de sillería)" + }, + "6": { + "then": "Este carril bici está hecho de adoquines naturales sin labrar" + }, + "7": { + "then": "Este carril bici está hecho de adoquines planos y cuadrados" + }, "8": { "then": "Este carril bici está hecho de madera" }, @@ -2264,11 +3698,37 @@ "then": "Este carril bici está hecho de grava" } }, - "question": "¿De qué esta hecha la superficie de esta calle?", + "question": "¿De qué material está hecha la superficie de la calle?", "render": "Esta carretera está hecha de {surface}" }, "Surface of the street": { - "question": "¿Cual es la suavidad de esta calle?" + "mappings": { + "0": { + "then": "Utilizable para ruedas finas: patines, monopatín" + }, + "1": { + "then": "Utilizable para ruedas finas: bicicleta de carreras" + }, + "2": { + "then": "Utilizable para ruedas normales: bicicleta urbana, silla de ruedas, patinete" + }, + "3": { + "then": "Utilizable para ruedas robustas: bicicleta de trekking, coche, rickshaw" + }, + "4": { + "then": "Utilizable para vehículos con altura libre al suelo alta: vehículo todoterreno ligero" + }, + "5": { + "then": "Utilizable para vehículos todoterreno: vehículo todoterreno pesado" + }, + "6": { + "then": "Utilizable para vehículos todoterreno especializados: tractor, ATV" + }, + "7": { + "then": "Intransitable / Ningún vehículo con ruedas" + } + }, + "question": "¿Cuál es la suavidad de esta calle?" }, "cyclelan-segregation": { "mappings": { @@ -2279,15 +3739,30 @@ "then": "Este carril bici está separado por una línea continua" }, "2": { - "then": "Este carril bici está separado por una línea de aparcamiento" + "then": "Este carril bici está separado por un carril de aparcamiento" + }, + "3": { + "then": "Este carril bici está separado por un bordillo" } }, "question": "¿Cómo está separado este carril bici de la carretera?" }, "cycleway-lane-track-traffic-signs": { "mappings": { + "0": { + "then": "Carril bici obligatorio" + }, + "1": { + "then": "Carril bici obligatorio (con señal complementaria)
" + }, + "2": { + "then": "Carril bici/peatonal separado" + }, + "3": { + "then": "Carril bici/peatonal no separado" + }, "4": { - "then": "Sin señal de tráfico" + "then": "No hay señal de tráfico presente" } }, "question": "¿Qué señal de tráfico tiene este carril bici?" @@ -2301,21 +3776,89 @@ "then": "Este carril bici está separado por una línea continua" }, "2": { - "then": "Este carril bici está separado por una línea de aparcamiento" + "then": "Este carril bici está separado por un carril de aparcamiento" + }, + "3": { + "then": "Este carril bici está separado por un bordillo" } }, - "question": "¿Cómo esta separado este carril bici de la carretera?" + "question": "¿Cómo está separado este carril bici de la carretera?" }, "cycleway-traffic-signs": { - "question": "¿Qué seña de tráfico tiene este carril bici?" + "mappings": { + "0": { + "then": "Carril bici obligatorio" + }, + "1": { + "then": "Carril bici obligatorio (con señal complementaria)
" + }, + "2": { + "then": "Carril bici/peatonal separado" + }, + "3": { + "then": "Carril bici/peatonal no separado" + }, + "4": { + "then": "Carril bici obligatorio" + }, + "5": { + "then": "Carril bici obligatorio (para ciclomotores)" + }, + "6": { + "then": "Carril bici no obligatorio" + }, + "7": { + "then": "No hay señal de tráfico presente" + } + }, + "question": "¿Qué señal de tráfico tiene este carril bici?" + }, + "cycleway-traffic-signs-supplementary": { + "mappings": { + "0": { + "then": "Los ciclomotores deben usar el carril bici" + }, + "1": { + "then": "Las bicicletas de pedaleo asistido deben usar el carril bici" + }, + "2": { + "then": "Los ciclomotores y las bicicletas de pedaleo asistido deben usar el carril bici" + }, + "3": { + "then": "Los ciclomotores no están permitidos" + }, + "4": { + "then": "Las bicicletas de pedaleo asistido no están permitidas" + }, + "5": { + "then": "Los ciclomotores y las bicicletas de pedaleo asistido no están permitidos" + }, + "6": { + "then": "No hay señal de tráfico complementaria presente" + } + }, + "question": "¿Tiene la señal de tráfico D7 () una señal complementaria?" }, "cycleways_and_roads-cycleway:buffer": { - "question": "¿Cómo de ancho es el hueco entre el carril bici y la carretera?" + "question": "¿Qué ancho tiene el espacio entre el carril bici y la carretera?", + "render": "El espacio junto a este carril bici es de {cycleway:buffer} m" + }, + "incline": { + "mappings": { + "0": { + "then": "Probablemente no hay inclinación aquí" + }, + "1": { + "then": "Esta carretera tiene una pendiente" + } + }, + "question": "¿Tiene {title()} una inclinación?", + "render": "Esta carretera tiene una pendiente de {incline}" }, "is lit?": { "mappings": { "0": { - "then": "La calle está iluminada" + "then": "Esta calle está iluminada" }, "1": { "then": "Esta carretera no está iluminada" @@ -2327,7 +3870,12 @@ "then": "Esta carretera está iluminada 24/7" } }, - "question": "¿Esta calle está iluminada?" + "question": "¿Está iluminada esta calle?" + }, + "width:carriageway": { + "question": "¿Cuál es el ancho de la calzada de esta carretera (en metros)?", + "questionHint": "Esto se mide de bordillo a bordillo e incluye el ancho de los carriles de aparcamiento paralelos", + "render": "El ancho de la calzada de esta carretera es de {width:carriageway}m" } }, "title": { @@ -2350,18 +3898,24 @@ "5": { "then": "Carril bici" }, + "6": { + "then": "Carretera con carril bici junto a la carretera {name}" + }, "7": { - "then": "Vía ciclista al lado de la carretera" + "then": "Carril bici junto a la carretera" + }, + "8": { + "then": "Calle para bicicletas {name}" }, "9": { - "then": "Ciclocalle" + "then": "Calle para bicicletas" } }, "render": "Vía" } }, "defibrillator": { - "description": "Una capa que muestra desfibriladores que se pueden utilizar en caso de emergencia. Contiene desfibriladores públicos, pero también desfibriladores para los que se puede necesitar que el personal vaya a buscar el dispositivo", + "description": "Una capa que muestra desfibriladores que se pueden usar en caso de emergencia Esto incluye desfibriladores públicos, pero también desfibriladores que pueden necesitar personal para obtener el dispositivo real", "name": "Desfibriladores", "presets": { "0": { @@ -2375,22 +3929,22 @@ "defibrillator-access": { "mappings": { "0": { - "then": "Acceso libre" + "then": "Accesible al público" }, "1": { - "then": "Publicament accesible" + "then": "Accesible al público" }, "2": { - "then": "Sólo accesible a clientes" + "then": "Solo accesible para clientes" }, "3": { - "then": "No accesible al público en general (por ejemplo, sólo accesible para el personal, los propietarios, ...)" + "then": "No accesible al público en general (p. ej., solo accesible para el personal, los propietarios, …)" }, "4": { - "then": "No accesible, posiblemente solo para el uso profesional" + "then": "No accesible, posiblemente solo para uso profesional" } }, - "question": "¿Está el desfibrilador accesible libremente?", + "question": "¿Este desfibrilador es de libre acceso?", "render": "El acceso es {access}" }, "defibrillator-defibrillator": { @@ -2405,73 +3959,74 @@ "then": "Este es un desfibrilador automático normal" }, "3": { - "then": "Este es un tipo de desfibrilador especial: {defibrillator}" + "then": "Este es un tipo especial de desfibrilador: {defibrillator}" } }, - "question": "¿Este es un desfibrilador automático normal o un desfibrilador manual solo para profesionales?" + "question": "¿Es este un desfibrilador automático normal o un desfibrilador manual solo para profesionales?" }, "defibrillator-defibrillator:location": { - "question": "Da detalles de dónde se puede encontrar el desfibrilador (en el idioma local)", + "question": "Da una explicación de dónde se puede encontrar el desfibrilador (en el idioma local)", "render": "Información adicional sobre la ubicación (en el idioma local):
{defibrillator:location}" }, "defibrillator-defibrillator:location:en": { - "question": "Da detalles de dónde se puede encontrar el desfibrilador (en ingles)", - "render": "Información a mayores sobre la localización (en Inglés):
{defibrillator:location:en}" + "question": "Da una explicación de dónde se puede encontrar el desfibrilador (en inglés)", + "render": "Información adicional sobre la ubicación (en inglés):
{defibrillator:location:en}" }, "defibrillator-defibrillator:location:fr": { - "question": "Da detalles de dónde se puede encontrar el desfibrilador (en frances)", - "render": "Información a mayores sobre la localización (en Francés):
{defibrillator:location:fr}" + "question": "Da una explicación de dónde se puede encontrar el desfibrilador (en francés)", + "render": "Información adicional sobre la ubicación (en francés):
{defibrillator:location:fr}" }, "defibrillator-description": { - "question": "¿Hay alguna información útil para los usuarios que no hayas podido describir arriba? (dejar en blanco si no)", + "question": "¿Hay alguna información útil para los usuarios que no hayas podido describir anteriormente? (deja en blanco si no)", "render": "Información adicional: {description}" }, "defibrillator-email": { - "question": "¿Cual es el correo electrónico para preguntas sobre este desfibrilador?", + "question": "¿Cuál es el correo electrónico para preguntas sobre este desfibrilador?", "render": "Correo electrónico para preguntas sobre este desfibrilador: {email}" }, "defibrillator-fixme": { - "question": "¿Hay algo mal con como esta mapeado, que no pudiste arreglar aquí? (deja una nota para los expertos de OpenStreetMap)", - "render": "Información extra para expertos en OpenStreetMap: {fixme}" + "question": "¿Hay algo mal en cómo está mapeado esto, que no hayas podido arreglar aquí? (deja una nota para los expertos de OpenStreetMap)", + "render": "Información adicional para expertos de OpenStreetMap: {fixme}" }, "defibrillator-indoors": { "mappings": { "0": { - "then": "Este desfibrilador está en interior" + "then": "Este desfibrilador está ubicado en el interior" }, "1": { - "then": "Este desfibrilador está en exterior" + "then": "Este desfibrilador está ubicado en el exterior" } }, - "question": "¿Esté el desfibrilador en interior?" + "question": "¿Este desfibrilador está ubicado en el interior?" }, "defibrillator-level": { "mappings": { "0": { - "then": "Este desfibrilador se encuentra en la planta baja" + "then": "Este desfibrilador está en la planta baja" }, "1": { - "then": "Este desfibrilador se encuentra en la primera planta" + "then": "Este desfibrilador está en la primera planta" } }, - "question": "¿En qué planta se encuentra el defibrilador localizado?", - "render": "El desfibrilador se encuentra en la planta {level}" + "question": "¿En qué planta está ubicado este desfibrilador?", + "render": "Este desfibrilador está en la planta {level}" }, "defibrillator-phone": { - "question": "¿Cual es el número de teléfono para preguntas sobre este desfibrilador?" + "question": "¿Cuál es el número de teléfono para preguntas sobre este desfibrilador?", + "render": "Teléfono para preguntas sobre este desfibrilador: {phone}" }, "defibrillator-ref": { - "question": "¿Cual es el número de identificación oficial de este dispositivo? (si está visible en el dispositivo)", + "question": "¿Cuál es el número de identificación oficial del dispositivo? (si es visible en el dispositivo)", "render": "Número de identificación oficial del dispositivo: {ref}" }, "defibrillator-survey:date": { "mappings": { "0": { - "then": "¡Comprobado hoy!" + "then": "¡Revisado hoy!" } }, - "question": "¿Cuándo se sondeó por última vez este desfibrilador?", - "render": "Este desfibrilador se sondeó por última vez el {survey:date}" + "question": "¿Cuándo se revisó por última vez este desfibrilador?", + "render": "Este desfibrilador fue revisado por última vez el {survey:date}" }, "opening_hours_24_7": { "override": { @@ -2484,10 +4039,94 @@ } }, "dentist": { - "name": "Dentista" + "description": "Esta capa muestra consultorios dentales", + "name": "Dentista", + "pointRendering": { + "0": { + "label": { + "mappings": { + "0": { + "then": "{name}" + } + } + } + } + }, + "presets": { + "0": { + "title": "un consultorio dental" + } + }, + "tagRenderings": { + "name": { + "question": "¿Cuál es el nombre de este dentista?", + "render": "Este dentista se llama {name}" + } + }, + "title": { + "render": "Consultorio Dental {name}" + } + }, + "direction": { + "description": "Esta capa visualiza las direcciones", + "name": "Visualización de direcciones" + }, + "disaster_response": { + "description": "Esta capa contiene organizaciones que tienen como objetivo principal ayudar a la población civil durante y después de desastres naturales o antropogénicos trabajando en el área afectada", + "name": "Organizaciones de respuesta a desastres", + "presets": { + "0": { + "title": "una organización de respuesta a desastres" + } + }, + "tagRenderings": { + "disaster_response_name": { + "question": "¿Cuál es el nombre de esta organización?", + "render": "Esta organización se llama {name}" + } + }, + "title": { + "render": "Organización de respuesta a desastres" + } + }, + "doctors": { + "description": "Esta capa muestra consultorios médicos", + "name": "Médicos", + "presets": { + "0": { + "title": "un consultorio médico" + } + }, + "tagRenderings": { + "name": { + "question": "¿Cuál es el nombre de este consultorio médico?", + "render": "Este consultorio médico se llama {name}" + }, + "specialty": { + "mappings": { + "0": { + "then": "Este es un médico de cabecera" + }, + "1": { + "then": "Este es un ginecólogo" + }, + "2": { + "then": "Este es un psiquiatra" + }, + "3": { + "then": "Este es un pediatra" + } + }, + "question": "¿En qué se especializa este médico?", + "render": "Este médico está especializado en {healthcare:speciality}" + } + }, + "title": { + "render": "Consultorio Médico {name}" + } }, "dogpark": { - "name": "parques de perros", + "name": "Parques para perros", "presets": { "0": { "description": "Un lugar para perros, donde pueden correr sin correa", @@ -2496,52 +4135,61 @@ }, "tagRenderings": { "Name": { - "question": "¿Cual es el nombre de este parque para perros?", + "question": "¿Cuál es el nombre de este parque para perros?", "render": "El nombre de este parque para perros es {name}" }, "dogarea": { - "render": "Este parque para perros tiene {_surface:ha} ha" + "render": "Este parque para perros tiene {_surface:ha} ha de superficie" }, "dogpark-fenced": { "mappings": { "0": { - "then": "Este parque para perros está cerrado todo alrededor" + "then": "Este parque para perros está vallado por completo" }, "1": { - "then": "Este parque para perros no está cerrado todo alrededor" + "then": "Este parque para perros no está vallado por completo" } }, - "question": "¿Este parque para perros está vallado?" + "question": "¿Está vallado este parque para perros?" }, "smalldogs": { "mappings": { "0": { - "then": "Tiene un espacio separado para cachorros y perros pequeños" + "then": "Tiene un área separada para cachorros y perros pequeños" }, "1": { - "then": "No tiene un espacio separado para cachorros y perros pequeños" + "then": "No tiene un área separada para cachorros y perros pequeños" } }, - "question": "¿Este parque para perros tiene una zona separada vallada para perros pequeños y cachorros?" + "question": "¿Tiene este parque canino un área separada y cercada para perros pequeños y cachorros?" } }, "title": { - "render": "parque para perros" + "render": "parque canino" } }, "drinking_water": { "deletion": { "nonDeleteMappings": { "0": { - "then": "Esta es una fuente decorativa con agua no potable" + "then": "Esta es una fuente decorativa, cuyo agua no es potable para humanos" }, "1": { - "then": "Este es un grifo de agua o una bomba de agua con agua no potable.
Ejemplos son grifos con agua de lluvia o agua del grifo para plantas cercanas
" + "then": "Esta es una toma de agua o bomba de agua con agua no potable.
Ejemplos son tomas de agua con agua de lluvia o agua para regar plantas cercanas
" + }, + "2": { + "then": "Esta es una bomba de agua histórica y manual donde no se puede encontrar agua potable" } } }, "description": "Una capa que muestra fuentes de agua potable", "name": "Agua potable", + "presets": { + "0": { + "description": "Típicamente una fuente de agua potable, toma de agua, pozo de agua o manantial natural", + "title": "una fuente de agua potable" + } + }, "tagRenderings": { "Bottle refill": { "mappings": { @@ -2549,28 +4197,86 @@ "then": "Es fácil rellenar botellas de agua" }, "1": { - "then": "Las botellas de agua pueden no caber" + "then": "Es posible que las botellas no quepan" } }, - "question": "¿Cómo de fácil es rellenar botellas de agua?" + "question": "¿Qué tan fácil es rellenar botellas de agua?" }, "Still in use?": { "mappings": { "0": { - "then": "Esta agua potable funciona" + "then": "Esta fuente de agua potable funciona" }, "1": { - "then": "Esta agua potable está rota" + "then": "Esta fuente de agua potable está rota" }, "2": { - "then": "Esta agua potable está cerrada" + "then": "Esta fuente de agua potable está cerrada" + }, + "3": { + "then": "Esta fuente de agua potable está cerrada permanentemente" } }, - "question": "¿Todavía esta operativo este punto de agua potable?", - "render": "El estado operacional es {operational_status}" + "question": "¿Sigue funcionando este punto de agua potable?", + "render": "El estado operativo es {operational_status}" + }, + "bench-artwork": { + "mappings": { + "0": { + "then": "Este punto de agua potable tiene una obra de arte integrada" + }, + "1": { + "then": "Este punto de agua potable no tiene una obra de arte integrada" + }, + "2": { + "then": "Este punto de agua potable probablemente no tiene una obra de arte integrada" + } + }, + "question": "¿Tiene esta fuente de agua potable un elemento artístico?", + "questionHint": "Por ejemplo, tiene una estatua integrada u otra obra creativa no trivial" + }, + "fee": { + "mappings": { + "0": { + "then": "Libre de uso" + }, + "1": { + "then": "Hay que pagar para usar este punto de agua potable" + } + }, + "question": "¿Es de libre uso este punto de agua potable?" + }, + "opening_hours_24_7": { + "override": { + "+mappings": { + "0": { + "then": "Esta fuente de agua potable está cerrada esta temporada, por lo que no se muestran los horarios de apertura." + } + }, + "questionHint": "Estos son los horarios de apertura si la fuente de agua potable está operativa." + } }, "render-closest-drinking-water": { "render": "Hay otra fuente de agua potable a {_closest_other_drinking_water_distance} metros" + }, + "seasonal": { + "override": { + "question": "¿Este punto de agua potable está disponible durante todo el año?" + } + }, + "type": { + "mappings": { + "0": { + "then": "Esta es una fuente de chorro. Un chorro de agua para beber se envía hacia arriba, típicamente controlado por un botón." + }, + "1": { + "then": "Este es un punto de recarga de botellas donde el agua se envía hacia abajo, normalmente controlado por un botón o un sensor de movimiento. Beber directamente del flujo podría ser muy difícil o imposible." + }, + "2": { + "then": "Esta es una toma de agua. El agua fluye hacia abajo y el chorro está controlado por una válvula o un botón." + } + }, + "question": "¿Qué tipo de punto de agua potable es este?" } }, "title": { @@ -2578,182 +4284,315 @@ } }, "dumpstations": { - "description": "Vertederos Sanitarios", - "name": "Estaciones sanitarias", + "description": "Estaciones de vaciado sanitario", + "name": "Estaciones de vaciado sanitario", "presets": { "0": { - "description": "Añadir un nuevo vertedero sanitario. Se trata de un lugar donde los autocaravanistas pueden verter las aguas residuales o los residuos químicos de los aseos. A menudo también hay agua potable y electricidad.", - "title": "un vertedero sanitario" + "description": "Agrega una nueva estación de vaciado sanitario. Este es un lugar donde los autocaravanistas pueden vaciar aguas grises o residuos de inodoros químicos. A menudo también hay agua potable y electricidad.", + "title": "una estación de vaciado sanitario" } }, "tagRenderings": { "dumpstations-access": { "mappings": { "0": { - "then": "Necesitas una clave/código de red para usarlo" + "then": "Necesitas una clave/código de red para usar esto" }, "1": { - "then": "Necesitas ser cliente del camping para usar este lugar" + "then": "Debes ser cliente del camping/área de acampada para usar este lugar" }, "2": { - "then": "Cualquiera puede utilizar este vertedero" + "then": "Cualquiera puede usar esta estación de vaciado" }, "3": { - "then": "Cualquiera puede usar este vertedero" + "then": "Cualquiera puede usar esta estación de vaciado" } }, - "question": "¿Quien puede usar el vertedero?" + "question": "¿Quién puede usar esta estación de vaciado?" }, "dumpstations-charge": { - "question": "¿Cuánto cobra este lugar?", - "render": "Este lugar cobra {charge}" + "question": "¿Cuánto cuesta este lugar?", + "render": "Este lugar cuesta {charge}" }, "dumpstations-chemical-waste": { "mappings": { "0": { - "then": "Puede eliminar aquí los residuos químicos de los aseos" + "then": "Aquí puedes deshacerte de residuos de inodoros químicos" }, "1": { - "then": "Aquí no se pueden tirar los residuos químicos de los aseos" + "then": "Aquí no puedes deshacerte de residuos de inodoros químicos" } }, - "question": "¿Se pueden tirar aquí los residuos químicos de los aseos?" + "question": "¿Puedes deshacerte de residuos de inodoros químicos aquí?" }, "dumpstations-fee": { "mappings": { "0": { - "then": "Tienes que pagar por el uso" + "then": "Hay que pagar por el uso" }, "1": { - "then": "Se puede utilizar gratis" + "then": "Se puede usar gratis" } }, - "question": "¿Este lugar cobra una tasa?" + "question": "¿Este lugar cobra una tarifa?" }, "dumpstations-grey-water": { "mappings": { "0": { - "then": "Las aguas grises pueden eliminarse aquí" + "then": "Aquí puedes deshacerte de aguas grises" }, "1": { - "then": "No se pueden eliminar las aguas grises aquí" + "then": "Aquí no puedes deshacerte de aguas grises" } }, - "question": "¿Puede desechar las aguas grises aquí?" + "question": "¿Puedes deshacerte de aguas grises aquí?" }, "dumpstations-network": { - "question": "¿A qué red forma parte este lugar? (saltar si a ninguna)", - "render": "Esta estación forma parte de la red {network}" + "question": "¿De qué red forma parte este lugar? (omitir si no hay ninguna)", + "render": "Esta estación es parte de la red {network}" }, "dumpstations-waterpoint": { "mappings": { "0": { - "then": "Este lugar tiene una toma de agua" + "then": "Este lugar tiene un punto de agua" }, "1": { - "then": "Este lugar no tiene toma de agua" + "then": "Este lugar no tiene un punto de agua" } }, - "question": "¿Este lugar tiene toma de agua?" + "question": "¿Este lugar tiene un punto de agua?" } }, "title": { "mappings": { "0": { - "then": "Vertedero" + "then": "Estación de vaciado" } }, - "render": "Vertedero {name}" + "render": "Estación de vaciado {name}" + } + }, + "elevator": { + "description": "Esta capa muestra ascensores y solicita el estado operativo y las dimensiones del ascensor. Útil para información de accesibilidad para sillas de ruedas", + "name": "Ascensor", + "presets": { + "0": { + "title": "un ascensor" + } + }, + "tagRenderings": { + "door-width": { + "question": "¿Cuál es el ancho de la entrada de este ascensor?", + "render": "Las puertas de este ascensor tienen un ancho de {canonical(door:width)}" + }, + "elevator-depth": { + "question": "¿Cuál es la profundidad de este ascensor?", + "render": "Este ascensor tiene una profundidad de {canonical(length)}" + }, + "elevator-diameter": { + "question": "¿Cuál es el diámetro de este ascensor?", + "render": "Este ascensor tiene un diámetro de {canonical(diameter)}" + }, + "elevator-shape": { + "mappings": { + "0": { + "then": "Este ascensor tiene forma rectangular" + }, + "1": { + "then": "Este ascensor tiene forma circular" + } + }, + "question": "¿Qué forma tiene este ascensor?" + }, + "elevator-width": { + "question": "¿Cuál es el ancho de este ascensor?", + "render": "Este ascensor tiene un ancho de {canonical(width)}" + }, + "operational_status": { + "mappings": { + "0": { + "then": "Este ascensor está roto" + }, + "1": { + "then": "Este ascensor está cerrado ej. porque se están realizando obras de renovación" + }, + "2": { + "then": "Este ascensor funciona" + }, + "3": { + "then": "Este ascensor funciona" + } + }, + "question": "¿Funciona este ascensor?" + }, + "speech_output": { + "render": { + "special": { + "question": "¿En qué idiomas tiene salida de voz este ascensor?", + "render_list_item": "Este ascensor tiene salida de voz en {language()}", + "render_single_language": "Este ascensor tiene salida de voz en {language()}" + } + } + }, + "speech_output_available": { + "mappings": { + "0": { + "then": "Este ascensor tiene salida de voz" + }, + "1": { + "then": "Este ascensor no tiene salida de voz" + } + }, + "question": "¿Tiene este ascensor salida de voz?", + "questionHint": "Ej. anuncia la planta actual" + }, + "tactile_writing_available": { + "mappings": { + "0": { + "then": "Este ascensor tiene escritura táctil en Braille" + }, + "1": { + "then": "Este ascensor no tiene escritura táctil" + } + }, + "question": "¿Tiene este ascensor escritura táctil?" + }, + "tactile_writing_language": { + "render": { + "special": { + "question": "¿En qué idiomas tiene escritura táctil (Braille) este ascensor?", + "render_list_item": "Este ascensor tiene escritura táctil en {language()}", + "render_single_language": "Este ascensor tiene escritura táctil en {language()}" + } + } + } + }, + "title": { + "render": "Ascensor" } }, "elongated_coin": { - "description": "Capa que muestra prensas de centavos.", - "name": "Prensas de centavo", + "description": "Capa que muestra prensas de monedas.", + "name": "Prensa de Monedas", "presets": { "0": { - "title": "una prensa de centavo" + "title": "una prensa de monedas" } }, "tagRenderings": { "charge": { "freeform": { - "placeholder": "Costo (por ejemplo, 0.50 euros)" + "placeholder": "Costo (ej. 0,50 EUR)" }, "mappings": { "0": { - "then": "Cuesta 1 euro prensar un centavo." + "then": "Cuesta 1 euro prensar una moneda." }, "1": { - "then": "Cuesta 2 euros prensa un centavo." + "then": "Cuesta 2 euros prensar una moneda." + }, + "2": { + "then": "Cuesta 2 francos suizos prensar una moneda." + }, + "3": { + "then": "Cuesta 1 franco suizo prensar una moneda." } }, - "question": "¿Cuánto cuesta prensar un centavo?", - "render": "Cuesta {charge} prensar un centavo." + "question": "¿Cuánto cuesta prensar una moneda?", + "render": "Cuesta {charge} prensar una moneda." }, "coin": { "freeform": { - "placeholder": "Tipo de moneda (por ejemplo, 10 centavos)" + "placeholder": "Tipo de moneda (ej. 10 céntimos)" }, "mappings": { "0": { - "then": "Esta prensa de centavo utiliza una moneda de 2 centavos para prensar." + "then": "Esta prensa de monedas usa una moneda de 2 céntimos para prensar." }, "1": { - "then": "Esta prensa de centavo utiliza una moneda de 5 centavos para prensar." + "then": "Esta prensa de monedas usa una moneda de 5 céntimos para prensar." }, "2": { - "then": "Esta prensa de centavo utiliza una moneda de 10 centavos para prensar." + "then": "Esta prensa de monedas usa una moneda de 10 céntimos para prensar." }, "3": { - "then": "Esta prensa de centavo utiliza una moneda de 25 centavos para prensar." + "then": "Esta prensa de monedas usa una moneda de 25 céntimos para prensar." }, "4": { - "then": "Esta prensa de centavo utiliza una moneda de 50 centavos para prensar." + "then": "Esta prensa de monedas usa una moneda de 50 céntimos para prensar." + }, + "5": { + "then": "Esta prensa de monedas usa una moneda de 10 céntimos para prensar." + }, + "6": { + "then": "Esta prensa de monedas usa una moneda de 20 céntimos para prensar." } }, - "question": "Qué moneda se utiliza para prensar?", - "render": "Esta prensa de centavo utiliza una moneda {coin:type} para prensar." + "question": "¿Qué moneda se usa para prensar?", + "render": "Esta prensa de monedas usa una moneda de {coin:type} para prensar." }, "designs": { "freeform": { - "placeholder": "Número de diseños (por ejemplo, 5)" + "placeholder": "Número de diseños (ej. 5)" }, "mappings": { "0": { - "then": "Esta prensa tiene un diseño disponible." + "then": "Esta prensa de monedas tiene un diseño disponible." }, "1": { - "then": "Esta prensa tiene dos diseños disponibles." + "then": "Esta prensa de monedas tiene dos diseños disponibles." }, "2": { - "then": "Esta prensa tiene tres diseños disponibles." + "then": "Esta prensa de monedas tiene tres diseños disponibles." }, "3": { - "then": "Esta prensa tiene cuatro diseños disponibles." + "then": "Esta prensa de monedas tiene cuatro diseños disponibles." } }, - "question": "Cuántos diseños hay disponibles?", - "render": "Esta prensa tiene {coin:design_count} diseños disponibles." + "question": "¿Cuántos diseños hay disponibles?", + "render": "Esta prensa de monedas tiene {coin:design_count} diseños disponibles." + }, + "fee": { + "mappings": { + "0": { + "then": "Cuesta dinero prensar una moneda." + }, + "1": { + "then": "Cuesta dinero prensar una moneda." + }, + "2": { + "then": "Es gratis prensar una moneda." + } + }, + "question": "¿Cuesta dinero prensar una moneda?" }, "indoor": { "mappings": { "0": { - "then": "Esta prensa está ubicada en interior." + "then": "Esta prensa de monedas está ubicada en interiores." }, "1": { - "then": "Esta prensa está ubicada al aire libre." + "then": "Esta prensa de monedas está ubicada en exteriores." } }, - "question": "La prensa de centavo esta al interior?" + "question": "¿Está la prensa de monedas en interiores?" } }, "title": { - "render": "Prensa de centavo" + "render": "Prensa de Monedas" } }, "entrance": { - "description": "Una capa que muestra capas y ofrece la posibilidad de sondear algunos datos avanzados que son importantes para, por ejemplo, usuarios de sillas de ruedas (pero también incluye ciclistas, gente que quiere repartir, ...)", + "description": "Una capa que muestra entradas y ofrece capacidades para encuestar algunos datos avanzados que son importantes para, por ejemplo, usuarios de sillas de ruedas (pero también usuarios de bicicletas, personas que desean realizar entregas, etc.)", "name": "Entrada", + "presets": { + "0": { + "title": "una entrada" + }, + "1": { + "title": "una puerta interior" + } + }, "tagRenderings": { "Door_type": { "mappings": { @@ -2761,28 +4600,31 @@ "then": "Se desconoce el tipo de puerta" }, "1": { - "then": "Una puerta clásica, con bisagras soportadas por uniones" + "then": "Una puerta clásica con bisagras soportada por juntas" }, "2": { - "then": "Una puerta giratoria que cuelga de un eje central y que rota dentro de una carcasa cilíndrica" + "then": "Una puerta giratoria que cuelga de un eje central, girando dentro de un recinto cilíndrico" }, "3": { - "then": "Una puerta corredera donde la puerta se desliza hacia un lado, generalmente paralela a una pared" + "then": "Una puerta corredera donde la puerta se desliza hacia los lados, típicamente paralela a una pared" + }, + "4": { + "then": "Una puerta que se enrolla desde arriba, que se ve típicamente en los garajes" }, "5": { - "then": "Esta es una entrada sin una puerta física" + "then": "Esta es una entrada sin puerta física" } }, - "question": "¿Cual es el tipo de esta puerta?", - "questionHint": "En la siguiente pregunta se pregunta si la puerta está automatizada o no" + "question": "¿Cuál es el tipo de esta puerta?", + "questionHint": "Si la puerta es automática o no se pregunta en la siguiente pregunta" }, "Entrance type": { "mappings": { "0": { - "then": "No se conoce un tipo de entrada específico" + "then": "No se conoce ningún tipo de entrada específico" }, "1": { - "then": "Esta es una puerta interior, que separa una habitación o pasillo dentro de un único edificio" + "then": "Esta es una puerta interior, que separa una habitación o un pasillo dentro de un solo edificio" }, "2": { "then": "Esta es la entrada principal" @@ -2791,10 +4633,10 @@ "then": "Esta es una entrada secundaria" }, "4": { - "then": "Esta es una entrada de servicio - normalmente solo la utilizan empleados, repartidores, …" + "then": "Esta es una entrada de servicio, normalmente solo utilizada para empleados, entregas, etc." }, "5": { - "then": "Esta es una salida por la cual no se puede entrar" + "then": "Esta es una salida por la que no se puede entrar" }, "6": { "then": "Esta es una entrada por la que solo se puede entrar (pero no salir)" @@ -2803,7 +4645,7 @@ "then": "Esta es una salida de emergencia" }, "8": { - "then": "Esta es la entrada a una vivienda privada" + "then": "Esta es la entrada a una casa particular" } }, "question": "¿Qué tipo de entrada es esta?" @@ -2814,46 +4656,90 @@ "then": "Esta es una puerta automática" }, "1": { - "then": "Esta puerta no está automatizada" + "then": "Esta puerta no es automática" }, "2": { - "then": "Esta puerta se abre automáticamente cuando se detecta movimiento" + "then": "Esta puerta se abrirá automáticamente cuando se detecte movimiento" }, "3": { - "then": "Esta puerta se abre automáticamente cuando se activa un sensor en el suelo" + "then": "Esta puerta se abrirá automáticamente cuando se active un sensor en el suelo" }, "4": { - "then": "Esta puerta se abre automáticamente cuando se pulsa un botón" + "then": "Esta puerta se abrirá automáticamente cuando se presione un botón" }, "5": { - "then": "Esta puerta gira automáticamente todo el rato, pero tiene un botón para ralentizarla, por ejemplo, para usuarios de sillas de ruedas" + "then": "Esta puerta gira automáticamente todo el tiempo, pero tiene un botón para reducir la velocidad, por ejemplo, para usuarios de sillas de ruedas" }, "6": { - "then": "Esta puerta gira automáticamente todo el rato" + "then": "Esta puerta gira automáticamente todo el tiempo" }, "7": { - "then": "Esta puerta la abre el personal cuando se pide pulsando un botón" + "then": "Esta puerta será abierta por el personal cuando lo solicite pulsando un botón" }, "8": { - "then": "Esta puerta la abrirá el personal cuando se pida" + "then": "Esta puerta será abierta por el personal cuando lo solicite" } } }, + "kerb-height": { + "freeform": { + "placeholder": "Altura del bordillo de la puerta" + }, + "mappings": { + "0": { + "then": "Esta puerta no tiene bordillo" + } + }, + "question": "¿Cuál es la altura de este bordillo?", + "render": "La altura del bordillo de esta puerta es {kerb:height}" + }, "width": { - "question": "¿Cual es el ancho de esta puerta/entrada?", - "render": "Esta puerta tiene una ancho de {canonical(width)}" + "question": "¿Cuál es el ancho de esta puerta/entrada?", + "render": "Esta puerta tiene un ancho de {canonical(width)}" } }, "title": { "render": "Entrada" } }, + "etymology": { + "description": "Todos los objetos que tienen una etimología conocida", + "name": "Tiene etimología", + "tagRenderings": { + "etymology_multi_apply": { + "render": "{multi_apply(_same_name_ids, name:etymology:wikidata;name:etymology, Aplicando datos automáticamente en todos los segmentos con el mismo nombre, true)}" + }, + "simple etymology": { + "mappings": { + "0": { + "then": "El origen de este nombre es desconocido en toda la literatura" + } + }, + "question": "¿A qué se debe el nombre de este objeto?", + "questionHint": "Esto podría estar escrito en el letrero del nombre de la calle", + "render": "Nombrado en honor a {name:etymology}" + }, + "street-name-sign-image": { + "render": "{image_carousel(image:streetsign)}
{image_upload(image:streetsign, Agregar imagen de un letrero de nombre de calle)}" + }, + "wikipedia": { + "render": "Existe un artículo de Wikipedia sobre esta calle:
{wikipedia():max-height:25rem}" + }, + "wikipedia-etymology": { + "question": "¿Cuál es el elemento de Wikidata en honor a el cual se nombra este objeto?", + "render": "

Artículo de Wikipedia del que recibe el nombre

{wikipedia(name:etymology:wikidata):max-height:20rem}" + }, + "zoeken op inventaris onroerend erfgoed": { + "render": "Buscar en Inventaris Onroerend Erfgoed" + } + } + }, "extinguisher": { - "description": "Capa del mapa que muestra extintores.", + "description": "Capa del mapa para mostrar extintores.", "name": "Mapa de extintores", "presets": { "0": { - "description": "Un extintor es un dispositivo pequeño y portátil utilizado para parar un fuego", + "description": "Un extintor es un dispositivo pequeño y portátil que se utiliza para detener un incendio", "title": "un extintor" } }, @@ -2861,14 +4747,14 @@ "extinguisher-location": { "mappings": { "0": { - "then": "Se encuentra en el interior." + "then": "Encontrado en interiores." }, "1": { - "then": "Se encuentra en el exterior." + "then": "Encontrado en exteriores." } }, - "question": "¿Dónde se encuentra?", - "render": "Localización: {location}" + "question": "¿Dónde está colocado?", + "render": "Ubicación: {location}" } }, "title": { @@ -2880,7 +4766,7 @@ "0": { "options": { "0": { - "question": "Abierto" + "question": "Abierto ahora" } } }, @@ -2891,54 +4777,406 @@ } } }, + "10": { + "options": { + "0": { + "question": "Sin preferencia por los perros" + }, + "1": { + "question": "Se permiten perros" + }, + "2": { + "question": "No se permiten perros" + } + } + }, + "11": { + "options": { + "0": { + "question": "Ofrece internet" + } + } + }, + "12": { + "options": { + "0": { + "question": "Ofrece electricidad" + } + } + }, + "13": { + "options": { + "0": { + "question": "Tiene una oferta sin azúcar" + } + } + }, + "14": { + "options": { + "0": { + "question": "Tiene una oferta sin gluten" + } + } + }, + "15": { + "options": { + "0": { + "question": "Tiene una oferta sin lactosa" + } + } + }, "2": { "options": { "0": { - "question": "Acepta el pago por tarjeta" + "question": "Acepta tarjetas de pago" + } + } + }, + "3": { + "options": { + "0": { + "question": "Acepta tarjetas de débito" + } + } + }, + "4": { + "options": { + "0": { + "question": "Acepta tarjetas de crédito" + } + } + }, + "5": { + "options": { + "0": { + "question": "Con y sin imágenes" + }, + "1": { + "question": "Tiene al menos una imagen" + }, + "2": { + "question": "Probablemente no tiene imagen" + } + } + }, + "6": { + "options": { + "0": { + "question": "Con pavimento táctil" + } + } + }, + "7": { + "options": { + "0": { + "question": "Con o sin pavimento táctil" + }, + "1": { + "question": "Con pavimento táctil" + }, + "2": { + "question": "Sin pavimento táctil" + }, + "3": { + "question": "Sin información sobre pavimento táctil" + } + } + }, + "8": { + "options": { + "0": { + "question": "Tiene opciones orgánicas" + } + } + }, + "9": { + "options": { + "0": { + "question": "De uso gratuito" } } } } }, "fire_station": { - "description": "Capa del mapa que muestra parques de bomberos.", - "name": "Mapa de parques de bomberos", + "description": "Capa del mapa para mostrar estaciones de bomberos.", + "name": "Mapa de estaciones de bomberos", "presets": { "0": { - "description": "Un parque de bomberos es donde los bomberos y los camiones de incendios se encuentran cuando no están en uso.", - "title": "un parque de bomberos" + "description": "Una estación de bomberos es un lugar donde se ubican los camiones de bomberos y los bomberos cuando no están en operación.", + "title": "una estación de bomberos" } }, "tagRenderings": { "station-agency": { - "question": "¿Que agencia opera este parque?", - "render": "Este parque lo opera {operator}." + "mappings": { + "0": { + "then": "Oficina de Protección contra Incendios" + } + }, + "question": "¿Qué agencia opera esta estación?", + "render": "Esta estación está operada por {operator}." }, "station-name": { - "question": "¿Cual es el nombre de este parque de bomberos?", - "render": "Este parque de bomberos se llama {name}." + "question": "¿Cuál es el nombre de esta estación de bomberos?", + "render": "Esta estación se llama {name}." }, "station-operator": { "mappings": { "0": { - "then": "Este parque de bomberos lo opera el gobierno." + "then": "La estación está operada por el gobierno." + }, + "1": { + "then": "La estación está operada por una organización comunitaria o informal." + }, + "2": { + "then": "La estación está operada por un grupo formal de voluntarios." + }, + "3": { + "then": "La estación está operada de forma privada." } + }, + "question": "¿Cómo se clasifica el operador de la estación?", + "render": "El operador es una entidad {operator:type}." + }, + "station-place": { + "question": "¿Dónde se encuentra la estación? (ej. nombre del barrio, aldea o ciudad)", + "render": "Esta estación se encuentra en {addr:place}." + }, + "station-street": { + "question": " ¿Cuál es el nombre de la calle donde se encuentra la estación?", + "render": "Esta estación se encuentra en una carretera llamada {addr:street}." + } + }, + "title": { + "render": "Estación de Bomberos" + } + }, + "firepit": { + "description": "Un lugar al aire libre para hacer fuego, normalmente abierto al público.", + "name": "Hoguera", + "presets": { + "0": { + "description": "Un lugar al aire libre para hacer fuego, normalmente abierto al público.", + "title": "Hoguera" + } + }, + "tagRenderings": { + "access": { + "mappings": { + "0": { + "then": "Público" + }, + "1": { + "then": "Sin acceso" + }, + "2": { + "then": "Privado" + }, + "3": { + "then": "Acceso hasta que se revoque" + }, + "4": { + "then": "Acceso solo para clientes" + }, + "5": { + "then": "Acceso solo para autorizados" + } + }, + "question": "¿Cuál es el acceso permitido?" + }, + "seasonal": { + "override": { + "question": "¿Está la hoguera disponible todo el año?" } } }, "title": { - "render": "Parque de bomberos" + "render": "Hoguera" + } + }, + "fitness_centre": { + "description": "Capa que muestra centros de fitness", + "name": "Centros de Fitness", + "presets": { + "0": { + "title": "un centro de fitness" + } + }, + "tagRenderings": { + "name": { + "freeform": { + "placeholder": "Nombre del centro de fitness" + }, + "mappings": { + "0": { + "then": "Este centro de fitness no tiene nombre" + } + }, + "question": "¿Cuál es el nombre de este centro de fitness?", + "render": "Este centro de fitness se llama {name}" + } + }, + "title": { + "render": "Centro de Fitness" + } + }, + "fitness_station": { + "description": "Encuentra una estación de fitness cerca de ti y agrega las que faltan.", + "name": "Estaciones de Fitness", + "presets": { + "0": { + "title": "una estación de fitness" + } + }, + "tagRenderings": { + "name": { + "freeform": { + "placeholder": "Nombre de la estación de fitness" + }, + "mappings": { + "0": { + "then": "Esta estación de fitness no tiene nombre" + } + }, + "question": "¿Cuál es el nombre de esta estación de fitness?", + "render": "Esta estación de fitness se llama {name}" + }, + "operator": { + "freeform": { + "placeholder": "Operador de la estación de fitness" + }, + "question": "¿Quién mantiene esta estación de fitness?", + "render": "La estación de fitness es mantenida por {operator}." + }, + "type": { + "mappings": { + "0": { + "then": "Esta estación de fitness tiene una barra horizontal, lo suficientemente alta para hacer dominadas." + }, + "1": { + "then": "Esta estación de fitness tiene un cartel con instrucciones para un ejercicio específico." + }, + "10": { + "then": "Esta estación de fitness tiene piedras para escalar." + }, + "11": { + "then": "Esta estación de fitness tiene conos para realizar saltos de rana." + }, + "12": { + "then": "Esta estación de fitness tiene vigas para saltar." + }, + "13": { + "then": "Esta estación de fitness tiene vallas para cruzar." + }, + "14": { + "then": "Esta estación de fitness tiene una pared para escalar." + }, + "15": { + "then": "Esta estación de fitness tiene una viga de equilibrio." + }, + "16": { + "then": "Esta estación de fitness tiene un tronco con un asa en el extremo para levantar." + }, + "17": { + "then": "Esta estación de fitness tiene una silla con solo soportes para los codos y una parte trasera (sin asiento), para realizar elevaciones de piernas." + }, + "18": { + "then": "Esta estación de fitness tiene una caja que se puede usar para saltar." + }, + "19": { + "then": "Esta estación de fitness tiene cuerdas de batalla." + }, + "2": { + "then": "Esta estación de fitness tiene un dispositivo para abdominales." + }, + "20": { + "then": "Esta estación de fitness tiene una bicicleta estática." + }, + "21": { + "then": "Esta estación de fitness tiene una elíptica." + }, + "22": { + "then": "Esta estación de fitness tiene un caminador de aire." + }, + "23": { + "then": "Esta estación de fitness tiene una máquina de remo." + }, + "24": { + "then": "Esta estación de fitness tiene una slackline." + }, + "3": { + "then": "Esta estación de fitness tiene un dispositivo para flexiones. Normalmente consiste en una o más barras horizontales bajas." + }, + "4": { + "then": "Esta estación de fitness tiene barras para estirar." + }, + "5": { + "then": "Esta estación de fitness tiene una estación para realizar hiperextensiones." + }, + "6": { + "then": "Esta estación de fitness tiene anillas para ejercicios de gimnasia." + }, + "7": { + "then": "Esta estación de fitness tiene una escalera horizontal, también conocida como barras de mono." + }, + "8": { + "then": "Esta estación de fitness tiene barras de pared para escalar." + }, + "9": { + "then": "Esta estación de fitness tiene postes para realizar ejercicios de slalom." + } + }, + "question": "¿Qué tipo de equipo tiene esta estación de fitness?" + } + }, + "title": { + "mappings": { + "0": { + "then": "Estación de Fitness {name}" + } + }, + "render": "Estación de Fitness" + } + }, + "fixme": { + "description": "Objetos OSM que probablemente necesitan ser arreglados, basándose en una etiqueta FIXME.", + "name": "Objetos OSM con etiquetas FIXME", + "tagRenderings": { + "fixme": { + "mappings": { + "0": { + "then": "Este problema ha sido resuelto" + } + }, + "question": "¿Qué está mal con este elemento?", + "render": "Texto Fixme: {fixme}" + }, + "note": { + "render": "Texto Nota: {note}" + } + }, + "title": { + "render": "Objeto OSM con etiqueta FIXME" } }, "food": { "deletion": { "extraDeleteReasons": { "0": { - "explanation": "{title()} ha cerrado permanentemente" + "explanation": "{title()} ha cerrado definitivamente" + } + }, + "nonDeleteMappings": { + "0": { + "then": "Esto es en realidad un pub" + }, + "1": { + "then": "Esto es en realidad una cafetería" } } }, - "description": "Una capa mostrando restaurantes y locales de comida rápida (con un renderizado especial para friterías)", + "description": "Una capa que muestra restaurantes y establecimientos de comida rápida (con una representación especial para freidurías)", "filter": { "1": { "options": { @@ -2951,6 +5189,12 @@ "options": { "0": { "question": "Restaurantes y negocios de comida rápida" + }, + "1": { + "question": "Solo negocios de comida rápida" + }, + "2": { + "question": "Solo restaurantes" } } }, @@ -2971,7 +5215,7 @@ "5": { "options": { "0": { - "question": "Tiene menú halah" + "question": "Tiene menú halal" } } } @@ -2979,11 +5223,16 @@ "name": "Restaurantes y comida rápida", "presets": { "0": { - "description": "Un lugar de comidas formal, con mesas y sillas y que vende comidas completas servidas por camareros", + "description": "Un lugar formal para comer con instalaciones para sentarse y que vende comidas completas servidas por camareros", "title": "un restaurante" }, "1": { - "description": "Un negocio de comida centrado en servicio rápido solo en mostrador y comida para llevar" + "description": "Un negocio de comida que se centra en el servicio rápido solo en el mostrador y comida para llevar", + "title": "un establecimiento de comida rápida" + }, + "2": { + "description": "Un negocio de comida rápida centrado en papas fritas", + "title": "una freiduría" } }, "tagRenderings": { @@ -2992,50 +5241,71 @@ "0": { "then": "Pizzería" }, + "1": { + "then": "Fritura" + }, "10": { - "then": "Aquí se sirven platos Chinos" + "then": "Chino" }, "11": { - "then": "Aquí se sirven platos Griegos" + "then": "Griego" }, "12": { - "then": "Aquí se sirven platos Indios" + "then": "Indio" }, "13": { - "then": "Aquí se sirven platos Turcos" + "then": "Restaurante turco" + }, + "14": { + "then": "Restaurante tailandés" + }, + "15": { + "then": "Aquí se sirven platillos mexicanos" + }, + "16": { + "then": "Aquí se sirven platillos japoneses" + }, + "17": { + "then": "Aquí se sirven platillos a base de pollo" + }, + "18": { + "then": "Aquí se sirven platillos de mariscos" }, "2": { - "then": "Principalmente sirve pasta" + "then": "Sirve principalmente pasta" }, "3": { - "then": "Tienda de kebak" + "then": "Kebab" + }, + "4": { + "then": "Sandwichería" }, "5": { - "then": "Hamburguesas" + "then": "Hamburguesería" }, "6": { - "then": "Aquí se sirve sushi" + "then": "Restaurante de sushi" }, "7": { - "then": "Aquí se sirve café" + "then": "Cafetería" }, "8": { - "then": "Este es un restaurante italiano (que sirve algo más que pasta y pizza)" + "then": "Restaurante italiano (que sirve algo más que pasta y pizza)" }, "9": { - "then": "Aquí se sirven platos Franceses" + "then": "Restaurante francés" } }, - "question": "¿Qué tipo de comida sirven aquí?", - "render": "Aquí se sirve principalmente {cuisine}" + "question": "¿Qué tipo de comida se sirve aquí?", + "render": "Este lugar sirve principalmente {cuisine}" }, "Fastfood vs restaurant": { "mappings": { "0": { - "then": "Se trata de un negocio de comida rápida, centrado en el servicio rápido. Si hay asientos disponibles, son más bien limitados y funcionales." + "then": "Este es un negocio de comida rápida, centrado en el servicio rápido. Si hay asientos disponibles, son bastante limitados y funcionales." }, "1": { - "then": "Un restaurante, centrado en crear una experiencia agradable en la que uno se sirve en mesa" + "then": "Un restaurante, centrado en crear una buena experiencia donde te atienden en la mesa" } }, "question": "¿Qué tipo de negocio es este?" @@ -3044,53 +5314,94 @@ "question": "¿Cuál es el nombre de este negocio?", "render": "El nombre de este negocio es {name}" }, + "Reservation": { + "mappings": { + "0": { + "then": "Se requiere reserva en este lugar" + }, + "1": { + "then": "No se requiere reserva, pero aún así se recomienda para asegurar una mesa" + }, + "2": { + "then": "Es posible reservar en este lugar" + }, + "3": { + "then": "No es posible reservar en este lugar" + } + }, + "question": "¿Se requiere reserva para este lugar?" + }, "Takeaway": { "mappings": { "0": { - "then": "Este es un negocio solo para pedir para llevar" + "then": "Este negocio es solo para llevar" }, "1": { - "then": "Aquí es posible pedir para llevar" + "then": "Es posible llevarse la comida" }, "2": { - "then": "Aquí no es posible pedir para llevar" + "then": "No es posible llevarse la comida" } }, - "question": "¿Este local ofrece comida para llevar?" + "question": "¿Este lugar ofrece comida para llevar?" }, "Vegan (no friture)": { "mappings": { "0": { - "then": "Sin opciones veganas disponibles" + "then": "No hay opciones veganas disponibles" }, "1": { - "then": "Alguna opciones veganas disponibles" + "then": "Hay algunas opciones veganas disponibles" }, "2": { - "then": "Opciones veganas disponibles" + "then": "Hay opciones veganas disponibles" }, "3": { - "then": "Todos los platos son veganos" + "then": "Todos los platillos son veganos" + }, + "4": { + "then": "Algunos platillos podrían adaptarse a una versión vegana si se solicita" } }, - "question": "¿Este negocio sirve comida vegana?" + "question": "¿Este negocio sirve comidas veganas?" }, "Vegetarian (no friture)": { "mappings": { "0": { - "then": "Sin opciones vegetarianas" + "then": "No hay opciones vegetarianas disponibles" }, "1": { - "then": "Algunas opciones vegetarianas" + "then": "Hay algunas opciones vegetarianas disponibles" }, "2": { - "then": "Opciones vegetarianas disponibles" + "then": "Hay opciones vegetarianas disponibles" }, "3": { - "then": "Todos los platos son vegetarianos" + "then": "Todos los platillos son vegetarianos" + }, + "4": { + "then": "Algunos platillos podrían adaptarse a una versión vegetariana, pero esto debe solicitarse" } }, - "question": "¿Este restaurante tiene una opción vegetariana?" + "question": "¿Este restaurante tiene opciones vegetarianas?" + }, + "add-menu-image": { + "render": { + "special": { + "label": "Añadir una imagen del menú" + } + } + }, + "delivery": { + "mappings": { + "0": { + "then": "Este negocio realiza entregas a domicilio (posiblemente a través de un tercero)" + }, + "1": { + "then": "Este negocio no realiza entregas a domicilio" + } + }, + "question": "¿{title()} entrega comida a domicilio?" }, "friture-oil": { "mappings": { @@ -3100,21 +5411,109 @@ "1": { "then": "La fritura se hace con aceite animal" } - } + }, + "question": "¿Esta freiduría usa aceite vegetal o animal para cocinar?" + }, + "friture-organic": { + "mappings": { + "0": { + "then": "Hay refrigerios orgánicos disponibles" + }, + "1": { + "then": "No hay refrigerios orgánicos disponibles" + }, + "2": { + "then": "Solo hay refrigerios orgánicos disponibles" + } + }, + "question": "¿Esta freiduría ofrece refrigerios orgánicos?" }, "friture-take-your-container": { "mappings": { "0": { - "then": "Puedes traer tus propios recipientes para recoger tu pedido, ahorrando material de un solo uso y por tanto basura" + "then": "Puedes traer tus propios recipientes para recibir tu pedido, ahorrando material de embalaje de un solo uso y, por lo tanto, residuos" }, "1": { "then": "Traer tu propio recipiente no está permitido" }, "2": { - "then": "Debes de traer tu propio recipiente para pedir aquí." + "then": "Debes traer tu propio recipiente para pedir aquí." } }, - "question": "Si traes tu propio recipiente (como ollas de cocina y ollas pequeñas), ¿se utiliza para empaquetar tu pedido?" + "question": "¿Si traes tu propio recipiente (como una olla y ollas pequeñas), se utiliza para empacar tu pedido?" + }, + "friture-vegan": { + "mappings": { + "0": { + "then": "Sirve solo refrigerios y hamburguesas veganas" + }, + "1": { + "then": "Hay refrigerios veganos disponibles" + }, + "2": { + "then": "Hay una pequeña selección de refrigerios veganos disponibles" + }, + "3": { + "then": "No hay refrigerios veganos disponibles" + } + }, + "question": "¿Esta freiduría tiene refrigerios veganos?" + }, + "friture-vegetarian": { + "mappings": { + "0": { + "then": "Sirve solo refrigerios y hamburguesas vegetarianas" + }, + "1": { + "then": "Hay refrigerios vegetarianos disponibles" + }, + "2": { + "then": "Solo una pequeña selección de refrigerios son vegetarianos" + }, + "3": { + "then": "No hay refrigerios vegetarianos disponibles" + } + }, + "question": "¿Esta freiduría tiene refrigerios vegetarianos?" + }, + "halal (no friture)": { + "mappings": { + "0": { + "then": "No hay opciones halal disponibles" + }, + "1": { + "then": "Hay un pequeño menú halal" + }, + "2": { + "then": "Hay un menú halal" + }, + "3": { + "then": "Solo hay opciones halal disponibles" + } + }, + "question": "¿Este restaurante ofrece un menú halal?" + }, + "menu-website": { + "question": "¿En qué página web se publica el menú?", + "render": { + "special": { + "text": "Consultar el menú" + } + } + }, + "organic (no friture)": { + "mappings": { + "0": { + "then": "No hay opciones orgánicas disponibles" + }, + "1": { + "then": "Hay un menú orgánico" + }, + "2": { + "then": "Solo hay opciones orgánicas disponibles" + } + }, + "question": "¿Este restaurante ofrece comida orgánica?" } }, "title": { @@ -3132,81 +5531,325 @@ "render": "Restaurante" } }, - "ghost_bike": { - "name": "Bicicletas blanca", - "presets": { - "0": { - "title": "una bicicleta blanca" + "food_courts": { + "description": "Plazas de comida con una variedad de opciones gastronómicas.", + "name": "Plazas de comida", + "tagRenderings": { + "name": { + "freeform": { + "placeholder": "Nombre de la plaza de comida" + }, + "question": "¿Cuál es el nombre de esta plaza de comida?", + "render": "Esta plaza de comida se llama {name}." } }, "title": { - "render": "Bicicleta blanca" + "render": "Plaza de comida" + } + }, + "ghost_bike": { + "description": "Una capa que muestra monumentos conmemorativos para ciclistas, muertos en accidentes de tráfico", + "name": "Bicicletas fantasma", + "presets": { + "0": { + "description": "Una bicicleta fantasma es un monumento conmemorativo para un ciclista que murió en un accidente de tráfico, en forma de una bicicleta blanca colocada permanentemente cerca del lugar del accidente.", + "title": "una bicicleta fantasma" + } + }, + "tagRenderings": { + "ghost_bike-inscription": { + "question": "¿Cuál es la inscripción en esta bicicleta fantasma?", + "render": "{inscription}" + }, + "ghost_bike-name": { + "mappings": { + "0": { + "then": "En memoria de {name}" + }, + "1": { + "then": "No hay nombre marcado en la bicicleta" + } + }, + "question": "¿A quién recuerda esta bicicleta fantasma?", + "questionHint": "Respeta la privacidad: solo completa el nombre si se publica ampliamente o está marcado en la bicicleta. Opta por omitir el apellido.", + "render": "En memoria de {subject}" + }, + "ghost_bike-source": { + "question": "¿En qué página web se puede encontrar más información sobre la bicicleta fantasma o el accidente?", + "render": { + "special": { + "text": "Más información disponible" + } + } + }, + "ghost_bike-start_date": { + "question": "¿Cuándo se instaló esta bicicleta fantasma?", + "render": "Colocación: {start_date}" + }, + "wikidata": { + "render": { + "before": "

Página de Wikipedia sobre la persona fallecida

" + } + } + }, + "title": { + "mappings": { + "0": { + "then": "Bicicleta fantasma en memoria de {subject}" + }, + "1": { + "then": "Bicicleta fantasma en memoria de {name}" + } + }, + "render": "Bicicleta fantasma" } }, "ghostsign": { - "description": "Capa que muestra carteles en desuso en edificios", - "name": "Señales fantasma", + "description": "Capa que muestra letreros en desuso en edificios", + "name": "Letreros fantasma", "presets": { "0": { - "title": "una señal fantasma" + "title": "un letrero fantasma" } }, "tagRenderings": { "brand": { "freeform": { - "placeholder": "Nombre comercial" + "placeholder": "Nombre del negocio" }, - "question": "¿Para qué negocio se hizo este cartel?", - "render": "Este cartel se hizo para: {brand}" + "question": "¿Para qué negocio se hizo este letrero?", + "render": "Este letrero se hizo para: {brand}" }, "inscription": { "freeform": { - "placeholder": "Texto en el cartel" + "placeholder": "Texto en el letrero" }, - "question": "¿Cuál es el texto del cartel?", - "render": "El texto del cartel es: {inscription}" + "question": "¿Cuál es el texto en el letrero?", + "render": "El texto en el letrero es: {inscription}" } }, "title": { - "render": "Publicidad en una fachada" + "render": "Letrero fantasma" } }, - "hackerspace": { - "description": "Espacio hacker", - "name": "Espacio hacker", + "governments": { + "description": "Esta capa muestra edificios gubernamentales. Se configuró como capa encargada para el cliente de OSOC '22", + "name": "Edificios gubernamentales", "presets": { "0": { - "description": "Un espacio hacker es un lugar en el que gente interesada en software se reúne", - "title": "un espacio hacker" - }, - "1": { - "description": "Un espacio maker es un lugar donde entusiastas del DIY se reúnen para experimentar con electrónica, como arduino, …", - "title": "un espacio maker" + "title": "una oficina gubernamental" } }, "tagRenderings": { + "name": { + "question": "¿Cuál es el nombre de esta oficina gubernamental?", + "render": "Esta oficina gubernamental se llama {name}" + } + }, + "title": { + "render": "Oficina gubernamental {name}" + } + }, + "gps_track": { + "name": "Tu traza recorrida", + "tagRenderings": { + "Privacy notice": { + "render": "Esta es la traza que has recorrido desde que se abrió este sitio web. No te preocupes, solo tú puedes verla y nadie más. Tus datos de ubicación nunca se envían fuera del dispositivo." + } + }, + "title": { + "render": "Tu traza recorrida" + } + }, + "grave": { + "description": "Las lápidas (y las tumbas) indican dónde fue enterrada una persona. En este mapa, estas pueden registrarse y se puede establecer un enlace a Wikipedia", + "filter": { + "0": { + "options": { + "0": { + "question": "Con o sin Wikidata" + }, + "1": { + "question": "Tiene enlace a Wikidata" + }, + "2": { + "question": "No tiene enlace a Wikidata" + } + } + } + }, + "name": "Lápidas", + "presets": { + "0": { + "description": "Una lápida es un objeto físico que indica que una o más personas están enterradas aquí. Generalmente tiene el nombre, la fecha de nacimiento y la fecha de defunción de la persona o personas como inscripción.", + "title": "una lápida" + } + }, + "tagRenderings": { + "buried:wikidata": { + "question": "¿Cuál es la página de Wikipedia de la persona enterrada aquí?", + "render": "{wikipedia(buried:wikidata)}" + }, + "name": { + "question": "¿Cuál es el nombre de la persona enterrada aquí?", + "render": "{name} está enterrado aquí" + } + }, + "title": { + "render": "Lápida" + } + }, + "guidepost": { + "description": "Los postes indicadores (también conocidos como señales o hitos) a menudo se encuentran a lo largo de rutas oficiales de senderismo/ciclismo/equitación/esquí para indicar las direcciones a diferentes destinos", + "name": "Postes indicadores", + "presets": { + "0": { + "description": "Un poste indicador (también conocido como señal) a menudo se encuentra a lo largo de rutas oficiales de senderismo/ciclismo/equitación/esquí para indicar las direcciones a diferentes destinos", + "title": "un poste indicador" + } + }, + "tagRenderings": { + "type": { + "mappings": { + "0": { + "then": "Este poste indicador muestra rutas de bicicleta" + }, + "1": { + "then": "Este poste indicador muestra rutas de senderismo" + }, + "2": { + "then": "Este poste indicador muestra rutas de bicicleta de montaña" + }, + "3": { + "then": "Este poste indicador muestra rutas a caballo" + }, + "4": { + "then": "Este poste indicador muestra rutas de esquí" + } + }, + "question": "¿Qué tipo de rutas se muestran en este poste indicador?" + } + }, + "title": "Postes indicadores" + }, + "hackerspace": { + "deletion": { + "nonDeleteMappings": { + "0": { + "then": "Este es un taller de autoservicio asistido, como un repair café" + }, + "1": { + "then": "Esta es una oficina de coworking" + } + } + }, + "description": "Hackerspace", + "name": "Hackerspace", + "presets": { + "0": { + "description": "Un hackerspace es un área donde se reúnen personas interesadas en software", + "title": "un hackerspace" + }, + "1": { + "description": "Un makerspace es un lugar donde se reúnen entusiastas del bricolaje para experimentar con electrónica como arduino, tiras de LED, etc.", + "title": "un makerspace" + } + }, + "tagRenderings": { + "available_devices": { + "renderings": { + "0": { + "mappings": { + "0": { + "then": "Hay {device-name} disponible en este hackerspace" + }, + "1": { + "then": "No hay {negative-name} disponible en este hackerspace" + }, + "2": { + "then": "Hay {negative-name} limitado disponible en este hackerspace" + } + }, + "question": "¿Hay {device-name} disponible en este hackerspace?" + } + }, + "rewrite": { + "into": { + "0": { + "1": "una impresora 3D", + "2": "impresora 3D" + }, + "1": { + "1": "una cortadora láser", + "2": "cortadora láser" + }, + "2": { + "1": "un taladro CNC", + "2": "taladro CNC" + }, + "3": { + "1": "un estudio multimedia", + "2": "estudio multimedia" + }, + "4": { + "1": "una máquina de coser", + "2": "máquina de coser" + }, + "5": { + "1": "un taller de carpintería", + "2": "taller de carpintería" + }, + "6": { + "1": "un taller de cerámica", + "2": "taller de cerámica" + }, + "7": { + "1": "un taller de metal", + "2": "taller de metal" + }, + "8": { + "1": "un taller de reparación de bicicletas", + "2": "taller de reparación de bicicletas" + } + } + } + }, "hackerspaces-name": { - "question": "¿Cual es el nombre de este espacio hacker?", - "render": "Este espacio hacker se llama {name}" + "question": "¿Cuál es el nombre de este hackerspace?", + "render": "Este hackerspace se llama {name}" }, "hackerspaces-start_date": { - "question": "¿Cuándo se fundó este espacio hacker?", - "render": "Este espacio hacker se fundó el {start_date}" + "question": "¿Cuándo se fundó este hackerspace?", + "render": "Este hackerspace fue fundado en {start_date}" + }, + "hs-club-mate": { + "mappings": { + "0": { + "then": "Este hackerspace sirve Club-Mate" + }, + "1": { + "then": "Este hackerspace no sirve Club-Mate" + } + }, + "question": "¿Este hackerspace sirve Club-Mate?" }, "is_makerspace": { "mappings": { "0": { - "then": "Este es un espacio maker" + "then": "Este es un makerspace" }, "1": { - "then": "Este es un espacio hacker tradicional (orientado al software)" + "then": "Este es un hackerspace tradicional (orientado al software)" + }, + "2": { + "then": "Este es un hacklab que se centra principalmente en habilidades informáticas básicas, utilizando dispositivos reciclados y/o proporcionando internet a la comunidad. Por lo general, se encuentra en espacios autónomos, okupas o instalaciones sociales" } }, - "question": "¿Esto es un espacio hacker o un espacio maker?" + "question": "¿Es un hackerspace o un makerspace?" }, "opening_hours_24_7": { "override": { - "question": "¿Cuándo está abierto este espacio hacker?" + "question": "¿Cuándo está abierto este hackerspace?" } } }, @@ -3216,94 +5859,551 @@ "then": " {name}" } }, - "render": "Espacio Hacker" + "render": "Hackerspace" + } + }, + "hospital": { + "description": "Una capa que muestra los terrenos del hospital", + "name": "Hospitales", + "tagRenderings": { + "inpatient": { + "mappings": { + "0": { + "then": "Esta es una clínica: los pacientes no pueden pasar la noche" + }, + "1": { + "then": "Este es un hospital: los pacientes pueden ser ingresados aquí por varios días" + } + }, + "question": "¿Esta instalación admite pacientes internados?", + "questionHint": "Un paciente internado es un paciente que permanece varios días en la instalación" + }, + "name": { + "question": "¿Cuál es el nombre de este hospital?", + "render": "Este hospital se llama {name}" + }, + "oh-visitor": { + "question": "¿Cuándo se permite a los visitantes realizar visitas?", + "questionHint": "Este es el horario regular de visitas. Algunas varillas tienen horarios de visita diferentes o pueden permitir visitas en caso de emergencia", + "render": "

Horario de visita para visitantes

Los visitantes regulares están permitidos en los siguientes momentos: {opening_hours_table(opening_hours:visitors)}

Algunas varillas pueden tener horarios de apertura diferentes. Muchos hospitales también permiten visitas en caso de emergencia.

" + } + }, + "title": { + "render": "Hospital" } }, "hydrant": { - "description": "Un mapa que muestra bocas de incendios.", - "name": "Mapa de bocas de incendios", + "description": "Capa del mapa para mostrar bocas de incendio.", + "name": "Mapa de bocas de incendio", "presets": { "0": { - "description": "Una boca de incendios es un punto de conexión en el que los bomberos pueden conseguir agua. Puede situarse bajo tierra.", - "title": "una boca de incendios" + "description": "Una boca de incendio es un punto de conexión donde los bomberos pueden obtener agua. Puede estar ubicada bajo tierra.", + "title": "una boca de incendio" } }, "tagRenderings": { "hydrant-color": { "mappings": { "0": { - "then": "La boca de incendios es amarilla." + "then": "El color de la boca de incendio es amarillo." }, "1": { - "then": "La boca de incendios es roja." + "then": "El color de la boca de incendio es rojo." } }, - "question": "¿De que color es la boca de incendios?", - "render": "La boca de incendios es de color {colour}" + "question": "¿De qué color es la boca de incendio?", + "render": "El color de la boca de incendio es {colour}" + }, + "hydrant-couplings": { + "freeform": { + "placeholder": "Tipo de acoplamiento" + }, + "mappings": { + "0": { + "then": "Acoplamiento Storz" + }, + "1": { + "then": "Acoplamiento UNI" + }, + "2": { + "then": "Acoplamiento Barcelona" + } + }, + "question": "¿Qué tipo de acoplamientos tiene esta boca de incendio?", + "render": "Acoplamientos: {couplings:type}" + }, + "hydrant-couplings-diameters": { + "freeform": { + "placeholder": "Diámetro de los acoplamientos" + }, + "question": "¿Qué diámetro tienen los acoplamientos de esta boca de incendio?", + "render": "Diámetro de los acoplamientos: {couplings:diameters}" + }, + "hydrant-diameter": { + "freeform": { + "placeholder": "Diámetro de la tubería" + }, + "question": "¿Cuál es el diámetro de la tubería de esta boca de incendio?", + "render": "Diámetro de la tubería: {canonical(fire_hydrant:diameter)}" + }, + "hydrant-number-of-couplings": { + "freeform": { + "placeholder": "Número de acoplamientos" + }, + "question": "¿Cuántos acoplamientos tiene esta boca de incendio?", + "render": "Número de acoplamientos: {couplings}" }, "hydrant-state": { "mappings": { "0": { - "then": "La boca de incendios funciona (total o parcialmente)" + "then": "La boca de incendio está (total o parcialmente) funcionando" }, "1": { - "then": "La boca de incendios no está disponible" + "then": "La boca de incendio no está disponible" }, "2": { - "then": "La boca de incendios se ha retirado" + "then": "La boca de incendio ha sido retirada" } }, - "question": "¿Todavía funciona esta boca de incendios?" + "question": "¿Esta boca de incendio sigue funcionando?" }, "hydrant-type": { "mappings": { "0": { - "then": "De pilar." + "then": "Tipo pilar." }, "1": { - "then": "De tubería." + "then": "Tipo tubería." }, "2": { - "then": "De pared." + "then": "Tipo pared." }, "3": { - "then": "Bajo tierra." + "then": "Tipo subterráneo." } }, - "question": "¿De qué tipo es esta boca de incendios?", - "render": " Tipo de boca de incendios: {fire_hydrant:type}" + "question": "¿Qué tipo de boca de incendio es?", + "render": " Tipo de boca de incendio: {fire_hydrant:type}" } }, "title": { - "render": "Boca de incendios" + "render": "Boca de incendio" + } + }, + "ice_cream": { + "description": "Un lugar donde se vende helado en el mostrador", + "name": "Heladerías", + "presets": { + "0": { + "description": "Una tienda donde solo se puede comprar helado y artículos relacionados. El helado normalmente se sirve con cuchara.", + "title": "una heladería" + } + }, + "tagRenderings": { + "1": { + "question": "¿Cuál es el nombre de esta heladería?", + "render": "Esta heladería se llama {name}" + } + }, + "title": { + "mappings": { + "0": { + "then": "{name}" + } + }, + "render": "Heladería" + } + }, + "icons": { + "description": "Una capa que actúa como biblioteca para representaciones de etiquetas de iconos, especialmente para mostrar como insignia junto a un PDI", + "tagRenderings": { + "osmlink": { + "mappings": { + "1": { + "then": { + "special": { + "arialabel": "Abrir en openstreetmap.org" + } + } + }, + "2": { + "then": { + "special": { + "arialabel": "Abrir en openstreetmap.org" + } + } + } + }, + "render": { + "special": { + "arialabel": "Abrir en openstreetmap.org" + } + } + }, + "phonelink": { + "mappings": { + "0": { + "then": { + "special": { + "arialabel": "teléfono" + } + } + } + }, + "render": { + "special": { + "arialabel": "teléfono" + } + } + } } }, "indoors": { - "description": "Cartografía básica en interiores: muestra esquemas de espacio" - }, - "information_board": { - "description": "Una capa que muestra paneles informativos turísticos (ej. informan sobre el paisaje, una construcción, una característica, un mapa, ...)", - "name": "Paneles informativos", - "presets": { - "0": { - "title": "un panel informativo" + "description": "Cartografía interior básica: muestra los contornos de las habitaciones", + "name": "Interiores", + "snapName": "una pared interior", + "tagRenderings": { + "name": { + "freeform": { + "placeholder": "Nombre de la habitación" + }, + "question": "¿Cuál es el nombre de esta habitación?", + "render": "Esta habitación se llama {name}" + }, + "ref": { + "freeform": { + "placeholder": "Número de referencia de la habitación (por ejemplo, '1.1' o 'A1')" + }, + "question": "¿Cuál es el número de referencia de esta habitación?", + "render": "Esta habitación tiene el número de referencia {ref}" + }, + "room-capacity": { + "question": "¿Cuántas personas pueden caber como máximo en esta habitación?", + "render": "En esta habitación caben como máximo {capacity} personas" + }, + "room-type": { + "mappings": { + "0": { + "then": "Esta es una habitación administrativa" + }, + "1": { + "then": "Este es un auditorio" + }, + "10": { + "then": "Este es un laboratorio" + }, + "11": { + "then": "Esta es una biblioteca" + }, + "12": { + "then": "Este es un vestuario" + }, + "13": { + "then": "Esta es una guardería" + }, + "14": { + "then": "Esta es una oficina" + }, + "15": { + "then": "Esta es una sala de copias" + }, + "16": { + "then": "Esta es una celda de prisión" + }, + "17": { + "then": "Este es un restaurante" + }, + "18": { + "then": "Esta es una sala para realizar controles de seguridad" + }, + "19": { + "then": "Esta es una sala de deportes" + }, + "2": { + "then": "Este es un dormitorio" + }, + "20": { + "then": "Esta es una sala de almacenamiento" + }, + "21": { + "then": "Esta es una sala técnica" + }, + "22": { + "then": "Estos son baños" + }, + "23": { + "then": "Esta es una sala de espera" + }, + "3": { + "then": "Esta es una capilla" + }, + "4": { + "then": "Esta es un aula" + }, + "5": { + "then": "Esta es un aula" + }, + "6": { + "then": "Esta es una sala de ordenadores" + }, + "7": { + "then": "Esta es una sala de conferencias" + }, + "8": { + "then": "Esta es una cripta" + }, + "9": { + "then": "Esta es una cocina" + } + }, + "question": "¿Qué tipo de habitación es esta?" } }, "title": { - "render": "Panel informativo" + "mappings": { + "0": { + "then": "Habitación interior {name}" + }, + "1": { + "then": "Área interior {name}" + }, + "2": { + "then": "Pared interior {name}" + }, + "3": { + "then": "Pasillo interior {name}" + }, + "4": { + "then": "Puerta interior {name}" + }, + "5": { + "then": "Nivel interior {name}" + } + }, + "render": "Área interior {name}" + } + }, + "information_board": { + "description": "Una capa que muestra paneles de información turística y de carretera (por ejemplo, que brindan información sobre el paisaje, un edificio, una característica, un mapa, etc.)", + "name": "Paneles de información", + "presets": { + "0": { + "title": "un panel de información" + } + }, + "title": { + "render": "Panel de información" + } + }, + "item_with_image": { + "name": "Elementos con al menos una imagen", + "title": { + "render": "PDI con imagen" + } + }, + "kerbs": { + "description": "Una capa que muestra bordillos.", + "filter": { + "0": { + "options": { + "0": { + "question": "Todos los tipos de bordillos" + }, + "1": { + "question": "Bordillo elevado (>3 cm)" + }, + "2": { + "question": "Bordillo rebajado (~3 cm)" + }, + "3": { + "question": "Bordillo a ras (~0 cm)" + }, + "4": { + "question": "Sin bordillo" + }, + "5": { + "question": "Bordillo con altura desconocida" + } + } + } + }, + "name": "Bordillos", + "presets": { + "0": { + "description": "Bordillo en una acera", + "title": "un bordillo" + } + }, + "snapName": "un bordillo", + "tagRenderings": { + "kerb-height": { + "freeform": { + "placeholder": "Altura del bordillo" + }, + "mappings": { + "0": { + "then": "Este bordillo está a ras y tiene menos de 1 cm de altura." + } + }, + "question": "¿Cuál es la altura de este bordillo?", + "render": "Altura del bordillo: {kerb:height}" + }, + "kerb-type": { + "mappings": { + "0": { + "then": "Este bordillo es elevado (>3 cm)" + }, + "1": { + "then": "Este bordillo es rebajado (~3 cm)" + }, + "2": { + "then": "Este bordillo está a ras (~0cm)" + }, + "3": { + "then": "Aquí no hay bordillo" + }, + "4": { + "then": "Hay un bordillo de altura desconocida" + } + }, + "question": "¿Cuál es la altura de este bordillo?" + }, + "tactile-paving": { + "mappings": { + "0": { + "then": "Este bordillo tiene pavimento táctil." + }, + "1": { + "then": "Este bordillo no tiene pavimento táctil." + }, + "2": { + "then": "Este bordillo tiene pavimento táctil, pero es incorrecto." + } + }, + "question": "¿Hay pavimento táctil en este bordillo?" + } + }, + "title": { + "render": "Bordillo" + } + }, + "kindergarten_childcare": { + "name": "Jardines de infancia y guarderías", + "presets": { + "0": { + "title": "un jardín de infancia" + }, + "1": { + "title": "una guardería" + } + }, + "tagRenderings": { + "capacity": { + "question": "¿Cuántos niños (como máximo) pueden inscribirse aquí?", + "render": "Este centro tiene capacidad para {capacity} niños" + }, + "childcare-type": { + "mappings": { + "0": { + "then": "Se trata de un jardín de infancia (también conocido como preescolar) donde los niños pequeños reciben educación temprana." + }, + "1": { + "then": "Se trata de un centro de cuidado infantil, como una guardería o una sala de juegos donde se cuida a los niños pequeños. No ofrecen educación y suelen ser empresas privadas" + } + }, + "question": "¿Qué tipo de centro es este?" + }, + "name": { + "question": "¿Cuál es el nombre de este centro?", + "render": "Este centro se llama {name}" + }, + "opening_hours": { + "override": { + "question": "¿Cuándo abre esta guardería?" + } + } + }, + "title": { + "mappings": { + "0": { + "then": "Jardín de infancia {name}" + }, + "1": { + "then": "Guardería {name}" + } + } } }, "last_click": { "pointRendering": { "0": { "label": { - "render": "Haga clic aquí para añadir un nuevo ítem" + "mappings": { + "0": { + "then": "Crear una nueva nota del mapa" + } + }, + "render": "Haz clic aquí para añadir un nuevo elemento" + } + } + }, + "title": { + "mappings": { + "0": { + "then": "Añadir un nuevo punto o añadir una nota" + }, + "1": { + "then": "Añadir una nueva nota" + }, + "2": { + "then": "Añadir un nuevo punto" } } } }, + "lighthouse": { + "name": "faro", + "presets": { + "0": { + "title": "un faro" + } + }, + "tagRenderings": { + "lighthouse-height": { + "question": "¿Cuál es la altura de este faro, en metros?", + "render": "La altura de este faro es de {height} metros." + } + }, + "title": { + "mappings": { + "0": { + "then": "{name}" + } + }, + "render": "faro" + } + }, + "love_hotel": { + "description": "Un hotel del amor es un tipo de hotel de corta estancia que se encuentra en todo el mundo y que funciona principalmente con el fin de ofrecer a los huéspedes privacidad para las actividades sexuales", + "name": "Hoteles del amor", + "presets": { + "0": { + "description": "Un hotel del amor es un tipo de hotel de corta estancia que se encuentra en todo el mundo y que funciona principalmente con el fin de ofrecer a los huéspedes privacidad para las actividades sexuales.", + "title": "un hotel del amor" + } + }, + "tagRenderings": { + "name": { + "question": "¿Cuál es el nombre de este hotel del amor?", + "render": "Este hotel del amor se llama {name}" + } + }, + "title": { + "render": "Hotel del amor {name}" + } + }, "map": { - "description": "Un mapa, pensado para turistas y que está instalado de manera permanente en un espacio público", + "description": "Un mapa, pensado para turistas, que está instalado permanentemente en el espacio público", "name": "Mapas", "presets": { "0": { @@ -3315,22 +6415,22 @@ "map-attribution": { "mappings": { "0": { - "then": "Se atribuye claramente a OpenStreetMap, incluyendo la licencia ODBL" + "then": "OpenStreetMap está claramente atribuido, incluyendo la licencia ODBL" }, "1": { - "then": "Se atribuya claramente a OpenStreetMap, pero no se menciona la licencia" + "then": "OpenStreetMap está claramente atribuido, pero no se menciona la licencia" }, "2": { - "then": "No se mencionaba OpenStreetMap, pero alguien le pegó una pegatina de OpenStreetMap" + "then": "OpenStreetMap no se mencionó, pero alguien puso una pegatina de OpenStreetMap" }, "3": { - "then": "No hay atribución" + "then": "No hay ninguna atribución" }, "4": { - "then": "No hay atribución" + "then": "No hay ninguna atribución" } }, - "question": "¿Hay una atribución a OpenStreetMap?" + "question": "¿Se proporciona la atribución de OpenStreetMap?" }, "map-map_source": { "mappings": { @@ -3340,6 +6440,43 @@ }, "question": "¿En qué datos se basa este mapa?", "render": "Este mapa se basa en {map_source}" + }, + "map_size": { + "mappings": { + "0": { + "then": "Un mapa de las habitaciones dentro de un edificio" + }, + "1": { + "then": "Un mapa de un sitio especial, como un castillo histórico, un parque, un campus, un bosque, ..." + }, + "2": { + "then": "Un mapa que muestra el pueblo o la ciudad" + }, + "3": { + "then": "Un mapa de una ciudad" + }, + "4": { + "then": "El mapa de toda una región, mostrando múltiples ciudades y pueblos" + } + }, + "question": "¿Cuál es el tamaño del área mostrada en el mapa?" + }, + "map_type": { + "mappings": { + "0": { + "then": "Mapa topográfico

El mapa contiene líneas de contorno.

" + }, + "1": { + "then": "Un mapa con todas las calles o vías de una zona.

Las calles suelen tener nombre; los ángulos, las distancias, etc., son precisos

" + }, + "2": { + "then": "Este es un mapa esquemático.

Un mapa esquemático con sólo las vías y los PDI importantes. Los ángulos, las distancias, etc., son meramente ilustrativos, no precisos.

" + }, + "3": { + "then": "Este es un topoescopo.

Un marcador erigido en lugares altos que indica la dirección hacia características notables del paisaje que se pueden ver desde ese punto

" + } + }, + "question": "¿Qué tipo de mapa se muestra?" } }, "title": { @@ -3347,78 +6484,400 @@ } }, "maproulette": { - "description": "Capa mostrando todas las tareas en MapRoulette" + "description": "Capa que muestra todas las tareas en MapRoulette", + "filter": { + "0": { + "options": { + "0": { + "question": "Mostrar tareas con todos los estados" + }, + "1": { + "question": "Mostrar tareas que se han creado" + }, + "2": { + "question": "Mostrar tareas que se han corregido" + }, + "3": { + "question": "Mostrar tareas que son falsos positivos" + }, + "4": { + "question": "Mostrar tareas que se han omitido" + }, + "5": { + "question": "Mostrar tareas que se han eliminado" + }, + "6": { + "question": "Mostrar tareas que ya están corregidas" + }, + "7": { + "question": "Mostrar tareas marcadas como demasiado difíciles" + }, + "8": { + "question": "Mostrar tareas deshabilitadas" + } + } + }, + "1": { + "options": { + "0": { + "question": "El nombre del reto contiene {search}" + } + } + }, + "2": { + "options": { + "0": { + "question": "El ID del reto coincide con {search}" + } + } + } + }, + "name": "Tareas de MapRoulette", + "tagRenderings": { + "mark_duplicate": { + "render": { + "special": { + "message": "Marcar como no encontrado o falso positivo" + } + } + }, + "mark_fixed": { + "render": { + "special": { + "message": "Marcar como corregido" + } + } + }, + "mark_too_hard": { + "render": { + "special": { + "message": "Marcar como demasiado difícil" + } + } + }, + "status": { + "mappings": { + "0": { + "then": "Tarea creada" + }, + "1": { + "then": "Tarea corregida" + }, + "2": { + "then": "La tarea es un falso positivo" + }, + "3": { + "then": "Tarea omitida" + }, + "4": { + "then": "Tarea eliminada" + }, + "5": { + "then": "La tarea ya está corregida" + }, + "6": { + "then": "La tarea está marcada como demasiado difícil" + }, + "7": { + "then": "Tarea deshabilitada" + } + } + } + }, + "title": { + "render": "Elemento de MapRoulette: {parentName}" + } + }, + "maproulette_challenge": { + "description": "Capa que muestra las tareas de un único reto de MapRoulette. Esta capa está pensada para ser reutilizada y ampliada en temas; consulta la [documentación](https://github.com/pietervdvn/MapComplete/blob/develop/Docs/Integrating_Maproulette.md) sobre cómo hacerlo.", + "filter": { + "0": { + "options": { + "0": { + "question": "Mostrar tareas con todos los estados" + }, + "1": { + "question": "Mostrar tareas que se han creado" + }, + "2": { + "question": "Mostrar tareas que se han corregido" + }, + "3": { + "question": "Mostrar tareas que son falsos positivos" + }, + "4": { + "question": "Mostrar tareas que se han omitido" + }, + "5": { + "question": "Mostrar tareas que se han eliminado" + }, + "6": { + "question": "Mostrar tareas que ya están corregidas" + }, + "7": { + "question": "Mostrar tareas marcadas como demasiado difíciles" + }, + "8": { + "question": "Mostrar tareas deshabilitadas" + } + } + } + }, + "tagRenderings": { + "status": { + "mappings": { + "0": { + "then": "Tarea creada" + }, + "1": { + "then": "Tarea corregida" + }, + "2": { + "then": "La tarea es un falso positivo" + }, + "3": { + "then": "Tarea omitida" + }, + "4": { + "then": "Tarea eliminada" + }, + "5": { + "then": "La tarea ya está corregida" + }, + "6": { + "then": "La tarea está marcada como demasiado difícil" + }, + "7": { + "then": "Tarea deshabilitada" + } + } + } + }, + "title": { + "render": "Elemento en MapRoulette" + } }, "maxspeed": { "description": "Muestra la velocidad permitida para cada carretera", - "name": "Velocidad", + "name": "Velocidad máxima", "tagRenderings": { "maxspeed-maxspeed": { - "question": "Qué es la velocidad máxima legal uno está permitido conducir en esta carretera?" + "mappings": { + "0": { + "then": "Esta es una calle residencial, que tiene una velocidad máxima de 20 km/h" + } + }, + "question": "¿Cuál es la velocidad máxima legal a la que se permite conducir en esta carretera?", + "render": "La velocidad máxima permitida en esta carretera es {canonical(maxspeed)}" + } + }, + "title": { + "mappings": { + "0": { + "then": "Carretera sin nombre" + } } } }, "memorial": { + "name": "Monumentos", + "presets": { + "0": { + "description": "Un monumento es un objeto físico que recuerda a una persona o un evento.", + "title": "un monumento" + } + }, "tagRenderings": { + "inscription": { + "mappings": { + "0": { + "then": "Este monumento no tiene inscripción" + } + }, + "question": "¿Cuál es la inscripción de este monumento?", + "render": "La inscripción de este monumento dice:

{inscription}

" + }, "memorial-type": { "mappings": { + "0": { + "then": "Es una estatua" + }, + "1": { + "then": "Es una placa" + }, "10": { "then": "Es una cruz" }, + "11": { + "then": "Es una placa azul" + }, + "12": { + "then": "Es un tanque histórico, colocado permanentemente en el espacio público como monumento" + }, + "13": { + "then": "Es un árbol conmemorativo" + }, + "14": { + "then": "Es una lápida; la persona está enterrada aquí" + }, + "2": { + "then": "Es un banco conmemorativo" + }, + "3": { + "then": "Es una bicicleta fantasma - una bicicleta pintada de blanco para recordar a un ciclista que falleció debido a un accidente de coche" + }, + "4": { + "then": "Es un stolperstein (piedra de tropiezo)" + }, + "5": { + "then": "Es una estela" + }, + "6": { + "then": "Es una piedra conmemorativa" + }, + "7": { + "then": "Es un busto" + }, + "8": { + "then": "Es una escultura" + }, "9": { "then": "Es un obelisco" } + }, + "question": "¿Qué tipo de monumento es este?", + "render": "Se trata de un {memorial}" + }, + "memorial-wikidata": { + "question": "¿Cuál es la página de Wikipedia sobre este monumento?", + "questionHint": "Se trata del propio monumento, no de la persona o el evento que recuerda el monumento. Si este monumento no tiene una página de Wikipedia o una entidad Wikidata, omite esta pregunta.", + "render": { + "before": "

Página de Wikipedia sobre el monumento

" + } + }, + "start_date": { + "question": "¿Cuándo se instaló este monumento?", + "render": "Colocación: {start_date}" + }, + "subject-wikidata": { + "question": "¿Cuál es la página de Wikipedia sobre la persona o el evento que se recuerda aquí?", + "questionHint": "Si la persona o el evento no tienen una página de Wikipedia o una entidad Wikidata, omite esta pregunta.", + "render": { + "before": "

Página de Wikipedia sobre el evento o la persona recordada

" } } + }, + "title": { + "mappings": { + "0": { + "then": "Placa conmemorativa" + } + }, + "render": "Placa conmemorativa" + } + }, + "mountain_rescue": { + "description": "Un edificio donde los socorristas guardan material y pueden estar de guardia", + "name": "Refugios de montaña", + "presets": { + "0": { + "title": "un refugio de montaña" + } + }, + "title": { + "render": "Refugio de montaña" } }, "nature_reserve": { - "description": "Una reserva natural es una zona donde la naturaleza puede seguir su curso", - "name": "Reserva Natural", + "description": "Una reserva natural es un área donde la naturaleza puede seguir su curso", + "filter": { + "0": { + "options": { + "0": { + "question": "Acceso libre" + } + } + }, + "1": { + "options": { + "0": { + "question": "Todas las reservas naturales" + }, + "1": { + "question": "Se permite la entrada de perros sin correa" + }, + "2": { + "question": "Se permite la entrada de perros con correa" + } + } + } + }, + "name": "Reserva natural", + "presets": { + "0": { + "description": "Añadir una reserva natural que falta", + "title": "una reserva natural" + } + }, "tagRenderings": { "Access tag": { "mappings": { + "0": { + "then": "Acceso público" + }, "1": { - "then": "No accesible" + "then": "Sin acceso" }, "2": { - "then": "No accesible, ya que es una área privada" + "then": "Sin acceso, ya que es una zona privada" }, "3": { - "then": "Accesible a pesar de ser una área privada" + "then": "Accesible a pesar de ser una zona de propiedad privada" }, "4": { - "then": "Solo accesible con un guía o durante actividades organizadas" + "then": "Sólo accesible con guía o durante actividades organizadas" }, "5": { - "then": "Accesible con una tasa" + "then": "Accesible con pago" } - } + }, + "question": "¿Es accesible al público esta reserva natural?", + "render": "Acceso a esta reserva natural: {access:description}" + }, + "Curator": { + "question": "¿Quién es el conservador de esta reserva natural?", + "questionHint": "Respeta la privacidad: sólo rellena un nombre si esto se publica ampliamente", + "render": "{curator} es el conservador de esta reserva natural" }, "Dogs?": { "mappings": { "0": { - "then": "Los perros deben de ir con correa" + "then": "Los perros deben llevar correa" }, "1": { "then": "No se permiten perros" }, "2": { - "then": "Los perros pueden ir sueltos" + "then": "Se permite la entrada de perros sin correa" } - } + }, + "question": "¿Se permiten perros en esta reserva natural?" }, "Editable description": { "question": "¿Hay alguna información adicional?", "render": "Información adicional: {description:0}" }, + "Email": { + "question": "¿A qué dirección de correo electrónico se puede enviar preguntas y problemas con esta reserva natural?", + "questionHint": "Respeta la privacidad: sólo rellena una dirección de correo electrónico personal si esto se publica ampliamente" + }, "Name tag": { "mappings": { "0": { - "then": "Esta área no tiene un nombre" + "then": "Esta área no tiene nombre" } }, - "question": "¿Cual es el nombre de esta área?", + "question": "¿Cuál es el nombre de esta área?", "render": "Esta área se llama {name}" }, "Non-editable description": { @@ -3427,18 +6886,28 @@ "Operator tag": { "mappings": { "0": { - "then": "Operado por NatuurPunt" + "then": "Gestionado por Natuurpunt" }, "1": { - "then": "Operado por {operator}" + "then": "Gestionado por {operator}" + }, + "2": { + "then": "Gestionado por Agentschap Natuur en Bos" } }, - "question": "¿Quién opera esta área?", - "render": "Operado por {operator}" + "question": "¿Quién gestiona esta área?", + "render": "Gestionado por {operator}" }, "Surface area": { "render": "Superficie: {_surface:ha}Ha" + }, + "phone": { + "question": "¿Qué número de teléfono se puede llamar para preguntas y problemas con esta reserva natural?", + "questionHint": "Respeta la privacidad: sólo rellena una dirección de número de teléfono personal si esto se publica ampliamente" } + }, + "title": { + "render": "Reserva natural" } }, "note": { @@ -3446,35 +6915,56 @@ "0": { "options": { "0": { - "question": "Solo mostrar las notas abiertas por contributores anómimos" + "question": "Sólo mostrar notas abiertas por un colaborador anónimo" } } }, "1": { "options": { "0": { - "question": "Solo mostrar las notas abiertas" + "question": "Sólo mostrar notas abiertas" } } }, "10": { "options": { "0": { - "question": "Editada por última vez por el contributor {search}" + "question": "Última edición por el colaborador {search}" + } + } + }, + "11": { + "options": { + "0": { + "question": "No editado por última vez por {search}" } } }, "12": { "options": { "0": { - "question": "Creada antes de {search}" + "question": "Creado antes de {search}" } } }, "13": { "options": { "0": { - "question": "Creada después de {search}" + "question": "Creado después de {search}" + } + } + }, + "14": { + "options": { + "0": { + "question": "Última edición antes de {search}" + } + } + }, + "15": { + "options": { + "0": { + "question": "Última edición después de {search}" } } }, @@ -3484,10 +6974,10 @@ "question": "Todas las notas" }, "1": { - "question": "Ocultar las notas de importación" + "question": "Ocultar notas de importación" }, "2": { - "question": "Solo mostrar las notas de importación" + "question": "Mostrar sólo notas de importación" } } }, @@ -3498,24 +6988,45 @@ } } }, + "4": { + "options": { + "0": { + "question": "Debe mencionar {search} en cualquier comentario" + } + } + }, "5": { "options": { "0": { - "question": "No debe mencionar {search} en el primer comentario" + "question": "No debe mencionar {search} en el primer comentario" + } + } + }, + "6": { + "options": { + "0": { + "question": "No debe mencionar {search} en ningún comentario" } } }, "7": { "options": { "0": { - "question": "Abierto por el contributor {search}" + "question": "Abierto por el colaborador {search}" } } }, "8": { "options": { "0": { - "question": "No abierto por el contributor {search}" + "question": "No abierto por el colaborador {search}" + } + } + }, + "9": { + "options": { + "0": { + "question": "Editado o comentado por cualquier usuario con el nombre {search}" } } } @@ -3524,14 +7035,14 @@ "tagRenderings": { "nearby-images": { "render": { - "before": "

Imágenes cercanas

Las imágenes de debajo son imágenes geoetiquetadas cercanas y pueden ser útiles para encargarse de esta nota." + "before": "

Imágenes cercanas

Las imágenes que aparecen a continuación son imágenes geoetiquetadas cercanas y pueden ser útiles para gestionar esta nota." } }, "report-contributor": { - "render": "Reportar {_first_user} por spam o mensajes inapropiados" + "render": "Denunciar a {_first_user} por correo basura o mensajes inapropiados" }, "report-note": { - "render": "Reporta esta nota como spam o inapropiada" + "render": "Denunciar esta nota como correo basura o inapropiada" } }, "title": { @@ -3541,31 +7052,41 @@ } }, "render": "Nota" + }, + "titleIcons": { + "0": { + "ariaLabel": "Ver en OpenStreetMap.org" + } } }, "observation_tower": { - "description": "Torres con vista panorámica", + "description": "Torres con vistas panorámicas", "name": "Torres de observación", "tagRenderings": { "Fee": { + "mappings": { + "0": { + "then": "Entrada gratuita" + } + }, "question": "¿Cuánto hay que pagar para entrar en esta torre?", "render": "Visitar esta torre cuesta {charge}" }, "Height": { - "question": "¿Cual es la altura de esta torre?", - "render": "Esta torre mide {height}" + "question": "¿Cuál es la altura de esta torre?", + "render": "Esta torre mide {height} de alto" }, "Operator": { "question": "¿Quién mantiene esta torre?", - "render": "Mantenida por {operator}" + "render": "Mantenido por {operator}" }, "access": { "mappings": { "0": { - "then": "Esta torre es accesible públicamente" + "then": "Esta torre es de acceso público" }, "1": { - "then": "A esta torre solo se puede acceder con un guía" + "then": "Esta torre sólo se puede visitar con guía" } }, "question": "¿Se puede visitar esta torre?" @@ -3579,7 +7100,7 @@ "then": "Esta torre no tiene ascensor" } }, - "question": "¿Esta torre tiene ascensor?" + "question": "¿Tiene esta torre ascensor?" }, "name": { "mappings": { @@ -3587,12 +7108,12 @@ "then": "Esta torre no tiene un nombre específico" } }, - "question": "¿Cual es el nombre de esta torre?", + "question": "¿Cuál es el nombre de esta torre?", "render": "Esta torre se llama {name}" }, "step_count": { "question": "¿Cuántos escalones hay que subir para llegar a la cima de esta torre?", - "render": "Esta torre tiene {step_count} escalones para lllegar a l a cima" + "render": "Esta torre tiene {step_count} escalones para llegar a la cima" } }, "title": { @@ -3604,48 +7125,492 @@ "render": "Torre de observación" } }, - "parking": { - "description": "Una capa que muestra aparcamientos para coches", - "name": "Aparcamiento", - "presets": { + "osm_community_index": { + "description": "Una capa que muestra las comunidades de OpenStreetMap", + "filter": { "0": { - "title": "un aparcamiento de coches" + "options": { + "0": { + "question": "País" + } + } + }, + "1": { + "options": { + "0": { + "question": "Grupo de subpaíses" + } + } + }, + "2": { + "options": { + "0": { + "question": "Región" + } + } + }, + "3": { + "options": { + "0": { + "question": "Región intermedia" + } + } + }, + "4": { + "options": { + "0": { + "question": "Territorio" + } + } + }, + "5": { + "options": { + "0": { + "question": "Mundo" + } + } + }, + "6": { + "options": { + "0": { + "question": "Otras comunidades" + } + } + } + }, + "name": "Índice de la comunidad OSM", + "title": { + "render": "Índice de la comunidad OSM" + } + }, + "outdoor_seating": { + "description": "Áreas de asientos al aire libre, generalmente ubicadas cerca de cafés y restaurantes.", + "name": "Asientos al aire libre", + "tagRenderings": { + "access": { + "mappings": { + "0": { + "then": "Cualquiera puede usar esta área de asientos al aire libre." + }, + "1": { + "then": "Sólo los clientes pueden usar esta área de asientos al aire libre." + }, + "2": { + "then": "Esta área de asientos al aire libre es privada." + } + }, + "question": "¿Quién puede usar esta área de asientos al aire libre?" + }, + "covered": { + "mappings": { + "0": { + "then": "Esta área de asientos al aire libre está cubierta." + }, + "1": { + "then": "Esta área de asientos al aire libre no está cubierta." + } + }, + "question": "¿Está cubierta esta área de asientos al aire libre?" + }, + "heating": { + "mappings": { + "0": { + "then": "Esta área de asientos al aire libre tiene calefacción." + }, + "1": { + "then": "Esta área de asientos al aire libre no tiene calefacción." + } + }, + "question": "¿Tiene calefacción esta área de asientos al aire libre?" + }, + "seasonal": { + "mappings": { + "0": { + "then": "Esta área de asientos al aire libre está disponible todo el año." + }, + "1": { + "then": "Esta área de asientos al aire libre está disponible en primavera." + }, + "2": { + "then": "Esta área de asientos al aire libre está disponible en verano." + }, + "3": { + "then": "Esta área de asientos al aire libre está disponible en otoño." + }, + "4": { + "then": "Esta área de asientos al aire libre está disponible en invierno." + }, + "5": { + "then": "Esta área de asientos al aire libre está disponible en la estación seca." + } + }, + "question": "¿Es esta área de asientos al aire libre de temporada?" } }, "title": { - "render": "Aparcamiento de coches" + "render": "Área de asientos al aire libre" + } + }, + "parcel_lockers": { + "description": "Capa que muestra taquillas para recoger y enviar paquetes.", + "name": "Taquillas de Paquetes", + "presets": { + "0": { + "title": "una taquilla de paquetes" + } + }, + "tagRenderings": { + "brand": { + "freeform": { + "placeholder": "Marca" + }, + "question": "¿Cuál es la marca de la taquilla de paquetes?", + "render": "Esta es una taquilla de paquetes {brand}" + }, + "mail-in": { + "mappings": { + "0": { + "then": "Puedes enviar paquetes desde esta taquilla" + }, + "1": { + "then": "No puedes enviar paquetes desde esta taquilla" + } + }, + "question": "¿Puedes enviar paquetes desde esta taquilla?" + }, + "operator": { + "freeform": { + "placeholder": "Operador" + }, + "question": "¿Cuál es el operador de la taquilla de paquetes?", + "render": "Esta taquilla de paquetes es operada por {operator}" + }, + "pickup": { + "mappings": { + "0": { + "then": "Puedes recoger paquetes de esta taquilla" + }, + "1": { + "then": "No puedes recoger paquetes de esta taquilla" + } + }, + "question": "¿Puedes recoger paquetes de esta taquilla?" + }, + "ref": { + "freeform": { + "placeholder": "Referencia" + }, + "question": "¿Cuál es el número de referencia/identificador de esta taquilla de paquetes?", + "render": "Esta taquilla de paquetes tiene la referencia {ref}" + } + }, + "title": { + "mappings": { + "0": { + "then": "Taquilla de paquetes {brand}" + } + }, + "render": "Taquilla de Paquetes" + } + }, + "parking": { + "description": "Una capa que muestra aparcamientos.", + "name": "Aparcamiento", + "presets": { + "0": { + "title": "un aparcamiento" + } + }, + "tagRenderings": { + "capacity": { + "freeform": { + "placeholder": "Cantidad de plazas de aparcamiento" + }, + "question": "¿Cuántas plazas de aparcamiento hay en este aparcamiento?", + "render": "Hay {capacity} plazas de aparcamiento" + }, + "capacity-disabled": { + "freeform": { + "placeholder": "Cantidad de plazas de aparcamiento reservadas para personas con discapacidad" + }, + "mappings": { + "0": { + "then": "Hay plazas de aparcamiento para discapacitados, pero no se sabe cuántas" + }, + "1": { + "then": "No hay plazas de aparcamiento para discapacitados" + }, + "2": { + "then": "No hay plazas de aparcamiento para discapacitados" + } + }, + "question": "¿Cuántas plazas de aparcamiento para discapacitados hay en este aparcamiento?", + "render": "Hay {capacity:disabled} plazas de aparcamiento para discapacitados" + }, + "parking-type": { + "mappings": { + "0": { + "then": "Este es un aparcamiento en superficie" + }, + "1": { + "then": "Esta es una bahía de aparcamiento junto a una calle" + }, + "2": { + "then": "Este es un aparcamiento subterráneo" + }, + "3": { + "then": "Este es un aparcamiento de varios pisos" + }, + "4": { + "then": "Este es un aparcamiento en azotea" + }, + "5": { + "then": "Este es un carril para aparcar en la carretera" + }, + "6": { + "then": "Este aparcamiento está cubierto por cocheras" + }, + "7": { + "then": "Este es un aparcamiento que consta de boxes de garaje" + }, + "8": { + "then": "Este es un aparcamiento en una zona de descanso" + }, + "9": { + "then": "Este es un aparcamiento que consta de cobertizos" + } + }, + "question": "¿Qué tipo de aparcamiento es este?" + } + }, + "title": { + "render": "Aparcamiento" + } + }, + "parking_spaces": { + "description": "Capa que muestra plazas de aparcamiento individuales.", + "name": "Plazas de Aparcamiento", + "tagRenderings": { + "capacity": { + "mappings": { + "0": { + "then": "Esta plaza de aparcamiento tiene 1 plaza." + } + }, + "render": "Esta plaza de aparcamiento tiene {capacity} plazas." + }, + "type": { + "mappings": { + "0": { + "then": "Esta es una plaza de aparcamiento normal." + }, + "1": { + "then": "Esta es una plaza de aparcamiento normal." + }, + "10": { + "then": "Esta es una plaza de aparcamiento reservada para el personal." + }, + "11": { + "then": "Esta es una plaza de aparcamiento reservada para taxis." + }, + "12": { + "then": "Esta es una plaza de aparcamiento reservada para vehículos que remolcan un remolque." + }, + "13": { + "then": "Esta es una plaza de aparcamiento reservada para coches compartidos." + }, + "2": { + "then": "Esta es una plaza de aparcamiento para discapacitados." + }, + "3": { + "then": "Esta es una plaza de aparcamiento reservada para la carga de vehículos." + }, + "4": { + "then": "Esta es una plaza de aparcamiento reservada para entregas." + }, + "5": { + "then": "Esta es una plaza de aparcamiento reservada para vehículos pesados." + }, + "6": { + "then": "Esta es una plaza de aparcamiento reservada para caravanas o autocaravanas." + }, + "7": { + "then": "Esta es una plaza de aparcamiento reservada para autobuses." + }, + "8": { + "then": "Esta es una plaza de aparcamiento reservada para motocicletas." + }, + "9": { + "then": "Esta es una plaza de aparcamiento reservada para padres con niños." + } + }, + "question": "¿Qué tipo de plaza de aparcamiento es esta?" + } + }, + "title": { + "mappings": { + "0": { + "then": "Plaza de Aparcamiento para Discapacitados" + }, + "1": { + "then": "Plaza de Aparcamiento para Vehículos Eléctricos" + } + }, + "render": "Plaza de Aparcamiento" + } + }, + "parking_ticket_machine": { + "description": "Capa con máquinas expendedoras de tickets de aparcamiento para pagar el aparcamiento.", + "name": "Máquinas de Tickets de Aparcamiento", + "presets": { + "0": { + "title": "una máquina de tickets de aparcamiento" + } + }, + "tagRenderings": { + "ref": { + "freeform": { + "placeholder": "Número de referencia" + }, + "mappings": { + "0": { + "then": "Esta máquina de tickets de aparcamiento no tiene número de referencia" + } + }, + "question": "¿Cuál es el número de referencia de esta máquina de tickets de aparcamiento?", + "render": "Esta máquina de tickets de aparcamiento tiene el número de referencia {ref}" + } + }, + "title": { + "render": "Máquina de Tickets de Aparcamiento" + } + }, + "pedestrian_path": { + "description": "Aceras peatonales, especialmente usadas para navegación interior y para ajustar entradas a esta capa", + "name": "Aceras peatonales", + "snapName": "una acera peatonal" + }, + "pharmacy": { + "description": "Una capa que muestra farmacias, que (probablemente) dispensan medicamentos con receta", + "filter": { + "0": { + "options": { + "0": { + "question": "¿Tiene servicio de auto-recogida?" + } + } + }, + "1": { + "options": { + "0": { + "question": "¿La farmacia puede proporcionar medicamentos con receta?" + } + } + } + }, + "name": "Farmacias", + "presets": { + "0": { + "title": "una farmacia" + } + }, + "tagRenderings": { + "name": { + "freeform": { + "placeholder": "Nombre de la farmacia" + }, + "question": "¿Cuál es el nombre de la farmacia?", + "render": "Esta farmacia se llama {name}" + }, + "wheelchair": { + "mappings": { + "0": { + "then": "Esta farmacia es de fácil acceso en silla de ruedas" + }, + "1": { + "then": "Esta farmacia es de difícil acceso en silla de ruedas" + }, + "2": { + "then": "Esta farmacia tiene acceso limitado para usuarios de silla de ruedas" + } + }, + "question": "¿Es esta farmacia de fácil acceso en silla de ruedas?" + } + }, + "title": { + "mappings": { + "0": { + "then": "Farmacia" + } + }, + "render": "{name}" + } + }, + "physiotherapist": { + "description": "Esta capa muestra fisioterapeutas", + "name": "Fisioterapeuta", + "presets": { + "0": { + "title": "un consultorio de fisioterapia" + } + }, + "tagRenderings": { + "name": { + "question": "¿Cuál es el nombre de este consultorio de fisioterapia?", + "render": "Este consultorio de fisioterapia se llama {name}" + } + }, + "title": { + "render": "Fisioterapeuta {name}" } }, "picnic_table": { - "description": "Una capa que muestra mesas de pícnic", - "name": "Mesas de pícnic", + "description": "La capa que muestra mesas de picnic", + "name": "Mesas de Picnic", "presets": { "0": { - "title": "una mesa de pícnic" + "title": "una mesa de picnic" } }, "tagRenderings": { "picnic_table-material": { "mappings": { "0": { - "then": "Esta es una mesa de pícnic de madera" + "then": "Esta es una mesa de picnic de madera" }, "1": { - "then": "Esta es una mesa de pícnic de hormigón" + "then": "Esta es una mesa de picnic de hormigón" }, "2": { - "then": "Esta es una mesa de picnic hecha de plástico reciclado" + "then": "Esta mesa de picnic está hecha de plástico (reciclado)" + }, + "3": { + "then": "Esta mesa de picnic está hecha de metal" } }, - "question": "¿De qué material está hecha esta mesa de pícnic?", - "render": "Esta mesa de pícnic está hecha de {material}" + "question": "¿De qué material está hecha esta mesa de picnic?", + "render": "Esta mesa de picnic está hecha de {material}" } }, "title": { - "render": "Mesa de pícnic" + "render": "Mesa de Picnic" } }, "playground": { + "deletion": { + "nonDeleteMappings": { + "0": { + "then": "Este es un patio de recreo escolar - una zona (al aire libre) donde los alumnos de una escuela pueden jugar durante el recreo y que no es accesible al público" + } + } + }, + "description": "Parques infantiles", + "name": "Parques Infantiles", + "presets": { + "0": { + "title": "un parque infantil" + } + }, "tagRenderings": { "Playground-wheelchair": { "mappings": { @@ -3653,148 +7618,632 @@ "then": "Completamente accesible para usuarios de silla de ruedas" }, "1": { - "then": "Acceso limitado para usuarios de silla de ruedas" + "then": "Accesibilidad limitada para usuarios de silla de ruedas" }, "2": { - "then": "No accesible a usuarios de sillas de ruedas" + "then": "No accesible para usuarios de silla de ruedas" } - } + }, + "question": "¿Es este parque infantil accesible para usuarios de silla de ruedas?" + }, + "fee": { + "mappings": { + "0": { + "then": "De uso gratuito" + }, + "1": { + "then": "Parque infantil de pago" + } + }, + "question": "¿Hay que pagar para usar este parque infantil?" }, "playground-access": { "mappings": { "0": { - "then": "Accesible al público general" + "then": "Accesible al público en general" + }, + "1": { + "then": "Este es un parque infantil de pago" }, "2": { - "then": "Solo accesible para clientes del negocio que lo opera" + "then": "Solo accesible para clientes del negocio operador" }, "3": { - "then": "Solo accesibles para estudiantes de la escuela" + "then": "Solo accesible para alumnos del colegio" }, "4": { "then": "No accesible" + }, + "5": { + "then": "Este es un patio de recreo escolar - una zona al aire libre donde los alumnos pueden jugar durante sus recreos; pero no es accesible al público en general" } - } + }, + "question": "¿Es este parque infantil accesible al público en general?" }, "playground-email": { + "question": "¿Cuál es la dirección de correo electrónico del mantenedor del parque infantil?", "render": "{email}" }, + "playground-lit": { + "mappings": { + "0": { + "then": "Este parque infantil está iluminado por la noche" + }, + "1": { + "then": "Este parque infantil no está iluminado por la noche" + } + }, + "question": "¿Está iluminado este parque infantil por la noche?" + }, "playground-max_age": { - "render": "Accesible a niños de hasta {max_age}" + "question": "¿Cuál es la edad máxima permitida para acceder a este parque infantil?", + "render": "Accesible a niños de como máximo {max_age}" }, "playground-min_age": { - "render": "Accesible a niños menores de {min_age} años" + "question": "¿Cuál es la edad mínima requerida para acceder a este parque infantil?", + "render": "Accesible a niños mayores de {min_age} años" }, "playground-opening_hours": { "mappings": { "0": { - "then": "Accesible desde el amanecer hasta el anochecer" + "then": "Accesible desde el amanecer hasta el atardecer" }, "1": { "then": "Siempre accesible" } - } + }, + "question": "¿Cuándo es accesible este parque infantil?" }, "playground-operator": { + "question": "¿Quién opera este parque infantil?", "render": "Operado por {operator}" }, "playground-phone": { + "question": "¿Cuál es el número de teléfono del mantenedor del parque infantil?", "render": "{phone}" }, "playground-surface": { "mappings": { "0": { - "then": "La superficie es hierba" + "then": "La superficie es césped" }, "1": { "then": "La superficie es arena" }, + "10": { + "then": "La superficie es grava fina (menos de 2 cm por piedra)" + }, + "2": { + "then": "La superficie consta de corteza de madera" + }, "3": { - "then": "La superficie es de adoquines" + "then": "La superficie es de adoquines" }, "4": { - "then": "La superficie es asfalto" + "then": "La superficie es de asfalto" }, "5": { - "then": "La superficie es hormigón" + "then": "La superficie es de hormigón" }, "6": { - "then": "La superficie está sin pavimentar" + "then": "La superficie es sin pavimentar" }, "7": { "then": "La superficie está pavimentada" + }, + "8": { + "then": "La superficie es de tartán - una superficie sintética, elástica, que se ve típicamente en pistas de atletismo" + }, + "9": { + "then": "La superficie está hecha de goma, como baldosas de goma, mantillo de goma o una gran área de goma" } }, + "question": "¿Cuál es la superficie de este parque infantil?", + "questionHint": "Si hay varias, selecciona la que más se repita", "render": "La superficie es {surface}" } - } - }, - "postboxes": { - "description": "La capa muestra buzones de correo.", - "name": "Buzones de correo", - "presets": { - "0": { - "title": "un buzón de correo" - } }, "title": { - "render": "Buzón de correo" + "mappings": { + "0": { + "then": "Parque Infantil {name}" + } + }, + "render": "Parque Infantil" } }, - "postoffices": { - "description": "Una capa que muestra oficinas postales.", - "name": "Oficinas de correo", + "playground_equipment": { + "description": "Capa que muestra el equipamiento del parque infantil", + "name": "Equipamiento del Parque Infantil", "presets": { "0": { - "title": "una oficina de correo" + "description": "Se te pedirá el tipo exacto más adelante", + "title": "un elemento del parque infantil" } }, "tagRenderings": { - "opening_hours": { + "type": { + "freeform": { + "placeholder": "Tipo de elemento" + }, + "mappings": { + "0": { + "then": "Este es un columpio" + }, + "1": { + "then": "Esta es una estructura que consta de varios elementos de parque infantil conectados" + }, + "10": { + "then": "Este es una tirolina" + }, + "11": { + "then": "Esta es una barra horizontal" + }, + "12": { + "then": "Este es un juego de la rayuela" + }, + "13": { + "then": "Este es un parque acuático" + }, + "14": { + "then": "Este es un muro de escalada" + }, + "15": { + "then": "Este es un mapa" + }, + "16": { + "then": "Este es un puente (ya sea como un elemento independiente o como parte de una estructura más grande)" + }, + "17": { + "then": "Este es un cojín hinchable" + }, + "18": { + "then": "Este es un panel de actividades" + }, + "19": { + "then": "Este es un refugio para adolescentes" + }, + "2": { + "then": "Este es un tobogán" + }, + "20": { + "then": "Este es un embudo que se utiliza para jugar con bolas de embudo" + }, + "21": { + "then": "Este es un círculo giratorio" + }, + "3": { + "then": "Este es un arenero" + }, + "4": { + "then": "Este es un caballito de muelles" + }, + "5": { + "then": "Este es un marco de escalada" + }, + "6": { + "then": "Este es un sube y baja" + }, + "7": { + "then": "Este es una caseta de juegos" + }, + "8": { + "then": "Este es un tiovivo" + }, + "9": { + "then": "Este es un columpio de cesta" + } + }, + "question": "¿Qué tipo de elemento es este?", + "render": "Este es un {playground}" + }, + "wheelchair-access": { "override": { - "question": "¿Cuáles son las horas de apertura para esta oficina postal?" + "question": "¿Es este elemento accesible en silla de ruedas?" } } }, "title": { - "render": "Oficina de Correo" + "render": "Elemento del Parque Infantil" } }, - "public_bookcase": { + "police": { + "description": "Muchos tipos de instalaciones policiales ", + "name": "Comisarías de Policía", + "presets": { + "0": { + "description": "Una oficina de policía donde el público en general puede entrar para realizar consultas", + "title": "una oficina de policía" + }, + "1": { + "description": "Un lugar donde la policía realiza controles a las personas que viajan", + "title": "un puesto de control policial" + }, + "2": { + "description": "Una oficina administrativa de policía sin servicios para el público en general.", + "title": "una oficina administrativa policial" + }, + "3": { + "description": "Una cárcel dirigida por la policía sin servicios públicos. Las personas son detenidas aquí por un corto tiempo (como máximo unos pocos días), por ejemplo, por pequeños delitos menores, alteración del orden público o a la espera de un juicio" + }, + "4": { + "description": "Una base naval o marítima para la policía marítima; a menudo con un muelle y barcos de policía cercanos" + } + }, + "tagRenderings": { + "4_z2nrdhy6tyyh4fd": { + "mappings": { + "0": { + "then": "Esta oficina de policía tiene algunas celdas para detener personas" + }, + "1": { + "then": "Esta oficina de policía no tiene celdas para detener personas" + } + }, + "question": "¿Tiene esta oficina de policía instalaciones de detención?" + }, + "police_name": { + "question": "¿Cuál es el nombre de esta instalación policial?", + "render": "{name}" + } + }, + "title": { + "render": "{name}" + } + }, + "postboxes": { + "description": "La capa que muestra buzones.", + "name": "Buzones", + "presets": { + "0": { + "title": "un buzón" + } + }, + "title": { + "render": "Buzón" + } + }, + "postoffices": { + "description": "Una capa que muestra oficinas de correos.", "filter": { + "1": { + "options": { + "0": { + "question": "¿Ofrece envío de cartas?" + } + } + }, "2": { "options": { "0": { - "question": "Interior o exterior" + "question": "¿Ofrece envío de paquetes?" } } + }, + "3": { + "options": { + "0": { + "question": "¿Ofrece recogida de paquetes perdidos?" + } + } + }, + "4": { + "options": { + "0": { + "question": "¿Acepta la recogida de paquetes enviados aquí?" + } + } + }, + "5": { + "options": { + "0": { + "question": "¿Vende sellos?" + } + } + } + }, + "name": "Oficinas de Correos", + "presets": { + "0": { + "title": "una oficina de correos" + } + }, + "tagRenderings": { + "has_atm": { + "mappings": { + "0": { + "then": "Esta oficina de correos tiene un cajero automático" + }, + "1": { + "then": "Esta oficina de correos no tiene un cajero automático" + }, + "2": { + "then": "Esta oficina de correos tiene un cajero automático, pero está mapeado como un icono diferente" + } + }, + "question": "¿Tiene esta oficina de correos un cajero automático?" + }, + "letter-from": { + "mappings": { + "0": { + "then": "Puedes echar cartas aquí" + }, + "1": { + "then": "No puedes echar cartas aquí" + } + }, + "question": "¿Puedes echar una carta aquí?", + "render": "Puedes echar cartas con estas empresas: {post_office:letter_from}" + }, + "opening_hours": { + "override": { + "question": "¿Cuál es el horario de atención de esta oficina de correos?" + } + }, + "parcel-from": { + "mappings": { + "0": { + "then": "Puedes enviar paquetes aquí" + }, + "1": { + "then": "No puedes enviar paquetes aquí" + } + }, + "question": "¿Puedes enviar un paquete aquí?", + "render": "Puedes enviar paquetes con estas empresas: {post_office:parcel_from}" + }, + "parcel-pickup": { + "mappings": { + "0": { + "then": "Puedes recoger paquetes perdidos aquí" + }, + "1": { + "then": "No puedes recoger paquetes perdidos aquí" + } + }, + "question": "¿Puedes recoger paquetes perdidos aquí?", + "render": "Puedes recoger paquetes de estas empresas: {post_office:parcel_pickup}" + }, + "parcel-to": { + "mappings": { + "0": { + "then": "Puedes enviar paquetes aquí para su recogida" + }, + "1": { + "then": "No puedes enviar paquetes aquí para su recogida" + } + }, + "question": "¿Puedes enviar paquetes aquí para su recogida?", + "render": "Puedes enviar paquetes aquí para su recogida con estas empresas: {post_office:parcel_to}" + }, + "partner-brand": { + "mappings": { + "0": { + "then": "Este lugar ofrece servicios para DHL" + }, + "1": { + "then": "Este lugar ofrece servicios para DPD" + }, + "2": { + "then": "Este lugar ofrece servicios para GLS" + }, + "3": { + "then": "Este lugar ofrece servicios para UPS" + }, + "4": { + "then": "Este lugar es un DHL Paketshop" + }, + "5": { + "then": "Este lugar es un Hermes PaketShop" + }, + "6": { + "then": "Este lugar es un punto de PostNL" + }, + "7": { + "then": "Este lugar ofrece servicios para bpost" + } + }, + "question": "¿Para qué marca ofrece servicios este lugar?", + "render": "Este lugar ofrece servicios para {post_office:brand}" + }, + "post_offic_brand": { + "freeform": { + "placeholder": "Marca de la oficina de correos" + }, + "question": "¿A qué marca pertenece esta oficina de correos?", + "render": "Esta es una oficina de correos {brand}" + }, + "post_partner": { + "mappings": { + "0": { + "then": "Esta tienda es un socio postal" + }, + "1": { + "then": "Esta tienda no es un socio postal" + } + }, + "question": "¿Es un socio postal?" + }, + "stamps": { + "mappings": { + "0": { + "then": "Puedes comprar sellos aquí" + }, + "1": { + "then": "No puedes comprar sellos aquí" + } + }, + "question": "¿Puedes comprar sellos aquí?", + "render": "Puedes comprar sellos de las empresas: {post_office:stamps}" + } + }, + "title": { + "mappings": { + "0": { + "then": "Socio postal en una tienda" + }, + "1": { + "then": "Socio postal en {name}" + } + }, + "render": "Oficina de Correos" + } + }, + "public_bookcase": { + "description": "Un armario callejero con libros, accesible para cualquiera", + "filter": { + "0": { + "options": { + "0": { + "question": "¿Tiene libros infantiles?" + } + } + }, + "1": { + "options": { + "0": { + "question": "¿Tiene libros para adultos?" + } + } + }, + "2": { + "options": { + "0": { + "question": "¿Interior o exterior?" + }, + "1": { + "question": "¿Situado en el interior?" + }, + "2": { + "question": "¿Situado en el exterior?" + } + } + } + }, + "name": "Libreros", + "presets": { + "0": { + "title": "un librero" } }, "tagRenderings": { "bookcase-booktypes": { "mappings": { "0": { - "then": "Mayoritariamente libros infantiles" + "then": "Mayormente libros infantiles" }, "1": { - "then": "Mayoritariamente libros para adultos" + "then": "Mayormente libros para adultos" } - } + }, + "question": "¿Qué tipo de libros se pueden encontrar en este librero público?", + "render": "Este lugar sirve principalmente para {books}" }, "bookcase-is-accessible": { "mappings": { "0": { - "then": "Accesible públicamente" + "then": "Accesible al público" }, "1": { - "then": "Solo accesible a clientes" + "then": "Solo accesible para clientes" + } + }, + "question": "¿Es este librero público de libre acceso?" + }, + "bookcase-is-indoors": { + "mappings": { + "0": { + "then": "Este librero está situado en el interior" + }, + "1": { + "then": "Este librero está situado en el exterior" + }, + "2": { + "then": "Este librero está situado en el exterior" + } + }, + "question": "¿Está este librero situado en el exterior?" + }, + "public_bookcase-brand": { + "freeform": { + "placeholder": "Nombre de la red" + }, + "mappings": { + "0": { + "then": "Este librero público no forma parte de una red más grande" + } + }, + "question": "¿Forma parte este librero público de una red más grande?", + "render": "Este librero público forma parte de {brand}" + }, + "public_bookcase-capacity": { + "question": "¿Cuántos libros caben en este librero público?", + "render": "En este librero caben {capacity} libros" + }, + "public_bookcase-name": { + "mappings": { + "0": { + "then": "Este librero no tiene nombre" + } + }, + "question": "¿Cuál es el nombre de este librero público?", + "render": "El nombre de este librero es {name}" + }, + "public_bookcase-operator": { + "question": "¿Quién mantiene este librero público?", + "render": "Operado por {operator}" + }, + "public_bookcase-ref": { + "mappings": { + "0": { + "then": "Este librero no forma parte de una red más grande" + } + }, + "question": "¿Cuál es el número de referencia de este librero público?", + "render": "El número de referencia de este librero público dentro de {brand} es {ref}" + }, + "public_bookcase-start_date": { + "question": "¿Cuándo se instaló este librero público?", + "render": "Instalado el {start_date}" + }, + "public_bookcase-website": { + "question": "¿Hay un sitio web con más información sobre este librero público?", + "render": { + "special": { + "text": "Más información en la web" } } } + }, + "title": { + "mappings": { + "0": { + "then": "Librero Público {name}" + } + }, + "render": "Librero" } }, "questions": { "tagRenderings": { + "brand": { + "mappings": { + "0": { + "then": "No forma parte de una marca más grande" + } + }, + "question": "¿Forma parte {title()} de una marca más grande?", + "render": "Parte de {brand}" + }, + "check_date": { + "mappings": { + "0": { + "then": "Este objeto se revisó por última vez hoy" + } + }, + "question": "¿Cuándo se revisó este objeto por última vez?", + "render": "Este objeto se revisó por última vez el {check_date}" + }, "denominations-coins": { "mappings": { "0": { @@ -3803,6 +8252,21 @@ "1": { "then": "Se aceptan monedas de 2 céntimos" }, + "10": { + "then": "Se aceptan monedas de 20 céntimos" + }, + "11": { + "then": "Se aceptan monedas de ½ franco" + }, + "12": { + "then": "Se aceptan monedas de 1 franco" + }, + "13": { + "then": "Se aceptan monedas de 2 francos" + }, + "14": { + "then": "Se aceptan monedas de 5 francos" + }, "2": { "then": "Se aceptan monedas de 5 céntimos" }, @@ -3820,9 +8284,15 @@ }, "7": { "then": "Se aceptan monedas de 2 euros" + }, + "8": { + "then": "Se aceptan monedas de 5 céntimos" + }, + "9": { + "then": "Se aceptan monedas de 10 céntimos" } }, - "question": "¿Qué monedas se pueden usar aquí para pagar?" + "question": "¿Qué monedas se pueden usar para pagar aquí?" }, "denominations-notes": { "mappings": { @@ -3832,6 +8302,15 @@ "1": { "then": "Se aceptan billetes de 10 euros" }, + "10": { + "then": "Se aceptan billetes de 100 francos" + }, + "11": { + "then": "Se aceptan billetes de 200 francos" + }, + "12": { + "then": "Se aceptan billetes de 1000 francos" + }, "2": { "then": "Se aceptan billetes de 20 euros" }, @@ -3846,44 +8325,83 @@ }, "6": { "then": "Se aceptan billetes de 500 euros" + }, + "7": { + "then": "Se aceptan billetes de 10 francos" + }, + "8": { + "then": "Se aceptan billetes de 20 francos" + }, + "9": { + "then": "Se aceptan billetes de 50 francos" } }, - "question": "¿con qué billetes se puede pagar aquí?" + "question": "¿Qué billetes se pueden usar para pagar aquí?" }, "description": { - "question": "¿Aún hay algo relevante que no ha encajado en las preguntas anteriores? Compártalo aquí.", - "questionHint": "No repita datos ya expresados" + "question": "¿Hay alguna información relevante que las preguntas anteriores no hayan cubierto? Siéntete libre de añadirla aquí.", + "questionHint": "No repitas datos ya mencionados" }, "dog-access": { "mappings": { "0": { - "then": "Se permiten perros" + "then": "Se admiten perros" }, "1": { - "then": "No se permiten perros" + "then": "Los perros no están permitidos" }, "2": { - "then": "Los perros están permitidos, pero tienen que llevar correa" + "then": "Se admiten perros, pero deben ir con correa" }, "3": { - "then": "Los perros están permitidos y pueden estar sueltos" + "then": "Se admiten perros y pueden correr libremente" + }, + "4": { + "then": "Solo se admiten perros en el exterior" } }, - "question": "¿Están permitidos los perros en este negocio?" + "question": "¿Se admiten perros en este negocio?" }, "email": { + "editButtonAriaLabel": "Editar dirección de correo electrónico", "question": "¿Cuál es la dirección de correo electrónico de {title()}?" }, + "facebook": { + "question": "¿Cuál es la página de Facebook de {title()}", + "render": { + "after": "
Se sabe que Facebook perjudica la salud mental, manipula la opinión pública y causa odio. Prueba alternativas más saludables
", + "special": { + "text": "Página de Facebook" + } + } + }, + "gluten_free": { + "mappings": { + "0": { + "then": "Esta tienda solo vende productos sin gluten" + }, + "1": { + "then": "Esta tienda tiene una gran oferta de productos sin gluten" + }, + "2": { + "then": "Esta tienda tiene una oferta limitada de productos sin gluten" + }, + "3": { + "then": "Esta tienda no tiene oferta de productos sin gluten" + } + }, + "question": "¿Tiene esta tienda una oferta de productos sin gluten?" + }, "induction-loop": { "mappings": { "0": { - "then": "Este lugar tiene un bucle auditivo" + "then": "Este lugar tiene una bobina de inducción de audio" }, "1": { - "then": "Este lugar no tiene bucle auditivo" + "then": "Este lugar no tiene una bobina de inducción de audio" } }, - "question": "¿Este lugar tiene un bucle auditivo para personas con discapacidad auditiva?" + "question": "¿Tiene este lugar una bobina de inducción de audio para personas con audición reducida?" }, "internet": { "mappings": { @@ -3897,10 +8415,13 @@ "then": "Este lugar ofrece acceso a internet" }, "3": { - "then": "Este lugar ofrece acceso a internet a través de una terminal o un ordenador" + "then": "Este lugar ofrece acceso a internet a través de un terminal o computadora" }, "4": { "then": "Este lugar ofrece acceso a internet por cable" + }, + "5": { + "then": "Este lugar ofrece internet inalámbrico y acceso a internet a través de un terminal o computadora" } }, "question": "¿Ofrece este lugar acceso a internet?" @@ -3908,56 +8429,102 @@ "internet-fee": { "mappings": { "0": { - "then": "Hay que pagar para acceder a internet en este lugar" + "then": "Hay un cargo por el acceso a internet en este lugar" }, "1": { "then": "El acceso a internet es gratuito en este lugar" }, "2": { - "then": "El acceso a internet es gratis en este lugar, solamente para clientes" + "then": "El acceso a internet es gratuito en este lugar, solo para clientes" } }, - "question": "¿Hay que pagar para acceder a internet?" + "question": "¿Hay un cargo por el acceso a internet?" }, "internet-ssid": { "freeform": { - "placeholder": "Introduzca el nombre de red" + "placeholder": "Introduce el nombre de la red" }, - "question": "¿Cuál es el nombre de red para el acceso inalámbrico a internet?", - "render": "El nombre de red es {internet_access:ssid}" + "question": "¿Cuál es el nombre de la red para el acceso inalámbrico a internet?", + "render": "El nombre de la red es {internet_access:ssid}" + }, + "just_created": { + "mappings": { + "0": { + "then": "¡Acabas de crear este elemento! Gracias por compartir esta información con el mundo y ayudar a personas en todo el mundo." + } + } + }, + "lactose_free": { + "mappings": { + "0": { + "then": "Solo vende productos sin lactosa" + }, + "1": { + "then": "Gran oferta de productos sin lactosa" + }, + "2": { + "then": "Oferta limitada de productos sin lactosa" + }, + "3": { + "then": "No hay oferta de productos sin lactosa" + } + }, + "question": "¿Tiene {title()} una oferta sin lactosa?" + }, + "last_edit": { + "render": { + "special": { + "text": "Última edición el {_last_edit:timestamp} por {_last_edit:contributor}" + } + } }, "luminous_or_lit": { "mappings": { "0": { - "then": "Este objeto emite luz y es también iluminado por una fuente de luz externa" + "then": "Este objeto emite luz y está iluminado por una fuente de luz externa" }, "1": { "then": "Este objeto emite luz" }, "2": { - "then": "Este objeto recibe iluminación, por ejemplo por un foco u otras luces" + "then": "Este objeto está iluminado externamente, por ejemplo, por un foco u otras luces" }, "3": { - "then": "Este objeto ni emite luz ni es iluminado" + "then": "Este objeto no emite luz y no está iluminado externamente" } }, - "question": "¿Está este objeto iluminado o emite luz?" + "question": "¿Está iluminado este objeto o emite luz?" + }, + "mastodon": { + "question": "¿Cuál es el identificador de Mastodon de {title()}?" }, "multilevels": { "override": { - "question": "¿A qué pisos va este ascensor?", - "render": "Este ascensor va a los pisos {level}" + "question": "¿A qué plantas va este ascensor?", + "render": "Este ascensor va a las plantas {level}" + } + }, + "nothing_known": { + "render": { + "special": { + "text": "No se sabe nada sobre este lugar. Ayuda completando las preguntas" + } } }, "opening_hours": { - "question": "¿Cuales son las horas de apertura de {title()}?", - "render": "

Horas de apertura

{opening_hours_table(opening_hours)}" + "mappings": { + "0": { + "then": "Marcado como cerrado por un tiempo no especificado" + } + }, + "question": "¿Cuál es el horario de apertura de {title()}?", + "render": "

Horario de apertura

{opening_hours_table(opening_hours)}" }, "opening_hours_24_7": { "override": { "+mappings": { "0": { - "then": "Abierta 24/7 (incluyendo festivos)" + "then": "Abierto 24/7 (incluidos los festivos)" } } } @@ -3966,10 +8533,10 @@ "override": { "+mappings": { "0": { - "then": "Sólo con cita previa" + "then": "Solo con cita previa" }, "1": { - "then": "Sólo con cita previa" + "then": "Solo con cita previa" } } } @@ -3977,13 +8544,13 @@ "payment-options": { "mappings": { "0": { - "then": "Aquí se acepta el pago en efectivo" + "then": "Aquí se acepta efectivo" }, "1": { - "then": "Aquí se acepta el pago por tarjeta" + "then": "Aquí se aceptan tarjetas de pago" }, "2": { - "then": "Aquí se puede pagar con código QR" + "then": "Aquí es posible pagar con código QR" } }, "question": "¿Qué métodos de pago se aceptan aquí?" @@ -3992,10 +8559,10 @@ "override": { "mappings+": { "0": { - "then": "El pago se realiza con una aplicación dedicada" + "then": "El pago se realiza utilizando una aplicación dedicada" }, "1": { - "then": "El pago se realiza con una tarjeta de membresía" + "then": "El pago se realiza utilizando una tarjeta de socio" } } } @@ -4019,95 +8586,253 @@ } }, "phone": { + "editButtonAriaLabel": "Editar número de teléfono", "question": "¿Cuál es el número de teléfono de {title()}?" }, + "qr_code": { + "render": { + "after": "Escanea este código para abrir esta ubicación en otro dispositivo" + } + }, + "repeated": { + "render": "Se pueden encontrar varios objetos idénticos en las plantas {repeat_on}." + }, + "seasonal": { + "mappings": { + "0": { + "then": "Disponible todo el año" + }, + "1": { + "then": "Solo disponible en verano" + }, + "2": { + "then": "Cerrado durante el invierno" + } + }, + "question": "¿Está {title()} disponible todo el año?" + }, "service:electricity": { "mappings": { "0": { - "then": "Hay numerosos enchufes domésticos disponibles para los clientes sentados en el interior, donde pueden cargar sus dispositivos electrónicos" + "then": "Hay muchos enchufes domésticos disponibles para los clientes sentados en el interior, donde pueden cargar sus dispositivos electrónicos" }, "1": { "then": "Hay algunos enchufes domésticos disponibles para los clientes sentados en el interior, donde pueden cargar sus dispositivos electrónicos" }, "2": { - "then": "No hay enchufes disponibles en el interior para los clientes, pero cargar puede ser posible si se pregunta al personal" + "then": "No hay enchufes disponibles en el interior para los clientes, pero es posible cargar si se solicita al personal" }, "3": { "then": "No hay enchufes domésticos disponibles para los clientes sentados en el interior" } }, - "question": "¿Esta facilidad tiene enchufes eléctricos, disponibles para los clientes cuando están dentro?" + "question": "¿Tiene este servicio enchufes eléctricos disponibles para los clientes cuando están en el interior?" + }, + "share": { + "render": { + "special": { + "text": "Compartir esta ubicación" + } + } + }, + "shower": { + "mappings": { + "0": { + "then": "Esta instalación tiene duchas con agua caliente" + }, + "1": { + "then": "Esta instalación tiene duchas, pero el agua no está caliente" + }, + "2": { + "then": "Esta instalación tiene duchas" + }, + "3": { + "then": "Esta instalación no ofrece ducha" + } + }, + "question": "¿Ofrece esta instalación duchas?" }, "single_level": { "mappings": { "0": { - "then": "Localizado bajo tierra" + "then": "Situado bajo tierra" }, "1": { - "then": "Localizado en la planta baja" + "then": "Situado en la planta baja" }, "2": { - "then": "Localizado en la planta baja" + "then": "Situado en la planta baja" }, "3": { - "then": "Localizado en la primera planta" + "then": "Situado en la primera planta" }, "4": { - "then": "Localizada en el primer sótano" + "then": "Situado en el primer sótano" } }, - "question": "¿En qué nivel se encuentra esta característica?", - "render": "Localizada en la {level}° planta" + "question": "¿En qué planta se encuentra este elemento?", + "render": "Situado en la planta {level}" }, "smoking": { "mappings": { "0": { - "then": "Está permitido fumar" + "then": "Se permite fumar" }, "1": { - "then": "No está permitido fumar" + "then": "No se permite fumar" }, "2": { - "then": "Está permitido fumar en el exterior." + "then": "Se permite fumar en el exterior." } }, "question": "¿Está permitido fumar en {title()}?" }, + "sugar_free": { + "mappings": { + "0": { + "then": "Esta tienda solo vende productos sin azúcar" + }, + "1": { + "then": "Esta tienda tiene una gran oferta de productos sin azúcar" + }, + "2": { + "then": "Esta tienda tiene una oferta limitada de productos sin azúcar" + }, + "3": { + "then": "Esta tienda no tiene oferta de productos sin azúcar" + } + }, + "question": "¿Tiene esta tienda una oferta de productos sin azúcar?", + "questionHint": "Esto es importante para las personas que siguen una dieta sin azúcar, como las personas con diabetes" + }, + "survey_date": { + "mappings": { + "0": { + "then": "Este objeto fue inspeccionado por última vez hoy" + } + }, + "question": "¿Cuándo fue inspeccionado este objeto por última vez?", + "render": "Este objeto fue inspeccionado por última vez el {survey:date}" + }, + "vegan": { + "mappings": { + "0": { + "then": "Este lugar solo vende productos veganos" + }, + "1": { + "then": "Esta tienda tiene una gran oferta vegana" + }, + "2": { + "then": "Esta tienda tiene una oferta vegana limitada" + }, + "3": { + "then": "Esta tienda no tiene oferta vegana" + } + }, + "question": "¿Ofrece este lugar una opción vegana?" + }, "website": { - "question": "¿Cual es el sitio web de {title()}?" + "editButtonAriaLabel": "Editar sitio web", + "question": "¿Cuál es el sitio web de {title()}?" }, "wheelchair-access": { "mappings": { "0": { - "then": "Este lugar está especialmente adaptado para usuarios en sillas de ruedas" + "then": "Este lugar está especialmente adaptado para usuarios de sillas de ruedas" }, "1": { - "then": "Este lugar es fácilmente accesible con una silla de ruedas" + "then": "Este lugar es fácilmente accesible en silla de ruedas" }, "2": { - "then": "Es posible llegar a este lugar con una silla de ruedas, pero no es fácil" + "then": "Es posible acceder a este lugar en silla de ruedas, pero no es fácil" }, "3": { - "then": "No es posible llegar a este lugar con una silla de ruedas" + "then": "Este lugar no es accesible en silla de ruedas" } }, - "question": "¿Este lugar es accesible con una silla de ruedas?" + "question": "¿Es este lugar accesible en silla de ruedas?" }, "wikipedia": { "mappings": { "0": { - "then": "Todavía no se ha enlazado una página de wikipedia" + "then": "Aún no se ha enlazado ninguna página de Wikipedia" }, "1": { - "then": "Todavía no se ha enlazado una página de wikipedia" + "then": "Aún no se ha enlazado ninguna página de Wikipedia" } }, - "question": "¿Cual es la entidad de Wikidata que se corresponde?" + "question": "¿Cuál es la entidad Wikidata correspondiente?" } } }, + "railway_platforms": { + "description": "Encuentra cada andén en la estación y las rutas de tren que los utilizan.", + "name": "Andenes de tren", + "tagRenderings": { + "ref": { + "freeform": { + "placeholder": "Número de andén" + }, + "question": "¿Cuál es el número de este andén?", + "render": "Andén {ref}" + } + }, + "title": { + "mappings": { + "0": { + "then": "Andén {ref}" + } + }, + "render": "Andén" + } + }, "rainbow_crossings": { - "description": "Una capa que muestra cruces peatonales con pinturas arco iris" + "description": "Una capa que muestra los pasos de peatones con pinturas de arcoíris", + "name": "Pasos de peatones con pinturas de arcoíris", + "presets": { + "0": { + "description": "Paso de peatones", + "title": "un paso de peatones" + } + }, + "tagRenderings": { + "crossing-with-rainbow": { + "mappings": { + "0": { + "then": "Este paso de peatones tiene pinturas de arcoíris" + }, + "1": { + "then": "No hay pinturas de arcoíris aquí" + }, + "2": { + "then": "No hay pinturas de arcoíris aquí" + } + }, + "question": "¿Tiene este paso de peatones pinturas de arcoíris?" + } + }, + "title": { + "render": "Paso de peatones" + } + }, + "reception_desk": { + "description": "Una capa que muestra dónde están las recepciones y que solicita información de accesibilidad", + "name": "Recepciones", + "presets": { + "0": { + "title": "una recepción" + } + }, + "tagRenderings": { + "desk-height": { + "question": "¿Cuál es la altura del mostrador de recepción? ", + "questionHint": "Esto se mide desde el suelo hasta la parte más baja utilizable del mostrador", + "render": "La altura del mostrador es {canonical(desk:height)}" + } + }, + "title": { + "render": "Recepción" + } }, "recycling": { "description": "Una capa con contenedores y centros de reciclaje", @@ -4115,20 +8840,20 @@ "1": { "options": { "0": { - "question": "Todos los tipos de reciclado" + "question": "Todos los tipos de reciclaje" } } }, "2": { "options": { "0": { - "question": "Todos los tipos de reciclado" + "question": "Solo acceso público" }, "1": { - "question": "Reciclaje de baterías" + "question": "Reciclaje de pilas" }, "10": { - "question": "Reciclaje de cristal" + "question": "Reciclaje de vidrio" }, "11": { "question": "Reciclaje de bombillas" @@ -4140,10 +8865,10 @@ "question": "Reciclaje de papel" }, "14": { - "question": "Reciclaje de botellas de papel" + "question": "Reciclaje de botellas de plástico" }, "15": { - "question": "Reciclaje de embalajes plásticos" + "question": "Reciclaje de envases de plástico" }, "16": { "question": "Reciclaje de plástico" @@ -4152,7 +8877,22 @@ "question": "Reciclaje de chatarra" }, "18": { - "question": "Reciclaje de pequeños electrodomésticos" + "question": "Reciclaje de pequeños aparatos eléctricos" + }, + "19": { + "question": "Reciclaje de residuos" + }, + "2": { + "question": "Reciclaje de envases de bebidas" + }, + "20": { + "question": "Reciclaje de cartuchos de impresora" + }, + "21": { + "question": "Reciclaje de bicicletas" + }, + "22": { + "question": "Reciclaje de envases de plástico, envases metálicos y envases de bebidas (PMD)" }, "3": { "question": "Reciclaje de latas" @@ -4166,11 +8906,21 @@ "6": { "question": "Reciclaje de aceite de motor" }, + "7": { + "question": "Reciclaje de tubos fluorescentes" + }, "8": { - "question": "Reciclaje de residuos orgánicos" + "question": "Reciclaje de residuos verdes" }, "9": { - "question": "Reciclaje de botellas de cristal" + "question": "Reciclaje de botellas de vidrio" + } + } + }, + "3": { + "options": { + "0": { + "question": "Solo acceso público" } } } @@ -4181,85 +8931,127 @@ "title": "un contenedor de reciclaje" }, "1": { - "title": "un centro de reciclado" + "title": "un centro de reciclaje" } }, "tagRenderings": { + "access": { + "mappings": { + "0": { + "then": "Cualquiera puede usar esta instalación de reciclaje" + }, + "1": { + "then": "Solo los residentes pueden usar esta instalación de reciclaje" + }, + "2": { + "then": "Esta instalación de reciclaje es solo para uso privado" + } + }, + "question": "¿Quién puede usar esta instalación de reciclaje?", + "render": "Esta instalación de reciclaje puede ser usada por {access}" + }, "container-location": { "mappings": { "0": { - "then": "Este es un contenedor bajo tierra" + "then": "Este es un contenedor subterráneo" }, "1": { - "then": "Este contenedor se sitúa en el interior" + "then": "Este contenedor está ubicado en el interior" }, "2": { - "then": "Este contenedor se sitúa en el exterior" + "then": "Este contenedor está ubicado en el exterior" } }, - "question": "¿Dónde se sitúa este contenedor?" + "question": "¿Dónde está ubicado este contenedor?" }, "opening_hours_24_7": { "override": { - "question": "¿A qué horas abre esta facilidad de reciclado?" + "question": "¿Cuál es el horario de apertura de esta instalación de reciclaje?" } }, "operator": { - "question": "¿Que empresa opera esta facilidad de reciclado?", - "render": "Esta infraestructura de reciclado la opera {operator}" + "question": "¿Qué empresa opera esta instalación de reciclaje?", + "render": "Esta instalación de reciclaje está operada por {operator}" }, "recycling-accepts": { "mappings": { "0": { - "then": "Aquí se pueden reciclar baterías" + "then": "Las pilas se pueden reciclar aquí" + }, + "1": { + "then": "Los envases de bebidas se pueden reciclar aquí" }, "10": { - "then": "Aquí se puede reciclar cristal" + "then": "El vidrio se puede reciclar aquí" }, "11": { - "then": "Las bombillas pueden reciclarse aquí" + "then": "Las bombillas se pueden reciclar aquí" }, "12": { - "then": "Aquí se pueden reciclar periódicos" + "then": "Los periódicos se pueden reciclar aquí" }, "13": { - "then": "Aquí se puede reciclar papel" + "then": "El papel se puede reciclar aquí" }, "14": { - "then": "Aquí se pueden reciclar botellas de plástico" + "then": "Las botellas de plástico se pueden reciclar aquí" }, "15": { - "then": "Aquí se pueden reciclar embalajes plásticos" + "then": "Los envases de plástico se pueden reciclar aquí" }, "16": { - "then": "Aquí se puede reciclar plástico" + "then": "El plástico se puede reciclar aquí" + }, + "17": { + "then": "Los envases de plástico, los envases metálicos y los envases de bebidas (PMD) se pueden reciclar aquí" + }, + "18": { + "then": "Los cartuchos de impresora se pueden reciclar aquí" }, "19": { - "then": "Aquí se puede reciclar chatarra" + "then": "La chatarra se puede reciclar aquí" }, "2": { - "then": "Aquí se pueden reciclar latas" + "then": "Las latas se pueden reciclar aquí" }, "20": { - "then": "El calzado se puede reciclar aquí" + "then": "Los zapatos se pueden reciclar aquí" + }, + "21": { + "then": "Los pequeños aparatos eléctricos se pueden reciclar aquí" + }, + "22": { + "then": "Los pequeños aparatos eléctricos se pueden reciclar aquí" + }, + "23": { + "then": "Las agujas se pueden reciclar aquí" + }, + "24": { + "then": "Los residuos se pueden reciclar aquí" + }, + "25": { + "then": "Las bicicletas se pueden reciclar aquí" }, "3": { - "then": "Aquí se puede reciclar ropa" + "then": "La ropa se puede reciclar aquí" }, "4": { - "then": "Aquí se puede reciclar aceite de cocina" + "then": "El aceite de cocina se puede reciclar aquí" }, "5": { - "then": "Aquí se puede reciclar aceite de motor" + "then": "El aceite de motor se puede reciclar aquí" + }, + "6": { + "then": "Los tubos fluorescentes se pueden reciclar aquí" }, "7": { - "then": "Los residuos orgánicos pueden reciclarse aquí" + "then": "Los residuos verdes se pueden reciclar aquí" }, "8": { - "then": "Aquí se pueden reciclar residuos orgánicos" + "then": "Los residuos orgánicos se pueden reciclar aquí" }, "9": { - "then": "Aquí se pueden reciclar botellas de cristal" + "then": "Las botellas de vidrio se pueden reciclar aquí" } }, "question": "¿Qué se puede reciclar aquí?" @@ -4270,18 +9062,28 @@ "then": "Este centro de reciclaje no tiene un nombre específico" } }, - "question": "¿Cual es el nombre de este centro de reciclaje?", + "question": "¿Cuál es el nombre de este centro de reciclaje?", "render": "Este centro de reciclaje se llama {name}" }, "recycling-type": { "mappings": { "0": { - "then": "Esto es un contenedor de reciclaje" + "then": "Este es un contenedor de reciclaje" }, "1": { - "then": "Esto es un centro de reciclaje" + "then": "Este es un centro de reciclaje" + }, + "2": { + "then": "Contenedor de residuos para residuos" + }, + "3": { + "then": "Este es un punto de recogida. El material de desecho se coloca aquí sin colocarlo en un contenedor específico." + }, + "4": { + "then": "Este es un vertedero donde se apila el material de desecho." } - } + }, + "question": "¿Qué tipo de reciclaje es este?" } }, "title": { @@ -4299,19 +9101,249 @@ "render": "Instalación de reciclaje" } }, + "route_marker": { + "description": "Los marcadores de ruta son pequeños marcadores que a menudo se encuentran a lo largo de rutas oficiales de senderismo/ciclismo/equitación/esquí para indicar la dirección de la ruta.", + "name": "Marcadores de ruta", + "presets": { + "0": { + "description": "Un marcador de ruta es un pequeño marcador que a menudo se encuentra a lo largo de rutas oficiales de senderismo/ciclismo/equitación/esquí para indicar la dirección de la ruta.", + "title": "un marcador de ruta" + } + }, + "tagRenderings": { + "type": { + "mappings": { + "0": { + "then": "Este es un marcador de ruta para una ruta ciclista." + }, + "1": { + "then": "Este es un marcador de ruta para una ruta de senderismo." + }, + "2": { + "then": "Este es un marcador de ruta para una ruta de bicicleta de montaña." + }, + "3": { + "then": "Este es un marcador de ruta para una ruta ecuestre." + }, + "4": { + "then": "Este es un marcador de ruta para una ruta de esquí." + } + }, + "question": "¿Para qué tipo de ruta es este marcador?" + } + }, + "title": { + "render": "Marcador de ruta" + } + }, + "school": { + "name": "Escuelas primarias y secundarias", + "presets": { + "0": { + "title": "una escuela primaria o secundaria" + } + }, + "tagRenderings": { + "capacity": { + "question": "¿Cuántos alumnos como máximo pueden matricularse en esta escuela?", + "render": "Esta escuela puede matricular como máximo {capacity} alumnos" + }, + "education-level-belgium": { + "mappings": { + "0": { + "then": "Esta es una escuela con una sección de jardín de infancia donde los niños pequeños reciben educación que prepara la lectura y la escritura." + }, + "1": { + "then": "Esta es una escuela donde se aprenden habilidades primarias como la alfabetización básica y las habilidades numéricas.
Los alumnos normalmente se matriculan desde los 6 años hasta los 12 años
" + }, + "2": { + "then": "Esta es una escuela secundaria que ofrece todos los grados" + }, + "3": { + "then": "Esta es una escuela secundaria que no tiene todos los grados, pero ofrece el primero y segundo grado" + }, + "4": { + "then": "Esta es una escuela secundaria que no tiene todos los grados, pero ofrece el tercero y cuarto grado" + }, + "5": { + "then": "Esta es una escuela secundaria que no tiene todos los grados, pero ofrece el quinto y sexto grado" + }, + "6": { + "then": "Esta escuela ofrece educación postsecundaria (por ejemplo, un séptimo u octavo año de especialización)" + } + }, + "question": "¿Qué nivel de educación se imparte en esta escuela?" + }, + "gender": { + "mappings": { + "0": { + "then": "Tanto niños como niñas pueden matricularse aquí y tener clases juntos" + }, + "1": { + "then": "Tanto niños como niñas pueden matricularse aquí, pero están separados (por ejemplo, tienen clases en diferentes aulas o en diferentes horarios)" + }, + "2": { + "then": "Esta es una escuela solo para niños" + }, + "3": { + "then": "Esta es una escuela solo para niñas" + } + }, + "question": "¿Qué géneros pueden matricularse en esta escuela?" + }, + "pedagogy": { + "mappings": { + "0": { + "then": "Esta escuela no utiliza una pedagogía específica" + }, + "1": { + "then": "Esta escuela utiliza el método Montessori de educación" + }, + "2": { + "then": "Esta escuela está asociada con el Movimiento de Escuelas Modernas Freinet" + }, + "3": { + "then": "Esta escuela utiliza el concepto de enseñanza Jenaplan" + }, + "4": { + "then": "Esta escuela utiliza la filosofía educativa Waldorf/Steiner" + }, + "5": { + "then": "Esta escuela utiliza el concepto de enseñanza del plan Dalton" + }, + "6": { + "then": "Esta escuela utiliza el aprendizaje al aire libre" + }, + "7": { + "then": "Esta escuela utiliza el enfoque Reggio Emilia" + }, + "8": { + "then": "Esta escuela utiliza el sistema Sudbury" + } + }, + "question": "¿Qué teoría educativa se aplica en esta escuela?", + "render": "Esta escuela utiliza {pedagogy}" + }, + "school-language": { + "render": { + "special": { + "no_known_languages": "Se desconoce el idioma principal de esta escuela", + "question": "¿Cuál es el idioma principal de esta escuela?
¿Qué idioma se habla con los alumnos en los cursos no relacionados con el idioma y con la administración?
", + "render_all": "Los siguientes idiomas se utilizan en esta escuela:{list()}", + "render_single_language": "{language()} es el idioma principal de esta escuela" + } + } + }, + "school-name": { + "question": "¿Cómo se llama esta escuela?", + "render": "Esta escuela se llama {name}" + }, + "target-audience": { + "mappings": { + "0": { + "then": "Esta es una escuela donde los alumnos estudian habilidades en su nivel adecuado para su edad.
Hay pocas o ninguna instalación especial para atender a alumnos con necesidades especiales o las instalaciones son improvisadas
" + }, + "1": { + "then": "Esta es una escuela para alumnos sin necesidades especiales
Esto incluye alumnos que pueden seguir los cursos con pequeñas medidas improvisadas
" + }, + "2": { + "then": "Esta es una escuela donde se enseñan habilidades a adultos en el nivel especificado." + }, + "3": { + "then": "Esta es una escuela para alumnos con autismo" + }, + "4": { + "then": "Esta es una escuela para alumnos con dificultades de aprendizaje" + }, + "5": { + "then": "Esta es una escuela para alumnos ciegos o con discapacidad visual" + }, + "6": { + "then": "Esta es una escuela para alumnos sordos o con discapacidad auditiva" + }, + "7": { + "then": "Esta es una escuela para alumnos con discapacidad" + }, + "8": { + "then": "Esta es una escuela para alumnos con necesidades especiales" + } + }, + "question": "¿Está esta escuela dirigida a alumnos con necesidades especiales? ¿Qué instalaciones estructurales tiene esta escuela?", + "questionHint": "Las medidas improvisadas no son suficientes para considerarse una escuela de necesidades especiales", + "render": "Esta escuela cuenta con instalaciones para alumnos con {school:for}" + } + }, + "title": { + "render": "Escuela {name}" + } + }, + "search": { + "description": "Capa privilegiada que muestra los resultados de la búsqueda", + "tagRenderings": { + "intro": { + "render": "Resultado de búsqueda" + } + } + }, + "selected_element": { + "description": "Resalta el elemento seleccionado actualmente. Sobrescribe esta capa para tener colores diferentes" + }, + "shelter": { + "description": "Capa que muestra estructuras de refugio", + "name": "Refugio", + "snapName": "un refugio", + "tagRenderings": { + "shelter-type": { + "mappings": { + "0": { + "then": "Este es un refugio en una parada de transporte público." + }, + "1": { + "then": "Este es un refugio que protege de la lluvia en un área de picnic." + }, + "2": { + "then": "Este es un cenador." + }, + "3": { + "then": "Este es un refugio pequeño, principalmente destinado a descansos cortos. Normalmente se encuentra en las montañas o al lado de las carreteras." + }, + "4": { + "then": "Este es un cobertizo con 3 paredes, principalmente destinado para acampar." + }, + "5": { + "then": "Este es un pabellón" + } + }, + "question": "¿Qué tipo de refugio es este?", + "render": "Tipo de refugio: {shelter_type}" + } + }, + "title": { + "render": "Refugio" + } + }, "shops": { "deletion": { "nonDeleteMappings": { "0": { - "then": "{title()} ha cerrado permanentemente" + "then": "{title()} ha cerrado definitivamente" } } }, "description": "Una tienda", + "filter": { + "0": { + "options": { + "0": { + "question": "Mostrar solo tiendas que venden artículos de segunda mano" + } + } + } + }, "name": "Tienda", "presets": { "0": { - "description": "Puedes especificar más adelante lo que vende esta tienda.", + "description": "Puedes especificar más tarde qué vende esta tienda.", "title": "una tienda" } }, @@ -4319,55 +9351,56 @@ "bicycle_rental": { "mappings": { "0": { - "then": "Esta tienda alquila bicis" + "then": "Esta tienda alquila bicicletas" }, "1": { - "then": "Esta tienda no alquila bicis" + "then": "Esta tienda no alquila bicicletas" } }, - "question": "¿Alquila bicicis esta tienda?" + "question": "¿Esta tienda alquila bicicletas?", + "questionHint": "Esto se refiere al alquiler para, por ejemplo, turistas que necesitan una bicicleta. Algunas tiendas de reparación de bicicletas ofrecen una bicicleta para usar mientras se repara la suya, pero esto no se considera alquiler para esta pregunta." }, "bike_pump_service": { "mappings": { "0": { - "then": "Esta tienda ofrece una bomba para cualquiera" + "then": "Esta tienda ofrece una bomba de bicicleta para cualquiera" }, "1": { - "then": "Esta tienda no ofrece una bomba para cualquiera" + "then": "Esta tienda no ofrece una bomba de bicicleta para cualquiera" }, "2": { - "then": "Hay una bomba para bicicletas, se muestra como un punto separado" + "then": "Hay una bomba de bicicleta, se muestra como un punto separado" } }, - "question": "¿Esta tienda ofrece una bomba para que la utilice cualquiera?" + "question": "¿Esta tienda ofrece una bomba de bicicleta para uso de cualquiera?" }, "bike_repair_tools": { "mappings": { "0": { - "then": "Esta tienda ofrece herramientas para la reparación DIY" + "then": "Esta tienda ofrece herramientas para la reparación de bicicletas por cuenta propia" }, "1": { - "then": "Esta tienda no ofrece herramientas para la reparación DIY" + "then": "Esta tienda no ofrece herramientas para la reparación de bicicletas por cuenta propia" }, "2": { - "then": "Las herramientas para reparaciones DIT solo están disponibles si compraste/alquilaste la bicicleta en la tienda" + "then": "Las herramientas para la reparación de bicicletas por cuenta propia solo están disponibles si compraste/alquilaste la bicicleta en la tienda" } }, - "question": "¿Hay herramientas para reparar tu propia bici?" + "question": "¿Hay herramientas aquí para reparar tu propia bicicleta?" }, "bike_second_hand": { "mappings": { "0": { - "then": "Esta tienda vende bicis de segunda mano" + "then": "Esta tienda vende bicicletas de segunda mano" }, "1": { - "then": "Esta tienda no vende bicis de segunda mano" + "then": "Esta tienda no vende bicicletas de segunda mano" }, "2": { - "then": "Esta tienda solo vende bicis de segunda mano" + "then": "Esta tienda solo vende bicicletas de segunda mano" } }, - "question": "¿Vende bicis de segunda mano esta tienda?" + "question": "¿Esta tienda vende bicicletas de segunda mano?" }, "bike_wash": { "mappings": { @@ -4375,36 +9408,128 @@ "then": "Esta tienda limpia bicicletas" }, "1": { - "then": "Esta tienda tiene una instalación donde uno puede limpiar bicicletas por si mismo" + "then": "Esta tienda tiene una instalación donde uno puede limpiar las bicicletas por sí mismo" }, "2": { "then": "Esta tienda no ofrece limpieza de bicicletas" } }, - "question": "¿Aquí se lavan bicicletas?" + "question": "¿Se lavan bicicletas aquí?" + }, + "brand": { + "mappings": { + "0": { + "then": "Esta tienda no tiene una marca específica, no forma parte de una cadena más grande" + } + }, + "question": "¿Cuál es la marca de esta tienda?", + "render": "Parte de {brand}" + }, + "copyshop-binding": { + "mappings": { + "0": { + "then": "Esta tienda encuaderna papeles en un folleto" + }, + "1": { + "then": "Esta tienda encuaderna libros" + } + }, + "question": "¿Esta tienda ofrece un servicio de encuadernación?", + "questionHint": "¿Esta tienda encuaderna un conjunto de páginas en un pequeño libro, por ejemplo, con un peine, una espiral, alambre o pegamento?" + }, + "copyshop-print-sizes": { + "mappings": { + "0": { + "then": "Esta tienda puede imprimir en papeles de tamaño A4" + }, + "1": { + "then": "Esta tienda puede imprimir en papeles de tamaño A3" + }, + "2": { + "then": "Esta tienda puede imprimir en papeles de tamaño A2" + }, + "3": { + "then": "Esta tienda puede imprimir en papeles de tamaño A1" + }, + "4": { + "then": "Esta tienda puede imprimir en papeles de tamaño A0" + } + }, + "question": "¿Qué formatos de papel ofrece esta tienda?" + }, + "id_presets.shop_types": { + "override": { + "+mappings": { + "0": { + "then": "Tienda de alquiler de bicicletas" + } + }, + "question": "¿Qué tipo de tienda es esta?", + "render": "Esta es una {shop}" + } + }, + "key_cutter": { + "mappings": { + "0": { + "then": "Esta tienda también está especializada en el corte de llaves" + }, + "1": { + "then": "Esta tienda ofrece el corte de llaves como servicio" + }, + "2": { + "then": "Esta tienda no ofrece el corte de llaves como servicio" + } + }, + "question": "¿Esta tienda ofrece el corte de llaves?" + }, + "organic": { + "mappings": { + "0": { + "then": "Esta tienda ofrece productos orgánicos" + }, + "1": { + "then": "Esta tienda solo ofrece productos orgánicos" + }, + "2": { + "then": "Esta tienda no ofrece productos orgánicos" + } + }, + "question": "¿Esta tienda ofrece productos orgánicos?" }, "repairs_bikes": { "mappings": { "0": { - "then": "Esta tienda repara bicis" + "then": "Esta tienda repara bicicletas" }, "1": { - "then": "Esta tienda no repara bicis" + "then": "Esta tienda no repara bicicletas" }, "2": { - "then": "Esta tienda solo repara bicis compradas aquí" + "then": "Esta tienda solo repara bicicletas compradas aquí" }, "3": { - "then": "Esta tienda solo repara bicis de una cierta marca" + "then": "Esta tienda solo repara bicicletas de una determinada marca" } }, - "question": "¿Repara bicis esta tienda?" + "question": "¿Esta tienda repara bicicletas?" + }, + "second_hand": { + "question": "¿Esta tienda vende artículos de segunda mano?" }, "sells_new_bikes": { - "question": "¿Vende bicis esta tienda?" + "mappings": { + "0": { + "then": "Esta tienda vende bicicletas nuevas" + }, + "1": { + "then": "Esta tienda no vende bicicletas nuevas" + } + }, + "question": "¿Esta tienda vende bicicletas?" }, "shops-name": { - "question": "¿Cual es el nombre de esta tienda?" + "question": "¿Cómo se llama esta tienda?", + "render": "Esta tienda se llama {name}" } }, "title": { @@ -4419,57 +9544,328 @@ "render": "Tienda" } }, - "slow_roads": { + "shower": { + "description": "Una capa que muestra duchas (públicas)", + "filter": { + "1": { + "options": { + "0": { + "question": "Agua caliente disponible" + } + } + } + }, + "name": "Ducha", + "presets": { + "0": { + "description": "Una ducha (pública)", + "title": "una ducha" + } + }, "tagRenderings": { + "access": { + "mappings": { + "0": { + "then": "Cualquiera puede usar esta ducha" + }, + "1": { + "then": "Solo los clientes pueden usar esta ducha" + }, + "2": { + "then": "Accesible, pero hay que pedir una llave" + } + }, + "question": "¿Quién puede usar esta ducha?" + }, + "charge": { + "freeform": { + "placeholder": "ej. 1.50 EUR" + }, + "question": "¿Cuánto cuesta usar esta ducha?", + "render": "Cuesta {charge} usar esta ducha" + }, + "fee": { + "mappings": { + "0": { + "then": "Hay una tarifa por usar esta ducha" + }, + "1": { + "then": "Esta ducha es gratuita" + } + }, + "question": "¿Hay una tarifa por usar esta ducha?" + }, + "hot_water": { + "mappings": { + "0": { + "then": "Hay agua caliente disponible aquí" + }, + "1": { + "then": "Hay agua caliente disponible aquí, pero hay una tarifa" + }, + "2": { + "then": "No hay agua caliente disponible aquí" + } + }, + "question": "¿Esta ducha tiene agua caliente disponible?" + } + }, + "title": { + "render": "Ducha" + } + }, + "ski_piste": { + "description": "Pistas de esquí y snowboard", + "name": "Pistas de esquí y snowboard", + "tagRenderings": { + "length": { + "render": "Esta parte de la pista de esquí tiene {_length:km} kilómetros de largo" + }, + "piste_difficulty": { + "mappings": { + "0": { + "then": "Principiante (verde)" + }, + "1": { + "then": "Fácil (azul)" + }, + "2": { + "then": "Intermedio (rojo)" + }, + "3": { + "then": "Avanzado (negro)" + }, + "4": { + "then": "Experto (naranja/doble negro)" + }, + "5": { + "then": "Freeride" + } + }, + "question": "¿Cuál es la dificultad de esta pista?" + } + }, + "title": { + "render": "Pista de esquí {name}" + } + }, + "slow_roads": { + "description": "Todos los caminos sin coches", + "name": "Senderos, caminos lentos y sin coches", + "tagRenderings": { + "explanation": { + "mappings": { + "0": { + "then": "Esta es una calle residencial" + }, + "1": { + "then": "Esta es una calle ancha sin coches" + }, + "2": { + "then": "Esta es una acera" + }, + "3": { + "then": "Este es un sendero pequeño" + }, + "4": { + "then": "Este es un camino para cabalgatas" + }, + "5": { + "then": "Este es un camino de acceso a terrenos" + } + } + }, + "slow_road_is_lit": { + "mappings": { + "1": { + "then": "Sin iluminación" + } + }, + "question": "¿Está iluminado este camino por la noche?" + }, "slow_roads-surface": { "mappings": { "0": { - "then": "La superficie es hierba" + "then": "La superficie es de césped" + }, + "1": { + "then": "La superficie es de tierra" }, "2": { - "then": "La superficie está sin pavimentar" + "then": "La superficie es sin pavimentar" }, "3": { - "then": "La superficie es arena" + "then": "La superficie es de arena" }, "4": { - "then": "La superficie es adoquines" + "then": "La superficie es de adoquines" }, "5": { - "then": "La superficie es asfalto" + "then": "La superficie es de asfalto" }, "6": { - "then": "La superficie es hormigón" + "then": "La superficie es de hormigón" }, "7": { - "then": "La superficie está pavimentada" + "then": "La superficie es pavimentada" } }, - "render": "La superficie es {surface}" + "question": "¿Qué superficie tiene este camino?", + "render": "La superficie es de {surface}" } + }, + "title": { + "mappings": { + "1": { + "then": "Acera" + }, + "2": { + "then": "Carril bici" + }, + "3": { + "then": "Calle peatonal" + }, + "4": { + "then": "Calle residencial" + }, + "5": { + "then": "Sendero pequeño" + } + }, + "render": "Camino lento" + } + }, + "souvenir_coin": { + "description": "Capa que muestra máquinas expendedoras de monedas de recuerdo", + "name": "Máquinas de Monedas de Recuerdo", + "presets": { + "0": { + "description": "Añadir una máquina expendedora de monedas de recuerdo", + "title": "una máquina de monedas de recuerdo" + } + }, + "tagRenderings": { + "charge": { + "freeform": { + "placeholder": "Coste (ej. 2 EUR)" + }, + "mappings": { + "0": { + "then": "Una moneda de recuerdo cuesta 2 euros" + } + }, + "question": "¿Cuánto cuesta una moneda de recuerdo?", + "render": "Una moneda de recuerdo cuesta {charge}" + }, + "designs": { + "override": { + "mappings": { + "0": { + "then": "Esta máquina tiene un diseño disponible" + }, + "1": { + "then": "Esta máquina tiene dos diseños disponibles" + }, + "2": { + "then": "Esta máquina tiene tres diseños disponibles" + }, + "3": { + "then": "Esta máquina tiene cuatro diseños disponibles" + } + }, + "render": "Esta máquina tiene {coin:design_count} diseños disponibles" + } + }, + "indoor": { + "mappings": { + "0": { + "then": "Esta máquina está ubicada en interiores." + }, + "1": { + "then": "Esta máquina está ubicada en exteriores." + } + }, + "question": "¿Está esta máquina ubicada en interiores?" + } + }, + "title": { + "render": "Máquina de Monedas de Recuerdo" } }, "souvenir_note": { + "description": "Capa que muestra máquinas expendedoras de billetes de recuerdo", + "name": "Máquinas de Billetes de Recuerdo", + "presets": { + "0": { + "description": "Añadir una máquina expendedora de billetes de recuerdo", + "title": "una máquina de billetes de recuerdo" + } + }, "tagRenderings": { + "charge": { + "freeform": { + "placeholder": "Coste (ej. 2 EUR)" + }, + "mappings": { + "0": { + "then": "Un billete de recuerdo cuesta 2 euros" + }, + "1": { + "then": "Un billete de recuerdo cuesta 3 euros" + } + }, + "question": "¿Cuánto cuesta un billete de recuerdo?", + "render": "Un billete de recuerdo cuesta {charge}" + }, "designs": { "freeform": { - "placeholder": "Número de diseños (por ejemplo, 5)" - } + "placeholder": "Número de diseños (ej. 5)" + }, + "mappings": { + "0": { + "then": "Esta máquina tiene un diseño disponible." + }, + "1": { + "then": "Esta máquina tiene dos diseños disponibles." + }, + "2": { + "then": "Esta máquina tiene tres diseños disponibles." + }, + "3": { + "then": "Esta máquina tiene cuatro diseños disponibles." + } + }, + "question": "¿Cuántos diseños están disponibles?", + "render": "Esta máquina tiene {note:design_count} diseños disponibles." + }, + "indoor": { + "mappings": { + "0": { + "then": "Esta máquina está ubicada en interiores." + }, + "1": { + "then": "Esta máquina está ubicada en exteriores." + } + }, + "question": "¿Está esta máquina ubicada en interiores?" } + }, + "title": { + "render": "Máquina de Billetes de Recuerdo" } }, "speed_camera": { - "description": "Capa con cámaras de velocidad", - "name": "Cámara de velocidad", + "description": "Capa que muestra radares", + "name": "Radar", "presets": { "0": { - "title": "una cámara de velocidad" + "title": "un radar" } }, "tagRenderings": { "camera_direction": { - "question": "¿A qué dirección geográfica apunta esta cámara?", - "render": "Graba en dirección a {direction}" + "question": "¿En qué dirección geográfica graba esta cámara?", + "render": "Graba hacia un rumbo de brújula de {direction}" }, "maxspeed": { "freeform": { @@ -4479,72 +9875,132 @@ "render": "La velocidad máxima permitida es {canonical(maxspeed)}" }, "ref": { - "render": "El número de referencia de este radar de velocidad es {ref}" + "render": "El número de referencia de este radar es {ref}" } }, "title": { - "render": "Cámara de velocidad" + "render": "Radar" } }, - "sport_pitch": { - "description": "Una pista de deportes", - "name": "Pistas de deportes", + "speed_display": { + "description": "Capa que muestra pantallas de velocidad que alertan a los conductores de su velocidad.", + "name": "Pantalla de Velocidad", "presets": { - "1": { - "title": "una pista de deportes" + "0": { + "title": "una pantalla de velocidad" } }, "tagRenderings": { + "inscription": { + "freeform": { + "placeholder": "Texto en la pantalla de velocidad (ej. 'Su velocidad')" + }, + "question": "¿Cuál es el texto en esta pantalla de velocidad?", + "render": "El texto en esta pantalla de velocidad es {inscription}" + }, + "maxspeed": { + "freeform": { + "placeholder": "Velocidad permitida en la pantalla de velocidad" + }, + "question": "¿Cuál es la velocidad máxima permitida en esta pantalla de velocidad?", + "render": "La velocidad máxima permitida en esta pantalla de velocidad es {canonical(maxspeed)}" + } + }, + "title": { + "render": "Pantalla de Velocidad" + } + }, + "sport_pitch": { + "description": "Una cancha deportiva", + "filter": { + "0": { + "options": { + "0": { + "question": "Acceso público" + } + } + } + }, + "name": "Canchas deportivas", + "presets": { + "0": { + "title": "una mesa de ping-pong" + }, + "1": { + "title": "una cancha deportiva" + } + }, + "tagRenderings": { + "basketball-hoops": { + "mappings": { + "0": { + "then": "Esta cancha de baloncesto tiene un solo aro" + }, + "1": { + "then": "Esta cancha de baloncesto tiene dos aros" + }, + "2": { + "then": "Esta cancha de baloncesto tiene cuatro aros" + }, + "3": { + "then": "Esta cancha de baloncesto tiene {hoops} aros" + } + }, + "question": "¿Cuántos aros de baloncesto tiene esta cancha?" + }, "sport-pitch-access": { "mappings": { "0": { "then": "Acceso público" }, "1": { - "then": "Acceso limitado (ej. solo con una cita, a cieras horas, ...)" + "then": "Acceso limitado (ej. solo con cita previa, en ciertos horarios, …)" }, "2": { - "then": "Solo accesible para miembros del club" + "then": "Solo accesible para socios del club" }, "3": { - "then": "Privada - no accesible al público" + "then": "Privado - no accesible al público" }, "4": { "then": "Acceso público" } }, - "question": "¿Esta pista de deportes es accesible públicamente?" + "question": "¿Es esta cancha deportiva de acceso público?" }, "sport-pitch-reservation": { "mappings": { "0": { - "then": "Pedir una cita es obligatorio para utilizar esta pista" + "then": "Es obligatorio pedir cita previa para usar esta cancha deportiva" }, "1": { - "then": "Se recomienda pedir una cita al utilizar esta pista" + "then": "Se recomienda pedir cita previa para usar esta cancha deportiva" }, "2": { - "then": "Pedir cita es posible, pero no necesario para utilizar esta pista de deportes" + "then": "Es posible pedir cita previa, pero no es necesario para usar esta cancha deportiva" }, "3": { - "then": "No es posible pedir cita" + "then": "No es posible pedir cita previa" } }, - "question": "¿Hay que pedir una cita para utilizar esta pista?" + "question": "¿Hay que pedir cita previa para usar esta cancha deportiva?" }, "sport_pitch-email": { - "question": "¿Cual es la dirección de correo electrónico de la operadora?" + "question": "¿Cuál es la dirección de correo electrónico del operador?" }, "sport_pitch-opening_hours": { "mappings": { + "0": { + "then": "Siempre accesible" + }, "1": { "then": "Siempre accesible" } }, - "question": "¿Cuándo es accesible esta pista?" + "question": "¿Cuándo es accesible esta cancha?" }, "sport_pitch-phone": { - "question": "¿Cual es el número de teléfono de la operadora?" + "question": "¿Cuál es el número de teléfono del operador?" }, "sport_pitch-sport": { "mappings": { @@ -4555,46 +10011,166 @@ "then": "Aquí se juega al fútbol" }, "2": { - "then": "Esto es una mesa de ping pong" + "then": "Esta es una mesa de ping-pong" }, "3": { "then": "Aquí se juega al tenis" }, + "4": { + "then": "Aquí se juega al Korfbal" + }, "5": { "then": "Aquí se juega al baloncesto" + }, + "6": { + "then": "Este es un skatepark" } }, "question": "¿Qué deporte se puede practicar aquí?", - "render": "Aquí se juega al {sport}" + "render": "Aquí se juega a {sport}" }, "sport_pitch-surface": { "mappings": { "0": { - "then": "La superficie es hierba" + "then": "La superficie es de césped" }, "1": { - "then": "La superficie es arena" + "then": "La superficie es de arena" }, "2": { - "then": "La superficie es adoquines" + "then": "La superficie es de adoquines" }, "3": { - "then": "La superficie es asfalto" + "then": "La superficie es de asfalto" }, "4": { - "then": "La superficie es hormigón" + "then": "La superficie es de hormigón" + }, + "5": { + "then": "La superficie es de grava fina" + }, + "6": { + "then": "La superficie de esta pista es de tartán, una superficie sintética, ligeramente elástica y porosa" } }, - "question": "¿Cual es la superficie de esta pista de deportes?", - "render": "La superficie es {surface}" + "question": "¿Cuál es la superficie de esta cancha deportiva?", + "render": "La superficie es de {surface}" } }, "title": { - "render": "Pista de deportes" + "render": "Cancha deportiva" + } + }, + "sports_centre": { + "description": "En esta capa se pueden encontrar centros deportivos interiores y exteriores", + "name": "Centros deportivos", + "presets": { + "0": { + "title": "un centro deportivo" + } + }, + "title": { + "render": "Centro deportivo" + } + }, + "stairs": { + "description": "Capa que muestra escaleras y escaleras mecánicas", + "name": "Escaleras", + "tagRenderings": { + "conveying": { + "mappings": { + "0": { + "then": "Esta es una escalera mecánica" + }, + "1": { + "then": "Esta no es una escalera mecánica" + }, + "2": { + "then": "Esta no es una escalera mecánica" + } + } + }, + "handrail": { + "mappings": { + "0": { + "then": "Estas escaleras tienen pasamanos" + }, + "1": { + "then": "Estas escaleras no tienen pasamanos" + } + }, + "question": "¿Tiene esta escalera pasamanos?" + }, + "incline": { + "mappings": { + "0": { + "then": "La dirección ascendente es {direction_absolute()}" + }, + "1": { + "then": "La dirección descendente es {direction_absolute()}" + } + }, + "question": "¿Cuál es la inclinación de estas escaleras?", + "render": "Estas escaleras tienen una inclinación de {incline}" + }, + "multilevels": { + "override": { + "question": "¿Entre qué niveles están estas escaleras?", + "render": "Estas escaleras están entre los niveles {level}" + } + }, + "ramp": { + "mappings": { + "0": { + "then": "Hay una rampa para bicicletas aquí" + }, + "1": { + "then": "Hay una rampa para sillas de ruedas aquí" + }, + "2": { + "then": "Hay una rampa para sillas de ruedas aquí, pero se muestra por separado en el mapa" + }, + "3": { + "then": "Hay una rampa para cochecitos aquí" + }, + "4": { + "then": "No hay rampa en estas escaleras" + } + }, + "question": "¿Hay una rampa en estas escaleras?" + }, + "tactile_writing": { + "mappings": { + "0": { + "then": "Hay escritura táctil en el pasamanos" + }, + "1": { + "then": "No hay escritura táctil en el pasamanos" + } + }, + "question": "¿Tienen estas escaleras escritura táctil en el pasamanos?" + }, + "tactile_writing_language": { + "render": { + "special": { + "question": "¿En qué idiomas hay escritura táctil (braille) para la navegación? ", + "render_list_item": "Estas escaleras tienen escritura táctil en {language()}", + "render_single_language": "Estas escaleras tienen escritura táctil en {language()}" + } + } + } + }, + "title": { + "mappings": { + "0": { + "then": "Escalera mecánica" + } + }, + "render": "Escaleras" } }, "street_lamps": { - "description": "Una capa que muestra luces callejeras", + "description": "Una capa que muestra las farolas", "name": "Farolas", "presets": { "0": { @@ -4621,40 +10197,45 @@ "mappings": { "0": { "then": "Esta lámpara tiene 1 accesorio" + }, + "1": { + "then": "Esta lámpara tiene 2 accesorios" } - } + }, + "question": "¿Cuántos accesorios tiene esta luz?", + "render": "Esta lámpara tiene {light:count} accesorios" }, "direction": { - "question": "¿Hacia donde apunta esta lámpara?", + "question": "¿Hacia dónde apunta esta lámpara?", "render": "Esta lámpara apunta hacia {light:direction}" }, "lamp_mount": { "mappings": { "0": { - "then": "Esta lampara está encima de un mástil recto" + "then": "Esta lámpara se encuentra en la cima de un mástil recto" }, "1": { - "then": "Esta lámpara está encima de un mástil curvado" + "then": "Esta lámpara se encuentra al final de un mástil curvado" } }, - "question": "¿Cómo está montada esta lámpara al poste?" + "question": "¿Cómo está montada esta lámpara en el poste?" }, "lit": { "mappings": { "0": { - "then": "Esta lámpara está iluminada por la noche" + "then": "Esta lámpara está encendida por la noche" }, "1": { - "then": "Esta lámpara está iluminada 24/7" + "then": "Esta lámpara está encendida 24/7" }, "2": { - "then": "Esta lámpara se ilumina con el movimiento" + "then": "Esta lámpara se enciende por movimiento" }, "3": { - "then": "Esta lámpara se ilumina bajo demanda (ej. con un pulsador)" + "then": "Esta lámpara se enciende bajo demanda (ej. con un pulsador)" } }, - "question": "¿Cuándo se ilumina esta lámpara?" + "question": "¿Cuándo está encendida esta lámpara?" }, "method": { "mappings": { @@ -4665,10 +10246,10 @@ "then": "Esta lámpara utiliza LEDs" }, "10": { - "then": "Esta lámpara utiliza lámparas de sodio de alta presión (naranja con blanco)" + "then": "Esta lámpara utiliza lámparas de sodio a alta presión (naranja con blanco)" }, "11": { - "then": "Esta lampara se ilumina con gas" + "then": "Esta lámpara se ilumina con gas" }, "2": { "then": "Esta lámpara utiliza iluminación incandescente" @@ -4677,31 +10258,34 @@ "then": "Esta lámpara utiliza iluminación halógena" }, "4": { - "then": "Esta lámpara utiliza lámparas de descarga (de tipo desconocido)" + "then": "Esta lámpara utiliza lámparas de descarga (tipo desconocido)" }, "5": { - "then": "Esta lámpara utiliza una lámpara de vapor de mercurio (levemente azulada)" + "then": "Esta lámpara utiliza una lámpara de vapor de mercurio (ligeramente azulada)" + }, + "6": { + "then": "Esta lámpara utiliza lámparas de halogenuros metálicos (blanco brillante)" }, "7": { "then": "Esta lámpara utiliza iluminación fluorescente" }, "8": { - "then": "Esta lámpara utiliza lámparas de sodio (de tipo desconocido)" + "then": "Esta lámpara utiliza lámparas de sodio (tipo desconocido)" }, "9": { - "then": "Esta lámpara utiliza lámparas de sodio de baja presión (naranja monocromo)" + "then": "Esta lámpara utiliza lámparas de sodio a baja presión (naranja monocromática)" } }, "question": "¿Qué tipo de iluminación utiliza esta lámpara?" }, "ref": { - "question": "¿Cual es el número de referencia de esta lámpara callejera?", - "render": "Esta lámpara callejera tiene el número de referencia {ref}" + "question": "¿Cuál es el número de referencia de esta farola?", + "render": "Esta farola tiene el número de referencia {ref}" }, "support": { "mappings": { "0": { - "then": "Esta lámpara se suspende utilizando cables" + "then": "Esta lámpara está suspendida con cables" }, "1": { "then": "Esta lámpara está montada en un techo" @@ -4710,7 +10294,7 @@ "then": "Esta lámpara está montada en el suelo" }, "3": { - "then": "Esta lámpara está montada en un poste corto (mayoritariamente < 1.5m)" + "then": "Esta lámpara está montada en un poste corto (principalmente < 1,5 m)" }, "4": { "then": "Esta lámpara está montada en un poste" @@ -4719,23 +10303,46 @@ "then": "Esta lámpara está montada directamente en la pared" }, "6": { - "then": "Esta lámpara está montada en la pared utilizando una barra metálica" + "then": "Esta lámpara está montada en la pared con una barra de metal" } }, - "question": "¿Cómo está montada esta lámpara?" + "question": "¿Cómo está montada esta farola?" } }, "title": { "mappings": { "0": { - "then": "Lámpara Callejera {ref}" + "then": "Farola {ref}" } }, - "render": "Lámpara Callejera" + "render": "Farola" + } + }, + "stripclub": { + "description": "Un local donde se realizan bailes eróticos, striptease o bailes en el regazo de forma comercial. ", + "name": "Stripclubs", + "presets": { + "0": { + "title": "un club de striptease" + } + }, + "tagRenderings": { + "name": { + "question": "¿Cuál es el nombre de este club de striptease?", + "render": "Este club de striptease se llama {name}" + } + }, + "title": { + "render": "Club de striptease" + } + }, + "summary": { + "title": { + "render": "Resumen" } }, "surveillance_camera": { - "description": "Esta capa muestra las cámaras de vigilancia y permite a quien colabora, actualizar la información y agregar nuevas cámaras", + "description": "Esta capa muestra cámaras de vigilancia y permite que un colaborador actualice la información y añada nuevas cámaras", "name": "Cámaras de vigilancia", "presets": { "0": { @@ -4743,132 +10350,274 @@ }, "1": { "title": "una cámara de vigilancia montada en una pared" + }, + "2": { + "description": "Un lector automático de matrículas (ALPR) suele tener dos lentes y una serie de luces infrarrojas.", + "title": "una cámara ALPR (lector automático de matrículas)" + }, + "3": { + "description": "Un lector automático de matrículas (ALPR) suele tener dos lentes y una serie de luces infrarrojas.", + "title": "una cámara ALPR (lector automático de matrículas) montada en una pared" } }, "tagRenderings": { "Camera type: fixed; panning; dome": { "mappings": { "0": { - "then": "Cámara fija (no móvil)" + "then": "Una cámara fija (inmóvil)" }, "1": { - "then": "Cámara con domo (que se puede girar)" + "then": "Una cámara domo (que puede girar)" }, "2": { - "then": "Cámara panorámica" + "then": "Una cámara panorámica" } }, - "question": "¿Qué tipo de cámara es?" + "question": "¿Qué tipo de cámara es esta?" }, "Level": { - "question": "¿A qué nivel está colocada esta cámara?", - "render": "Ubicado en la planta {level}" + "question": "¿En qué nivel está ubicada esta cámara?", + "render": "Ubicada en el nivel {level}" }, "Operator": { - "question": "¿Quién opera el sistema de esta cámara?", - "render": "Operado por {operator}" + "question": "¿Quién opera este circuito cerrado de televisión?", + "render": "Operada por {operator}" }, "Surveillance type: public, outdoor, indoor": { "mappings": { "0": { - "then": "Es un área pública, como una calle, un puente, una plaza, un parque, una estación de tren, un corredor público o túnel, …" + "then": "Se vigila una zona pública, como una calle, un puente, una plaza, un parque, una estación de tren, un pasillo o túnel público, …" }, "1": { - "then": "Es un área exterior pero privada (ej: estacionamiento, gasolinera, patio, entrada, camino privado, ...)" + "then": "Se vigila una zona exterior, pero privada (ej. un aparcamiento, una gasolinera, un patio, una entrada, una entrada privada, …)" }, "2": { - "then": "La vigilancia ocurre en un lugar interior privado, por ejemplo una tienda, un estacionamiento privado subterráneo, …" + "then": "Se vigila una zona privada interior, ej. una tienda, un aparcamiento subterráneo privado, …" } }, - "question": "¿Qué tipo de vigilancia aplica a esta cámara?" + "question": "¿Qué tipo de vigilancia es esta cámara?" }, "Surveillance:zone": { "mappings": { "0": { - "then": "Vigila un estacionamiento" + "then": "Vigila un aparcamiento" }, "1": { - "then": "Vigila el tránsito" + "then": "Vigila el tráfico" }, "2": { "then": "Vigila una entrada" }, "3": { - "then": "Vigila un corredor" + "then": "Vigila un pasillo" }, "4": { - "then": "Vigila una parada de transporte público" + "then": "Vigila un andén de transporte público" }, "5": { "then": "Vigila una tienda" } }, - "question": "¿Qué se vigila aquí exactamente?", - "render": "Vigila un/a {surveillance:zone}" + "question": "¿Qué se vigila exactamente aquí?", + "render": "Vigila una {surveillance:zone}" }, "camera:mount": { "mappings": { "0": { - "then": "Está cámara está colocada sobre una pared" + "then": "Esta cámara está colocada contra una pared" }, "1": { "then": "Esta cámara está colocada en un poste" }, "2": { - "then": "Esta cámara está colocada en un techo" + "then": "Esta cámara está colocada en el techo" }, "3": { - "then": "Esta cámara está colocada sobre una farola" + "then": "Esta cámara está colocada en una farola" }, "4": { "then": "Esta cámara está colocada en un árbol" } }, - "question": "¿Cómo está colocada la cámara?", + "question": "¿Cómo está colocada esta cámara?", "render": "Método de montaje: {camera:mount}" }, "camera_direction": { "mappings": { "0": { - "then": "Graba en dirección a {direction}" + "then": "Graba hacia un rumbo de brújula de {direction}" } }, - "question": "¿A qué dirección geográfica apunta esta cámara?", - "render": "Graba en dirección a {camera:direction}" + "question": "¿En qué dirección geográfica graba esta cámara?", + "render": "Graba hacia un rumbo de brújula de {camera:direction}" + }, + "has_alpr": { + "mappings": { + "0": { + "then": "Esta es una cámara sin reconocimiento de matrículas." + }, + "1": { + "then": "Esta es una cámara ALPR (lector automático de matrículas)" + } + }, + "question": "¿Puede esta cámara detectar automáticamente las matrículas?", + "questionHint": "Un ALPR (lector automático de matrículas) suele tener dos lentes y una serie de LED infrarrojos entre ellas." }, "is_indoor": { "mappings": { "0": { - "then": "Esta cámara está ubicada en un lugar interior" + "then": "Esta cámara está ubicada en interiores" }, "1": { - "then": "Esta cámara está ubicada en un lugar exterior" + "then": "Esta cámara está ubicada en exteriores" }, "2": { - "then": "Esta cámara está probablemente colocada en el exterior" + "then": "Esta cámara probablemente está ubicada en exteriores" } }, - "question": "¿El espacio público vigilado por esta cámara es un espacio interior o exterior?" + "question": "¿El espacio público vigilado por esta cámara es interior o exterior?" } }, "title": { "render": "Cámara de vigilancia" } }, + "tertiary_education": { + "name": "Universidades y colegios", + "presets": { + "0": { + "description": "Un instituto donde se imparte educación terciaria (a nivel equivalente a una licenciatura o superior). Un solo punto por campus es suficiente; los edificios y las facultades no deben cartografiarse con diferentes puntos universitarios.", + "title": "una universidad" + } + }, + "tagRenderings": { + "institution-kind": { + "mappings": { + "0": { + "then": "Esta es una institución de educación postsecundaria, no terciaria. Hay que haber completado la educación secundaria para inscribirse aquí, pero no se otorgan títulos de licenciatura (o superiores) aquí" + }, + "1": { + "then": "Esta es una universidad, una institución de educación terciaria donde se otorgan títulos de licenciatura o superiores." + } + }, + "question": "¿Qué tipo de institución es esta?" + }, + "isced": { + "mappings": { + "0": { + "then": "Aquí se otorgan títulos de licenciatura" + }, + "1": { + "then": "Aquí se otorgan títulos de maestría" + }, + "2": { + "then": "Aquí se otorgan títulos de doctorado" + } + }, + "question": "¿Qué nivel de educación se imparte aquí?" + } + }, + "title": { + "mappings": { + "1": { + "then": "Colegio" + }, + "2": { + "then": "Universidad" + }, + "3": { + "then": "Escuela que imparte educación terciaria" + } + } + } + }, + "ticket_machine": { + "description": "Encuentra máquinas expendedoras de billetes para el transporte público", + "name": "Máquinas expendedoras de billetes", + "presets": { + "0": { + "title": "una máquina expendedora de billetes" + } + }, + "tagRenderings": { + "operator": { + "freeform": { + "placeholder": "Nombre del operador" + }, + "mappings": { + "0": { + "then": "Ferrocarriles Holandeses (NS)" + } + }, + "question": "¿Quién es el operador de esta máquina expendedora de billetes?", + "render": "Esta máquina expendedora de billetes está operada por {operator}" + } + }, + "title": { + "render": "Máquina expendedora de billetes" + } + }, + "ticket_validator": { + "description": "Encuentra validadores de billetes para validar los billetes de transporte público", + "name": "Validadores de billetes", + "presets": { + "0": { + "description": "Un validador de billetes para validar un billete de transporte público. Puede ser un lector digital, que lee una tarjeta o un billete, o una máquina que estampa o perfora un billete.", + "title": "un validador de billetes" + } + }, + "tagRenderings": { + "barrier": { + "mappings": { + "0": { + "then": "Este validador de billetes forma parte de una puerta" + } + }, + "render": "Este validador de billetes forma parte de una barrera de tipo {barrier}" + }, + "payment-options": { + "override": { + "mappings+": { + "0": { + "then": "Este validador de billetes acepta OV-Chipkaart" + }, + "1": { + "then": "Este validador de billetes acepta OV-Chipkaart" + } + } + } + }, + "validator-operator": { + "freeform": { + "placeholder": "Nombre del operador" + }, + "mappings": { + "0": { + "then": "Ferrocarriles Holandeses (NS)" + } + }, + "question": "¿Quién es el operador de este validador de billetes?", + "render": "Este validador de billetes está operado por {operator}" + } + }, + "title": { + "render": "Validador de billetes" + } + }, "toilet": { - "description": "Una capa que muestra baños (públicos)", + "description": "Una capa que muestra los baños (públicos)", "filter": { "0": { "options": { "0": { - "question": "Accesible con sillas de ruedas" + "question": "Accesible para sillas de ruedas" } } }, "1": { "options": { "0": { - "question": "Tiene un cambiador" + "question": "Tiene cambiador" } } } @@ -4877,101 +10626,184 @@ "presets": { "0": { "title": "un baño público" + }, + "1": { + "description": "Un baño que tiene al menos un inodoro accesible para sillas de ruedas", + "title": "un baño con inodoro accesible para sillas de ruedas" } }, "tagRenderings": { + "gender_segregated": { + "mappings": { + "0": { + "then": "Hay un área separada e indicada para hombres y mujeres" + }, + "1": { + "then": "No hay un área separada e indicada para hombres y mujeres" + } + }, + "question": "¿Estos baños están segregados por género?", + "questionHint": "¿Hay cabinas o áreas separadas para hombres y mujeres, y están señalizadas como tales?" + }, + "menstrual_products": { + "mappings": { + "0": { + "then": "Hay productos menstruales gratuitos disponibles para todos los visitantes de estos baños" + }, + "1": { + "then": "Hay productos menstruales gratuitos disponibles para algunos visitantes de estos baños" + }, + "2": { + "then": "No hay productos menstruales gratuitos disponibles aquí" + } + }, + "question": "¿Se distribuyen productos menstruales gratuitos aquí?", + "questionHint": "Esto solo se refiere a productos menstruales gratuitos. Si, por ejemplo, hay una máquina expendedora que cobra por productos menstruales, ignórala para esta pregunta." + }, + "menstrual_products_location": { + "mappings": { + "0": { + "then": "Los productos menstruales gratuitos se encuentran en el baño de mujeres" + }, + "1": { + "then": "Los productos menstruales gratuitos se encuentran en el baño de hombres" + }, + "2": { + "then": "Los productos menstruales gratuitos se encuentran en el baño para usuarios de sillas de ruedas" + } + }, + "question": "¿Dónde se encuentran los productos menstruales gratuitos?", + "render": "Los productos menstruales se encuentran en {toilets:menstrual_products:location}" + }, + "opening_hours_24_7": { + "override": { + "question": "¿Cuándo están abiertos estos baños?" + } + }, "toilet-access": { "mappings": { "0": { "then": "Acceso público" }, "1": { - "then": "Solo accesible a clientes" + "then": "Solo acceso para clientes" }, "2": { - "then": "No accesible" + "then": "Inaccesible" }, "3": { - "then": "Accesible, pero hay que pedir la llave para entrar" + "then": "Accesible, pero hay que pedir una llave para entrar" }, "4": { - "then": "De acceso público" + "then": "Acceso público" } }, + "question": "¿Son estos baños de acceso público?", "render": "El acceso es {access}" }, "toilet-changing_table:location": { "mappings": { + "0": { + "then": "Hay un cambiador en el baño de mujeres" + }, + "1": { + "then": "Hay un cambiador en el baño de hombres" + }, + "2": { + "then": "Hay un cambiador en el baño para usuarios de sillas de ruedas" + }, "3": { - "then": "El cambiador está en una habitación dedicada" + "then": "Hay un cambiador en una habitación dedicada" } }, - "question": "¿Dónde está el cambiador?", - "render": "El cambiador está en {changing_table:location}" + "question": "¿Dónde se encuentra el cambiador?", + "render": "Un cambiador se encuentra en {changing_table:location}" }, "toilet-charge": { - "question": "¿Cuánto hay que pagar para estos baños?", - "render": "La tasa es {charge}" + "freeform": { + "placeholder": "ej. 0.50 EUR" + }, + "question": "¿Cuánto hay que pagar por estos baños?", + "render": "La tarifa es {charge}" }, "toilet-handwashing": { "mappings": { "0": { - "then": "Estos aseos tienen un lavabo para lavarse las manos" + "then": "Estos baños tienen un lavabo para lavarse las manos" }, "1": { - "then": "Estos aseos no tienen lavabo para lavarse las manos" + "then": "Estos baños no tienen un lavabo para lavarse las manos" } }, - "question": "¿Esto baños tienen una pileta para lavarte las manos?" + "question": "¿Estos baños tienen un lavabo para lavarse las manos?" }, "toilet-has-paper": { "mappings": { "0": { - "then": "Este baño esta equipado con papel higiénico" + "then": "Este baño está equipado con papel higiénico" }, "1": { "then": "Tienes que traer tu propio papel higiénico a este baño" } }, - "question": "¿Hay que traer tu propio papel higiénico a este baño?" + "question": "¿Hay que traer su propio papel higiénico a este baño?" }, "toilets-changing-table": { "mappings": { "0": { - "then": "Hay un cambiador" + "then": "Hay un cambiador disponible" }, "1": { - "then": "No hay cambiador" + "then": "No hay cambiador disponible" } - } + }, + "question": "¿Hay un cambiador (para cambiar pañales) disponible?" }, "toilets-fee": { "mappings": { "0": { "then": "Estos son baños de pago" + }, + "1": { + "then": "De uso gratuito" } - } + }, + "question": "¿Son estos baños de uso gratuito?" }, "toilets-type": { "mappings": { + "0": { + "then": "Solo hay inodoros sentados" + }, "1": { - "then": "Aquí solo hay orinales" + "then": "Solo hay urinarios aquí" + }, + "2": { + "then": "Solo hay inodoros en cuclillas aquí" }, "3": { - "then": "Aquí hay tanto váteres de sentarse como orinales" + "then": "Aquí hay inodoros sentados y urinarios" } }, - "question": "¿Qué tipo de aseos son?" + "question": "¿Qué tipo de baños son estos?" }, "toilets-wheelchair": { "mappings": { "0": { - "then": "Hay un baño dedicado para usuarios con sillas de ruedas" + "then": "Hay un baño dedicado para usuarios de sillas de ruedas" }, "1": { "then": "Sin acceso para sillas de ruedas" + }, + "2": { + "then": "Solo hay un baño dedicado para usuarios de sillas de ruedas" } - } + }, + "question": "¿Hay un baño dedicado para usuarios de sillas de ruedas?" + }, + "wheelchair-door-width": { + "question": "¿Cuál es el ancho de la puerta del baño accesible para sillas de ruedas?", + "render": "La puerta del baño accesible para sillas de ruedas tiene {canonical(door:width)} de ancho" } }, "title": { @@ -4979,51 +10811,497 @@ } }, "toilet_at_amenity": { + "description": "Una capa que muestra los baños (públicos) ubicados en diferentes lugares.", "filter": { "0": { "options": { "0": { - "question": "Accesible con sillas de ruedas" + "question": "Accesible para sillas de ruedas" + } + } + }, + "2": { + "options": { + "0": { + "question": "De uso gratuito" } } } }, + "name": "Baños en otros servicios", "tagRenderings": { + "opening_hours": { + "override": { + "question": "¿Cuándo está abierto el servicio donde se ubican estos baños?" + } + }, "toilet-access": { "mappings": { "0": { "then": "Acceso público" }, + "1": { + "then": "Solo acceso para clientes del servicio" + }, + "2": { + "then": "Inaccesible, incluso para clientes del servicio" + }, "3": { - "then": "Accesible, pero hay que pedir la llave para entrar" + "then": "Accesible, pero hay que pedir una llave para entrar" }, "4": { "then": "Acceso público" } }, + "question": "¿Son estos baños de acceso público?", "render": "El acceso es {toilets:access}" }, "toilet-charge": { - "question": "¿Cuánto hay que pagar para estos baños?", - "render": "La tasa es {toilets:charge}" + "question": "¿Cuánto hay que pagar por estos baños?", + "render": "La tarifa es {toilets:charge}" }, "toilets-fee": { "mappings": { "0": { "then": "Estos son baños de pago" + }, + "1": { + "then": "De uso gratuito" } - } + }, + "question": "¿Son estos baños de uso gratuito?" }, "toilets-wheelchair": { "mappings": { "0": { - "then": "Hay un baño dedicado para usuarios con sillas de ruedas" + "then": "Hay un baño dedicado para usuarios de sillas de ruedas" }, "1": { "then": "Sin acceso para sillas de ruedas" + }, + "2": { + "then": "Solo hay un baño dedicado para usuarios de sillas de ruedas" + } + }, + "question": "¿Hay un baño dedicado para usuarios de sillas de ruedas?" + }, + "wheelchair-door-width": { + "question": "¿Cuál es el ancho de la puerta del baño accesible para sillas de ruedas?", + "render": "La puerta del baño accesible para sillas de ruedas tiene {canonical(toilets:door:width)} de ancho" + } + }, + "title": { + "mappings": { + "0": { + "then": "Baño en {name}" + } + }, + "render": "Baño en servicio" + } + }, + "tool_library": { + "description": "Una biblioteca de herramientas es un lugar donde las personas del público en general pueden pedir prestadas herramientas", + "name": "Bibliotecas de herramientas", + "pointRendering": { + "0": { + "label": { + "mappings": { + "0": { + "then": "{name}" + } } } } + }, + "presets": { + "0": { + "description": "Una biblioteca de herramientas es un lugar donde las personas del público en general pueden pedir prestadas herramientas", + "title": "una biblioteca de herramientas" + } + }, + "tagRenderings": { + "fee": { + "mappings": { + "0": { + "then": "Pedir herramientas prestadas es gratuito (si se tiene una membresía)" + }, + "1": { + "then": "Pedir herramientas prestadas es gratuito" + }, + "2": { + "then": "Se cobra una tarifa al pedir herramientas prestadas" + }, + "3": { + "then": "Se puede hacer una donación al pedir herramientas prestadas" + } + }, + "question": "¿Se cobra una tarifa por pedir herramientas prestadas?", + "questionHint": "Si se requiere una membresía, asumimos que la membresía ya está pagada." + }, + "membership": { + "mappings": { + "0": { + "then": "No se requiere membresía para pedir herramientas prestadas aquí" + }, + "1": { + "then": "Se requiere una membresía para usar esta biblioteca de herramientas" + }, + "2": { + "then": "Una membresía es posible pero no se requiere para usar esta biblioteca de herramientas" + } + }, + "question": "¿Se requiere una membresía para pedir herramientas prestadas aquí?" + }, + "membership_charge": { + "question": "¿Cuánto cuesta una membresía?", + "questionHint": "Puede haber muchas fórmulas. En caso de duda, elige la más común", + "render": "Una membresía cuesta {charge:membership}" + } + }, + "title": { + "render": "Biblioteca de herramientas {name}" + } + }, + "tourism_accomodation": { + "description": "Varios tipos de alojamientos", + "filter": { + "0": { + "options": { + "0": { + "question": "Todos los tipos" + }, + "1": { + "question": "Hoteles" + }, + "2": { + "question": "Hostales" + }, + "3": { + "question": "Pensiones y Bed&Breakfast" + }, + "4": { + "question": "Moteles" + }, + "5": { + "question": "Casa de vacaciones" + }, + "6": { + "question": "Apartamento de vacaciones" + } + } + } + }, + "name": "Alojamientos turísticos", + "presets": { + "0": { + "description": "Un hotel es un establecimiento que proporciona alojamiento de pago, generalmente a corto plazo. Las habitaciones no se comparten con desconocidos.", + "title": "un hotel" + }, + "1": { + "description": "Un hostal es un tipo de alojamiento turístico donde las personas pueden dormir en una habitación compartida con desconocidos", + "title": "un hostal" + }, + "2": { + "description": "Un apartamento o piso amueblado con cocina y baño en un edificio compartido que se puede alquilar para vacaciones, normalmente sin desayuno ni recepción", + "title": "un apartamento de vacaciones" + }, + "3": { + "description": "Una casa de vacaciones o chalet con cocina y baño que se puede alquilar para vacaciones, normalmente sin desayuno ni recepción", + "title": "un chalet de vacaciones" + }, + "4": { + "description": "Un motel es un establecimiento que proporciona alojamiento de pago, generalmente a corto plazo, con estacionamiento conveniente para automóviles en o cerca de la habitación. Suelen ser más baratos que un hotel", + "title": "un motel" + }, + "5": { + "description": "Un bed-and-breakfast en una pensión es un pequeño establecimiento de alojamiento. A menudo son unas pocas habitaciones dentro de una casa familiar privada donde los propietarios también alojan a los huéspedes. No hay recepción ni personal en todo momento. En algunos casos, el check-in se realiza de forma remota compartiendo un código para entrar.", + "title": "un bed-and-breakfast" + }, + "6": { + "title": "un alojamiento a pequeña escala, normalmente operado por el propietario" + }, + "7": { + "title": "un camping o área de acampada" + } + }, + "tagRenderings": { + "name": { + "question": "¿Cuál es el nombre de este {title()}?", + "render": "{name}" + } + }, + "title": { + "mappings": { + "0": { + "then": "Hotel {name}" + }, + "1": { + "then": "Hostal {name}" + }, + "2": { + "then": "B&B {name}" + }, + "3": { + "then": "Pensión {name}" + }, + "4": { + "then": "Motel {name}" + }, + "5": { + "then": "Apartamento {name}" + }, + "6": { + "then": "Casa de vacaciones {name}" + } + }, + "render": "Alojamiento turístico {name}" + } + }, + "trail": { + "description": "Senderos señalizados", + "name": "Senderos", + "tagRenderings": { + "Color": { + "mappings": { + "0": { + "then": "Sendero azul" + }, + "1": { + "then": "Sendero rojo" + }, + "2": { + "then": "Sendero verde" + }, + "3": { + "then": "Sendero amarillo" + } + }, + "question": "¿Cuál es el color de referencia de este sendero?", + "render": "El color de referencia es {colour}" + }, + "Name": { + "question": "¿Cuál es el nombre de este sendero?", + "render": "Este sendero se llama {name}" + }, + "Operator tag": { + "mappings": { + "0": { + "then": "Este sendero es mantenido por Natuurpunt" + }, + "1": { + "then": "Este sendero es mantenido por {operator}" + } + }, + "question": "¿Quién mantiene este sendero?", + "render": "Este sendero es mantenido por {operator}" + }, + "Wheelchair access": { + "mappings": { + "0": { + "then": "Este sendero es accesible para sillas de ruedas" + }, + "1": { + "then": "Este sendero no es accesible para sillas de ruedas" + } + }, + "question": "¿Es este sendero accesible para sillas de ruedas?" + }, + "pushchair access": { + "mappings": { + "0": { + "then": "Este sendero es accesible con una silla de paseo" + }, + "1": { + "then": "Este sendero no es accesible con una silla de paseo" + } + }, + "question": "¿Es este sendero accesible con una silla de paseo?" + }, + "trail-length": { + "render": "El sendero tiene {_length:km} kilómetros de largo" + } + }, + "title": { + "render": "Sendero" + } + }, + "transit_routes": { + "description": "Capa que muestra las líneas de autobús", + "name": "Líneas de autobús", + "tagRenderings": { + "colour": { + "question": "¿Cuál es el color de esta línea de autobús?", + "render": "Esta línea de autobús tiene el color {colour}" + }, + "from": { + "question": "¿Cuál es el punto de partida de esta línea de autobús?", + "render": "Esta línea de autobús comienza en {from}" + }, + "name": { + "question": "¿Cuál es el nombre de esta línea de autobús? (es decir, Autobús XX: Desde => Vía => Hasta)" + }, + "network": { + "question": "¿A qué red pertenece esta línea de autobús?", + "render": "Esta línea de autobús es parte de la red {network}" + }, + "operator": { + "question": "¿Qué compañía opera esta línea de autobús?", + "render": "Esta línea de autobús es operada por {operator}" + }, + "to": { + "question": "¿Cuál es el punto final de esta línea de autobús?", + "render": "Esta línea de autobús termina en {to}" + }, + "via": { + "question": "¿Cuál es el punto intermedio de esta línea de autobús?", + "render": "Esta línea de autobús pasa por {via}" + } + }, + "title": { + "mappings": { + "0": { + "then": "{name}" + } + }, + "render": "Línea de autobús" + } + }, + "transit_stops": { + "description": "Capa que muestra diferentes tipos de paradas de transporte.", + "filter": { + "0": { + "options": { + "0": { + "question": "Con refugio" + } + } + }, + "1": { + "options": { + "0": { + "question": "Con banco" + } + } + }, + "2": { + "options": { + "0": { + "question": "Con papelera" + } + } + } + }, + "name": "Paradas de transporte", + "tagRenderings": { + "bench": { + "mappings": { + "0": { + "then": "Esta parada tiene un banco" + }, + "1": { + "then": "Esta parada no tiene un banco" + }, + "2": { + "then": "Esta parada tiene un banco, que está mapeado por separado" + } + }, + "question": "¿Tiene esta parada un banco?" + }, + "bin": { + "mappings": { + "0": { + "then": "Esta parada tiene una papelera" + }, + "1": { + "then": "Esta parada no tiene una papelera" + }, + "2": { + "then": "Esta parada tiene una papelera, que está mapeada por separado" + } + }, + "question": "¿Tiene esta parada una papelera?" + }, + "contained_routes": { + "render": "

{_contained_routes_count} rutas paran en esta parada

    {_contained_routes}
" + }, + "departures_board": { + "mappings": { + "0": { + "then": "Esta parada tiene un panel de salidas de tipo desconocido" + }, + "1": { + "then": "Esta parada tiene un panel que muestra información de salida en tiempo real" + }, + "2": { + "then": "Esta parada tiene un panel que muestra información de salida en tiempo real" + }, + "3": { + "then": "Esta parada tiene un horario que muestra las salidas regulares" + }, + "4": { + "then": "Esta parada tiene un horario que contiene solo el intervalo entre salidas" + }, + "5": { + "then": "Esta parada no tiene un panel de salidas" + } + } + }, + "lit": { + "mappings": { + "0": { + "then": "Esta parada está iluminada" + }, + "1": { + "then": "Esta parada no está iluminada" + } + }, + "question": "¿Está iluminada esta parada?" + }, + "shelter": { + "mappings": { + "0": { + "then": "Esta parada tiene un refugio" + }, + "1": { + "then": "Esta parada no tiene un refugio" + }, + "2": { + "then": "Esta parada tiene un refugio, que está mapeado por separado" + } + }, + "question": "¿Tiene esta parada un refugio?" + }, + "stop_name": { + "freeform": { + "placeholder": "Nombre de la parada" + }, + "mappings": { + "0": { + "then": "Esta parada no tiene nombre" + } + }, + "question": "¿Cuál es el nombre de esta parada?", + "render": "Esta parada se llama {name}" + }, + "tactile_paving": { + "mappings": { + "0": { + "then": "Esta parada tiene pavimento táctil" + }, + "1": { + "then": "Esta parada no tiene pavimento táctil" + } + }, + "question": "¿Tiene esta parada pavimento táctil?" + } + }, + "title": { + "mappings": { + "0": { + "then": "Parada {name}" + } + }, + "render": "Parada de transporte" } }, "tree_node": { @@ -5031,55 +11309,55 @@ "name": "Árbol", "presets": { "0": { - "description": "Un árbol de hojas como el Roble o el Álamo.", - "title": "árbol de hoja ancha" + "description": "Un árbol de una especie con hojas, como roble o álamo.", + "title": "un árbol de hoja ancha" }, "1": { - "description": "Un árbol de hojas agujas, como el Pino o el Abeto.", - "title": "un árbol con hojas de aguja" + "description": "Un árbol de una especie con agujas, como pino o abeto.", + "title": "un árbol de hoja acicular" }, "2": { - "description": "Si no estás seguro de si es un árbol de hoja ancha o de hoja de aguja.", + "description": "Si no estás seguro de si es un árbol de hoja ancha o acicular.", "title": "un árbol" } }, "tagRenderings": { "circumference": { "question": "¿Cuál es la circunferencia del tronco del árbol?", - "questionHint": "Se mide a una altura de 1,30 m", + "questionHint": "Esto se mide a una altura de 1.30 m", "render": "El tronco del árbol tiene una circunferencia de {circumference} metros" }, "height": { - "question": "¿Qué altura tiene este árbol?", - "render": "Este árbol tiene {height} metros de altura" + "question": "¿Cuál es la altura de este árbol?", + "render": "Este árbol mide {height} metros de alto" }, "tree-decidouous": { "mappings": { "0": { - "then": "Caduco o Deciduo: el árbol pierde las hojas en un período del año." + "then": "Caducifolio: el árbol pierde sus hojas durante algún tiempo del año." }, "1": { - "then": "Siempreverde." + "then": "Perenne." } }, - "question": "¿El árbol es perenne o caduco?" + "question": "¿Es este árbol perenne o caducifolio?" }, "tree-denotation": { "mappings": { "0": { - "then": "El árbol es notable debido a su tamaño o ubicación prominente. Es útil para la navegación." + "then": "El árbol es notable por su tamaño o ubicación prominente. Es útil para la navegación." }, "1": { - "then": "El árbol es un monumento natural, por ejemplo, porque es especialmente antiguo, o de una especie valiosa." + "then": "El árbol es un monumento natural, por ejemplo, porque es especialmente antiguo o de una especie valiosa." }, "2": { "then": "El árbol se utiliza con fines agrícolas, por ejemplo, en un huerto." }, "3": { - "then": "El árbol está en un parque o similar (cementerio, recinto escolar, ...)." + "then": "El árbol está en un parque o similar (cementerio, terrenos escolares, …)." }, "4": { - "then": "El árbol está en un jardín de una vivienda." + "then": "El árbol está en un jardín residencial." }, "5": { "then": "Este es un árbol a lo largo de una avenida." @@ -5091,7 +11369,7 @@ "then": "El árbol está fuera de una zona urbana." } }, - "question": "¿Qué importancia tiene este árbol? Elige la primera respuesta que corresponda." + "question": "¿Qué importancia tiene este árbol? Elige la primera respuesta que aplique." }, "tree-heritage": { "mappings": { @@ -5099,7 +11377,7 @@ "then": "Registrado como patrimonio por Onroerend Erfgoed Flandes" }, "1": { - "then": "Registrado como patrimonio por la Dirección de Patrimonio Cultural de Bruselas" + "then": "Registrado como patrimonio por Direction du Patrimoine culturel Bruselas" }, "2": { "then": "Registrado como patrimonio por una organización diferente" @@ -5108,24 +11386,24 @@ "then": "No registrado como patrimonio" }, "4": { - "then": "Registrado como patrimonio por un organización diferente" + "then": "Registrado como patrimonio por una organización diferente" } }, - "question": "¿Este árbol es patrimonio registrado?" + "question": "¿Está este árbol registrado como patrimonio?" }, "tree-leaf_type": { "mappings": { "0": { - "then": "Latifoliada" + "then": "De hoja ancha" }, "1": { - "then": "Hoja aguja" + "then": "De hoja acicular" }, "2": { "then": "Permanentemente sin hojas" } }, - "question": "¿Es un árbol de hoja ancha o de hoja aguja?" + "question": "¿Es este un árbol de hoja ancha o acicular?" }, "tree-species-wikidata": { "question": "¿De qué especie es este árbol?" @@ -5136,11 +11414,12 @@ "then": "El árbol no tiene nombre." } }, - "question": "¿Tiene nombre este árbol?", + "question": "¿Tiene el árbol un nombre?", "render": "Nombre: {name}" }, "tree_node-ref:OnroerendErfgoed": { - "question": "¿Cuál es el número de identificación emitido por Onroerend Erfgoed Flandes?" + "question": "¿Cuál es el ID emitido por Onroerend Erfgoed Flandes?", + "render": "\"\"/ ID de Onroerend Erfgoed: {ref:OnroerendErfgoed}" }, "tree_node-wikidata": { "question": "¿Cuál es el ID de Wikidata para este árbol?", @@ -5152,7 +11431,49 @@ } }, "trolley_bay": { + "description": "Encuentra aparcaderos para carros de compra.", + "name": "Aparcaderos de carros", + "presets": { + "0": { + "description": "Un aparcadero para carros de compra.", + "title": "un aparcadero de carros" + } + }, "tagRenderings": { + "cart_types": { + "mappings": { + "0": { + "then": "Hay carros con lupa disponibles" + }, + "1": { + "then": "Hay carros para usuarios de sillas de ruedas disponibles" + }, + "2": { + "then": "Hay carros para niños disponibles" + }, + "3": { + "then": "Hay carros con asientos para niños disponibles" + }, + "4": { + "then": "Hay carros con plataforma disponibles" + }, + "5": { + "then": "Hay carros verticales para mercancías laminares disponibles" + } + }, + "question": "¿Qué tipo de carros especiales hay disponibles?" + }, + "covered": { + "mappings": { + "0": { + "then": "Este aparcadero de carros está cubierto" + }, + "1": { + "then": "Este aparcadero de carros no está cubierto" + } + }, + "question": "¿Está cubierto este aparcadero de carros?" + }, "denominations": { "mappings": { "0": { @@ -5164,16 +11485,69 @@ "2": { "then": "Se aceptan monedas de 2 euros" } - } + }, + "question": "¿Qué monedas se aceptan para el depósito?" + }, + "deposit": { + "mappings": { + "0": { + "then": "Se requiere un depósito para los carros" + }, + "1": { + "then": "No se requiere un depósito para los carros" + } + }, + "question": "¿Se requiere un depósito (ej. una moneda) para los carros?" } - } + }, + "title": "Aparcadero de carros" }, "unit": { + "description": "Capa de biblioteca con todas las unidades comunes. Las unidades solo se pueden importar de este archivo.", "units": { + "0": { + "applicableUnits": { + "0": { + "human": "{quantity} megavatios" + }, + "1": { + "human": "{quantity} kilovatios" + }, + "2": { + "human": "{quantity} vatios" + }, + "3": { + "human": "{quantity} gigavatios" + } + } + }, + "1": { + "applicableUnits": { + "0": { + "human": "{quantity} voltios" + } + } + }, + "2": { + "applicableUnits": { + "0": { + "human": "{quantity} amperios" + } + } + }, "3": { "applicableUnits": { "0": { - "human": "{quantity} metros" + "human": "{quantity} metros", + "humanSingular": "un metro" + }, + "1": { + "human": "{quantity} centímetros", + "humanSingular": "un centímetro" + }, + "2": { + "human": "{quantity} milímetros", + "humanSingular": "un milímetro" }, "3": { "human": "{quantity} pies" @@ -5191,118 +11565,666 @@ "humanShort": "{quantity} mph" } } + }, + "5": { + "applicableUnits": { + "0": { + "human": "{quantity} minutos", + "humanSingular": "un minuto" + }, + "1": { + "human": "{quantity} horas", + "humanSingular": "una hora" + }, + "2": { + "human": "{quantity} días", + "humanSingular": "un día" + }, + "3": { + "human": "{quantity} semanas", + "humanSingular": "una semana" + }, + "4": { + "human": "{quantity} meses", + "humanSingular": "un mes" + }, + "5": { + "human": "{quantity} años", + "humanSingular": "un año" + } + } } } }, "usersettings": { + "description": "Una capa especial que no está destinada a mostrarse en un mapa, pero que se utiliza para configurar la configuración del usuario", "tagRenderings": { + "a11y-features": { + "mappings": { + "0": { + "then": "Activar funciones de accesibilidad cuando se usan las teclas de flecha para navegar por el mapa" + }, + "1": { + "then": "Activar siempre las funciones de accesibilidad" + }, + "2": { + "then": "Nunca activar las funciones de accesibilidad" + } + }, + "question": "¿Qué funciones de accesibilidad se deben aplicar?" + }, + "add-new-feature": { + "mappings": { + "0": { + "then": "Agregar un nuevo elemento se hace con el botón en la parte inferior izquierda. Hacer clic en el mapa no hace nada" + }, + "1": { + "then": "Al hacer clic o tocar el mapa, aparece un marcador donde se agrega un nuevo elemento" + }, + "2": { + "then": "Al hacer clic derecho o presionar prolongadamente el mapa, aparece un marcador donde se puede agregar un nuevo elemento" + }, + "3": { + "then": "Al hacer clic o tocar el mapa, aparece un marcador donde se puede agregar un nuevo elemento. Además, se muestra un botón en la parte inferior izquierda" + }, + "4": { + "then": "Al hacer clic derecho o presionar prolongadamente el mapa, aparece un marcador donde se puede agregar un nuevo elemento. Además, se muestra un botón en la parte inferior izquierda" + } + }, + "question": "¿Cómo se debe abrir el menú para agregar un nuevo elemento?" + }, + "all-questions-at-once": { + "mappings": { + "0": { + "then": "Mostrar todas las preguntas juntas en el cuadro de información" + }, + "1": { + "then": "Mostrar las preguntas una por una" + } + }, + "question": "¿Deben aparecer las preguntas para campos de datos desconocidos una por una o juntas?" + }, + "background-layer": { + "mappings": { + "0": { + "then": "Usar la capa de fondo predeterminada" + }, + "1": { + "then": "Usar OpenStreetMap-carto como capa predeterminada" + }, + "2": { + "then": "Usar imágenes aéreas como fondo predeterminado" + }, + "3": { + "then": "Usar un mapa que no sea de OpenStreetMap como fondo predeterminado" + }, + "4": { + "then": "Usar la capa de fondo actual ({__current_background}) como fondo predeterminado" + }, + "5": { + "then": "Usar la capa de fondo {mapcomplete-preferred-background-layer} como fondo predeterminado" + } + }, + "question": "¿Qué capa de fondo se debe mostrar de forma predeterminada?", + "questionHint": "Para establecer un fondo específico como predeterminado, selecciónalo primero en el menú de fondo, después aparecerá aquí." + }, + "background-layer-readonly": { + "render": "Este mapa temático tiene una capa de fondo predefinida. Tu configuración de tema predeterminada no se aplica" + }, + "clear_cache": { + "render": { + "after": "Limpiar las cachés eliminará los datos y el código descargados localmente. Seguirás conectado y tus configuraciones se conservarán. No se deben perder datos", + "special": { + "text": "Limpiar cachés" + } + } + }, + "contributor-thanks": { + "mappings": { + "0": { + "then": "¡Has contribuido con código a MapComplete con {_code_contributions} confirmaciones! ¡Eso es increíble!" + } + } + }, "cscount-thanks": { "mappings": { "0": { - "then": "Has hecho cambios en {_csCount} ocasiones diferentes. ¡Es alucinante!" + "then": "¡Has realizado cambios en {_csCount} ocasiones diferentes! ¡Eso es increíble!" } } }, - "picture-license": { - "mappings": { - "1": { - "then": "Las fotografías que tome tendrán una licencia con CC0 y se agregarán al dominio público. Esto significa que todos pueden usar sus imágenes para cualquier propósito." + "debug-title": { + "render": "

Opciones de depuración

" + }, + "edit-profile": { + "render": { + "special": { + "text": "Editar la descripción de tu perfil" } } }, + "fixate-north": { + "mappings": { + "0": { + "then": "Permitir rotar el mapa" + }, + "1": { + "then": "Mantener siempre el norte hacia arriba" + } + }, + "question": "¿Debe estar el norte siempre arriba?" + }, + "inbox": { + "mappings": { + "0": { + "then": { + "special": { + "text": "Abrir tu bandeja de entrada" + } + } + }, + "1": { + "then": { + "special": { + "text": "Tienes {_unreadMessages} mensajes
Abrir tu bandeja de entrada" + } + } + } + } + }, + "language_picker": { + "mappings": { + "0": { + "then": "El idioma se configuró mediante un parámetro de URL y el usuario no puede configurarlo." + } + } + }, + "mangrove-key-import": { + "render": { + "after": "Subir una clave privada borra tu clave privada actual. Si hiciste revisiones con ella, descarga primero tu clave privada actual", + "special": { + "text": "Importar una clave privada de Mangrove desde una copia de seguridad" + } + } + }, + "mangrove-keys": { + "render": { + "after": "Cualquier persona que posea este archivo puede hacer revisiones con tu identidad", + "special": { + "text": "Descargar la clave privada para tu cuenta de Mangrove" + } + } + }, + "more_privacy": { + "mappings": { + "0": { + "then": "Al realizar cambios en OpenStreetMap, no indicar qué tan lejos estabas de los objetos modificados." + }, + "1": { + "then": "Al realizar cambios en OpenStreetMap, indicar aproximadamente qué tan lejos estabas de los objetos modificados. Esto ayuda a otros colaboradores a comprender cómo realizaste el cambio" + } + }, + "question": "Al realizar cambios, ¿se debe dar una indicación aproximada de qué tan lejos estabas del objeto?", + "questionHint": "Si realizas un cambio en uno o más objetos y has activado tu ubicación, se guardará una indicación aproximada de dónde lo hiciste: se indica si estabas a menos de 25 m, 500 m, 5 km o más de 5 km. Esto ayuda a los mapeadores a comprender tu contexto al realizar cambios, pero da una indicación de dónde te encontrabas en ese momento. " + }, + "more_privacy_theme_override": { + "mappings": { + "0": { + "then": "Este tema es sensible. Al realizar cambios, no se indicará explícitamente si estabas cerca." + } + } + }, + "profile-description": { + "mappings": { + "0": { + "then": { + "special": { + "text": "Agregar una descripción de perfil" + } + } + } + } + }, + "scalebar": { + "mappings": { + "0": { + "then": "Mostrar la barra de escala" + }, + "1": { + "then": "Ocultar la barra de escala" + } + }, + "question": "¿Se debe mostrar una barra de escala en el mapa?" + }, + "settings-link": { + "render": { + "special": { + "text": "Abrir tu configuración en OpenStreetMap.org" + } + } + }, + "show_crosshair": { + "question": "¿Se debe mostrar una cruz en el centro de la pantalla?", + "questionHint": "Esto puede ayudar a posicionar con precisión un nuevo elemento" + }, + "show_debug": { + "mappings": { + "0": { + "then": "Mostrar información de depuración" + }, + "1": { + "then": "No mostrar información de depuración" + }, + "2": { + "then": "No mostrar información de depuración" + } + }, + "question": "¿Mostrar información de depuración de la configuración del usuario?" + }, + "show_tags": { + "mappings": { + "0": { + "then": "Nunca mostrar las etiquetas." + }, + "1": { + "then": "Mostrar las etiquetas que se aplicarán una vez que haya realizado {__userjourney_tagsVisibleAt} conjuntos de cambios" + }, + "2": { + "then": "Mostrar las etiquetas que se aplicarán al realizar un cambio" + }, + "3": { + "then": "Mostrar las etiquetas que se aplicarán al realizar un cambio y mostrar la tabla de etiquetas en cada elemento" + } + }, + "question": "¿Mostrar las etiquetas de OpenStreetMap?", + "questionHint": "Las etiquetas son atributos que tiene cada elemento. Estos son los datos técnicos que se almacenan en la base de datos. No necesitas esta información para editar con MapComplete, pero los usuarios avanzados pueden querer usarla como referencia." + }, + "sync-visited-locations": { + "mappings": { + "0": { + "then": "Guardar las ubicaciones que buscas e inspeccionas y sincronizarlas a través de openstreetmap.org. OpenStreetMap y todas las aplicaciones que uses pueden ver este historial" + }, + "1": { + "then": "Guardar las ubicaciones que buscas e inspeccionas en mi dispositivo" + }, + "2": { + "then": "No guardar las ubicaciones que buscas e inspeccionas " + } + }, + "question": "¿Se deben recordar las ubicaciones que buscas e inspeccionas?", + "questionHint": "Esas ubicaciones se ofrecerán en el menú de búsqueda" + }, + "sync-visited-themes": { + "mappings": { + "0": { + "then": "Guardar los mapas temáticos visitados y sincronizarlos a través de openstreetmap.org. OpenStreetMap y todas las aplicaciones que uses pueden ver este historial" + }, + "1": { + "then": "Guardar los mapas temáticos visitados en mi dispositivo" + }, + "2": { + "then": "No guardar los mapas temáticos visitados" + } + }, + "question": "¿Se deben guardar los mapas temáticos que visitas?", + "questionHint": "Si visitas un mapa sobre un tema determinado, MapComplete puede recordarlo y ofrecerlo como sugerencia." + }, + "title-editing": { + "render": "

Configuración de edición

" + }, + "title-id": { + "render": "

Gestión de ID de Mangrove

" + }, + "title-map": { + "render": "

Configurar mapa

" + }, + "title-privacy-legal": { + "render": "

Privacidad y legal

" + }, "translation-completeness": { + "mappings": { + "0": { + "then": "Traducido completamente" + } + }, "render": "Las traducciones para {_theme} en {_language} están al {_translation_percentage}%: {_translation_translated_count} cadenas de {_translation_total} están traducidas" }, "translation-help": { "mappings": { "0": { - "then": "Haz clic en el icono 'traducir' al lado de una cadena para introducir o actualizar un texto. Necesitas una cuenta de Weblate para esto. Crea una con tu usuario de OSM para desbloquear el modo de traducción automáticamente." + "then": "Haz clic en el icono 'traducir' junto a una cadena para ingresar o actualizar un fragmento de texto. Necesitas una cuenta de Weblate para esto. Crea una con tu nombre de usuario de OSM para desbloquear automáticamente el modo de traducción." + } + } + }, + "translation-mode": { + "mappings": { + "0": { + "then": "No mostrar un botón para cambiar rápidamente las traducciones" + }, + "1": { + "then": "Mostrar un botón para abrir rápidamente las traducciones cuando se usa MapComplete en una pantalla grande" + }, + "2": { + "then": "Mostrar siempre los botones de traducción, incluso en dispositivos móviles" + } + }, + "question": "¿Quieres ayudar a traducir MapComplete?" + }, + "translation-thanks": { + "mappings": { + "0": { + "then": "¡Has contribuido a la traducción de MapComplete con {_translation_contributions} confirmaciones! ¡Eso es increíble!" + } + } + }, + "verified-mastodon": { + "mappings": { + "0": { + "then": "Se encontró un enlace a tu perfil de Mastodon: {_mastodon_link}" + }, + "1": { + "then": "Encontramos un enlace a lo que parece ser una cuenta de Mastodon, pero no está verificada. Edita la descripción de tu perfil y coloca lo siguiente allí: Mastodon" } } } + }, + "title": { + "render": "Configuración" } }, "vending_machine": { + "description": "Capa que muestra máquinas expendedoras", + "filter": { + "1": { + "options": { + "0": { + "question": "Todas las máquinas expendedoras" + }, + "1": { + "question": "Venta de bebidas" + }, + "10": { + "question": "Venta de leche" + }, + "11": { + "question": "Venta de pan" + }, + "12": { + "question": "Venta de huevos" + }, + "13": { + "question": "Venta de helados" + }, + "14": { + "question": "Venta de queso" + }, + "15": { + "question": "Venta de miel" + }, + "16": { + "question": "Venta de patatas" + }, + "17": { + "question": "Venta de carne" + }, + "18": { + "question": "Venta de fruta" + }, + "19": { + "question": "Venta de fresas" + }, + "2": { + "question": "Venta de dulces" + }, + "20": { + "question": "Venta de flores" + }, + "21": { + "question": "Venta de tickets de aparcamiento" + }, + "22": { + "question": "Venta de monedas conmemorativas" + }, + "23": { + "question": "Venta de billetes de transporte público" + }, + "24": { + "question": "Venta de luces para bicicleta" + }, + "25": { + "question": "Venta de guantes" + }, + "26": { + "question": "Venta de kits de reparación para bicicletas" + }, + "27": { + "question": "Venta de bombas para bicicletas" + }, + "28": { + "question": "Venta de candados para bicicletas" + }, + "3": { + "question": "Venta de comida" + }, + "4": { + "question": "Venta de cigarrillos" + }, + "5": { + "question": "Venta de preservativos" + }, + "6": { + "question": "Venta de café" + }, + "7": { + "question": "Venta de agua" + }, + "8": { + "question": "Venta de periódicos" + }, + "9": { + "question": "Venta de cámaras de aire para bicicleta" + } + } + } + }, + "name": "Máquinas Expendedoras", + "presets": { + "0": { + "title": "una máquina expendedora" + } + }, "tagRenderings": { "bicycle_tube_vending_machine-brand": { "mappings": { "0": { - "then": "Las cámaras Continental se venden aquí" + "then": "Aquí se venden cámaras Continental" }, "1": { - "then": "Las cámaras Schwalbe se venden aquí" + "then": "Aquí se venden cámaras Schwalbe" } }, - "question": "¿Qué cámaras se venden aquí?", - "render": "Las cámaras {brand} se venden aquí" + "question": "¿Qué marca de cámaras se venden aquí?", + "render": "Aquí se venden cámaras {brand}" }, "charge_cost_rewritten": { "renderings": { "0": { - "question": "¿Cuánto cuesta {product_name}?", - "render": "{product_name} cuesta {charge:{product_key}}" + "question": "¿Cuánto cuesta un/una {product_name}?", + "render": "Un/Una {product_name} cuesta {charge:{product_key}}" } }, "rewrite": { "into": { "0": { - "1": "una cámara para la bicicleta" + "1": "cámara de aire para bicicleta" + }, + "1": { + "1": "luz para bicicleta" + }, + "2": { + "1": "preservativo" } } } }, + "indoor": { + "mappings": { + "0": { + "then": "Esta máquina expendedora está al aire libre" + }, + "1": { + "then": "Esta máquina expendedora está en interiores" + }, + "2": { + "then": "Esta máquina expendedora está al aire libre" + } + }, + "question": "¿Esta máquina expendedora está en interiores?" + }, "operational_status": { "mappings": { "0": { "then": "Esta máquina expendedora funciona" }, "1": { - "then": "Esta máquina exprendedora está rota" + "then": "Esta máquina expendedora está rota" }, "2": { - "then": "Esta máquina exprendedora está cerrada" + "then": "Esta máquina expendedora está cerrada" }, "3": { - "then": "El estado operacional es {operational_status}" + "then": "El estado operativo es {operational_status}" } }, - "question": "¿Todavía funciona esta máquina expendedora?" + "question": "¿Esta máquina expendedora sigue operativa?" + }, + "operator": { + "freeform": { + "placeholder": "Nombre del operador" + }, + "question": "¿Quién opera esta máquina expendedora?", + "render": "Esta máquina expendedora es operada por {operator}" + }, + "phone": { + "override": { + "question": "¿Cuál es el número de teléfono del operador de esta máquina expendedora?", + "questionHint": "Este es el número al que puedes llamar en caso de problemas con la máquina expendedora" + } }, "vending": { "mappings": { + "0": { + "then": "Se venden bebidas" + }, + "1": { + "then": "Se venden dulces" + }, + "10": { + "then": "Se vende pan" + }, + "11": { + "then": "Se venden huevos" + }, + "12": { + "then": "Se venden helados" + }, + "13": { + "then": "Se vende queso" + }, + "14": { + "then": "Se vende miel" + }, + "15": { + "then": "Se venden patatas" + }, + "16": { + "then": "Se vende carne" + }, + "17": { + "then": "Se vende fruta" + }, + "18": { + "then": "Se venden fresas" + }, + "19": { + "then": "Se venden flores" + }, + "2": { + "then": "Se vende comida" + }, + "20": { + "then": "Se venden tickets de aparcamiento" + }, + "21": { + "then": "Se venden monedas conmemorativas" + }, + "22": { + "then": "Se venden billetes de transporte público" + }, "23": { - "then": "Las luces para bicicletas se venden aquí" + "then": "Se venden luces para bicicleta" }, "24": { - "then": "Los guantes se venden aquí" + "then": "Se venden guantes" }, "25": { - "then": "Los kits de reparación de bicicletas se venden aquí" + "then": "Se venden kits de reparación para bicicletas" }, "26": { - "then": "Las bombas para bicicletas se venden aquí" + "then": "Se venden bombas para bicicletas" }, "27": { - "then": "Aquí se venden candados para bicicletas" + "then": "Se venden candados para bicicletas" + }, + "3": { + "then": "Se venden cigarrillos" + }, + "4": { + "then": "Se venden preservativos" + }, + "5": { + "then": "Se vende café" + }, + "6": { + "then": "Se vende agua potable" + }, + "7": { + "then": "Se venden periódicos" }, "8": { - "then": "Aquí se venden cámaras de aire para bicicletas" + "then": "Se venden cámaras de aire para bicicleta" + }, + "9": { + "then": "Se vende leche" } - } + }, + "question": "¿Qué vende esta máquina expendedora?", + "render": "Esta máquina expendedora vende {vending}" } + }, + "title": { + "mappings": { + "0": { + "then": "Máquina expendedora {name}" + }, + "1": { + "then": "Máquina expendedora {brand}" + } + }, + "render": "Máquina expendedora" } }, "veterinary": { "name": "veterinario", "presets": { "0": { - "description": "un veterinario, que trata a perros", + "description": "un veterinario que trata perros", "title": "un veterinario" } }, "tagRenderings": { "vetName": { - "question": "¿Cual es el nombre de este veterinario?", + "question": "¿Cuál es el nombre de este veterinario?", "render": "El nombre de este veterinario es {name}" } }, @@ -5311,15 +12233,27 @@ } }, "viewpoint": { - "description": "Un buen mirador o una buena vista. Ideal para añadir una imagen si no encaja en ninguna otra categoría", + "description": "Un buen mirador o una buena vista. Ideal para agregar una imagen si ninguna otra categoría encaja", + "name": "Mirador", + "presets": { + "0": { + "title": "un mirador" + } + }, "tagRenderings": { "viewpoint-description": { - "question": "¿Quieres añadir una descripción?" + "question": "¿Quieres agregar una descripción?" } + }, + "title": { + "render": "Mirador" } }, + "village_green": { + "description": "Una capa que muestra zonas verdes (que son áreas verdes comunitarias, pero no exactamente parques)" + }, "visitor_information_centre": { - "description": "Un centro de visitantes ofrece información sobre una atracción específica o lugar de interese donde se sitúa.", + "description": "Un centro de visitantes ofrece información sobre una atracción o lugar de interés específico donde se encuentra.", "name": "Centro de Información al Visitante", "title": { "mappings": { @@ -5331,13 +12265,33 @@ } }, "walls_and_buildings": { - "description": "Capa especial incorporada que proporciona todas las paredes y edificios. Esta capa es útil en los preajustes para objetos que pueden colocarse contra las paredes (por ejemplo: AEDs, buzones de correos, entradas, direcciones, cámaras de vigilancia, ...). Esta capa es invisible por defecto y no puede ser activada por el usuario.", + "description": "Capa incorporada especial que proporciona todas las paredes y edificios. Esta capa es útil en los ajustes preestablecidos para objetos que se pueden colocar contra las paredes (por ejemplo, DEA, buzones, entradas, direcciones, cámaras de vigilancia, etc.). Esta capa es invisible de forma predeterminada y el usuario no puede activarla.", + "snapName": "una pared o edificio", + "tagRenderings": { + "entrance_info": { + "mappings": { + "0": { + "then": "No se ha marcado ninguna entrada" + }, + "1": { + "then": "Ninguna de las {_entrance_count} entradas tiene información de ancho todavía" + } + }, + "render": { + "after": "{_entrances_count_without_width_count} entradas aún no tienen información de ancho", + "before": "

Entradas

Este edificio tiene {_entrances_count} entradas:", + "special": { + "tagrendering": "Una entrada de {canonical(width)}" + } + } + } + }, "title": { "render": "Pared o edificio" } }, "waste_basket": { - "description": "Esta es una papelera pública, donde puedes tirar tu basura.", + "description": "Este es un contenedor de basura público, donde puedes tirar tu basura.", "filter": { "0": { "options": { @@ -5347,31 +12301,200 @@ "1": { "question": "Papelera para cigarrillos" }, + "2": { + "question": "Contenedor para drogas" + }, "3": { - "question": "Papelera para excrementos de perro" + "question": "Contenedor para excrementos de perro" }, "4": { - "question": "Papelera para basura" + "question": "Contenedor para basura" + }, + "5": { + "question": "Contenedor para objetos punzantes" }, "6": { - "question": "Papelera para plástico" + "question": "Contenedor para plástico" + }, + "7": { + "question": "Contenedor para envases de plástico, envases metálicos y cartones de bebidas (PMD)" + }, + "8": { + "question": "Contenedor para papel" } } }, "1": { "options": { "0": { - "question": "Papelera con dispensador de bolsas de excrementos (para perros)" + "question": "Contenedor con dispensador de bolsas para excrementos (de perro)" } } } + }, + "name": "Contenedor de basura", + "presets": { + "0": { + "title": "un contenedor de basura" + } + }, + "tagRenderings": { + "dispensing_dog_bags": { + "mappings": { + "0": { + "then": "Este contenedor tiene un dispensador de bolsas para excrementos (de perro)" + }, + "1": { + "then": "Este contenedor no tiene un dispensador de bolsas para excrementos (de perro)" + }, + "2": { + "then": "Este contenedor no tiene un dispensador de bolsas para excrementos (de perro)" + } + }, + "question": "¿Este contenedor tiene un dispensador de bolsas para excrementos de perro?" + }, + "waste-basket-waste-types": { + "mappings": { + "0": { + "then": "Un contenedor para basura general" + }, + "1": { + "then": "Un contenedor para basura general" + }, + "2": { + "then": "Un contenedor para excrementos de perro" + }, + "3": { + "then": "Un contenedor para cigarrillos" + }, + "4": { + "then": "Un contenedor para drogas" + }, + "5": { + "then": "Un contenedor para agujas y otros objetos punzantes" + }, + "6": { + "then": "Un contenedor para plástico" + }, + "7": { + "then": "Un contenedor para envases de plástico, envases metálicos y cartones de bebidas (PMD)" + }, + "8": { + "then": "Un contenedor para papel" + } + }, + "question": "¿Qué tipo de contenedor de basura es este?" + } + }, + "title": { + "render": "Contenedor de basura" + } + }, + "waste_disposal": { + "description": "Contenedor de residuos, contenedor mediano o grande para la eliminación de residuos (domésticos)", + "filter": { + "0": { + "options": { + "0": { + "question": "Solo acceso público" + } + } + } + }, + "name": "Contenedores de residuos", + "presets": { + "0": { + "description": "Contenedor mediano o grande para la eliminación de residuos (domésticos)", + "title": "un contenedor de residuos" + } + }, + "tagRenderings": { + "access": { + "mappings": { + "0": { + "then": "Este contenedor puede ser usado por cualquiera" + }, + "1": { + "then": "Este contenedor es privado" + }, + "2": { + "then": "Este contenedor es solo para residentes" + } + }, + "question": "¿Quién puede usar este contenedor de residuos?", + "render": "Acceso: {access}" + }, + "disposal-location": { + "mappings": { + "0": { + "then": "Este es un contenedor subterráneo" + }, + "1": { + "then": "Este contenedor está ubicado en interiores" + }, + "2": { + "then": "Este contenedor está ubicado en exteriores" + } + }, + "question": "¿Dónde se encuentra este contenedor?" + }, + "type": { + "mappings": { + "0": { + "then": "Este es un contenedor mediano o grande para la eliminación de residuos (domésticos)" + }, + "1": { + "then": "Este es en realidad un contenedor de reciclaje" + } + }, + "question": "¿Qué tipo de contenedor de residuos es este?" + } + }, + "title": { + "render": "Eliminación de residuos" } }, "windturbine": { - "tagRenderings": { - "windturbine-fixme": { - "render": "Información extra para expertos en OpenStreetMap: {fixme}" + "description": "Molinos de viento modernos que generan electricidad", + "name": "aerogenerador", + "presets": { + "0": { + "title": "un aerogenerador" } + }, + "tagRenderings": { + "turbine-diameter": { + "question": "¿Cuál es el diámetro del rotor de este aerogenerador, en metros?", + "render": "El diámetro del rotor de este aerogenerador es de {rotor:diameter} metros." + }, + "turbine-height": { + "question": "¿Cuál es la altura total de este aerogenerador (incluido el radio del rotor), en metros?", + "render": "La altura total (incluido el radio del rotor) de este aerogenerador es de {height} metros." + }, + "turbine-operator": { + "question": "¿Quién opera este aerogenerador?", + "render": "Este aerogenerador es operado por {operator}." + }, + "turbine-output": { + "question": "¿Cuál es la potencia de este aerogenerador? (por ejemplo, 2.3 MW)", + "render": "La potencia de este aerogenerador es de {generator:output:electricity}." + }, + "turbine-start-date": { + "question": "¿Cuándo entró en funcionamiento este aerogenerador?", + "render": "Este aerogenerador entró en funcionamiento el/en {start_date}." + }, + "windturbine-fixme": { + "question": "¿Hay algo mal en cómo está mapeado esto, que no pudiste solucionar aquí? (deja una nota para los expertos de OpenStreetMap)", + "render": "Información adicional para expertos de OpenStreetMap: {fixme}" + } + }, + "title": { + "mappings": { + "0": { + "then": "{name}" + } + }, + "render": "aerogenerador" } } } \ No newline at end of file diff --git a/langs/layers/fr.json b/langs/layers/fr.json index ef3a0b46c..f5cde9b37 100644 --- a/langs/layers/fr.json +++ b/langs/layers/fr.json @@ -111,6 +111,17 @@ }, "question": "Est-ce que cette publicité fait défiler différent messages ?" }, + "historic": { + "mappings": { + "0": { + "then": "C'est une publicité historique (publicité pour un commerce qui n'existe plus ou une très vielle publicité avec un intérêt patrimonial)" + }, + "1": { + "then": "Cette publicité n'a pas de valeur historique (le commerce existe toujours, mais n'a pas de valeur patrimoniale particulière)" + } + }, + "question": "Est-ce l'enseigne d'un commerce qui n'existe plus ou n'est plus en activité ?" + }, "luminous_or_lit_advertising": { "override": { "+mappings": { @@ -425,9 +436,6 @@ "mappings": { "0": { "then": "Cette œuvre est un mémorial" - }, - "1": { - "then": "Cette œuvre ne sert pas de banc" } }, "question": "Cet œuvre a-t-elle un rôle de mémorial ?" @@ -1116,9 +1124,6 @@ }, "2": { "then": "Accès limité aux membres d'une école, entreprise ou organisation" - }, - "3": { - "then": "Accès limité aux membres d'une école, entreprise ou organisation" } }, "question": "Qui peut utiliser ce parking à vélo ?", @@ -2267,10 +2272,10 @@ "1": { "then": "Cette horloge est fixée sur un mur" }, - "2": { + "3": { "then": "Cette horloge fait partie d'un panneau publicitaire" }, - "3": { + "4": { "then": "Cette horloge est posée au sol" } }, @@ -2359,17 +2364,6 @@ }, "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": { "mappings": { "0": { @@ -2890,7 +2884,7 @@ "render": "Informations supplémentaires à propos de l'emplacement (dans la langue locale) :
{defibrillator:location}" }, "defibrillator-defibrillator:location:en": { - "question": "Veuillez indiquez plus précisément où se situe le défibrillateur (en englais)", + "question": "Veuillez indiquez plus précisément où se situe le défibrillateur (en anglais)", "render": "Informations supplémentaires à propos de l'emplacement (en anglais) :
{defibrillator:location:en}" }, "defibrillator-defibrillator:location:fr": { @@ -7081,6 +7075,13 @@ }, "usersettings": { "tagRenderings": { + "a11y-features": { + "mappings": { + "0": { + "then": "Activer les fonctions d'accessibilité lorsque les touches directionnelles sont utilisées pour naviguer sur la carte" + } + } + }, "all-questions-at-once": { "mappings": { "0": { @@ -7139,13 +7140,10 @@ } } }, - "picture-license": { + "scalebar": { "mappings": { "1": { - "then": "Les photos que vous avez ajoutées seront sous licence CC0 et mises dans le domaine public. Cela signifie que n'importe qui pourra les utiliser, quel qu'en soit l'usage." - }, - "3": { - "then": "Les photos que vous prenez seront sous la licence CC-BY-SA 4.0 ce qui signifie que quiconque utilisant votre photo doit vous créditer et que les modifications apportées à votre photo doivent être repartagées avec la même licence." + "then": "Masquer la barre d'échelle" } } }, @@ -7558,4 +7556,4 @@ "render": "éolienne" } } -} \ No newline at end of file +} diff --git a/langs/layers/hu.json b/langs/layers/hu.json index ed474dcea..39cefc964 100644 --- a/langs/layers/hu.json +++ b/langs/layers/hu.json @@ -242,10 +242,10 @@ "bench-backrest": { "mappings": { "1": { - "then": "Van háttámlája" + "then": "A padnak van háttámlája" }, "2": { - "then": "Nincs háttámlája" + "then": "A padnak nincs háttámlája" } }, "question": "Van-e háttámlája ennek a padnak?" @@ -310,7 +310,7 @@ }, "bench-seats": { "question": "Hány ülőhely van ezen a padon?", - "render": "{seats} ülőhely" + "render": "A padra {seats} ember tud leülni" } }, "title": { @@ -439,7 +439,7 @@ }, "Name": { "question": "Mi a neve ennek a kocsmának?", - "render": "A kocsma neve: {name}" + "render": "A vállalkozás neve: {name}" } } }, @@ -589,7 +589,7 @@ "Fastfood vs restaurant": { "mappings": { "0": { - "then": "Ez egy gyorsétterem (büfé), amely a gyors kiszolgálásra összpontosít. Ha vannak is ülőhelyek, ezek meglehetősen korlátozottak és funkcionálisak." + "then": "Ez egy gyorsétterem (büfé), amely a gyors kiszolgálásra összpontosít. Ha van is ülőhely, az meglehetősen korlátozott és funkcionális." } } } @@ -650,6 +650,38 @@ } } }, + "note": { + "filter": { + "10": { + "options": { + "0": { + "question": "Legutóbb {search} felhasználó szerkesztette" + } + } + }, + "11": { + "options": { + "0": { + "question": "Legutóbb nem {search} felhasználó szerkesztette" + } + } + }, + "14": { + "options": { + "0": { + "question": "Legutóbb {search} előtt szerkesztették" + } + } + }, + "15": { + "options": { + "0": { + "question": "Legutóbb {search} után szerkesztették" + } + } + } + } + }, "postboxes": { "description": "Postaládákat megjelenítő réteg.", "name": "Postaládák", @@ -818,6 +850,13 @@ "email": { "question": "Mi a(z) {title()} e-mail címe?" }, + "last_edit": { + "render": { + "special": { + "text": "Legutóbb {_last_edit:contributor} szerkesztette ekkor: {_last_edit:timestamp}" + } + } + }, "opening_hours": { "question": "Mikor van nyitva ez: {title()}?", "render": "

Nyitva tartás

{opening_hours_table(opening_hours)}" @@ -857,6 +896,11 @@ "phone": { "question": "Mi a telefonszáma ennek: {title()}?" }, + "qr_code": { + "render": { + "after": "Szkenneld be ezt a kódot, hogy egy másik eszközön is meg tudd nyitni a helyet" + } + }, "service:electricity": { "mappings": { "0": { @@ -949,15 +993,417 @@ } } }, + "1": { + "applicableUnits": { + "0": { + "human": "{quantity} Volt" + } + } + }, + "2": { + "applicableUnits": { + "0": { + "human": "{quantity} A" + } + } + }, "3": { "applicableUnits": { "0": { - "human": "{quantity} méter" + "human": "{quantity} méter", + "humanSingular": "egy méter" + }, + "1": { + "human": "{quantity} centiméter", + "humanSingular": "egy centiméter" + }, + "2": { + "human": "{quantity} milliméter", + "humanSingular": "egy milliméter" + }, + "3": { + "human": "{quantity} láb" + } + } + }, + "4": { + "applicableUnits": { + "0": { + "human": "{quantity} kilméter/óra", + "humanShort": "{quantity} km/h" + }, + "1": { + "human": "{quantity} mérföld/óra", + "humanShort": "{quantity} mf/h" + } + } + }, + "5": { + "applicableUnits": { + "0": { + "human": "{quantity} perc", + "humanSingular": "egy perc" + }, + "1": { + "human": "{quantity} óra", + "humanSingular": "egy óra" + }, + "2": { + "human": "{quantity} nap", + "humanSingular": "egy nap" + }, + "3": { + "human": "{quantity} hét", + "humanSingular": "egy hét" + }, + "4": { + "human": "{quantity} hónap", + "humanSingular": "egy hónap" + }, + "5": { + "human": "{quantity} év", + "humanSingular": "egy év" } } } } }, + "usersettings": { + "description": "Egy speciális réteg, amelyet nem a térképen való megjelenítésre szántak, hanem a felhasználói beállítások megadására szolgál", + "tagRenderings": { + "a11y-features": { + "mappings": { + "0": { + "then": "Elérhető objektumok megjelenítése, amikor a térképen a nyílbillentyűkkel navigálsz" + }, + "1": { + "then": "Mindig jelenjenek meg az elérhető objektumok" + }, + "2": { + "then": "Soha ne jelenjenek meg az elérhető objektumok" + } + }, + "question": "Milyen elérhetőségi jellemzők jelenjenek meg?" + }, + "add-new-feature": { + "mappings": { + "0": { + "then": "Új objektum a bal alsó sarokban található gombbal vihető fel. A térképre kattintva nem történik semmi" + }, + "1": { + "then": "Kattintás vagy koppintás után a térképen megjelenik egy jelölő ott, ahol fel lehet vinni egy új objektumot" + }, + "2": { + "then": "Jobb egérgombbal kattintva vagy hosszú nyomás után a térképen megjelenik egy jelölő ott, ahol fel lehet vinni egy új objektumot" + }, + "3": { + "then": "Kattintás vagy koppintás után a térképen megjelenik egy jelölő ott, ahol fel lehet vinni egy új objektumot. Ezen kívül a bal alsó sarokban is látható egy gomb" + }, + "4": { + "then": "Jobb egérgombbal kattintva vagy hosszú nyomás után a térképen megjelenik egy jelölő ott, ahol fel lehet vinni egy új objektumot. Ezen kívül a bal alsó sarokban is látható egy gomb" + } + }, + "question": "Hogyan nyíljék meg az új objektum hozzáadására szolgáló menü?" + }, + "all-questions-at-once": { + "mappings": { + "0": { + "then": "Az infoboxban szereplő összes kérdés egyszerre jelenjék meg" + }, + "1": { + "then": "A kérdések egymás után jelenjenek meg" + } + }, + "question": "Egyenként vagy együttesen jelenjenek meg az ismeretlen adatokra vonatkozó kérdések?" + }, + "background-layer": { + "mappings": { + "0": { + "then": "Alapértelmezett háttér: az alapértelmezés szerinti" + }, + "1": { + "then": "Alapértelmezett háttér: OpenStreetMap-carto" + }, + "2": { + "then": "Alapértelmezett háttér: légi felvételek" + }, + "3": { + "then": "Alapértelmezett háttér: egy nem OpenStreetMap-alapú réteg" + }, + "4": { + "then": "Alapértelmezett háttér: a jelenlegi {__current_background} háttérréteg" + }, + "5": { + "then": "Alapértelmezett háttér: {mapcomplete-preferred-background-layer} háttérréteg" + } + }, + "question": "Milyen háttérréteg jelenjék meg alapértelmezés szerint?", + "questionHint": "Ha szeretnél egy adott hátteret alapértelmezettként beállítani, először válaszd ki a háttér menüben, és ez után fog itt megjelenni." + }, + "background-layer-readonly": { + "render": "Ennek a tematikus térképnek van előre meghatározott háttérrétegkészlete. Itt ezért nem alkalmazható az általad beállított alapértelmezett tematikustérkép-beállítás" + }, + "clear_cache": { + "render": { + "after": "A gyorsítótárak törlése a helyileg letöltött adatokat és kódot is törli. Ugyanakkor továbbra is bejelentkezve maradsz, és a beállításaid megmaradnak. Adat nem vész el", + "special": { + "text": "Gyorsítótárak törlése" + } + } + }, + "contributor-thanks": { + "mappings": { + "0": { + "then": "{_code_contributions} elemmel járultál hozzá a MapComplete kódjához! Fantasztikus!" + } + } + }, + "cscount-thanks": { + "mappings": { + "0": { + "then": "Eddig {_csCount} szerkesztést végeztél a térképen! Fantasztikus!" + } + } + }, + "debug-title": { + "render": "

Hibakeresési lehetőségek

" + }, + "edit-profile": { + "render": { + "special": { + "text": "Profilleírás szerkesztése" + } + } + }, + "fixate-north": { + "mappings": { + "0": { + "then": "Térkép forgatásának engedélyezése" + }, + "1": { + "then": "Mindig fölfelé legyen észak" + } + }, + "question": "Északnak mindig fent kell lennie?" + }, + "inbox": { + "mappings": { + "0": { + "then": { + "special": { + "text": "Beérkezett levelet megnyitása" + } + } + }, + "1": { + "then": { + "special": { + "text": "{_unreadMessages} üzeneted van
Nyisd meg a bejövő üzeneteket" + } + } + } + } + }, + "language_picker": { + "mappings": { + "0": { + "then": "A nyelv egy URL-paraméterrel lett megadva ezért felhasználó nem tudja beállítani." + } + } + }, + "mangrove-key-import": { + "render": { + "after": "A privát kulcs feltöltése törli a jelenlegi privát kulcsot. Ha írtál vele értékelést, akkor először töltsd le a jelenlegi privát kulcsodat", + "special": { + "text": "Mangrove privát kulcs importálása biztonsági mentésből" + } + } + }, + "mangrove-keys": { + "render": { + "after": "Bárki, aki birtokában van ennek a fájlnak, a te személyazonosságoddal írhat értékelést", + "special": { + "text": "Mangrove-fiók privát kulcsának letöltése" + } + } + }, + "more_privacy": { + "mappings": { + "0": { + "then": "Az OpenStreetMap szerkesztésekor ne jelenjék meg, hogy milyen messze voltál a módosított objektumoktól." + }, + "1": { + "then": "Az OpenStreetMap szerkesztésekor hozzávetőlegesen jelenjék meg, hogy milyen messze voltál a módosított objektumoktól. A többi térképész így jobban látja, hogy hogyan végezted a szerkesztést" + } + }, + "question": "A szerkesztéseknél megjelenjék-e egy hozzávetőleges jelzés arról, hogy milyen messze voltál az objektumtól?", + "questionHint": "Ha módosítasz egy objektumot, és engedélyezed a helymeghatározást, akkor a rendszer elmenti a körülbelüli helyedet: jelzi, hogy 25 méteren, 500 méteren vagy 5 kilométeren belül vagy 5 km-nél távolabb voltál. A többi térképész így jobban látja, milyen körülmények között szerkesztetted a térképet, de egyúttal azt is jelzi, hogy hol voltál ebben az időpontban. " + }, + "more_privacy_theme_override": { + "mappings": { + "0": { + "then": "Ez a tematikus térkép érzékeny. A módosításból nem fog kiderülni, hogy kifejezetten a közelben voltál-e." + } + } + }, + "profile-description": { + "mappings": { + "0": { + "then": { + "special": { + "text": "Profilleírás hozzáadása" + } + } + } + } + }, + "scalebar": { + "mappings": { + "0": { + "then": "Méretarány megjelenítése" + }, + "1": { + "then": "Méretarány elrejtése" + } + }, + "question": "Megjelenjék-e a méretarány a térképen?" + }, + "settings-link": { + "render": { + "special": { + "text": "Beállításaid megnyitása az OpenStreetMap.org-on" + } + } + }, + "show_crosshair": { + "question": "Megjelenjék-e egy célkereszt a kijelző közepén?", + "questionHint": "Segíthet egy-egy új elem pontos elhelyezésében" + }, + "show_debug": { + "mappings": { + "0": { + "then": "Jelenjenek meg a hibakeresési információk" + }, + "1": { + "then": "Ne jelenjenek meg hibakeresési információk" + }, + "2": { + "then": "Ne jelenjenek meg hibakeresési információk" + } + }, + "question": "Megjelenjenek-e a felhasználónak a hibakeresési (debug) információk?" + }, + "show_tags": { + "mappings": { + "0": { + "then": "Soha ne jelenjenek meg a címkék." + }, + "1": { + "then": "Azok a címkék jelenjenek meg, amelyeket {__userjourney_tagsVisibleAt} módosításkészlet elvégzését követően alkalmaztam" + }, + "2": { + "then": "A módosításkor alkalmazott címkék jelenjenek meg" + }, + "3": { + "then": "A módosításkor alkalmazott címkék jelenjenek meg és minden objektumon jelenjék meg a címketáblázat" + } + }, + "question": "Megjelenjenek-e a nyers OpenStreetMap-címkék?", + "questionHint": "A címkék olyan tulajdonságok, amelyekkel minden térképobjektum rendelkezik. Ezek az adatbázisban tárolt technikai adatok. A MapComplete programmal történő szerkesztéshez nincs szükség ezekre az adatokra, haladó felhasználóknak azonban érdemes lehet referenciaként használniuk." + }, + "sync-visited-locations": { + "mappings": { + "0": { + "then": "Az openstreetmap.org-on legyenek elmentve az általam megkeresett és szerkesztett helyek. Ezeket az előzményeket az OpenStreetMap és az összes hozzá kapcsolódó alkalmazás láthatja" + }, + "1": { + "then": "A saját készülékemen legyenek elmentve az általam megkeresett és szerkesztett helyek" + }, + "2": { + "then": "Ne legyenek elmentve az általam megkeresett és szerkesztett helyek " + } + }, + "question": "Meg legyenek-e jegyezve az általad megkeresett és szerkesztett helyek?", + "questionHint": "Ezek a helyszínek a keresési menüben lesznek felajánlva" + }, + "sync-visited-themes": { + "mappings": { + "0": { + "then": "Az openstreetmap.org-on legyenek elmentve és szinkronizálva az általam megnézett tematikus térképek. Ezeket az előzményeket az OpenStreetMap és az összes hozzá kapcsolódó alkalmazás láthatja" + }, + "1": { + "then": "A saját készülékemen legyenek elmentve a meglátogatott tematikus térképek" + }, + "2": { + "then": "Ne legyenek elmentve a megnézett térképek" + } + }, + "question": "El legyenek-e mentve a meglátogatott tematikus térképek?", + "questionHint": "A MapComplete meg tudja jegyezni, hogy megnéztél egy bizonyos témájú térképet, és ezt később felajánlja javaslatként." + }, + "title-editing": { + "render": "

Szerkesztési beállítások

" + }, + "title-id": { + "render": "

Mangrove ID (azonosító) kezelése

" + }, + "title-map": { + "render": "

Térkép beállítása

" + }, + "title-privacy-legal": { + "render": "

Adatvédelem és jog

" + }, + "translation-completeness": { + "mappings": { + "0": { + "then": "Teljesen le van fordítva" + } + }, + "render": "A {_theme} térkép {_language} nyelvű fordításai {_translation_percentage}%-ban készen vannak: {_translation_total} szövegrészletből {_translation_translated_count} kész" + }, + "translation-help": { + "mappings": { + "0": { + "then": "Kattints a „fordítás” ikonra egy-egy szövegrészlet mellett, ha szeretnéd lefordítani vagy kijavítani. Ehhez szükséged lesz egy Weblate-fiókra. Létrehozhatsz egyet az OSM-felhasználóneveddel, hogy automatikusan fel legyen oldva a fordítási mód." + } + } + }, + "translation-mode": { + "mappings": { + "0": { + "then": "Ne jelenjék meg a fordítások gyors módosítására szolgáló gomb" + }, + "1": { + "then": "Jelenítsen meg egy gombot a fordítások gyors megnyitásához a MapComplete nagy képernyőn történő használatakor" + }, + "2": { + "then": "Mindig jelenítse meg a fordítási gombokat, mobilon is" + } + }, + "question": "Szívesen segítenél a MapComplete fordításában?" + }, + "translation-thanks": { + "mappings": { + "0": { + "then": "A MapComplete fordításához {_translation_contributions} elemmel járultál hozzá! Fantasztikus!" + } + } + }, + "verified-mastodon": { + "mappings": { + "0": { + "then": "Megtaláltuk a Mastodon-profilodra mutató linket : {_mastodon_link}" + }, + "1": { + "then": "Találtunk egy linket, ami egy Mastodon-fióknak tűnik, de nem ellenőrzött. Lépj be a profilod szerkesztéséhez, és add meg a következőt: <a href=\"{_mastodon_candidate}\" rel=\"me\">Mastodon</a>" + } + } + } + }, + "title": { + "render": "Beállítások" + } + }, "vending_machine": { "tagRenderings": { "operational_status": { diff --git a/langs/layers/it.json b/langs/layers/it.json index f49b4d14f..a14974143 100644 --- a/langs/layers/it.json +++ b/langs/layers/it.json @@ -600,9 +600,6 @@ }, "2": { "then": "Accesso limitato ai membri di una scuola, una compagnia o un’organizzazione" - }, - "3": { - "then": "Accesso limitato ai membri di una scuola, una compagnia o un’organizzazione" } }, "question": "Chi può usare questo parcheggio bici?", diff --git a/langs/layers/ko.json b/langs/layers/ko.json new file mode 100644 index 000000000..7a73a41bf --- /dev/null +++ b/langs/layers/ko.json @@ -0,0 +1,2 @@ +{ +} \ No newline at end of file diff --git a/langs/layers/nl.json b/langs/layers/nl.json index b23b74540..151d5e4cb 100644 --- a/langs/layers/nl.json +++ b/langs/layers/nl.json @@ -994,6 +994,17 @@ } }, "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": { "mappings": { "0": { @@ -1017,6 +1028,17 @@ }, "question": "Hoeveel kost het gebruik van het fietsschoonmaakpunt?", "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": { @@ -1049,7 +1071,7 @@ "then": "Private fietsenstalling van een school, een bedrijf, ..." }, "3": { - "then": "Private fietsenstalling van een school, een bedrijf, ..." + "then": "Private fietsenstalling die niet voor het grote publiek toegankelijk is (dus ook niet met bv. een abonnement)" } }, "question": "Wie mag er deze fietsenstalling gebruiken?", @@ -1063,6 +1085,9 @@ "1": { "then": "Rek met zijbeugel" }, + "10": { + "then": "Een aanleunbeugel met klem waarbij je de zadelbuis in een anker kan vastklikken. Er is meestal een oog om een slot door te steken" + }, "2": { "then": "Wielrek/lussen" }, @@ -2659,6 +2684,10 @@ "1": { "description": "Een publiekelijk zichtbare 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": { @@ -2739,18 +2768,34 @@ }, "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": { "mappings": { "0": { "then": "Deze klok is bevestigd aan een paal" }, "1": { - "then": "Deze klok is bevestigd aan een muur" + "then": "Deze klok is bevestigd aan een muur, meestal met een steun loodrecht op de muur" }, "2": { - "then": "Deze klok is onderdeel van een reclamebord" + "then": "Deze klok is rechtstreeks aan een muur bevestigd" }, "3": { + "then": "Deze klok is onderdeel van een reclamebord" + }, + "4": { "then": "Deze klok staat op de grond" } }, @@ -2850,17 +2895,6 @@ }, "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": { "mappings": { "0": { @@ -2943,6 +2977,57 @@ } }, "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": { @@ -3290,7 +3375,7 @@ "incline": { "mappings": { "0": { - "then": "De straat hier is (waarschijnlijk) zonder helling" + "then": "De straat heeft hier (waarschijnlijk) geen helling" } } }, @@ -6299,6 +6384,9 @@ "presets": { "0": { "title": "een brievenbus" + }, + "1": { + "title": "een brievenbus tegen een muur" } }, "title": { @@ -6686,6 +6774,17 @@ "editButtonAriaLabel": "Pas emailadres aan", "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": { "mappings": { "0": { @@ -9229,23 +9328,6 @@ } } }, - "picture-license": { - "mappings": { - "0": { - "then": "Afbeeldingen die je toevoegt zullen gepubliceerd worden met de CC0-licentie en dus aan het publieke domein toegevoegd worden. Dit betekent dat iedereen je afbeeldingen kan gebruiken voor elk mogelijks gebruik. Dit is de standaard-instelling" - }, - "1": { - "then": "Afbeeldingen die je toevoegt zullen gepubliceerd worden met de CC0-licentie en dus aan het publieke domein toegevoegd worden. Dit betekent dat iedereen je afbeeldingen kan gebruiken voor elk mogelijks gebruik." - }, - "2": { - "then": "Afbeeldingen die je toevoegt zullen gepubliceerd worden met de CC-BY 4.0-licentie. Dit betekent dat iedereen je afbeelding mag gebruiken voor elke toepassing mits het vermelden van je naam" - }, - "3": { - "then": "Afbeeldingen die je toevoegt zullen gepubliceerd worden met de CC-BY-SA 4.0-licentie. Dit betekent dat iedereen je afbeelding mag gebruiken voor elke toepassing mits het vermelden van je naam en dat afgeleide werken van je afbeelding ook ondere deze licentie moeten gepubliceerd worden." - } - }, - "question": "Met welke licentie wil je je afbeeldingen toevoegen?" - }, "profile-description": { "mappings": { "0": { diff --git a/langs/layers/pl.json b/langs/layers/pl.json index e7ae159ec..5aead3423 100644 --- a/langs/layers/pl.json +++ b/langs/layers/pl.json @@ -1356,10 +1356,10 @@ "1": { "then": "Ten zegar jest zamontowany na ścianie" }, - "2": { + "3": { "then": "Ten zegar jest częścią bilbordu" }, - "3": { + "4": { "then": "Ten zegar jest na ziemi" } }, @@ -1398,13 +1398,6 @@ "render": "Zegar" } }, - "crossings": { - "tagRenderings": { - "crossing-is-zebra": { - "question": "Czy to jest przejście dla pieszych typu \"zebra\"?" - } - } - }, "cycle_highways": { "name": "ścieżki rowerowe", "title": { @@ -3714,4 +3707,4 @@ "render": "turbina wiatrowa" } } -} \ No newline at end of file +} diff --git a/langs/layers/pt.json b/langs/layers/pt.json index 9a422c5ca..258334e12 100644 --- a/langs/layers/pt.json +++ b/langs/layers/pt.json @@ -1140,9 +1140,6 @@ }, "2": { "then": "Acesso é limitado aos membros de uma escola, companhia ou organização" - }, - "3": { - "then": "Acesso é limitado aos membros de uma escola, companhia ou organização" } }, "question": "Quem pode usar este estacionamento de bicicletas?", @@ -1912,23 +1909,6 @@ } } }, - "picture-license": { - "mappings": { - "0": { - "then": "As fotos que você tirar serão licenciadas com CC0 e adicionadas ao domínio público. Isso significa que todos podem usar suas fotos para qualquer finalidade. Esta é a escolha padrão." - }, - "1": { - "then": "As fotos que você tirar serão licenciadas com CC0 e adicionadas ao domínio público. Isso significa que todos podem usar suas fotos para qualquer finalidade." - }, - "2": { - "then": "As fotos que você tirar serão licenciadas com CC-BY 4.0, que exige que todos que usam sua foto atribuam a você" - }, - "3": { - "then": "As fotos que você tirar serão licenciadas com CC-BY-SA 4.0, o que significa que todos que usarem sua foto devem atribuí-lo e que os derivados de sua foto devem ser compartilhados novamente com a mesma licença." - } - }, - "question": "Sob que licença você deseja publicar suas fotos?" - }, "profile-description": { "mappings": { "0": { diff --git a/langs/layers/pt_BR.json b/langs/layers/pt_BR.json index 8b02e1a05..329bc33fd 100644 --- a/langs/layers/pt_BR.json +++ b/langs/layers/pt_BR.json @@ -1134,9 +1134,6 @@ }, "2": { "then": "Acesso é limitado aos membros de uma escola, companhia ou organização" - }, - "3": { - "then": "Acesso é limitado aos membros de uma escola, companhia ou organização" } }, "question": "Quem pode usar este estacionamento de bicicletas?", diff --git a/langs/layers/ru.json b/langs/layers/ru.json index 7202e84a3..24d5ea510 100644 --- a/langs/layers/ru.json +++ b/langs/layers/ru.json @@ -74,6 +74,9 @@ "render": "Станция скорой помощи" } }, + "animal_shelter": { + "name": "Приюты для животных" + }, "artwork": { "description": "Разнообразные произведения искусства", "name": "Произведения искусства", @@ -859,6 +862,9 @@ "description": "Этот слой визуализирует направление", "name": "Визуализация направления" }, + "dogpark": { + "name": "парки для собак" + }, "drinking_water": { "name": "Питьевая вода", "presets": { @@ -1066,6 +1072,9 @@ "render": "Велосипед Ghost" } }, + "gps_track": { + "name": "Ваш пройденный путь" + }, "hackerspace": { "description": "Хакерспейс", "name": "Хакерспейс", @@ -1304,6 +1313,13 @@ "render": "Карта" } }, + "maxspeed": { + "tagRenderings": { + "maxspeed-maxspeed": { + "question": "С какой максимальной скоростью разрешено ездить по этой дороге?" + } + } + }, "memorial": { "tagRenderings": { "start_date": { @@ -1976,6 +1992,13 @@ "render": "Тропа" } }, + "transit_routes": { + "tagRenderings": { + "via": { + "question": "Где находится конечный пункт этого автобусного маршрута?" + } + } + }, "tree_node": { "name": "Дерево", "presets": { @@ -2064,14 +2087,8 @@ } }, "usersettings": { - "tagRenderings": { - "picture-license": { - "mappings": { - "1": { - "then": "Изображения будут опубликованы под лицензией CC0 и перейдут в общественное достояние. Это значит, что кто угодно имеет право использовать их без ограничений." - } - } - } + "title": { + "render": "Настройки" } }, "vending_machine": { @@ -2095,6 +2112,9 @@ } } }, + "veterinary": { + "name": "ветеринария" + }, "viewpoint": { "name": "Смотровая площадка", "presets": { @@ -2122,12 +2142,51 @@ } }, "waste_basket": { + "filter": { + "1": { + "options": { + "0": { + "question": "Корзина для мусора с дозатором для пакетов (собачьих) экскрементов" + } + } + } + }, "name": "Контейнер для мусора", "presets": { "0": { "title": "Контейнер для мусора" } }, + "tagRenderings": { + "waste-basket-waste-types": { + "mappings": { + "1": { + "then": "Корзина для общих отходов" + }, + "2": { + "then": "Корзина для собачьих экскрементов" + }, + "3": { + "then": "Корзина для сигарет" + }, + "4": { + "then": "Корзина для наркотиков" + }, + "5": { + "then": "Корзина для иголок и других острых предметов" + }, + "6": { + "then": "Корзина для пластика" + }, + "7": { + "then": "Корзина для пластиковой упаковки, металлической упаковки и картонной упаковки из-под напитков (PMD)" + }, + "8": { + "then": "Корзина для бумаг" + } + } + } + }, "title": { "render": "Контейнер для мусора" } diff --git a/langs/layers/uk.json b/langs/layers/uk.json new file mode 100644 index 000000000..d93f178f1 --- /dev/null +++ b/langs/layers/uk.json @@ -0,0 +1,2203 @@ +{ + "address": { + "description": "Адреси", + "name": "Відомі адреси в OSM", + "tagRenderings": { + "fixme": { + "question": "Що тут треба виправити? Поясніть, будь ласка" + }, + "housenumber": { + "mappings": { + "0": { + "then": "Ця будівля не має номера будинку" + } + }, + "question": "Який номер цього будинку?", + "render": "Номер будинку {addr:housenumber}" + }, + "street": { + "question": "На якій вулиці знаходиться ця адреса?", + "render": "Ця адреса знаходиться на вулиці {addr:street}" + } + }, + "title": { + "render": "Відома адреса" + } + }, + "advertising": { + "description": "Ми доповнимо дані з рекламних об'єктів посиланням, оператором та освітленням", + "name": "Оголошення", + "presets": { + "0": { + "description": "Велика зовнішня рекламна конструкція, зазвичай розташована в місцях з високим трафіком, наприклад, уздовж жвавих доріг", + "title": "білборд" + }, + "1": { + "description": "Велика зовнішня рекламна конструкція, зазвичай розташована в місцях з високим трафіком, наприклад, уздовж жвавих доріг, встановлена на стіні", + "title": "білборд, прикріплений до стіни" + }, + "10": { + "title": "екран, встановлений на тимчасовому укритті" + }, + "11": { + "description": "Шматок водонепроникного текстилю з надрукованим повідомленням, постійно закріплений на стіні", + "title": "брезент" + }, + "12": { + "title": "тотем" + }, + "13": { + "description": "Використовується для рекламних вивісок, неонових вивісок, логотипів та вхідних табличок установ", + "title": "знак" + }, + "14": { + "title": "скульптура" + }, + "15": { + "title": "настінний розпис" + }, + "2": { + "title": "окремо стояча коробка для плакатів" + }, + "3": { + "title": "коробка для плакатів, що кріпиться на стіну" + }, + "4": { + "title": "афішна скринька, що є частиною зупинки громадського транспорту" + }, + "5": { + "description": "Невеликий білборд для місцевої реклами, в основному призначений для пішоходів", + "title": "дошка" + }, + "6": { + "description": "Циліндрична зовнішня конструкція, що показує рекламу", + "title": "стовпчик" + }, + "7": { + "title": "прапор" + }, + "8": { + "title": "екран" + }, + "9": { + "title": "екран, встановлений на стіні" + } + }, + "tagRenderings": { + "Sides": { + "mappings": { + "0": { + "then": "Цей об'єкт має рекламу з одного боку" + }, + "1": { + "then": "Цей об'єкт має рекламу з обох боків" + } + }, + "question": "Зі скількох сторін можна дивитися рекламу?" + }, + "animated": { + "mappings": { + "0": { + "then": "Статичний, завжди показує одне й те саме повідомлення" + }, + "1": { + "then": "Цей об'єкт має вбудований цифровий дисплей для відображення цін або іншого повідомлення" + }, + "2": { + "then": "Поділ - білборд складається з багатьох трикутних призм, які регулярно обертаються" + }, + "3": { + "then": "Прокрутка постерів" + }, + "4": { + "then": "Обертається на себе" + } + }, + "question": "Чи циркулює ця реклама через кілька повідомлень?" + }, + "historic": { + "mappings": { + "0": { + "then": "Це історична рекламна вивіска (реклама підприємства, яке більше не існує, або дуже стара вивіска, що має історичну цінність)" + }, + "1": { + "then": "Ця рекламна вивіска не має історичної цінності (бізнес все ще існує і не має історичної цінності)" + } + }, + "question": "Це знак для бізнесу, який більше не існує або більше не підтримується?" + }, + "luminous_or_lit_advertising": { + "override": { + "+mappings": { + "0": { + "then": "Це неонова лампа" + } + } + } + }, + "message_type": { + "mappings": { + "0": { + "then": "Комерційне повідомлення" + }, + "1": { + "then": "Місцева інформація" + }, + "2": { + "then": "Інформація про безпеку" + }, + "3": { + "then": "Передвиборча реклама" + }, + "4": { + "then": "Інформація, пов'язана з театром, концертами, …" + }, + "5": { + "then": "Повідомлення від неприбуткових організацій" + }, + "6": { + "then": "Щоб висловити свою думку" + }, + "7": { + "then": "Релігійне послання" + }, + "8": { + "then": "Ознака фінансування" + }, + "9": { + "then": "Карта" + } + }, + "question": "Яке повідомлення відображається?" + }, + "operator": { + "question": "Хто керує цим об'єктом?", + "render": "Управляється {operator}" + }, + "ref": { + "question": "Який номер посилання?", + "render": "Номер посилання: {ref}" + }, + "type": { + "mappings": { + "0": { + "then": "Це білборд" + }, + "1": { + "then": "Це дошка" + }, + "10": { + "then": "Це настінний розпис" + }, + "11": { + "then": "Це кахельна плитка - реклама намальована на плитці" + }, + "3": { + "then": "Це прапор" + }, + "4": { + "then": "Це скринька для плакатів" + }, + "5": { + "then": "Це екран" + }, + "6": { + "then": "Це скульптура" + } + } + } + } + }, + "ambulancestation": { + "tagRenderings": { + "ambulance-place": { + "question": "Де знаходиться станція? (наприклад, назва району, села чи міста)" + }, + "ambulance-street": { + "question": "Як називається вулиця, на якій розташована станція?" + } + } + }, + "artwork": { + "description": "Відкрита мапа статуй, бюстів, графіті та інших творів мистецтва по всьому світу", + "tagRenderings": { + "artwork-artist-wikidata": { + "question": "Хто створив цю роботу?" + }, + "artwork-artwork_type": { + "mappings": { + "0": { + "then": "Архітектура" + }, + "1": { + "then": "Мурал" + }, + "10": { + "then": "Азулехо (іспанська декоративна плитка)" + }, + "11": { + "then": "Кахельна плитка" + }, + "12": { + "then": "Різьба по дереву" + }, + "2": { + "then": "Живопис" + }, + "3": { + "then": "Скульптура" + }, + "4": { + "then": "Статуя" + }, + "5": { + "then": "Бюст" + }, + "6": { + "then": "Камінь" + }, + "7": { + "then": "Інсталяція" + }, + "8": { + "then": "Графіті" + }, + "9": { + "then": "Рельєф" + } + } + }, + "doubles_as_bench": { + "mappings": { + "0": { + "then": "Цей витвір мистецтва також слугує лавкою" + }, + "1": { + "then": "Цей витвір мистецтва не слугує лавкою" + } + }, + "question": "Чи слугує ця робота лавкою?" + }, + "doubles_as_memorial": { + "mappings": { + "0": { + "then": "Цей витвір мистецтва також слугує меморіалом" + }, + "1": { + "then": "Ця робота не є меморіалом" + } + }, + "question": "Чи слугує ця робота меморіалом?" + } + } + }, + "assisted_repair": { + "tagRenderings": { + "item:repair": { + "mappings": { + "0": { + "then": "Тут ремонтують мобільні телефони" + } + } + } + } + }, + "atm": { + "tagRenderings": { + "speech_output": { + "mappings": { + "0": { + "then": "Цей банкомат має мовний вихід, зазвичай доступний через роз'єм для навушників" + } + } + } + } + }, + "bench": { + "tagRenderings": { + "bench-armrest": { + "mappings": { + "0": { + "then": "Ця лавка має один або кілька підлокітників" + }, + "1": { + "then": "Ця лавка не має підлокітників" + } + }, + "question": "Чи має ця лавка один або кілька підлокітників?" + }, + "bench-artwork": { + "mappings": { + "0": { + "then": "Ця лавка має інтегрований арт-об'єкт" + }, + "1": { + "then": "Ця лавка не має інтегрованого художнього оформлення" + } + }, + "question": "Чи є в цій лавці художній елемент?", + "questionHint": "Наприклад, він має інтегровану картину, статую або іншу нетривіальну, творчу роботу" + }, + "bench-backrest": { + "mappings": { + "0": { + "then": "Ця лавка двостороння і має спільну спинку" + }, + "1": { + "then": "Ця лавка має спинку" + }, + "2": { + "then": "Ця лавка не має спинки" + } + }, + "question": "Чи є у цієї лавки спинка?" + }, + "bench-inscription": { + "mappings": { + "0": { + "then": "Ця лавка не має напису" + }, + "1": { + "then": "Ця лавка імовірно не має напису" + } + }, + "question": "Чи є на цій лавці напис?", + "questionHint": "Наприклад, на вмонтованій табличці, в спинці крісла, …", + "render": "Ця лавка має такий напис:

{inscription}

" + } + } + }, + "bench_at_pt": { + "deletion": { + "extraDeleteReasons": { + "0": { + "explanation": "Ця автобусна зупинка більше не використовується" + } + }, + "nonDeleteMappings": { + "0": { + "then": "На цій зупинці немає лавки (ніколи не було або її прибрали)" + } + } + } + }, + "bicycle_rental": { + "deletion": { + "extraDeleteReasons": { + "0": { + "explanation": "{title()} закрито назавжди" + } + }, + "nonDeleteMappings": { + "0": { + "then": "У цьому веломагазині раніше видавали велосипеди напрокат, але більше не видають" + } + } + }, + "presets": { + "0": { + "description": "Магазин, який спеціалізується на прокаті велосипедів", + "title": "пункт прокату велосипедів" + } + }, + "tagRenderings": { + "bicycle_rental_type": { + "mappings": { + "0": { + "then": "Це магазин, основним напрямком якого є прокат велосипедів" + }, + "2": { + "then": "Це магазин, який продає або ремонтує велосипеди, а також здає їх напрокат" + }, + "5": { + "then": "Це місце висадки, наприклад, зарезервована автостоянка, де велосипеди чітко позначені як такі, що призначені лише для послуги прокату" + } + } + } + } + }, + "bike_parking": { + "tagRenderings": { + "Access": { + "mappings": { + "1": { + "then": "Доступ надається насамперед відвідувачам бізнесу" + }, + "2": { + "then": "Доступ обмежений для членів школи, компанії або організації" + } + } + }, + "Bicycle parking type": { + "mappings": { + "0": { + "then": "Стійки" + }, + "1": { + "then": "Стійка з бічними петлями" + }, + "10": { + "then": "Кронштейн з можливістю використання замка через вушко. Підсідельна труба може утримуватися на стійці за допомогою анкера" + }, + "3": { + "then": "Тримач керма" + }, + "4": { + "then": "Стійка" + }, + "5": { + "then": "Дворівневий" + }, + "6": { + "then": "Навіс" + }, + "7": { + "then": "Стовпчик" + }, + "8": { + "then": "Зона на поверсі, позначена для паркування велосипедів" + }, + "9": { + "then": "Шафка - велосипеди зачиняються повністю індивідуально або разом з кількома велосипедами. Шафка замала, щоб у ній могла поміститися людина стоячи." + } + }, + "question": "Що це за тип велопарковки?", + "render": "Це велопарковка такого типу: {bicycle_parking}" + }, + "Underground?": { + "mappings": { + "0": { + "then": "Підземний паркінг" + }, + "1": { + "then": "Наземний паркінг" + }, + "2": { + "then": "Парковка на даху" + } + }, + "question": "Де знаходиться ця велопарковка?" + }, + "fee": { + "mappings": { + "0": { + "then": "За користування цією велопарковкою потрібно платити" + } + }, + "question": "Чи є ці велопарковки безкоштовними?" + }, + "operator_email": { + "question": "Яка електронна адреса оператора цієї велопарковки?" + }, + "operator_phone": { + "question": "Який номер телефону оператора цієї велопарковки?", + "questionHint": "За цим номером можна буде зателефонувати у разі виникнення проблем, наприклад, щоб прибрати недоглянуті велосипеди" + }, + "operator_website": { + "question": "Яка адреса веб-сайту оператора цієї велопарковки?" + } + } + }, + "bike_repair_station": { + "tagRenderings": { + "Operational status": { + "mappings": { + "0": { + "then": "Велосипедний насос зламаний" + }, + "1": { + "then": "Велосипедний насос працює" + } + }, + "question": "Велосипедний насос ще працює?" + }, + "bike_repair_station-available-services": { + "mappings": { + "0": { + "then": "Присутній тільки насос" + }, + "1": { + "then": "Присутні лише інструменти (викрутки, плоскогубці, ...)" + }, + "2": { + "then": "Присутні як інструменти, так і насос" + } + }, + "question": "Які послуги доступні в цьому місці?" + }, + "bike_repair_station-bike-stand": { + "mappings": { + "0": { + "then": "Є гачок або підставка" + }, + "1": { + "then": "Немає гачка або підставки" + } + }, + "question": "Чи є на цій станції гачок, на який можна повісити велосипед, або підставка для його підйому?" + }, + "bike_repair_station-email": { + "question": "Яка адреса електронної пошти супровідника?" + }, + "bike_repair_station-phone": { + "question": "Який номер телефону супровідника?" + }, + "send_email_about_broken_pump": { + "render": { + "special": { + "body": "Доброго дня,\n\nЦим листом хочу повідомити, що велосипедний насос, розташований за адресою https://mapcomplete.org/cyclofix?lat={_lat}&lon={_lon}&z=18#{id}, вийшов з ладу.\n\n З повагою" + } + } + } + }, + "title": { + "mappings": { + "1": { + "then": "Станція ремонту велосипедів" + } + } + } + }, + "bike_shop": { + "title": { + "mappings": { + "2": { + "then": "Пункт прокату велосипедів {name}" + } + } + } + }, + "cafe_pub": { + "deletion": { + "extraDeleteReasons": { + "0": { + "explanation": "{title()} закрито назавжди" + } + } + }, + "tagRenderings": { + "Classification": { + "mappings": { + "0": { + "then": "Паб, переважно для пиття пива в теплому, розслабленому інтер'єрі" + }, + "1": { + "then": "Більш сучасний і комерційний бар, можливо, з музичною та світловою інсталяцією" + }, + "2": { + "then": "Кафе, щоб випити чаю, кави чи алкогольного напою в тихій обстановці" + }, + "3": { + "then": "Ресторан де можна смачно поїсти" + }, + "5": { + "then": "Це нічний клуб або дискотека з акцентом на танці, музикою від ді-джея з супроводом світлового шоу та баром, щоб отримати (алкогольні) напої" + } + }, + "question": "Що це за кафе?" + }, + "Name": { + "question": "Як називається цей бізнес?", + "render": "Цей бізнес називається {name}" + } + } + }, + "caravansites": { + "tagRenderings": { + "caravansites-internet": { + "question": "Чи є в цьому місці доступ до Інтернету?" + } + } + }, + "charging_station": { + "filter": { + "2": { + "options": { + "14": { + "question": "Має
USB для зарядки телефонів і малої електроніки
роз'єм" + } + } + } + }, + "tagRenderings": { + "Auth phone": { + "question": "Який номер телефону для аутентифікаційного дзвінка або SMS?", + "render": "Авторизуйтесь, зателефонувавши або надіславши SMS на {authentication:phone_call:number}" + }, + "Authentication": { + "mappings": { + "2": { + "then": "Доступна автентифікація за допомогою телефонного дзвінка" + } + } + }, + "Available_charging_stations (generated)": { + "mappings": { + "26": { + "then": "USB для зарядки телефонів і дрібної електроніки" + }, + "27": { + "then": "USB для зарядки телефонів і дрібної електроніки" + } + } + }, + "Network": { + "mappings": { + "0": { + "then": "Не є частиною більшої мережі, наприклад, тому що зарядна станція обслуговується місцевим підприємством" + }, + "1": { + "then": "Не є частиною великої мережі" + } + }, + "question": "Чи є ця зарядна станція частиною мережі?", + "render": "Частина мережі {network}" + }, + "access": { + "render": "Доступ – {access}" + }, + "email": { + "question": "Яка електронна адреса оператора?" + }, + "phone": { + "question": "За яким номером можна зателефонувати, якщо виникла проблема з цією зарядною станцією?", + "render": "У разі виникнення проблем телефонуйте {phone}" + }, + "rewritten-questions": { + "rewrite": { + "into": { + "13": { + "2": "USB для зарядки телефонів і дрібної електроніки" + } + } + } + } + } + }, + "climbing_gym": { + "tagRenderings": { + "name": { + "question": "Як називається цей скеледром?" + } + }, + "title": { + "mappings": { + "0": { + "then": "Скеледром {name}" + } + } + } + }, + "clock": { + "tagRenderings": { + "support": { + "mappings": { + "3": { + "then": "Цей годинник є частиною білборду" + } + } + } + } + }, + "crossings": { + "tagRenderings": { + "crossing-vibration": { + "question": "Чи має цей світлофор вібраційні сигнали для полегшення переходу? (зазвичай розташовані внизу кнопки переходу)" + } + } + }, + "defibrillator": { + "tagRenderings": { + "defibrillator-access": { + "render": "Доступ – {access}" + }, + "defibrillator-phone": { + "question": "Який номер телефону для запитань щодо цього дефібрилятора?", + "render": "Телефонуйте з питань щодо цього дефібрилятора: {phone}" + } + } + }, + "dentist": { + "tagRenderings": { + "name": { + "question": "Як звуть цього стоматолога?", + "render": "Цього стоматолога звуть {name}" + } + }, + "title": { + "render": "Стоматологічний кабінет {name}" + } + }, + "doctors": { + "tagRenderings": { + "name": { + "question": "Як називається ця лікарня?", + "render": "Ця лікарня називається {name}" + } + } + }, + "drinking_water": { + "deletion": { + "nonDeleteMappings": { + "0": { + "then": "Це декоративний фонтан, вода з якого не придатна для пиття" + }, + "1": { + "then": "Це водопровідний кран або водяний насос з непитною водою.
Прикладами є водопровідні крани з дощовою водою для поливу прилеглих рослин
" + } + } + }, + "tagRenderings": { + "Still in use?": { + "mappings": { + "0": { + "then": "Ця питна вода працює" + }, + "1": { + "then": "Цей пункт питної води зіпсований" + }, + "2": { + "then": "Цей пункт питної води закритий" + }, + "3": { + "then": "Цей пункт питної води постійно закритий" + } + }, + "question": "Чи працює цей пункт з питною водою?", + "render": "Робочий стан - це {operational_status}" + }, + "bench-artwork": { + "mappings": { + "2": { + "then": "Ця точка питної води ймовірно, не має інтегрованого художнього твору" + } + } + }, + "opening_hours_24_7": { + "override": { + "+mappings": { + "0": { + "then": "У цьому сезоні фонтан з питною водою закритий. Тому години роботи не вказані." + } + }, + "questionHint": "Це години роботи фонтанчика з питною водою, якщо він працює." + } + }, + "render-closest-drinking-water": { + "render": "На відстані {_closest_other_drinking_water_distance} метрів є ще один фонтан із питною водою" + }, + "type": { + "mappings": { + "0": { + "then": "Це барботажний фонтан. Струмінь води, з якого можна пити, спрямовується вгору, зазвичай керується кнопкою." + }, + "1": { + "then": "Це пункт наповнення пляшок, де вода спрямовується вниз, як правило, за допомогою кнопки або датчика руху. Пити безпосередньо зі струмка може бути дуже важко або неможливо." + }, + "2": { + "then": "Це водопровідний кран. Вода тече вниз, а керує потоком вентиль або кнопка." + } + }, + "question": "Що це за тип пункту питної води?" + } + } + }, + "dumpstations": { + "tagRenderings": { + "dumpstations-network": { + "question": "Частиною якої мережі є цей заклад? (пропустіть, якщо немає)", + "render": "Ця станція є частиною мережі {network}" + } + } + }, + "elongated_coin": { + "tagRenderings": { + "indoor": { + "mappings": { + "0": { + "then": "Цей копійчаний прес розташований у приміщенні." + }, + "1": { + "then": "Цей копійчаний прес розташований на відкритому повітрі." + } + } + } + } + }, + "entrance": { + "tagRenderings": { + "Entrance type": { + "mappings": { + "1": { + "then": "Це міжкімнатні двері, що відокремлюють кімнату або коридор в межах однієї будівлі" + }, + "2": { + "then": "Це головний вхід" + }, + "3": { + "then": "Це додатковий вхід" + } + }, + "question": "Що це за тип входу?" + } + } + }, + "etymology": { + "name": "Має етимологію" + }, + "fire_station": { + "presets": { + "0": { + "description": "Пожежна станція - це місце, де знаходяться пожежні машини та пожежники, коли вони не працюють." + } + }, + "tagRenderings": { + "station-place": { + "question": "Де розташована станція? (наприклад, назва району, села чи міста)" + }, + "station-street": { + "question": " Як називається вулиця, на якій розташована станція?" + } + } + }, + "food": { + "deletion": { + "extraDeleteReasons": { + "0": { + "explanation": "{title()} закрився назавжди" + } + } + }, + "tagRenderings": { + "Fastfood vs restaurant": { + "mappings": { + "0": { + "then": "Це бізнес швидкого харчування, орієнтований на швидке обслуговування. Якщо місця для сидіння і є, то вони досить обмежені та функціональні." + }, + "1": { + "then": "Ресторан, зосереджений на створенні приємних вражень, де обслуговують за столом" + } + }, + "question": "Що це за бізнес?" + }, + "Name": { + "question": "Як називається цей бізнес?", + "render": "Цей бізнес називається {name}" + }, + "Takeaway": { + "mappings": { + "0": { + "then": "Це бізнес тільки на винос" + }, + "1": { + "then": "Тут можна замовити їжу на винос" + }, + "2": { + "then": "Замовлення на винос тут неможливе" + } + }, + "question": "Чи пропонують тут їжу на винос?" + } + }, + "title": { + "mappings": { + "1": { + "then": "Фаст-фуд {name}" + } + } + } + }, + "ghost_bike": { + "tagRenderings": { + "ghost_bike-inscription": { + "question": "Який напис на цьому примарному велосипеді?", + "render": "{inscription}" + } + } + }, + "ghostsign": { + "tagRenderings": { + "inscription": { + "freeform": { + "placeholder": "Текст на табличці" + }, + "question": "Який текст на вивісці?", + "render": "Текст на табличці: {inscription}" + } + } + }, + "gps_track": { + "name": "Твій пройдений шлях" + }, + "grave": { + "presets": { + "0": { + "description": "Надгробок - це фізичний об'єкт, який вказує на те, що тут похована одна або кілька осіб. Як правило, на ньому викарбувано ім'я, дату народження та дату смерті особи чи осіб." + } + } + }, + "hackerspace": { + "tagRenderings": { + "is_makerspace": { + "mappings": { + "2": { + "then": "Це хак-лабораторія, яка здебільшого зосереджена на базових комп'ютерних навичках, використовує перероблені пристрої та/або надає доступ до Інтернету громаді. Зазвичай вони розташовані в автономних приміщеннях, сквотах або соціальних об'єктах" + } + } + } + } + }, + "hospital": { + "tagRenderings": { + "inpatient": { + "mappings": { + "0": { + "then": "Це клініка - пацієнти не можуть залишатися на ніч" + }, + "1": { + "then": "Це лікарня - пацієнти можуть перебувати тут кілька днів" + } + }, + "question": "Чи приймає цей заклад стаціонарних пацієнтів?" + }, + "name": { + "question": "Як називається ця лікарня?", + "render": "Ця лікарня називається {name}" + } + } + }, + "icons": { + "tagRenderings": { + "phonelink": { + "mappings": { + "0": { + "then": { + "special": { + "arialabel": "телефон" + } + } + } + }, + "render": { + "special": { + "arialabel": "телефон" + } + } + } + } + }, + "indoors": { + "tagRenderings": { + "name": { + "question": "Як називається ця кімната?", + "render": "Ця кімната називається {name}" + }, + "ref": { + "question": "Який ідентифікаційний номер цієї кімнати?", + "render": "Ця кімната має номер {ref}" + } + } + }, + "last_click": { + "pointRendering": { + "0": { + "label": { + "render": "Натисніть тут, щоб додати новий об'єкт" + } + } + } + }, + "memorial": { + "tagRenderings": { + "inscription": { + "mappings": { + "0": { + "then": "Цей пам'ятник не має напису" + } + }, + "question": "Який напис на цьому пам'ятнику?", + "render": "Напис на цьому меморіалі:

{inscription}

" + }, + "memorial-type": { + "mappings": { + "1": { + "then": "Це меморіальна дошка" + } + } + } + } + }, + "nature_reserve": { + "tagRenderings": { + "Access tag": { + "render": "Доступ до цього природного заповідника: {access:description}" + }, + "phone": { + "question": "За яким номером телефону можна звертатися з питаннями та проблемами, пов'язаними з цим заповідником?", + "questionHint": "Поважайте приватність - вказуйте особистий номер телефону лише в тому випадку, якщо він є загальнодоступним" + } + } + }, + "pharmacy": { + "tagRenderings": { + "name": { + "question": "Як називається аптека?", + "render": "Ця аптека називається {name}" + } + } + }, + "picnic_table": { + "tagRenderings": { + "picnic_table-material": { + "mappings": { + "0": { + "then": "Це деревʼяний стіл для пікніка" + } + }, + "question": "З якого матеріалу виготовлений цей стіл для пікніка?" + } + } + }, + "playground": { + "tagRenderings": { + "fee": { + "mappings": { + "0": { + "then": "Вільне використання" + }, + "1": { + "then": "Платний дитячий майданчик" + } + }, + "question": "Чи потрібно платити за користування цим майданчиком?" + }, + "playground-email": { + "question": "Яка електронна адреса доглядача дитячого майданчика?" + }, + "playground-phone": { + "question": "Який номер телефону доглядача дитячого майданчика?", + "render": "{phone}" + }, + "playground-surface": { + "mappings": { + "0": { + "then": "Поверхня - трава" + }, + "1": { + "then": "Поверхня - пісок" + }, + "10": { + "then": "Поверхня - дрібний гравій (менше 2 см на камінь)" + }, + "2": { + "then": "Поверхня складається з деревної стружки" + }, + "3": { + "then": "Покриття - бруківка" + }, + "4": { + "then": "Покриття - асфальт" + }, + "5": { + "then": "Поверхня - бетон" + }, + "6": { + "then": "Поверхня грунтова" + }, + "7": { + "then": "Поверхня тверде покриття" + }, + "8": { + "then": "Покриття - тартан - синтетична, пружна поверхня, яку зазвичай можна побачити на спортивних трасах" + }, + "9": { + "then": "Поверхня зроблена з гуми, наприклад, гумова плитка, гумова мульча або велика гумова площа" + } + }, + "question": "Яка поверхня цього дитячого майданчика?", + "questionHint": "Якщо їх декілька, виберіть найпоширеніший", + "render": "Поверхня - {surface}" + } + } + }, + "playground_equipment": { + "tagRenderings": { + "type": { + "mappings": { + "16": { + "then": "Це міст (або як окремий пристрій, або як частина більшої конструкції)" + }, + "19": { + "then": "Це притулок для підлітків" + } + } + } + } + }, + "postoffices": { + "tagRenderings": { + "opening_hours": { + "override": { + "question": "Які години роботи цього поштового відділення?" + } + }, + "partner-brand": { + "mappings": { + "0": { + "then": "У цьому приміщенні надаються послуги для DHL" + }, + "1": { + "then": "У цій локації надаються послуги для DPD" + }, + "2": { + "then": "Ця локація пропонує послуги для GLS" + }, + "3": { + "then": "У цьому місці надаються послуги для UPS" + }, + "4": { + "then": "Це відділення DHL Paketshop" + }, + "5": { + "then": "Ця локація є магазином Hermes PaketShop" + }, + "6": { + "then": "Це місце є PostNL-пунктом" + }, + "7": { + "then": "Ця локація пропонує послуги для bpost" + } + } + }, + "post_offic_brand": { + "render": "Це поштове відділення {brand}" + } + } + }, + "public_bookcase": { + "tagRenderings": { + "public_bookcase-brand": { + "mappings": { + "0": { + "then": "Ця публічна книжкова шафа не є частиною більшої мережі" + } + }, + "question": "Чи є ця публічна книжкова шафа частиною більшої мережі?", + "render": "Ця публічна книжкова шафа є частиною {brand}" + }, + "public_bookcase-ref": { + "mappings": { + "0": { + "then": "Ця книжкова шафа не є частиною більшої мережі" + } + } + } + } + }, + "questions": { + "tagRenderings": { + "brand": { + "mappings": { + "0": { + "then": "Не є частиною великого бренду" + } + }, + "question": "Чи є {title()} частиною більшого бренду?", + "render": "Частина {brand}" + }, + "email": { + "question": "Яка електронна адреса {title()}?" + }, + "gluten_free": { + "mappings": { + "0": { + "then": "Цей магазин продає лише безглютенові продукти" + } + } + }, + "internet": { + "mappings": { + "0": { + "then": "У цьому місці є бездротовий доступ до Інтернету" + }, + "3": { + "then": "Це місце пропонує доступ до Інтернету через термінал або комп'ютер" + }, + "4": { + "then": "Цей заклад пропонує дротовий доступ до Інтернету" + }, + "5": { + "then": "Тут можна скористатися як бездротовим інтернетом, так і доступом до інтернету через термінал або комп'ютер" + } + }, + "question": "Чи є в цьому місці доступ до Інтернету?" + }, + "internet-fee": { + "mappings": { + "1": { + "then": "Доступ до Інтернету в цьому місці безкоштовний" + }, + "2": { + "then": "Доступ до Інтернету в цьому місці безкоштовний тільки для клієнтів" + } + } + }, + "internet-ssid": { + "render": "Назва мережі: {internet_access:ssid}" + }, + "opening_hours": { + "question": "Які години роботи {title()}?", + "render": "

Години роботи

{opening_hours_table(opening_hours)}" + }, + "opening_hours_24_7": { + "override": { + "+mappings": { + "0": { + "then": "Працює 24/7 (включаючи святкові дні)" + } + } + } + }, + "payment-options": { + "mappings": { + "2": { + "then": "Оплата за допомогою QR-коду можлива тут" + } + }, + "question": "Які способи оплати тут приймаються?" + }, + "payment-options-split": { + "override": { + "mappings+": { + "0": { + "then": "Монети приймаються тут" + }, + "1": { + "then": "Тут приймаються банкноти" + }, + "2": { + "then": "Тут приймаються дебетові картки" + }, + "3": { + "then": "Тут приймаються кредитні картки" + } + } + } + }, + "phone": { + "editButtonAriaLabel": "Редагувати номер телефону", + "question": "Який номер телефону {title()}?" + }, + "qr_code": { + "render": { + "after": "Відскануйте цей код, щоб відкрити це місце на іншому пристрої" + } + }, + "single_level": { + "mappings": { + "0": { + "then": "Розташований під землею" + }, + "1": { + "then": "Розташований на рівні землі" + }, + "2": { + "then": "Розташований на рівні землі" + }, + "3": { + "then": "Розташований на другому поверсі" + }, + "4": { + "then": "Розташований на першому підвальному поверсі" + } + }, + "question": "На якому поверсі знаходиться цей об'єкт?", + "render": "Розташований на {level} поверсі" + }, + "sugar_free": { + "mappings": { + "0": { + "then": "У цьому магазині продаються тільки продукти без цукру" + } + } + }, + "website": { + "question": "Який веб-сайт має {title()}?" + } + } + }, + "reception_desk": { + "tagRenderings": { + "desk-height": { + "questionHint": "Вимірюється від підлоги до найнижчої використовуваної частини столу" + } + } + }, + "recycling": { + "tagRenderings": { + "container-location": { + "mappings": { + "1": { + "then": "Цей контейнер знаходиться в приміщенні" + }, + "2": { + "then": "Цей контейнер розташований на відкритому повітрі" + } + } + }, + "opening_hours_24_7": { + "override": { + "question": "Які години роботи цього об'єкту з переробки?" + } + }, + "recycling-accepts": { + "mappings": { + "0": { + "then": "Батарейки" + }, + "1": { + "then": "Коробки з-під напоїв" + }, + "10": { + "then": "Скло" + }, + "11": { + "then": "Лампочки" + }, + "12": { + "then": "Газети" + }, + "13": { + "then": "Папір" + }, + "14": { + "then": "Пластикові пляшки" + }, + "15": { + "then": "Пластикова упаковка" + }, + "16": { + "then": "Пластик" + }, + "17": { + "then": "Пластикова упаковка, металева упаковка та упаковка для напоїв (PMD)" + }, + "18": { + "then": "Картриджі для принтерів" + }, + "19": { + "then": "Металобрухт" + }, + "2": { + "then": "Бляшанки" + }, + "20": { + "then": "Взуття" + }, + "21": { + "then": "Малі електричні прилади" + }, + "23": { + "then": "Голки" + }, + "24": { + "then": "Залишкові відходи" + }, + "25": { + "then": "Велосипеди" + }, + "3": { + "then": "Одяг" + }, + "4": { + "then": "Олія для приготування їжі" + }, + "5": { + "then": "Моторна олива" + }, + "6": { + "then": "Флуоресцентні лампи" + }, + "7": { + "then": "Зелені відходи" + }, + "9": { + "then": "Скляні пляшки" + } + }, + "question": "Що тут можна переробити?" + }, + "recycling-centre-name": { + "mappings": { + "0": { + "then": "Цей центр переробки не має конкретної назви" + } + }, + "question": "Як називається цей центр переробки?", + "render": "Цей центр переробки має назву {name}" + }, + "recycling-type": { + "mappings": { + "0": { + "then": "Це контейнер для вторинної переробки" + }, + "1": { + "then": "Це центр переробки сміття" + }, + "2": { + "then": "Контейнер для утилізації залишкових відходів" + }, + "3": { + "then": "Це пункт прийому відходів. Відходи розміщують тут, не поміщаючи їх у спеціальний контейнер." + }, + "4": { + "then": "Це звалище, куди складають відходи." + } + }, + "question": "Що це за тип переробки?" + } + } + }, + "school": { + "tagRenderings": { + "capacity": { + "question": "Скільки учнів можна зарахувати до цієї школи?", + "render": "Ця школа може зарахувати максимум {capacity} учнів" + }, + "school-language": { + "render": { + "special": { + "question": "Яка основна мова цієї школи?
Якою мовою розмовляють зі студентами на немовних курсах та з адміністрацією?
" + } + } + }, + "school-name": { + "question": "Як називається ця школа?", + "render": "Ця школа називається {name}" + } + } + }, + "shelter": { + "tagRenderings": { + "shelter-type": { + "mappings": { + "0": { + "then": "Це притулок на зупинці громадського транспорту." + }, + "1": { + "then": "Це накриття, що захищає від дощу на місці для пікніка." + }, + "2": { + "then": "Це альтанка." + }, + "3": { + "then": "Це невеликий притулок, призначений насамперед для коротких перерв. Зазвичай знаходиться в горах або вздовж доріг." + }, + "4": { + "then": "Це сарай з 3-ма стінами, в першу чергу призначений для кемпінгу." + }, + "5": { + "then": "Це павільйон" + } + }, + "question": "Що це за притулок?", + "render": "Тип притулку: {shelter_type}" + } + } + }, + "shops": { + "deletion": { + "nonDeleteMappings": { + "0": { + "then": "{title()} закрився назавжди" + } + } + }, + "presets": { + "0": { + "description": "Пізніше ви можете уточнити, що саме продає цей магазин." + } + }, + "tagRenderings": { + "bicycle_rental": { + "mappings": { + "0": { + "then": "У цьому магазині можна взяти напрокат велосипеди" + }, + "1": { + "then": "Цей магазин не дає велосипеди напрокат" + } + }, + "question": "Чи дає цей магазин велосипеди напрокат?", + "questionHint": "Йдеться про прокат для туристів, яким потрібен велосипед. Деякі майстерні з ремонту велосипедів пропонують велосипед на час ремонту, але це не вважається прокатом в даному випадку." + }, + "bike_second_hand": { + "mappings": { + "0": { + "then": "У цьому магазині продають вживані велосипеди" + }, + "2": { + "then": "Цей магазин продає лише вживані велосипеди" + } + } + }, + "brand": { + "mappings": { + "0": { + "then": "Цей магазин не має певного бренду, він не є частиною великої мережі" + } + }, + "question": "Яка марка цього магазину?", + "render": "Частина {brand}" + }, + "id_presets.shop_types": { + "override": { + "+mappings": { + "0": { + "then": "Пункт прокату велосипедів" + } + }, + "question": "Що це за магазин?" + } + }, + "second_hand": { + "question": "Чи продає цей магазин вживані речі?" + }, + "sells_new_bikes": { + "mappings": { + "0": { + "then": "У цьому магазині продають нові велосипеди" + }, + "1": { + "then": "Цей магазин не продає нові велосипеди" + } + }, + "question": "Чи продає цей магазин велосипеди?" + }, + "shops-name": { + "question": "Як називається цей магазин?", + "render": "Цей магазин називається {name}" + } + } + }, + "ski_piste": { + "tagRenderings": { + "length": { + "render": "Ця частина лижної траси має довжину {_length:km} кілометрів" + } + } + }, + "slow_roads": { + "tagRenderings": { + "slow_roads-surface": { + "mappings": { + "0": { + "then": "Поверхня - трава" + }, + "1": { + "then": "Поверхня - земля" + }, + "2": { + "then": "Поверхня -без покриття" + }, + "3": { + "then": "Поверхня - пісок" + }, + "4": { + "then": "Покриття - бруківка" + }, + "5": { + "then": "Покриття - асфальт" + }, + "6": { + "then": "Поверхня - бетон" + }, + "7": { + "then": "Поверхня тверде покриття" + } + }, + "render": "Поверхня - {surface}" + } + } + }, + "speed_display": { + "tagRenderings": { + "inscription": { + "freeform": { + "placeholder": "Текст на дисплеї швидкості (наприклад, \"Ваша швидкість\")" + }, + "question": "Який текст відображається на цьому дисплеї швидкості?", + "render": "Текст на цьому дисплеї швидкості має вигляд {inscription}" + } + } + }, + "sport_pitch": { + "tagRenderings": { + "sport_pitch-email": { + "question": "Яка електронна адреса оператора?" + }, + "sport_pitch-phone": { + "question": "Який номер телефону оператора?" + }, + "sport_pitch-surface": { + "mappings": { + "0": { + "then": "Поверхня - трава" + }, + "1": { + "then": "Поверхня - пісок" + }, + "2": { + "then": "Покриття - бруківка" + }, + "3": { + "then": "Покриття - асфальт" + }, + "4": { + "then": "Поверхня - бетон" + }, + "5": { + "then": "Поверхня - дрібний гравій" + }, + "6": { + "then": "Поверхня цієї доріжки - тартан, синтетична, злегка пружиниста, пориста поверхня" + } + }, + "render": "Поверхня - {surface}" + } + } + }, + "street_lamps": { + "tagRenderings": { + "ref": { + "question": "Який ідентифікаційний номер цього вуличного ліхтаря?", + "render": "Цей вуличний ліхтар має ідентифікаційний номер {ref}" + } + } + }, + "ticket_validator": { + "tagRenderings": { + "barrier": { + "mappings": { + "0": { + "then": "Цей валідатор квитків є частиною воріт" + } + }, + "render": "Цей валідатор квитків є частиною шлагбаума типу {barrier}" + } + } + }, + "toilet": { + "tagRenderings": { + "menstrual_products": { + "mappings": { + "0": { + "then": "Безкоштовні менструальні засоби доступні для всіх відвідувачів цих туалетів" + }, + "1": { + "then": "Деяким відвідувачам цих туалетів доступні безкоштовні менструальні засоби" + }, + "2": { + "then": "Тут немає безкоштовних менструальних засобів" + } + }, + "question": "Чи розповсюджуються тут безкоштовні менструальні засоби?", + "questionHint": "Йдеться лише про ті менструальні засоби, які є безкоштовними. Якщо, наприклад, поруч є торговий автомат, який бере плату за менструальні засоби, ігноруйте це питання." + }, + "menstrual_products_location": { + "mappings": { + "0": { + "then": "Безкоштовні менструальні засоби знаходяться в туалеті для жінок" + }, + "1": { + "then": "Безкоштовні менструальні засоби знаходяться в туалеті для чоловіків" + }, + "2": { + "then": "Безкоштовні менструальні засоби знаходяться в туалеті для людей на візках" + } + }, + "question": "Де знаходяться безкоштовні менструальні засоби?" + }, + "toilet-access": { + "mappings": { + "0": { + "then": "Публічний доступ" + }, + "1": { + "then": "Доступ тільки для клієнтів" + }, + "2": { + "then": "Недоступно" + }, + "3": { + "then": "Доступний, але для входу потрібно попросити ключ" + } + }, + "question": "Чи є ці туалети загальнодоступними?", + "render": "Доступ – {access}" + }, + "toilet-changing_table:location": { + "question": "Де знаходиться пеленальний столик?" + } + } + }, + "toilet_at_amenity": { + "tagRenderings": { + "opening_hours": { + "override": { + "question": "Коли відкрито приміщення, де розташовані ці туалети?" + } + }, + "toilet-access": { + "render": "Доступ - {toilets:access}" + } + } + }, + "transit_routes": { + "tagRenderings": { + "network": { + "render": "Ця автобусна лінія є частиною {network} мережі" + } + } + }, + "usersettings": { + "description": "Спеціальний шар, який не призначений для відображення на карті, але використовується для встановлення користувацьких налаштувань", + "tagRenderings": { + "a11y-features": { + "mappings": { + "0": { + "then": "Увімкніть функції доступності, коли для навігації мапою використовуються клавіші зі стрілками" + }, + "1": { + "then": "Завжди вмикайте функції доступності" + }, + "2": { + "then": "Ніколи не вмикайте функції доступності" + } + }, + "question": "Які елементи доступності слід застосовувати?" + }, + "add-new-feature": { + "mappings": { + "0": { + "then": "Додавання нового об'єкта здійснюється за допомогою кнопки внизу ліворуч. Клацання по карті нічого не робить" + }, + "1": { + "then": "При натисканні або торканні мапи з'являється маркер, де додається новий об'єкт" + }, + "2": { + "then": "При натисканні правою кнопкою миші або тривалому утриманні мапи з'являється маркер, де можна додати новий об'єкт" + }, + "3": { + "then": "При натисканні або торканні мапи з'являється маркер, де можна додати новий об'єкт. Крім того, внизу ліворуч відображається кнопка" + }, + "4": { + "then": "При натисканні правою кнопкою миші або тривалому утриманні на мапі зʼявляється маркер, куди можна додати новий обʼєкт. Крім того, внизу ліворуч показується кнопка" + } + }, + "question": "Як має відкриватися меню для додавання нового об'єкту?" + }, + "all-questions-at-once": { + "mappings": { + "0": { + "then": "Показати всі питання в інфобокс разом" + }, + "1": { + "then": "Показувати питання по черзі" + } + }, + "question": "Чи повинні питання для невідомих полів даних з'являтися по одному або разом?" + }, + "background-layer": { + "mappings": { + "0": { + "then": "Використовувати стандартний фоновий шар" + }, + "1": { + "then": "Використовувати OpenStreetMap-carto як стандартний шар" + }, + "2": { + "then": "Використовувати аерофотознімки як стандартний фон" + }, + "3": { + "then": "Використовувати мапу на основі не-openstreetmap як стандартний фон" + }, + "4": { + "then": "Використовувати поточний фоновий шар ({__current_background}) як фон за замовчуванням" + }, + "5": { + "then": "Використовувати фоновий шар {mapcomplete-preferred-background-layer} як фон за замовчуванням" + } + }, + "question": "Який фоновий шар повинен бути показаний стандартно?" + }, + "clear_cache": { + "render": { + "after": "Очищення кешу призведе до видалення локально завантажених даних і коду. Ви залишитеся в системі, і ваші налаштування будуть збережені. Дані не будуть втрачені" + } + }, + "contributor-thanks": { + "mappings": { + "0": { + "then": "Ви внесли код до MapComplete за допомогою {_code_contributions} коммітів! Це чудово!" + } + } + }, + "cscount-thanks": { + "mappings": { + "0": { + "then": "Ви вносили зміни {_csCount} разів! Це чудово!" + } + } + }, + "debug-title": { + "render": "

Опції налагодження

" + }, + "fixate-north": { + "mappings": { + "0": { + "then": "Дозволити обертання мапи" + }, + "1": { + "then": "Завжди тримати північ угорі" + } + }, + "question": "Чи завжди північ має бути вгорі?" + }, + "mangrove-key-import": { + "render": { + "after": "Завантаження приватного ключа видаляє ваш поточний приватний ключ. Якщо ви робили відгуки з його допомогою, спочатку завантажте поточний приватний ключ" + } + }, + "mangrove-keys": { + "render": { + "after": "Будь-хто, хто має цей файл, може робити рецензії з вашим ім'ям" + } + }, + "more_privacy": { + "mappings": { + "0": { + "then": "Вносячи зміни до OpenStreetMap, не вказуйте, як далеко ви знаходилися від змінених об'єктів." + }, + "1": { + "then": "Вносячи зміни до OpenStreetMap, приблизно вказуйте, як далеко ви знаходилися від змінених обʼєктів. Це допоможе іншим учасникам зрозуміти, як ви внесли зміни" + } + }, + "question": "Вносячи зміни, чи потрібно приблизно вказувати, як далеко ви знаходилися від об'єкта?", + "questionHint": "Якщо ви вносите зміни до одного або декількох об'єктів і ввімкнули функцію визначення вашого місцезнаходження, буде збережено приблизну інформацію про те, де ви перебували: чи були ви ближче 25 м, 500 м, 5 км або далі 5 км від об'єкта. Це допомагає картографам зрозуміти ваш контекст при внесенні змін, але дає уявлення про те, де ви були в цей час. " + }, + "more_privacy_theme_override": { + "mappings": { + "0": { + "then": "Ця тема є делікатною. Внесення змін не вказуватиме на те, що ви були поруч." + } + } + }, + "scalebar": { + "mappings": { + "0": { + "then": "Показати масштабну лінійку" + }, + "1": { + "then": "Приховати лінійку масштабу" + } + }, + "question": "Чи потрібно показувати масштабну лінійку на карті?" + }, + "show_crosshair": { + "question": "Чи потрібно показувати перехрестя по центру екрана?", + "questionHint": "Це може допомогти точно позиціонувати новий елемент" + }, + "show_debug": { + "mappings": { + "0": { + "then": "Показати інформацію про налагодження" + }, + "1": { + "then": "Не показувати інформацію про налагодження" + }, + "2": { + "then": "Не показувати інформацію про налагодження" + } + }, + "question": "Показувати інформацію про налагодження налаштувань користувача?" + }, + "show_tags": { + "mappings": { + "0": { + "then": "Ніколи не показуйте теги." + }, + "1": { + "then": "Показувати теґи, які будуть застосовані після того, як я зроблю {__userjourney_tagsVisibleAt} набори(ів) змін" + }, + "2": { + "then": "Показати теги, які будуть застосовані при внесенні змін" + }, + "3": { + "then": "Показати теги, які будуть застосовані при внесенні змін, і показати таблицю тегів для кожного елемента" + } + }, + "question": "Показувати необроблені OpenStreetMap-теги?", + "questionHint": "Теги - це атрибути, які має кожен елемент. Це технічні дані, які зберігаються в базі даних. Вам не потрібна ця інформація для редагування у MapComplete, але досвідчені користувачі можуть використовувати її як довідкову." + }, + "sync-visited-locations": { + "mappings": { + "0": { + "then": "Зберігайте місця, які ви шукаєте, переглядайте та синхронізуйте їх через openstreetmap.org. OpenStreetMap та всі програми, якими ви користуєтесь, можуть бачити цю історію" + }, + "1": { + "then": "Зберігайте місця, які ви шукаєте та перевіряєте, на моєму пристрої" + }, + "2": { + "then": "Не зберігайте місця, які ви шукаєте та перевіряєте " + } + }, + "question": "Чи потрібно запам'ятовувати місця, які ви шукаєте та оглядаєте?", + "questionHint": "Ці локації будуть запропоновані в меню пошуку" + }, + "sync-visited-themes": { + "mappings": { + "0": { + "then": "Зберігайте відвідані тематичні карти та синхронізуйте їх через openstreetmap.org. OpenStreetMap та всі програми, якими ви користуєтесь, можуть бачити цю історію" + }, + "1": { + "then": "Зберегти відвідані тематичні карти на моєму пристрої" + }, + "2": { + "then": "Не зберігайте відвідані тематичні мапи" + } + }, + "question": "Чи потрібно зберігати тематичні карти, які ви відвідуєте?", + "questionHint": "Якщо ви відвідуєте мапу на певну тему, MapComplete може запам'ятати це і запропонувати її як підказку." + }, + "title-editing": { + "render": "

Налаштування редагування

" + }, + "title-id": { + "render": "

Керування ідентифікатором Mangrove

" + }, + "title-map": { + "render": "

Налаштування мапи

" + }, + "title-privacy-legal": { + "render": "

Захист персональних даних

" + }, + "translation-completeness": { + "render": "Переклади {_theme} {_language} становлять {_translation_percentage}%: {_translation_translated_count} рядків із {_translation_total} перекладено" + }, + "translation-help": { + "mappings": { + "0": { + "then": "Натисніть на іконку \"перекласти\" поруч з рядком, щоб ввести або оновити фрагмент тексту. Для цього вам потрібен обліковий запис Weblate. Створіть його з вашим OSM-іменем користувача, щоб автоматично розблокувати режим перекладу." + } + } + }, + "translation-mode": { + "mappings": { + "0": { + "then": "Не показувати кнопку для швидкої зміни перекладу" + }, + "1": { + "then": "Показати кнопку для швидкого відкриття перекладів при використанні MapComplete на великому екрані" + }, + "2": { + "then": "Завжди показуйте кнопки перекладу, в тому числі на мобільних пристроях" + } + }, + "question": "Ви хочете допомогти з перекладом MapComplete?" + }, + "translation-thanks": { + "mappings": { + "0": { + "then": "Ви зробили внесок у переклад MapComplete за допомогою {_translation_contributions} комітів! Це чудово!" + } + } + } + }, + "title": { + "render": "Налаштування" + } + }, + "vending_machine": { + "tagRenderings": { + "indoor": { + "mappings": { + "1": { + "then": "Цей торговий автомат знаходиться в приміщенні" + }, + "2": { + "then": "Цей торговий автомат знаходиться на відкритому повітрі" + } + }, + "question": "Цей торговий автомат знаходиться в приміщенні?" + }, + "operational_status": { + "mappings": { + "0": { + "then": "Цей торговий автомат працює" + }, + "1": { + "then": "Цей торговий автомат несправний" + }, + "2": { + "then": "Цей торговий автомат закрито" + }, + "3": { + "then": "Робочий стан - це {operational_status}" + } + }, + "question": "Чи працює цей торговий автомат досі?" + }, + "operator": { + "question": "Хто керує цим автоматом?", + "render": "Цим торговим автоматом керує {operator}" + }, + "phone": { + "override": { + "question": "Який номер телефону оператора цього торгового автомата?", + "questionHint": "Це номер, за яким ви можете зателефонувати у разі виникнення проблем з торговим автоматом" + } + }, + "vending": { + "mappings": { + "0": { + "then": "Напої" + }, + "1": { + "then": "Солодощі" + }, + "10": { + "then": "Хліб" + }, + "11": { + "then": "Яйця" + }, + "12": { + "then": "Морозиво" + }, + "13": { + "then": "Твердий сир" + }, + "14": { + "then": "Мед" + }, + "15": { + "then": "Картопля" + }, + "16": { + "then": "М'ясо" + }, + "17": { + "then": "Фрукти" + }, + "18": { + "then": "Полуниця" + }, + "19": { + "then": "Квіти" + }, + "2": { + "then": "Продукти харчування" + }, + "20": { + "then": "Паркувальні талони" + }, + "21": { + "then": "Пресовані монети" + }, + "22": { + "then": "Квитки на громадський транспорт" + }, + "23": { + "then": "Велосипедні ліхтарі" + }, + "24": { + "then": "Рукавички" + }, + "25": { + "then": "Набори для ремонту велосипедів" + }, + "26": { + "then": "Велосипедні насоси" + }, + "27": { + "then": "Велосипедні замки" + }, + "3": { + "then": "Сигарети" + }, + "4": { + "then": "Презервативи" + }, + "5": { + "then": "Кава" + }, + "6": { + "then": "Питна вода" + }, + "7": { + "then": "Газети" + }, + "8": { + "then": "Велосипедні внутрішні трубки" + }, + "9": { + "then": "Молоко" + } + }, + "question": "Що продає цей автомат?", + "render": "Цей торговий автомат продає {vending}" + } + }, + "title": { + "render": "Торговий автомат" + } + }, + "waste_disposal": { + "tagRenderings": { + "access": { + "mappings": { + "0": { + "then": "Цим смітником може користуватися будь-хто" + }, + "1": { + "then": "Ця скринька є приватною" + }, + "2": { + "then": "Цей контейнер призначений лише для мешканців" + } + }, + "question": "Хто може користуватися цим сміттєвим баком?", + "render": "Доступ: {access}" + }, + "disposal-location": { + "mappings": { + "0": { + "then": "Це підземний контейнер" + }, + "1": { + "then": "Цей контейнер знаходиться в приміщенні" + }, + "2": { + "then": "Цей контейнер розташований на відкритому повітрі" + } + }, + "question": "Де знаходиться цей контейнер?" + }, + "type": { + "mappings": { + "0": { + "then": "Це середній або великий контейнер для утилізації (побутових) відходів" + }, + "1": { + "then": "Це, власне, контейнер для переробки сміття" + } + }, + "question": "Що це за контейнер для сміття?" + } + }, + "title": { + "render": "Утилізація відходів" + } + } +} diff --git a/langs/layers/zh_Hant.json b/langs/layers/zh_Hant.json index bfede818f..513e0c6c0 100644 --- a/langs/layers/zh_Hant.json +++ b/langs/layers/zh_Hant.json @@ -380,9 +380,6 @@ }, "2": { "then": "通行性僅限學校、公司或組織的成員" - }, - "3": { - "then": "通行性僅限學校、公司或組織的成員" } }, "question": "誰可以使用這個單車停車場?", diff --git a/langs/nan.json b/langs/nan.json index 4b97ab695..465db8fdf 100644 --- a/langs/nan.json +++ b/langs/nan.json @@ -1,9 +1,10 @@ { "advanced": { - "title": "Advanced features" + "title": "高级功能" }, "centerMessage": { - "allFilteredAway": "当前视图中没有满足过滤条件的要素" + "allFilteredAway": "当前视图中没有满足过滤条件的要素", + "loadingData": "加载数据…" }, "validation": { "wikidata": { @@ -11,4 +12,4 @@ "startsWithQ": "A wikidata identifier starts with Q and is followed by a number" } } -} \ No newline at end of file +} diff --git a/langs/nl.json b/langs/nl.json index 592933d44..a13661b79 100644 --- a/langs/nl.json +++ b/langs/nl.json @@ -173,6 +173,7 @@ "openMapillary": "Open Mapillary op deze locatie", "openOsmcha": "Bekijk de laatste bijdragen gemaakt met {theme}", "openOsmchaLastWeek": "Bekijk aanpassingen van de voorbije 7 dagen", + "panoramaxLicenseCCBYSA": "Je foto wordt gepubliceerd met een CC-BY-SA-licentie. Iedereen mag je afbeelding hergebruiken mits naamsvermelding.", "themeBy": "Thema gemaakt door {author}", "title": "Copyright en attributie", "translatedBy": "MapComplete werd vertaald door {contributors} en {hiddenCount} meer vertalers" @@ -489,7 +490,7 @@ "title": "Straatafbeeldingen uit de buurt" }, "pleaseLogin": "Gelieve je aan te melden om een foto toe te voegen", - "respectPrivacy": "Fotografeer geen mensen of nummerplaten. Voeg geen Google Maps, Google Streetview of foto's met auteursrechten toe.", + "respectPrivacy": "Voeg geen Google Maps, Google Streetview of foto's met auteursrechten toe.", "toBig": "Je afbeelding is te groot, namelijk {actual_size}. Gelieve afbeeldingen van maximaal {max_size} te gebruiken", "uploadDone": "Je afbeelding is toegevoegd. Bedankt om te helpen!", "uploadFailed": "Afbeelding uploaden mislukt. Heb je internet? Gebruik je Brave of UMatrix? Dan moet je derde partijen toelaten.", diff --git a/langs/ru.json b/langs/ru.json index c8e7f25c1..80202ab00 100644 --- a/langs/ru.json +++ b/langs/ru.json @@ -27,8 +27,19 @@ "panelIntro": "

Ваша личная тема

Активируйте свои любимые слои из официальных тем", "reload": "Обновить данные" }, + "favouritePoi": { + "button": { + "markAsFavouriteTitle": "Отметьте это место как любимое", + "markDescription": "Добавьте это место в личный список избранного", + "unmarkNotDeleted": "Эта точка не будет удалена и по-прежнему будет видна на соответствующей карте для вас и других людей" + }, + "tab": "Ваши избранные и отзывы" + }, "general": { "about": "С лёгкостью редактируйте и дополняйте OpenStreetMap на определённую тему", + "aboutMapComplete": { + "intro": "Используйте MapComplete для добавления информации OpenStreetMap в отдельную тему. Отвечайте на вопросы, и через несколько минут ваши вклады будут доступны везде. В большинстве тем вы можете добавлять изображения или даже оставлять отзывы. Сопровождающий тему определяет элементы, вопросы и языки для нее." + }, "add": { "addNew": "Добавить новую {category} здесь", "confirmButton": "Добавить {category} сюда.
Ваш вклад будет виден каждому
", @@ -50,17 +61,26 @@ }, "mapContributionsBy": "Текущие видимые данные имеют правки, сделанные {contributors}", "mapContributionsByAndHidden": "Текущие видимые данные имеют правки, сделанные {contributors} и ещё {hiddenCount} пользователями", + "openOsmcha": "Посмотреть последние изменения, сделанные с помощью {theme}", + "openOsmchaLastWeek": "Просмотр правок за последние 7 дней", + "openThemeDocumentation": "Открыть документацию для тематической карты {name}", "themeBy": "Тема поддерживается {author}" }, "back": "Назад", + "backToIndex": "Посмотреть все тематические карты", "backgroundMap": "Фоновая карта", "cancel": "Отмена", "customThemeIntro": "

Пользовательские темы

Это ранее просмотренные темы, созданные пользователями.", "download": { - "downloadGpx": "Скачать файл GPX" + "downloadGpx": "Скачать файл GPX", + "title": "Скачать" }, "error": "Что-то пошло не так", "fewChangesBefore": "Пожалуйста, ответьте на несколько вопросов о существующих точках, прежде чем добавить новую точку.", + "filterPanel": { + "disableAll": "Отключить все", + "enableAll": "Включить все" + }, "getStartedLogin": "Войти с помощью OpenStreetMap, чтобы начать работу", "getStartedNewAccount": " или создать новую учетную запись", "goToInbox": "Открыть входящие сообщения", @@ -70,8 +90,17 @@ }, "loginToStart": "Войдите, чтобы ответить на этот вопрос", "loginWithOpenStreetMap": "Войти с помощью OpenStreetMap", + "logout": "Выйти из системы", + "menu": { + "aboutCurrentThemeTitle": "Об этой карте", + "filter": "Фильтр данных", + "showIntroduction": "Показать введение", + "title": "Меню" + }, "morescreen": { "createYourOwnTheme": "Создать собственную тему MapComplete с чистого листа", + "hiddenExplanation": "Эти темы доступны только тем, у кого есть ссылка. Вы обнаружили {hidden_discovered} из {total_hidden} скрытых тем.", + "noSearch": "Показать все темы", "requestATheme": "Если вам нужен особенный квест, запросите его в issue-трекере", "streetcomplete": "Другое, похожее приложение — StreetComplete." }, @@ -100,7 +129,10 @@ "save": "Сохранить", "search": { "error": "Что-то пошло не так…", + "instructions": "Используйте строку поиска выше, чтобы найти местоположение, фильтры или другие тематические карты", "nothing": "Ничего не найдено…", + "recentThemes": "Недавно посещенные карты", + "recents": "Недавно увиденные места", "search": "Найти место", "searching": "Поиск…" }, @@ -110,7 +142,8 @@ "fsUserbadge": "Включить кнопку входа в систему", "fsWelcomeMessage": "Показать всплывающее окно с приветствием и соответствующие вкладки", "intro": "

Поделиться этой картой

Поделитесь этой картой, скопировав ссылку ниже и отправив её друзьям и близким:", - "thanksForSharing": "Спасибо, что поделились!" + "thanksForSharing": "Спасибо, что поделились!", + "title": "Поделитесь этой картой" }, "skip": "Пропустить вопрос", "weekdays": { @@ -131,7 +164,14 @@ "tuesday": "Вторник", "wednesday": "Среда" }, - "welcomeBack": "Вы вошли, с возвращением!" + "welcomeBack": "Вы вошли, с возвращением!", + "welcomeExplanation": { + "addNew": "Какой-то объект отсутствует? Используйте кнопку в левом нижнем углу, чтобы добавить новую точку интереса.", + "general": "На этой карте вы можете видеть, редактировать и добавлять точки интереса. Увеличьте масштаб, чтобы увидеть POI, нажмите на одну из них, чтобы просмотреть или отредактировать информацию. Все данные получены и сохранены в OpenStreetMap, которые можно свободно использовать повторно." + }, + "wikipedia": { + "readMore": "Прочитать остальную часть статьи" + } }, "hotkeyDocumentation": { "title": "Горячие клавиши" @@ -142,6 +182,10 @@ "doDelete": "Удалить изображение", "dontDelete": "Отмена", "isDeleted": "Удалено", + "nearby": { + "noNearbyImages": "Близлежащих изображений не найдено", + "seeNearby": "Просмотреть соседние фотографии" + }, "pleaseLogin": "Пожалуйста, войдите в систему, чтобы добавить изображение", "respectPrivacy": "Не фотографируйте людей и номерные знаки. Не загружайте снимки из Google Maps, Google Street View или из других источников с закрытой лицензией.", "uploadDone": "Ваше изображение добавлено. Спасибо за помощь!", @@ -154,6 +198,7 @@ "#": "Эти надписи отображаются над кнопками тем, когда тема не загружена", "featuredThemeTitle": "Интересное на этой неделе", "intro": "MapComplete - это редактор OpenStreetMap, который показывает информацию с разделением по темам.", + "learnMore": "Узнать больше", "logIn": "Войдите чтобы увидеть другие посещённые темы", "pickTheme": "Выберите тему ниже, чтобы начать.", "title": "Добро пожаловать в MapComplete" @@ -178,7 +223,7 @@ "split": { "cancel": "Отмена", "hasBeenSplit": "Этот путь был разделён", - "inviteToSplit": "Разделите эту дорогу на маленькие части. Это позволит дпть больше информации частей дороги.", + "inviteToSplit": "Разделите дорогу на небольшие сегменты. Это позволит придать частям дороги разные свойства.", "loginToSplit": "Вы должны войти в профиль, чтобы разделить дорогу", "split": "Разделить", "splitTitle": "Выберите карту на которой хотите разделить дорогу" diff --git a/langs/themes/de.json b/langs/themes/de.json index 92ea36548..9d8560b4f 100644 --- a/langs/themes/de.json +++ b/langs/themes/de.json @@ -13,7 +13,7 @@ "title": "Kunstwerke" }, "atm": { - "description": "Diese Karte zeigt Geldautomaten zum Abheben oder Einzahlen von Geld", + "description": "Diese Karte zeigt Geldautomaten zum Abheben oder Einzahlen von Bargeld", "layers": { "3": { "override": { @@ -101,7 +101,7 @@ "title": "Fahrradabstellplätze" }, "bicycle_rental": { - "description": "Auf dieser Karte finden Sie alle Fahrradverleihstationen, die in OpenStreetMap eingetragen wurden", + "description": "Eine Karte mit allen Fahrradverleihstationen, die in OpenStreetMap eingetragen wurden", "shortDescription": "Eine Karte mit Fahrradverleihstationen und Fahrradverleihgeschäften", "title": "Fahrradverleih" }, @@ -718,7 +718,7 @@ "title": "Eiscreme" }, "indoors": { - "description": "Diese Karte zeigt öffentlich zugängliche Innenräume", + "description": "Eine Karte mit öffentlich zugänglichen Innenräumen", "title": "Innenräume" }, "items_with_image": { diff --git a/langs/themes/el.json b/langs/themes/el.json new file mode 100644 index 000000000..0967ef424 --- /dev/null +++ b/langs/themes/el.json @@ -0,0 +1 @@ +{} diff --git a/langs/themes/es.json b/langs/themes/es.json index 3ff386078..86d04f08c 100644 --- a/langs/themes/es.json +++ b/langs/themes/es.json @@ -1,19 +1,19 @@ { "advertising": { - "description": "¿Alguna vez te has preguntado cuanta publicidad hay en nuestras calles y carreteras? Con este mapa podrás encontrar y añadir información de todos los elementos publicitarios que te encuentres por la calle", - "shortDescription": "Dónde puedo encontrar elementos publicitarios?", + "description": "¿Alguna vez te preguntaste cuánta publicidad hay en nuestras calles y carreteras? Con este mapa puedes encontrar y agregar información sobre todos los elementos publicitarios que encuentres en la calle", + "shortDescription": "¿Dónde puedo encontrar elementos publicitarios?", "title": "Publicidad" }, "aed": { - "description": "En este mapa , cualquiera puede encontrar y marcar los desfibriladores externos automáticos más cercanos", + "description": "En este mapa, se pueden encontrar y marcar desfibriladores cercanos", "title": "Desfibriladores" }, "artwork": { - "description": "Un mapa abierto de Estatuas, bustos, Graffitis y otras Obras de Arte en todo el mundo", + "description": "Un mapa abierto de estatuas, bustos, grafitis y otras obras de arte de todo el mundo", "title": "Obras de arte" }, "atm": { - "description": "Este mapa muestra los cajeros automáticos para retirar o ingresar dinero", + "description": "Este mapa muestra cajeros automáticos para retirar o depositar dinero", "layers": { "3": { "override": { @@ -21,17 +21,17 @@ "0": { "render": { "special": { - "text": "Importar este ATM" + "text": "Importar este cajero automático" } } }, "1": { - "render": "OpenStreetMap sabe sobre un ATM que es {_closest_osm_poi_distance} de distancia. " + "render": "OpenStreetMap conoce un cajero automático a {_closest_osm_poi_distance} metros de distancia. " }, "2": { "render": { "special": { - "message": "Añade todas las etiquetas sugieridas al ATM más cercano" + "message": "Agregar todas las etiquetas sugeridas al cajero automático más cercano" } } } @@ -52,7 +52,7 @@ "then": "Este edificio no tiene referencia en el BAG" } }, - "render": "La referencia de BAG es {ref:bag}" + "render": "La referencia en BAG es {ref:bag}" } } }, @@ -62,10 +62,10 @@ "Build year": { "mappings": { "0": { - "then": "Este edificio se empezó a construir en {_bag_obj:start_date}" + "then": "La construcción del edificio comenzó en {_bag_obj:start_date}" } }, - "render": "El edificio fue construido en {_bag_obj:start_date}" + "render": "Este edificio se construyó en {_bag_obj:start_date}" }, "Building type": { "mappings": { @@ -73,12 +73,12 @@ "then": "El tipo de edificio será un {_bag_obj:construction}" } }, - "render": "El edificio es de tipo {_bag_obj:building}" + "render": "El tipo de edificio es un {_bag_obj:building}" }, "Import button": { "mappings": { "0": { - "then": "Aún no se han calculado los valores correctos. Actualice esta página" + "then": "Aún no se calcularon los valores correctos. Actualiza esta página" } } }, @@ -88,51 +88,51 @@ } } }, - "shortDescription": "Herramienta de ayuda a la importación BAG", - "title": "Ayudante de importación BAG" + "shortDescription": "Herramienta de ayuda para la importación de BAG", + "title": "Herramienta de ayuda para la importación de BAG" }, "benches": { - "description": "Este mapa muestra todos los bancos que están registrados en OpenStreetMap: Bancos individuales, bancos que pertenecen a paradas o marquesinas del transporte público.", + "description": "Este mapa muestra todos los bancos registrados en OpenStreetMap: bancos individuales y bancos pertenecientes a paradas o refugios de transporte público.", "shortDescription": "Un mapa de bancos", "title": "Bancos" }, "bicycle_parkings": { - "description": "Un mapa que muestra todos los tipos de aparcamientos de bicicletas", - "title": "Aparcamiento de bicicletas" + "description": "Un mapa que muestra todos los tipos de estacionamientos para bicicletas", + "title": "Estacionamientos de bicicletas" }, "bicycle_rental": { - "description": "En este mapa, encontrará las numerosas estaciones de alquiler de bicicletas tal y como las conoce OpenStreetMap", - "shortDescription": "Un mapa con estaciones de alquiler de bicicletas y tiendas de alquiler de bicicletas", + "description": "En este mapa, encontrarás las numerosas estaciones de alquiler de bicicletas tal como se conocen en OpenStreetMap", + "shortDescription": "Un mapa con estaciones y tiendas de alquiler de bicicletas", "title": "Alquiler de bicicletas" }, "bicyclelib": { - "description": "Una biblioteca de bicicletas es un lugar donde se prestan bicicletas, a menudo por una pequeña cuota anual. Un caso de uso notable son las bibliotecas de bicicletas para niños, que les permiten cambiar por una bicicleta más grande cuando les queda pequeña", + "description": "Una biblioteca de bicicletas es un lugar donde se pueden prestar bicicletas, a menudo por una pequeña tarifa anual. Un caso de uso notable son las bibliotecas de bicicletas para niños, que les permite cambiar a una bicicleta más grande cuando superan su bicicleta actual", "title": "Bibliotecas de bicicletas" }, "binoculars": { - "description": "Un mapa con prismáticos fijos en un poste. Suele encontrarse en lugares turísticos, miradores, en lo alto de torres panorámicas u ocasionalmente en una reserva natural.", + "description": "Un mapa con prismáticos fijos en su lugar con un poste. Normalmente se pueden encontrar en lugares turísticos, miradores, en la cima de torres panorámicas o ocasionalmente en una reserva natural.", "shortDescription": "Un mapa con prismáticos fijos", - "title": "Binoculares" + "title": "Prismáticos" }, "blind_osm": { - "description": "Ayuda para cartografiar elementos relevantes para invidentes", + "description": "Ayuda a mapear elementos relevantes para personas ciegas", "title": "OSM para ciegos" }, "bookcases": { - "description": "Una librería pública es un pequeño armario en la calle, una caja, una vieja cabina telefónica o algún otro objeto donde se guardan libros. Todo el mundo puede colocar o coger un libro. Este mapa pretende recoger todas estas librerías.", - "title": "Estanterías publicas" + "description": "Una biblioteca pública es un pequeño armario callejero, caja, cabina telefónica antigua u otros objetos donde se almacenan libros. Cualquiera puede colocar o tomar un libro. Este mapa tiene como objetivo recopilar todas estas bibliotecas.", + "title": "Bibliotecas libres" }, "cafes_and_pubs": { - "description": "Cafés, pubs y bares", - "title": "Cafeterías y pubs" + "description": "Cafeterías, pubs y bares", + "title": "Cafés y pubs" }, "campersite": { - "description": "Este sitio recoge todos los lugares oficiales de parada de caravanas y los lugares donde se pueden verter las aguas grises y negras. Puedes añadir detalles sobre los servicios prestados y el coste. Añade fotos y reseñas.", + "description": "Este sitio recopila todos los lugares oficiales de estacionamiento para autocaravanas y lugares donde puedes vaciar aguas grises y negras. Puedes agregar detalles sobre los servicios proporcionados y el costo. Agrega fotos y reseñas.", "overrideAll": { "tagRenderings+": { "0": { "question": "¿Quién opera este lugar?", - "render": "Este lugar lo opera {operator}" + "render": "Este lugar está operado por {operator}" }, "1": { "mappings": { @@ -143,20 +143,20 @@ "then": "Este lugar no tiene suministro eléctrico" } }, - "question": "¿Tiene suministro eléctrico este lugar?" + "question": "¿Tiene este lugar suministro eléctrico?" } } }, - "shortDescription": "Encuentra sitios para pasar la noche con tu caravana", - "title": "Campings" + "shortDescription": "Encuentra lugares para pasar la noche con tu autocaravana", + "title": "Áreas para autocaravanas / Campings" }, "charging_stations": { - "description": "En este mapa, uno puede encontrar y marcar información sobre estaciones de carga", + "description": "En este mapa abierto, se puede encontrar y marcar información sobre estaciones de carga", "shortDescription": "Un mapa mundial de estaciones de carga", "title": "Estaciones de carga" }, "circular_economy": { - "description": "Varios elementos que ayudan a la gente a compartir, reutilizar o reciclar.", + "description": "Varios artículos que ayudan a las personas a compartir, reutilizar o reciclar.", "layers": { "5": { "override": { @@ -167,8 +167,8 @@ "title": "Economía circular" }, "climbing": { - "description": "En este mapa encontrará diversas posibilidades de escalada, como rocódromos, salas de búlder y rocas en la naturaleza.", - "descriptionTail": "El mapa de escalada fue realizado originalmente por Christian Neumann. Por favor, ponte en contacto si tienes comentarios o preguntas.

El proyecto utiliza datos del proyecto OpenStreetMap.

", + "description": "En este mapa encontrarás varias oportunidades de escalada como gimnasios de escalada, salas de bouldering y rocas en la naturaleza.", + "descriptionTail": "El mapa de escalada fue creado originalmente por Christian Neumann. Por favor, ponte en contacto si tienes comentarios o preguntas.

El proyecto utiliza datos del proyecto OpenStreetMap.

", "layers": { "0": { "override": { @@ -176,23 +176,23 @@ "0": { "mappings": { "0": { - "then": "La característica que lo contiene indica que es de acceso público
{_embedding_feature:access:description}" + "then": "El elemento que lo contiene indica que es de acceso público
{_embedding_feature:access:description}" }, "1": { - "then": "Lacaracterística que lo contiene indica que se necesita un permiso para acceder a él
{_embedding_feature:access:description}" + "then": "El elemento que lo contiene indica que se necesita un permiso para acceder
{_embedding_feature:access:description}" }, "2": { - "then": "La característica que lo contiene indica que sólo es accesible para los clientes
{_embedding_feature:access:description}" + "then": "El elemento que lo contiene indica que es solo accesible para clientes
{_embedding_feature:access:description}" }, "3": { - "then": "La característica que lo contiene indica que sólo es accesible para los socios del club
{_embedding_feature:access:description}" + "then": "El elemento que lo contiene indica que es solo accesible para socios del club
{_embedding_feature:access:description}" } } }, "1": { "mappings": { "0": { - "then": "Accesible públicamente a cualquiera" + "then": "De acceso público para todos" }, "1": { "then": "Necesitas un permiso para acceder aquí" @@ -201,7 +201,7 @@ "then": "Solo clientes" }, "3": { - "then": "Solo miembros del club" + "then": "Solo socios del club" } }, "question": "¿Quién puede acceder aquí?" @@ -215,13 +215,13 @@ "0": { "mappings": { "0": { - "then": "Esta tienda repara zapatos de escalada" + "then": "Esta tienda repara zapatillas de escalada" }, "1": { - "then": "Esta tienda no repara zapatos de escalada" + "then": "Esta tienda no repara zapatillas de escalada" } }, - "question": "¿Esta tienda de reparación de zapatos repara zapatos de escalada?" + "question": "¿Esta zapatería repara zapatillas de escalada?" } } } @@ -232,104 +232,104 @@ "0": { "mappings": { "0": { - "then": "Esta tienda repara zapatos de escalada" + "then": "Esta tienda repara zapatillas de escalada" }, "1": { - "then": "Esta tienda no repara zapatos de escalada" + "then": "Esta tienda no repara zapatillas de escalada" } }, - "question": "¿Esta tienda de reparación de zapatos también repara zapatos de escalada?" + "question": "¿Esta zapatería también repara zapatillas de escalada?" } }, "=presets": { "0": { - "title": "una tienda de reparación de zapatos" + "title": "una zapatería" } } } } }, - "title": "Gimnasios de escalada, clubes y lugares" + "title": "Gimnasios, clubes y lugares de escalada" }, "clock": { - "description": "Mapa mostrando todos los relojes públicos", + "description": "Mapa que muestra todos los relojes públicos", "title": "Relojes" }, "cycle_highways": { - "description": "Este mapa muestra autovías ciclistas", - "title": "Autovías ciclistas" + "description": "Este mapa muestra las bicipistas", + "title": "Bicipistas" }, "cycle_infra": { - "description": "Un mapa en el que puedes ver y editar cosas relacionadas con la infraestructura ciclista. Hecho durante #osoc21.", - "shortDescription": "Un mapa en el que puedes ver y editar cosas relacionadas con la infraestructura ciclista.", + "description": "Un mapa donde puedes ver y editar cosas relacionadas con la infraestructura ciclista. Hecho durante #osoc21.", + "shortDescription": "Un mapa donde puedes ver y editar cosas relacionadas con la infraestructura ciclista.", "title": "Infraestructura ciclista" }, "cyclenodes": { - "description": "Este mapa muestra redes de nodos ciclistas y te permita añadir nodos nuevos de manera sencilla", + "description": "Este mapa muestra redes de nodos ciclistas y te permite agregar nuevos nodos fácilmente", "layers": { "0": { - "name": "Vínculos entre nodos", + "name": "Enlaces de nodo a nodo", "tagRenderings": { "node2node-survey:date": { "override": { - "question": "¿Cuándo se sondeó este enlace nodo a nodo por última vez?", - "render": "Este enlace nodo a nodo se sondeó por última vez el {survey:date}" + "question": "¿Cuándo se inspeccionó por última vez este enlace de nodo a nodo?", + "render": "Este enlace de nodo a nodo se inspeccionó por última vez el {survey:date}" } } }, "title": { "mappings": { "0": { - "then": "Vínculos entre nodos {ref}" + "then": "Enlace de nodo a nodo {ref}" } }, - "render": "Vínculos entre nodos" + "render": "Enlace de nodo a nodo" } }, "1": { "name": "Nodos", "presets": { "0": { - "title": "un nodo cíclico" + "title": "un nodo ciclista" } }, "tagRenderings": { "node-expected_rcn_route_relations": { "freeform": { - "placeholder": "Por ejemplo, 3" + "placeholder": "ej. 3" }, - "question": "¿A cuántos otros nodos ciclistas enlaza este nodo?", - "render": "Este nodo enlaza a {expected_rcn_route_relations} otros nodos ciclistas." + "question": "¿A cuántos otros nodos ciclistas se conecta este nodo?", + "render": "Este nodo se conecta a {expected_rcn_route_relations} otros nodos ciclistas." }, "node-rxn_ref": { "freeform": { - "placeholder": "Por ejemplo, 1" + "placeholder": "ej. 1" }, - "question": "¿Cuál es el número de referencia de este nodo cíclico?", - "render": "Este nodo cíclico tiene el número de referencia {rcn_ref}" + "question": "¿Cuál es el número de referencia de este nodo ciclista?", + "render": "Este nodo ciclista tiene el número de referencia {rcn_ref}" }, "node-survey:date": { "override": { - "question": "¿Cuándo fue sondeado este nodo ciclista por última vez?", - "render": "Este nodo ciclista se sondeó por última vez el {survey:date}" + "question": "¿Cuándo se inspeccionó por última vez este nodo ciclista?", + "render": "Este nodo ciclista se inspeccionó por última vez el {survey:date}" } } }, "title": { "mappings": { "0": { - "then": "nodo ciclista {rcn_ref}" + "then": "Nodo ciclista {rcn_ref}" }, "1": { - "then": "Nodo de ciclo propuesto {proposed:rcn_ref}" + "then": "Nodo ciclista propuesto {proposed:rcn_ref}" } }, - "render": "nodo ciclista" + "render": "Nodo ciclista" } }, "2": { "override": { - "name": "Indicadores de ciclismo", + "name": "Señalización ciclista", "title": { "render": "Hito ciclista" } @@ -339,28 +339,28 @@ "override": { "presets": { "0": { - "title": "Un marcador de ruta para un enlace de nodo a nodo" + "title": "un marcador de ruta para un enlace de nodo a nodo" } } } } }, - "title": "Redes de Nodos Ciclistas" + "title": "Redes de nodos ciclistas" }, "cyclestreets": { - "description": "Una ciclocalle es una calle en la que el tráfico motorizado no puede sobrepasar a los ciclistas. Están marcados por una señal de tráfico especial. Las ciclocalles se pueden encontrar en los Países Bajos y Bélgica, pero también en Alemania y Francia. ", + "description": "Una ciclocalle es una calle donde el tráfico motorizado no puede adelantar a los ciclistas. Están señalizadas con una señal de tráfico especial. Las ciclocalles se pueden encontrar en los Países Bajos y Bélgica, pero también en Alemania y Francia. ", "layers": { "0": { - "description": "Una ciclocalle es una calle en la que el tráfico motorizado no puede sobrepasar a un ciclista", + "description": "Una ciclocalle es una calle donde el tráfico motorizado no puede adelantar a un ciclista", "name": "Ciclocalles" }, "1": { - "description": "Esta calle se convertirá en una ciclocalle próximamente", - "name": "Futura ciclocalle", + "description": "Esta calle se convertirá pronto en una ciclocalle", + "name": "Futuras ciclocalles", "title": { "mappings": { "0": { - "then": "{name} se convertirá en una ciclocalle próximamente" + "then": "{name} se convertirá pronto en una ciclocalle" } }, "render": "Futura ciclocalle" @@ -379,19 +379,19 @@ "0": { "mappings": { "0": { - "then": "Esta calle es una ciclocalle (y tiene un límite de velocidad de 30km/h)" + "then": "Esta calle es una ciclocalle (y tiene un límite de velocidad de 30 km/h)" }, "1": { "then": "Esta calle tiene ciclovías" }, "2": { - "then": "Esta calle es una vía ciclista (tiene un límite de velocidad de 30 km/h y no se permiten vehículos) (se pedirá señal más adelante)" + "then": "Esta calle es una vía ciclista (tiene un límite de velocidad de 30 km/h y no se permiten vehículos) (la señal se solicitará más tarde)" }, "3": { "then": "Esta calle es una ciclocalle" }, "4": { - "then": "Esta calle se convertirá en una ciclocalle próximamente" + "then": "Esta calle se convertirá pronto en una ciclocalle" }, "5": { "then": "Esta calle se convertirá pronto en una vía ciclista" @@ -400,15 +400,15 @@ "then": "Esta calle no es una ciclocalle" } }, - "question": "¿La calle {name} es una ciclocalle?" + "question": "¿Es la calle {name} una ciclocalle?" }, "1": { "mappings": { "0": { - "then": "Residentes autorizados" + "then": "Residentes permitidos" }, "1": { - "then": "Vehículos a motor permitidos" + "then": "Vehículos motorizados permitidos" }, "2": { "then": "Motocicletas permitidas" @@ -417,14 +417,14 @@ "then": "Coches permitidos" }, "4": { - "then": "No hay señales suplementarias en esta vía ciclista." + "then": "No hay señales complementarias en esta vía ciclista." } }, "question": "¿Qué señal tiene esta vía ciclista?" }, "2": { "question": "¿Cuándo se convertirá esta calle en una ciclocalle?", - "render": "Esta calle se convetirá en una ciclocalle el {cyclestreet:start_date}" + "render": "Esta calle se convertirá en una ciclocalle en {cyclestreet:start_date}" } } }, @@ -432,86 +432,86 @@ "title": "Ciclocalles" }, "cyclofix": { - "description": "Un mapa para que los ciclistas encuentren la infraestructura adecuada a sus necesidades, como bombas de bicicleta, agua potable, tiendas de bicicletas, reparación o aparcamientos.", + "description": "Un mapa para ciclistas para encontrar la infraestructura adecuada para sus necesidades, inflador de bicicletas, agua potable, tiendas de bicicletas, estaciones de reparación o estacionamientos.", "title": "Cyclofix - un mapa para ciclistas" }, "disaster_response": { "description": "Este mapa contiene elementos destinados a la preparación y respuesta ante desastres.", - "title": "Respuesta a catástrofes y servicios de emergencia" + "title": "Respuesta a desastres y servicios de emergencia" }, "drinking_water": { - "description": "En este mapa, se muestran los puntos de agua potable accesibles públicamente y pueden añadirse fácilmente", - "title": "Agua Potable" + "description": "En este mapa se muestran y se pueden agregar fácilmente puntos de agua potable de acceso público", + "title": "Agua potable" }, "education": { - "description": "En este mapa, encontrará información sobre todos los tipos de escuelas y centros de educación y puede añadir fácilmente más información", + "description": "En este mapa, encontrarás información sobre todo tipo de escuelas y educación y puedes agregar fácilmente más información", "title": "Educación" }, "elongated_coin": { - "description": "Encuentra prensas de centimos para crear tus propias monedas alargadas.", - "title": "Prensa de céntimos" + "description": "Encuentra prensas de monedas para crear tus propias monedas alargadas.", + "title": "Prensas de monedas" }, "etymology": { - "description": "En este mapa, puedes ver el nombre de un objeto. Las calles, edificios, ... provienen de OpenStreetMap que tienen enlace con Wikidata. En la ventana emergente, verás el artículo de Wikipedia (si existe) o un recuadro de wikidata del nombre del objeto. Si el objeto en sí tiene una página wikipedia, también se mostrará.

¡Puedes contribuir! Acerca el zoom lo suficiente y aparecerán todas las calles. Puedes hacer clic en una y aparecerá un cuadro de búsqueda en Wikidata. Con unos pocos clics, puedes añadir un enlace etimológico. Ten en cuenta que para ello necesitas una cuenta gratuita de OpenStreetMap.", + "description": "En este mapa, puedes ver el origen del nombre de un objeto. Las calles, edificios, etc., provienen de OpenStreetMap, que se ha vinculado con Wikidata. En la ventana emergente, verás el artículo de Wikipedia (si existe) o un cuadro de Wikidata sobre el origen del nombre del objeto. Si el objeto en sí tiene una página de Wikipedia, también se mostrará.

¡También puedes ayudar a contribuir!Amplía lo suficiente y todas las calles aparecerán. Puedes hacer clic en una y aparecerá un cuadro de búsqueda de Wikidata. Con unos pocos clics, puedes agregar un enlace de etimología. Ten en cuenta que necesitas una cuenta gratuita de OpenStreetMap para hacer esto.", "layers": { "1": { "override": { - "=name": "Calles sin información etimológica" + "=name": "Calles sin información de etimología" } }, "2": { "override": { - "=name": "Parques y bosques sin información etimológica" + "=name": "Parques y bosques sin información de etimología" } }, "3": { "override": { - "=name": "Instituciones educacionales sin información etimológica" + "=name": "Instituciones educativas sin información de etimología" } }, "4": { "override": { - "=name": "Lugares culturales sin información etimológica" + "=name": "Lugares culturales sin información de etimología" } }, "5": { "override": { - "=name": "Lugares turísticos sin información etimológica" + "=name": "Lugares turísticos sin información de etimología" } }, "6": { "override": { - "=name": "Lugares sanitarios y sociales sin información etimológica" + "=name": "Lugares de salud y sociales sin información de etimología" } }, "7": { "override": { - "=name": "Lugares deportivos sin información etimológica" + "=name": "Lugares deportivos sin información de etimología" } } }, - "shortDescription": "¿Cual es el origen de un topónimo?", - "title": "Etimología: ¿De qué recibe el nombre un lugar?" + "shortDescription": "¿Cuál es el origen de un topónimo?", + "title": "Etimología - ¿De qué proviene el nombre de un lugar?" }, "facadegardens": { - "description": "Los jardines de fachada, las fachadas verdes y los árboles en la ciudad no sólo aportan paz y tranquilidad, sino también una ciudad más bella, una mayor biodiversidad, un efecto refrescante y una mejor calidad del aire.
Klimaan VZW y Mechelen Klimaatneutraal quieren trazar un mapa de los jardines de fachada existentes y nuevos como ejemplo para las personas que quieran construir su propio jardín o para los paseantes urbanos amantes de la naturaleza.
Más información sobre el proyecto en klimaan.be.", + "description": "Jardines de fachada, fachadas verdes y árboles en la ciudad no solo traen paz y tranquilidad, sino también una ciudad más hermosa, una mayor biodiversidad, un efecto de enfriamiento y una mejor calidad del aire.
Klimaan VZW y Mechelen Klimaatneutraal quieren mapear los jardines de fachada existentes y nuevos como un ejemplo para las personas que quieren construir su propio jardín o para los paseantes de la ciudad que aman la naturaleza.
Más información sobre el proyecto en klimaan.be.", "layers": { "0": { "description": "Jardines de fachada", "name": "Jardines de fachada", "presets": { "0": { - "description": "Añadir un jardín de fachada", + "description": "Agregar un jardín de fachada", "title": "un jardín de fachada" } }, "tagRenderings": { "facadegardens-description": { - "question": "Información descriptiva complementaria sobre el jardín (si es necesaria pero no se describe arriba)", + "question": "Información adicional que describe el jardín (si es necesario y aún no se describe arriba)", "render": "Más detalles: {description}" }, "facadegardens-direction": { - "question": "¿Cual es la orientación del jardín?", + "question": "¿Cuál es la orientación del jardín?", "render": "Orientación: {direction} (donde 0=N y 90=O)" }, "facadegardens-edible": { @@ -523,12 +523,12 @@ "then": "No hay plantas comestibles" } }, - "question": "¿Hay alguna planta comestible?" + "question": "¿Hay plantas comestibles?" }, "facadegardens-plants": { "mappings": { "0": { - "then": "Esto son viñedos" + "then": "Hay vides" }, "1": { "then": "Hay plantas con flores" @@ -537,7 +537,7 @@ "then": "Hay arbustos" }, "3": { - "then": "Hay plantas cubresuelos" + "then": "Hay plantas tapizantes" } }, "question": "¿Qué tipo de plantas crecen aquí?" @@ -548,19 +548,19 @@ "then": "Hay un barril de lluvia" }, "1": { - "then": "No hay barril de lluvia" + "then": "No hay un barril de lluvia" } }, "question": "¿Hay un barril de agua instalado para el jardín?" }, "facadegardens-start_date": { - "question": "¿Cuándo se construyó el jardín? (el año es suficiente)", + "question": "¿Cuándo se construyó el jardín? (un año es suficiente)", "render": "Fecha de construcción del jardín: {start_date}" }, "facadegardens-sunshine": { "mappings": { "0": { - "then": "El jardín está completamente al sol" + "then": "El jardín está a pleno sol" }, "1": { "then": "El jardín está parcialmente a la sombra" @@ -569,7 +569,7 @@ "then": "El jardín está a la sombra" } }, - "question": "¿El jardín está al sol o a la sombra?" + "question": "¿El jardín está a la sombra o soleado?" } }, "title": { @@ -577,19 +577,19 @@ } } }, - "shortDescription": "Este mapa muestra jardines de fachada con fotografías e información útil sobre la orientación, la luz del sol y los tipos de plantas.", + "shortDescription": "Este mapa muestra jardines de fachada con imágenes e información útil sobre la orientación, la luz solar y los tipos de plantas.", "title": "Jardines de fachada" }, "fireplace": { - "description": "Lugar al aire libre adecuado para hacer fuego y con barbacoas.", - "title": "Chimenea y barbacoas" + "description": "Lugar al aire libre para hacer fuego o una barbacoa/parrilla fija en un lugar oficial.", + "title": "Chimeneas y barbacoas" }, "food": { - "description": "Restaurantes y Comida rápida", + "description": "Restaurantes y comida rápida", "title": "Restaurantes y comida rápida" }, "fritures": { - "description": "¡En este mapa encontrarás tu tienda de patatas fritas favorita!", + "description": "¡En este mapa, encontrarás tu tienda de papas fritas favorita!", "layers": { "0": { "override": { @@ -597,29 +597,29 @@ "0": { "options": { "0": { - "question": "No se prefiere ningún tipo de aceite" + "question": "Sin preferencia de tipo de aceite" }, "1": { - "question": "Solo muestra freiduras que utilizan aceite vegetal" + "question": "Mostrar solo freidoras que usan aceite vegetal" }, "2": { - "question": "Solo muestra freiduras que utilizan aceite animal" + "question": "Mostrar solo freidoras que usan aceite animal" } } } }, - "name": "Tienda de patatas fritas" + "name": "Tienda de papas fritas" } } }, - "title": "Tiendas de patatas fritas" + "title": "Tiendas de papas fritas" }, "ghostbikes": { - "description": "Una bicicleta fantasma es un monumento en memoria de un ciclista fallecido en un accidente de tráfico, en forma de una bicicleta blanca colocada permanentemente cerca del lugar del accidente.

En este mapa se pueden ver todas las bicicletas fantasma conocidas por OpenStreetMap. ¿Falta alguna bicicleta fantasma? Todo el mundo puede añadir o actualizar información aquí - sólo necesitas tener una cuenta (gratuita) de OpenStreetMap.

Existe una cuenta automatizada en Mastodon que publica un resumen mensual de las bicis fantasma de todo el mundo

", - "title": "Bicicletas blanca" + "description": "Una bicicleta fantasma es un monumento en memoria de un ciclista que murió en un accidente de tráfico, en forma de una bicicleta blanca colocada permanentemente cerca del lugar del accidente.

En este mapa, se pueden ver todas las bicicletas fantasma que se conocen en OpenStreetMap. ¿Falta una bicicleta fantasma? Cualquiera puede agregar o actualizar información aquí; solo necesitas tener una cuenta (gratuita) de OpenStreetMap.

Existe una cuenta automatizada en Mastodon que publica un resumen mensual de bicicletas fantasma en todo el mundo

", + "title": "Bicicletas fantasma" }, "ghostsigns": { - "description": "Un mapa que muestra los rótulos en desuso de los edificios", + "description": "Un mapa que muestra letreros en desuso en los edificios", "layers": { "2": { "override": { @@ -639,14 +639,14 @@ } } }, - "title": "Señales fantasma" + "title": "Letreros fantasma" }, "glutenfree": { - "description": "Un menú compartido con productos sin gluten", + "description": "Un mapa colaborativo con artículos sin gluten", "title": "Sin gluten" }, "grb": { - "description": "Este tema es un intento de automatizar la importación GRB.", + "description": "Este tema es un intento de ayudar a automatizar la importación de GRB.", "layers": { "0": { "tagRenderings": { @@ -654,7 +654,7 @@ "question": "¿Qué tipo de edificio es este?" }, "grb-reference": { - "render": "Se ha importado de GRB, el número de referencia es {source:geometry:ref}" + "render": "Ha sido importado de GRB, el número de referencia es {source:geometry:ref}" } } }, @@ -663,10 +663,10 @@ "Import-button": { "mappings": { "0": { - "then": "Aún no se han calculado los metatags... Reabrir esta ventana emergente" + "then": "Aún no se calcularon las metaetiquetas... Vuelve a abrir esta ventana emergente" }, "1": { - "then": "Este edificio tiene agujeros y está modelado como una relación. Por lo tanto, no se puede combinar. Combínalo manualmente a través el sitio de exportación de edificios {open_in_josm()}" + "then": "Este edificio tiene huecos y se modela como una relación. Como tal, no se puede fusionar. Fusionarlo manualmente a través de el sitio de exportación de edificios {open_in_josm()}" } } } @@ -675,21 +675,21 @@ } }, "guideposts": { - "description": "Los postes guía o indicadores (también conocidos como \"fingerposts\") suelen encontrarse a lo largo de las rutas oficiales de senderismo, ciclismo, esquí o equitación para indicar las direcciones a los distintos destinos. Además, suelen llevar el nombre de una región o lugar e indican la altitud.\n\nLa posición de un poste indicador puede servir al excursionista, ciclista, jinete o esquiador para confirmar su posición actual, sobre todo si utiliza un mapa impreso sin receptor GPS. ", - "title": "Poste guía" + "description": "Los postes indicadores (también conocidos como señalización o \"fingerposts\") suelen encontrarse a lo largo de rutas oficiales de senderismo, ciclismo, esquí o equitación para indicar las direcciones a diferentes destinos. Además, a menudo llevan el nombre de una región o lugar y muestran la altitud.\n\nLa posición de un poste indicador puede ser utilizada por un excursionista/ciclista/jinete/esquiador como confirmación de la posición actual, especialmente si utiliza un mapa impreso sin un receptor GPS. ", + "title": "Postes indicadores" }, "hackerspaces": { - "description": "En este mapa puedes ver hackerspaces, añadir un nuevo hackerspace o actualizar datos directamente", + "description": "En este mapa puedes ver hackerspaces, agregar un nuevo hackerspace o actualizar datos directamente", "shortDescription": "Un mapa de hackerspaces", "title": "Hackerspaces y makerspaces" }, "hailhydrant": { - "description": "En este mapa puedes encontrar y actualizar hidrantes contra incendios, estaciones de bomberos, estaciones de ambulancias y extintores en tus vecindarios favoritos.", - "shortDescription": "Mapa para mostrar bocas de incendios, extintores, parques de bomberos y parques de ambulancias.", - "title": "Bocas de incendios, Extintores, Parques de bomberos y Parques de ambulancias" + "description": "En este mapa puedes encontrar y actualizar bocas de incendio, estaciones de bomberos, estaciones de ambulancias y extintores en tus barrios favoritos.", + "shortDescription": "Mapa para mostrar bocas de incendio, extintores, estaciones de bomberos y estaciones de ambulancias.", + "title": "Bocas de incendio, extintores, estaciones de bomberos y estaciones de ambulancias" }, "healthcare": { - "description": "En este mapa se muestran varios elementos relacionados con la salud", + "description": "En este mapa, se muestran varios elementos relacionados con la atención médica", "layers": { "5": { "override": { @@ -707,22 +707,22 @@ } } }, - "title": "Atención sanitaria" + "title": "Atención médica" }, "hotels": { - "description": "En este mapa encontrarás hoteles en tu zona", + "description": "En este mapa, encontrarás hoteles en tu área", "title": "Hoteles" }, "icecream": { - "description": "Mapa de heladerías y máquinas expendedoras de helados", - "title": "Helado" + "description": "Un mapa que muestra heladerías y máquinas expendedoras de helados", + "title": "Helados" }, "indoors": { - "description": "En este mapa se muestran los lugares cubiertos de acceso público", + "description": "En este mapa, se muestran lugares interiores de acceso público", "title": "En interiores" }, "items_with_image": { - "description": "Un mapa que muestra todos los objetos en OSM que tienen una imagen. Este tema no es muy adecuado para MapComplete porque no se puede agregar una imagen directamente. Sin embargo, este tema está ahí principalmente para poner todo en la base de datos, lo que permite encontrar rápidamente imágenes cercanas para otras funciones", + "description": "Un mapa que muestra todos los elementos en OSM que tienen una imagen. Este tema no es adecuado para MapComplete, ya que no se puede agregar una imagen directamente. Sin embargo, este tema está aquí principalmente para incluir todo esto en la base de datos, lo que permitirá obtener rápidamente imágenes cercanas para otras funciones", "title": "Todos los elementos con imágenes" }, "kerbs_and_crossings": { @@ -742,8 +742,8 @@ "title": "Bordillos y cruces" }, "lactosefree": { - "description": "Un mapa en que colaborar con tiendas y restaurantes con productos sin lactosa", - "title": "Tiendas y restaurantes con productos sin lactosa" + "description": "Un mapa colaborativo con tiendas y restaurantes sin lactosa", + "title": "Tiendas y restaurantes sin lactosa" }, "lighthouses": { "description": "Los faros son edificios altos con una luz en la parte superior para guiar el tráfico marítimo.", @@ -758,7 +758,7 @@ "0": { "options": { "0": { - "question": "El nombre contiene {search}" + "question": "El nombre del tema contiene {search}" } } }, @@ -772,7 +772,7 @@ "10": { "options": { "0": { - "question": "Excluir el tema de la etimología" + "question": "Excluir el tema de etimología" } } }, @@ -786,83 +786,130 @@ "3": { "options": { "0": { - "question": "No realizado por el colaborador {search}" + "question": "No hecho por el colaborador {search}" } } }, "4": { "options": { "0": { - "question": "Realizado antes de {search}" + "question": "Hecho antes de {search}" } } }, "5": { "options": { "0": { - "question": "Realizado después de {search}" + "question": "Hecho después de {search}" } } }, "6": { "options": { "0": { - "question": "Idioma del usuario (código iso) {search}" + "question": "Idioma del usuario (código ISO) {search}" } } }, "7": { "options": { "0": { - "question": "Hecho con host {search}" + "question": "Hecho con el anfitrión {search}" } } }, "8": { "options": { "0": { - "question": "El conjunto de cambios ha añadido al menos una imagen" + "question": "El conjunto de cambios agregó al menos una imagen" } } + }, + "9": { + "options": { + "0": { + "question": "Excluir el tema GRB" + } + } + } + }, + "name": "Centros de conjuntos de cambios", + "tagRenderings": { + "contributor": { + "question": "¿Qué colaborador realizó este cambio?", + "render": "Cambio realizado por {user}" + }, + "host": { + "question": "¿Con qué anfitrión (sitio web) se realizó este cambio?", + "render": "Cambio realizado con {host}" + }, + "locale": { + "question": "¿En qué configuración regional (idioma) se realizó este cambio?", + "render": "Configuración regional del usuario es {locale}" + }, + "show_changeset_id": { + "render": "Conjunto de cambios {id}" + }, + "theme-id": { + "question": "¿Qué tema se utilizó para realizar este cambio?", + "render": "Cambio con el tema {theme}" + }, + "version": { + "question": "¿Qué versión de MapComplete se utilizó para realizar este cambio?", + "render": "Hecho con {editor}" + } + }, + "title": { + "render": "Conjunto de cambios para {theme}" + } + }, + "1": { + "override": { + "tagRenderings+": { + "0": { + "render": "Puedes encontrar más estadísticas aquí" + } } } } - } + }, + "shortDescription": "Muestra los cambios realizados por MapComplete", + "title": "Cambios realizados con MapComplete" }, "maproulette": { - "description": "Tema que muestra las tareas de MapRoulette, permitiendo buscarlas, filtrarlas y arreglarlas.", + "description": "Tema que muestra las tareas de MapRoulette, permitiéndote buscarlas, filtrarlas y solucionarlas.", "title": "Tareas de MapRoulette" }, "maps": { - "description": "En este mapa puedes encontrar todos los mapas que OpenStreetMap conoce - típicamente un mapa grande con un tablero que muestra el área, la ciudad o la región, ej. un mapa turista detrás de una vaya publicitaria, un mapa de una reserva natural, un mapa de redes ciclistas en la región, ...)

Si falta un mapa, puedes mapear este mapa fácilmente en OpenStreetMap.", + "description": "En este mapa puedes encontrar todos los mapas que conoce OpenStreetMap; normalmente un mapa grande en un tablero de información que muestra el área, la ciudad o la región, por ejemplo, un mapa turístico en la parte trasera de una cartelera, un mapa de una reserva natural, un mapa de redes ciclistas en la región, ...

Si falta un mapa, puedes mapear fácilmente este mapa en OpenStreetMap.", "shortDescription": "Este tema muestra todos los mapas (turísticos) que OpenStreetMap conoce", "title": "Un mapa de mapas" }, "maxspeed": { - "description": "Este mapa muestra la velocidad máxima legalmente permitida en cada carretera. Si falta una velocidad máxima o es incorrecta, puedes corregirla aquí.", - "shortDescription": "Este mapa muestra la velocidad máxima permitida legalmente en cada carretera.", - "title": "Velocidad" + "description": "Este mapa muestra la velocidad máxima legalmente permitida en cada carretera. Si falta o está mal una velocidad máxima, puedes corregirla aquí.", + "shortDescription": "Este mapa muestra la velocidad máxima legalmente permitida en cada carretera.", + "title": "Velocidad máxima" }, "memorials": { - "description": "Los monumentos conmemorativos son objetos físicos colocados de forma permanente en el espacio público para recordar a una persona o un acontecimiento. Pueden ser objetos muy diversos, como estatuas, placas, pinturas, objetos militares (como tanques),...", - "title": "Memoriales" + "description": "Los monumentos conmemorativos son objetos físicos colocados permanentemente en el espacio público para recordar a una persona o un evento. Pueden ser una amplia gama de objetos, como estatuas, placas, pinturas, objetos militares (como tanques),...", + "title": "Monumentos conmemorativos" }, "nature": { - "description": "En este mapa, uno puede encontrar información interesante para turistas y amantes de la naturaleza.", - "shortDescription": "Un mapa para amantes de la naturaleza, con PDIs interesantes", + "description": "En este mapa, se puede encontrar información interesante para turistas y amantes de la naturaleza.", + "shortDescription": "Un mapa para amantes de la naturaleza, con PDI interesantes", "title": "En la naturaleza" }, "notes": { - "description": "Una nota es un pin en el mapa con algún texto para indicar algo erróneo.

Asegúrate de comprobar la vista de filtros para buscar usuarios y texto.", + "description": "Una nota es un pin en el mapa con algo de texto para indicar algo incorrecto.

Asegúrate de revisar la vista de filtro para buscar usuarios y texto.", "title": "Notas en OpenStreetMap" }, "observation_towers": { - "description": "Torres accesibles públicamente para disfrutar de la vista", - "shortDescription": "Torres accesibles públicamente para disfrutar de la vista", + "description": "Torres de acceso público para disfrutar de la vista", + "shortDescription": "Torres de acceso público para disfrutar de la vista", "title": "Torres de observación" }, "onwheels": { - "description": "En este mapa se muestran los lugares accesibles al público en silla de ruedas, que pueden añadirse fácilmente", + "description": "En este mapa, se muestran y se pueden agregar fácilmente lugares accesibles para sillas de ruedas", "layers": { "19": { "override": { @@ -884,7 +931,7 @@ "1": { "render": { "special": { - "message": "Añadir todas las etiquetas sugeridas" + "message": "Agregar todas las etiquetas sugeridas" } } } @@ -897,10 +944,10 @@ "0": { "options": { "0": { - "question": "Cualquiera/Sin información de anchura" + "question": "Información de ancho/sin información de ancho" }, "1": { - "question": "Sin información de anchura" + "question": "Sin información de ancho" } } } @@ -922,7 +969,7 @@ "question": "Bordillo rebajado (~3 cm)" }, "3": { - "question": "Bordillo enrasado (~0 cm)" + "question": "Bordillo a ras (~0cm)" } } } @@ -931,14 +978,14 @@ }, "8": { "override": { - "name": "Plazas de aparcamiento para discapacitados" + "name": "Plazas de estacionamiento para discapacitados" } } }, "title": "Sobre ruedas" }, "openlovemap": { - "description": "

Amor en la palma de tu mano

Open Love Map lista varias entradas para adultos, como burdeles, tiendas eróticas y clubs de striptease.", + "description": "

Amor en la palma de tu mano

Open Love Map lista varias entradas para adultos, como burdeles, tiendas eróticas y clubes de striptease.", "layers": { "2": { "override": { @@ -952,22 +999,22 @@ "0": { "mappings": { "0": { - "then": "Esta tienda ofrece artículos BDSM suaves, como esposas mullidas, un conjunto de ..." + "then": "Esta tienda ofrece artículos BDSM suaves, como esposas de peluche, un kit de iniciación 'cincuenta sombras de Grey',..." }, "1": { - "then": "Esta tienda ofrece artículos especializados en BDSM, como barras separadoras, artículos para juegos con agujas, artículos de bondage médico, herramientas de impacto, grilletes, colores metálicos, esposas, pinzas para pezones, accesorios de shibari, ..." + "then": "Esta tienda ofrece artículos BDSM especializados, como barras separadoras, artículos para juegos con agujas, artículos de bondage médico, herramientas de impacto, grilletes, colores metálicos, puños, pinzas para pezones, accesorios shibari,..." }, "2": { - "then": "Esta tienda ofrece accesorios para mascotas, como máscaras de cachorros, máscaras de animales, juegos de ponis, colas, herraduras..." + "then": "Esta tienda ofrece accesorios para juegos con mascotas, como máscaras de cachorro, máscaras de animales, juegos de pony, colas, zapatos de casco,..." }, "3": { - "then": "Esta tienda ofrece ropa de cuero, desde pantalones y camisas de uso diario hasta arneses de cuero" + "then": "Esta tienda ofrece artículos de cuero, incluyendo pantalones y camisas utilizables en la vida diaria hasta arneses de cuero" }, "4": { - "then": "Esta tienda ofrece uniformes para juegos de rol, tales como uniformes de enfermera, uniformes militares, policía, colegiala, criada francesa, ..." + "then": "Esta tienda ofrece uniformes para juegos de rol, como uniformes de enfermera, uniformes militares, policía, colegiala, criada francesa,..." } }, - "question": "¿Ofrece esta tienda artículos fetichistas?" + "question": "¿Esta tienda ofrece artículos fetiche?" } } } @@ -976,7 +1023,7 @@ "override": { "=presets": { "0": { - "title": "una máquina de venta de condones" + "title": "una máquina expendedora de condones" } } } @@ -1003,7 +1050,7 @@ "overrideAll": { "tagRenderings+": { "0": { - "question": "¿Este {title()} tiene una cabina de video privada?", + "question": "¿Tiene {title()} una cabina de video privada?", "questionHint": "Esto es para uso de una sola persona." } } @@ -1011,25 +1058,25 @@ "title": "Open Love Map" }, "openwindpowermap": { - "description": "Mapa para mostrar y editar turbinas de viento.", - "title": "Generadores de energía eólica" + "description": "Un mapa para mostrar y editar aerogeneradores.", + "title": "Generadores eólicos" }, "osm_community_index": { - "description": "Una lista de recursos para los usuarios de OpenStreetMap. Los \"recursos\" pueden ser enlaces a foros, reuniones, grupos de trabajo, canales IRC, listas de correo, etcétera. Cualquier cosa que los cartógrafos, especialmente los principiantes, puedan encontrar interesante o útil.", + "description": "Una lista de recursos para usuarios de OpenStreetMap. 'Recursos' pueden ser enlaces a foros, encuentros, grupos de Slack, canales IRC, listas de correo, etc. Cualquier cosa que los mapeadores, especialmente los principiantes, puedan encontrar interesante o útil.", "shortDescription": "Un índice de recursos comunitarios para OpenStreetMap.", - "title": "Índice de comunidades de OSM" + "title": "Índice de la comunidad OSM" }, "parkings": { - "description": "Este mapa muestra diferentes puntos de aparcamiento", - "shortDescription": "Este mapa muestra diferentes puntos de aparcamiento", - "title": "Aparcamiento" + "description": "Este mapa muestra diferentes lugares de estacionamiento", + "shortDescription": "Este mapa muestra diferentes lugares de estacionamiento", + "title": "Estacionamiento" }, "personal": { - "description": "Crea un tema personal basado en todas las capas disponibles de todos los temas. Con el objetivo de mostrar algunos datos, abre selección de capas", - "title": "Interficie personal" + "description": "Crea un tema personal basado en todas las capas disponibles de todos los temas. Para mostrar algunos datos, abre la selección de capas", + "title": "Tema personal" }, "pets": { - "description": "En este mapa, encontrarás varios lugares interesantes para tus mascotas: veterinarios, parques para perros, tiendas de mascotas, restaurantes aptos para perros, ...", + "description": "En este mapa, encontrarás varios lugares interesantes para tus mascotas: veterinarios, parques para perros, tiendas de mascotas, restaurantes que admiten perros...", "layers": { "1": { "override": { @@ -1038,9 +1085,9 @@ }, "2": { "override": { - "name": "Tiendas aptas para perros", + "name": "Tiendas que admiten perros", "title": { - "render": "Tiendas aptas para perros" + "render": "Tiendas que admiten perros" } } }, @@ -1048,8 +1095,8 @@ "override": { "presets": { "0": { - "description": "Una tienda a la que se puede llevar un perro a casi todas partes", - "title": "Tienda adaptada para perros" + "description": "Una tienda donde puedes llevar a un perro casi a todas partes", + "title": "tienda que admite perros" } } } @@ -1058,9 +1105,9 @@ "title": "Veterinarios, parques para perros y otros servicios para mascotas" }, "playgrounds": { - "description": "En este mapa, puedes encontrar parques y añadir más información", + "description": "En este mapa, encuentras parques infantiles y puedes agregar más información", "shortDescription": "Un mapa con parques infantiles", - "title": "Parques infanties" + "title": "Parques infantiles" }, "postal_codes": { "description": "Códigos postales", @@ -1077,9 +1124,9 @@ } }, "2": { - "name": "Municipios", + "name": "ayuntamientos", "title": { - "render": "Municipio {name}" + "render": "Ayuntamiento {name}" } } }, @@ -1087,7 +1134,7 @@ "title": "Códigos postales" }, "postboxes": { - "description": "En este mapa podrás buscar y añadir los datos de las oficinas de correos y buzones de correo. ¡Puedes utilizar este mapa para encontrar dónde enviar tu próxima postal! :)
¿Has detectado un error o falta algún buzón de correo? Puedes editar este mapa con una cuenta gratuita de OpenStreetMap.", + "description": "En este mapa puedes encontrar y agregar datos de oficinas de correos y buzones. ¡Puedes usar este mapa para encontrar dónde enviar tu próxima postal! :)
¿Viste un error o falta un buzón? Puedes editar este mapa con una cuenta gratuita de OpenStreetMap.", "layers": { "3": { "override": { @@ -1095,72 +1142,72 @@ "0": { "mappings": { "0": { - "then": "Esta tienda es colaboradora de correos o alguna agencia de transporte" + "then": "Esta tienda es un socio postal" }, "1": { - "then": "Esta tienda no está asociada a ninguna agencia de transporte" + "then": "Esta tienda no es un socio postal" } }, - "question": "¿Es esta tienda un puesto de recogida de paquetes?" + "question": "¿Es esta tienda un socio postal?" } }, "=presets": { "0": { - "description": "Si una tienda aún no está en el mapa y es un puntode recogida de paquetes, puedes añadirla aquí.", - "title": "Una tienda desaparecida que era un punto de recogida de paquetes" + "description": "Si una tienda aún no está en el mapa y es un socio postal, puedes agregarla aquí.", + "title": "una tienda que falta y que es un socio postal" } }, - "description": "Agregar un nuevo punto de recogida al mapa en una tienda existente" + "description": "Agregar un nuevo socio postal al mapa en una tienda existente" } } }, - "shortDescription": "Un mapa que muestra buzones y oficinas de correo", - "title": "Mapa de Buzones y Oficinas de Correos" + "shortDescription": "Un mapa que muestra buzones y oficinas de correos", + "title": "Mapa de buzones y oficinas de correos" }, "rainbow_crossings": { - "description": "En este mapa se muestran los pasos de peatones pintados con el arco iris, que pueden añadirse fácilmente", - "title": "Pasos de peatones arco iris" + "description": "En este mapa, se muestran y se pueden agregar fácilmente pasos de peatones pintados con arcoíris", + "title": "Pasos de peatones arcoíris" }, "shops": { - "description": "En este mapa, se puede marcar información básica sobre tiendas, añadir horarios y números de teléfono", - "shortDescription": "Un mapa editable con información básica sobre tiendas", + "description": "En este mapa, se puede marcar información básica sobre tiendas, agregar horarios de apertura y números de teléfono", + "shortDescription": "Un mapa editable con información básica de la tienda", "title": "Tiendas" }, "ski": { "description": "Todo lo que necesitas para esquiar", - "title": "Pistas de esquí y vías aéreas" + "title": "Pistas de esquí y remontes" }, "sport_pitches": { - "description": "Una pista de deportes es una área donde se practican deportes", - "shortDescription": "Un mapa que muestra pistas de deportes", - "title": "Pistas de deportes" + "description": "Una cancha deportiva es un área donde se practican deportes", + "shortDescription": "Un mapa que muestra canchas deportivas", + "title": "Canchas deportivas" }, "sports": { - "description": "Todo sobre deportes, encuentra campos de deporte, gimnasios y mucho más.", + "description": "Todo sobre deportes, encuentra canchas deportivas, centros de fitness y más.", "layers": { "4": { "override": { "presets": { "0": { - "description": "Añade una nueva tienda de artículos deportivos.", - "title": "una tienda de deportes" + "description": "Agregar una nueva tienda que venda artículos deportivos.", + "title": "una tienda de artículos deportivos" } } } } }, - "shortDescription": "Mapa con instalaciones deportivas.", + "shortDescription": "Mapa que muestra instalaciones deportivas.", "title": "Deportes" }, "stations": { - "description": "Ver, editar y añadir detalles a una estación de tren", + "description": "Ver, editar y agregar detalles a una estación de tren", "layers": { "16": { "description": "Pantallas que muestran los trenes que saldrán de esta estación", "name": "Tableros de salidas", "presets": { "0": { - "description": "Añadir un panel de salidas, electrónico o en papel", + "description": "Agregar un tablero que muestre las salidas, ya sea electrónico o en papel", "title": "un tablero de salidas" } }, @@ -1168,10 +1215,10 @@ "type": { "mappings": { "0": { - "then": "Este es un panel de salidas de tipo desconocido" + "then": "Este es un tablero de salidas de un tipo desconocido" }, "1": { - "then": "Este es un tablero electrónico que muestra las próximas salidas en tiempo real" + "then": "Este es un tablero electrónico, que muestra las próximas salidas en tiempo real" }, "2": { "then": "Este es un horario en papel" @@ -1180,7 +1227,7 @@ "then": "Hay un cartel que muestra la frecuencia de los trenes" } }, - "question": "¿Qué tipo de tablero de salidas es éste?" + "question": "¿Qué tipo de tablero de salidas es este?" } }, "title": { @@ -1189,13 +1236,13 @@ }, "3": { "description": "Capa que muestra las estaciones de tren", - "name": "Estación de Tren" + "name": "Estaciones de tren" } }, "title": "Estaciones de tren" }, "street_lighting": { - "description": "En este mapa puedes encontrar todo sobre la iluminación callejera", + "description": "En este mapa puedes encontrar todo sobre el alumbrado público", "layers": { "1": { "name": "Calles iluminadas", @@ -1212,7 +1259,7 @@ "then": "Esta calle está iluminada por la noche" }, "3": { - "then": "Esta calle está iluminada todo el día" + "then": "Esta calle está iluminada 24/7" } }, "question": "¿Está iluminada esta calle?" @@ -1240,7 +1287,7 @@ "then": "Esta calle está iluminada 24/7" } }, - "question": "¿Esta calle está iluminada?" + "question": "¿Está iluminada esta calle?" } }, "title": { @@ -1251,51 +1298,51 @@ "title": "Alumbrado público" }, "surveillance": { - "description": "En este mapa abierto, puede encontrar cámaras de vigilancia.", + "description": "En este mapa abierto, puedes encontrar cámaras de vigilancia.", "shortDescription": "Cámaras de vigilancia y otros medios de vigilancia", "title": "Vigilancia bajo vigilancia" }, "toilets": { - "description": "Mapa de aseos públicos", + "description": "Un mapa de baños públicos", "title": "Baños públicos" }, "transit": { - "description": "Planifique su viaje con ayuda del sistema de transporte público.", + "description": "Planifica tu viaje con la ayuda del sistema de transporte público.", "title": "Rutas de autobús" }, "trees": { - "description": "¡Mapa de los Árboles!", - "shortDescription": "Mapa de los Árboles", + "description": "¡Mapea todos los árboles!", + "shortDescription": "Mapea todos los árboles", "title": "Árboles" }, "vending_machine": { - "description": "Encontrar máquinas expendedoras para todo", + "description": "Encuentra máquinas expendedoras de todo", "title": "Máquinas expendedoras" }, "walkingnodes": { - "description": "Este mapa muestra las redes de nodos de senderismo y le permite añadir nuevos nodos fácilmente", + "description": "Este mapa muestra redes de nodos de senderismo y te permite agregar nuevos nodos fácilmente", "layers": { "0": { - "name": "enlaces nodo a nodo", + "name": "Enlaces de nodo a nodo", "tagRenderings": { "node2node-survey:date": { "override": { - "question": "¿Cuándo se sondeó este enlace nodo a nodo por última vez?", - "render": "Este enlace nodo a nodo se sondeó por última vez el {survey:date}" + "question": "¿Cuándo se inspeccionó por última vez este enlace de nodo a nodo?", + "render": "Este enlace de nodo a nodo se inspeccionó por última vez el {survey:date}" } } }, "title": { "mappings": { "0": { - "then": "enlace nodo a nodo {ref}" + "then": "Enlace de nodo a nodo {ref}" } }, - "render": "enlace nodo a nodo" + "render": "Enlace de nodo a nodo" } }, "1": { - "name": "nodos", + "name": "Nodos", "presets": { "0": { "title": "un nodo de senderismo" @@ -1304,42 +1351,42 @@ "tagRenderings": { "node-expected_rwn_route_relations": { "freeform": { - "placeholder": "Por ejemplo, 3" + "placeholder": "p.ej.3" }, - "question": "¿A cuántos otros nodos de senderismo conecta este nodo?", - "render": "Este nodo se vincula a {expected_rwn_route_relations} otros nodos de senderismo." + "question": "¿A cuántos otros nodos de senderismo se conecta este nodo?", + "render": "Este nodo se conecta a {expected_rwn_route_relations} otros nodos de senderismo." }, "node-rwn_ref": { "freeform": { - "placeholder": "Por ejemplo, 1" + "placeholder": "p.ej.1" }, "question": "¿Cuál es el número de referencia de este nodo de senderismo?", - "render": "Este nodo de senderismo tiene la referencia número {rwn_ref}" + "render": "Este nodo de senderismo tiene el número de referencia {rwn_ref}" }, "survey_date": { "override": { - "question": "¿Cuándo fue la última revisión de este nodo de senderismo?", - "render": "Este nodo de senderismo fue revisado por última vez en {survey:date}" + "question": "¿Cuándo se inspeccionó por última vez este nodo de senderismo?", + "render": "Este hito de senderismo se inspeccionó por última vez el {survey:date}" } } }, "title": { "mappings": { "0": { - "then": "Nodo de senderismo {rwn_ref}" + "then": "Hito de senderismo {rwn_ref}" }, "1": { - "then": "Nodo de senderismo propuesto {proposed:rwn_ref}" + "then": "Hito de senderismo propuesto {proposed:rwn_ref}" } }, - "render": "Nodo de senderismo" + "render": "Hito de senderismo" } }, "2": { "override": { - "name": "Postes guías de senderismo", + "name": "Señalización de senderismo", "title": { - "render": "Poste guía de senderismo" + "render": "Hito de senderismo" } } }, @@ -1356,15 +1403,15 @@ "title": "Redes de nodos de senderismo" }, "walls_and_buildings": { - "description": "Capa especial incorporada que proporciona todas las paredes y edificios. Esta capa es útil en los preajustes para objetos que pueden colocarse contra las paredes (por ejemplo: AEDs, buzones de correos, entradas, direcciones, cámaras de vigilancia, ...). Esta capa es invisible por defecto y no puede ser activada por el usuario.", - "title": "Muros y edificios" + "description": "Capa incorporada especial que proporciona todas las paredes y edificios. Esta capa es útil en los ajustes preestablecidos para objetos que se pueden colocar contra las paredes (por ejemplo, DEA, buzones, entradas, direcciones, cámaras de vigilancia, etc.). Esta capa es invisible de forma predeterminada y el usuario no puede activarla.", + "title": "Paredes y edificios" }, "waste": { - "description": "Mapa que muestra las papeleras y las instalaciones de reciclaje.", - "title": "Basura y reciclaje" + "description": "Mapa que muestra papeleras y instalaciones de reciclaje.", + "title": "Residuos" }, "waste_basket": { - "description": "En este mapa, encontrarás las papeleras cercanas a ti. Si falta alguna en el mapa, puedes añadirla tu mismo.", + "description": "En este mapa, encontrarás papeleras cerca de ti. Si falta alguna papelera en este mapa, puedes añadirla tú mismo.", "shortDescription": "Un mapa con papeleras", "title": "Papeleras" } diff --git a/langs/themes/hu.json b/langs/themes/hu.json index 48d58f1c0..ffc4238bf 100644 --- a/langs/themes/hu.json +++ b/langs/themes/hu.json @@ -1,17 +1,29 @@ { + "advertising": { + "title": "Reklámok" + }, "aed": { "description": "Ezen a térképen a közeli defibrillátorokat lehet megtalálni és feltüntetni", - "title": "Defibrillátor-térkép" + "title": "Defibrillátorok" }, "artwork": { "description": "Szobrok, mellszobrok, graffitik és egyéb műalkotások nyílt világtérképe", - "title": "Műalkotástérkép" + "title": "Műalkotás" + }, + "atm": { + "title": "Bankautomaták" }, "benches": { "description": "Ez a térkép megjeleníti az OpenStreetMap-en rögzített összes padot: egyes padokat, valamint tömegközlekedési megállókban vagy menedékhelyeken található padokat. OpenStreetMap-fiókkal Ön is felrajzolhat új padokat, vagy szerkesztheti a meglévő padok részleteit.", "shortDescription": "Padtérkép", "title": "Padok" }, + "bicycle_parkings": { + "title": "Kerékpártárolók" + }, + "bicycle_rental": { + "title": "Kerékpárkölcsönzők" + }, "bicyclelib": { "description": "A kerékpárkönyvtárak olyan helyek, ahol kerékpárokat lehet kölcsönözni, gyakran egy kis éves díj ellenében. Figyelemre méltó felhasználásuk a gyerekeknek szánt kerékpárkönyvtárak, amelyek segítségével nagyobb kerékpárra válthatnak, amikor jelenlegi kerékpárjukat kinőtték", "title": "Kerékpárkönyvtárak" @@ -21,6 +33,9 @@ "shortDescription": "Rögzített távcsövek (binokulárok) térképe", "title": "Távcsövek" }, + "blind_osm": { + "title": "OSM vakoknak" + }, "bookcases": { "description": "A nyilvános könyvespolc egy kis utcai szekrény, doboz, régi telefonfülke vagy más tárgy, ahol könyveket tárolnak. Bárki tehet rá vagy vihet el róla könyvet. Ez a térkép ezeket a könyvespolcokat kívánja összegyűjteni. Ha felfedezett egy új könyvespolcot a közelben, akkor egy ingyenes OpenStreetMap-fiókkal gyorsan fel is rajzolhatja a térképre.", "title": "Könyvespolctérkép" @@ -45,10 +60,27 @@ "shortDescription": "Elektromos töltőpontok világtérképe", "title": "Elektromos töltőpontok" }, + "circular_economy": { + "title": "Körforgásos gazdaság" + }, "climbing": { "description": "Ezen a térképen különböző mászási lehetőségeket talál, például falmászótermeket, bouldertermeket és sziklákat a természetben.", "descriptionTail": "A mászótérképet eredetileg Christian Neumann készítette. Ha észrevétele vagy kérdése van, kérjük, vele lépjen kapcsolatba.

A projekt az OpenStreetMap adatait használja

", - "title": "Mászótérkép" + "layers": { + "2": { + "override": { + "=presets": { + "0": { + "title": "egy cipészműhely" + } + } + } + } + }, + "title": "Falmászás: tornacsarnokok, klubok és helyek" + }, + "clock": { + "title": "Órák" }, "cycle_infra": { "description": "Kerékpáros infrastruktúrával kapcsolatos dolgokat megjelenítő és szerkesztésre felkínáló térkép. Az #osoc21 (Open Summer of Code) alatt készült.", @@ -114,10 +146,19 @@ "description": "Ez a térkép kerékpárosoknak kíván könnyen használható megoldást nyújtani a számukra fontos infrastruktúra megtalálásához.

A bal alsó sarokban nyomon követheti pontos tartózkodási helyét (csak mobilon), és kiválaszthatja az Ön számára fontos rétegeket. Az eszköz segítségével gombostűket (érdekes pontokat, POI-kat) is szerkeszthet vagy felrajzolhat a térképre, a kérdések megválaszolásával pedig további adatokat szolgáltathat.

Minden módosítás automatikusan elmentődik az OpenStreetMap globális adatbázisában, és mások szabadon újra felhasználhatják.

A cyclofix projektről további információkat a cyclofix.osm.be oldalon talál.", "title": "Cyclofix – nyílt térkép kerékpárosoknak" }, + "disaster_response": { + "title": "Katasztrófaelhárítás és sürgősségi szolgálatok" + }, "drinking_water": { "description": "Ezen a térképen a nyilvánosan hozzáférhető ivóvíznyerő helyek láthatók, szerkeszthetők és rajzolhatók fel könnyedén", "title": "Ivóvíz" }, + "education": { + "title": "Oktatás" + }, + "elongated_coin": { + "title": "Kinyújtottérem-automaták" + }, "etymology": { "description": "Ezen a térképen az látható, hogy egy objektum milyen névre hallgat. Az utcák, épületek stb. az OpenStreetMapről származnak, amely össze van kapcsolva a Wikidata adatbázissal. A felugró ablakban megjelenik a megfelelő Wikipedia-szócikk (ha van) vagy egy Wikidata-doboz arról, amiről az objektumot elnevezték. Ha magának az objektumnak van Wikipédia-oldala, az is megjelenik.

A térképet Ön is szerkesztheti!nagyítson rá, és az összes utca megjelenik. Ha valamelyikre rákattint, megjelenik Wikidata-kereső doboz. Néhány kattintással hozzáadhat egy etimológiai linket. Ne feledje, hogy ehhez szüksége van egy ingyenes OpenStreetMap-fiókra.", "layers": { @@ -133,7 +174,7 @@ } }, "shortDescription": "Mi az eredete egy helynévnek?", - "title": "Etimológiai térkép" + "title": "Etimológiai térkép – miről kapta a nevét ez a hely?" }, "facadegardens": { "description": "A homlokzatkertek, zöld homlokzatok és fák a városban nemcsak békét és nyugalmat, hanem szebb várost, nagyobb biológiai sokféleséget, hűsítő hatást és jobb levegőminőséget is hoznak.
A Klimaan VZW és a Mechelen Klimaatneutraal a meglévő és új homlokzati kerteket szeretné feltérképezni, hogy példaként szolgáljanak a saját kertet építeni vágyóknak vagy a természetet kedvelő városi sétálóknak.
További információ a projektről a klimaan.be oldalon.", @@ -222,6 +263,9 @@ "shortDescription": "Ez a térkép homlokzati kerteket jelenít meg képekkel, valamint adatokkal a tájolásukról, a napsütésnek való kitettségükről és a bennük található növényzetről.", "title": "Homlokzati kertek" }, + "fireplace": { + "title": "Tűzrakó- és grillezőhelyek" + }, "food": { "title": "Éttermek és büfék" }, @@ -235,9 +279,12 @@ } }, "ghostbikes": { - "description": "A szellemkerékpár egy közlekedési balesetben elhunyt kerékpáros emlékműve: egy fehér kerékpár, amelyet állandó jelleggel a baleset helyszínének közelében helyeznek el.

A térképen az OpenStreetMap által ismert összes szellemkerékpár megtekinthető. Hiányzik róla egy szellemkerékpár? Bárki hozzáadhat vagy frissíthet adatokat – csak egy (ingyenes) OpenStreetMap-fiókra van szükség hozzá.", + "description": "A szellemkerékpár egy közlekedési balesetben elhunyt kerékpáros emlékműve: egy fehér kerékpár, amelyet állandó jelleggel a baleset helyszínének közelében helyeznek el.

A térképen az OpenStreetMap által ismert összes szellemkerékpár megtekinthető. Hiányzik róla egy szellemkerékpár? Bárki hozzáadhat vagy frissíthet adatokat – csak egy (ingyenes) OpenStreetMap-fiókra van szükség hozzá.

A Mastodonon van egy automatizált fiók, amely havonta közzétesz egy áttekintést a szellemkerékpárokról világszerte.

", "title": "Szellemkerékpárok" }, + "glutenfree": { + "title": "Gluténmentes helyek" + }, "grb": { "description": "Ez a sablon a flandriai GRB épületimportálás automatizlását kívánja megkönnyíteni." }, @@ -247,9 +294,48 @@ "title": "Hackerspace-ek" }, "hailhydrant": { - "description": "Ezen a térképen tűzcsapokat, tűzoltóállomásokat, mentőállomásokat és tűzoltóállomásokat találhat és szerkeszthet kedvenc városrészeiben (vagy másutt).\n\nA bal alsó sarokban nyomon követheti pontos tartózkodási helyét (csak mobilon), és kiválaszthatja az Ön számára releváns rétegeket. Ezzel az eszközzel gombostűket (érdekes pontokat, POI-kat) is szerkeszthet vagy felrajzolhat a térképre, a rendelkezésre álló kérdések megválaszolásával pedig további részleteket adhat meg.\n\nAz Ön által elvégzett módosítások automatikusan elmentődnek az OpenStreetMap globális adatbázisában, és mások szabadon újra felhasználhatják azokat.", + "description": "Ezen a térképen tűzcsapokat, tűzoltóállomásokat, mentőállomásokat és tűzoltó készülékeket találhatsz és aktualizálhatsz a kedvenc környékeden.", "shortDescription": "Térkép tűzcsapok, tűzoltó készülékek, tűzoltóságok és mentőállomások megjelenítéséhez.", - "title": "Tűzcsapok, tűzoltó készülékek, tűzoltóságok és mentőállomások." + "title": "Tűzcsapok, tűzoltó készülékek, tűzoltóságok és mentőállomások" + }, + "healthcare": { + "title": "Egészségügy" + }, + "hotels": { + "title": "Szállodák" + }, + "icecream": { + "title": "Fagylalt" + }, + "indoors": { + "title": "Beltéri létesítmények" + }, + "items_with_image": { + "title": "Minden képpel rendelkező térképobjektum" + }, + "kerbs_and_crossings": { + "title": "Járdaszegélyek és gyalogosátkelők" + }, + "lactosefree": { + "title": "Laktózmentes boltok és éttermek" + }, + "lighthouses": { + "title": "Világítótornyok" + }, + "maproulette": { + "title": "MapRoulette-feladatok" + }, + "maps": { + "title": "Térképek térképe" + }, + "maxspeed": { + "title": "Sebességkorlátozások" + }, + "memorials": { + "title": "Emlékművek" + }, + "nature": { + "title": "Ki a természetbe" }, "notes": { "description": "A jegyzet egy gombostű a térképen egy szöveggel, amely azt jelzi, hogy valami nem stimmel.

Felhasználók vagy szövegek kereséséhez nézd meg a szűrő nézetet.", @@ -260,15 +346,47 @@ "shortDescription": "Nyilvános tornyok, hogy gyönyörködhessünk a kilátásban", "title": "Kilátótornyok" }, + "onwheels": { + "layers": { + "19": { + "override": { + "=title": { + "render": "Statisztika" + } + } + } + } + }, + "openlovemap": { + "title": "Open Love Map - szerelemtérkép" + }, "openwindpowermap": { "description": "Szélerőművek megjelenítésére és szerkesztésére szolgáló térkép.", - "title": "OpenWindPowerMap" + "title": "Szélerőművek" + }, + "osm_community_index": { + "title": "OSM-közösségek jegyzéke" }, "parkings": { "description": "Ez a térkép különböző parkolókat jelenít meg", "shortDescription": "Ez a térkép különböző parkolókat jelenít meg", "title": "Parkolás" }, + "personal": { + "title": "Személyes téma" + }, + "pets": { + "layers": { + "2": { + "override": { + "title": { + "render": "Kutyabarát üzletek" + } + } + } + }, + "title": "Állatorvosok, kutyafuttatók és hasonló, kedvtelésből tartott állatoknak szóló létesítmények" + }, "playgrounds": { "description": "Ezen a térképen játszótereket találsz, és további információkat adhatsz hozzájuk", "shortDescription": "Egy térkép játszóterekkel", @@ -299,20 +417,32 @@ "title": "Irányítószámok" }, "postboxes": { - "description": "Ezen a térképen postahivatalok és postaládák adatait találod és egészítheted ki. Utánanézhetsz, hogy hol adhatod fel a következő képeslapodat! :)
Hibát találtál, vagy hiányzik egy postaláda? Ezt a térképet mindössze egy ingyenes OpenStreetMap-fiókkal szerkesztheted. ", + "description": "Ezen a térképen postahivatalok és postaládák adatait találod és viheted föl. A térkép segítségével utánanézhetsz, hogy hol adhatod fel a következő képeslapodat! :)
Hibát találtál, vagy hiányzik egy postaláda? A térképet mindössze egy ingyenes OpenStreetMap-fiókkal szerkesztheted.", "shortDescription": "Posták és postaládák térképe", "title": "Posta- és postaládatérkép" }, + "rainbow_crossings": { + "title": "Szivárványos gyalogosátkelők" + }, "shops": { - "description": "Ezen a térképen az üzletek alapvető adatait lehet megadni, például nyitvatartási időt és telefonszámokat.", + "description": "Ezen a térképen az üzletek alapvető adatait lehet megadni, például nyitvatartási időt és telefonszámokat", "shortDescription": "Szerkeszthető térkép üzletek alapvető adataival", - "title": "Bolttérkép" + "title": "Boltok" + }, + "ski": { + "title": "Sípályák és felvonók" }, "sport_pitches": { "description": "A sportpálya egy olyan terület, amelyen valamilyen sportot űznek", "shortDescription": "Sportpályatérkép", "title": "Sportpályák" }, + "sports": { + "title": "Sporttérkép" + }, + "stations": { + "title": "Vasútállomások" + }, "street_lighting": { "description": "Ezen a térképen minden megtalálható, ami a közvilágítással kapcsolatos", "layers": { @@ -376,15 +506,27 @@ }, "toilets": { "description": "Nyilvános WC-k térképe", - "title": "WC-térkép" + "title": "Nyilvános illemhelyek" + }, + "transit": { + "title": "Buszjáratok" }, "trees": { "description": "Térképezzünk fel minden fát!", "shortDescription": "Az összes fa feltérképezése", "title": "Fatérkép" }, + "vending_machine": { + "title": "Árusító automaták" + }, + "walls_and_buildings": { + "title": "Falak és épületek" + }, + "waste": { + "title": "Hulladék" + }, "waste_basket": { - "description": "Ezen a térképen megtalálhatod a közeledben lévő szemeteskosarakat. Ha hiányzik egy kuka a térképről, te is felrajzolhatod", + "description": "Ezen a térképen megtalálhatod a közeledben lévő szemeteskosarakat. Ha hiányzik egy kuka a térképről, te is felrajzolhatod.", "shortDescription": "Szemeteskosarakat ábrázoló térkép", "title": "Kukatérkép" } diff --git a/langs/themes/ko.json b/langs/themes/ko.json new file mode 100644 index 000000000..7a73a41bf --- /dev/null +++ b/langs/themes/ko.json @@ -0,0 +1,2 @@ +{ +} \ No newline at end of file diff --git a/langs/themes/pl.json b/langs/themes/pl.json index 347bf3fdd..e6c60a270 100644 --- a/langs/themes/pl.json +++ b/langs/themes/pl.json @@ -97,6 +97,7 @@ "title": "Ławki" }, "bicycle_parkings": { + "description": "Mapa pokazująca wszystkie typy parkingów dla rowerów", "title": "Parkingi dla rowerów" }, "bicycle_rental": { @@ -154,6 +155,17 @@ "shortDescription": "Światowa mapa stacji ładowania", "title": "Stacje ładowania" }, + "circular_economy": { + "description": "Różne przedmioty, które pomagają ludziom się dzielić, ponownie używać lub poddawać recyklingowi.", + "layers": { + "5": { + "override": { + "=name": "Sklepy second-hand" + } + } + }, + "title": "Gospodarka o obiegu zamkniętym" + }, "climbing": { "description": "Na tej mapie znajdziesz różne możliwości wspinaczki, takie jak sale wspinaczkowe, hale do boulderingu i skały w przyrodzie.", "descriptionTail": "Mapa wspinaczkowa została pierwotnie stworzona przez Christiana Neumanna. Jeśli masz uwagi lub pytania, skontaktuj się z nim.

< p>Projekt wykorzystuje dane projektu OpenStreetMap.

", @@ -276,6 +288,11 @@ }, "1": { "name": "węzły", + "presets": { + "0": { + "title": "węzeł rowerowy" + } + }, "tagRenderings": { "node-expected_rcn_route_relations": { "freeform": { @@ -287,7 +304,9 @@ "node-rxn_ref": { "freeform": { "placeholder": "np. 1" - } + }, + "question": "Jaki jest numer referencyjny tego węzła rowerowego?", + "render": "Ten węzeł rowerowy ma numer referencyjny {rcn_ref}" }, "node-survey:date": { "override": { diff --git a/langs/themes/ru.json b/langs/themes/ru.json index 84fac43dc..45a603a39 100644 --- a/langs/themes/ru.json +++ b/langs/themes/ru.json @@ -1,4 +1,7 @@ { + "advertising": { + "title": "Реклама" + }, "aed": { "description": "На этой карте вы можете найти и отметить ближайшие дефибрилляторы", "title": "Открытая карта АВД (Автоматизированных внешних дефибрилляторов)" @@ -12,10 +15,19 @@ "shortDescription": "Карта скамеек", "title": "Скамейки" }, + "bicycle_parkings": { + "title": "Велопарковки" + }, + "bicycle_rental": { + "title": "Прокат велосипедов" + }, "bicyclelib": { "description": "Велосипедная библиотека - это место, где велосипеды можно взять на время, часто за небольшую ежегодную плату. Примером использования являются библиотеки велосипедов для детей, что позволяет им сменить велосипед на больший, когда они перерастают свой нынешний велосипед", "title": "Велосипедные библиотеки" }, + "binoculars": { + "title": "Бинокли" + }, "blind_osm": { "title": "OSM для слепых и слабовидящих" }, @@ -56,6 +68,9 @@ }, "title": "Открытая карта скалолазания" }, + "clock": { + "title": "Часы" + }, "cycle_infra": { "title": "Велосипедная инфраструктура" }, @@ -70,16 +85,24 @@ "render": "Улица" } } - } + }, + "title": "Велосипедные дорожки" }, "cyclofix": { "title": "Cyclofix - открытая карта для велосипедистов" }, + "disaster_response": { + "title": "Ликвидация последствий стихийных бедствий и аварийные службы" + }, "drinking_water": { "description": "На этой карте показываются и могут быть легко добавлены общедоступные точки питьевой воды", "title": "Питьевая вода" }, + "education": { + "title": "Образование" + }, "etymology": { + "shortDescription": "Каково происхождение топонима?", "title": "Открытая этимологическая карта" }, "facadegardens": { @@ -111,7 +134,8 @@ } } } - } + }, + "title": "Фасадные сады" }, "food": { "title": "Общественное питание" @@ -119,6 +143,12 @@ "ghostbikes": { "title": "Призрачные велосипеды" }, + "glutenfree": { + "title": "Без глютена" + }, + "guideposts": { + "title": "Указатели" + }, "hackerspaces": { "title": "Хакерспейсы" }, @@ -130,18 +160,43 @@ "healthcare": { "title": "Здравоохранение" }, + "hotels": { + "title": "Гостиницы" + }, + "icecream": { + "title": "Мороженое" + }, + "indoors": { + "title": "Внутри помещений" + }, "kerbs_and_crossings": { "title": "Бордюры и пешеходные переходы" }, "maps": { + "shortDescription": "Эта тема показывает все (туристические) карты, известные OpenStreetMap", "title": "Карта карт" }, "maxspeed": { + "shortDescription": "На этой карте показана разрешенная законом максимальная скорость на каждой дороге.", "title": "Ограничения скорости" }, + "memorials": { + "title": "Памятники" + }, + "nature": { + "shortDescription": "Карта для любителей природы, с интересными POI", + "title": "На природе" + }, + "notes": { + "title": "Заметки в OpenStreetMap" + }, "observation_towers": { + "shortDescription": "Общедоступные башни, с которых можно любоваться видами", "title": "Смотровые башни" }, + "onwheels": { + "title": "Коляски" + }, "openwindpowermap": { "title": "Открытая карта ветроэнергетики" }, @@ -149,7 +204,19 @@ "title": "Парковка" }, "personal": { - "description": "Создать персональную тему на основе доступных слоёв тем. Чтобы отобразить некоторые данные, откройте выбор слоя" + "description": "Создать персональную тему на основе доступных слоёв тем. Чтобы отобразить некоторые данные, откройте выбор слоя", + "title": "Собственная тема" + }, + "pets": { + "description": "На этой карте вы найдете различные интересные места для ваших питомцев: ветеринарные клиники, парки для собак, зоомагазины, рестораны для собак, ...", + "layers": { + "1": { + "override": { + "name": "Заведения, где можно поесть с собаками" + } + } + }, + "title": "Ветеринары, парки для собак и другие удобства для домашних животных" }, "playgrounds": { "description": "На этой карте можно найти игровые площадки и добавить дополнительную информацию", @@ -160,6 +227,7 @@ "title": "Радужные пешеходные переходы" }, "shops": { + "shortDescription": "Редактируемая карта с основной информацией о магазине", "title": "Открытая карта магазинов" }, "sport_pitches": { @@ -167,6 +235,9 @@ "shortDescription": "Карта, отображающая спортивные площадки", "title": "Спортивные площадки" }, + "sports": { + "title": "Спортивные объекты" + }, "street_lighting": { "layers": { "2": { @@ -179,18 +250,28 @@ "title": "Уличное освещение" }, "surveillance": { - "description": "На этой открытой карте можно найти камеры слежения." + "description": "На этой открытой карте можно найти камеры слежения.", + "title": "Наблюдение под наблюдением" }, "toilets": { "description": "Карта общественных туалетов", "title": "Открытая карта туалетов" }, + "transit": { + "title": "Автобусные маршруты" + }, "trees": { "description": "Нанесите все деревья на карту!", "shortDescription": "Карта деревьев", "title": "Деревья" }, + "vending_machine": { + "title": "Торговые автоматы" + }, "waste": { "title": "Мусор" + }, + "waste_basket": { + "title": "Корзины для мусора" } } \ No newline at end of file diff --git a/langs/themes/uk.json b/langs/themes/uk.json new file mode 100644 index 000000000..0f3ff79b7 --- /dev/null +++ b/langs/themes/uk.json @@ -0,0 +1,558 @@ +{ + "advertising": { + "description": "Чи замислювалися ви будь-коли над тим, скільки реклами знаходиться на наших вулицях та дорогах? За допомогою цієї мапи ви можете знайти та додати інформацію про всі рекламні обʼєкти, які ви можете зустріти на вулиці", + "shortDescription": "Де я можу знайти рекламні об'єкти?", + "title": "Реклама" + }, + "aed": { + "description": "На цій мапі можна знайти та позначити дефібрилятори поруч", + "title": "Дефібрилятори" + }, + "artwork": { + "description": "Відкрита мапа статуй, бюстів, графіті та інших творів мистецтва по всьому світу", + "title": "Витвір мистецтва" + }, + "atm": { + "description": "На цій мапі показані банкомати, де можна зняти готівку або поповнити рахунок", + "layers": { + "3": { + "override": { + "=tagRenderings": { + "0": { + "render": { + "special": { + "text": "Імпортувати цей банкомат" + } + } + }, + "1": { + "render": "OpenStreetMap знає про банкомат, що знаходиться за {_closest_osm_poi_distance} метрів від нього. " + }, + "2": { + "render": { + "special": { + "message": "Додайте всі запропоновані теги до найближчого банкомату" + } + } + } + } + } + } + }, + "title": "Банкомати" + }, + "bag": { + "description": "Ця тема допомагає імпортувати дані з BAG", + "layers": { + "0": { + "tagRenderings": { + "Reference": { + "mappings": { + "0": { + "then": "Ця будівля не має жодної згадки в Базі даних" + } + }, + "render": "Посилання у BAG має вигляд {ref:bag}" + } + } + }, + "2": { + "description": "Будівлі з реєстру BAG", + "tagRenderings": { + "Build year": { + "mappings": { + "0": { + "then": "Будівництво було розпочато у {_bag_obj:start_date}" + } + }, + "render": "Ця будівля була побудована у {_bag_obj:start_date}" + }, + "Building type": { + "mappings": { + "0": { + "then": "Типом будівлі буде {_bag_obj:construction}" + } + }, + "render": "Тип будівлі - {_bag_obj:building}" + }, + "Import button": { + "mappings": { + "0": { + "then": "Ще не розрахували правильні значення. Оновіть цю сторінку" + } + } + }, + "Reference": { + "render": "Посилання у BAG має вигляд {_bag_obj:ref:bag}" + } + } + } + }, + "shortDescription": "Допоміжний інструмент для імпорту BAG", + "title": "Помічник з імпорту BAG" + }, + "benches": { + "description": "На цій мапі показані всі лавки, які зафіксовані в OpenStreetMap: Окремі лавки та лавки, що належать до зупинок громадського транспорту або прихистків.", + "shortDescription": "Мапа лавок", + "title": "Лавки" + }, + "bicycle_parkings": { + "description": "Мапа, що показує всі типи велосипедних парковок", + "title": "Велопарковки" + }, + "bicycle_rental": { + "description": "На цій мапі ви знайдете багато станцій прокату велосипедів, що є на OpenStreetMap", + "shortDescription": "Мапа зі станціями та пунктами прокату велосипедів", + "title": "Прокат велосипедів" + }, + "bicyclelib": { + "description": "Велобібліотека - це місце, де можна взяти велосипед напрокат, часто за невелику річну плату. Особливий випадок використання - велосипедні бібліотеки для дітей, які дозволяють їм пересісти на більший велосипед, коли вони виростуть зі свого нинішнього", + "title": "Велобібліотеки" + }, + "binoculars": { + "description": "Мапа стаціонарних біноклів. Зазвичай їх можна знайти в туристичних місцях, на оглядових майданчиках, на вершинах панорамних веж та іноді в природних заповідниках.", + "shortDescription": "Мапа стаціонарних біноклів", + "title": "Біноклі" + }, + "blind_osm": { + "description": "Допоможіть нанести на мапу обʼєкти, важливі для незрячих", + "title": "OSM для незрячих" + }, + "bookcases": { + "description": "Публічна книжкова шафа - це невелика вулична шафа, ящик, стара телефонна будка або інший об'єкт, де зберігаються книги. Будь-хто може покласти або взяти книгу. Ця мапа має на меті зібрати всі ці книжкові шафи.", + "title": "Публічні книжкові шафи" + }, + "cafes_and_pubs": { + "description": "Кав'ярні, паби та бари", + "title": "Кафе та паби" + }, + "campersite": { + "description": "На цьому сайті зібрані всі офіційні місця зупинки автокемперів та місця, де можна здати сірі та чорні води. Ви можете додати детальну інформацію про послуги, що надаються, та вартість. Додавайте фотографії та відгуки.", + "overrideAll": { + "tagRenderings+": { + "0": { + "question": "Хто керує цим місцем?", + "render": "Цим закладом керує {operator}" + }, + "1": { + "mappings": { + "0": { + "then": "У цьому місці є електропостачання" + }, + "1": { + "then": "Це місце не має електропостачання" + } + }, + "question": "Чи є тут електропостачання?" + } + } + }, + "shortDescription": "Знайдіть місця для ночівлі з вашим кемпером", + "title": "Кемпінги" + }, + "charging_stations": { + "description": "На цій відкритій мапі можна знайти та позначити інформацію про зарядні станції", + "shortDescription": "Мапа зарядних станцій по всьому світу", + "title": "Зарядні станції" + }, + "circular_economy": { + "description": "Різноманітні предмети, які допомагають людям ділитися, повторно використовувати або переробляти.", + "layers": { + "5": { + "override": { + "=name": "Магазини секонд-хенду" + } + } + }, + "title": "Переробна економіка" + }, + "climbing": { + "description": "На цій мапі ви знайдете різні можливості для скелелазіння, такі як скелелазні зали, боулдерингові зали та скелі на природі.", + "descriptionTail": "Мапу альпіністських маршрутів спочатку склав Крістіан Нойманн. Будь ласка, звʼяжіться з ним, якщо у вас є відгуки чи запитання.

< p>Проєкт використовує дані OpenStreetMap.

", + "layers": { + "0": { + "override": { + "tagRenderings+": { + "0": { + "mappings": { + "0": { + "then": "У що містить об'єкт зазначено, що це загальнодоступне
{_embedding_feature:access:description}" + }, + "1": { + "then": "У функції зазначено, що потрібен дозвіл для доступу
{_embedding_feature:access:description}" + }, + "2": { + "then": "У що містить об'єкт зазначено, що вона доступна лише клієнтам
{_embedding_feature:access:description}" + }, + "3": { + "then": "У що містить функцію зазначено, що вона доступна лише для членів клубу
{_embedding_feature:access:description}" + } + } + }, + "1": { + "mappings": { + "0": { + "then": "Загальнодоступний для всіх" + }, + "1": { + "then": "Для доступу сюди потрібен дозвіл" + }, + "2": { + "then": "Тільки клієнти" + }, + "3": { + "then": "Тільки члени клубу" + } + }, + "question": "Хто може сюди потрапити?" + } + } + } + }, + "1": { + "override": { + "+tagRenderings": { + "0": { + "mappings": { + "0": { + "then": "У цій майстерні ремонтують альпіністське взуття" + }, + "1": { + "then": "Цей магазин не займається ремонтом альпіністського взуття" + } + }, + "question": "Чи ремонтує ця майстерня альпіністське взуття?" + } + } + } + }, + "2": { + "override": { + "+tagRenderings": { + "0": { + "mappings": { + "0": { + "then": "У цій майстерні ремонтують альпіністське взуття" + }, + "1": { + "then": "Цей магазин не займається ремонтом альпіністського взуття" + } + }, + "question": "Чи ремонтує ця майстерня також альпіністське взуття?" + } + }, + "=presets": { + "0": { + "title": "майстерня по ремонту взуття" + } + } + } + } + }, + "title": "Скелелазні тренажерні зали, клуби та місця" + }, + "clock": { + "description": "Мапа годинників в громадських місцях", + "title": "Годинники" + }, + "cycle_highways": { + "description": "Ця мапа показує велодоріжки", + "title": "Велосипедні доріжки" + }, + "cycle_infra": { + "description": "Мапа, на якій можна переглядати та редагувати обʼєкти, повʼязані з велосипедною інфраструктурою. Створено під час #osoc21.", + "shortDescription": "Мапа, на якій ви можете переглядати та редагувати речі, повʼязані з велосипедною інфраструктурою.", + "title": "Велосипедна інфраструктура" + }, + "cyclenodes": { + "description": "Мапа на якій показуються точки веломережі, ви також можете легко додавати нові", + "layers": { + "0": { + "name": "Звʼязки між точками", + "tagRenderings": { + "node2node-survey:date": { + "override": { + "question": "Коли цей звʼязок між точками досліджувався востаннє?", + "render": "Цей зв’язок між точками востаннє досліджувався {survey:date}" + } + } + }, + "title": { + "mappings": { + "0": { + "then": "Відрізок між точками {ref}" + } + }, + "render": "Відрізок між точками" + } + }, + "1": { + "name": "Точки", + "presets": { + "0": { + "title": "велоточка" + } + }, + "tagRenderings": { + "node-expected_rcn_route_relations": { + "freeform": { + "placeholder": "напр. 3" + }, + "question": "З кількома іншими точками повʼязана ця точка?" + } + } + } + } + }, + "cyclestreets": { + "description": "Велодорога — це шлях, на якому моторизованому транспорту заборонено обганяти велосипедистів. Вони позначені спеціальним дорожнім знаком. Велодоріжки можна знайти в Нідерландах і Бельгії, а також у Німеччині та Франції. ", + "layers": { + "0": { + "name": "Велодороги" + } + }, + "shortDescription": "Мапа велодоріжок", + "title": "Велодоріжки" + }, + "cyclofix": { + "description": "Мапа, на якій велосипедисти можуть знайти відповідну інфраструктуру для своїх потреб, наприклад, велосипедні насоси, питну воду, веломагазини, ремонтні станції або парковки.", + "title": "Cyclofix — мапа для велосипедистів" + }, + "disaster_response": { + "description": "Ця мапа містить обʼєкти, призначені для забезпечення готовності до стихійних лих та реагування на них.", + "title": "Реагування на стихійні лиха та аварійні служби" + }, + "drinking_water": { + "description": "На цій мапі показуються і можуть бути легко додані загальнодоступні місця з питною водою", + "title": "Питна вода" + }, + "education": { + "description": "На цій мапі ви знайдете інформацію про всі типи шкіл та заклади освіти, ви також зможете легко додати додаткову інформацію", + "title": "Освіта" + }, + "elongated_coin": { + "description": "Знайдіть преси для монет, щоб створити власні витягнуті монети.", + "title": "Монетні преси" + }, + "etymology": { + "description": "На цій мапі можна побачити, на честь чого або кого названо обʼєкт. Вулиці, будинки, …взяті з OpenStreetMap, пов’язані з Wikidata. У спливаючому вікні ви побачите статтю Вікіпедії (якщо вона існує) або вікно вікіданих, на честь кого або чого об’єкт отримав свою назву. Якщо сам об’єкт має сторінку у Вікіпедії, це також буде показано.

Ви також можете допомогти!Наблизьтесь та всі вулиці зʼявляться. Ви можете клацнути одну з них, і з’явиться вікно пошуку Вікіданих. За допомогою кількох клацань ви можете додати етимологічне посилання. Зауважте, що для цього вам потрібен обліковий запис OpenStreetMap.", + "layers": { + "1": { + "override": { + "=name": "Вулиці без етимологічної інформації" + } + }, + "2": { + "override": { + "=name": "Парки та ліси без етимологічної інформації" + } + }, + "3": { + "override": { + "=name": "Навчальні заклади без етимологічної інформації" + } + }, + "4": { + "override": { + "=name": "Культурні місця без етимологічної інформації" + } + }, + "5": { + "override": { + "=name": "Туристичні місця без інформації про етимологію" + } + }, + "6": { + "override": { + "=name": "Медичні та соціальні заклади без етимологічної інформації" + } + }, + "7": { + "override": { + "=name": "Спортивні місця без етимологічної інформації" + } + } + }, + "shortDescription": "Від чого походить назва топоніма?", + "title": "Етимологія — на честь чого названо місце?" + }, + "facadegardens": { + "shortDescription": "На цій мапі показані фасадні сади з фотографіями та корисною інформацією про орієнтацію, сонячне освітлення та типи рослин.", + "title": "Фасадні сади" + }, + "fireplace": { + "description": "Відкрите місце для розведення багаття або стаціонарне барбекю в офіційному місці.", + "title": "Вогнища та барбекю" + }, + "food": { + "description": "Ресторани та фаст-фуд", + "title": "Ресторани та фаст-фуд" + }, + "fritures": { + "description": "На цій мапі ви знайдете свій улюблений заклад з картоплею фрі!", + "title": "Картопля фрі" + }, + "ghostbikes": { + "description": "Велосипед-примара — це меморіал велосипедисту, який загинув у дорожньо-транспортній пригоді, у вигляді білого велосипеда, постійно розміщеного поблизу місця аварії.

На цій мапі ви можете побачити всі велосипеди-примари, відомі в OpenStreetMap. Велосипед-примара відсутній? Кожен може додавати або оновлювати інформацію тут — вам потрібно лише мати обліковий запис OpenStreetMap.

На Mastodon існує бот, який публікує щомісячний огляд велосипедів-примар у всьому світі

", + "title": "Примарні велосипеди" + }, + "ghostsigns": { + "description": "Мапа, на якій показані вивіски на будівлях, що не використовуються", + "title": "Примарні знаки" + }, + "glutenfree": { + "description": "Колективна мапа з безглютеновими продуктами", + "title": "Без глютену" + }, + "guideposts": { + "description": "Орієнтири (також відомі як вказівні стовпчики) часто зустрічаються вздовж офіційних пішохідних, велосипедних, лижних або кінних маршрутів, щоб вказати напрямок до різних пунктів призначення. Крім того, вони часто названі на честь регіону або місця і показують висоту над рівнем моря.\n\nПоложення вказівника може використовуватися пішоходом/велосипедистом/вершником/лижником як підтвердження поточного положення, особливо якщо він користується друкованою картою без GPS-приймача. ", + "title": "Вказівники" + }, + "hackerspaces": { + "shortDescription": "Мапа хакерських просторів", + "title": "Хакерспейси та мейкерспейси" + }, + "hailhydrant": { + "shortDescription": "Мапа, що показує гідранти, вогнегасники, пожежні станції та станції швидкої допомоги.", + "title": "Гідранти, вогнегасники, пожежні станції та станції швидкої допомоги" + }, + "healthcare": { + "description": "На цій мапі показані різні обʼєкти, повʼязані з охороною здоровʼя", + "title": "Охорона здоров'я" + }, + "hotels": { + "description": "На цій мапі ви знайдете готелі поруч з вами", + "title": "Готелі" + }, + "icecream": { + "title": "Морозиво" + }, + "indoors": { + "description": "На цій мапі показані загальнодоступні плани приміщень", + "title": "Плани приміщень" + }, + "kerbs_and_crossings": { + "description": "Мапа з позначенням бордюрів та пішохідних переходів.", + "title": "Бордюри та переходи" + }, + "lactosefree": { + "description": "Колективна мапа з магазинами та ресторанами з безлактозними продуктами", + "title": "Магазини та ресторани без лактози" + }, + "lighthouses": { + "description": "Маяки - це високі будівлі зі світлом на вершині, що спрямовують морський рух.", + "title": "Маяки" + }, + "maps": { + "shortDescription": "Ця тема показує всі (туристичні) мапи, які відомі OpenStreetMap", + "title": "Мапа мап" + }, + "maxspeed": { + "shortDescription": "Ця мапа показує дозволену законом максимальну швидкість на кожній дорозі.", + "title": "Максимальна швидкість" + }, + "memorials": { + "description": "Меморіали — це фізичні обʼєкти, постійно розміщені в публічному просторі на згадку про особу чи подію. Це можуть бути найрізноманітніші обʼєкти, такі як статуї, меморіальні дошки, картини, військові обʼєкти (наприклад, танки), …", + "title": "Памʼятники" + }, + "nature": { + "description": "На цій мапі можна знайти цікаву інформацію для туристів та любителів природи.", + "shortDescription": "Мапа для любителів природи, з Точками інтересу", + "title": "На природі" + }, + "notes": { + "description": "Нотатка — це мітка на мапі з певним текстом, яка вказує на те, що щось не так.

Не забудьте переглянути фільтри для пошуку користувачів і тексту.", + "title": "Нотатки OpenStreetMap" + }, + "observation_towers": { + "shortDescription": "Загальнодоступні вежі, з яких можна насолоджуватися краєвидом", + "title": "Спостережні вежі" + }, + "onwheels": { + "description": "На цій мапі показані громадські місця, доступні для осіб в інвалідних візків, їх також можна легко додати", + "title": "На колесах" + }, + "openwindpowermap": { + "description": "Мапа для показу та редагування вітрових турбін.", + "title": "Вітрогенератори" + }, + "osm_community_index": { + "shortDescription": "Індекс ресурсів спільноти для OpenStreetMap.", + "title": "Індекс спільноти OSM" + }, + "parkings": { + "shortDescription": "На цій мапі показані різні місця для паркування", + "title": "Парковки" + }, + "personal": { + "description": "Створіть особисту тему на основі всіх доступних шарів усіх тем. Щоб показати деякі дані, відкрийте вибір шару", + "title": "Власна тема" + }, + "pets": { + "description": "На цій мапі ви знайдете різні цікаві місця для ваших домашніх улюбленців: ветеринари, парки для собак, зоомагазини, ресторани, дружні до собак, …", + "title": "Ветеринари, собачі парки та інші зручності для домашніх тварин" + }, + "playgrounds": { + "description": "На цій мапі ви знайдете дитячі майданчики та зможете додати додаткову інформацію", + "shortDescription": "Мапа дитячих майданчиків", + "title": "Дитячі майданчики" + }, + "postboxes": { + "shortDescription": "Мапа з позначенням поштових скриньок та поштових відділень", + "title": "Мапа поштових скриньок та поштових відділень" + }, + "rainbow_crossings": { + "description": "На цій мапі показуються пішохідні переходи позначені кольорами веселки, вони також можуть бути легко додані", + "title": "Веселкові пішохідні переходи" + }, + "shops": { + "description": "На цій мапі можна позначити основну інформацію про магазини, додати години роботи та номери телефонів", + "shortDescription": "Мапа з можливістю редагування з основною інформацією про магазин", + "title": "Магазини" + }, + "ski": { + "description": "Все необхідне для катання на лижах", + "title": "Гірськолижні траси та витяги" + }, + "sport_pitches": { + "shortDescription": "Мапа з позначенням спортивних майданчиків", + "title": "Спортивні майданчики" + }, + "sports": { + "shortDescription": "Мапа спортивних обʼєктів.", + "title": "Спорт" + }, + "street_lighting": { + "description": "На цій мапі можна знайти все про вуличне освітлення", + "title": "Вуличне освітлення" + }, + "surveillance": { + "description": "На цій відкритій мапі ви можете знайти камери спостереження.", + "shortDescription": "Камери спостереження та інші засоби спостереження", + "title": "Нагляд під наглядом" + }, + "toilets": { + "description": "Мапа показує розташування громадських туалетів", + "title": "Громадські туалети" + }, + "transit": { + "title": "Автобусні маршрути" + }, + "trees": { + "shortDescription": "Додайте на мапу всі дерева", + "title": "Дерева" + }, + "vending_machine": { + "description": "Знайдіть торгові автомати для всього", + "title": "Торгові автомати" + }, + "waste": { + "description": "Мапа сміттєвих контейнерів та пунктів перероблення вторсировини.", + "title": "Відходи" + }, + "waste_basket": { + "description": "На цій мапі ви знайдете найближчі до вас контейнери для сміття. Якщо на мапі відсутній кошик для сміття, ви можете додати його самостійно.", + "shortDescription": "Мапа з урнами для сміття", + "title": "Урни для сміття" + } +} \ No newline at end of file diff --git a/langs/uk.json b/langs/uk.json new file mode 100644 index 000000000..8f285a068 --- /dev/null +++ b/langs/uk.json @@ -0,0 +1,598 @@ +{ + "advanced": { + "title": "Розширені можливості" + }, + "centerMessage": { + "allFilteredAway": "Жоден з обʼєктів на екрані не відповідає усім фільтрам", + "loadingData": "Завантаження даних…", + "noData": "На мапі немає жодного відповідного обʼєкта", + "ready": "Готово!", + "retrying": "Не вдалося завантажити дані. Повторна спроба через {count} секунд…", + "zoomIn": "Наблизитесь для перегляду або редагування даних" + }, + "communityIndex": { + "available": "Ця спільнота розмовляє {native}", + "intro": "Контактуйте з іншими людьми, щоб познайомитися з ними, вчитися у них, …", + "notAvailable": "Ця спільнота не розмовляє {native}", + "title": "Спілкуйтеся з іншими" + }, + "delete": { + "cancel": "Скасувати", + "cannotBeDeleted": "Цей обʼєкт не можна видалити", + "delete": "Видалити", + "deletedTitle": "Видалений обʼєкт", + "explanations": { + "hardDelete": "Цей обʼєкт буде видалено з OpenStreetMap. Він може бути відновлений досвідченим учасником", + "retagNoOtherThemes": "Цей обʼєкт отримує новий клас та не буде тут показуватись", + "retagOtherThemes": "Теґування цього обʼєкту буде змінено і він буде видимий в {otherThemes}", + "selectReason": "Будь ласка, виберіть, чому цей обʼєкт слід видалити", + "softDelete": "Цей обʼєкт буде оновлено та приховано з цієї програми. {reason}" + }, + "isChanged": "Цей обʼєкт був змінений і більше не відповідає цьому шару", + "isDeleted": "Цей обʼєкт видалено", + "isntAPoint": "Видаляти можна лише точки, вибраний обʼєкт є лінією, полігоном або звʼязком.", + "loading": "Перегляд властивостей, щоб перевірити, чи можна видалити цей обʼєкт.", + "loginToDelete": "Ви повинні увійти в систему, щоб видалити обʼєкт", + "notEnoughExperience": "Цей обʼєкт був створений кимось іншим.", + "onlyEditedByLoggedInUser": "Цей обʼєкт має тільки ваші редагування, ви можете сміливо видалити його.", + "partOfOthers": "Ця точка є частиною якоїсь лінії або звʼязку і не може бути видалена безпосередньо.", + "readMessages": "У вас є непрочитані повідомлення. Прочитайте їх, перш ніж видаляти обʼєкт — можливо, хтось залишив відгук", + "reasons": { + "disused": "Цей обʼєкт не є чинним або припинив існування", + "duplicate": "Цей обʼєкт дублює інший", + "notFound": "Цей обʼєкт не вдалося знайти", + "test": "Це був тестовий обʼєкт — насправді його ніколи не існувало" + }, + "safeDelete": "Цей обʼєкт можна безпечно видалити.", + "useSomethingElse": "Натомість використовуйте інший OpenStreetMap-редактор, щоб видалити його", + "whyDelete": "Чому цей обʼєкт треба видалити?" + }, + "external": { + "allAreApplied": "Всі відсутні, зовнішні значення були скопійовані в OpenStreetMap", + "allIncluded": "Дані, завантажені з {source}, містяться в OpenStreetMap", + "apply": "Застосувати", + "applyAll": "Застосувати всі відсутні значення", + "conflicting": { + "intro": "OpenStreetMap має інші значення, ніж вебсайт джерела, для наступних значень.", + "title": "Обʼєкти з конфліктами" + }, + "currentInOsmIs": "Зараз OpenStreetMap має наступне значення:", + "done": "Зроблено", + "error": "Не вдалося завантажити повʼязані дані з вебсайту", + "lastModified": "Зовнішні дані востаннє були змінені {date}", + "loadedFrom": "Наступні дані завантажуються з {source} за допомогою вбудованого JSON-LD", + "missing": { + "intro": "OpenStreetMap не має інформації про наступні атрибути", + "title": "Відсутні елементи" + }, + "noDataLoaded": "Зовнішній вебсайт не має посилань на дані, які можна було б завантажити", + "overwrite": "Замінити в OpenStreetMap", + "title": "Структуровані дані завантажуються із зовнішнього вебсайту" + }, + "favourite": { + "loginNeeded": "

Увійти

Персональний макет доступний лише для користувачів OpenStreetMap", + "panelIntro": "

Ваша особиста тема

Активуйте ваші улюблені шари з усіх офіційних тем", + "reload": "Перезавантажте дані" + }, + "favouritePoi": { + "button": { + "isFavourite": "Наразі це місце позначено як закладка і буде показуватись на всіх тематичних мапах MapComplete, які ви відвідаєте.", + "isMarkedShort": "Позначено як локацію закладки", + "isNotMarkedShort": "Не позначено як закладка", + "markAsFavouriteTitle": "Позначте цю локацію як закладку", + "markDescription": "Додайте цю локацію до особистого списку закладок", + "unmark": "Видалити з особистого списку закладок", + "unmarkNotDeleted": "Цю точку не буде видалено і вона залишиться видимою на відповідній мапі для вас та інших користувачів" + }, + "downloadGeojson": "Завантажити закладки у форматі geojson", + "downloadGpx": "Завантажте закладки у форматі GPX", + "intro": "Ви позначили {length} локацій як закладки.", + "introPrivacy": "Цей список бачите тільки ви", + "loginToSeeList": "Увійдіть, щоб переглянути список місць, які ви позначили як закладки", + "tab": "Ваші закладки та перегляди", + "title": "Локації ваших закладок" + }, + "flyer": { + "aerial": "На цій мапі використано інший фон, а саме аерофотознімок від Agentschap Informatie Vlaanderen", + "callToAction": "Протестуйте її на mapcomplete.org", + "cyclofix": "Велосипедні насоси, ремонтні станції, питна вода та веломагазини знаходяться на CycloFix", + "description": "Листівка у ландшафтному форматі А4 для популяризації MapComplete", + "editing": { + "ex": "Спрощений приклад того, як це виглядає для природного заповідника, показаний нижче.", + "intro": "Користувача зустрічає мапа з обʼєктами. При виборі одного з них показується інформація про цей обʼєкт.", + "title": "Як виглядає інтерфейс?" + }, + "examples": "Існує багато тематичних мап, деякі з них показані тут.\n\nВ Інтернеті є ще багато тематичних мап: про охорону здоровʼя, навігацію в приміщеннях, доступність для людей в інвалідних візках, місця для утилізації відходів, публічні книжкові полиці, пішохідні переходи з райдужним забарвленням… Відкрийте для себе всі ці мапи на mapcomplete.org", + "fakeui": { + "add_images": "Додавання зображень у кілька кліків", + "attributes": "Показує атрибути у дружній формі", + "edit": "Неправильна або застаріла інформація? Кнопка редагування знаходиться тут.", + "question": "Якщо атрибут ще не відомий, MapComplete показує питання", + "see_images": "Показує зображення від попередніх учасників, Вікіпедії, Mapillary, …", + "wikipedia": "Показані статті з Вікіпедії з посиланнями" + }, + "frontParagraph": "MapComplete — це простий у використанні вебзастосунок для збору геоданих в OpenStreetMap, що дозволяє збирати та управляти відповідними даними спільно, відкрито та використовувати їх там де потрібно.\n\nНові категорії та атрибути можуть бути додані за запитом.", + "lines_too": "Лінії та полігони також показуються. До цих обʼєктів також можна додавати та оновлювати атрибути та зображення.", + "mapcomplete": { + "customize": "MapComplete може бути адаптований до ваших потреб, з новими шарами мапи, новими функціональними можливостями або стилізований під кольори та шрифт вашої організації.\nМи також маємо досвід проведення кампаній зі збору геоданих на основі краудсорсингу.\nЗверніться за пропозицією на pietervdvn@posteo.net.", + "intro": "MapComplete є вебсайтом, який містить {mapCount} інтерактивних мап. Кожна мапа дозволяє додавати або оновлювати інформацію. Вона має багато можливостей:", + "li0": "Показати, де знаходяться Точки інтересу", + "li1": "Додайте нові точки та оновіть інформацію про наявні", + "li2": "Легко додавайте контактну інформацію та години роботи", + "li3": "Можна розміщувати на інших вебсайтах як iFrame", + "li4": "Вбудована в екосистему OpenStreetMap, яка має багато доступних інструментів", + "li5": "Функціонал для імпорту наявних наборів даних", + "li6": "Багато розширених функцій, таких як виявлення дерев і вдосконалені методи вводу даних", + "li7": "Вільне програмне забезпечення (ліцензія GPL) з правом безплатного використання", + "title": "Що таке MapComplete?" + }, + "onwheels": "Також доступні плани приміщень для людей на інвалідних візках.", + "osm": "OpenStreetMap — це онлайн-мапа, яку може редагувати та використовувати будь-хто з будь-якою метою за умови зазначення авторства і відкритості даних.\n\nЦе найбільша база геопросторових даних у світі, яку використовують тисячі застосунків та вебсайтів.", + "tagline": "Збирайте геодані за допомогою OpenStreetMap", + "title": "mapcomplete.org", + "toerisme_vlaanderen": "Для спільного проєкту з Visit Flanders було створено «Pin your point». Понад 160 учасників додали кілька тисяч лавок і столиків для пікніків, а також позначили 100 зарядних станцій для велосипедів.", + "whatIsOsm": "Що таке OpenStreetMap?" + }, + "general": { + "404": "Такої сторінки не існує", + "about": "З легкістю редагуйте та доповнюйте OpenStreetMap для певної теми", + "aboutMapComplete": { + "intro": "Використовуйте MapComplete, щоб додати інформацію OpenStreetMap про одну тему. Дайте відповіді на запитання, і за кілька хвилин ваш внесок буде доступний скрізь. У більшості тем ви можете додати зображення або навіть залишити відгук. Підтримувач теми визначає елементи, запитання та мови для неї." + }, + "add": { + "addNew": "Додати {category}", + "backToSelect": "Обрати іншу категорію", + "confirmButton": "Додати {category}
Ваш внесок буде видно всім
", + "confirmLocation": "Підтвердити цю локацію", + "confirmTitle": "Додати {title}?", + "confirmWarning": "Обʼєкт, який ви створите тут, буде видимим для всіх. Будь ласка, додавайте на мапу лише ті обʼєкти, які дійсно існують. Ці дані використовуються багатьма застосунками.", + "creating": "Створення нової точки…", + "disableFilters": "Вимкнути всі фільтри", + "disableFiltersExplanation": "Деякі обʼєкти можуть бути приховані фільтром", + "enableLayer": "Увімкнути шар {name}", + "hasBeenImported": "Обʼєкт вже було імпортовано", + "import": { + "hasBeenImported": "Обʼєкт імпортовано", + "howToTest": "Щоб перевірити, додайте test=true або backend=osm-test до URL-адреси. Набір змін буде надруковано в консолі. Відкрийте PR, щоб офіційно оформити цю тему, щоб увімкнути кнопку імпорту.", + "importTags": "Обʼєкт отримає {tags}", + "officialThemesOnly": "Для неофіційних тем функцію імпорту відключено для запобігання можливих проблем", + "wrongType": "Цей обʼєкт не є, а ні точкою, а ні лінією і не може бути імпортований", + "wrongTypeToConflate": "Цей обʼєкт не є, а ні точкою, а ні лінією і не може бути обʼєднаний", + "zoomInMore": "Наблизьтесь ближче для імпортування обʼєкта" + }, + "importTags": "Обʼєкт отримає {tags}", + "intro": "Ви клацнули там де ще немає даних.
", + "layerNotEnabled": "Шар {layer} не увімкнений. Увімкніть цей шар, щоб додати обʼєкт", + "openLayerControl": "Відкрийте вікно керування шаром", + "pleaseLogin": "Будь ласка, увійдіть у систему OpenStreetMap, щоб додати новий об'єкт", + "presetInfo": "Нова точка інтересу матиме {tags}", + "stillLoading": "Дані все ще завантаження. Будь ласка, почекайте трохи, перш ніж додати новий обʼєкт.", + "title": "Додати новий об'єкт", + "warnVisibleForEveryone": "Ваш внесок буде видимим для всіх", + "wrongType": "Цей обʼєкт не є, а ні точкою, а ні лінією і не може бути імпортований", + "zoomInFurther": "Наблизьтесь ще більше, щоб додати об'єкт", + "zoomInMore": "Наблизьтесь ближче для імпортування обʼєкта" + }, + "apply_button": { + "appliedOnAnotherObject": "Обʼєкт {id} отримає {tags}", + "isApplied": "Зміни застосовано" + }, + "attribution": { + "attributionBackgroundLayer": "Поточний фоновий шар {name}", + "attributionBackgroundLayerWithCopyright": "Поточний фоновий шар {name}: {copyright}", + "attributionContent": "

Усі дані надаються OpenStreetMap, які можна вільно повторно використовувати в Ліцензія Open DataBase.

", + "attributionTitle": "Повідомлення про авторство", + "codeContributionsBy": "MapComplete створено {contributors} та {hiddenCount} іншими учасниками", + "donate": "Підтримайте MapComplete фінансово", + "editId": "Відкрийте онлайн-редактор OpenStreetMap тут", + "editJosm": "Редагувати тут за допомогою JOSM", + "emailCreators": "Надішліть електронного листа розробникам", + "followOnMastodon": "Слідкуйте за MapComplete на Mastodon", + "gotoSourceCode": "Переглянути вихідний код", + "iconAttribution": { + "title": "Використані іконки" + }, + "josmNotOpened": "Не вдалося досягти JOSM. Переконайтеся, що його відкрито та увімкнено пульт дистанційного керування", + "josmOpened": "JOSM відкрито", + "madeBy": "Створено: {author}", + "mapContributionsBy": "Поточні видимі дані мають редагування від {contributors}", + "mapContributionsByAndHidden": "Поточні видимі дані мають редагування від {contributors} та {hiddenCount} більше учасників", + "mapDataByOsm": "Картографічні дані: OpenStreetMap", + "mapillaryHelp": "Mapillary - це онлайн-сервіс, який збирає зображення вулиць і пропонує їх під вільною ліцензією. Дописувачам дозволено використовувати ці зображення для покращення OpenStreetMap", + "openIssueTracker": "Подати повідомлення про помилку", + "openMapillary": "Відкрити Mapillary тут", + "openOsmcha": "Перегляньте останні правки, зроблені за допомогою {theme}", + "openOsmchaLastWeek": "Переглянути правки за останні 7 днів", + "openPanoramax": "Відкрийте Panoramax тут", + "openThemeDocumentation": "Відкрити документацію для тематичної мапи {name}", + "panoramaxHelp": "Panoramax - це онлайн-сервіс, який збирає зображення вулиць і пропонує їх під вільною ліцензією. Дописувачам дозволено використовувати ці зображення для покращення OpenStreetMap", + "panoramaxLicenseCCBYSA": "Ваші фотографії публікуються на умовах Ліцензією CC-BY-SA — кожен може повторно використовувати ваше зображення на умовах зазначення авторства та ліцензії", + "seeOnMapillary": "Переглянути зображення на Mapillary", + "themeBy": "Тему підтримує {author}", + "title": "Авторське право", + "translatedBy": "MapComplete переклали {contributors} та {hiddenCount} інших учасників" + }, + "back": "Назад", + "backToIndex": "Переглянути всі тематичні мапи", + "backToMap": "Повернутися до мапи", + "backgroundMap": "Виберіть фоновий шар", + "backgroundSwitch": "Змінити фон", + "cancel": "Скасувати", + "clearPendingChanges": "Відкинути зміни, що очікуються", + "confirm": "Підтвердити", + "customThemeIntro": "Раніше відвідані теми, створені користувачами.", + "customThemeTitle": "Власні теми", + "download": { + "custom": { + "download": "Завантажити PNG шириною {width} мм і висотою {height} мм", + "downloadHelper": "Це призначено для друку", + "height": "Висота зображення (в мм):", + "title": "Завантажте зображення з власною шириною та висотою", + "width": "Ширина зображення (в мм): " + }, + "downloadAsPdf": "Завантажити PDF поточної мапи", + "downloadAsPdfHelper": "Ідеально для друку поточної мапи", + "downloadAsPng": "Завантажити як зображення", + "downloadAsPngHelper": "Ідеально підходить для включення у звіти", + "downloadAsSvg": "Завантажити SVG-файл поточної мапи", + "downloadAsSvgHelper": "Сумісні з Inkscape або Adobe Illustrator; потребують подальшої обробки", + "downloadAsSvgLinesOnly": "Завантажте SVG-файл поточної мапи, що містить лише лінії", + "downloadAsSvgLinesOnlyHelper": "Лінії, що перетинаються, розбиваються, можна використовувати з деякими 3D-програмами", + "downloadCSV": "Завантажити видимі дані як CSV", + "downloadCSVHelper": "Сумісний з LibreOffice Calc, Excel, …", + "downloadFeatureAsGeojson": "Завантажити як GeoJSON-file", + "downloadFeatureAsGpx": "Завантажити як GPX-файл", + "downloadGeoJsonHelper": "Сумісний з QGIS, ArcGIS, ESRI, …", + "downloadGeojson": "Завантажте видимі дані у форматі GeoJSON", + "downloadGpx": "Завантажити як GPX-файл", + "downloadGpxHelper": "Файл GPX можна використовувати в більшості навігаційних пристроїв та застосунків", + "downloadImage": "Завантажити зображення", + "exporting": "Експорт…", + "includeMetaData": "Включити метадані (останній редактор, обчислені значення, ...)", + "licenseInfo": "

Повідомлення про авторські права

Надані дані доступні в ODbL. Його повторне використання безкоштовне для будь-яких цілей, але
  • потрібно вказувати посилання на авторство © учасників OpenStreetMap
  • Будь-які зміни мають бути опубліковані за тією самою ліцензією
  • < /ul> Прочитайте повний текст повідомлення про авторські права, щоб дізнатися більше.", + "noDataLoaded": "Дані ще не завантажені. Завантаження буде доступне найближчим часом", + "pdf": { + "current_view_generic": "Експортуйте PDF-файл поточного подання для {paper_size} в орієнтації {orientation}" + }, + "title": "Завантажити", + "toMuch": "Занадто багато обʼєктів, щоб завантажити їх усі", + "uploadGpx": "Завантажте свій трек на OpenStreetMap" + }, + "enableGeolocationForSafari": "У вас не зʼявилося спливаюче вікно із запитом на дозвіл геолокації?", + "enableGeolocationForSafariLink": "Дізнайтеся, як увімкнути дозвіл на геолокацію в налаштуваннях", + "eraseValue": "Вилучити це значення", + "error": "Щось пішло не так", + "example": "Приклад", + "examples": "Приклади", + "fewChangesBefore": "Будь ласка, дайте відповідь на кілька запитань про наявні обʼєкти перед додаванням нового.", + "filterPanel": { + "allTypes": "Всі типи", + "disableAll": "Зняти вибір з усього", + "enableAll": "Обрати все" + }, + "geopermissionDenied": "Визначення геолокації було заборонено", + "getStartedLogin": "Увійдіть з обліковим записом OpenStreetMap, щоб розпочати роботу", + "getStartedNewAccount": " або створіть новий обліковий запис", + "goToInbox": "Відкрити поштову скриньку", + "histogram": { + "error_loading": "Не вдалося завантажити гістограму" + }, + "labels": { + "background": "Змінити фон", + "filter": "Фільтрувати дані", + "jumpToLocation": "Перейдіть до вашого поточного розташування", + "locationNotAvailable": "GPS-локація недоступна. Цей пристрій може визначити локацію чи ви в тунелі?", + "menu": "Меню", + "zoomIn": "Наблизитись", + "zoomOut": "Віддалитись" + }, + "layerSelection": { + "title": "Обрати шар", + "zoomInToSeeThisLayer": "Наблизьтесь, щоб побачити цей шар" + }, + "levelSelection": { + "addNewOnLevel": "Чи нова точка знаходиться на рівні {level}?", + "confirmLevel": "Так, додати {preset} на рівні {level}" + }, + "loading": "Завантаження…", + "loadingTheme": "Завантаження {theme}…", + "loginFailed": "Не вдалося увійти до OpenStreetMap", + "loginFailedOfflineMode": "OpenStreetMap.org наразі недоступний у звʼязку з технічним обслуговуванням. Внесення змін буде можливим найближчим часом", + "loginFailedReadonlyMode": "Наразі OpenStreetMap.org перебуває в режимі \"тільки для читання\" через технічне обслуговування. Внесення змін буде можливе найближчим часом", + "loginFailedUnreachableMode": "OpenStreetMap.org наразі недоступний. Ви підключені до Інтернету або блокуєте доступ третім особам? Спробуйте пізніше", + "loginOnlyNeededToEdit": "якщо бажаєте зробити зміни", + "loginToStart": "Увійдіть, щоб дати відповідь на питання", + "loginWithOpenStreetMap": "Увійдіть за допомогою OpenStreetMap", + "logout": "Вийти з системи", + "mappingsAreHidden": "Деякі варіанти приховано. Використовуйте пошук.", + "menu": { + "aboutCurrentThemeTitle": "Про цю мапу", + "aboutMapComplete": "Про MapComplete", + "filter": "Фільтр даних", + "moreUtilsTitle": "Дізнайтеся більше", + "openHereDifferentApp": "Відкривайте поточне місцезнаходження в інших програмах", + "showIntroduction": "Показати вступ", + "title": "Меню" + }, + "morescreen": { + "createYourOwnTheme": "Створіть власну тему MapComplete з нуля", + "enterToOpen": "Натисніть enter, щоб відкрити тему", + "hiddenExplanation": "Ці теми доступні лише для тих, хто має посилання. Ви виявили {hidden_discovered} з {total_hidden} прихованих тем.", + "noMatchingThemes": "Жодна тема не відповідає вашим критеріям пошуку", + "noSearch": "Показати всі теми", + "previouslyHiddenTitle": "Раніше відвідані приховані теми", + "requestATheme": "Якщо вам потрібна індивідуальна тема, запросіть її в трекері проблем", + "searchForATheme": "Пошук тем", + "streetcomplete": "Інша подібна програма — StreetComplete." + }, + "nameInlineQuestion": "Назва категорії {category} — $$$", + "next": "Далі", + "noMatchingMapping": "Нічого не знайдено за вашим запитом…", + "noNameCategory": "{category} без назви", + "noTagsSelected": "Не вибрано жодного тегу", + "notValid": "Оберіть відповідне значення для продовження", + "number": "номер", + "openStreetMapIntro": "

    Відкрита мапа

    Кожен може вільно використовувати та редагувати. Єдине місце для зберігання всієї геоінформації. Різні, маленькі, несумісні та застарілі мапи ніде не потрібні.

    OpenStreetMap це не ворожа мапа. Дані мапи можна використовувати вільно (з зазначенням авторства та публікацією змін цих даних). Кожен може додавати нові дані та виправляти помилки. Цей вебсайт використовує OpenStreetMap. Звідти надходять усі дані, а ваші відповіді та виправлення використовуються всюди.

    Багато людей та застосунків вже використовують OpenStreetMap: Organic Maps, OsmAnd, а також мапи у Facebook, Instagram, Apple-maps і Bing-maps (частково) працюють на OpenStreetMap.

    ", + "openTheMap": "Перейти до мапи", + "openTheMapAtGeolocation": "Наблизьтесь до своєї локації", + "openTheMapReason": "для перегляду, редагування та додавання інформації", + "opening_hours": { + "all_days_from": "Працює щодня {ranges}", + "closed_permanently": "Закрито на невідомий термін", + "closed_until": "Відкривається о {date}", + "error": "Не вдалося розібрати години роботи", + "error_loading": "Помилка: не вдалося візуалізувати ці години роботи.", + "friday": "У пʼятницю {ranges}", + "loadingCountry": "Визначення країни…", + "monday": "У понеділок {ranges}", + "not_all_rules_parsed": "Ці години роботи є складними. У вхідному елементі ігноруються наступні правила:", + "on_weekdays": "Працює по буднях {ranges}", + "on_weekends": "Працює на вихідних {ranges}", + "openTill": "до тих пір, поки", + "open_24_7": "Працюємо цілодобово", + "open_during_ph": "У святкові дні —", + "opensAt": "від", + "ph_closed": "закрито", + "ph_not_known": " ", + "ph_open": "відкрито", + "ph_open_as_usual": "відчинено, як завжди", + "ranges": "з {starttime} до {endtime}", + "rangescombined": "{range0} та {range1}", + "saturday": "У суботу {ranges}", + "sunday": "У неділю {ranges}", + "thursday": "У четвер {ranges}", + "tuesday": "У вівторок {ranges}", + "unknown": "Години роботи невідомі", + "wednesday": "У середу {ranges}" + }, + "osmLinkTooltip": "Перегляньте цей обʼєкт на OpenStreetMap для перегляду історії та інших можливостей редагування", + "pdf": { + "attr": "Дані мапи © Учасники OpenStreetMap, можуть бути використані на умовах ODbL", + "attrBackground": "Фоновий шар: {background}", + "generatedWith": "Згенеровано за допомогою mapcomplete.org/{layoutid}", + "versionInfo": "v{version} - створено {date}" + }, + "pickLanguage": "Оберіть мову", + "poweredByMapComplete": "Працює на основі MapComplete — тематичні мапи, створені спільнотою на основі даних OpenStreetMap", + "poweredByOsm": "Працює на основі OpenStreetMap", + "questionBox": { + "answeredMultiple": "Ви відповіли на {answered} питань(ня)", + "answeredMultipleSkippedMultiple": "Ви відповіли на {answered} питань(ня) та пропустили {skipped} питань(ня)", + "answeredMultipleSkippedOne": "Ви відповіли на {answered} питань(ня) та пропустили одне питання", + "answeredOne": "Ви відповіли на одне питання", + "answeredOneSkippedMultiple": "Ви відповіли на одне питання та пропустили {skipped} питань(ня)", + "answeredOneSkippedOne": "Ви відповіли на одне питання та пропустили одне питання", + "done": "Питань більше немає! Дякуємо!", + "reactivate": "Активувати пропущені питання", + "skippedMultiple": "Ви пропустили {skipped} питань(ня)", + "skippedOne": "Ви пропустили одне питання" + }, + "questions": { + "emailIs": "Електронна адреса {category}: {email}", + "emailOf": "Яка адреса е-пошти у {category}?", + "phoneNumberIs": "Номер телефону цієї {category} є {phone}", + "phoneNumberOf": "Який номер телефону {category}?", + "websiteIs": "Веб-сайт: {website}", + "websiteOf": "Що являє собою веб-сайт {category}?" + }, + "readYourMessages": "Будь ласка, прочитайте всі ваші OpenStreetMap-повідомлення перед додаванням нового об'єкту.", + "removeLocationHistory": "Видалити історію місцезнаходжень", + "retry": "Повторити", + "returnToTheMap": "Повернутися до карти", + "save": "Зберегти", + "screenToSmall": "Відкрийте {theme} в новому вікні", + "search": { + "activeFilters": "Активні фільтри", + "clearFilters": "Очистити фільтри", + "deleteSearchHistory": "Видалити історію місцезнаходжень", + "deleteThemeHistory": "Видалити раніше відвідані теми", + "editSearchSyncSettings": "Редагування налаштувань синхронізації", + "editThemeSync": "Редагування налаштувань синхронізації", + "error": "Щось пішло не так…", + "instructions": "Використовуйте рядок пошуку вище для пошуку місцезнаходжень, фільтрів або інших тематичних мап", + "locations": "Локації", + "nMoreFilters": "ще {n}", + "nothing": "Нічого не знайдено…", + "nothingFor": "Немає результатів для {term}", + "otherMaps": "Інші карти", + "pickFilter": "Виберіть фільтр", + "recentThemes": "Нещодавно відвідані мапи", + "recents": "Нещодавно відвідані місця", + "search": "Пошук місцезнаходження", + "searchShort": "Шукати…", + "searching": "Пошук…" + }, + "searchAnswer": "Знайдіть варіант…", + "seeIndex": "Дивіться огляд з усіма тематичними мапами", + "share": "Поділитися", + "sharescreen": { + "copiedToClipboard": "Посилання скопійовано в буфер обміну", + "documentation": "Для отримання додаткової інформації про доступні URL-параметри, зверніться до документації", + "embedIntro": "

    Додайте на свій вебсайт

    Будь ласка, додайте цю мапу на свій вебсайт.
    Ми заохочуємо вас це зробити — вам навіть не потрібно питати дозволу.
    Це безплатно, і завжди буде. Чим більше людей цим користується, тим ціннішим воно стає.", + "fsBackground": "Увімкнути перемикання фонів", + "fsFilter": "Увімкніть можливість перемикання шарів і фільтрів", + "fsGeolocation": "Увімкнути геолокацію", + "fsUserbadge": "Увімкніть кнопку входу і, таким чином, можливість вносити зміни", + "fsWelcomeMessage": "Показати спливаюче вікно привітального повідомлення та пов'язані з ним вкладки", + "intro": "Поділіться цією мапою, скопіювавши посилання нижче та надіславши її друзям і родичам:", + "openInOtherApplications": "Відкрийте поточне місцезнаходження за допомогою іншої картографічної програми", + "openLayers": "Відкрити меню шарів і фільтрів", + "options": "Параметри спільного використання", + "stateIsIncluded": "Поточний стан шарів і фільтрів відображається у спільному посиланні та iframe.", + "thanksForSharing": "Дякуємо, що поділилися!", + "title": "Поділіться цією мапою" + }, + "skip": "Пропустити це питання", + "testing": "Тестування - зміни не будуть збережені", + "uploadError": "Помилка під час надсилання змін: {error}", + "uploadGpx": { + "choosePermission": "Виберіть нижче, як саме має бути поширений ваш трек:", + "confirm": "Підтвердити надсилання", + "gpxServiceOffline": "GPX-сервіс зараз перебуває в режимі офлайн - завантаження наразі неможливе. Спробуйте пізніше.", + "intro0": "Завантаживши трек, OpenStreetMap.org збереже його повну копію.", + "intro1": "Ви зможете знову завантажити свої треки та завантажити їх у програми для редагування OpenStreetMap", + "meta": { + "descriptionIntro": "За бажанням ви можете ввести опис трасування:", + "descriptionPlaceHolder": "Введіть опис свого треку", + "intro": "Додайте назву треку:", + "title": "Назва та опис", + "titlePlaceholder": "Введіть назву треку" + }, + "modes": { + "private": { + "docs": "Точки вашого треку будуть спільними та об'єднані з іншими треками. Повний трек буде видимим для вас, і ви зможете завантажити його в інші програми для редагування. OpenStreetMap.org зберігає копію вашого треку", + "name": "Анонім" + }, + "public": { + "docs": "Ваш трек буде видно всім, як у вашому профілі користувача, так і в списку GPS-треків на openstreetmap.org" + } + }, + "title": "Завантажте свій трек на OpenStreetMap.org" + }, + "uploadPendingSingle": "Очікується одна зміна", + "useSearch": "Скористайтеся пошуком вище, щоб побачити більше варіантів", + "waitingForGeopermission": "Очікуємо вашого дозволу на використання геолокації…", + "waitingForLocation": "Пошук вашого поточного місцезнаходження…", + "welcomeBack": "З поверненням!", + "welcomeExplanation": { + "addNew": "Відсутній об'єкт? Використовуйте кнопку внизу ліворуч, щоб додати новий об'єкт.", + "general": "На цій мапі ви можете переглядати, редагувати і додавати точки інтересу. Змініть масштаб, щоб побачити POI, торкніться одного з них, щоб переглянути або відредагувати інформацію. Всі дані отримані з OpenStreetMap і збережені в ньому, їх можна вільно використовувати повторно." + }, + "wikipedia": { + "doSearch": "Шукайте вище, щоб побачити результати", + "fromWikipedia": "З Вікіпедії, вільної енциклопедії", + "noResults": "Нічого не знайдено для {search}", + "previewbox": { + "born": "Народився: {value}", + "died": "Помер(ла): {value}" + }, + "readMore": "Прочитайте решту статті", + "searchWikidata": "Пошук у Вікіданих" + } + }, + "hotkeyDocumentation": { + "action": "Дія", + "closeSidebar": "Закрийте бічну панель", + "geolocate": "Пересуньте мапу або наблизьте мапу до поточної локації. Потрібно надати дозвіл на геолокацію", + "intro": "MapComplete підтримує наступні клавіші:", + "key": "Комбінація клавіш", + "openFilterPanel": "Відкриває шари POI та панель фільтрів", + "openLayersPanel": "Відкриває панель фонових шарів", + "selectFavourites": "Відкрийте сторінку обраного", + "selectItem": "Виберіть POI, який знаходиться найближче до центру мапи (перехрестя). Тільки якщо використовується клавіатурна навігація", + "selectItem2": "Виберіть POI, який є другим найближчим елементом до центру мапи (перехрестя). Тільки якщо використовується клавіатурна навігація", + "selectItem3": "Виберіть POI, який є третім найближчим елементом до центру мапи (перехрестя). Тільки якщо використовується клавіатурна навігація", + "selectItemI": "Виберіть POI, який є {i}-м найближчим елементом до центру мапи (перехрестя). Тільки якщо використовується клавіатурна навігація", + "selectMap": "Установіть фон мапи із зовнішніх джерел. Перемикається між двома найкращими доступними шарами", + "selectMapnik": "Встановіть фоновий шар на OpenStreetMap-carto", + "selectOsmbasedmap": "Встановіть фоновий шар на мапі на основі OpenStreetMap (або вимкніть фоновий растровий шар)", + "selectSearch": "Виберіть рядок пошуку, щоб знайти місцезнаходження", + "title": "Гарячі клавіші" + }, + "image": { + "addPicture": "Додати фото", + "nearby": { + "noNearbyImages": "Зображень поблизу не знайдено", + "seeNearby": "Перегляньте фотографії поблизу" + }, + "respectPrivacy": "Не завантажуйте зображення з Google Maps, Google Streetview або інших захищених авторським правом джерел.", + "upload": { + "failReasons": "Можливо, ви втратили зв'язок з інтернетом", + "failReasonsAdvanced": "Крім того, переконайтеся, що ваш браузер і розширення не блокують сторонні API.", + "multiple": { + "done": "{count} зображення успішно завантажено. Дякуємо!" + }, + "one": { + "failed": "Вибачте, ми не змогли завантажити ваше зображення" + } + } + }, + "importLayer": { + "nearbyImagesIntro": "

    Зображення поблизу

    Наведені нижче зображення є зображеннями з геотегами з різних онлайн-служб. Вони можуть допомогти вам вирішити цю нотатку.{nearby_images(open)}" + }, + "index": { + "about": "Про MapComplete", + "intro": "Тематичні мапи, до створення яких ви можете долучитися", + "learnMore": "Дізнатися більше" + }, + "move": { + "cannotBeMoved": "Цей об'єкт не можна перемістити.", + "inviteToMove": { + "generic": "Перемістити цю точку" + }, + "isWay": "Цей об'єкт є лінією. Використовуйте інший редактор OpenStreetMap, щоб перемістити його.", + "partOfAWay": "Цей об'єкт є частиною іншого. Використовуйте інший редактор, щоб перемістити його." + }, + "multi_apply": { + "autoApply": "При зміні атрибутів {attr_names}, ці атрибути будуть автоматично змінені і на {count} інших обʼєктах" + }, + "notes": { + "isClosed": "Це зауваження вирішено", + "loginToAddPicture": "Увійдіть, щоб додати фото", + "reopenNote": "Повторно відкрити нотатку", + "reopenNoteAndComment": "Повторно відкрити нотатку та коментар" + }, + "privacy": { + "editingIntro": "Коли ви вносите зміни до мапи, ці зміни записуються на OpenStreetMap і стають загальнодоступними для всіх. Набір змін, зроблених за допомогою MapComplete, містить наступні дані:", + "editingOutro": "Для отримання детальної інформації зверніться до політики конфіденційності на OpenStreetMap.org. Нагадуємо, що під час реєстрації можна використовувати вигадане ім’я.", + "editingTitle": "При внесенні змін", + "geodata": "Коли MapComplete отримує вашу геолокацію, ваша геолокація і раніше відвідані місця залишаються на вашому пристрої. Дані про ваше місцезнаходження ніколи не надсилаються автоматично нікуди - якщо тільки певна функція чітко не вказує на протилежне.", + "geodataTitle": "Ваша геолокація", + "intro": "Конфіденційність важлива як для окремої людини, так і для суспільства. MapComplete намагається поважати вашу конфіденційність настільки, наскільки це можливо - аж до того, що немає необхідності в набридливому банері з файлами cookie. Однак, ми все ж хотіли б повідомити вам, яка інформація збирається і передається, за яких обставин і чому ми йдемо на такі компроміси.", + "items": { + "changesYouMake": "Зміни, які ви внесли", + "date": "Коли буде внесено цю зміну", + "language": "Мова інтерфейсу користувача", + "theme": "Тема, яку ви використовували під час внесення змін", + "username": "Ваше ім'я користувача" + }, + "title": "Політика конфіденційності", + "tracking": "Щоб отримати певну інформацію про те, хто відвідує наш веб-сайт, збирається певна технічна інформація. Це включає країну, з якої ви відвідали веб-сторінку, веб-сайт, який перевів вас на MapComplete, тип вашого пристрою та розмір екрана. Файл cookie розміщується на вашому пристрої, щоб вказати, що ви відвідали MapComplete раніше сьогодні. Ці дані недостатньо докладні, щоб ідентифікувати вашу особу. Ця статистика доступна для будь-кого лише в сукупності та загальнодоступна для всіх", + "trackingTitle": "Статистичні дані" + }, + "reviews": { + "no_reviews_yet": "Відгуків ще немає. Будьте першим!", + "question": "Як би ви оцінили {title()}?", + "save": "Зберегти відгук", + "saved": "Відгук збережено. Дякуємо, що поділилися!" + }, + "translations": { + "activateButton": "Допоможіть перекласти MapComplete" + }, + "unknown": { + "explanation": "Очистіть цей біт інформації, якщо поточна відповідь невірна, але дійсне значення невідоме. Інша інформація не буде видалена.", + "keep": "Продовжуйте відповідати", + "markUnknown": "Позначити як невідомий", + "removedKeys": "Наступні ключі будуть видалені:", + "title": "Позначити як невідомий?" + }, + "userinfo": { + "gotoInbox": "Відкрити поштову скриньку", + "gotoSettings": "Перейдіть до своїх налаштувань на OpenStreetMap.org" + }, + "validation": { + "opening_hours": { + "description": "Години роботи" + } + } +} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 176865fd9..70d062d0c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "mapcomplete", - "version": "0.47.5", + "version": "0.47.9", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "mapcomplete", - "version": "0.47.5", + "version": "0.47.9", "license": "GPL-3.0-or-later", "dependencies": { "@comunica/core": "^3.0.1", @@ -31,6 +31,7 @@ "buffer": "^6.0.3", "chart.js": "^3.8.0", "comunica": "^2.0.0", + "coordinate-parser": "^1.0.7", "country-language": "^0.1.7", "country-to-currency": "^1.0.10", "crypto": "^1.0.1", @@ -64,11 +65,12 @@ "opening_hours": "^3.6.0", "osm-auth": "^2.5.0", "osmtogeojson": "^3.0.0-beta.5", - "panoramax-js": "^0.3.6", + "panoramax-js": "^0.4.8", "panzoom": "^9.4.3", "papaparse": "^5.3.1", "pg": "^8.11.3", "pic4carto": "^2.1.15", + "pluscodes": "^2.6.0", "pmtiles": "^3.0.5", "prompt-sync": "^4.2.0", "qrcode-generator": "^1.4.4", @@ -4725,6 +4727,44 @@ "node-fetch": "^2.6.12" } }, + "node_modules/@jeswr/prefixcc/node_modules/node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/@jeswr/prefixcc/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "node_modules/@jeswr/prefixcc/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "node_modules/@jeswr/prefixcc/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, "node_modules/@jridgewell/gen-mapping": { "version": "0.1.1", "dev": true, @@ -7980,9 +8020,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001667", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001667.tgz", - "integrity": "sha512-7LTwJjcRkzKFmtqGsibMeuXmvFDfZq/nzIjnmgCGzKKRVzjD72selLDK1oPF/Oxzmt4fNcPvTDvGqSDG4tCALw==", + "version": "1.0.30001678", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001678.tgz", + "integrity": "sha512-RR+4U/05gNtps58PEBDZcPWTgEO2MBeoPZ96aQcjmfkBWRIDfN451fW2qyDA9/+HohLLIL5GqiMwA+IB1pWarw==", "dev": true, "funding": [ { @@ -8651,6 +8691,11 @@ "monotone-convex-hull-2d": "^1.0.1" } }, + "node_modules/coordinate-parser": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/coordinate-parser/-/coordinate-parser-1.0.7.tgz", + "integrity": "sha512-pkcjigkAEjU5JsTYnuXLkRgR6T5fF/7GXR4p9vWJesy8fKwsheN8zC5d3sSvdMmWihHB4u48xWZ5mUCcgBIEpw==" + }, "node_modules/core-js": { "version": "2.6.12", "dev": true, @@ -8700,6 +8745,44 @@ "node-fetch": "^2.6.12" } }, + "node_modules/cross-fetch/node_modules/node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/cross-fetch/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "node_modules/cross-fetch/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "node_modules/cross-fetch/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, "node_modules/cross-spawn": { "version": "7.0.3", "dev": true, @@ -9507,9 +9590,9 @@ "license": "ISC" }, "node_modules/elliptic": { - "version": "6.5.7", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.7.tgz", - "integrity": "sha512-ESVCtTwiA+XhY3wyh24QqRGBoP3rEdDUl3EDUUo9tft074fi19IrdpH7hLCMMP3CIj7jb3W96rn8lt/BqIlt5Q==", + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.0.tgz", + "integrity": "sha512-dpwoQcLc/2WLQvJvLRHKZ+f9FgOdjnq11rurqwekGQygGPsYSK29OMMD2WalatiqQ+XGFDglTNixpPfI+lpaAA==", "dependencies": { "bn.js": "^4.11.9", "brorand": "^1.1.0", @@ -10328,6 +10411,44 @@ "node-fetch": "^2.6.12" } }, + "node_modules/fetch-sparql-endpoint/node_modules/node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/fetch-sparql-endpoint/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "node_modules/fetch-sparql-endpoint/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "node_modules/fetch-sparql-endpoint/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, "node_modules/fflate": { "version": "0.4.8", "license": "MIT" @@ -12023,6 +12144,44 @@ "node-fetch": "^2.6.12" } }, + "node_modules/jsonld-context-parser/node_modules/node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/jsonld-context-parser/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "node_modules/jsonld-context-parser/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "node_modules/jsonld-context-parser/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, "node_modules/jsonld-request": { "version": "2.0.1", "license": "BSD-3-Clause", @@ -12249,22 +12408,6 @@ } } }, - "node_modules/ky-universal/node_modules/node-fetch": { - "version": "3.3.2", - "license": "MIT", - "dependencies": { - "data-uri-to-buffer": "^4.0.0", - "fetch-blob": "^3.1.4", - "formdata-polyfill": "^4.0.10" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/node-fetch" - } - }, "node_modules/latlon2country": { "version": "1.2.6", "license": "GPL-3.0-or-later", @@ -13293,37 +13436,20 @@ } }, "node_modules/node-fetch": { - "version": "2.7.0", - "license": "MIT", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.2.tgz", + "integrity": "sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==", "dependencies": { - "whatwg-url": "^5.0.0" + "data-uri-to-buffer": "^4.0.0", + "fetch-blob": "^3.1.4", + "formdata-polyfill": "^4.0.10" }, "engines": { - "node": "4.x || >=6.0.0" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, - "node_modules/node-fetch/node_modules/tr46": { - "version": "0.0.3", - "license": "MIT" - }, - "node_modules/node-fetch/node_modules/webidl-conversions": { - "version": "3.0.1", - "license": "BSD-2-Clause" - }, - "node_modules/node-fetch/node_modules/whatwg-url": { - "version": "5.0.0", - "license": "MIT", - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/node-fetch" } }, "node_modules/node-html-parser": { @@ -16002,9 +16128,9 @@ "license": "MIT" }, "node_modules/panoramax-js": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/panoramax-js/-/panoramax-js-0.3.6.tgz", - "integrity": "sha512-CRdXwh91H6chd1PYptG070ukx+S6IkVaUeQVG91ySevoJoCYOuBT65qkMhRo49X2um1nGcs9UqolW90R57875g==", + "version": "0.4.8", + "resolved": "https://registry.npmjs.org/panoramax-js/-/panoramax-js-0.4.8.tgz", + "integrity": "sha512-z4kV++aHZXJ18S29DwoPScMbewNsSm69LWkmHIJzBOB0xTEUZnWyMzx+lp+5ykAJEBqlYaEhanbETlavyFiMVw==", "dependencies": { "@ogcapi-js/features": "^1.1.1", "@ogcapi-js/shared": "^1.1.1", @@ -16246,6 +16372,11 @@ "pathe": "^1.0.0" } }, + "node_modules/pluscodes": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/pluscodes/-/pluscodes-2.6.0.tgz", + "integrity": "sha512-+3sW+Qt+znuN2uMFFvebo2m5MsaTjBXOzEYvkfx4RMeOYnNCQv3OWeQujfRAo6nzg7D+5vD2b3tihtwW3b5pfg==" + }, "node_modules/pmtiles": { "version": "3.0.5", "license": "BSD-3-Clause", @@ -24618,6 +24749,33 @@ "requires": { "node-fetch": "^2.6.12" } + }, + "node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "requires": { + "whatwg-url": "^5.0.0" + } + }, + "tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "requires": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } } } }, @@ -26810,9 +26968,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001667", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001667.tgz", - "integrity": "sha512-7LTwJjcRkzKFmtqGsibMeuXmvFDfZq/nzIjnmgCGzKKRVzjD72selLDK1oPF/Oxzmt4fNcPvTDvGqSDG4tCALw==", + "version": "1.0.30001678", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001678.tgz", + "integrity": "sha512-RR+4U/05gNtps58PEBDZcPWTgEO2MBeoPZ96aQcjmfkBWRIDfN451fW2qyDA9/+HohLLIL5GqiMwA+IB1pWarw==", "dev": true }, "canonicalize": { @@ -27289,6 +27447,11 @@ "monotone-convex-hull-2d": "^1.0.1" } }, + "coordinate-parser": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/coordinate-parser/-/coordinate-parser-1.0.7.tgz", + "integrity": "sha512-pkcjigkAEjU5JsTYnuXLkRgR6T5fF/7GXR4p9vWJesy8fKwsheN8zC5d3sSvdMmWihHB4u48xWZ5mUCcgBIEpw==" + }, "core-js": { "version": "2.6.12", "dev": true @@ -27321,6 +27484,35 @@ "version": "4.0.0", "requires": { "node-fetch": "^2.6.12" + }, + "dependencies": { + "node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "requires": { + "whatwg-url": "^5.0.0" + } + }, + "tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "requires": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + } } }, "cross-spawn": { @@ -27851,9 +28043,9 @@ "dev": true }, "elliptic": { - "version": "6.5.7", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.7.tgz", - "integrity": "sha512-ESVCtTwiA+XhY3wyh24QqRGBoP3rEdDUl3EDUUo9tft074fi19IrdpH7hLCMMP3CIj7jb3W96rn8lt/BqIlt5Q==", + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.0.tgz", + "integrity": "sha512-dpwoQcLc/2WLQvJvLRHKZ+f9FgOdjnq11rurqwekGQygGPsYSK29OMMD2WalatiqQ+XGFDglTNixpPfI+lpaAA==", "requires": { "bn.js": "^4.11.9", "brorand": "^1.1.0", @@ -28384,6 +28576,33 @@ "requires": { "node-fetch": "^2.6.12" } + }, + "node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "requires": { + "whatwg-url": "^5.0.0" + } + }, + "tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "requires": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } } } }, @@ -29496,6 +29715,33 @@ "requires": { "node-fetch": "^2.6.12" } + }, + "node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "requires": { + "whatwg-url": "^5.0.0" + } + }, + "tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "requires": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } } } }, @@ -29642,16 +29888,6 @@ "requires": { "abort-controller": "^3.0.0", "node-fetch": "^3.2.10" - }, - "dependencies": { - "node-fetch": { - "version": "3.3.2", - "requires": { - "data-uri-to-buffer": "^4.0.0", - "fetch-blob": "^3.1.4", - "formdata-polyfill": "^4.0.10" - } - } } }, "latlon2country": { @@ -30353,24 +30589,13 @@ "version": "1.0.0" }, "node-fetch": { - "version": "2.7.0", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.2.tgz", + "integrity": "sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==", "requires": { - "whatwg-url": "^5.0.0" - }, - "dependencies": { - "tr46": { - "version": "0.0.3" - }, - "webidl-conversions": { - "version": "3.0.1" - }, - "whatwg-url": { - "version": "5.0.0", - "requires": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - } + "data-uri-to-buffer": "^4.0.0", + "fetch-blob": "^3.1.4", + "formdata-polyfill": "^4.0.10" } }, "node-html-parser": { @@ -32087,9 +32312,9 @@ "version": "1.0.0" }, "panoramax-js": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/panoramax-js/-/panoramax-js-0.3.6.tgz", - "integrity": "sha512-CRdXwh91H6chd1PYptG070ukx+S6IkVaUeQVG91ySevoJoCYOuBT65qkMhRo49X2um1nGcs9UqolW90R57875g==", + "version": "0.4.8", + "resolved": "https://registry.npmjs.org/panoramax-js/-/panoramax-js-0.4.8.tgz", + "integrity": "sha512-z4kV++aHZXJ18S29DwoPScMbewNsSm69LWkmHIJzBOB0xTEUZnWyMzx+lp+5ykAJEBqlYaEhanbETlavyFiMVw==", "requires": { "@ogcapi-js/features": "^1.1.1", "@ogcapi-js/shared": "^1.1.1", @@ -32245,6 +32470,11 @@ "pathe": "^1.0.0" } }, + "pluscodes": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/pluscodes/-/pluscodes-2.6.0.tgz", + "integrity": "sha512-+3sW+Qt+znuN2uMFFvebo2m5MsaTjBXOzEYvkfx4RMeOYnNCQv3OWeQujfRAo6nzg7D+5vD2b3tihtwW3b5pfg==" + }, "pmtiles": { "version": "3.0.5", "requires": { diff --git a/package.json b/package.json index 5733dc658..e194db7bd 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "mapcomplete", - "version": "0.47.5", + "version": "0.47.9", "repository": "https://github.com/pietervdvn/MapComplete", "description": "A small website to edit OSM easily", "bugs": "https://github.com/pietervdvn/MapComplete/issues", @@ -42,7 +42,9 @@ }, "panoramax": { "url": "https://panoramax.mapcomplete.org", - "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnZW92aXNpbyIsInN1YiI6IjU5ZjgzOGI0LTM4ZjAtNDdjYi04OWYyLTM3NDQ3MWMxNTUxOCJ9.0rBioZS_48NTjnkIyN9497c3fQdTqtGgH1HDqlz1bWs" + "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnZW92aXNpbyIsInN1YiI6IjU5ZjgzOGI0LTM4ZjAtNDdjYi04OWYyLTM3NDQ3MWMxNTUxOCJ9.0rBioZS_48NTjnkIyN9497c3fQdTqtGgH1HDqlz1bWs", + "sequence": "6e702976-580b-419c-8fb3-cf7bd364e6f8", + "testsequence": "7f34cf53-27ff-46c9-ac22-78511fa8457a" }, "default_overpass_urls": [ "https://overpass-api.de/api/interpreter", @@ -88,7 +90,7 @@ "generate:translations": "vite-node scripts/generateTranslations.ts", "reset:translations": "vite-node scripts/generateTranslations.ts -- --ignore-weblate", "generate:layouts": "vite-node scripts/generateLayouts.ts", - "generate:docs": "rm -rf Docs/Themes/* && rm -rf Docs/Layers/* && rm -rf Docs/TagInfo && mkdir Docs/TagInfo && vite-node scripts/generateDocs.ts && vite-node scripts/generateTaginfoProjectFiles.ts", + "generate:docs": "rm -rf Docs/Themes/* && rm -rf Docs/Layers/* && rm -rf Docs/TagInfo && mkdir Docs/TagInfo && export NODE_OPTIONS=\"--max-old-space-size=16000\" && vite-node scripts/generateDocs.ts && vite-node scripts/generateTaginfoProjectFiles.ts", "generate:layeroverview": "export NODE_OPTIONS=\"--max-old-space-size=8192\" && vite-node scripts/generateLayerOverview.ts", "generate:mapcomplete-changes-theme": "export NODE_OPTIONS=\"--max-old-space-size=8192\" && vite-node scripts/generateLayerOverview.ts -- --generate-change-map", "refresh:layeroverview": "export NODE_OPTIONS=\"--max-old-space-size=8192\" && vite-node scripts/generateLayerOverview.ts -- --force", @@ -138,7 +140,8 @@ "generate:buildDbScript": "vite-node scripts/osm2pgsql/generateBuildDbScript.ts", "generate:summaryCache": "vite-node scripts/generateSummaryTileCache.ts", "create:database": "vite-node scripts/osm2pgsql/createNewDatabase.ts", - "delete:database:old": "vite-node scripts/osm2pgsql/deleteOldDbs.ts" + "delete:database:old": "vite-node scripts/osm2pgsql/deleteOldDbs.ts", + "upload:panoramax": "vite-node scripts/ImgurToPanoramax.ts && josm imgur_to_panoramax.osc" }, "keywords": [ "OpenStreetMap", @@ -175,6 +178,7 @@ "buffer": "^6.0.3", "chart.js": "^3.8.0", "comunica": "^2.0.0", + "coordinate-parser": "^1.0.7", "country-language": "^0.1.7", "country-to-currency": "^1.0.10", "crypto": "^1.0.1", @@ -208,11 +212,12 @@ "opening_hours": "^3.6.0", "osm-auth": "^2.5.0", "osmtogeojson": "^3.0.0-beta.5", - "panoramax-js": "^0.3.6", + "panoramax-js": "^0.4.8", "panzoom": "^9.4.3", "papaparse": "^5.3.1", "pg": "^8.11.3", "pic4carto": "^2.1.15", + "pluscodes": "^2.6.0", "pmtiles": "^3.0.5", "prompt-sync": "^4.2.0", "qrcode-generator": "^1.4.4", diff --git a/public/assets/templates/CurrentMapWithHeader_A4_Portrait.svg b/public/assets/templates/CurrentMapWithHeader_A4_Portrait.svg new file mode 100644 index 000000000..8941f2323 --- /dev/null +++ b/public/assets/templates/CurrentMapWithHeader_A4_Portrait.svg @@ -0,0 +1,240 @@ + + + + + + + + + + + + + + + + + + $map(current) + $general.pdf.attr + +$general.pdf.attrBackground +$general.pdf.generatedWith + + + ${title} + + + $general.pdf.versionInfo + + $img(layouticon) + + + + + + + + + + diff --git a/public/css/index-tailwind-output.css b/public/css/index-tailwind-output.css index 14a20318e..1ced5b6da 100644 --- a/public/css/index-tailwind-output.css +++ b/public/css/index-tailwind-output.css @@ -1462,6 +1462,10 @@ input[type="range"].range-lg::-moz-range-thumb { margin-right: 4rem; } +.mb-4 { + margin-bottom: 1rem; +} + .mt-4 { margin-top: 1rem; } @@ -1478,10 +1482,6 @@ input[type="range"].range-lg::-moz-range-thumb { margin-bottom: 4rem; } -.mb-4 { - margin-bottom: 1rem; -} - .ml-1 { margin-left: 0.25rem; } @@ -1698,14 +1698,14 @@ input[type="range"].range-lg::-moz-range-thumb { height: 6rem; } -.h-full { - height: 100%; -} - .h-screen { height: 100vh; } +.h-full { + height: 100%; +} + .h-fit { height: -webkit-fit-content; height: -moz-fit-content; @@ -2157,6 +2157,11 @@ input[type="range"].range-lg::-moz-range-thumb { max-width: 100%; } +.max-w-max { + max-width: -webkit-max-content; + max-width: max-content; +} + .max-w-fit { max-width: -webkit-fit-content; max-width: -moz-fit-content; @@ -2576,18 +2581,18 @@ input[type="range"].range-lg::-moz-range-thumb { margin-bottom: calc(0px * var(--tw-space-y-reverse)); } -.space-x-4 > :not([hidden]) ~ :not([hidden]) { - --tw-space-x-reverse: 0; - margin-right: calc(1rem * var(--tw-space-x-reverse)); - margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse))); -} - .space-x-2 > :not([hidden]) ~ :not([hidden]) { --tw-space-x-reverse: 0; margin-right: calc(0.5rem * var(--tw-space-x-reverse)); margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse))); } +.space-x-4 > :not([hidden]) ~ :not([hidden]) { + --tw-space-x-reverse: 0; + margin-right: calc(1rem * var(--tw-space-x-reverse)); + margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse))); +} + .space-x-3 > :not([hidden]) ~ :not([hidden]) { --tw-space-x-reverse: 0; margin-right: calc(0.75rem * var(--tw-space-x-reverse)); @@ -4108,6 +4113,10 @@ input[type="range"].range-lg::-moz-range-thumb { text-align: justify; } +.text-start { + text-align: start; +} + .text-xl { font-size: 1.25rem; line-height: 1.75rem; @@ -5612,12 +5621,6 @@ svg.apply-fill path { /************************* LEGACY MARKER - CLEANUP BELOW ********************************/ -.slideshow-item img { - /* Legacy: should be replace when the image element is ported to Svelte*/ - height: var(--image-carousel-height); - width: unset; -} - .animate-height { /* Legacy: should be replaced by headlessui disclosure in time */ transition: max-height 0.5s ease-in-out; diff --git a/scripts/ImgurToPanoramax.ts b/scripts/ImgurToPanoramax.ts new file mode 100644 index 000000000..314c26835 --- /dev/null +++ b/scripts/ImgurToPanoramax.ts @@ -0,0 +1,183 @@ +import Script from "./Script" +import { Overpass } from "../src/Logic/Osm/Overpass" +import { RegexTag } from "../src/Logic/Tags/RegexTag" +import Constants from "../src/Models/Constants" +import { BBox } from "../src/Logic/BBox" +import { existsSync, readFileSync, writeFileSync } from "fs" +import { PanoramaxUploader } from "../src/Logic/ImageProviders/Panoramax" +import { Feature } from "geojson" +import { LicenseInfo } from "../src/Logic/ImageProviders/LicenseInfo" +import { GeoOperations } from "../src/Logic/GeoOperations" +import { Tag } from "../src/Logic/Tags/Tag" +import { Utils } from "../src/Utils" +import ChangeTagAction from "../src/Logic/Osm/Actions/ChangeTagAction" +import { And } from "../src/Logic/Tags/And" +import { Changes } from "../src/Logic/Osm/Changes" +import { ChangeDescription } from "../src/Logic/Osm/Actions/ChangeDescription" +import OsmObjectDownloader from "../src/Logic/Osm/OsmObjectDownloader" +import { OsmObject } from "../src/Logic/Osm/OsmObject" +import { createReadStream } from "node:fs" +import { File } from "buffer" +import { open } from "node:fs/promises" +import { UploadableTag } from "../src/Logic/Tags/TagTypes" + +export class ImgurToPanoramax extends Script { + private readonly panoramax = new PanoramaxUploader( + Constants.panoramax.url, + Constants.panoramax.token + ) + + private readonly alreadyUploaded: Record = {} + + private _imageDirectory: string + private _licenseDirectory: string + + private readonly sequenceIds = { + test: "7f34cf53-27ff-46c9-ac22-78511fa8457a", + cc0: "f0d6f78a-ff95-4db1-8494-6eb44a17bb37", + ccby: "288a8052-b475-422c-811a-4f6f1a00015e", + ccbysa: "f3d02893-b4c1-4cd6-8b27-e27ab57eb59a", + } as const + + constructor() { + super( + "Queries OSM for 'imgur'-images, uploads them to Panoramax and creates a changeset to update OSM" + ) + } + + async uploadImage( + key: string, + feat: Feature, + sequences: { + id: string + "stats:items": { count: number } + }[] + ): Promise { + const v = feat.properties[key] + if (!v) { + return undefined + } + const imageHash = v.split("/").at(-1).split(".").at(0) + + if (this.alreadyUploaded[imageHash]) { + const panohash = this.alreadyUploaded[imageHash] + return new And([new Tag(key.replace("image", panohash), panohash), new Tag(key, "")]) + } + + let path: string = undefined + if (existsSync(this._imageDirectory + "/" + imageHash + ".jpg")) { + path = this._imageDirectory + "/" + imageHash + ".jpg" + } else if (existsSync(this._imageDirectory + "/" + imageHash + ".jpeg")) { + path = this._imageDirectory + "/" + imageHash + ".jpeg" + } + if (!path) { + return undefined + } + const licensePath = + this._licenseDirectory + "/" + v.replaceAll(/[^a-zA-Z0-9]/g, "_") + ".json" + if (!existsSync(licensePath)) { + return undefined + } + const licenseText: LicenseInfo = JSON.parse(readFileSync(licensePath, "utf8")) + if (!licenseText.licenseShortName) { + console.log("No license found for", path, licenseText) + return undefined + } + const license = licenseText.licenseShortName.toLowerCase().split(" ")[0].replace(/-/g, "") + const sequence = this.sequenceIds[license] + const author = licenseText.artist + + const handle = await open(path) + + const stat = await handle.stat() + + class MyFile extends File { + // we should set correct size + // otherwise we will encounter UND_ERR_REQ_CONTENT_LENGTH_MISMATCH + size = stat.size + stream = undefined + } + + const file = new MyFile([], path) + + file.stream = function () { + return handle.readableWebStream() + } + + console.log("Uploading", imageHash, sequence) + const result = await this.panoramax.uploadImage( + file, + GeoOperations.centerpointCoordinates(feat), + author, + true, + sequence + ) + this.alreadyUploaded[imageHash] = result.value + await handle.close() + return new And([new Tag(key.replace("image", result.key), result.value), new Tag(key, "")]) + } + + async main(args: string[]): Promise { + this._imageDirectory = args[0] ?? "/home/pietervdvn/data/imgur-image-backup" + this._licenseDirectory = args[1] ?? "/home/pietervdvn/git/MapComplete-data/ImageLicenseInfo" + + const bounds = new BBox([ + [3.6984301050112833, 51.06715570450848], + [3.7434328399847914, 51.039379568816145], + ]) + const maxcount = 500 + const filter = new RegexTag("image", /^https:\/\/i.imgur.com\/.*/) + const overpass = new Overpass(filter, [], Constants.defaultOverpassUrls[0]) + const features = (await overpass.queryGeoJson(bounds))[0].features + + let converted = 0 + + const pano = this.panoramax.panoramax + const sequences = await pano.mySequences() + const changes: ChangeDescription[] = [] + do { + const f = features.shift() + if (!f) { + break + } + + const changedTags: (UploadableTag | undefined)[] = [] + for (const k of ["image", "image:menu", "image:streetsign"]) { + changedTags.push(await this.uploadImage(k, f, sequences)) + for (let i = 0; i < 20; i++) { + changedTags.push(await this.uploadImage(k + ":" + i, f, sequences)) + } + } + const action = new ChangeTagAction( + f.properties.id, + new And(Utils.NoNull(changedTags)), + f.properties, + { + theme: "image-mover", + changeType: "link-image", + } + ) + changes.push(...(await action.CreateChangeDescriptions())) + converted++ + } while (converted < maxcount) + + const modif: string[] = Utils.Dedup(changes.map((ch) => ch.type + "/" + ch.id)) + const modifiedObjectsFresh = ( + ( + await Promise.all( + modif.map((id) => new OsmObjectDownloader().DownloadObjectAsync(id)) + ) + ).filter((m) => m !== "deleted") + ) + const modifiedObjects = Changes.createChangesetObjectsStatic( + changes, + modifiedObjectsFresh, + false, + [] + ) + const cs = Changes.buildChangesetXML("0", modifiedObjects) + writeFileSync("imgur_to_panoramax.osc", cs, "utf8") + } +} + +new ImgurToPanoramax().run() diff --git a/scripts/Script.ts b/scripts/Script.ts index ee71041a9..b8fb4f400 100644 --- a/scripts/Script.ts +++ b/scripts/Script.ts @@ -24,7 +24,7 @@ export default abstract class Script { }) .catch((e) => { console.log(`ERROR in script ${process.argv[1]}:`, e) - // process.exit(1) + // process.exit(1) }) } diff --git a/scripts/ScriptUtils.ts b/scripts/ScriptUtils.ts index 7eb369a3a..66ca1e815 100644 --- a/scripts/ScriptUtils.ts +++ b/scripts/ScriptUtils.ts @@ -2,7 +2,7 @@ import * as fs from "fs" import { existsSync, lstatSync, readdirSync, readFileSync } from "fs" import { Utils } from "../src/Utils" import { https } from "follow-redirects" -import { LayoutConfigJson } from "../src/Models/ThemeConfig/Json/LayoutConfigJson" +import { ThemeConfigJson } from "../src/Models/ThemeConfig/Json/ThemeConfigJson" import { LayerConfigJson } from "../src/Models/ThemeConfig/Json/LayerConfigJson" import xml2js from "xml2js" @@ -105,14 +105,15 @@ export default class ScriptUtils { const specialfiles = ["./assets/themes/mapcomplete-changes/mapcomplete-changes.proto.json"] const blacklist = ["assets/themes/mapcomplete-changes/mapcomplete-changes.json"] - const filtered = normalFiles.filter(path => !blacklist.some(black => path.endsWith(black))) + const filtered = normalFiles.filter( + (path) => !blacklist.some((black) => path.endsWith(black)) + ) return filtered.concat(specialfiles) - } public static getThemeFiles(useTranslationPaths = false): { - parsed: LayoutConfigJson; - path: string; + parsed: ThemeConfigJson + path: string raw: string }[] { return this.getThemePaths(useTranslationPaths).map((path) => { @@ -209,17 +210,17 @@ export default class ScriptUtils { path: urlObj.pathname + urlObj.search, port: urlObj.port, - headers: headers + headers: headers, }, (res) => { const parts: string[] = [] res.setEncoding("utf8") - res.on("data", function(chunk) { + res.on("data", function (chunk) { // @ts-ignore parts.push(chunk) }) - res.addListener("end", function() { + res.addListener("end", function () { if (res.statusCode === 301 || res.statusCode === 302) { console.log("Got a redirect:", res.headers.location) resolve({ redirect: res.headers.location }) @@ -237,7 +238,7 @@ export default class ScriptUtils { }) } ) - request.on("error", function(e) { + request.on("error", function (e) { reject(e) }) } catch (e) { diff --git a/scripts/downloadEli.ts b/scripts/downloadEli.ts index 8a56dd982..68abee9d0 100644 --- a/scripts/downloadEli.ts +++ b/scripts/downloadEli.ts @@ -13,10 +13,13 @@ class DownloadEli extends Script { const url = "https://osmlab.github.io/editor-layer-index/imagery.geojson" // Target should use '.json' instead of '.geojson', as the latter cannot be imported by the build systems const target = args[0] ?? "public/assets/data/editor-layer-index.json" + const targetGlobal = args[1] ?? "src/assets/generated/editor-layer-index-global.json" + const targetBing = args[0] ?? "src/assets/bing.json" const eli: Eli = await Utils.downloadJson(url) const keptLayers: EliEntry[] = [] + const keptGlobalLayers: EliEntry[] = [] console.log("Got", eli.features.length, "ELI-entries") for (let layer of eli.features) { const props = layer.properties @@ -95,18 +98,23 @@ class DownloadEli extends Script { } layer = { properties: layer.properties, type: layer.type, geometry: layer.geometry } - keptLayers.push(layer) + if (layer.geometry === null) { + keptGlobalLayers.push(layer) + } else { + keptLayers.push(layer) + } } const contents = '{"type":"FeatureCollection",\n "features": [\n' + - keptLayers - .filter((l) => l.properties.id !== "Bing") - .map((l) => JSON.stringify(l)) - .join(",\n") + + keptLayers.map((l) => JSON.stringify(l)).join(",\n") + "\n]}" - const bing = keptLayers.find((l) => l.properties.id === "Bing") + const contentsGlobal = keptGlobalLayers + .filter((l) => l.properties.id !== "Bing") + .map((l) => l.properties) + + const bing = keptGlobalLayers.find((l) => l.properties.id === "Bing") if (bing) { fs.writeFileSync(targetBing, JSON.stringify(bing), { encoding: "utf8" }) console.log("Written", targetBing) @@ -115,6 +123,10 @@ class DownloadEli extends Script { } fs.writeFileSync(target, contents, { encoding: "utf8" }) console.log("Written", keptLayers.length + ", entries to the ELI") + fs.writeFileSync(targetGlobal, JSON.stringify(contentsGlobal, null, " "), { + encoding: "utf8", + }) + console.log("Written", keptGlobalLayers.length + ", entries to the global ELI") } } diff --git a/scripts/fetchLanguages.ts b/scripts/fetchLanguages.ts index 25b51fa38..e01558500 100644 --- a/scripts/fetchLanguages.ts +++ b/scripts/fetchLanguages.ts @@ -46,7 +46,9 @@ async function fetchRegularLanguages() { const url = Wikidata.wds.sparqlQuery(sparql) // request the generated URL with your favorite HTTP request library - const result = await Utils.downloadJson<{results: {bindings: any[]}}>(url, { "User-Agent": "MapComplete script" }) + const result = await Utils.downloadJson<{ results: { bindings: any[] } }>(url, { + "User-Agent": "MapComplete script", + }) const bindings = result.results.bindings // Traditional chinese = 繁體中文 or 正體中文 @@ -98,7 +100,9 @@ async function fetchSpecial(id: number, code: string): Promise(url, { "User-Agent": "MapComplete script" }) + const result = await Utils.downloadJson<{ results: { bindings: any[] } }>(url, { + "User-Agent": "MapComplete script", + }) const bindings = result.results.bindings bindings.forEach((binding) => (binding["code"] = { value: code })) return bindings @@ -134,7 +138,9 @@ async function getOfficialLanguagesPerCountry(): Promise> }` const url = Wikidata.wds.sparqlQuery(sparql) - const result = await Utils.downloadJson<{results: {bindings: any[]}}>(url, { "User-Agent": "MapComplete script" }) + const result = await Utils.downloadJson<{ results: { bindings: any[] } }>(url, { + "User-Agent": "MapComplete script", + }) const bindings: { countryCode: { value: string }; languageCode: { value: string } }[] = result.results.bindings for (const binding of bindings) { diff --git a/scripts/generateDocs.ts b/scripts/generateDocs.ts index 8e5330dd0..ccdda66c8 100644 --- a/scripts/generateDocs.ts +++ b/scripts/generateDocs.ts @@ -8,7 +8,7 @@ import QueryParameterDocumentation from "../src/UI/QueryParameterDocumentation" import ScriptUtils from "./ScriptUtils" import Translations from "../src/UI/i18n/Translations" import themeOverview from "../src/assets/generated/theme_overview.json" -import LayoutConfig from "../src/Models/ThemeConfig/LayoutConfig" +import ThemeConfig from "../src/Models/ThemeConfig/ThemeConfig" import bookcases from "../src/assets/generated/themes/bookcases.json" import fakedom from "fake-dom" import unit from "../src/assets/generated/layers/unit.json" @@ -253,7 +253,7 @@ export class GenerateDocs extends Script { } private generateHotkeyDocs() { - new ThemeViewState(new LayoutConfig(bookcases), new Set()) + new ThemeViewState(new ThemeConfig(bookcases), new Set()) this.WriteMarkdownFile("./Docs/Hotkeys.md", Hotkeys.generateDocumentation(), [ "src/UI/Base/Hotkeys.ts", ]) @@ -455,13 +455,10 @@ export class GenerateDocs extends Script { ) } - private generateForTheme(theme: LayoutConfig): void { + private generateForTheme(theme: ThemeConfig): void { const allLayers = AllSharedLayers.getSharedLayersConfigs() const layersToShow = theme.layers.filter( - (l) => - !l.id.startsWith("note_import_") && - l.id !== "favourite" && - Constants.added_by_default.indexOf(l.id) < 0 + (l) => l.id !== "favourite" && Constants.added_by_default.indexOf(l.id) < 0 ) const layersToInline = layersToShow.filter((l) => !allLayers.has(l.id)) const el = [ diff --git a/scripts/generateLayerOverview.ts b/scripts/generateLayerOverview.ts index fdc973b46..74cfa9a43 100644 --- a/scripts/generateLayerOverview.ts +++ b/scripts/generateLayerOverview.ts @@ -1,7 +1,7 @@ import ScriptUtils from "./ScriptUtils" import { existsSync, mkdirSync, readFileSync, statSync, writeFileSync } from "fs" import licenses from "../src/assets/generated/license_info.json" -import { LayoutConfigJson } from "../src/Models/ThemeConfig/Json/LayoutConfigJson" +import { ThemeConfigJson } from "../src/Models/ThemeConfig/Json/ThemeConfigJson" import { LayerConfigJson } from "../src/Models/ThemeConfig/Json/LayerConfigJson" import Constants from "../src/Models/Constants" import { @@ -29,14 +29,12 @@ import LayerConfig from "../src/Models/ThemeConfig/LayerConfig" import PointRenderingConfig from "../src/Models/ThemeConfig/PointRenderingConfig" import { ConversionContext } from "../src/Models/ThemeConfig/Conversion/ConversionContext" import { GenerateFavouritesLayer } from "./generateFavouritesLayer" -import LayoutConfig, { MinimalLayoutInformation } from "../src/Models/ThemeConfig/LayoutConfig" +import ThemeConfig, { MinimalThemeInformation } from "../src/Models/ThemeConfig/ThemeConfig" import Translations from "../src/UI/i18n/Translations" import { Translatable } from "../src/Models/ThemeConfig/Json/Translatable" import { ValidateThemeAndLayers } from "../src/Models/ThemeConfig/Conversion/ValidateThemeAndLayers" import { ExtractImages } from "../src/Models/ThemeConfig/Conversion/FixImages" -import { - TagRenderingConfigJson, -} from "../src/Models/ThemeConfig/Json/TagRenderingConfigJson" +import { TagRenderingConfigJson } from "../src/Models/ThemeConfig/Json/TagRenderingConfigJson" // This scripts scans 'src/assets/layers/*.json' for layer definition files and 'src/assets/themes/*.json' for theme definition files. // It spits out an overview of those to be used to load them @@ -59,7 +57,7 @@ class ParseLayer extends Conversion< convert( path: string, - context: ConversionContext, + context: ConversionContext ): { parsed: LayerConfig raw: LayerConfigJson @@ -88,7 +86,7 @@ class ParseLayer extends Conversion< context .enter("source") .err( - "No source is configured. (Tags might be automatically derived if presets are given)", + "No source is configured. (Tags might be automatically derived if presets are given)" ) return undefined } @@ -119,7 +117,7 @@ class AddIconSummary extends DesugaringStep<{ raw: LayerConfigJson; parsed: Laye const fixed = json.raw const layerConfig = json.parsed const pointRendering: PointRenderingConfig = layerConfig.mapRendering.find((pr) => - pr.location.has("point"), + pr.location.has("point") ) const defaultTags = layerConfig.GetBaseTags() fixed["_layerIcon"] = Utils.NoNull( @@ -134,7 +132,7 @@ class AddIconSummary extends DesugaringStep<{ raw: LayerConfigJson; parsed: Laye result["color"] = c } return result - }), + }) ) return { raw: fixed, parsed: layerConfig } } @@ -148,15 +146,15 @@ class LayerOverviewUtils extends Script { super("Reviews and generates the compiled themes") } - private static publicLayerIdsFrom(themefiles: LayoutConfigJson[]): Set { + private static publicLayerIdsFrom(themefiles: ThemeConfigJson[]): Set { const publicThemes = [].concat(...themefiles.filter((th) => !th.hideFromOverview)) return new Set([].concat(...publicThemes.map((th) => this.extractLayerIdsFrom(th)))) } private static extractLayerIdsFrom( - themeFile: LayoutConfigJson, - includeInlineLayers = true, + themeFile: ThemeConfigJson, + includeInlineLayers = true ): string[] { const publicLayerIds: string[] = [] if (!Array.isArray(themeFile.layers)) { @@ -211,11 +209,14 @@ class LayerOverviewUtils extends Script { return false } - static mergeKeywords(into: Record, source: Readonly>){ + static mergeKeywords( + into: Record, + source: Readonly> + ) { for (const key in source) { - if(into[key]){ + if (into[key]) { into[key].push(...source[key]) - }else{ + } else { into[key] = source[key] } } @@ -225,13 +226,13 @@ class LayerOverviewUtils extends Script { const keywords: Record = {} function addWord(language: string, word: string | string[]) { - if(Array.isArray(word)){ - word.forEach(w => addWord(language, w)) + if (Array.isArray(word)) { + word.forEach((w) => addWord(language, w)) return } word = Utils.SubstituteKeys(word, {})?.trim() - if(!word){ + if (!word) { return } if (!keywords[language]) { @@ -240,8 +241,10 @@ class LayerOverviewUtils extends Script { keywords[language].push(word) } - function addWords(tr: string | Record | Record | TagRenderingConfigJson) { - if(!tr){ + function addWords( + tr: string | Record | Record | TagRenderingConfigJson + ) { + if (!tr) { return } if (typeof tr === "string") { @@ -283,35 +286,30 @@ class LayerOverviewUtils extends Script { | LayerConfigJson | string | { - builtin - } - )[] + builtin + } + )[] }[], sharedLayers: Map ) { - const layerKeywords : Record> = {} + const layerKeywords: Record> = {} sharedLayers.forEach((layer, id) => { - layerKeywords[id] = this.layerKeywords(layer) + layerKeywords[id] = this.layerKeywords(layer) }) - const perId = new Map() + const perId = new Map() for (const theme of themes) { - const keywords: Record = {} for (const layer of theme.layers ?? []) { const l = layer - if(sharedLayers.has(l.id)){ - continue - } - if(l.id.startsWith("note_import")){ + if (sharedLayers.has(l.id)) { continue } LayerOverviewUtils.mergeKeywords(keywords, this.layerKeywords(l)) - } - const data = { + const data = { id: theme.id, title: theme.title, shortDescription: LayerOverviewUtils.cleanTranslation(theme.shortDescription), @@ -319,7 +317,7 @@ class LayerOverviewUtils extends Script { hideFromOverview: theme.hideFromOverview, mustHaveLanguage: theme.mustHaveLanguage, keywords, - layers: theme.layers.filter(l => sharedLayers.has(l["id"])).map(l => l["id"]) + layers: theme.layers.filter((l) => sharedLayers.has(l["id"])).map((l) => l["id"]), } perId.set(theme.id, data) } @@ -341,11 +339,11 @@ class LayerOverviewUtils extends Script { writeFileSync( "./src/assets/generated/theme_overview.json", JSON.stringify({ layers: layerKeywords, themes: sorted }, null, " "), - { encoding: "utf8" }, + { encoding: "utf8" } ) } - writeTheme(theme: LayoutConfigJson) { + writeTheme(theme: ThemeConfigJson) { if (!existsSync(LayerOverviewUtils.themePath)) { mkdirSync(LayerOverviewUtils.themePath) } @@ -353,7 +351,7 @@ class LayerOverviewUtils extends Script { writeFileSync( `${LayerOverviewUtils.themePath}${theme.id}.json`, JSON.stringify(theme, null, " "), - { encoding: "utf8" }, + { encoding: "utf8" } ) } @@ -364,12 +362,12 @@ class LayerOverviewUtils extends Script { writeFileSync( `${LayerOverviewUtils.layerPath}${layer.id}.json`, JSON.stringify(layer, null, " "), - { encoding: "utf8" }, + { encoding: "utf8" } ) } static asDict( - trs: QuestionableTagRenderingConfigJson[], + trs: QuestionableTagRenderingConfigJson[] ): Map { const d = new Map() for (const tr of trs) { @@ -382,12 +380,12 @@ class LayerOverviewUtils extends Script { getSharedTagRenderings( doesImageExist: DoesImageExist, bootstrapTagRenderings: Map, - bootstrapTagRenderingsOrder: string[], + bootstrapTagRenderingsOrder: string[] ): QuestionableTagRenderingConfigJson[] getSharedTagRenderings( doesImageExist: DoesImageExist, bootstrapTagRenderings: Map = null, - bootstrapTagRenderingsOrder: string[] = [], + bootstrapTagRenderingsOrder: string[] = [] ): QuestionableTagRenderingConfigJson[] { const prepareLayer = new PrepareLayer( { @@ -398,7 +396,7 @@ class LayerOverviewUtils extends Script { }, { addTagRenderingsToContext: true, - }, + } ) const path = "assets/layers/questions/questions.json" @@ -418,7 +416,7 @@ class LayerOverviewUtils extends Script { return this.getSharedTagRenderings( doesImageExist, dict, - sharedQuestions.tagRenderings.map((tr) => tr["id"]), + sharedQuestions.tagRenderings.map((tr) => tr["id"]) ) } @@ -458,8 +456,8 @@ class LayerOverviewUtils extends Script { if (contents.indexOf(" 0) { console.warn( "The SVG at " + - path + - " contains a `text`-tag. This is highly discouraged. Every machine viewing your theme has their own font libary, and the font you choose might not be present, resulting in a different font being rendered. Solution: open your .svg in inkscape (or another program), select the text and convert it to a path", + path + + " contains a `text`-tag. This is highly discouraged. Every machine viewing your theme has their own font libary, and the font you choose might not be present, resulting in a different font being rendered. Solution: open your .svg in inkscape (or another program), select the text and convert it to a path" ) errCount++ } @@ -475,14 +473,14 @@ class LayerOverviewUtils extends Script { args .find((a) => a.startsWith("--themes=")) ?.substring("--themes=".length) - ?.split(",") ?? [], + ?.split(",") ?? [] ) const layerWhitelist = new Set( args .find((a) => a.startsWith("--layers=")) ?.substring("--layers=".length) - ?.split(",") ?? [], + ?.split(",") ?? [] ) const forceReload = args.some((a) => a == "--force") @@ -504,8 +502,8 @@ class LayerOverviewUtils extends Script { priviliged.delete("last_click") priviliged.delete("search") - const isBoostrapping = AllSharedLayers.getSharedLayersConfigs().size == 0 - if (!isBoostrapping && priviliged.size > 0) { + const isBoostrapping = AllSharedLayers.getSharedLayersConfigs().size == 0 + if (!isBoostrapping && priviliged.size > 0) { throw ( "Priviliged layer " + Array.from(priviliged).join(", ") + @@ -518,11 +516,11 @@ class LayerOverviewUtils extends Script { sharedLayers, recompiledThemes, forceReload, - themeWhitelist, + themeWhitelist ) new ValidateThemeEnsemble().convertStrict( - Array.from(sharedThemes.values()).map((th) => new LayoutConfig(th, true)), + Array.from(sharedThemes.values()).map((th) => new ThemeConfig(th, true)) ) if (recompiledThemes.length > 0) { @@ -530,7 +528,7 @@ class LayerOverviewUtils extends Script { "./src/assets/generated/known_layers.json", JSON.stringify({ layers: Array.from(sharedLayers.values()).filter((l) => l.id !== "favourite"), - }), + }) ) } @@ -548,10 +546,10 @@ class LayerOverviewUtils extends Script { if: "theme=" + th.id, then: th.icon, })) - const proto: LayoutConfigJson = JSON.parse( + const proto: ThemeConfigJson = JSON.parse( readFileSync("./assets/themes/mapcomplete-changes/mapcomplete-changes.proto.json", { encoding: "utf8", - }), + }) ) const protolayer = ( proto.layers.filter((l) => l["id"] === "mapcomplete-changes")[0] @@ -568,12 +566,12 @@ class LayerOverviewUtils extends Script { layers: ScriptUtils.getLayerFiles().map((f) => f.parsed), themes: ScriptUtils.getThemeFiles().map((f) => f.parsed), }, - ConversionContext.construct([], []), + ConversionContext.construct([], []) ) for (const [_, theme] of sharedThemes) { theme.layers = theme.layers.filter( - (l) => Constants.added_by_default.indexOf(l["id"]) < 0, + (l) => Constants.added_by_default.indexOf(l["id"]) < 0 ) } @@ -582,7 +580,7 @@ class LayerOverviewUtils extends Script { "./src/assets/generated/known_themes.json", JSON.stringify({ themes: Array.from(sharedThemes.values()), - }), + }) ) } @@ -594,7 +592,7 @@ class LayerOverviewUtils extends Script { private parseLayer( doesImageExist: DoesImageExist, prepLayer: PrepareLayer, - sharedLayerPath: string, + sharedLayerPath: string ): { raw: LayerConfigJson parsed: LayerConfig @@ -605,7 +603,7 @@ class LayerOverviewUtils extends Script { const parsed = parser.convertStrict(sharedLayerPath, context) const result = AddIconSummary.singleton.convertStrict( parsed, - context.inOperation("AddIconSummary"), + context.inOperation("AddIconSummary") ) return { ...result, context } } @@ -613,7 +611,7 @@ class LayerOverviewUtils extends Script { private buildLayerIndex( doesImageExist: DoesImageExist, forceReload: boolean, - whitelist: Set, + whitelist: Set ): Map { // First, we expand and validate all builtin layers. These are written to src/assets/generated/layers // At the same time, an index of available layers is built. @@ -668,17 +666,17 @@ class LayerOverviewUtils extends Script { console.log( "Recompiled layers " + - recompiledLayers.join(", ") + - " and skipped " + - skippedLayers.length + - " layers. Detected " + - warningCount + - " warnings", + recompiledLayers.join(", ") + + " and skipped " + + skippedLayers.length + + " layers. Detected " + + warningCount + + " warnings" ) // We always need the calculated tags of 'usersettings', so we export them separately this.extractJavascriptCodeForLayer( state.sharedLayers.get("usersettings"), - "./src/Logic/State/UserSettingsMetaTagging.ts", + "./src/Logic/State/UserSettingsMetaTagging.ts" ) return sharedLayers @@ -692,11 +690,11 @@ class LayerOverviewUtils extends Script { * @param themeFile * @private */ - private extractJavascriptCode(themeFile: LayoutConfigJson) { + private extractJavascriptCode(themeFile: ThemeConfigJson) { const allCode = [ "import {Feature} from 'geojson'", - "import { ExtraFuncType } from \"../../../Logic/ExtraFunctions\";", - "import { Utils } from \"../../../Utils\"", + 'import { ExtraFuncType } from "../../../Logic/ExtraFunctions";', + 'import { Utils } from "../../../Utils"', "export class ThemeMetaTagging {", " public static readonly themeName = " + JSON.stringify(themeFile.id), "", @@ -708,8 +706,8 @@ class LayerOverviewUtils extends Script { allCode.push( " public metaTaggging_for_" + - id + - "(feat: Feature, helperFunctions: Record Function>) {", + id + + "(feat: Feature, helperFunctions: Record Function>) {" ) allCode.push(" const {" + ExtraFunctions.types.join(", ") + "} = helperFunctions") for (const line of code) { @@ -720,10 +718,10 @@ class LayerOverviewUtils extends Script { if (!isStrict) { allCode.push( " Utils.AddLazyProperty(feat.properties, '" + - attributeName + - "', () => " + - expression + - " ) ", + attributeName + + "', () => " + + expression + + " ) " ) } else { attributeName = attributeName.substring(0, attributeName.length - 1).trim() @@ -768,7 +766,7 @@ class LayerOverviewUtils extends Script { const code = l.calculatedTags ?? [] allCode.push( - " public metaTaggging_for_" + l.id + "(feat: {properties: Record}) {", + " public metaTaggging_for_" + l.id + "(feat: {properties: Record}) {" ) for (const line of code) { const firstEq = line.indexOf("=") @@ -778,10 +776,10 @@ class LayerOverviewUtils extends Script { if (!isStrict) { allCode.push( " Utils.AddLazyProperty(feat.properties, '" + - attributeName + - "', () => " + - expression + - " ) ", + attributeName + + "', () => " + + expression + + " ) " ) } else { attributeName = attributeName.substring(0, attributeName.length - 2).trim() @@ -806,14 +804,14 @@ class LayerOverviewUtils extends Script { sharedLayers: Map, recompiledThemes: string[], forceReload: boolean, - whitelist: Set, - ): Map { + whitelist: Set + ): Map { console.log(" ---------- VALIDATING BUILTIN THEMES ---------") const themeFiles = ScriptUtils.getThemeFiles() - const fixed = new Map() + const fixed = new Map() const publicLayers = LayerOverviewUtils.publicLayerIdsFrom( - themeFiles.map((th) => th.parsed), + themeFiles.map((th) => th.parsed) ) const trs = this.getSharedTagRenderings(new DoesImageExist(licensePaths, existsSync)) @@ -853,15 +851,15 @@ class LayerOverviewUtils extends Script { LayerOverviewUtils.themePath + "/" + themePath.substring(themePath.lastIndexOf("/")) const usedLayers = Array.from( - LayerOverviewUtils.extractLayerIdsFrom(themeFile, false), + LayerOverviewUtils.extractLayerIdsFrom(themeFile, false) ).map((id) => LayerOverviewUtils.layerPath + id + ".json") if (!forceReload && !this.shouldBeUpdated([themePath, ...usedLayers], targetPath)) { fixed.set( themeFile.id, JSON.parse( - readFileSync(LayerOverviewUtils.themePath + themeFile.id + ".json", "utf8"), - ), + readFileSync(LayerOverviewUtils.themePath + themeFile.id + ".json", "utf8") + ) ) ScriptUtils.erasableLog("Skipping", themeFile.id) skippedThemes.push(themeFile.id) @@ -872,23 +870,23 @@ class LayerOverviewUtils extends Script { new PrevalidateTheme().convertStrict( themeFile, - ConversionContext.construct([themePath], ["PrepareLayer"]), + ConversionContext.construct([themePath], ["PrepareLayer"]) ) try { themeFile = new PrepareTheme(convertState, { skipDefaultLayers: true, }).convertStrict( themeFile, - ConversionContext.construct([themePath], ["PrepareLayer"]), + ConversionContext.construct([themePath], ["PrepareLayer"]) ) new ValidateThemeAndLayers( new DoesImageExist(licensePaths, existsSync, knownTagRenderings), themePath, true, - knownTagRenderings, + knownTagRenderings ).convertStrict( themeFile, - ConversionContext.construct([themePath], ["PrepareLayer"]), + ConversionContext.construct([themePath], ["PrepareLayer"]) ) if (themeFile.icon.endsWith(".svg")) { @@ -938,7 +936,7 @@ class LayerOverviewUtils extends Script { const usedImages = Utils.Dedup( new ExtractImages(true, knownTagRenderings) .convertStrict(themeFile) - .map((x) => x.path), + .map((x) => x.path) ) usedImages.sort() @@ -957,7 +955,7 @@ class LayerOverviewUtils extends Script { if (whitelist.size == 0) { this.writeSmallOverview( Array.from(fixed.values()).map((t) => { - return { + return { ...t, hideFromOverview: t.hideFromOverview ?? false, shortDescription: @@ -971,10 +969,10 @@ class LayerOverviewUtils extends Script { console.log( "Recompiled themes " + - recompiledThemes.join(", ") + - " and skipped " + - skippedThemes.length + - " themes", + recompiledThemes.join(", ") + + " and skipped " + + skippedThemes.length + + " themes" ) return fixed diff --git a/scripts/generateLayouts.ts b/scripts/generateLayouts.ts index fb57fc760..e2c03c16c 100644 --- a/scripts/generateLayouts.ts +++ b/scripts/generateLayouts.ts @@ -3,23 +3,30 @@ import Locale from "../src/UI/i18n/Locale" import Translations from "../src/UI/i18n/Translations" import { Translation } from "../src/UI/i18n/Translation" import all_known_layouts from "../src/assets/generated/known_themes.json" -import { LayoutConfigJson } from "../src/Models/ThemeConfig/Json/LayoutConfigJson" -import LayoutConfig from "../src/Models/ThemeConfig/LayoutConfig" +import { ThemeConfigJson } from "../src/Models/ThemeConfig/Json/ThemeConfigJson" +import ThemeConfig from "../src/Models/ThemeConfig/ThemeConfig" import xml2js from "xml2js" import ScriptUtils from "./ScriptUtils" import { Utils } from "../src/Utils" import SpecialVisualizations from "../src/UI/SpecialVisualizations" import Constants from "../src/Models/Constants" -import { AvailableRasterLayers, RasterLayerPolygon } from "../src/Models/RasterLayers" +import { + AvailableRasterLayers, + EditorLayerIndexProperties, + RasterLayerPolygon, +} from "../src/Models/RasterLayers" import { ImmutableStore } from "../src/Logic/UIEventSource" import * as eli from "../public/assets/data/editor-layer-index.json" -import * as eli_global from "../src/assets/global-raster-layers.json" +import * as layers_global from "../src/assets/global-raster-layers.json" +import eli_global from "../src/assets/generated/editor-layer-index-global.json" +import bing from "../src/assets/bing.json" + import ValidationUtils from "../src/Models/ThemeConfig/Conversion/ValidationUtils" import { LayerConfigJson } from "../src/Models/ThemeConfig/Json/LayerConfigJson" import { QuestionableTagRenderingConfigJson } from "../src/Models/ThemeConfig/Json/QuestionableTagRenderingConfigJson" import Script from "./Script" import crypto from "crypto" - +import { RasterLayerProperties } from "../src/Models/RasterLayerProperties" const sharp = require("sharp") class GenerateLayouts extends Script { @@ -100,7 +107,7 @@ class GenerateLayouts extends Script { return newname } - async createSocialImage(layout: LayoutConfig, template: "" | "Wide"): Promise { + async createSocialImage(layout: ThemeConfig, template: "" | "Wide"): Promise { if (!layout.icon.endsWith(".svg")) { console.warn( "Not creating a social image for " + @@ -160,7 +167,7 @@ class GenerateLayouts extends Script { } async createManifest( - layout: LayoutConfig, + layout: ThemeConfig, alreadyWritten: string[] ): Promise<{ manifest: any @@ -264,10 +271,12 @@ class GenerateLayouts extends Script { } const urls: string[] = [] const regex = /{switch:([^}]+)}/ - const rasterLayers = [ + const rasterLayers: { properties: RasterLayerProperties }[] = [ AvailableRasterLayers.defaultBackgroundLayer, ...eli.features, - ...eli_global.layers.map((properties) => ({ properties })), + bing, + ...eli_global.map((properties) => ({ properties })), + ...layers_global.layers.map((properties) => ({ properties })), ] for (const feature of rasterLayers) { const f = feature @@ -319,8 +328,8 @@ class GenerateLayouts extends Script { } async generateCsp( - layout: LayoutConfig, - layoutJson: LayoutConfigJson, + layout: ThemeConfig, + layoutJson: ThemeConfigJson, options: { scriptSrcs: string[] } @@ -331,7 +340,7 @@ class GenerateLayouts extends Script { "https://api.openstreetmap.org", "https://pietervdvn.goatcounter.com", "https://api.panoramax.xyz", - "https://panoramax.mapcomplete.org" + "https://panoramax.mapcomplete.org", ].concat(...(await this.eliUrls())) SpecialVisualizations.specialVisualizations.forEach((sv) => { @@ -441,8 +450,8 @@ class GenerateLayouts extends Script { } async createLandingPage( - layout: LayoutConfig, - layoutJson: LayoutConfigJson, + layout: ThemeConfig, + layoutJson: ThemeConfigJson, whiteIcons, alreadyWritten ) { @@ -456,7 +465,7 @@ class GenerateLayouts extends Script { .replace(/"/g, '\\"') let ogImage = layout.socialImage let twitterImage = ogImage - if (ogImage === LayoutConfig.defaultSocialImage && layout.official) { + if (ogImage === ThemeConfig.defaultSocialImage && layout.official) { try { ogImage = (await this.createSocialImage(layout, "")) ?? layout.socialImage twitterImage = (await this.createSocialImage(layout, "Wide")) ?? layout.socialImage @@ -573,7 +582,7 @@ class GenerateLayouts extends Script { ) } - async createIndexFor(theme: LayoutConfig) { + async createIndexFor(theme: ThemeConfig) { const filename = "index_" + theme.id + ".ts" const imports = [ @@ -628,18 +637,18 @@ class GenerateLayouts extends Script { "theme", ] // @ts-ignore - const all: LayoutConfigJson[] = all_known_layouts.themes + const all: ThemeConfigJson[] = all_known_layouts.themes const args = process.argv const theme = args[2] if (theme !== undefined) { console.warn("Only generating layout " + theme) } for (const i in all) { - const layoutConfigJson: LayoutConfigJson = all[i] + const layoutConfigJson: ThemeConfigJson = all[i] if (theme !== undefined && layoutConfigJson.id !== theme) { continue } - const layout = new LayoutConfig(layoutConfigJson, true) + const layout = new ThemeConfig(layoutConfigJson, true) const layoutName = layout.id if (blacklist.indexOf(layoutName.toLowerCase()) >= 0) { console.log(`Skipping a layout with name ${layoutName}, it is on the blacklist`) @@ -668,7 +677,7 @@ class GenerateLayouts extends Script { } const { manifest } = await this.createManifest( - new LayoutConfig({ + new ThemeConfig({ icon: "./assets/svg/mapcomplete_logo.svg", id: "index", layers: [], diff --git a/scripts/generateTaginfoProjectFiles.ts b/scripts/generateTaginfoProjectFiles.ts index e5ebe8882..5d1de6c16 100644 --- a/scripts/generateTaginfoProjectFiles.ts +++ b/scripts/generateTaginfoProjectFiles.ts @@ -2,7 +2,7 @@ import { AllKnownLayouts } from "../src/Customizations/AllKnownLayouts" import Locale from "../src/UI/i18n/Locale" import { Translation } from "../src/UI/i18n/Translation" import { readFileSync, writeFileSync } from "fs" -import LayoutConfig from "../src/Models/ThemeConfig/LayoutConfig" +import ThemeConfig from "../src/Models/ThemeConfig/ThemeConfig" import LayerConfig from "../src/Models/ThemeConfig/LayerConfig" import { Utils } from "../src/Utils" @@ -33,7 +33,7 @@ function generateTagOverview( return overview } -function generateLayerUsage(layer: LayerConfig, layout: LayoutConfig): any[] { +function generateLayerUsage(layer: LayerConfig, layout: ThemeConfig): any[] { if (layer.name === undefined) { return [] // Probably a duplicate or irrelevant layer } @@ -66,12 +66,14 @@ function generateLayerUsage(layer: LayerConfig, layout: LayoutConfig): any[] { const usesImageUpload = (tr.render?.txt?.indexOf("image_upload") ?? -2) > 0 if (usesImageCarousel || usesImageUpload) { - const descrNoUpload = `The layer '${layer.name.txt} shows images based on the keys image, image:0, image:1,... and wikidata, wikipedia, wikimedia_commons and mapillary` - const descrUpload = `The layer '${layer.name.txt} allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary` + const descrNoUpload = `The layer '${layer.name.txt} shows images based on the keys image, image:0, image:1,..., panoramax, panoramax:0, panoramx:1, ... , wikidata, wikipedia, wikimedia_commons and mapillary` + const descrUpload = `The layer '${layer.name.txt} 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` const descr = (usesImageUpload ? descrUpload : descrNoUpload) + condition result.push(generateTagOverview({ k: "image", v: undefined }, descr)) + result.push(generateTagOverview({ k: "panoramax", v: undefined }, descr)) + result.push(generateTagOverview({ k: "mapillary", v: undefined }, descr)) result.push(generateTagOverview({ k: "wikidata", v: undefined }, descr)) result.push(generateTagOverview({ k: "wikipedia", v: undefined }, descr)) @@ -124,7 +126,7 @@ function generateLayerUsage(layer: LayerConfig, layout: LayoutConfig): any[] { * Generates the JSON-object representing the theme for inclusion on taginfo * @param layout */ -function generateTagInfoEntry(layout: LayoutConfig): any { +function generateTagInfoEntry(layout: ThemeConfig): any { const usedTags = [] for (const layer of layout.layers) { if (layer.source === null) { @@ -204,6 +206,9 @@ function main() { if (layout.hideFromOverview) { continue } + if (layout.id === "personal") { + continue + } files.push(generateTagInfoEntry(layout)) } generateProjectsOverview(Utils.NoNull(files)) diff --git a/scripts/generateTranslations.ts b/scripts/generateTranslations.ts index 23097aaa6..b9c08b51e 100644 --- a/scripts/generateTranslations.ts +++ b/scripts/generateTranslations.ts @@ -49,7 +49,7 @@ class TranslationPart { } for (const translationsKey in translations) { const v = translations[translationsKey] - if(Array.isArray(v) && context .endsWith("keywords")){ + if (Array.isArray(v) && context.endsWith("keywords")) { continue } if (typeof v != "string") { diff --git a/scripts/handleErrors.ts b/scripts/handleErrors.ts index 8247e1175..ae5a43796 100644 --- a/scripts/handleErrors.ts +++ b/scripts/handleErrors.ts @@ -15,7 +15,7 @@ type ErrorMessage = { message: { stacktrace: string message: string - layout: string + theme: string version: string language: string username: string @@ -40,7 +40,7 @@ class HandleErrors extends Script { ) { console.log( parsed.message.username, - parsed.message.layout, + parsed.message.theme, parsed.message.message, parsed.date ) @@ -82,7 +82,7 @@ class HandleErrors extends Script { } = changesObj.CreateChangesetObjects(toUpload, objects, true) const changeset = Changes.buildChangesetXML("", changes) - const path = "error_changeset_" + parsed.index + "_" + e.layout + "_" + e.username + ".osc" + const path = "error_changeset_" + parsed.index + "_" + e.theme + "_" + e.username + ".osc" if ( changeset === `` diff --git a/scripts/moveImage.ts b/scripts/moveImage.ts new file mode 100644 index 000000000..989883eee --- /dev/null +++ b/scripts/moveImage.ts @@ -0,0 +1,91 @@ +import { existsSync, renameSync, readFileSync, writeFileSync } from "fs" +import SmallLicense from "../src/Models/smallLicense" + +/** + * Script to move/rename image files + * Useful after downloading images from wikimedia commons + * Apart from moving the image files, this will also update the license file + * + * This will NOT update any images in the theme + */ + +function main(args: string[]) { + // Check if the correct number of arguments are passed + if (args.length != 2) { + console.log("Usage: moveImage.ts oldPath newPath") + console.log("You passed in the arguments: " + args.join(",")) + console.log("Example: npx vite-node scripts/moveImage.ts images/old.jpg images/new.jpg") + return + } + const [oldPath, newPath] = args + + // Check if the oldPath exists + if (!existsSync(oldPath)) { + console.log("The oldPath does not exist: " + oldPath) + return + } + + // Move file + renameSync(oldPath, newPath) + + // If it exists also move the .license file + const oldLicensePath = oldPath + ".license" + if (existsSync(oldLicensePath)) { + const newLicensePath = newPath + ".license" + renameSync(oldLicensePath, newLicensePath) + } + + console.log("Moved file from " + oldPath + " to " + newPath) + + // Open license_info.json in the same directory as the old file + const licensePath = oldPath.replace(/\/[^/]+$/, "/license_info.json") + if (!existsSync(licensePath)) { + console.log( + "The license file does not exist: " + + licensePath + + ". Skipping writing to license file." + ) + return + } + + // Read license file + const licenseFile = readFileSync(licensePath, "utf8") + const licenseInfo = JSON.parse(licenseFile) as SmallLicense[] + + // Find correct license item + const licenseItem = licenseInfo.find((item) => item.path === oldPath.replace(/.*\//, "")) + + // Filter out license item + const newLicenseInfo = licenseInfo.filter((item) => item.path !== oldPath.replace(/.*\//, "")) + const newLicenseFile = JSON.stringify(newLicenseInfo, null, 2) + + // Write new license file + writeFileSync(licensePath, newLicenseFile) + + // Look for a license_info.json file in the new path + const newLicensePath = newPath.replace(/\/[^/]+$/, "/license_info.json") + if (!existsSync(newLicensePath) && licenseItem) { + console.log("License file doesn't exist yet, creating new one: " + newLicensePath) + + // Create new license item + const newLicenseItem = licenseItem + newLicenseItem.path = newPath.replace(/.*\//, "") + + // Create file + writeFileSync(newLicensePath, JSON.stringify([newLicenseItem], null, 2)) + } else if (licenseItem) { + console.log("Appending to existing license file: " + newLicensePath) + + // Create new license item + const newLicenseItem = licenseItem + newLicenseItem.path = newPath.replace(/.*\//, "") + + // Append to existing file + const newLicenseFile = readFileSync(newLicensePath, "utf8") + const newLicenseInfo = JSON.parse(newLicenseFile) as SmallLicense[] + newLicenseInfo.push(newLicenseItem) + writeFileSync(newLicensePath, JSON.stringify(newLicenseInfo, null, 2)) + } +} + +main(process.argv.slice(2)) diff --git a/scripts/osm2pgsql/generateBuildDbScript.ts b/scripts/osm2pgsql/generateBuildDbScript.ts index 4eee2e69b..82d3255bc 100644 --- a/scripts/osm2pgsql/generateBuildDbScript.ts +++ b/scripts/osm2pgsql/generateBuildDbScript.ts @@ -43,12 +43,9 @@ class LuaSnippets { or.push(new RegexTag(k, v)) }) }) - const features = or.map((t) => t.asHumanString(false, false, {})) + const features = or.map((t) => t.asHumanString(false, false, {})) features.sort() - console.log( - "Polygon features are:", - features - ) + console.log("Polygon features are:", features) return { blacklist: new Or(blacklisted), whitelisted: new Or(or) } } diff --git a/scripts/osm2pgsql/osmPoiDatabase.ts b/scripts/osm2pgsql/osmPoiDatabase.ts index d03406ae3..4789f7587 100644 --- a/scripts/osm2pgsql/osmPoiDatabase.ts +++ b/scripts/osm2pgsql/osmPoiDatabase.ts @@ -69,8 +69,6 @@ export class OsmPoiDatabase { await metaclient.connect() try { const meta = await metaclient.query("SELECT datname FROM pg_database") - let latest: string = undefined - let latestDate: Date = new Date(0) const dbs: string[] = [] for (const row of meta.rows) { const name: string = row["datname"] diff --git a/scripts/osm2pgsql/tilecountServer.ts b/scripts/osm2pgsql/tilecountServer.ts index 15a35c86c..602844af3 100644 --- a/scripts/osm2pgsql/tilecountServer.ts +++ b/scripts/osm2pgsql/tilecountServer.ts @@ -64,7 +64,12 @@ class TileCountServer extends Script { handle: async () => { const layers = await tcs.getLayers() const meta = await tcs.getMeta() - return JSON.stringify({ meta, layers: Array.from(layers) }) + const mostSuitable = await tcs.findSuitableDatabases() + return JSON.stringify({ + meta, + suitableDatabases: mostSuitable, + layers: Array.from(layers), + }) }, }, { diff --git a/scripts/osm2pgsql/update.sh b/scripts/osm2pgsql/update.sh index d15c18f95..1ed6aaec5 100755 --- a/scripts/osm2pgsql/update.sh +++ b/scripts/osm2pgsql/update.sh @@ -2,7 +2,9 @@ # Full database update. Downloads the latest from planet.osm.org, build update script, setup and seed it # Meant to be run with 'nohup' -nvm use +export NVM_DIR="$HOME/.nvm" +[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm +nvm use 20.12.2 npm run init # contains a 'npm run generate, which builds the layers' npm run generate:buildDbScript mv build_db.lua ~/data/ diff --git a/src/Customizations/AllKnownLayouts.ts b/src/Customizations/AllKnownLayouts.ts index 5882b3135..c4004e2da 100644 --- a/src/Customizations/AllKnownLayouts.ts +++ b/src/Customizations/AllKnownLayouts.ts @@ -1,7 +1,7 @@ import known_themes from "../assets/generated/known_themes.json" -import LayoutConfig from "../Models/ThemeConfig/LayoutConfig" +import ThemeConfig from "../Models/ThemeConfig/ThemeConfig" import favourite from "../assets/generated/layers/favourite.json" -import { LayoutConfigJson } from "../Models/ThemeConfig/Json/LayoutConfigJson" +import { ThemeConfigJson } from "../Models/ThemeConfig/Json/ThemeConfigJson" import { AllSharedLayers } from "./AllSharedLayers" import Constants from "../Models/Constants" @@ -9,8 +9,8 @@ import Constants from "../Models/Constants" * Somewhat of a dictionary, which lazily parses needed themes */ export class AllKnownLayoutsLazy { - private readonly raw: Map = new Map() - private readonly dict: Map = new Map() + private readonly raw: Map = new Map() + private readonly dict: Map = new Map() constructor(includeFavouriteLayer = true) { for (const layoutConfigJson of known_themes["themes"]) { @@ -32,7 +32,7 @@ export class AllKnownLayoutsLazy { } } - public getConfig(key: string): LayoutConfigJson { + public getConfig(key: string): ThemeConfigJson { return this.raw.get(key) } @@ -40,13 +40,13 @@ export class AllKnownLayoutsLazy { return this.raw.size } - public get(key: string): LayoutConfig { + public get(key: string): ThemeConfig { const cached = this.dict.get(key) if (cached !== undefined) { return cached } - const layout = new LayoutConfig(this.getConfig(key)) + const layout = new ThemeConfig(this.getConfig(key)) this.dict.set(key, layout) return layout } diff --git a/src/Logic/Actors/GeoLocationHandler.ts b/src/Logic/Actors/GeoLocationHandler.ts index e7143d374..1909daa52 100644 --- a/src/Logic/Actors/GeoLocationHandler.ts +++ b/src/Logic/Actors/GeoLocationHandler.ts @@ -183,7 +183,7 @@ export default class GeoLocationHandler { } private initUserLocationTrail() { - const features = LocalStorageSource.GetParsed("gps_location_history", []) + const features = LocalStorageSource.getParsed("gps_location_history", []) const now = new Date().getTime() features.data = features.data.filter((ff) => { if (ff.properties === undefined) { diff --git a/src/Logic/Actors/InitialMapPositioning.ts b/src/Logic/Actors/InitialMapPositioning.ts index 027195d58..d61ab3803 100644 --- a/src/Logic/Actors/InitialMapPositioning.ts +++ b/src/Logic/Actors/InitialMapPositioning.ts @@ -1,5 +1,5 @@ import { ImmutableStore, Store, UIEventSource } from "../UIEventSource" -import LayoutConfig from "../../Models/ThemeConfig/LayoutConfig" +import ThemeConfig from "../../Models/ThemeConfig/ThemeConfig" import { LocalStorageSource } from "../Web/LocalStorageSource" import { QueryParameters } from "../Web/QueryParameters" import Hash from "../Web/Hash" @@ -25,13 +25,13 @@ export default class InitialMapPositioning { public location: UIEventSource<{ lon: number; lat: number }> public useTerrain: Store - constructor(layoutToUse: LayoutConfig, geolocationState: GeoLocationState) { + constructor(layoutToUse: ThemeConfig, geolocationState: GeoLocationState) { function localStorageSynced( key: string, deflt: number, docs: string ): UIEventSource { - const localStorage = LocalStorageSource.Get(key) + const localStorage = LocalStorageSource.get(key) const previousValue = localStorage.data const src = UIEventSource.asFloat( QueryParameters.GetQueryParameter(key, "" + deflt, docs).syncWith(localStorage) diff --git a/src/Logic/Actors/NoElementsInViewDetector.ts b/src/Logic/Actors/NoElementsInViewDetector.ts index 475a9b4d2..46e24e494 100644 --- a/src/Logic/Actors/NoElementsInViewDetector.ts +++ b/src/Logic/Actors/NoElementsInViewDetector.ts @@ -14,9 +14,8 @@ export default class NoElementsInViewDetector { constructor(themeViewState: ThemeViewState) { const state = themeViewState const minZoom = Math.min( - ...themeViewState.layout.layers + ...themeViewState.theme.layers .filter((l) => Constants.priviliged_layers.indexOf(l.id) < 0) - .filter((l) => !l.id.startsWith("note_import")) .map((l) => l.minzoom) ) const mapProperties = themeViewState.mapProperties @@ -44,7 +43,7 @@ export default class NoElementsInViewDetector { // Nope, no data loaded continue } - const layer = themeViewState.layout.getLayer(layerName) + const layer = themeViewState.theme.getLayer(layerName) if (mapProperties.zoom.data < layer.minzoom) { minzoomWithData = Math.min(layer.minzoom) continue @@ -68,7 +67,7 @@ export default class NoElementsInViewDetector { continue } - const layer = themeViewState.layout.getLayer(layerName) + const layer = themeViewState.theme.getLayer(layerName) if (mapProperties.zoom.data < layer.minzoom) { continue } diff --git a/src/Logic/Actors/SelectedElementTagsUpdater.ts b/src/Logic/Actors/SelectedElementTagsUpdater.ts index 9472d29b3..218b665e7 100644 --- a/src/Logic/Actors/SelectedElementTagsUpdater.ts +++ b/src/Logic/Actors/SelectedElementTagsUpdater.ts @@ -34,7 +34,7 @@ export default class SelectedElementTagsUpdater { public static applyUpdate(latestTags: OsmTags, id: string, state: SpecialVisualizationState) { try { - const leftRightSensitive = state.layout.isLeftRightSensitive() + const leftRightSensitive = state.theme.isLeftRightSensitive() if (leftRightSensitive) { SimpleMetaTagger.removeBothTagging(latestTags) @@ -111,7 +111,7 @@ export default class SelectedElementTagsUpdater { } private invalidateCache(s: Feature) { const state = this.state - const wasPartOfLayer = state.layout.getMatchingLayer(s.properties) + const wasPartOfLayer = state.theme.getMatchingLayer(s.properties) state.toCacheSavers?.get(wasPartOfLayer.id)?.invalidateCacheAround(BBox.get(s)) } private installCallback() { diff --git a/src/Logic/Actors/TitleHandler.ts b/src/Logic/Actors/TitleHandler.ts index aa26c61e2..bb4f70ca5 100644 --- a/src/Logic/Actors/TitleHandler.ts +++ b/src/Logic/Actors/TitleHandler.ts @@ -5,18 +5,15 @@ import { Feature } from "geojson" import { SpecialVisualizationState } from "../../UI/SpecialVisualization" export default class TitleHandler { - constructor( - selectedElement: Store, - state: SpecialVisualizationState - ) { + constructor(selectedElement: Store, state: SpecialVisualizationState) { const currentTitle: Store = selectedElement.map( (selected) => { const lng = Locale.language.data - const defaultTitle = state.layout?.title?.textFor(lng) ?? "MapComplete" + const defaultTitle = state.theme?.title?.textFor(lng) ?? "MapComplete" if (selected === undefined) { return defaultTitle } - const layer = state.layout.getMatchingLayer(selected.properties) + const layer = state.theme.getMatchingLayer(selected.properties) if (layer === undefined) { return defaultTitle } @@ -34,7 +31,6 @@ export default class TitleHandler { const el = document.createElement("span") el.innerHTML = title return el.textContent + " | " + defaultTitle - }, [Locale.language] ) diff --git a/src/Logic/BBox.ts b/src/Logic/BBox.ts index a5fa3c46a..5077842ee 100644 --- a/src/Logic/BBox.ts +++ b/src/Logic/BBox.ts @@ -6,7 +6,7 @@ import { Feature, Polygon } from "geojson" export class BBox { static global: BBox = new BBox([ [-180, -90], - [180, 90] + [180, 90], ]) readonly maxLat: number readonly maxLon: number @@ -53,7 +53,7 @@ export class BBox { static fromLeafletBounds(bounds) { return new BBox([ [bounds.getWest(), bounds.getNorth()], - [bounds.getEast(), bounds.getSouth()] + [bounds.getEast(), bounds.getSouth()], ]) } @@ -74,7 +74,7 @@ export class BBox { // Note: x is longitude f["bbox"] = new BBox([ [minX, minY], - [maxX, maxY] + [maxX, maxY], ]) } return f["bbox"] @@ -94,7 +94,7 @@ export class BBox { } return new BBox([ [maxLon, maxLat], - [minLon, minLat] + [minLon, minLat], ]) } @@ -121,7 +121,7 @@ export class BBox { public unionWith(other: BBox) { return new BBox([ [Math.max(this.maxLon, other.maxLon), Math.max(this.maxLat, other.maxLat)], - [Math.min(this.minLon, other.minLon), Math.min(this.minLat, other.minLat)] + [Math.min(this.minLon, other.minLon), Math.min(this.minLat, other.minLat)], ]) } @@ -174,7 +174,7 @@ export class BBox { return new BBox([ [lon - s / 2, lat - s / 2], - [lon + s / 2, lat + s / 2] + [lon + s / 2, lat + s / 2], ]) } @@ -231,29 +231,26 @@ export class BBox { const lonDiff = Math.min(maxIncrease / 2, Math.abs(this.maxLon - this.minLon) * factor) return new BBox([ [this.minLon - lonDiff, this.minLat - latDiff], - [this.maxLon + lonDiff, this.maxLat + latDiff] + [this.maxLon + lonDiff, this.maxLat + latDiff], ]) } padAbsolute(degrees: number): BBox { return new BBox([ [this.minLon - degrees, this.minLat - degrees], - [this.maxLon + degrees, this.maxLat + degrees] + [this.maxLon + degrees, this.maxLat + degrees], ]) } toLngLat(): [[number, number], [number, number]] { return [ [this.minLon, this.minLat], - [this.maxLon, this.maxLat] + [this.maxLon, this.maxLat], ] } toLngLatFlat(): [number, number, number, number] { - return [ - this.minLon, this.minLat, - this.maxLon, this.maxLat, - ] + return [this.minLon, this.minLat, this.maxLon, this.maxLat] } public asGeojsonCached() { @@ -267,7 +264,7 @@ export class BBox { return { type: "Feature", properties: properties, - geometry: this.asGeometry() + geometry: this.asGeometry(), } } @@ -280,9 +277,9 @@ export class BBox { [this.maxLon, this.minLat], [this.maxLon, this.maxLat], [this.minLon, this.maxLat], - [this.minLon, this.minLat] - ] - ] + [this.minLon, this.minLat], + ], + ], } } @@ -309,7 +306,7 @@ export class BBox { minLon, maxLon, minLat, - maxLat + maxLat, } } diff --git a/src/Logic/DetermineLayout.ts b/src/Logic/DetermineTheme.ts similarity index 65% rename from src/Logic/DetermineLayout.ts rename to src/Logic/DetermineTheme.ts index 0225b16b9..4d4c1bb29 100644 --- a/src/Logic/DetermineLayout.ts +++ b/src/Logic/DetermineTheme.ts @@ -1,10 +1,8 @@ -import LayoutConfig from "../Models/ThemeConfig/LayoutConfig" +import ThemeConfig from "../Models/ThemeConfig/ThemeConfig" import { QueryParameters } from "./Web/QueryParameters" import { AllKnownLayouts } from "../Customizations/AllKnownLayouts" import { FixedUiElement } from "../UI/Base/FixedUiElement" import { Utils } from "../Utils" -import { UIEventSource } from "./UIEventSource" -import { LocalStorageSource } from "./Web/LocalStorageSource" import LZString from "lz-string" import { FixLegacyTheme } from "../Models/ThemeConfig/Conversion/LegacyJsonConvert" import { LayerConfigJson } from "../Models/ThemeConfig/Json/LayerConfigJson" @@ -19,42 +17,30 @@ import { DesugaringContext } from "../Models/ThemeConfig/Conversion/Conversion" import { TagRenderingConfigJson } from "../Models/ThemeConfig/Json/TagRenderingConfigJson" import Hash from "./Web/Hash" import { QuestionableTagRenderingConfigJson } from "../Models/ThemeConfig/Json/QuestionableTagRenderingConfigJson" -import { LayoutConfigJson } from "../Models/ThemeConfig/Json/LayoutConfigJson" +import { ThemeConfigJson } from "../Models/ThemeConfig/Json/ThemeConfigJson" import { ValidateThemeAndLayers } from "../Models/ThemeConfig/Conversion/ValidateThemeAndLayers" -export default class DetermineLayout { +export default class DetermineTheme { private static readonly _knownImages = new Set(Array.from(licenses).map((l) => l.path)) private static readonly loadCustomThemeParam = QueryParameters.GetQueryParameter( "userlayout", "false", - "If not 'false', a custom (non-official) theme is loaded. This custom layout can be done in multiple ways: \n\n- The hash of the URL contains a base64-encoded .json-file containing the theme definition\n- The hash of the URL contains a lz-compressed .json-file, as generated by the custom theme generator\n- The parameter itself is an URL, in which case that URL will be downloaded. It should point to a .json of a theme" + "If the parameter is an URL, it should point to a .json of a theme which will be loaded and used" ) public static getCustomDefinition(): string { - const layoutFromBase64 = decodeURIComponent(DetermineLayout.loadCustomThemeParam.data) + const layoutFromBase64 = decodeURIComponent(DetermineTheme.loadCustomThemeParam.data) if (layoutFromBase64.startsWith("http")) { return layoutFromBase64 } - if (layoutFromBase64 !== "false") { - // We have to load something from the hash (or from disk) - const hash = Hash.hash.data - try { - JSON.parse(atob(hash)) - return atob(hash) - } catch (e) { - // We try to decode with lz-string - JSON.parse(Utils.UnMinify(LZString.decompressFromBase64(hash))) - return Utils.UnMinify(LZString.decompressFromBase64(hash)) - } - } return undefined } private static async expandRemoteLayers( - layoutConfig: LayoutConfigJson - ): Promise { + layoutConfig: ThemeConfigJson + ): Promise { if (!layoutConfig.layers) { // This is probably a layer in 'layer-only-mode' return layoutConfig @@ -67,8 +53,7 @@ export default class DetermineLayout { try { new URL(l) console.log("Downloading remote layer " + l) - const layerConfig = await Utils.downloadJson(l) - layoutConfig.layers[i] = layerConfig + layoutConfig.layers[i] = await Utils.downloadJson(l) } catch (_) { continue } @@ -79,16 +64,11 @@ export default class DetermineLayout { /** * Gets the correct layout for this website */ - public static async GetLayout(): Promise { - const layoutFromBase64 = decodeURIComponent(DetermineLayout.loadCustomThemeParam.data) + public static async getTheme(): Promise { + const layoutFromBase64 = decodeURIComponent(DetermineTheme.loadCustomThemeParam.data) if (layoutFromBase64.startsWith("http")) { - return await DetermineLayout.LoadRemoteTheme(layoutFromBase64) - } - - if (layoutFromBase64 !== "false") { - // We have to load something from the hash (or from disk) - return await DetermineLayout.LoadLayoutFromHash(DetermineLayout.loadCustomThemeParam) + return await DetermineTheme.LoadRemoteTheme(layoutFromBase64) } let layoutId: string = undefined @@ -125,48 +105,11 @@ export default class DetermineLayout { return layouts.get(id) } - public static async LoadLayoutFromHash( - userLayoutParam: UIEventSource - ): Promise { - let hash = location.hash.substr(1) - let json: any - - // layoutFromBase64 contains the name of the theme. This is partly to do tracking with goat counter - const dedicatedHashFromLocalStorage = LocalStorageSource.Get( - "user-layout-" + userLayoutParam.data?.replace(" ", "_") - ) - if (dedicatedHashFromLocalStorage.data?.length < 10) { - dedicatedHashFromLocalStorage.setData(undefined) - } - - const hashFromLocalStorage = LocalStorageSource.Get("last-loaded-user-layout") - if (hash.length < 10) { - hash = dedicatedHashFromLocalStorage.data ?? hashFromLocalStorage.data - } else { - console.log("Saving hash to local storage") - hashFromLocalStorage.setData(hash) - dedicatedHashFromLocalStorage.setData(hash) - } - - try { - json = JSON.parse(atob(hash)) - } catch (e) { - // We try to decode with lz-string - json = JSON.parse(Utils.UnMinify(LZString.decompressFromBase64(hash))) - } - - json = await this.expandRemoteLayers(json) - - const layoutToUse = DetermineLayout.prepCustomTheme(json) - userLayoutParam.setData(layoutToUse.id) - return layoutToUse - } - private static getSharedTagRenderings(): Map { const dict = new Map() for (const tagRendering of questions.tagRenderings) { - dict.set(tagRendering.id, tagRendering) + dict.set(tagRendering.id, tagRendering) } return dict @@ -176,7 +119,7 @@ export default class DetermineLayout { return questions.tagRenderings.map((tr) => tr.id) } - private static prepCustomTheme(json: any, sourceUrl?: string, forceId?: string): LayoutConfig { + private static prepCustomTheme(json: any, sourceUrl?: string, forceId?: string): ThemeConfig { if (json.layers === undefined && json.tagRenderings !== undefined) { // We got fed a layer instead of a theme const layerConfig = json @@ -224,15 +167,15 @@ export default class DetermineLayout { knownLayersDict.set(layer.id, layer) } const convertState: DesugaringContext = { - tagRenderings: DetermineLayout.getSharedTagRenderings(), - tagRenderingOrder: DetermineLayout.getSharedTagRenderingOrder(), + tagRenderings: DetermineTheme.getSharedTagRenderings(), + tagRenderingOrder: DetermineTheme.getSharedTagRenderingOrder(), sharedLayers: knownLayersDict, publicLayers: new Set(), } json = new FixLegacyTheme().convertStrict(json) const raw = json - json = new FixImages(DetermineLayout._knownImages).convertStrict(json) + json = new FixImages(DetermineTheme._knownImages).convertStrict(json) json.enableNoteImports = json.enableNoteImports ?? false json = new PrepareTheme(convertState).convertStrict(json) console.log("The layoutconfig is ", json) @@ -249,20 +192,20 @@ export default class DetermineLayout { false ).convertStrict(json) } - return new LayoutConfig(json, false, { + return new ThemeConfig(json, false, { definitionRaw: JSON.stringify(raw, null, " "), definedAtUrl: sourceUrl, }) } - private static async LoadRemoteTheme(link: string): Promise { + private static async LoadRemoteTheme(link: string): Promise { console.log("Downloading map theme from ", link) new FixedUiElement(`Downloading the theme from the link...`).AttachTo( "maindiv" ) - let parsed = await Utils.downloadJson(link) + let parsed = await Utils.downloadJson(link) let forcedId = parsed.id const url = new URL(link) if (!(url.hostname === "localhost" || url.hostname === "127.0.0.1")) { @@ -270,6 +213,6 @@ export default class DetermineLayout { } console.log("Loaded remote link:", link) parsed = await this.expandRemoteLayers(parsed) - return DetermineLayout.prepCustomTheme(parsed, link, forcedId) + return DetermineTheme.prepCustomTheme(parsed, link, forcedId) } } diff --git a/src/Logic/FeatureSource/Sources/FavouritesFeatureSource.ts b/src/Logic/FeatureSource/Sources/FavouritesFeatureSource.ts index 595c1def3..5c48ac790 100644 --- a/src/Logic/FeatureSource/Sources/FavouritesFeatureSource.ts +++ b/src/Logic/FeatureSource/Sources/FavouritesFeatureSource.ts @@ -49,7 +49,7 @@ export default class FavouritesFeatureSource extends StaticFeatureSource { const featuresWithoutAlreadyPresent = features.map((features) => features.filter( - (feat) => !state.layout.layers.some((l) => l.id === feat.properties._orig_layer) + (feat) => !state.theme.layers.some((l) => l.id === feat.properties._orig_layer) ) ) diff --git a/src/Logic/FeatureSource/Sources/FeatureSourceMerger.ts b/src/Logic/FeatureSource/Sources/FeatureSourceMerger.ts index 3ba2c785c..296588984 100644 --- a/src/Logic/FeatureSource/Sources/FeatureSourceMerger.ts +++ b/src/Logic/FeatureSource/Sources/FeatureSourceMerger.ts @@ -2,6 +2,7 @@ import { Store, UIEventSource } from "../../UIEventSource" import { FeatureSource, IndexedFeatureSource, UpdatableFeatureSource } from "../FeatureSource" import { Feature } from "geojson" import { Utils } from "../../../Utils" +import { OsmFeature } from "../../../Models/OsmFeature" /** * The featureSourceMerger receives complete geometries from various sources. @@ -50,6 +51,24 @@ export default class FeatureSourceMerger s.features.data)) } + /** + * Add the given feature if it isn't in the dictionary yet. + * Returns 'true' if this was a previously unseen item. + * If the item was already present, nothing will happen + */ + public addItem(f: OsmFeature): boolean { + const id = f.properties.id + + const all = this._featuresById.data + if (!all.has(id)) { + all.set(id, f) + this._featuresById.ping() + this.features.data.push(f) + this.features.ping() + return true + } + } + protected addData(sources: Feature[][]) { sources = Utils.NoNull(sources) let somethingChanged = false @@ -108,6 +127,7 @@ export class UpdatableFeatureSourceMerger< constructor(...sources: Src[]) { super(...sources) } + async updateAsync() { await Promise.all(this._sources.map((src) => src.updateAsync())) } diff --git a/src/Logic/FeatureSource/Sources/FilteringFeatureSource.ts b/src/Logic/FeatureSource/Sources/FilteringFeatureSource.ts index 9a55a51d1..e38c811d4 100644 --- a/src/Logic/FeatureSource/Sources/FilteringFeatureSource.ts +++ b/src/Logic/FeatureSource/Sources/FilteringFeatureSource.ts @@ -30,6 +30,9 @@ export default class FilteringFeatureSource implements FeatureSource { upstream.features.addCallback(() => { self.update() }) + layer.isDisplayed.addCallback(() => { + self.update() + }) layer.appliedFilters.forEach((value) => value.addCallback((_) => { diff --git a/src/Logic/FeatureSource/Sources/LastClickFeatureSource.ts b/src/Logic/FeatureSource/Sources/LastClickFeatureSource.ts index 830d20333..46b4fbb56 100644 --- a/src/Logic/FeatureSource/Sources/LastClickFeatureSource.ts +++ b/src/Logic/FeatureSource/Sources/LastClickFeatureSource.ts @@ -1,4 +1,4 @@ -import LayoutConfig from "../../../Models/ThemeConfig/LayoutConfig" +import ThemeConfig from "../../../Models/ThemeConfig/ThemeConfig" import { ImmutableStore, Store, UIEventSource } from "../../UIEventSource" import { Feature, Point } from "geojson" import { TagUtils } from "../../Tags/TagUtils" @@ -22,7 +22,7 @@ export class LastClickFeatureSource implements FeatureSource { private _usermode: UIEventSource private _enabledAddMorePoints: UIEventSource constructor( - layout: LayoutConfig, + layout: ThemeConfig, clickSource: Store<{ lon: number; lat: number; mode: "left" | "right" | "middle" }>, usermode?: UIEventSource, enabledAddMorePoints?: UIEventSource diff --git a/src/Logic/FeatureSource/Sources/MvtSource.ts b/src/Logic/FeatureSource/Sources/MvtSource.ts index 6342fea90..619424df1 100644 --- a/src/Logic/FeatureSource/Sources/MvtSource.ts +++ b/src/Logic/FeatureSource/Sources/MvtSource.ts @@ -4,7 +4,6 @@ import { Store, UIEventSource } from "../../UIEventSource" import { FeatureSourceForTile, UpdatableFeatureSource } from "../FeatureSource" import { MvtToGeojson } from "mvt-to-geojson" - export default class MvtSource implements FeatureSourceForTile, UpdatableFeatureSource { public readonly features: Store[]> public readonly x: number @@ -28,7 +27,7 @@ export default class MvtSource implements FeatureSourceForTile, UpdatableFeature y: number, z: number, layerName?: string, - isActive?: Store, + isActive?: Store ) { this._url = url this._layerName = layerName @@ -43,7 +42,7 @@ export default class MvtSource implements FeatureSourceForTile, UpdatableFeature } return fs }, - [isActive], + [isActive] ) } @@ -54,7 +53,6 @@ export default class MvtSource implements FeatureSourceForTile, UpdatableFeature await this.currentlyRunning } - private async download(): Promise { try { const result = await fetch(this._url) @@ -66,7 +64,7 @@ export default class MvtSource implements FeatureSourceForTile, UpdatableFeature const features = MvtToGeojson.fromBuffer(buffer, this.x, this.y, this.z) for (const feature of features) { const properties = feature.properties - if(!properties["osm_type"]){ + if (!properties["osm_type"]) { continue } let type: string = "node" @@ -90,6 +88,4 @@ export default class MvtSource implements FeatureSourceForTile, UpdatableFeature console.error("Could not download MVT " + this._url + " tile due to", e) } } - - } diff --git a/src/Logic/FeatureSource/Sources/OverpassFeatureSource.ts b/src/Logic/FeatureSource/Sources/OverpassFeatureSource.ts index 7872d67bc..494d59e2d 100644 --- a/src/Logic/FeatureSource/Sources/OverpassFeatureSource.ts +++ b/src/Logic/FeatureSource/Sources/OverpassFeatureSource.ts @@ -49,14 +49,15 @@ export default class OverpassFeatureSource implements UpdatableFeatureSource { }, options?: { padToTiles?: Store - isActive?: Store + isActive?: Store, + ignoreZoom?: boolean } ) { this.state = state this._isActive = options?.isActive ?? new ImmutableStore(true) this.padToZoomLevel = options?.padToTiles const self = this - this._layersToDownload = state.zoom.map((zoom) => this.layersToDownload(zoom)) + this._layersToDownload = options?.ignoreZoom? new ImmutableStore(state.layers) : state.zoom.map((zoom) => this.layersToDownload(zoom)) state.bounds.mapD( (_) => { @@ -103,7 +104,7 @@ export default class OverpassFeatureSource implements UpdatableFeatureSource { * Download the relevant data from overpass. Attempt to use a different server if one fails; only downloads the relevant layers * @private */ - public async updateAsync(): Promise { + public async updateAsync(overrideBounds?: BBox): Promise { let data: any = undefined let lastUsed = 0 const start = new Date() @@ -122,7 +123,7 @@ export default class OverpassFeatureSource implements UpdatableFeatureSource { let bounds: BBox do { try { - bounds = this.state.bounds.data + bounds = overrideBounds ?? this.state.bounds.data ?.pad(this.state.widenFactor) ?.expandToTileBounds(this.padToZoomLevel?.data) if (!bounds) { diff --git a/src/Logic/FeatureSource/Sources/LayoutSource.ts b/src/Logic/FeatureSource/Sources/ThemeSource.ts similarity index 76% rename from src/Logic/FeatureSource/Sources/LayoutSource.ts rename to src/Logic/FeatureSource/Sources/ThemeSource.ts index 196f926fc..bc20862df 100644 --- a/src/Logic/FeatureSource/Sources/LayoutSource.ts +++ b/src/Logic/FeatureSource/Sources/ThemeSource.ts @@ -1,10 +1,10 @@ import GeoJsonSource from "./GeoJsonSource" import LayerConfig from "../../../Models/ThemeConfig/LayerConfig" -import { UpdatableFeatureSource } from "../FeatureSource" +import { FeatureSource, UpdatableFeatureSource } from "../FeatureSource" import { Or } from "../../Tags/Or" import FeatureSwitchState from "../../State/FeatureSwitchState" import OverpassFeatureSource from "./OverpassFeatureSource" -import { Store, UIEventSource } from "../../UIEventSource" +import { ImmutableStore, Store, UIEventSource } from "../../UIEventSource" import OsmFeatureSource from "./OsmFeatureSource" import DynamicGeoJsonTileSource from "../TiledFeatureSource/DynamicGeoJsonTileSource" import { BBox } from "../../BBox" @@ -18,7 +18,7 @@ import FeatureSourceMerger from "./FeatureSourceMerger" * * Note that special layers (with `source=null` will be ignored) */ -export default class LayoutSource extends FeatureSourceMerger { +export default class ThemeSource extends FeatureSourceMerger { /** * Indicates if a data source is loading something */ @@ -28,6 +28,13 @@ export default class LayoutSource extends FeatureSourceMerger { public static readonly fromCacheZoomLevel = 15 + /** + * This source is _only_ triggered when the data is downloaded for CSV export + * @private + */ + private readonly _downloadAll: OverpassFeatureSource + private readonly _mapBounds: Store + constructor( layers: LayerConfig[], featureSwitches: FeatureSwitchState, @@ -35,7 +42,7 @@ export default class LayoutSource extends FeatureSourceMerger { backend: string, isDisplayed: (id: string) => Store, mvtAvailableLayers: Set, - fullNodeDatabaseSource?: FullNodeDatabaseSource + fullNodeDatabaseSource?: FullNodeDatabaseSource, ) { const supportsForceDownload: UpdatableFeatureSource[] = [] @@ -51,31 +58,31 @@ export default class LayoutSource extends FeatureSourceMerger { const src = new LocalStorageFeatureSource( backend, layer, - LayoutSource.fromCacheZoomLevel, + ThemeSource.fromCacheZoomLevel, mapProperties, { isActive: isDisplayed(layer.id), maxAge: layer.maxAgeOfCache, - } + }, ) fromCache.set(layer.id, src) } } const mvtSources: UpdatableFeatureSource[] = osmLayers .filter((f) => mvtAvailableLayers.has(f.id)) - .map((l) => LayoutSource.setupMvtSource(l, mapProperties, isDisplayed(l.id))) - const nonMvtSources = [] - const nonMvtLayers = osmLayers.filter((l) => !mvtAvailableLayers.has(l.id)) + .map((l) => ThemeSource.setupMvtSource(l, mapProperties, isDisplayed(l.id))) + const nonMvtSources: FeatureSource[] = [] + const nonMvtLayers: LayerConfig[] = osmLayers.filter((l) => !mvtAvailableLayers.has(l.id)) const isLoading = new UIEventSource(false) - const osmApiSource = LayoutSource.setupOsmApiSource( + const osmApiSource = ThemeSource.setupOsmApiSource( osmLayers, bounds, zoom, backend, featureSwitches, - fullNodeDatabaseSource + fullNodeDatabaseSource, ) nonMvtSources.push(osmApiSource) @@ -84,13 +91,14 @@ export default class LayoutSource extends FeatureSourceMerger { console.log( "Layers ", nonMvtLayers.map((l) => l.id), - " cannot be fetched from the cache server, defaulting to overpass/OSM-api" + " cannot be fetched from the cache server, defaulting to overpass/OSM-api", ) - overpassSource = LayoutSource.setupOverpass(osmLayers, bounds, zoom, featureSwitches) + overpassSource = ThemeSource.setupOverpass(osmLayers, bounds, zoom, featureSwitches) nonMvtSources.push(overpassSource) supportsForceDownload.push(overpassSource) } + function setIsLoading() { const loading = overpassSource?.runningQuery?.data || osmApiSource?.isRunning?.data isLoading.setData(loading) @@ -100,21 +108,40 @@ export default class LayoutSource extends FeatureSourceMerger { osmApiSource?.isRunning?.addCallbackAndRun(() => setIsLoading()) const geojsonSources: UpdatableFeatureSource[] = geojsonlayers.map((l) => - LayoutSource.setupGeojsonSource(l, mapProperties, isDisplayed(l.id)) + ThemeSource.setupGeojsonSource(l, mapProperties, isDisplayed(l.id)), ) - super(...geojsonSources, ...Array.from(fromCache.values()), ...mvtSources, ...nonMvtSources) + const downloadAllBounds: UIEventSource = new UIEventSource(undefined) + const downloadAll= new OverpassFeatureSource({ + layers: layers.filter(l => l.isNormal()), + bounds: mapProperties.bounds, + zoom: mapProperties.zoom, + overpassUrl: featureSwitches.overpassUrl, + overpassTimeout: featureSwitches.overpassTimeout, + overpassMaxZoom: new ImmutableStore(99), + widenFactor: 0, + },{ + ignoreZoom: true + }) + + super(...geojsonSources, ...Array.from(fromCache.values()), ...mvtSources, ...nonMvtSources, downloadAll) this.isLoading = isLoading supportsForceDownload.push(...geojsonSources) supportsForceDownload.push(...mvtSources) // Non-mvt sources are handled by overpass + + + this._mapBounds = mapProperties.bounds + this._downloadAll = downloadAll + this.supportsForceDownload = supportsForceDownload + } private static setupMvtSource( layer: LayerConfig, mapProperties: { zoom: Store; bounds: Store }, - isActive?: Store + isActive?: Store, ): UpdatableFeatureSource { return new DynamicMvtileSource(layer, mapProperties, { isActive }) } @@ -122,12 +149,12 @@ export default class LayoutSource extends FeatureSourceMerger { private static setupGeojsonSource( layer: LayerConfig, mapProperties: { zoom: Store; bounds: Store }, - isActiveByFilter?: Store + isActiveByFilter?: Store, ): UpdatableFeatureSource { const source = layer.source const isActive = mapProperties.zoom.map( (z) => (isActiveByFilter?.data ?? true) && z >= layer.minzoom, - [isActiveByFilter] + [isActiveByFilter], ) if (source.geojsonZoomLevel === undefined) { // This is a 'load everything at once' geojson layer @@ -143,7 +170,7 @@ export default class LayoutSource extends FeatureSourceMerger { zoom: Store, backend: string, featureSwitches: FeatureSwitchState, - fullNodeDatabase: FullNodeDatabaseSource + fullNodeDatabase: FullNodeDatabaseSource, ): OsmFeatureSource | undefined { if (osmLayers.length == 0) { return undefined @@ -177,7 +204,7 @@ export default class LayoutSource extends FeatureSourceMerger { osmLayers: LayerConfig[], bounds: Store, zoom: Store, - featureSwitches: FeatureSwitchState + featureSwitches: FeatureSwitchState, ): OverpassFeatureSource | undefined { if (osmLayers.length == 0) { return undefined @@ -198,7 +225,7 @@ export default class LayoutSource extends FeatureSourceMerger { zoom, bounds, layers: osmLayers, - widenFactor: featureSwitches.layoutToUse.widenFactor, + widenFactor: 1.5, overpassUrl: featureSwitches.overpassUrl, overpassTimeout: featureSwitches.overpassTimeout, overpassMaxZoom: featureSwitches.overpassMaxZoom, @@ -206,13 +233,14 @@ export default class LayoutSource extends FeatureSourceMerger { { padToTiles: zoom.map((zoom) => Math.min(15, zoom + 1)), isActive, - } + }, ) } public async downloadAll() { - console.log("Downloading all data") - await Promise.all(this.supportsForceDownload.map((i) => i.updateAsync())) + console.log("Downloading all data:") + await this._downloadAll.updateAsync(this._mapBounds.data) + // await Promise.all(this.supportsForceDownload.map((i) => i.updateAsync())) console.log("Done") } } diff --git a/src/Logic/FeatureSource/TiledFeatureSource/SummaryTileSource.ts b/src/Logic/FeatureSource/TiledFeatureSource/SummaryTileSource.ts index fcdf7e819..4256f7abf 100644 --- a/src/Logic/FeatureSource/TiledFeatureSource/SummaryTileSource.ts +++ b/src/Logic/FeatureSource/TiledFeatureSource/SummaryTileSource.ts @@ -23,9 +23,7 @@ export class SummaryTileSourceRewriter implements FeatureSource { filteredLayers: ReadonlyMap ) { this.filteredLayers = Array.from(filteredLayers.values()).filter( - (l) => - Constants.priviliged_layers.indexOf(l.layerDef.id) < 0 && - !l.layerDef.id.startsWith("note_import") + (l) => Constants.priviliged_layers.indexOf(l.layerDef.id) < 0 ) this._summarySource = summarySource filteredLayers.forEach((v) => { diff --git a/src/Logic/GeoOperations.ts b/src/Logic/GeoOperations.ts index 96062012a..806223740 100644 --- a/src/Logic/GeoOperations.ts +++ b/src/Logic/GeoOperations.ts @@ -95,8 +95,14 @@ export class GeoOperations { /** * Starting on `from`, travels `distance` meters in the direction of the `bearing` (default: 90) */ - static destination(from: Coord | [number,number],distance: number, bearing: number = 90): [number,number]{ - return <[number,number]> turf.destination(from, distance, bearing, {units: "meters"}).geometry.coordinates + static destination( + from: Coord | [number, number], + distance: number, + bearing: number = 90 + ): [number, number] { + return <[number, number]>( + turf.destination(from, distance, bearing, { units: "meters" }).geometry.coordinates + ) } static convexHull(featureCollection, options: { concavity?: number }) { @@ -928,13 +934,13 @@ export class GeoOperations { if (meters === undefined) { return "" } - meters = Utils.roundHuman( Math.round(meters)) + meters = Utils.roundHuman(Math.round(meters)) if (meters < 1000) { return Utils.roundHuman(meters) + "m" } if (meters >= 10000) { - const km = Utils.roundHuman(Math.round(meters / 1000)) + const km = Utils.roundHuman(Math.round(meters / 1000)) return km + "km" } diff --git a/src/Logic/ImageProviders/AllImageProviders.ts b/src/Logic/ImageProviders/AllImageProviders.ts index b33bf593f..987b1a191 100644 --- a/src/Logic/ImageProviders/AllImageProviders.ts +++ b/src/Logic/ImageProviders/AllImageProviders.ts @@ -34,10 +34,10 @@ export default class AllImageProviders { AllImageProviders.genericImageProvider, ] public static apiUrls: string[] = [].concat( - ...AllImageProviders.ImageAttributionSource.map((src) => src.apiUrls()), + ...AllImageProviders.ImageAttributionSource.map((src) => src.apiUrls()) ) public static defaultKeys = [].concat( - AllImageProviders.ImageAttributionSource.map((provider) => provider.defaultKeyPrefixes), + AllImageProviders.ImageAttributionSource.map((provider) => provider.defaultKeyPrefixes) ) private static providersByName = { imgur: Imgur.singleton, @@ -66,17 +66,21 @@ export default class AllImageProviders { return AllImageProviders.genericImageProvider } + private static readonly _cachedImageStores: Record> = {} /** - * Tries to extract all image data for this image + * Tries to extract all image data for this image. Cachedon tags?.data?.id */ public static LoadImagesFor( tags: Store>, - tagKey?: string[], + tagKey?: string[] ): Store { if (tags?.data?.id === undefined) { return undefined } - + const id = tags?.data?.id + if (this._cachedImageStores[id]) { + return this._cachedImageStores[id] + } const source = new UIEventSource([]) const allSources: Store[] = [] @@ -86,14 +90,15 @@ export default class AllImageProviders { However, we override them if a custom image tag is set, e.g. 'image:menu' */ const prefixes = tagKey ?? imageProvider.defaultKeyPrefixes - const singleSource = tags.bindD(tags => imageProvider.getRelevantUrls(tags, prefixes)) + const singleSource = tags.bindD((tags) => imageProvider.getRelevantUrls(tags, prefixes)) allSources.push(singleSource) singleSource.addCallbackAndRunD((_) => { const all: ProvidedImage[] = [].concat(...allSources.map((source) => source.data)) - const dedup = Utils.DedupOnId(all, i => i?.id ?? i?.url) + const dedup = Utils.DedupOnId(all, (i) => i?.id ?? i?.url) source.set(dedup) }) } + this._cachedImageStores[id] = source return source } @@ -103,7 +108,7 @@ export default class AllImageProviders { */ public static loadImagesFrom(urls: string[]): Store { const tags = { - id:"na" + id: "na", } for (let i = 0; i < urls.length; i++) { const url = urls[i] diff --git a/src/Logic/ImageProviders/GenericImageProvider.ts b/src/Logic/ImageProviders/GenericImageProvider.ts index de369c478..2d2093acf 100644 --- a/src/Logic/ImageProviders/GenericImageProvider.ts +++ b/src/Logic/ImageProviders/GenericImageProvider.ts @@ -27,12 +27,14 @@ export default class GenericImageProvider extends ImageProvider { return undefined } - return [{ - key: key, - url: value, - provider: this, - id: value, - }] + return [ + { + key: key, + url: value, + provider: this, + id: value, + }, + ] } SourceIcon() { diff --git a/src/Logic/ImageProviders/ImageProvider.ts b/src/Logic/ImageProviders/ImageProvider.ts index 4588297c8..d40907b57 100644 --- a/src/Logic/ImageProviders/ImageProvider.ts +++ b/src/Logic/ImageProviders/ImageProvider.ts @@ -9,15 +9,15 @@ export interface ProvidedImage { key: string provider: ImageProvider id: string - date?: Date, + date?: Date status?: string | "ready" /** * Compass angle of the taken image * 0 = north, 90° = East */ rotation?: number - lat?: number, - lon?: number, + lat?: number + lon?: number host?: string } @@ -26,8 +26,10 @@ export default abstract class ImageProvider { public abstract readonly name: string - public abstract SourceIcon(img?: {id: string, url: string, host?: string}, location?: { lon: number; lat: number }): BaseUIElement - + public abstract SourceIcon( + img?: { id: string; url: string; host?: string }, + location?: { lon: number; lat: number } + ): BaseUIElement /** * Gets all the relevant URLS for the given tags and for the given prefixes; @@ -35,12 +37,19 @@ export default abstract class ImageProvider { * @param tags * @param prefixes */ - public async getRelevantUrlsFor(tags: Record, prefixes: string[]): Promise { + public async getRelevantUrlsFor( + tags: Record, + prefixes: string[] + ): Promise { const relevantUrls: ProvidedImage[] = [] const seenValues = new Set() for (const key in tags) { - if (!prefixes.some((prefix) => key === prefix || key.match(new RegExp(prefix+":[0-9]+")))) { + if ( + !prefixes.some( + (prefix) => key === prefix || key.match(new RegExp(prefix + ":[0-9]+")) + ) + ) { continue } const values = Utils.NoEmpty(tags[key]?.split(";")?.map((v) => v.trim()) ?? []) @@ -50,10 +59,10 @@ export default abstract class ImageProvider { } seenValues.add(value) let images = this.ExtractUrls(key, value) - if(!Array.isArray(images)){ - images = await images + if (!Array.isArray(images)) { + images = await images } - if(images){ + if (images) { relevantUrls.push(...images) } } @@ -61,12 +70,17 @@ export default abstract class ImageProvider { return relevantUrls } - public getRelevantUrls(tags: Record, prefixes: string[]): Store { + public getRelevantUrls( + tags: Record, + prefixes: string[] + ): Store { return Stores.FromPromise(this.getRelevantUrlsFor(tags, prefixes)) } - - public abstract ExtractUrls(key: string, value: string): undefined | ProvidedImage[] | Promise + public abstract ExtractUrls( + key: string, + value: string + ): undefined | ProvidedImage[] | Promise public abstract DownloadAttribution(providedImage: { url: string @@ -74,4 +88,12 @@ export default abstract class ImageProvider { }): Promise public abstract apiUrls(): string[] + + public static async offerImageAsDownload(image: ProvidedImage) { + const response = await fetch(image.url_hd ?? image.url) + const blob = await response.blob() + Utils.offerContentsAsDownloadableFile(blob, new URL(image.url).pathname.split("/").at(-1), { + mimetype: "image/jpg", + }) + } } diff --git a/src/Logic/ImageProviders/ImageUploadManager.ts b/src/Logic/ImageProviders/ImageUploadManager.ts index 0363f3b21..87108b75c 100644 --- a/src/Logic/ImageProviders/ImageUploadManager.ts +++ b/src/Logic/ImageProviders/ImageUploadManager.ts @@ -2,7 +2,7 @@ import { ImageUploader, UploadResult } from "./ImageUploader" import LinkImageAction from "../Osm/Actions/LinkImageAction" import FeaturePropertiesStore from "../FeatureSource/Actors/FeaturePropertiesStore" import { OsmId, OsmTags } from "../../Models/OsmFeature" -import LayoutConfig from "../../Models/ThemeConfig/LayoutConfig" +import ThemeConfig from "../../Models/ThemeConfig/ThemeConfig" import { Store, UIEventSource } from "../UIEventSource" import { OsmConnection } from "../Osm/OsmConnection" import { Changes } from "../Osm/Changes" @@ -10,6 +10,7 @@ import Translations from "../../UI/i18n/Translations" import { Translation } from "../../UI/i18n/Translation" import { IndexedFeatureSource } from "../FeatureSource/FeatureSource" import { GeoOperations } from "../GeoOperations" +import { Feature } from "geojson" /** * The ImageUploadManager has a @@ -17,7 +18,7 @@ import { GeoOperations } from "../GeoOperations" export class ImageUploadManager { private readonly _uploader: ImageUploader private readonly _featureProperties: FeaturePropertiesStore - private readonly _layout: LayoutConfig + private readonly _theme: ThemeConfig private readonly _indexedFeatures: IndexedFeatureSource private readonly _gps: Store private readonly _uploadStarted: Map> = new Map() @@ -28,23 +29,32 @@ export class ImageUploadManager { private readonly _osmConnection: OsmConnection private readonly _changes: Changes public readonly isUploading: Store + private readonly _reportError: ( + message: string | Error | XMLHttpRequest, + extramessage?: string + ) => Promise constructor( - layout: LayoutConfig, + layout: ThemeConfig, uploader: ImageUploader, featureProperties: FeaturePropertiesStore, osmConnection: OsmConnection, changes: Changes, gpsLocation: Store, allFeatures: IndexedFeatureSource, + reportError: ( + message: string | Error | XMLHttpRequest, + extramessage?: string + ) => Promise ) { this._uploader = uploader this._featureProperties = featureProperties - this._layout = layout + this._theme = layout this._osmConnection = osmConnection this._changes = changes this._indexedFeatures = allFeatures this._gps = gpsLocation + this._reportError = reportError const failed = this.getCounterFor(this._uploadFailed, "*") const done = this.getCounterFor(this._uploadFinished, "*") @@ -53,7 +63,7 @@ export class ImageUploadManager { (startedCount) => { return startedCount > failed.data + done.data }, - [failed, done], + [failed, done] ) } @@ -81,11 +91,10 @@ export class ImageUploadManager { public canBeUploaded(file: File): true | { error: Translation } { const sizeInBytes = file.size - const self = this if (sizeInBytes > this._uploader.maxFileSizeInMegabytes * 1000000) { const error = Translations.t.image.toBig.Subs({ actual_size: Math.floor(sizeInBytes / 1000000) + "MB", - max_size: self._uploader.maxFileSizeInMegabytes + "MB", + max_size: this._uploader.maxFileSizeInMegabytes + "MB", }) return { error } } @@ -102,7 +111,8 @@ export class ImageUploadManager { public async uploadImageAndApply( file: File, tagsStore: UIEventSource, - targetKey?: string, + targetKey: string, + noblur: boolean ): Promise { const canBeUploaded = this.canBeUploaded(file) if (canBeUploaded !== true) { @@ -120,16 +130,23 @@ export class ImageUploadManager { author, file, targetKey, + noblur ) if (!uploadResult) { return } const properties = this._featureProperties.getStore(featureId) - const action = new LinkImageAction(featureId, uploadResult. key, uploadResult . value, properties, { - theme: tags?.data?.["_orig_theme"] ?? this._layout.id, - changeType: "add-image", - }) + const action = new LinkImageAction( + featureId, + uploadResult.key, + uploadResult.value, + properties, + { + theme: tags?.data?.["_orig_theme"] ?? this._theme.id, + changeType: "add-image", + } + ) await this._changes.applyAction(action) } @@ -139,6 +156,8 @@ export class ImageUploadManager { author: string, blob: File, targetKey: string | undefined, + noblur: boolean, + feature?: Feature ): Promise { this.increaseCountFor(this._uploadStarted, featureId) let key: string @@ -148,33 +167,51 @@ export class ImageUploadManager { if (this._gps.data) { location = [this._gps.data.longitude, this._gps.data.latitude] } - if (location === undefined || location?.some(l => l === undefined)) { - const feature = this._indexedFeatures.featuresById.data.get(featureId) + if (location === undefined || location?.some((l) => l === undefined)) { + feature ??= this._indexedFeatures.featuresById.data.get(featureId) location = GeoOperations.centerpointCoordinates(feature) } try { - ;({ key, value, absoluteUrl } = await this._uploader.uploadImage(blob, location, author)) + ;({ key, value, absoluteUrl } = await this._uploader.uploadImage( + blob, + location, + author, + noblur + )) } catch (e) { this.increaseCountFor(this._uploadRetried, featureId) console.error("Could not upload image, trying again:", e) try { - ;({ key, value , absoluteUrl} = await this._uploader.uploadImage(blob, location, author)) + ;({ key, value, absoluteUrl } = await this._uploader.uploadImage( + blob, + location, + author, + noblur + )) this.increaseCountFor(this._uploadRetriedSuccess, featureId) } catch (e) { console.error("Could again not upload image due to", e) this.increaseCountFor(this._uploadFailed, featureId) + await this._reportError( + e, + JSON.stringify({ + ctx: "While uploading an image in the Image Upload Manager", + featureId, + author, + targetKey, + }) + ) return undefined } } console.log("Uploading image done, creating action for", featureId) key = targetKey ?? key - if(targetKey){ + if (targetKey) { // This is a non-standard key, so we use the image link directly value = absoluteUrl } this.increaseCountFor(this._uploadFinished, featureId) - return {key, absoluteUrl, value} - + return { key, absoluteUrl, value } } private getCounterFor(collection: Map>, key: string | "*") { diff --git a/src/Logic/ImageProviders/ImageUploader.ts b/src/Logic/ImageProviders/ImageUploader.ts index bd49baa48..d8f8028ff 100644 --- a/src/Logic/ImageProviders/ImageUploader.ts +++ b/src/Logic/ImageProviders/ImageUploader.ts @@ -6,9 +6,14 @@ export interface ImageUploader { */ uploadImage( blob: File, - currentGps: [number,number], - author: string + currentGps: [number, number], + author: string, + noblur: boolean ): Promise } -export interface UploadResult{ key: string; value: string, absoluteUrl: string } +export interface UploadResult { + key: string + value: string + absoluteUrl: string +} diff --git a/src/Logic/ImageProviders/Imgur.ts b/src/Logic/ImageProviders/Imgur.ts index 80acda10a..c72ea54fd 100644 --- a/src/Logic/ImageProviders/Imgur.ts +++ b/src/Logic/ImageProviders/Imgur.ts @@ -19,7 +19,6 @@ export class Imgur extends ImageProvider { return [Imgur.apiUrl] } - SourceIcon(): BaseUIElement { return undefined } @@ -32,7 +31,7 @@ export class Imgur extends ImageProvider { key: key, provider: this, id: value, - } + }, ] } return undefined diff --git a/src/Logic/ImageProviders/Mapillary.ts b/src/Logic/ImageProviders/Mapillary.ts index 2cc370f32..a555aade9 100644 --- a/src/Logic/ImageProviders/Mapillary.ts +++ b/src/Logic/ImageProviders/Mapillary.ts @@ -118,7 +118,7 @@ export class Mapillary extends ImageProvider { } SourceIcon( - img: {id: string, url: string}, + img: { id: string; url: string }, location?: { lon: number lat: number @@ -182,7 +182,7 @@ export class Mapillary extends ImageProvider { key, rotation, lat: geometry.coordinates[1], - lon: geometry.coordinates[0] + lon: geometry.coordinates[0], } } } diff --git a/src/Logic/ImageProviders/Panoramax.ts b/src/Logic/ImageProviders/Panoramax.ts index c05da71b3..bd8970efe 100644 --- a/src/Logic/ImageProviders/Panoramax.ts +++ b/src/Logic/ImageProviders/Panoramax.ts @@ -11,24 +11,36 @@ import SvelteUIElement from "../../UI/Base/SvelteUIElement" import Panoramax_bw from "../../assets/svg/Panoramax_bw.svelte" import Link from "../../UI/Base/Link" - export default class PanoramaxImageProvider extends ImageProvider { - public static readonly singleton = new PanoramaxImageProvider() private static readonly xyz = new PanoramaxXYZ() - private static defaultPanoramax = new AuthorizedPanoramax(Constants.panoramax.url, Constants.panoramax.token) + private static defaultPanoramax = new AuthorizedPanoramax( + Constants.panoramax.url, + Constants.panoramax.token, + 3000 + ) public defaultKeyPrefixes: string[] = ["panoramax"] public readonly name: string = "panoramax" - private static knownMeta: Record = {} + private static knownMeta: Record = {} - public SourceIcon(img?: { id: string, url: string, host?: string }, location?: { lon: number; lat: number; }): BaseUIElement { + public SourceIcon( + img?: { id: string; url: string; host?: string }, + location?: { + lon: number + lat: number + } + ): BaseUIElement { const p = new Panoramax(img.host) - return new Link(new SvelteUIElement(Panoramax_bw), p.createViewLink({ - imageId: img?.id, - location - }), true) + return new Link( + new SvelteUIElement(Panoramax_bw), + p.createViewLink({ + imageId: img?.id, + location, + }), + true + ) } public addKnownMeta(meta: ImageData) { @@ -40,25 +52,22 @@ export default class PanoramaxImageProvider extends ImageProvider { * @param id * @private */ - private async getInfoFromMapComplete(id: string): Promise<{ data: ImageData, url: string }> { - const sequence = "6e702976-580b-419c-8fb3-cf7bd364e6f8" // We always reuse this sequence + private async getInfoFromMapComplete(id: string): Promise<{ data: ImageData; url: string }> { const url = `https://panoramax.mapcomplete.org/` - const data = await PanoramaxImageProvider.defaultPanoramax.imageInfo(id, sequence) + const data = await PanoramaxImageProvider.defaultPanoramax.imageInfo(id) return { url, data } } - private async getInfoFromXYZ(imageId: string): Promise<{ data: ImageData, url: string }> { + private async getInfoFromXYZ(imageId: string): Promise<{ data: ImageData; url: string }> { const data = await PanoramaxImageProvider.xyz.imageInfo(imageId) return { data, url: "https://api.panoramax.xyz/" } } - /** * Reads a geovisio-somewhat-looking-like-geojson object and converts it to a provided image - * @param meta * @private */ - private featureToImage(info: { data: ImageData, url: string }) { + private featureToImage(info: { data: ImageData; url: string }) { const meta = info?.data if (!meta) { return undefined @@ -79,8 +88,9 @@ export default class PanoramaxImageProvider extends ImageProvider { id: meta.id, url: makeAbsolute(meta.assets.sd.href), url_hd: makeAbsolute(meta.assets.hd.href), - host: meta["links"].find(l => l.rel === "root")?.href, - lon, lat, + host: meta["links"].find((l) => l.rel === "root")?.href, + lon, + lat, key: "panoramax", provider: this, status: meta.properties["geovisio:status"], @@ -89,14 +99,13 @@ export default class PanoramaxImageProvider extends ImageProvider { } } - private async getInfoFor(id: string): Promise<{ data: ImageData, url: string }> { + private async getInfoFor(id: string): Promise<{ data: ImageData; url: string }> { if (!id.match(/^[a-zA-Z0-9-]+$/)) { return undefined } const cached = PanoramaxImageProvider.knownMeta[id] if (cached) { if (new Date().getTime() - cached.time.getTime() < 1000) { - return { data: cached.data, url: undefined } } } @@ -117,10 +126,9 @@ export default class PanoramaxImageProvider extends ImageProvider { if (!Panoramax.isId(value)) { return undefined } - return [await this.getInfoFor(value).then(r => this.featureToImage(r))] + return [await this.getInfoFor(value).then((r) => this.featureToImage(r))] } - getRelevantUrls(tags: Record, prefixes: string[]): Store { const source = UIEventSource.FromPromise(super.getRelevantUrlsFor(tags, prefixes)) @@ -128,24 +136,34 @@ export default class PanoramaxImageProvider extends ImageProvider { if (data === undefined) { return true } - return data?.some(img => img?.status !== undefined && img?.status !== "ready" && img?.status !== "broken") + return data?.some( + (img) => + img?.status !== undefined && + img?.status !== "ready" && + img?.status !== "broken" && + img?.status !== "hidden" + ) } - Stores.Chronic(1500, () => - hasLoading(source.data), - ).addCallback(_ => { - console.log("UPdating... ") - super.getRelevantUrlsFor(tags, prefixes).then(data => { - console.log("New panoramax data is", data, hasLoading(data)) + Stores.Chronic(1500, () => hasLoading(source.data)).addCallback((_) => { + console.log( + "Testing panoramax URLS again as some were loading", + source.data, + hasLoading(source.data) + ) + super.getRelevantUrlsFor(tags, prefixes).then((data) => { source.set(data) return !hasLoading(data) }) }) - return source + return Stores.ListStabilized(source) } - public async DownloadAttribution(providedImage: { url: string; id: string; }): Promise { + public async DownloadAttribution(providedImage: { + url: string + id: string + }): Promise { const meta = await this.getInfoFor(providedImage.id) return { @@ -158,37 +176,76 @@ export default class PanoramaxImageProvider extends ImageProvider { public apiUrls(): string[] { return ["https://panoramax.mapcomplete.org", "https://panoramax.xyz"] } + + public static getPanoramaxInstance(host: string) { + host = new URL(host).host + if (new URL(this.defaultPanoramax.host).host === host) { + return this.defaultPanoramax + } + if (new URL(this.xyz.host).host === host) { + return this.xyz + } + return new Panoramax(host) + } } export class PanoramaxUploader implements ImageUploader { - private readonly _panoramax: AuthorizedPanoramax + public readonly panoramax: AuthorizedPanoramax + maxFileSizeInMegabytes = 100 * 1000 * 1000 // 100MB + private readonly _targetSequence: Store - constructor(url: string, token: string) { - this._panoramax = new AuthorizedPanoramax(url, token) + constructor(url: string, token: string, targetSequence: Store) { + this._targetSequence = targetSequence + this.panoramax = new AuthorizedPanoramax(url, token) } - async uploadImage(blob: File, currentGps: [number, number], author: string): Promise<{ - key: string; - value: string; + async uploadImage( + blob: File, + currentGps: [number, number], + author: string, + noblur: boolean = false, + sequenceId?: string + ): Promise<{ + key: string + value: string absoluteUrl: string }> { + // https://panoramax.openstreetmap.fr/api/docs/swagger#/ - const tags = await ExifReader.load(blob) - const hasDate = tags.DateTime !== undefined - const hasGPS = tags.GPSLatitude !== undefined && tags.GPSLongitude !== undefined + let [lon, lat] = currentGps + let datetime = new Date().toISOString() + try { + const tags = await ExifReader.load(blob) + const [[latD], [latM], [latS, latSDenom]] = < + [[number, number], [number, number], [number, number]] + >tags?.GPSLatitude.value + const [[lonD], [lonM], [lonS, lonSDenom]] = < + [[number, number], [number, number], [number, number]] + >tags?.GPSLongitude.value + lat = latD + latM / 60 + latS / (3600 * latSDenom) + lon = lonD + lonM / 60 + lonS / (3600 * lonSDenom) - const [lon, lat] = currentGps + const [date, time] = tags.DateTime.value[0].split(" ") + datetime = new Date(date.replaceAll(":", "-") + "T" + time).toISOString() - const p = this._panoramax - const defaultSequence = (await p.mySequences())[0] - const img = await p.addImage(blob, defaultSequence, { - lat: !hasGPS ? lat : undefined, - lon: !hasGPS ? lon : undefined, - datetime: !hasDate ? new Date().toISOString() : undefined, + console.log("Tags are", tags) + } catch (e) { + console.error("Could not read EXIF-tags") + } + + const p = this.panoramax + sequenceId ??= this._targetSequence?.data ?? Constants.panoramax.sequence + const sequence: { id: string; "stats:items": { count: number } } = ( + await p.mySequences() + ).find((s) => s.id === sequenceId) + const img = await p.addImage(blob, sequence, { + lon, + lat, + datetime, + isBlurred: noblur, exifOverride: { Artist: author, }, - }) PanoramaxImageProvider.singleton.addKnownMeta(img) return { @@ -197,5 +254,4 @@ export class PanoramaxUploader implements ImageUploader { absoluteUrl: img.assets.hd.href, } } - } diff --git a/src/Logic/ImageProviders/WikidataImageProvider.ts b/src/Logic/ImageProviders/WikidataImageProvider.ts index c64896559..3bee532a8 100644 --- a/src/Logic/ImageProviders/WikidataImageProvider.ts +++ b/src/Logic/ImageProviders/WikidataImageProvider.ts @@ -11,8 +11,10 @@ export class WikidataImageProvider extends ImageProvider { public static readonly singleton = new WikidataImageProvider() public readonly defaultKeyPrefixes = ["wikidata"] public readonly name = "Wikidata" - private static readonly keyBlacklist: ReadonlySet = new Set( - ["mapillary", ...Utils.Times(i => "mapillary:" + i, 10)]) + private static readonly keyBlacklist: ReadonlySet = new Set([ + "mapillary", + ...Utils.Times((i) => "mapillary:" + i, 10), + ]) private constructor() { super() @@ -26,7 +28,7 @@ export class WikidataImageProvider extends ImageProvider { return new SvelteUIElement(Wikidata_icon) } - public async ExtractUrls(key: string, value: string): Promise { + public async ExtractUrls(key: string, value: string): Promise { if (WikidataImageProvider.keyBlacklist.has(key)) { return undefined } diff --git a/src/Logic/ImageProviders/WikimediaImageProvider.ts b/src/Logic/ImageProviders/WikimediaImageProvider.ts index 631ea44f9..bf1e7a367 100644 --- a/src/Logic/ImageProviders/WikimediaImageProvider.ts +++ b/src/Logic/ImageProviders/WikimediaImageProvider.ts @@ -37,7 +37,7 @@ export class WikimediaImageProvider extends ImageProvider { return value } const baseUrl = `https://commons.wikimedia.org/wiki/Special:FilePath/${encodeURIComponent( - value, + value )}` if (useHd) { return baseUrl @@ -106,7 +106,8 @@ export class WikimediaImageProvider extends ImageProvider { value = WikimediaImageProvider.removeCommonsPrefix(value) if (value.startsWith("Category:")) { const urls = await Wikimedia.GetCategoryContents(value) - return urls.filter((url) => url.startsWith("File:")) + return urls + .filter((url) => url.startsWith("File:")) .map((image) => this.UrlForImage(image)) } if (value.startsWith("File:")) { @@ -117,7 +118,7 @@ export class WikimediaImageProvider extends ImageProvider { return undefined } // We do a last effort and assume this is a file - return [(this.UrlForImage("File:" + value))] + return [this.UrlForImage("File:" + value)] } public async DownloadAttribution(img: { url: string }): Promise { @@ -147,7 +148,7 @@ export class WikimediaImageProvider extends ImageProvider { console.warn( "The file", filename, - "has no usable metedata or license attached... Please fix the license info file yourself!", + "has no usable metedata or license attached... Please fix the license info file yourself!" ) return undefined } diff --git a/src/Logic/MetaTagging.ts b/src/Logic/MetaTagging.ts index 3e5a239a0..b93acc30b 100644 --- a/src/Logic/MetaTagging.ts +++ b/src/Logic/MetaTagging.ts @@ -3,7 +3,7 @@ import { ExtraFuncParams, ExtraFunctions, ExtraFuncType } from "./ExtraFunctions import LayerConfig from "../Models/ThemeConfig/LayerConfig" import { Feature } from "geojson" import FeaturePropertiesStore from "./FeatureSource/Actors/FeaturePropertiesStore" -import LayoutConfig from "../Models/ThemeConfig/LayoutConfig" +import ThemeConfig from "../Models/ThemeConfig/ThemeConfig" import { GeoIndexedStoreForLayer } from "./FeatureSource/Actors/GeoIndexedStore" import { IndexedFeatureSource } from "./FeatureSource/FeatureSource" import OsmObjectDownloader from "./Osm/OsmObjectDownloader" @@ -27,7 +27,7 @@ export default class MetaTagging { >() private state: { readonly selectedElement: Store - readonly layout: LayoutConfig + readonly theme: ThemeConfig readonly osmObjectDownloader: OsmObjectDownloader readonly perLayer: ReadonlyMap readonly indexedFeatures: IndexedFeatureSource @@ -40,7 +40,7 @@ export default class MetaTagging { constructor(state: { readonly selectedElement: Store - readonly layout: LayoutConfig + readonly theme: ThemeConfig readonly osmObjectDownloader: OsmObjectDownloader readonly perLayer: ReadonlyMap readonly indexedFeatures: IndexedFeatureSource @@ -48,7 +48,7 @@ export default class MetaTagging { }) { this.state = state const params = (this.params = MetaTagging.createExtraFuncParams(state)) - for (const layer of state.layout.layers) { + for (const layer of state.theme.layers) { if (layer.source === null) { continue } @@ -69,7 +69,7 @@ export default class MetaTagging { features, params, layer, - state.layout, + state.theme, state.osmObjectDownloader, state.featureProperties ) @@ -115,7 +115,7 @@ export default class MetaTagging { return } const state = this.state - const layer = state.layout.getMatchingLayer(feature.properties) + const layer = state.theme.getMatchingLayer(feature.properties) if (!layer) { return } @@ -124,7 +124,7 @@ export default class MetaTagging { [feature], this.params, layer, - state.layout, + state.theme, state.osmObjectDownloader, state.featureProperties, { @@ -161,7 +161,7 @@ export default class MetaTagging { features: Feature[], params: ExtraFuncParams, layer: LayerConfig, - layout: LayoutConfig, + theme: ThemeConfig, osmObjectDownloader: OsmObjectDownloader, featurePropertiesStores?: FeaturePropertiesStore, options?: { @@ -190,7 +190,7 @@ export default class MetaTagging { // The calculated functions - per layer - which add the new keys // Calculated functions are defined by the layer const layerFuncs = this.createRetaggingFunc(layer, ExtraFunctions.constructHelpers(params)) - const state: MetataggingState = { layout, osmObjectDownloader } + const state: MetataggingState = { theme: theme, osmObjectDownloader } let atLeastOneFeatureChanged = false let strictlyEvaluated = 0 @@ -424,7 +424,7 @@ export default class MetaTagging { } } - if (!window.location.pathname.endsWith("theme.html")) { + if (!Utils.runningFromConsole && !window.location.pathname.endsWith("theme.html")) { console.warn( "Static MetataggingObject for theme is not set; using `new Function` (aka `eval`) to get calculated tags. This might trip up the CSP" ) diff --git a/src/Logic/Osm/Actions/ChangeLocationAction.ts b/src/Logic/Osm/Actions/ChangeLocationAction.ts index 85b6a34b1..1f26469b1 100644 --- a/src/Logic/Osm/Actions/ChangeLocationAction.ts +++ b/src/Logic/Osm/Actions/ChangeLocationAction.ts @@ -33,7 +33,7 @@ export default class ChangeLocationAction extends OsmChangeAction { meta: { theme: string reason: string - }, + } ) { super(id, true) this.state = state @@ -66,12 +66,10 @@ export default class ChangeLocationAction extends OsmChangeAction { return [d] } - const insertIntoWay = new InsertPointIntoWayAction( - lat, lon, this._id, snapToWay, { - allowReuseOfPreviouslyCreatedPoints: false, - reusePointWithinMeters: 0.25, - }, - ).prepareChangeDescription() + const insertIntoWay = new InsertPointIntoWayAction(lat, lon, this._id, snapToWay, { + allowReuseOfPreviouslyCreatedPoints: false, + reusePointWithinMeters: 0.25, + }).prepareChangeDescription() return [d, { ...insertIntoWay, meta: d.meta }] } diff --git a/src/Logic/Osm/Actions/CreateMultiPolygonWithPointReuseAction.ts b/src/Logic/Osm/Actions/CreateMultiPolygonWithPointReuseAction.ts index 7b259e638..14582d405 100644 --- a/src/Logic/Osm/Actions/CreateMultiPolygonWithPointReuseAction.ts +++ b/src/Logic/Osm/Actions/CreateMultiPolygonWithPointReuseAction.ts @@ -7,7 +7,7 @@ import CreateWayWithPointReuseAction, { MergePointConfig } from "./CreateWayWith import { And } from "../../Tags/And" import { TagUtils } from "../../Tags/TagUtils" import { FeatureSource, IndexedFeatureSource } from "../../FeatureSource/FeatureSource" -import LayoutConfig from "../../../Models/ThemeConfig/LayoutConfig" +import ThemeConfig from "../../../Models/ThemeConfig/ThemeConfig" import { Position } from "geojson" import FullNodeDatabaseSource from "../../FeatureSource/TiledFeatureSource/FullNodeDatabaseSource" @@ -32,7 +32,7 @@ export default class CreateMultiPolygonWithPointReuseAction outerRingCoordinates: Position[], innerRingsCoordinates: Position[][], state: { - layout: LayoutConfig + theme: ThemeConfig changes: Changes indexedFeatures: IndexedFeatureSource fullNodeDatabase?: FullNodeDatabaseSource @@ -43,7 +43,7 @@ export default class CreateMultiPolygonWithPointReuseAction super(null, true) this._tags = [...tags, new Tag("type", "multipolygon")] this.changeType = changeType - this.theme = state?.layout?.id ?? "" + this.theme = state?.theme?.id ?? "" this.createOuterWay = new CreateWayWithPointReuseAction( [], <[number, number][]>outerRingCoordinates, @@ -55,7 +55,7 @@ export default class CreateMultiPolygonWithPointReuseAction new CreateNewWayAction( [], ringCoordinates.map(([lon, lat]) => ({ lat, lon })), - { theme: state?.layout?.id } + { theme: state?.theme?.id } ) ) diff --git a/src/Logic/Osm/Actions/CreateNewNodeAction.ts b/src/Logic/Osm/Actions/CreateNewNodeAction.ts index a935575d2..eadabcd2f 100644 --- a/src/Logic/Osm/Actions/CreateNewNodeAction.ts +++ b/src/Logic/Osm/Actions/CreateNewNodeAction.ts @@ -38,7 +38,7 @@ export default class CreateNewNodeAction extends OsmCreateAction { theme: string changeType: "create" | "import" | null specialMotivation?: string - }, + } ) { super(null, basicTags !== undefined && basicTags.length > 0) this._basicTags = basicTags @@ -102,21 +102,12 @@ export default class CreateNewNodeAction extends OsmCreateAction { return [newPointChange] } - const change = new InsertPointIntoWayAction( - this._lat, - this._lon, - id, - this._snapOnto, - { - reusePointWithinMeters: this._reusePointDistance, - allowReuseOfPreviouslyCreatedPoints: this._reusePreviouslyCreatedPoint, - }, - ).prepareChangeDescription() + const change = new InsertPointIntoWayAction(this._lat, this._lon, id, this._snapOnto, { + reusePointWithinMeters: this._reusePointDistance, + allowReuseOfPreviouslyCreatedPoints: this._reusePreviouslyCreatedPoint, + }).prepareChangeDescription() - return [ - newPointChange, - { ...change, meta: this.meta }, - ] + return [newPointChange, { ...change, meta: this.meta }] } private setElementId(id: number) { diff --git a/src/Logic/Osm/Actions/CreateWayWithPointReuseAction.ts b/src/Logic/Osm/Actions/CreateWayWithPointReuseAction.ts index 9a87f7589..eba4275ec 100644 --- a/src/Logic/Osm/Actions/CreateWayWithPointReuseAction.ts +++ b/src/Logic/Osm/Actions/CreateWayWithPointReuseAction.ts @@ -9,7 +9,7 @@ import { FeatureSource, IndexedFeatureSource } from "../../FeatureSource/Feature import StaticFeatureSource from "../../FeatureSource/Sources/StaticFeatureSource" import CreateNewNodeAction from "./CreateNewNodeAction" import CreateNewWayAction from "./CreateNewWayAction" -import LayoutConfig from "../../../Models/ThemeConfig/LayoutConfig" +import ThemeConfig from "../../../Models/ThemeConfig/ThemeConfig" import FullNodeDatabaseSource from "../../FeatureSource/TiledFeatureSource/FullNodeDatabaseSource" import { Position } from "geojson" @@ -69,7 +69,7 @@ export default class CreateWayWithPointReuseAction */ private readonly _coordinateInfo: CoordinateInfo[] private readonly _state: { - layout: LayoutConfig + theme: ThemeConfig changes: Changes indexedFeatures: IndexedFeatureSource fullNodeDatabase?: FullNodeDatabaseSource @@ -80,7 +80,7 @@ export default class CreateWayWithPointReuseAction tags: Tag[], coordinates: Position[], state: { - layout: LayoutConfig + theme: ThemeConfig changes: Changes indexedFeatures: IndexedFeatureSource fullNodeDatabase?: FullNodeDatabaseSource @@ -203,7 +203,7 @@ export default class CreateWayWithPointReuseAction } public async CreateChangeDescriptions(changes: Changes): Promise { - const theme = this._state?.layout?.id + const theme = this._state?.theme?.id const allChanges: ChangeDescription[] = [] const nodeIdsToUse: { lat: number; lon: number; nodeId?: number }[] = [] for (let i = 0; i < this._coordinateInfo.length; i++) { diff --git a/src/Logic/Osm/Actions/InsertPointIntoWayAction.ts b/src/Logic/Osm/Actions/InsertPointIntoWayAction.ts index fb013e56e..f50e9f9a6 100644 --- a/src/Logic/Osm/Actions/InsertPointIntoWayAction.ts +++ b/src/Logic/Osm/Actions/InsertPointIntoWayAction.ts @@ -2,7 +2,7 @@ import { ChangeDescription } from "./ChangeDescription" import { GeoOperations } from "../../GeoOperations" import { OsmWay } from "../OsmObject" -export default class InsertPointIntoWayAction { +export default class InsertPointIntoWayAction { private readonly _lat: number private readonly _lon: number private readonly _idToInsert: number @@ -21,22 +21,19 @@ export default class InsertPointIntoWayAction { allowReuseOfPreviouslyCreatedPoints?: boolean reusePointWithinMeters?: number } - ){ + ) { this._lat = lat this._lon = lon this._idToInsert = idToInsert this._snapOnto = snapOnto this._options = options - } /** * Tries to create the changedescription of the way where the point is inserted * Returns `undefined` if inserting failed */ - public prepareChangeDescription(): Omit | undefined { - - + public prepareChangeDescription(): Omit | undefined { // Project the point onto the way console.log("Snapping a node onto an existing way...") const geojson = this._snapOnto.asGeoJson() @@ -59,13 +56,19 @@ export default class InsertPointIntoWayAction { } const prev = outerring[index] - if (GeoOperations.distanceBetween(prev, projectedCoor) < this._options.reusePointWithinMeters) { + if ( + GeoOperations.distanceBetween(prev, projectedCoor) < + this._options.reusePointWithinMeters + ) { // We reuse this point instead! reusedPointId = this._snapOnto.nodes[index] reusedPointCoordinates = this._snapOnto.coordinates[index] } const next = outerring[index + 1] - if (GeoOperations.distanceBetween(next, projectedCoor) < this._options.reusePointWithinMeters) { + if ( + GeoOperations.distanceBetween(next, projectedCoor) < + this._options.reusePointWithinMeters + ) { // We reuse this point instead! reusedPointId = this._snapOnto.nodes[index + 1] reusedPointCoordinates = this._snapOnto.coordinates[index + 1] @@ -82,15 +85,13 @@ export default class InsertPointIntoWayAction { locations.splice(index + 1, 0, [this._lon, this._lat]) ids.splice(index + 1, 0, this._idToInsert) - return { + return { type: "way", id: this._snapOnto.id, changes: { coordinates: locations, nodes: ids, - } + }, } - } - } diff --git a/src/Logic/Osm/Actions/ReplaceGeometryAction.ts b/src/Logic/Osm/Actions/ReplaceGeometryAction.ts index 07be721fb..07904c955 100644 --- a/src/Logic/Osm/Actions/ReplaceGeometryAction.ts +++ b/src/Logic/Osm/Actions/ReplaceGeometryAction.ts @@ -217,7 +217,7 @@ export default class ReplaceGeometryAction extends OsmChangeAction implements Pr const url = `${ this.state.osmConnection?._oauth_config?.url ?? "https://api.openstreetmap.org" }/api/0.6/${this.wayToReplaceId}/full` - const rawData = await Utils.downloadJsonCached(url, 1000) + const rawData = await Utils.downloadJsonCached<{ elements: any[] }>(url, 1000) parsed = OsmObject.ParseObjects(rawData.elements) } const allNodes = parsed.filter((o) => o.type === "node") diff --git a/src/Logic/Osm/Changes.ts b/src/Logic/Osm/Changes.ts index c84fa9b18..69fd53f85 100644 --- a/src/Logic/Osm/Changes.ts +++ b/src/Logic/Osm/Changes.ts @@ -24,7 +24,7 @@ import FeaturePropertiesStore from "../FeatureSource/Actors/FeaturePropertiesSto */ export class Changes { public readonly pendingChanges: UIEventSource = - LocalStorageSource.GetParsed("pending-changes", []) + LocalStorageSource.getParsed("pending-changes", []) public readonly allChanges = new UIEventSource(undefined) public readonly state: { allElements?: IndexedFeatureSource @@ -49,11 +49,11 @@ export class Changes { featureSwitches: { featureSwitchMorePrivacy?: Store featureSwitchIsTesting?: Store - }, - osmConnection: OsmConnection, - reportError?: (error: string) => void, - featureProperties?: FeaturePropertiesStore, - historicalUserLocations?: FeatureSource, + } + osmConnection: OsmConnection + reportError?: (error: string) => void + featureProperties?: FeaturePropertiesStore + historicalUserLocations?: FeatureSource allElements?: IndexedFeatureSource }, leftRightSensitive: boolean = false, @@ -64,15 +64,18 @@ export class Changes { this.allChanges.setData([...this.pendingChanges.data]) // If a pending change contains a negative ID, we save that this._nextId = Math.min(-1, ...(this.pendingChanges.data?.map((pch) => pch.id ?? 0) ?? [])) - if(isNaN(this._nextId) && state.reportError !== undefined){ - state.reportError("Got a NaN as nextID. Pending changes IDs are:" +this.pendingChanges.data?.map(pch => pch?.id).join(".")) + if (isNaN(this._nextId) && state.reportError !== undefined) { + state.reportError( + "Got a NaN as nextID. Pending changes IDs are:" + + this.pendingChanges.data?.map((pch) => pch?.id).join(".") + ) this._nextId = -100 } this.state = state this.backend = state.osmConnection.Backend() this._reportError = reportError this._changesetHandler = new ChangesetHandler( - state.featureSwitches.featureSwitchIsTesting, + state.featureSwitches?.featureSwitchIsTesting ?? new ImmutableStore(false), state.osmConnection, state.featureProperties, this, @@ -84,12 +87,12 @@ export class Changes { // This doesn't matter however, as the '-1' is per piecewise upload, not global per changeset } - public static createTestObject(): Changes{ + public static createTestObject(): Changes { return new Changes({ osmConnection: new OsmConnection(), - featureSwitches:{ - featureSwitchIsTesting: new ImmutableStore(true) - } + featureSwitches: { + featureSwitchIsTesting: new ImmutableStore(true), + }, }) } @@ -297,6 +300,23 @@ export class Changes { newObjects: OsmObject[] modifiedObjects: OsmObject[] deletedObjects: OsmObject[] + } { + return Changes.createChangesetObjectsStatic( + changes, + downloadedOsmObjects, + ignoreNoCreate, + this.previouslyCreated + ) + } + public static createChangesetObjectsStatic( + changes: ChangeDescription[], + downloadedOsmObjects: OsmObject[], + ignoreNoCreate: boolean = false, + previouslyCreated: OsmObject[] + ): { + newObjects: OsmObject[] + modifiedObjects: OsmObject[] + deletedObjects: OsmObject[] } { /** * This is a rather complicated method which does a lot of stuff. @@ -322,7 +342,7 @@ export class Changes { states.set(o.type + "/" + o.id, "unchanged") } - for (const o of this.previouslyCreated) { + for (const o of previouslyCreated) { objects.set(o.type + "/" + o.id, o) states.set(o.type + "/" + o.id, "unchanged") } @@ -372,7 +392,7 @@ export class Changes { throw "Hmm? This is a bug" } objects.set(id, osmObj) - this.previouslyCreated.push(osmObj) + previouslyCreated.push(osmObj) } const state = states.get(id) @@ -837,7 +857,16 @@ export class Changes { ) // We keep all the refused changes to try them again - this.pendingChanges.setData(refusedChanges.flatMap((c) => c)) + this.pendingChanges.setData( + refusedChanges + .flatMap((c) => c) + .filter((c) => { + if (c.id === null || c.id === undefined) { + return false + } + return true + }) + ) } catch (e) { console.error( "Could not handle changes - probably an old, pending changeset in localstorage with an invalid format; erasing those", diff --git a/src/Logic/Osm/ChangesetHandler.ts b/src/Logic/Osm/ChangesetHandler.ts index 33d336765..01af622a5 100644 --- a/src/Logic/Osm/ChangesetHandler.ts +++ b/src/Logic/Osm/ChangesetHandler.ts @@ -205,12 +205,12 @@ export class ChangesetHandler { try { return await this.UploadWithNew(generateChangeXML, openChangeset, extraMetaTags) } catch (e) { - const req = (e) + const req = e if (req.status === 403) { // Someone got the banhammer // This is the message that OSM returned, will be something like "you have an important message, go to osm.org" - const msg = req.responseText - alert(msg+"\n\nWe'll take you to openstreetmap.org now") + const msg = req.responseText + alert(msg + "\n\nWe'll take you to openstreetmap.org now") window.location.replace(this.osmConnection.Backend()) return } diff --git a/src/Logic/Osm/OsmConnection.ts b/src/Logic/Osm/OsmConnection.ts index d6be0d87c..80e07277b 100644 --- a/src/Logic/Osm/OsmConnection.ts +++ b/src/Logic/Osm/OsmConnection.ts @@ -154,6 +154,7 @@ export class OsmConnection { console.log("Not authenticated") } } + public GetPreference( key: string, defaultValue: string = undefined, @@ -161,10 +162,10 @@ export class OsmConnection { prefix?: string } ): UIEventSource { - const prefix =options?.prefix ?? "mapcomplete-" + const prefix = options?.prefix ?? "mapcomplete-" return >this.preferencesHandler.getPreference(key, defaultValue, prefix) - } + public getPreference( key: string, defaultValue: string = undefined, @@ -172,6 +173,7 @@ export class OsmConnection { ): UIEventSource { return >this.preferencesHandler.getPreference(key, defaultValue, prefix) } + public OnLoggedIn(action: (userDetails: UserDetails) => void) { this._onLoggedIn.push(action) } @@ -210,7 +212,7 @@ export class OsmConnection { console.log("Trying to log in...") this.updateAuthObject() - LocalStorageSource.Get("location_before_login").setData( + LocalStorageSource.get("location_before_login").setData( Utils.runningFromConsole ? undefined : window.location.href ) this.auth.xhr( @@ -521,7 +523,7 @@ export class OsmConnection { this.auth.authenticate(function () { // Fully authed at this point console.log("Authentication successful!") - const previousLocation = LocalStorageSource.Get("location_before_login") + const previousLocation = LocalStorageSource.get("location_before_login") callback(previousLocation.data) }) } @@ -534,7 +536,10 @@ export class OsmConnection { redirect_uri: Utils.runningFromConsole ? "https://mapcomplete.org/land.html" : window.location.protocol + "//" + window.location.host + "/land.html", - singlepage: true, // We always use 'singlePage', it is the most stable - including in PWA + /* We use 'singlePage' as much as possible, it is the most stable - including in PWA. + * However, this breaks in iframes so we open a popup in that case + */ + singlepage: !this._iframeMode, auto: true, apiUrl: this._oauth_config.api_url ?? this._oauth_config.url, }) diff --git a/src/Logic/Osm/OsmPreferences.ts b/src/Logic/Osm/OsmPreferences.ts index f53acbf20..4b30c4212 100644 --- a/src/Logic/Osm/OsmPreferences.ts +++ b/src/Logic/Osm/OsmPreferences.ts @@ -5,8 +5,11 @@ import OSMAuthInstance = OSMAuth.osmAuth import { Utils } from "../../Utils" export class OsmPreferences { - - private preferences: Record> = {} + /** + * A 'cache' of all the preference stores + * @private + */ + private readonly preferences: Record> = {} private localStorageInited: Set = new Set() /** @@ -15,6 +18,10 @@ export class OsmPreferences { */ private seenKeys: string[] = [] + /** + * Contains a dictionary which has all preferences + * @private + */ private readonly _allPreferences: UIEventSource> = new UIEventSource({}) public readonly allPreferences: Store>> = this._allPreferences private readonly _fakeUser: boolean @@ -31,7 +38,6 @@ export class OsmPreferences { }) } - private setPreferencesAll(key: string, value: string) { if (this._allPreferences.data[key] !== value) { this._allPreferences.data[key] = value @@ -46,11 +52,12 @@ export class OsmPreferences { } return this.preferences[key] } - const pref = this.preferences[key] = new UIEventSource(value, "preference: " + key) + const pref = (this.preferences[key] = new UIEventSource(value, "preference: " + key)) if (value) { this.setPreferencesAll(key, value) } - pref.addCallback(v => { + pref.addCallback((v) => { + console.log("Got an update:", key, "--->", v) this.uploadKvSplit(key, v) this.setPreferencesAll(key, v) }) @@ -62,7 +69,7 @@ export class OsmPreferences { this.seenKeys = Object.keys(prefs) const legacy = OsmPreferences.getLegacyCombinedItems(prefs) const merged = OsmPreferences.mergeDict(prefs) - if(Object.keys(legacy).length > 0){ + if (Object.keys(legacy).length > 0) { await this.removeLegacy(legacy) } for (const key in merged) { @@ -73,12 +80,7 @@ export class OsmPreferences { } } - - public getPreference( - key: string, - defaultValue: string = undefined, - prefix?: string, - ) { + public getPreference(key: string, defaultValue: string = undefined, prefix?: string) { return this.getPreferenceSeedFromlocal(key, defaultValue, { prefix }) } @@ -91,27 +93,29 @@ export class OsmPreferences { key: string, defaultValue: string = undefined, options?: { - prefix?: string, + prefix?: string saveToLocalStorage?: true | boolean - }, + } ): UIEventSource { if (options?.prefix) { key = options.prefix + key } key = key.replace(/[:/"' {}.%\\]/g, "") - - const localStorage = LocalStorageSource.Get(key) + const localStorage = LocalStorageSource.get(key) // cached if (localStorage.data === "null" || localStorage.data === "undefined") { localStorage.set(undefined) } - const pref: UIEventSource = this.initPreference(key, localStorage.data ?? defaultValue) + const pref: UIEventSource = this.initPreference( + key, + localStorage.data ?? defaultValue + ) // cached if (this.localStorageInited.has(key)) { return pref } if (options?.saveToLocalStorage ?? true) { - pref.addCallback(v => localStorage.set(v)) // Keep a local copy + pref.addCallback((v) => localStorage.set(v)) // Keep a local copy } this.localStorageInited.add(key) return pref @@ -125,7 +129,7 @@ export class OsmPreferences { public async removeLegacy(legacyDict: Record) { for (const k in legacyDict) { const v = legacyDict[k] - console.log("Upgrading legacy preference",k ) + console.log("Upgrading legacy preference", k) await this.removeAllWithPrefix(k) this.osmConnection.getPreference(k).set(v) } @@ -139,20 +143,19 @@ export class OsmPreferences { const newDict = {} const allKeys: string[] = Object.keys(dict) - const normalKeys = allKeys.filter(k => !k.match(/[a-z-_0-9A-Z]*:[0-9]+/)) + const normalKeys = allKeys.filter((k) => !k.match(/[a-z-_0-9A-Z]*:[0-9]+/)) for (const normalKey of normalKeys) { if (normalKey.match(/-combined-[0-9]*$/) || normalKey.match(/-combined-length$/)) { // Ignore legacy keys continue } const partKeys = OsmPreferences.keysStartingWith(allKeys, normalKey) - const parts = partKeys.map(k => dict[k]) + const parts = partKeys.map((k) => dict[k]) newDict[normalKey] = parts.join("") } return newDict } - /** * Gets all items which have a 'combined'-string, the legacy long preferences * @@ -171,7 +174,9 @@ export class OsmPreferences { public static getLegacyCombinedItems(dict: Record): Record { const merged: Record = {} const keys = Object.keys(dict) - const toCheck = Utils.NoNullInplace(Utils.Dedup(keys.map(k => k.match(/(.*)-combined-[0-9]+$/)?.[1]))) + const toCheck = Utils.NoNullInplace( + Utils.Dedup(keys.map((k) => k.match(/(.*)-combined-[0-9]+$/)?.[1])) + ) for (const key of toCheck) { let i = 0 let str = "" @@ -186,7 +191,6 @@ export class OsmPreferences { return merged } - /** * Bulk-downloads all preferences * @private @@ -212,10 +216,9 @@ export class OsmPreferences { dict[k] = pref.getAttribute("v") } resolve(dict) - }, + } ) }) - } /** @@ -229,7 +232,7 @@ export class OsmPreferences { * */ private static keysStartingWith(allKeys: string[], key: string): string[] { - const keys = allKeys.filter(k => k === key || k.match(new RegExp(key + ":[0-9]+"))) + const keys = allKeys.filter((k) => k === key || k.match(new RegExp(key + ":[0-9]+"))) keys.sort() return keys } @@ -240,14 +243,12 @@ export class OsmPreferences { * */ private async uploadKvSplit(k: string, v: string) { - if (v === null || v === undefined || v === "" || v === "undefined" || v === "null") { const keysToDelete = OsmPreferences.keysStartingWith(this.seenKeys, k) - await Promise.all(keysToDelete.map(k => this.deleteKeyDirectly(k))) + await Promise.all(keysToDelete.map((k) => this.deleteKeyDirectly(k))) return } - await this.uploadKeyDirectly(k, v.slice(0, 255)) v = v.slice(255) let i = 0 @@ -256,7 +257,6 @@ export class OsmPreferences { v = v.slice(255) i++ } - } /** @@ -274,25 +274,23 @@ export class OsmPreferences { return } return new Promise((resolve, reject) => { - - this.auth.xhr( - { - method: "DELETE", - path: "/api/0.6/user/preferences/" + encodeURIComponent(k), - headers: { "Content-Type": "text/plain" }, - }, - (error) => { - if (error) { - console.warn("Could not remove preference", error) - reject(error) - return - } - console.debug("Preference ", k, "removed!") - resolve() - }, - ) - }, - ) + this.auth.xhr( + { + method: "DELETE", + path: "/api/0.6/user/preferences/" + encodeURIComponent(k), + headers: { "Content-Type": "text/plain" }, + }, + (error) => { + if (error) { + console.warn("Could not remove preference", error) + reject(error) + return + } + console.debug("Preference ", k, "removed!") + resolve() + } + ) + }) } /** @@ -319,7 +317,6 @@ export class OsmPreferences { } return new Promise((resolve, reject) => { - this.auth.xhr( { method: "PUT", @@ -334,17 +331,18 @@ export class OsmPreferences { return } resolve() - }, + } ) }) } async removeAllWithPrefix(prefix: string) { const keys = this.seenKeys - for (const key in keys) { + for (const key of keys) { + if (!key.startsWith(prefix)) { + continue + } await this.deleteKeyDirectly(key) } } - - } diff --git a/src/Logic/Search/CombinedSearcher.ts b/src/Logic/Search/CombinedSearcher.ts index 2ab9a1843..ad5dc65b9 100644 --- a/src/Logic/Search/CombinedSearcher.ts +++ b/src/Logic/Search/CombinedSearcher.ts @@ -1,4 +1,8 @@ -import GeocodingProvider, { SearchResult, GeocodingOptions, GeocodeResult } from "./GeocodingProvider" +import GeocodingProvider, { + SearchResult, + GeocodingOptions, + GeocodeResult, +} from "./GeocodingProvider" import { Utils } from "../../Utils" import { Store, Stores } from "../UIEventSource" @@ -8,7 +12,7 @@ export default class CombinedSearcher implements GeocodingProvider { constructor(...providers: ReadonlyArray) { this._providers = Utils.NoNull(providers) - this._providersWithSuggest = this._providers.filter(pr => pr.suggest !== undefined) + this._providersWithSuggest = this._providers.filter((pr) => pr.suggest !== undefined) } /** @@ -21,12 +25,10 @@ export default class CombinedSearcher implements GeocodingProvider { const results: GeocodeResult[] = [] const seenIds = new Set() for (const geocodedElement of geocoded) { - if(geocodedElement === undefined){ + if (geocodedElement === undefined) { continue } for (const entry of geocodedElement) { - - if (entry.osm_id === undefined) { throw "Invalid search result: a search result always must have an osm_id to be able to merge results from different sources" } @@ -42,14 +44,13 @@ export default class CombinedSearcher implements GeocodingProvider { } async search(query: string, options?: GeocodingOptions): Promise { - const results = (await Promise.all(this._providers.map(pr => pr.search(query, options)))) + const results = await Promise.all(this._providers.map((pr) => pr.search(query, options))) return CombinedSearcher.merge(results) } suggest(query: string, options?: GeocodingOptions): Store { return Stores.concat( - this._providersWithSuggest.map(pr => pr.suggest(query, options))) - .map(gcrss => CombinedSearcher.merge(gcrss)) - + this._providersWithSuggest.map((pr) => pr.suggest(query, options)) + ).map((gcrss) => CombinedSearcher.merge(gcrss)) } } diff --git a/src/Logic/Search/CoordinateSearch.ts b/src/Logic/Search/CoordinateSearch.ts index d531da759..58e7f7e7a 100644 --- a/src/Logic/Search/CoordinateSearch.ts +++ b/src/Logic/Search/CoordinateSearch.ts @@ -1,13 +1,15 @@ import GeocodingProvider, { GeocodeResult } from "./GeocodingProvider" import { Utils } from "../../Utils" import { ImmutableStore, Store } from "../UIEventSource" - +import CoordinateParser from "coordinate-parser" /** * A simple search-class which interprets possible locations */ export default class CoordinateSearch implements GeocodingProvider { private static readonly latLonRegexes: ReadonlyArray = [ - /^(-?[0-9]+\.[0-9]+)[ ,;/\\]+(-?[0-9]+\.[0-9]+)/, + /^ *(-?[0-9]+\.[0-9]+)[ ,;/\\]+(-?[0-9]+\.[0-9]+)/, + /^ *(-?[0-9]+,[0-9]+)[ ;/\\]+(-?[0-9]+,[0-9]+)/, + /lat[:=]? *['"]?(-?[0-9]+\.[0-9]+)['"]?[ ,;&]+lon[:=]? *['"]?(-?[0-9]+\.[0-9]+)['"]?/, /lat[:=]? *['"]?(-?[0-9]+\.[0-9]+)['"]?[ ,;&]+lng[:=]? *['"]?(-?[0-9]+\.[0-9]+)['"]?/, @@ -17,9 +19,10 @@ export default class CoordinateSearch implements GeocodingProvider { private static readonly lonLatRegexes: ReadonlyArray = [ /^(-?[0-9]+\.[0-9]+)[ ,;/\\]+(-?[0-9]+\.[0-9]+)/, + /^ *(-?[0-9]+,[0-9]+)[ ;/\\]+(-?[0-9]+,[0-9]+)/, + /lon[:=]? *['"]?(-?[0-9]+\.[0-9]+)['"]?[ ,;&]+lat[:=]? *['"]?(-?[0-9]+\.[0-9]+)['"]?/, /lng[:=]? *['"]?(-?[0-9]+\.[0-9]+)['"]?[ ,;&]+lat[:=]? *['"]?(-?[0-9]+\.[0-9]+)['"]?/, - ] /** @@ -58,21 +61,48 @@ export default class CoordinateSearch implements GeocodingProvider { * const results = ls.directSearch(' lat="-57.5802905" lon="-12.7202538"') * results.length // => 1 * results[0] // => {lat: -57.5802905, lon: -12.7202538, "display_name": "lon: -12.720254, lat: -57.58029", "category": "coordinate","osm_id": "-12.720254/-57.58029", "source": "coordinate:latlon"} + * + * // Should work with commas + * const ls = new CoordinateSearch() + * const results = ls.directSearch('51,047977 3,51184') + * results.length // => 2 + * results[0] // => {lat: 51.047977, lon: 3.51184, "display_name": "lon: 3.51184, lat: 51.047977", "category": "coordinate","osm_id": "3.51184/51.047977", "source": "coordinate:latlon"} */ private directSearch(query: string): GeocodeResult[] { - const matches = Utils.NoNull(CoordinateSearch.latLonRegexes.map(r => query.match(r))) - .map(m => CoordinateSearch.asResult(m[2], m[1], "latlon") ) + const matches = Utils.NoNull(CoordinateSearch.latLonRegexes.map((r) => query.match(r))).map( + (m) => CoordinateSearch.asResult(m[2], m[1], "latlon") + ) - const matchesLonLat = Utils.NoNull(CoordinateSearch.lonLatRegexes.map(r => query.match(r))) - .map(m => CoordinateSearch.asResult(m[1], m[2], "lonlat")) - return matches.concat(matchesLonLat) + const matchesLonLat = Utils.NoNull( + CoordinateSearch.lonLatRegexes.map((r) => query.match(r)) + ).map((m) => CoordinateSearch.asResult(m[1], m[2], "lonlat")) + const init = matches.concat(matchesLonLat) + if (init.length > 0) { + return init + } + + try { + const c = new CoordinateParser(query) + return [ + CoordinateSearch.asResult( + "" + c.getLongitude(), + "" + c.getLatitude(), + "coordinateParser" + ), + ] + } catch { + return [] + } } private static round6(n: number): string { - return "" + (Math.round(n * 1000000) / 1000000) + return "" + Math.round(n * 1000000) / 1000000 } private static asResult(lonIn: string, latIn: string, source: string): GeocodeResult { + lonIn = lonIn.replaceAll(",", ".") + latIn = latIn.replaceAll(",", ".") + const lon = Number(lonIn) const lat = Number(latIn) const lonStr = CoordinateSearch.round6(lon) @@ -82,7 +112,7 @@ export default class CoordinateSearch implements GeocodingProvider { lon, display_name: "lon: " + lonStr + ", lat: " + latStr, category: "coordinate", - source: "coordinate:"+source, + source: "coordinate:" + source, osm_id: lonStr + "/" + latStr, } } @@ -94,5 +124,4 @@ export default class CoordinateSearch implements GeocodingProvider { async search(query: string): Promise { return this.directSearch(query) } - } diff --git a/src/Logic/Search/FilterSearch.ts b/src/Logic/Search/FilterSearch.ts index a08b0bb5c..d82a14160 100644 --- a/src/Logic/Search/FilterSearch.ts +++ b/src/Logic/Search/FilterSearch.ts @@ -4,18 +4,22 @@ import Constants from "../../Models/Constants" import FilterConfig, { FilterConfigOption } from "../../Models/ThemeConfig/FilterConfig" import LayerConfig from "../../Models/ThemeConfig/LayerConfig" import LayerState from "../State/LayerState" -import LayoutConfig from "../../Models/ThemeConfig/LayoutConfig" - -export type FilterSearchResult = { option: FilterConfigOption, filter: FilterConfig, layer: LayerConfig, index: number } +import ThemeConfig from "../../Models/ThemeConfig/ThemeConfig" +export type FilterSearchResult = { + option: FilterConfigOption + filter: FilterConfig + layer: LayerConfig + index: number +} /** * Searches matching filters */ export default class FilterSearch { - private readonly _state: {layerState: LayerState, layout: LayoutConfig} + private readonly _state: { layerState: LayerState; theme: ThemeConfig } - constructor(state: {layerState: LayerState, layout: LayoutConfig}) { + constructor(state: { layerState: LayerState; theme: ThemeConfig }) { this._state = state } @@ -23,14 +27,17 @@ export default class FilterSearch { if (query.length === 0) { return [] } - const queries = query.split(" ").map(query => { - if (!Utils.isEmoji(query)) { - return Utils.simplifyStringForSearch(query) - } - return query - }).filter(q => q.length > 0) + const queries = query + .split(" ") + .map((query) => { + if (!Utils.isEmoji(query)) { + return Utils.simplifyStringForSearch(query) + } + return query + }) + .filter((q) => q.length > 0) const possibleFilters: FilterSearchResult[] = [] - for (const layer of this._state.layout.layers) { + for (const layer of this._state.theme.layers) { if (!Array.isArray(layer.filters)) { continue } @@ -46,29 +53,36 @@ export default class FilterSearch { if (!option.osmTags) { continue } - if(option.fields.length > 0){ + if (option.fields.length > 0) { // Filters with a search field are not supported as of now, see #2141 continue } - let terms = ([option.question.txt, - ...(option.searchTerms?.[Locale.language.data] ?? option.searchTerms?.["en"] ?? [])] - .flatMap(term => [term, ...(term?.split(" ") ?? [])])) - terms = terms.map(t => Utils.simplifyStringForSearch(t)) + let terms = [ + option.question.txt, + ...(option.searchTerms?.[Locale.language.data] ?? + option.searchTerms?.["en"] ?? + []), + ].flatMap((term) => [term, ...(term?.split(" ") ?? [])]) + terms = terms.map((t) => Utils.simplifyStringForSearch(t)) terms.push(option.emoji) Utils.NoNullInplace(terms) - const distances = queries.flatMap(query => terms.map(entry => { - const d = Utils.levenshteinDistance(query, entry.slice(0, query.length)) - const dRelative = d / query.length - return dRelative - })) + const distances = queries.flatMap((query) => + terms.map((entry) => { + const d = Utils.levenshteinDistance(query, entry.slice(0, query.length)) + const dRelative = d / query.length + return dRelative + }) + ) const levehnsteinD = Math.min(...distances) if (levehnsteinD > 0.25) { continue } possibleFilters.push({ - option, layer, filter, index: - i, + option, + layer, + filter, + index: i, }) } } @@ -85,7 +99,7 @@ export default class FilterSearch { if (!Array.isArray(filteredLayer.layerDef.filters)) { continue } - if (Constants.priviliged_layers.indexOf( id) >= 0) { + if (Constants.priviliged_layers.indexOf(id) >= 0) { continue } for (const filter of filteredLayer.layerDef.filters) { @@ -116,13 +130,16 @@ export default class FilterSearch { * Note that this depends on the language and the displayed text. For example, two filters {"en": "A", "nl": "B"} and {"en": "X", "nl": "B"} will be joined for dutch but not for English * */ - static mergeSemiIdenticalLayers(filters: ReadonlyArray, language: string):T[][] { - const results : Record = {} + static mergeSemiIdenticalLayers( + filters: ReadonlyArray, + language: string + ): T[][] { + const results: Record = {} for (const filter of filters) { const txt = filter.option.question.textFor(language) - if(results[txt]){ + if (results[txt]) { results[txt].push(filter) - }else{ + } else { results[txt] = [filter] } } diff --git a/src/Logic/Search/GeocodingFeatureSource.ts b/src/Logic/Search/GeocodingFeatureSource.ts index 65a449638..f4f3960f6 100644 --- a/src/Logic/Search/GeocodingFeatureSource.ts +++ b/src/Logic/Search/GeocodingFeatureSource.ts @@ -7,8 +7,8 @@ export default class GeocodingFeatureSource implements FeatureSource { public features: Store>[]> constructor(provider: Store) { - this.features = provider.map(geocoded => { - if(geocoded === undefined){ + this.features = provider.map((geocoded) => { + if (geocoded === undefined) { return [] } const features: Feature[] = [] @@ -28,18 +28,16 @@ export default class GeocodingFeatureSource implements FeatureSource { osm_id: gc.osm_type + "/" + gc.osm_id, osm_key: gc.feature?.properties?.osm_key, osm_value: gc.feature?.properties?.osm_value, - source: gc.source + source: gc.source, }, geometry: { type: "Point", - coordinates: [gc.lon, gc.lat] - } + coordinates: [gc.lon, gc.lat], + }, }) - } return features }) } - } diff --git a/src/Logic/Search/GeocodingProvider.ts b/src/Logic/Search/GeocodingProvider.ts index c0ad756ca..ea6187e0d 100644 --- a/src/Logic/Search/GeocodingProvider.ts +++ b/src/Logic/Search/GeocodingProvider.ts @@ -8,7 +8,7 @@ import { LayerConfigJson } from "../../Models/ThemeConfig/Json/LayerConfigJson" import { GeoOperations } from "../GeoOperations" export type GeocodingCategory = - "coordinate" + | "coordinate" | "city" | "house" | "street" @@ -19,7 +19,7 @@ export type GeocodingCategory = | "airport" | "shop" -export type GeocodeResult = { +export type GeocodeResult = { /** * The name of the feature being displayed */ @@ -27,8 +27,8 @@ export type GeocodeResult = { /** * Some optional, extra information */ - description?: string | Promise, - feature?: Feature, + description?: string | Promise + feature?: Feature lat: number lon: number /** @@ -37,22 +37,18 @@ export type GeocodeResult = { */ boundingbox?: number[] osm_type?: "node" | "way" | "relation" - osm_id: string, - category?: GeocodingCategory, - payload?: object, + osm_id: string + category?: GeocodingCategory + payload?: object source?: string } -export type SearchResult = - | GeocodeResult +export type SearchResult = GeocodeResult export interface GeocodingOptions { bbox?: BBox } - export default interface GeocodingProvider { - - search(query: string, options?: GeocodingOptions): Promise /** @@ -62,26 +58,28 @@ export default interface GeocodingProvider { suggest?(query: string, options?: GeocodingOptions): Store } -export type ReverseGeocodingResult = Feature +export type ReverseGeocodingResult = Feature< + Geometry, + { + osm_id: number + osm_type: "node" | "way" | "relation" + country: string + city: string + countrycode: string + type: GeocodingCategory + street: string + } +> export interface ReverseGeocodingProvider { reverseSearch( coordinate: { lon: number; lat: number }, zoom: number, - language?: string, - ): Promise; + language?: string + ): Promise } export class GeocodingUtils { - public static searchLayer = GeocodingUtils.initSearchLayer() private static initSearchLayer(): LayerConfig { @@ -103,16 +101,14 @@ export class GeocodingUtils { train_station: 14, airport: 13, shop: 16, - } - public static mergeSimilarResults(results: GeocodeResult[]){ + public static mergeSimilarResults(results: GeocodeResult[]) { const byName: Record = {} - for (const result of results) { const nm = result.display_name - if(!byName[nm]) { + if (!byName[nm]) { byName[nm] = [] } byName[nm].push(result) @@ -123,11 +119,13 @@ export class GeocodingUtils { const options = byName[nm] const added = options[0] merged.push(added) - const centers: [number,number][] = [[added.lon, added.lat]] + const centers: [number, number][] = [[added.lon, added.lat]] for (const other of options) { - const otherCenter:[number,number] = [other.lon, other.lat] - const nearbyFound= centers.some(center => GeoOperations.distanceBetween(center, otherCenter) < 500) - if(!nearbyFound){ + const otherCenter: [number, number] = [other.lon, other.lat] + const nearbyFound = centers.some( + (center) => GeoOperations.distanceBetween(center, otherCenter) < 500 + ) + if (!nearbyFound) { merged.push(other) centers.push(otherCenter) } @@ -136,7 +134,6 @@ export class GeocodingUtils { return merged } - public static categoryToIcon: Record = { city: "building_office_2", coordinate: "globe_alt", @@ -148,8 +145,5 @@ export class GeocodingUtils { county: "building_office_2", airport: "airport", shop: "building_storefront", - } - } - diff --git a/src/Logic/Search/LayerSearch.ts b/src/Logic/Search/LayerSearch.ts index 60ffbacb1..3d23767c4 100644 --- a/src/Logic/Search/LayerSearch.ts +++ b/src/Logic/Search/LayerSearch.ts @@ -1,26 +1,30 @@ import SearchUtils from "./SearchUtils" import ThemeSearch from "./ThemeSearch" import LayerConfig from "../../Models/ThemeConfig/LayerConfig" -import LayoutConfig from "../../Models/ThemeConfig/LayoutConfig" +import ThemeConfig from "../../Models/ThemeConfig/ThemeConfig" import { Utils } from "../../Utils" export default class LayerSearch { - - private readonly _layout: LayoutConfig + private readonly _theme: ThemeConfig private readonly _layerWhitelist: Set - constructor(layout: LayoutConfig) { - this._layout = layout - this._layerWhitelist = new Set(layout.layers - .filter(l => l.isNormal()) - .map(l => l.id)) + constructor(theme: ThemeConfig) { + this._theme = theme + this._layerWhitelist = new Set(theme.layers.filter((l) => l.isNormal()).map((l) => l.id)) } - static scoreLayers(query: string, options: { - whitelist?: Set, blacklist?: Set - }): Record { + static scoreLayers( + query: string, + options: { + whitelist?: Set + blacklist?: Set + } + ): Record { const result: Record = {} - const queryParts = query.trim().split(" ").map(q => Utils.simplifyStringForSearch(q)) + const queryParts = query + .trim() + .split(" ") + .map((q) => Utils.simplifyStringForSearch(q)) for (const id in ThemeSearch.officialThemes.layers) { if (options?.whitelist && !options?.whitelist.has(id)) { continue @@ -29,32 +33,28 @@ export default class LayerSearch { continue } const keywords = ThemeSearch.officialThemes.layers[id] - const distance = Math.min(...queryParts.map(q => SearchUtils.scoreKeywords(q, keywords))) - result[id] = distance + result[id] = Math.min(...queryParts.map((q) => SearchUtils.scoreKeywords(q, keywords))) } return result } - public search(query: string, limit: number, scoreThreshold: number = 2): LayerConfig[] { if (query.length < 1) { return [] } const scores = LayerSearch.scoreLayers(query, { whitelist: this._layerWhitelist }) - const asList: ({ layer: LayerConfig, score: number })[] = [] + const asList: { layer: LayerConfig; score: number }[] = [] for (const layer in scores) { asList.push({ - layer: this._layout.getLayer(layer), + layer: this._theme.getLayer(layer), score: scores[layer], }) } asList.sort((a, b) => a.score - b.score) return asList - .filter(sorted => sorted.score < scoreThreshold) + .filter((sorted) => sorted.score < scoreThreshold) .slice(0, limit) - .map(l => l.layer) + .map((l) => l.layer) } - - } diff --git a/src/Logic/Search/LocalElementSearch.ts b/src/Logic/Search/LocalElementSearch.ts index 988402d99..46f28b434 100644 --- a/src/Logic/Search/LocalElementSearch.ts +++ b/src/Logic/Search/LocalElementSearch.ts @@ -7,14 +7,14 @@ import { ImmutableStore, Store, Stores } from "../UIEventSource" import OpenStreetMapIdSearch from "./OpenStreetMapIdSearch" type IntermediateResult = { - feature: Feature, + feature: Feature /** * Lon, lat */ - center: [number, number], - levehnsteinD: number, - physicalDistance: number, - searchTerms: string[], + center: [number, number] + levehnsteinD: number + physicalDistance: number + searchTerms: string[] description: string } export default class LocalElementSearch implements GeocodingProvider { @@ -24,37 +24,50 @@ export default class LocalElementSearch implements GeocodingProvider { constructor(state: ThemeViewState, limit: number) { this._state = state this._limit = limit - } async search(query: string, options?: GeocodingOptions): Promise { return this.searchEntries(query, options, false).data } - private getPartialResult(query: string, candidateId: string | undefined, matchStart: boolean, centerpoint: [number, number], features: Feature[]): IntermediateResult[] { - const results: IntermediateResult [] = [] + private getPartialResult( + query: string, + candidateId: string | undefined, + matchStart: boolean, + centerpoint: [number, number], + features: Feature[] + ): IntermediateResult[] { + const results: IntermediateResult[] = [] for (const feature of features) { const props = feature.properties - const searchTerms: string[] = Utils.NoNull([props.name, props.alt_name, props.local_name, - (props["addr:street"] && props["addr:number"]) ? - props["addr:street"] + props["addr:number"] : undefined]) + const searchTerms: string[] = Utils.NoNull([ + props.name, + props.alt_name, + props.local_name, + props["addr:street"] && props["addr:number"] + ? props["addr:street"] + props["addr:number"] + : undefined, + ]) let levehnsteinD: number if (candidateId === props.id) { levehnsteinD = 0 } else { - levehnsteinD = Math.min(...searchTerms.flatMap(entry => entry.split(/ /)).map(entry => { - let simplified = Utils.simplifyStringForSearch(entry) - if (matchStart) { - simplified = simplified.slice(0, query.length) - } - return Utils.levenshteinDistance(query, simplified) - })) + levehnsteinD = Math.min( + ...searchTerms + .flatMap((entry) => entry.split(/ /)) + .map((entry) => { + let simplified = Utils.simplifyStringForSearch(entry) + if (matchStart) { + simplified = simplified.slice(0, query.length) + } + return Utils.levenshteinDistance(query, simplified) + }) + ) } const center = GeoOperations.centerpointCoordinates(feature) - if ((levehnsteinD / query.length) <= 0.3) { - + if (levehnsteinD / query.length <= 0.3) { let description = "" if (feature.properties["addr:street"]) { description += "" + feature.properties["addr:street"] @@ -75,7 +88,11 @@ export default class LocalElementSearch implements GeocodingProvider { return results } - searchEntries(query: string, options?: GeocodingOptions, matchStart?: boolean): Store { + searchEntries( + query: string, + options?: GeocodingOptions, + matchStart?: boolean + ): Store { if (query.length < 3) { return new ImmutableStore([]) } @@ -88,17 +105,26 @@ export default class LocalElementSearch implements GeocodingProvider { const partials: Store[] = [] for (const [_, geoIndexedStore] of properties) { - const partialResult = geoIndexedStore.features.map(features => this.getPartialResult(query, candidateId, matchStart, centerPoint, features)) + const partialResult = geoIndexedStore.features.map((features) => + this.getPartialResult(query, candidateId, matchStart, centerPoint, features) + ) partials.push(partialResult) } - const listed: Store = Stores.concat(partials).map(l => l.flatMap(x => x)) - return listed.mapD(results => { - results.sort((a, b) => (a.physicalDistance + a.levehnsteinD * 25) - (b.physicalDistance + b.levehnsteinD * 25)) + const listed: Store = Stores.concat(partials).map((l) => + l.flatMap((x) => x) + ) + return listed.mapD((results) => { + results.sort( + (a, b) => + a.physicalDistance + + a.levehnsteinD * 25 - + (b.physicalDistance + b.levehnsteinD * 25) + ) if (this._limit) { results = results.slice(0, this._limit) } - return results.map(entry => { + return results.map((entry) => { const [osm_type, osm_id] = entry.feature.properties.id.split("/") return { lon: entry.center[0], @@ -113,12 +139,9 @@ export default class LocalElementSearch implements GeocodingProvider { } }) }) - - } suggest(query: string, options?: GeocodingOptions): Store { return this.searchEntries(query, options, true) } - } diff --git a/src/Logic/Search/NominatimGeocoding.ts b/src/Logic/Search/NominatimGeocoding.ts index 750be4fac..ece8c9071 100644 --- a/src/Logic/Search/NominatimGeocoding.ts +++ b/src/Logic/Search/NominatimGeocoding.ts @@ -6,26 +6,24 @@ import Locale from "../../UI/i18n/Locale" import GeocodingProvider, { GeocodingOptions, SearchResult } from "./GeocodingProvider" export class NominatimGeocoding implements GeocodingProvider { - - private readonly _host ; + private readonly _host private readonly limit: number - constructor(limit: number = 3, host: string = Constants.nominatimEndpoint) { + constructor(limit: number = 3, host: string = Constants.nominatimEndpoint) { this.limit = limit this._host = host } - public search(query: string, options?:GeocodingOptions): Promise { + public search(query: string, options?: GeocodingOptions): Promise { const b = options?.bbox ?? BBox.global - const url = `${ - this._host - }search?format=json&limit=${this.limit}&viewbox=${b.getEast()},${b.getNorth()},${b.getWest()},${b.getSouth()}&accept-language=${ + const url = `${this._host}search?format=json&limit=${ + this.limit + }&viewbox=${b.getEast()},${b.getNorth()},${b.getWest()},${b.getSouth()}&accept-language=${ Locale.language.data }&q=${query}` return Utils.downloadJson(url) } - async reverseSearch( coordinate: { lon: number; lat: number }, zoom: number = 17, diff --git a/src/Logic/Search/OpenLocationCodeSearch.ts b/src/Logic/Search/OpenLocationCodeSearch.ts new file mode 100644 index 000000000..299ced97f --- /dev/null +++ b/src/Logic/Search/OpenLocationCodeSearch.ts @@ -0,0 +1,52 @@ +import { Store, Stores, UIEventSource } from "../UIEventSource" +import GeocodingProvider, { + GeocodeResult, + GeocodingOptions, + ReverseGeocodingProvider, + ReverseGeocodingResult, +} from "./GeocodingProvider" +import { decode as pluscode_decode } from "pluscodes" + +export default class OpenLocationCodeSearch implements GeocodingProvider { + /** + * A regex describing all plus-codes + */ + public static readonly _isPlusCode = + /^([2-9CFGHJMPQRVWX]{2}|00){2,4}\+([2-9CFGHJMPQRVWX]{2,3})?$/ + + /** + * + * OpenLocationCodeSearch.isPlusCode("9FFW84J9+XG") // => true + * OpenLocationCodeSearch.isPlusCode("9FFW84J9+") // => true + * OpenLocationCodeSearch.isPlusCode("9AFW84J9+") // => false + * OpenLocationCodeSearch.isPlusCode("9FFW+") // => true + * OpenLocationCodeSearch.isPlusCode("9FFW0000+") // => true + * OpenLocationCodeSearch.isPlusCode("9FFw0000+") // => true + * OpenLocationCodeSearch.isPlusCode("9FFW000+") // => false + * + */ + public static isPlusCode(str: string) { + return str.toUpperCase().match(this._isPlusCode) !== null + } + + async search(query: string, options?: GeocodingOptions): Promise { + if (!OpenLocationCodeSearch.isPlusCode(query)) { + return undefined + } + const { latitude, longitude } = pluscode_decode(query) + + return [ + { + lon: longitude, + lat: latitude, + description: "Open Location Code", + osm_id: query, + display_name: query.toUpperCase(), + }, + ] + } + + suggest?(query: string, options?: GeocodingOptions): Store { + return Stores.FromPromise(this.search(query, options)) + } +} diff --git a/src/Logic/Search/OpenStreetMapIdSearch.ts b/src/Logic/Search/OpenStreetMapIdSearch.ts index 48e9d9b43..c48fbfd72 100644 --- a/src/Logic/Search/OpenStreetMapIdSearch.ts +++ b/src/Logic/Search/OpenStreetMapIdSearch.ts @@ -5,12 +5,13 @@ import { SpecialVisualizationState } from "../../UI/SpecialVisualization" import { Utils } from "../../Utils" export default class OpenStreetMapIdSearch implements GeocodingProvider { - private static readonly regex = /((https?:\/\/)?(www.)?(osm|openstreetmap).org\/)?(n|node|w|way|r|relation)[/ ]?([0-9]+)/ + private static readonly regex = + /((https?:\/\/)?(www.)?(osm|openstreetmap).org\/)?(n|node|w|way|r|relation)[/ ]?([0-9]+)/ private static readonly types: Readonly> = { - "n": "node", - "w": "way", - "r": "relation", + n: "node", + w: "way", + r: "relation", } private readonly _state: SpecialVisualizationState @@ -55,15 +56,17 @@ export default class OpenStreetMapIdSearch implements GeocodingProvider { category: "coordinate", osm_type: <"node" | "way" | "relation">osm_type, osm_id, - lat: 0, lon: 0, + lat: 0, + lon: 0, source: "osmid", - } } const [lat, lon] = obj.centerpoint() return { - lat, lon, - display_name: obj.tags.name ?? obj.tags.alt_name ?? obj.tags.local_name ?? obj.tags.ref ?? id, + lat, + lon, + display_name: + obj.tags.name ?? obj.tags.alt_name ?? obj.tags.local_name ?? obj.tags.ref ?? id, description: osm_type, osm_type: <"node" | "way" | "relation">osm_type, osm_id, @@ -72,14 +75,15 @@ export default class OpenStreetMapIdSearch implements GeocodingProvider { } async search(query: string, options?: GeocodingOptions): Promise { - if (!isNaN(Number(query))) { const n = Number(query) - return Utils.NoNullInplace(await Promise.all([ - this.getInfoAbout(`node/${n}`).catch(x => undefined), - this.getInfoAbout(`way/${n}`).catch(x => undefined), - this.getInfoAbout(`relation/${n}`).catch(() => undefined), - ])) + return Utils.NoNullInplace( + await Promise.all([ + this.getInfoAbout(`node/${n}`).catch((x) => undefined), + this.getInfoAbout(`way/${n}`).catch((x) => undefined), + this.getInfoAbout(`relation/${n}`).catch(() => undefined), + ]) + ) } const id = OpenStreetMapIdSearch.extractId(query) @@ -92,5 +96,4 @@ export default class OpenStreetMapIdSearch implements GeocodingProvider { suggest?(query: string, options?: GeocodingOptions): Store { return UIEventSource.FromPromise(this.search(query, options)) } - } diff --git a/src/Logic/Search/PhotonSearch.ts b/src/Logic/Search/PhotonSearch.ts index 3bb2b66b9..6b16a6250 100644 --- a/src/Logic/Search/PhotonSearch.ts +++ b/src/Logic/Search/PhotonSearch.ts @@ -2,7 +2,8 @@ import Constants from "../../Models/Constants" import GeocodingProvider, { GeocodeResult, GeocodingCategory, - GeocodingOptions, GeocodingUtils, + GeocodingOptions, + GeocodingUtils, ReverseGeocodingProvider, ReverseGeocodingResult, } from "./GeocodingProvider" @@ -13,34 +14,45 @@ import { GeoOperations } from "../GeoOperations" import { Store, Stores } from "../UIEventSource" export default class PhotonSearch implements GeocodingProvider, ReverseGeocodingProvider { - private _endpoint: string + private readonly _endpoint: string private supportedLanguages = ["en", "de", "fr"] private static readonly types = { - "R": "relation", - "W": "way", - "N": "node", + R: "relation", + W: "way", + N: "node", } + private readonly ignoreBounds: boolean private readonly suggestionLimit: number = 5 private readonly searchLimit: number = 1 - - constructor(suggestionLimit:number = 5, searchLimit:number = 1, endpoint?: string) { + constructor( + ignoreBounds: boolean = false, + suggestionLimit: number = 5, + searchLimit: number = 1, + endpoint?: string + ) { + this.ignoreBounds = ignoreBounds this.suggestionLimit = suggestionLimit this.searchLimit = searchLimit this._endpoint = endpoint ?? Constants.photonEndpoint ?? "https://photon.komoot.io/" } - async reverseSearch(coordinate: { - lon: number; - lat: number - }, zoom: number, language?: string): Promise { - const url = `${this._endpoint}/reverse?lon=${coordinate.lon}&lat=${coordinate.lat}&${this.getLanguage(language)}` + async reverseSearch( + coordinate: { + lon: number + lat: number + }, + zoom: number, + language?: string + ): Promise { + const url = `${this._endpoint}/reverse?lon=${coordinate.lon}&lat=${ + coordinate.lat + }&${this.getLanguage(language)}` const result = await Utils.downloadJsonCached(url, 1000 * 60 * 60) for (const f of result.features) { f.properties.osm_type = PhotonSearch.types[f.properties.osm_type] } return result.features - } /** @@ -49,17 +61,15 @@ export default class PhotonSearch implements GeocodingProvider, ReverseGeocoding * @private */ private getLanguage(language?: string): string { - language ??= Locale.language.data if (this.supportedLanguages.indexOf(language) < 0) { return "" } return `&lang=${language}` - } suggest(query: string, options?: GeocodingOptions): Store { - return Stores.FromPromise(this.search(query, options, this.suggestionLimit)) + return Stores.FromPromise(this.search(query, options)) } private buildDescription(entry: Feature) { @@ -75,7 +85,6 @@ export default class PhotonSearch implements GeocodingProvider, ReverseGeocoding switch (type) { case "house": { - const addr = ifdef("", p.street) + ifdef(" ", p.housenumber) if (!addr) { return p.city @@ -94,7 +103,6 @@ export default class PhotonSearch implements GeocodingProvider, ReverseGeocoding case "country": return undefined } - } private getCategory(entry: Feature) { @@ -111,19 +119,21 @@ export default class PhotonSearch implements GeocodingProvider, ReverseGeocoding return p.type } - async search(query: string, options?: GeocodingOptions, limit?: number): Promise { + async search(query: string, options?: GeocodingOptions): Promise { if (query.length < 3) { return [] } - limit ??= this.searchLimit + const limit = this.searchLimit let bbox = "" - if (options?.bbox) { + if (options?.bbox && !this.ignoreBounds) { const [lon, lat] = options.bbox.center() bbox = `&lon=${lon}&lat=${lat}` } - const url = `${this._endpoint}/api/?q=${encodeURIComponent(query)}&limit=${limit}${this.getLanguage()}${bbox}` + const url = `${this._endpoint}/api/?q=${encodeURIComponent( + query + )}&limit=${limit}${this.getLanguage()}${bbox}` const results = await Utils.downloadJsonCached(url, 1000 * 60 * 60) - const encoded= results.features.map(f => { + const encoded = results.features.map((f) => { const [lon, lat] = GeoOperations.centerpointCoordinates(f) let boundingbox: number[] = undefined if (f.properties.extent) { @@ -138,11 +148,11 @@ export default class PhotonSearch implements GeocodingProvider, ReverseGeocoding osm_type: PhotonSearch.types[f.properties.osm_type], category: this.getCategory(f), boundingbox, - lon, lat, + lon, + lat, source: this._endpoint, } }) return GeocodingUtils.mergeSimilarResults(encoded) } - } diff --git a/src/Logic/Search/SearchUtils.ts b/src/Logic/Search/SearchUtils.ts index 7b0f5a42e..1268d193e 100644 --- a/src/Logic/Search/SearchUtils.ts +++ b/src/Logic/Search/SearchUtils.ts @@ -3,40 +3,42 @@ import { Utils } from "../../Utils" import ThemeSearch from "./ThemeSearch" export default class SearchUtils { - - /** Applies special search terms, such as 'studio', 'osmcha', ... * Returns 'false' if nothing is matched. * Doesn't return control flow if a match is found (navigates to another page in this case) */ - public static applySpecialSearch(searchTerm: string, ) { + public static applySpecialSearch(searchTerm: string) { searchTerm = searchTerm.toLowerCase() if (!searchTerm) { return false } if (searchTerm === "personal") { window.location.href = ThemeSearch.createUrlFor({ id: "personal" }, undefined) + return true } if (searchTerm === "bugs" || searchTerm === "issues") { window.location.href = "https://github.com/pietervdvn/MapComplete/issues" + return true } if (searchTerm === "source") { window.location.href = "https://github.com/pietervdvn/MapComplete" + return true } if (searchTerm === "docs") { window.location.href = "https://github.com/pietervdvn/MapComplete/tree/develop/Docs" + return true } if (searchTerm === "osmcha" || searchTerm === "stats") { window.location.href = Utils.OsmChaLinkFor(7) + return true } if (searchTerm === "studio") { window.location.href = "./studio.html" + return true } return false - } - /** * Searches for the smallest distance in words; will split both the query and the terms * @@ -44,19 +46,26 @@ export default class SearchUtils { * SearchUtils.scoreKeywords("waste", {"en": ["A layer with drinking water points"]}, "en") // => 2 * */ - public static scoreKeywords(query: string, keywords: Record | string[], language?: string): number { - if(!keywords){ + public static scoreKeywords( + query: string, + keywords: Record | string[], + language?: string + ): number { + if (!keywords) { return Infinity } language ??= Locale.language.data - const queryParts = query.trim().split(" ").map(q => Utils.simplifyStringForSearch(q)) + const queryParts = query + .trim() + .split(" ") + .map((q) => Utils.simplifyStringForSearch(q)) let terms: string[] if (Array.isArray(keywords)) { terms = keywords } else { terms = (keywords[language] ?? []).concat(keywords["*"]) } - const termsAll = Utils.NoNullInplace(terms).flatMap(t => t.split(" ")) + const termsAll = Utils.NoNullInplace(terms).flatMap((t) => t.split(" ")) let distanceSummed = 0 for (let i = 0; i < queryParts.length; i++) { diff --git a/src/Logic/Search/ThemeSearch.ts b/src/Logic/Search/ThemeSearch.ts index 30b4d25eb..e44f02790 100644 --- a/src/Logic/Search/ThemeSearch.ts +++ b/src/Logic/Search/ThemeSearch.ts @@ -1,4 +1,4 @@ -import LayoutConfig, { MinimalLayoutInformation } from "../../Models/ThemeConfig/LayoutConfig" +import ThemeConfig, { MinimalThemeInformation } from "../../Models/ThemeConfig/ThemeConfig" import { Store } from "../UIEventSource" import UserRelatedState from "../State/UserRelatedState" import { Utils } from "../../Utils" @@ -8,57 +8,59 @@ import LayerSearch from "./LayerSearch" import SearchUtils from "./SearchUtils" import { OsmConnection } from "../Osm/OsmConnection" - type ThemeSearchScore = { - theme: MinimalLayoutInformation, - lowest: number, - perLayer?: Record, - other: number, + theme: MinimalThemeInformation + lowest: number + perLayer?: Record + other: number } - export default class ThemeSearch { - public static readonly officialThemes: { - themes: MinimalLayoutInformation[], + themes: MinimalThemeInformation[] layers: Record> - } = themeOverview - public static readonly officialThemesById: Map = new Map() + } = themeOverview + public static readonly officialThemesById: Map = new Map< + string, + MinimalThemeInformation + >() static { for (const th of ThemeSearch.officialThemes.themes ?? []) { ThemeSearch.officialThemesById.set(th.id, th) } } - private readonly _knownHiddenThemes: Store> private readonly _layersToIgnore: string[] - private readonly _otherThemes: MinimalLayoutInformation[] + private readonly _otherThemes: MinimalThemeInformation[] - constructor(state: {osmConnection: OsmConnection, layout: LayoutConfig}) { - this._layersToIgnore = state.layout.layers.filter(l => l.isNormal()).map(l => l.id) - this._knownHiddenThemes = UserRelatedState.initDiscoveredHiddenThemes(state.osmConnection).map(list => new Set(list)) - this._otherThemes = ThemeSearch.officialThemes.themes - .filter(th => th.id !== state.layout.id) + constructor(state: { osmConnection: OsmConnection; theme: ThemeConfig }) { + this._layersToIgnore = state.theme.layers.filter((l) => l.isNormal()).map((l) => l.id) + this._knownHiddenThemes = UserRelatedState.initDiscoveredHiddenThemes( + state.osmConnection + ).map((list) => new Set(list)) + this._otherThemes = ThemeSearch.officialThemes.themes.filter( + (th) => th.id !== state.theme.id + ) } - - public search(query: string, limit: number, threshold: number = 3): MinimalLayoutInformation[] { + public search(query: string, limit: number, threshold: number = 3): MinimalThemeInformation[] { if (query.length < 1) { return [] } - const sorted = ThemeSearch.sortedByLowestScores(query, this._otherThemes, this._layersToIgnore) + const sorted = ThemeSearch.sortedByLowestScores( + query, + this._otherThemes, + this._layersToIgnore + ) return sorted - .filter(sorted => sorted.lowest < threshold) - .map(th => th.theme) - .filter(th => !th.hideFromOverview || this._knownHiddenThemes.data.has(th.id)) + .filter((sorted) => sorted.lowest < threshold) + .map((th) => th.theme) + .filter((th) => !th.hideFromOverview || this._knownHiddenThemes.data.has(th.id)) .slice(0, limit) } - public static createUrlFor( - layout: { id: string }, - state?: { layoutToUse?: { id } }, - ): string { + public static createUrlFor(layout: { id: string }, state?: { layoutToUse?: { id } }): string { if (layout === undefined) { return undefined } @@ -88,7 +90,6 @@ export default class ThemeSearch { linkPrefix = `${path}/theme.html?userlayout=${layout.id}&` } - return `${linkPrefix}` } @@ -101,17 +102,21 @@ export default class ThemeSearch { * @param ignoreLayers * @private */ - private static scoreThemes(query: string, themes: MinimalLayoutInformation[], ignoreLayers: string[] = undefined): Record { + private static scoreThemes( + query: string, + themes: MinimalThemeInformation[], + ignoreLayers: string[] = undefined + ): Record { if (query?.length < 1) { return undefined } themes = Utils.NoNullInplace(themes) - let options : {blacklist: Set} = undefined - if(ignoreLayers?.length > 0){ + let options: { blacklist: Set } = undefined + if (ignoreLayers?.length > 0) { options = { blacklist: new Set(ignoreLayers) } } - const layerScores = query.length < 3 ? {} : LayerSearch.scoreLayers(query, options) + const layerScores = query.length < 3 ? {} : LayerSearch.scoreLayers(query, options) const results: Record = {} for (const layoutInfo of themes) { const theme = layoutInfo.id @@ -122,20 +127,22 @@ export default class ThemeSearch { results[theme] = { theme: layoutInfo, lowest: -1, - other: 0 + other: 0, } continue } - const perLayer = Utils.asRecord( - layoutInfo.layers ?? [], layer => layerScores[layer], - ) + const perLayer = Utils.asRecord(layoutInfo.layers ?? [], (layer) => layerScores[layer]) const language = Locale.language.data - const keywords = Utils.NoNullInplace([layoutInfo.shortDescription, layoutInfo.title]) - .map(item => typeof item === "string" ? item : (item[language] ?? item["*"])) + const keywords = Utils.NoNullInplace([ + layoutInfo.shortDescription, + layoutInfo.title, + ]).map((item) => (typeof item === "string" ? item : item[language] ?? item["*"])) - - const other = Math.min(SearchUtils.scoreKeywords(query, keywords), SearchUtils.scoreKeywords(query, layoutInfo.keywords)) + const other = Math.min( + SearchUtils.scoreKeywords(query, keywords), + SearchUtils.scoreKeywords(query, layoutInfo.keywords) + ) const lowest = Math.min(other, ...Object.values(perLayer)) results[theme] = { theme: layoutInfo, @@ -147,15 +154,21 @@ export default class ThemeSearch { return results } - public static sortedByLowestScores(search: string, themes: MinimalLayoutInformation[], ignoreLayers: string[] = []): ThemeSearchScore[] { + public static sortedByLowestScores( + search: string, + themes: MinimalThemeInformation[], + ignoreLayers: string[] = [] + ): ThemeSearchScore[] { const scored = Object.values(this.scoreThemes(search, themes, ignoreLayers)) scored.sort((a, b) => a.lowest - b.lowest) return scored } - public static sortedByLowest(search: string, themes: MinimalLayoutInformation[], ignoreLayers: string[] = []): MinimalLayoutInformation[] { - return this.sortedByLowestScores(search, themes, ignoreLayers) - .map(th => th.theme) + public static sortedByLowest( + search: string, + themes: MinimalThemeInformation[], + ignoreLayers: string[] = [] + ): MinimalThemeInformation[] { + return this.sortedByLowestScores(search, themes, ignoreLayers).map((th) => th.theme) } - } diff --git a/src/Logic/SimpleMetaTagger.ts b/src/Logic/SimpleMetaTagger.ts index 611207a47..3e0595b38 100644 --- a/src/Logic/SimpleMetaTagger.ts +++ b/src/Logic/SimpleMetaTagger.ts @@ -8,7 +8,7 @@ import { TagUtils } from "./Tags/TagUtils" import { Feature, LineString } from "geojson" import { OsmTags } from "../Models/OsmFeature" import { UIEventSource } from "./UIEventSource" -import LayoutConfig from "../Models/ThemeConfig/LayoutConfig" +import ThemeConfig from "../Models/ThemeConfig/ThemeConfig" import OsmObjectDownloader from "./Osm/OsmObjectDownloader" import countryToCurrency from "country-to-currency" @@ -16,7 +16,7 @@ import countryToCurrency from "country-to-currency" * All elements that are needed to perform metatagging */ export interface MetataggingState { - layout: LayoutConfig + theme: ThemeConfig osmObjectDownloader: OsmObjectDownloader } @@ -399,7 +399,7 @@ export default class SimpleMetaTaggers { }, (feature, _, __, state) => { const units = Utils.NoNull( - [].concat(...(state?.layout?.layers?.map((layer) => layer.units) ?? [])) + [].concat(...(state?.theme?.layers?.map((layer) => layer.units) ?? [])) ) if (units.length == 0) { return diff --git a/src/Logic/State/FeatureSwitchState.ts b/src/Logic/State/FeatureSwitchState.ts index 054d9c841..657afb72b 100644 --- a/src/Logic/State/FeatureSwitchState.ts +++ b/src/Logic/State/FeatureSwitchState.ts @@ -1,7 +1,7 @@ /** - * The part of the global state which initializes the feature switches, based on default values and on the layoutToUse + * The part of the global state which initializes the feature switches, based on default values and on the theme */ -import LayoutConfig from "../../Models/ThemeConfig/LayoutConfig" +import ThemeConfig from "../../Models/ThemeConfig/ThemeConfig" import { UIEventSource } from "../UIEventSource" import { QueryParameters } from "../Web/QueryParameters" import Constants from "../../Models/Constants" @@ -45,11 +45,6 @@ export class OsmConnectionFeatureSwitches { } export default class FeatureSwitchState extends OsmConnectionFeatureSwitches { - /** - * The layout that is being used in this run - */ - public readonly layoutToUse: LayoutConfig - public readonly featureSwitchEnableLogin: UIEventSource public readonly featureSwitchSearch: UIEventSource public readonly featureSwitchBackgroundSelection: UIEventSource @@ -74,9 +69,8 @@ export default class FeatureSwitchState extends OsmConnectionFeatureSwitches { public readonly featureSwitchMorePrivacy: UIEventSource public readonly featureSwitchLayerDefault: UIEventSource - public constructor(layoutToUse?: LayoutConfig) { + public constructor(theme?: ThemeConfig) { super() - this.layoutToUse = layoutToUse const legacyRewrite: Record = { "fs-userbadge": "fs-enable-login", @@ -102,7 +96,7 @@ export default class FeatureSwitchState extends OsmConnectionFeatureSwitches { this.featureSwitchEnableLogin = FeatureSwitchUtils.initSwitch( "fs-enable-login", - layoutToUse?.enableUserBadge ?? true, + theme?.enableUserBadge ?? true, "Disables/Enables logging in and thus disables editing all together. This effectively puts MapComplete into read-only mode." ) { @@ -117,18 +111,18 @@ export default class FeatureSwitchState extends OsmConnectionFeatureSwitches { this.featureSwitchSearch = FeatureSwitchUtils.initSwitch( "fs-search", - layoutToUse?.enableSearch ?? true, + theme?.enableSearch ?? true, "Disables/Enables the search bar" ) this.featureSwitchBackgroundSelection = FeatureSwitchUtils.initSwitch( "fs-background", - layoutToUse?.enableBackgroundLayerSelection ?? true, + theme?.enableBackgroundLayerSelection ?? true, "Disables/Enables the background layer control where a user can enable e.g. aerial imagery" ) this.featureSwitchFilter = FeatureSwitchUtils.initSwitch( "fs-filter", - layoutToUse?.enableLayers ?? true, + theme?.enableLayers ?? true, "Disables/Enables the filter view where a user can enable/disable MapComplete-layers or filter for certain properties" ) @@ -149,17 +143,17 @@ export default class FeatureSwitchState extends OsmConnectionFeatureSwitches { ) this.featureSwitchBackToThemeOverview = FeatureSwitchUtils.initSwitch( "fs-homepage-link", - layoutToUse?.enableMoreQuests ?? true, + theme?.enableMoreQuests ?? true, "Disables/Enables the various links which go back to the index page with the theme overview" ) this.featureSwitchShareScreen = FeatureSwitchUtils.initSwitch( "fs-share-screen", - layoutToUse?.enableShareScreen ?? true, + theme?.enableShareScreen ?? true, "Disables/Enables the 'Share-screen'-tab in the welcome message" ) this.featureSwitchGeolocation = FeatureSwitchUtils.initSwitch( "fs-geolocation", - layoutToUse?.enableGeolocation ?? true, + theme?.enableGeolocation ?? true, "Disables/Enables the geolocation button" ) @@ -170,19 +164,19 @@ export default class FeatureSwitchState extends OsmConnectionFeatureSwitches { ) this.featureSwitchShowAllQuestions = FeatureSwitchUtils.initSwitch( "fs-all-questions", - layoutToUse?.enableShowAllQuestions ?? false, + theme?.enableShowAllQuestions ?? false, "Always show all questions" ) this.featureSwitchEnableExport = FeatureSwitchUtils.initSwitch( "fs-export", - layoutToUse?.enableExportButton ?? true, + theme?.enableExportButton ?? true, "Enable the export as GeoJSON and CSV button" ) this.featureSwitchCache = FeatureSwitchUtils.initSwitch( "fs-cache", - layoutToUse?.enableCache ?? true, + theme?.enableCache ?? true, "Enable/disable caching from localStorage" ) @@ -209,13 +203,13 @@ export default class FeatureSwitchState extends OsmConnectionFeatureSwitches { this.featureSwitchMorePrivacy = QueryParameters.GetBooleanQueryParameter( "moreprivacy", - layoutToUse.enableMorePrivacy, + theme.enableMorePrivacy, "If true, the location distance indication will not be written to the changeset and other privacy enhancing measures might be taken." ) this.overpassUrl = QueryParameters.GetQueryParameter( "overpassUrl", - (layoutToUse?.overpassUrl ?? Constants.defaultOverpassUrls).join(","), + (theme?.overpassUrl ?? Constants.defaultOverpassUrls).join(","), "Point mapcomplete to a different overpass-instance. Example: https://overpass-api.de/api/interpreter" ).sync( (param) => param?.split(","), @@ -226,7 +220,7 @@ export default class FeatureSwitchState extends OsmConnectionFeatureSwitches { this.overpassTimeout = UIEventSource.asInt( QueryParameters.GetQueryParameter( "overpassTimeout", - "" + layoutToUse?.overpassTimeout, + "" + theme?.overpassTimeout, "Set a different timeout (in seconds) for queries in overpass" ) ) @@ -234,7 +228,7 @@ export default class FeatureSwitchState extends OsmConnectionFeatureSwitches { this.overpassMaxZoom = UIEventSource.asFloat( QueryParameters.GetQueryParameter( "overpassMaxZoom", - "" + layoutToUse?.overpassMaxZoom, + "" + theme?.overpassMaxZoom, " point to switch between OSM-api and overpass" ) ) @@ -242,14 +236,14 @@ export default class FeatureSwitchState extends OsmConnectionFeatureSwitches { this.osmApiTileSize = UIEventSource.asInt( QueryParameters.GetQueryParameter( "osmApiTileSize", - "" + layoutToUse?.osmApiTileSize, + "" + theme?.osmApiTileSize, "Tilesize when the OSM-API is used to fetch data within a BBOX" ) ) this.backgroundLayerId = QueryParameters.GetQueryParameter( "background", - layoutToUse?.defaultBackgroundId, + theme?.defaultBackgroundId, [ "When set, load this raster layer (or a layer of this category) as background layer instead of using the default background. This is as if the user opened the background selection menu and selected the layer with the given id or category.", "Most raster layers are based on the [editor layer index](https://github.com/osmlab/editor-layer-index)", diff --git a/src/Logic/State/GeoLocationState.ts b/src/Logic/State/GeoLocationState.ts index 03ba3a04d..967c48aa9 100644 --- a/src/Logic/State/GeoLocationState.ts +++ b/src/Logic/State/GeoLocationState.ts @@ -58,7 +58,7 @@ export class GeoLocationState { * @private */ private readonly _previousLocationGrant: UIEventSource = - LocalStorageSource.GetParsed("geolocation-permissions", false) + LocalStorageSource.getParsed("geolocation-permissions", false) /** * Used to detect a permission retraction diff --git a/src/Logic/State/LayerState.ts b/src/Logic/State/LayerState.ts index 9df3a9b1f..d611f9132 100644 --- a/src/Logic/State/LayerState.ts +++ b/src/Logic/State/LayerState.ts @@ -11,8 +11,8 @@ import FilterConfig from "../../Models/ThemeConfig/FilterConfig" import Constants from "../../Models/Constants" export type ActiveFilter = { - layer: LayerConfig, - filter: FilterConfig, + layer: LayerConfig + filter: FilterConfig control: UIEventSource } /** @@ -36,9 +36,13 @@ export default class LayerState { private readonly _activeFilters: UIEventSource = new UIEventSource([]) public readonly activeFilters: Store = this._activeFilters - private readonly _activeLayers: UIEventSource = new UIEventSource(undefined) + private readonly _activeLayers: UIEventSource = new UIEventSource< + FilteredLayer[] + >(undefined) public readonly activeLayers: Store = this._activeLayers - private readonly _nonactiveLayers: UIEventSource = new UIEventSource(undefined) + private readonly _nonactiveLayers: UIEventSource = new UIEventSource< + FilteredLayer[] + >(undefined) public readonly nonactiveLayers: Store = this._nonactiveLayers private readonly osmConnection: OsmConnection @@ -71,7 +75,7 @@ export default class LayerState { this.filteredLayers = filteredLayers layers.forEach((l) => LayerState.linkFilterStates(l, filteredLayers)) - this.filteredLayers.forEach(fl => { + this.filteredLayers.forEach((fl) => { fl.isDisplayed.addCallback(() => this.updateActiveFilters()) for (const [_, appliedFilter] of fl.appliedFilters) { appliedFilter.addCallback(() => this.updateActiveFilters()) @@ -80,27 +84,27 @@ export default class LayerState { this.updateActiveFilters() } - private updateActiveFilters(){ + private updateActiveFilters() { const filters: ActiveFilter[] = [] const activeLayers: FilteredLayer[] = [] - const nonactiveLayers: FilteredLayer[] = [] - this.filteredLayers.forEach(fl => { - if(!fl.isDisplayed.data){ + const nonactiveLayers: FilteredLayer[] = [] + this.filteredLayers.forEach((fl) => { + if (!fl.isDisplayed.data) { nonactiveLayers.push(fl) return } activeLayers.push(fl) - if(fl.layerDef.filterIsSameAs){ + if (fl.layerDef.filterIsSameAs) { return } for (const [filtername, appliedFilter] of fl.appliedFilters) { if (appliedFilter.data === undefined) { continue } - const filter = fl.layerDef.filters.find(f => f.id === filtername) - if(typeof appliedFilter.data === "number"){ - if(filter.options[appliedFilter.data].osmTags === undefined){ + const filter = fl.layerDef.filters.find((f) => f.id === filtername) + if (typeof appliedFilter.data === "number") { + if (filter.options[appliedFilter.data].osmTags === undefined) { // This is probably the first, generic option which doesn't _actually_ filter continue } diff --git a/src/Logic/State/SearchState.ts b/src/Logic/State/SearchState.ts index 43cfbf1c1..215ebe72e 100644 --- a/src/Logic/State/SearchState.ts +++ b/src/Logic/State/SearchState.ts @@ -8,22 +8,22 @@ import ThemeSearch from "../Search/ThemeSearch" import OpenStreetMapIdSearch from "../Search/OpenStreetMapIdSearch" import PhotonSearch from "../Search/PhotonSearch" import ThemeViewState from "../../Models/ThemeViewState" -import type { MinimalLayoutInformation } from "../../Models/ThemeConfig/LayoutConfig" +import type { MinimalThemeInformation } from "../../Models/ThemeConfig/ThemeConfig" import { Translation } from "../../UI/i18n/Translation" import GeocodingFeatureSource from "../Search/GeocodingFeatureSource" import LayerSearch from "../Search/LayerSearch" import LayerConfig from "../../Models/ThemeConfig/LayerConfig" import { FeatureSource } from "../FeatureSource/FeatureSource" import { Feature } from "geojson" +import OpenLocationCodeSearch from "../Search/OpenLocationCodeSearch" export default class SearchState { - public readonly feedback: UIEventSource = new UIEventSource(undefined) public readonly searchTerm: UIEventSource = new UIEventSource("") public readonly searchIsFocused = new UIEventSource(false) public readonly suggestions: Store public readonly filterSuggestions: Store - public readonly themeSuggestions: Store + public readonly themeSuggestions: Store public readonly layerSuggestions: Store public readonly locationSearchers: ReadonlyArray @@ -38,58 +38,70 @@ export default class SearchState { this.locationSearchers = [ new LocalElementSearch(state, 5), new CoordinateSearch(), + new OpenLocationCodeSearch(), new OpenStreetMapIdSearch(state), - new PhotonSearch() // new NominatimGeocoding(), + new PhotonSearch(true, 2), + new PhotonSearch(), + // new NominatimGeocoding(), ] const bounds = state.mapProperties.bounds - const suggestionsList = this.searchTerm.stabilized(250).mapD(search => { + const suggestionsList = this.searchTerm.stabilized(250).mapD( + (search) => { if (search.length === 0) { return undefined } - return this.locationSearchers.map(ls => ls.suggest(search, { bbox: bounds.data })) - - }, [bounds] + return this.locationSearchers.map((ls) => ls.suggest(search, { bbox: bounds.data })) + }, + [bounds] ) - this.suggestionsSearchRunning = suggestionsList.bind(suggestions => { + this.suggestionsSearchRunning = suggestionsList.bind((suggestions) => { if (suggestions === undefined) { return new ImmutableStore(true) } - return Stores.concat(suggestions).map(suggestions => suggestions.some(list => list === undefined)) + return Stores.concat(suggestions).map((suggestions) => + suggestions.some((list) => list === undefined) + ) }) - this.suggestions = suggestionsList.bindD(suggestions => - Stores.concat(suggestions).map(suggestions => CombinedSearcher.merge(suggestions)) + this.suggestions = suggestionsList.bindD((suggestions) => + Stores.concat(suggestions).map((suggestions) => CombinedSearcher.merge(suggestions)) ) const themeSearch = new ThemeSearch(state) - this.themeSuggestions = this.searchTerm.mapD(query => themeSearch.search(query, 3)) + this.themeSuggestions = this.searchTerm.mapD((query) => themeSearch.search(query, 3)) - const layerSearch = new LayerSearch(state.layout) - this.layerSuggestions = this.searchTerm.mapD(query => layerSearch.search(query, 5)) + const layerSearch = new LayerSearch(state.theme) + this.layerSuggestions = this.searchTerm.mapD((query) => layerSearch.search(query, 5)) const filterSearch = new FilterSearch(state) - this.filterSuggestions = this.searchTerm.stabilized(50) - .mapD(query => filterSearch.search(query)) - .mapD(filterResult => { - const active = state.layerState.activeFilters.data - return filterResult.filter(({ filter, index, layer }) => { - const foundMatch = active.some(active => - active.filter.id === filter.id && layer.id === active.layer.id && active.control.data === index) + this.filterSuggestions = this.searchTerm + .stabilized(50) + .mapD((query) => filterSearch.search(query)) + .mapD( + (filterResult) => { + const active = state.layerState.activeFilters.data + return filterResult.filter(({ filter, index, layer }) => { + const foundMatch = active.some( + (active) => + active.filter.id === filter.id && + layer.id === active.layer.id && + active.control.data === index + ) - return !foundMatch - }) - }, [state.layerState.activeFilters]) + return !foundMatch + }) + }, + [state.layerState.activeFilters] + ) this.locationResults = new GeocodingFeatureSource(this.suggestions.stabilized(250)) this.showSearchDrawer = new UIEventSource(false) - this.searchIsFocused.addCallbackAndRunD(sugg => { + this.searchIsFocused.addCallbackAndRunD((sugg) => { if (sugg) { this.showSearchDrawer.set(true) } }) - - } public async apply(result: FilterSearchResult[] | LayerConfig) { @@ -108,7 +120,7 @@ export default class SearchState { private async applyFilter(payload: FilterSearchResult[]) { const state = this.state - const layersToShow = payload.map(fsr => fsr.layer.id) + const layersToShow = payload.map((fsr) => fsr.layer.id) console.log("Layers to show are", layersToShow) for (const [name, otherLayer] of state.layerState.filteredLayers) { const layer = otherLayer.layerDef @@ -135,12 +147,21 @@ export default class SearchState { } } - clickedOnMap(feature: Feature) { + async clickedOnMap(feature: Feature) { const osmid = feature.properties.osm_id const localElement = this.state.indexedFeatures.featuresById.data.get(osmid) if (localElement) { this.state.selectedElement.set(localElement) return } + // This feature might not be loaded because we zoomed out + const object = await this.state.osmObjectDownloader.DownloadObjectAsync(osmid) + if (object === "deleted") { + return + } + const f = object.asGeoJson() + this.state.indexedFeatures.addItem(f) + this.state.featureProperties.trackFeature(f) + this.state.selectedElement.set(f) } } diff --git a/src/Logic/State/UserRelatedState.ts b/src/Logic/State/UserRelatedState.ts index 7228ae61e..63d07567c 100644 --- a/src/Logic/State/UserRelatedState.ts +++ b/src/Logic/State/UserRelatedState.ts @@ -1,4 +1,4 @@ -import LayoutConfig, { MinimalLayoutInformation } from "../../Models/ThemeConfig/LayoutConfig" +import ThemeConfig, { MinimalThemeInformation } from "../../Models/ThemeConfig/ThemeConfig" import { OsmConnection } from "../Osm/OsmConnection" import { MangroveIdentity } from "../Web/MangroveReviews" import { Store, Stores, UIEventSource } from "../UIEventSource" @@ -22,9 +22,7 @@ import Showdown from "showdown" import { LocalStorageSource } from "../Web/LocalStorageSource" import { GeocodeResult } from "../Search/GeocodingProvider" - export class OptionallySyncedHistory { - public readonly syncPreference: UIEventSource<"sync" | "local" | "no"> public readonly value: Store private readonly synced: UIEventSource @@ -34,18 +32,26 @@ export class OptionallySyncedHistory { private readonly _isSame: (a: T, b: T) => boolean private osmconnection: OsmConnection - constructor(key: string, osmconnection: OsmConnection, maxHistory: number = 20, isSame?: (a: T, b: T) => boolean) { + constructor( + key: string, + osmconnection: OsmConnection, + maxHistory: number = 20, + isSame?: (a: T, b: T) => boolean + ) { this.osmconnection = osmconnection this._maxHistory = maxHistory this._isSame = isSame - this.syncPreference = osmconnection.getPreference( - "preference-" + key + "-history", - "sync", - ) - const synced = this.synced = UIEventSource.asObject(osmconnection.getPreference(key + "-history"), []) - const local = this.local = LocalStorageSource.GetParsed(key + "-history", []) - const thisSession = this.thisSession = new UIEventSource([], "optionally-synced:"+key+"(session only)") - this.syncPreference.addCallback(syncmode => { + this.syncPreference = osmconnection.getPreference("preference-" + key + "-history", "sync") + const synced = (this.synced = UIEventSource.asObject( + osmconnection.getPreference(key + "-history"), + [] + )) + const local = (this.local = LocalStorageSource.getParsed(key + "-history", [])) + const thisSession = (this.thisSession = new UIEventSource( + [], + "optionally-synced:" + key + "(session only)" + )) + this.syncPreference.addCallback((syncmode) => { if (syncmode === "sync") { let list = [...thisSession.data, ...synced.data].slice(0, maxHistory) if (this._isSame) { @@ -67,9 +73,7 @@ export class OptionallySyncedHistory { } }) - this.value = this.syncPreference.bind(syncPref => this.getAppropriateStore(syncPref)) - - + this.value = this.syncPreference.bind((syncPref) => this.getAppropriateStore(syncPref)) } private getAppropriateStore(syncPref?: string) { @@ -87,7 +91,7 @@ export class OptionallySyncedHistory { const store = this.getAppropriateStore() let oldList = store.data ?? [] if (this._isSame) { - oldList = oldList.filter(x => !this._isSame(t, x)) + oldList = oldList.filter((x) => !this._isSame(t, x)) } store.set([t, ...oldList].slice(0, this._maxHistory)) } @@ -100,14 +104,13 @@ export class OptionallySyncedHistory { if (t === undefined) { return } - this.osmconnection.isLoggedIn.addCallbackAndRun(loggedIn => { + this.osmconnection.isLoggedIn.addCallbackAndRun((loggedIn) => { if (!loggedIn) { return } this.add(t) return true }) - } clear() { @@ -157,14 +160,14 @@ export default class UserRelatedState { */ public readonly gpsLocationHistoryRetentionTime = new UIEventSource( 7 * 24 * 60 * 60, - "gps_location_retention", + "gps_location_retention" ) public readonly addNewFeatureMode = new UIEventSource< "button" | "button_click_right" | "button_click" | "click" | "click_right" >("button_click_right") - public readonly showScale : UIEventSource + public readonly showScale: UIEventSource /** * Preferences as tags exposes many preferences and state properties as record. @@ -180,18 +183,17 @@ export default class UserRelatedState { public readonly recentlyVisitedThemes: OptionallySyncedHistory public readonly recentlyVisitedSearch: OptionallySyncedHistory - constructor( osmConnection: OsmConnection, - layout?: LayoutConfig, + layout?: ThemeConfig, featureSwitches?: FeatureSwitchState, - mapProperties?: MapProperties, + mapProperties?: MapProperties ) { this.osmConnection = osmConnection this._mapProperties = mapProperties this.showAllQuestionsAtOnce = UIEventSource.asBoolean( - this.osmConnection.getPreference("show-all-questions", "false"), + this.osmConnection.getPreference("show-all-questions", "false") ) this.language = this.osmConnection.getPreference("language") this.showTags = this.osmConnection.getPreference("show_tags") @@ -202,16 +204,20 @@ export default class UserRelatedState { this.a11y = this.osmConnection.getPreference("a11y") this.mangroveIdentity = new MangroveIdentity( - this.osmConnection.getPreference("identity", undefined,"mangrove"), - this.osmConnection.getPreference("identity-creation-date", undefined,"mangrove"), + this.osmConnection.getPreference("identity", undefined, "mangrove"), + this.osmConnection.getPreference("identity-creation-date", undefined, "mangrove") + ) + this.preferredBackgroundLayer = this.osmConnection.getPreference( + "preferred-background-layer" ) - this.preferredBackgroundLayer = this.osmConnection.getPreference("preferred-background-layer") this.addNewFeatureMode = this.osmConnection.getPreference( "preferences-add-new-mode", - "button_click_right", + "button_click_right" + ) + this.showScale = UIEventSource.asBoolean( + this.osmConnection.GetPreference("preference-show-scale", "false") ) - this.showScale = UIEventSource.asBoolean(this.osmConnection.GetPreference("preference-show-scale","false")) this.imageLicense = this.osmConnection.getPreference("pictures-license", "CC0") this.installedUserThemes = UserRelatedState.initInstalledUserThemes(osmConnection) @@ -224,12 +230,13 @@ export default class UserRelatedState { "theme", this.osmConnection, 10, - (a, b) => a === b, + (a, b) => a === b ) - this.recentlyVisitedSearch = new OptionallySyncedHistory("places", + this.recentlyVisitedSearch = new OptionallySyncedHistory( + "places", this.osmConnection, 15, - (a, b) => a.osm_id === b.osm_id && a.osm_type === b.osm_type, + (a, b) => a.osm_id === b.osm_id && a.osm_type === b.osm_type ) this.syncLanguage() this.recentlyVisitedThemes.addDefferred(layout?.id) @@ -272,7 +279,17 @@ export default class UserRelatedState { } } - public getUnofficialTheme(id: string): (MinimalLayoutInformation & { definition }) | undefined { + /** + * Adds a newly visited unofficial theme (or update the info). + * + * @param themeInfo note that themeInfo.id should be the URL where it was found + */ + public addUnofficialTheme(themeInfo: MinimalThemeInformation) { + const pref = this.osmConnection.getPreference("unofficial-theme-" + themeInfo.id) + this.osmConnection.isLoggedIn.when(() => pref.set(JSON.stringify(themeInfo))) + } + + public getUnofficialTheme(id: string): MinimalThemeInformation | undefined { const pref = this.osmConnection.getPreference("unofficial-theme-" + id) const str = pref.data @@ -282,20 +299,20 @@ export default class UserRelatedState { } try { - return JSON.parse(str) + return JSON.parse(str) } catch (e) { console.warn( "Removing theme " + - id + - " as it could not be parsed from the preferences; the content is:", - str, + id + + " as it could not be parsed from the preferences; the content is:", + str ) pref.setData(null) return undefined } } - public markLayoutAsVisited(layout: LayoutConfig) { + public markLayoutAsVisited(layout: ThemeConfig) { if (!layout) { console.error("Trying to mark a layout as visited, but ", layout, " got passed") return @@ -318,7 +335,7 @@ export default class UserRelatedState { title: layout.title.translations, shortDescription: layout.shortDescription.translations, definition: layout["definition"], - }), + }) ) } } @@ -328,7 +345,7 @@ export default class UserRelatedState { return osmConnection.preferencesHandler.allPreferences.map((prefs) => Object.keys(prefs) .filter((k) => k.startsWith(prefix)) - .map((k) => k.substring(prefix.length)), + .map((k) => k.substring(prefix.length)) ) } @@ -342,7 +359,7 @@ export default class UserRelatedState { return userPreferences.map((preferences) => Object.keys(preferences) .filter((key) => key.startsWith(prefix)) - .map((key) => key.substring(prefix.length, key.length - "-enabled".length)), + .map((key) => key.substring(prefix.length, key.length - "-enabled".length)) ) } @@ -358,7 +375,7 @@ export default class UserRelatedState { return undefined } return [home.lon, home.lat] - }), + }) ).map((homeLonLat) => { if (homeLonLat === undefined) { return empty @@ -387,8 +404,8 @@ export default class UserRelatedState { * This is inherently a dirty and chaotic method, as it shoves many properties into this EventSource * */ private initAmendedPrefs( - layout?: LayoutConfig, - featureSwitches?: FeatureSwitchState, + layout?: ThemeConfig, + featureSwitches?: FeatureSwitchState ): UIEventSource> { const amendedPrefs = new UIEventSource>({ _theme: layout?.id, @@ -434,19 +451,19 @@ export default class UserRelatedState { const missingLayers = Utils.Dedup( untranslated .filter((k) => k.startsWith("layers:")) - .map((k) => k.slice("layers:".length).split(".")[0]), + .map((k) => k.slice("layers:".length).split(".")[0]) ) const zenLinks: { link: string; id: string }[] = Utils.NoNull([ hasMissingTheme ? { - id: "theme:" + layout.id, - link: LinkToWeblate.hrefToWeblateZen( - language, - "themes", - layout.id, - ), - } + id: "theme:" + layout.id, + link: LinkToWeblate.hrefToWeblateZen( + language, + "themes", + layout.id + ), + } : undefined, ...missingLayers.map((id) => ({ id: "layer:" + id, @@ -463,7 +480,7 @@ export default class UserRelatedState { } amendedPrefs.ping() }, - [this.translationMode], + [this.translationMode] ) this.mangroveIdentity.getKeyId().addCallbackAndRun((kid) => { @@ -482,7 +499,7 @@ export default class UserRelatedState { .makeHtml(userDetails.description) ?.replace(/>/g, ">") ?.replace(/</g, "<") - ?.replace(/\n/g, ""), + ?.replace(/\n/g, "") ) } @@ -493,7 +510,7 @@ export default class UserRelatedState { (c: { contributor: string; commits: number }) => { const replaced = c.contributor.toLowerCase().replace(/\s+/g, "") return replaced === simplifiedName - }, + } ) if (isTranslator) { amendedPrefs.data["_translation_contributions"] = "" + isTranslator.commits @@ -502,7 +519,7 @@ export default class UserRelatedState { (c: { contributor: string; commits: number }) => { const replaced = c.contributor.toLowerCase().replace(/\s+/g, "") return replaced === simplifiedName - }, + } ) if (isCodeContributor) { amendedPrefs.data["_code_contributions"] = "" + isCodeContributor.commits @@ -516,10 +533,10 @@ export default class UserRelatedState { // Language is managed separately continue } - if(tags[key] === null){ + if (tags[key] === null) { continue } - let pref = this.osmConnection.GetPreference(key, undefined, {prefix: ""}) + let pref = this.osmConnection.GetPreference(key, undefined, { prefix: "" }) pref.set(tags[key]) } diff --git a/src/Logic/Tags/RegexTag.ts b/src/Logic/Tags/RegexTag.ts index 9602df9a7..216564a4b 100644 --- a/src/Logic/Tags/RegexTag.ts +++ b/src/Logic/Tags/RegexTag.ts @@ -106,14 +106,31 @@ export class RegexTag extends TagsFilter { * * const t = TagUtils.Tag("a=") * t.asJson() // => "a=" + * + * const t = TagUtils.Tag("a~i~b") + * t.asJson() // => "a~i~b" + * + * const t = TagUtils.Tag("service:bicycle:.*~~*") + * t.asJson() // => "service:bicycle:.*~~.+" */ asJson(): TagConfigJson { const v = RegexTag.source(this.value, false) + const valueIsString = typeof this.value === "string" + const caseInvariant = typeof this.value !== "string" && this.value.ignoreCase + const invert = this.invert ? "!" : "" if (typeof this.key === "string") { - const oper = typeof this.value === "string" ? "=" : "~" - return `${this.key}${this.invert ? "!" : ""}${oper}${v}` + if (valueIsString) { + return `${this.key}${invert}=${v}` + } + + if (!caseInvariant) { + return `${this.key}${invert}~${v}` + } + return `${this.key}${invert}~i~${v}` } - return `${this.key.source}${this.invert ? "!" : ""}~~${v}` + + const key: string = RegexTag.source(this.key, false) + return `${key}${invert}~${caseInvariant ? "i~" : ""}~${v}` } isUsableAsAnswer(): boolean { diff --git a/src/Logic/Tags/Tag.ts b/src/Logic/Tags/Tag.ts index 40bb10c1c..e7f0f269f 100644 --- a/src/Logic/Tags/Tag.ts +++ b/src/Logic/Tags/Tag.ts @@ -19,7 +19,7 @@ export class Tag extends TagsFilter { if (value === undefined) { throw `Invalid value while constructing a Tag with key '${key}': value is undefined` } - if(value.length > 255 || key.length > 255){ + if (value.length > 255 || key.length > 255) { throw "Invalid tag: length is over 255" } if (value === "*") { @@ -170,8 +170,12 @@ export class Tag extends TagsFilter { return this } + /** + * new Tag("panoramax", "").isNegative() // => true + * new Tag("x","y").isNegative() // => false + */ isNegative(): boolean { - return false + return this.value === "" } visit(f: (tagsFilter: TagsFilter) => void) { diff --git a/src/Logic/Tags/TagUtils.ts b/src/Logic/Tags/TagUtils.ts index bcd73cc58..f64d81315 100644 --- a/src/Logic/Tags/TagUtils.ts +++ b/src/Logic/Tags/TagUtils.ts @@ -99,6 +99,16 @@ export class TagUtils { overpassSupport: true, docs: "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~~": { + name: "Key and value should match a given regex; value is case-invariant", + overpassSupport: true, + docs: "Similar to ~~, except that the value is case-invariant", + }, + "!~i~~": { + name: "Key and value should match a given regex; value is case-invariant", + overpassSupport: true, + docs: "Similar to !~~, except that the value is case-invariant", + }, ":=": { name: "Substitute `... {some_key} ...` and match `key`", overpassSupport: false, @@ -469,7 +479,7 @@ export class TagUtils { * TagUtils.Tag("survey:date:={_date:now}") // => new SubstitutingTag("survey:date", "{_date:now}") * TagUtils.Tag("xyz!~\\[\\]") // => new RegexTag("xyz", /^(\[\])$/s, true) * TagUtils.Tag("tags~(.*;)?amenity=public_bookcase(;.*)?") // => new RegexTag("tags", /^((.*;)?amenity=public_bookcase(;.*)?)$/s) - * TagUtils.Tag("service:bicycle:.*~~*") // => new RegexTag(/^(service:bicycle:.*)$/, /.+/si) + * TagUtils.Tag("service:bicycle:.*~i~~*") // => new RegexTag(/^(service:bicycle:.*)$/, /.+/s) * TagUtils.Tag("_first_comment~.*{search}.*") // => new RegexTag('_first_comment', /^(.*{search}.*)$/s) * * TagUtils.Tag("xyz<5").matchesProperties({xyz: 4}) // => true @@ -572,7 +582,7 @@ export class TagUtils { } /** - * Parses the various parts of a regex tag + * Parses the various parts of a regex tag. The key is never considered a regex * * TagUtils.parseRegexOperator("key~value") // => {invert: false, key: "key", value: "value", modifier: ""} * TagUtils.parseRegexOperator("key!~value") // => {invert: true, key: "key", value: "value", modifier: ""} @@ -590,7 +600,7 @@ export class TagUtils { value: string modifier: "i" | "" } | null { - const match = tag.match(/^([_|a-zA-Z0-9: -]+)(!)?~([i]~)?(.*)$/) + const match = tag.match(/^([_|a-zA-Z0-9.: -]+)(!)?~([i]~)?(.*)$/) if (match == null) { return null } @@ -790,8 +800,9 @@ export class TagUtils { } } - if (tag.indexOf("~~") >= 0) { - const split = Utils.SplitFirst(tag, "~~") + if (tag.indexOf("~~") >= 0 || tag.indexOf("~i~~") >= 0) { + const caseInvariant = tag.indexOf("~i~~") >= 0 + const split = Utils.SplitFirst(tag, caseInvariant ? "~i~~" : "~~") let keyRegex: RegExp if (split[0] === "*") { keyRegex = new RegExp(".+", "i") @@ -800,9 +811,9 @@ export class TagUtils { } let valueRegex: RegExp if (split[1] === "*") { - valueRegex = new RegExp(".+", "si") + valueRegex = new RegExp(".+", "s") } else { - valueRegex = new RegExp("^(" + split[1] + ")$", "s") + valueRegex = new RegExp("^(" + split[1] + ")$", caseInvariant ? "si" : "s") } return new RegexTag(keyRegex, valueRegex) } diff --git a/src/Logic/UIEventSource.ts b/src/Logic/UIEventSource.ts index 15a27da2c..77cfe209f 100644 --- a/src/Logic/UIEventSource.ts +++ b/src/Logic/UIEventSource.ts @@ -9,13 +9,14 @@ export class Stores { const source = new UIEventSource(undefined) function run() { + if (asLong !== undefined && !asLong()) { + return + } source.setData(new Date()) if (Utils.runningFromConsole) { return } - if (asLong === undefined || asLong()) { - window.setTimeout(run, millis) - } + window.setTimeout(run, millis) } run() @@ -99,7 +100,7 @@ export class Stores { */ static holdDefined(store: Store): Store { const newStore = new UIEventSource(store.data) - store.addCallbackD(t => { + store.addCallbackD((t) => { newStore.setData(t) }) return newStore @@ -141,15 +142,19 @@ export abstract class Store implements Readable { extraStoresToWatch?: Store[], callbackDestroyFunction?: (f: () => void) => void ): Store { - return this.map((t) => { - if (t === undefined) { - return undefined - } - if (t === null) { - return null - } - return f(>t) - }, extraStoresToWatch, callbackDestroyFunction) + return this.map( + (t) => { + if (t === undefined) { + return undefined + } + if (t === null) { + return null + } + return f(>t) + }, + extraStoresToWatch, + callbackDestroyFunction + ) } /** @@ -269,7 +274,10 @@ export abstract class Store implements Readable { return sink } - public bindD(f: (t: Exclude) => Store, extraSources: UIEventSource[] = []): Store { + public bindD( + f: (t: Exclude) => Store, + extraSources: UIEventSource[] = [] + ): Store { return this.bind((t) => { if (t === null) { return null @@ -342,6 +350,16 @@ export abstract class Store implements Readable { } public abstract destroy() + + when(callback: () => void, condition?: (v: T) => boolean) { + condition ??= (v) => v === true + this.addCallbackAndRunD((v) => { + if (condition(v)) { + callback() + return true + } + }) + } } export class ImmutableStore extends Store { @@ -354,8 +372,7 @@ export class ImmutableStore extends Store { this.data = data } - private static readonly pass: () => void = () => { - } + private static readonly pass: () => void = () => {} addCallback(_: (data: T) => void): () => void { // pass: data will never change @@ -635,8 +652,7 @@ class MappedStore extends Store { } export class UIEventSource extends Store implements Writable { - private static readonly pass: (() => void) = () => { - } + private static readonly pass: () => void = () => {} public data: T _callbacks: ListenerTracker = new ListenerTracker() @@ -776,7 +792,10 @@ export class UIEventSource extends Store implements Writable { ) } - static asObject(stringUIEventSource: UIEventSource, defaultV: T): UIEventSource { + static asObject( + stringUIEventSource: UIEventSource, + defaultV: T + ): UIEventSource { return stringUIEventSource.sync( (str) => { if (str === undefined || str === null || str === "") { @@ -939,7 +958,7 @@ export class UIEventSource extends Store implements Writable { const newSource = new UIEventSource(f(this.data), "map(" + this.tag + ")@" + callee) - const update = function() { + const update = function () { newSource.setData(f(self.data)) return allowUnregister && newSource._callbacks.length() === 0 } diff --git a/src/Logic/Web/LinkedDataLoader.ts b/src/Logic/Web/LinkedDataLoader.ts index 6021c3061..c2eb21f69 100644 --- a/src/Logic/Web/LinkedDataLoader.ts +++ b/src/Logic/Web/LinkedDataLoader.ts @@ -371,6 +371,10 @@ export default class LinkedDataLoader { const match = maxstay.match(/P([0-9]+)D/) if (match) { const days = Number(match[1]) + if(days === 30){ + // 30 is the default which is set if velopark didn't know the actual value + return undefined + } if (days === 1) { return "1 day" } diff --git a/src/Logic/Web/LocalStorageSource.ts b/src/Logic/Web/LocalStorageSource.ts index 0923a4a7c..8f6aedaca 100644 --- a/src/Logic/Web/LocalStorageSource.ts +++ b/src/Logic/Web/LocalStorageSource.ts @@ -1,11 +1,14 @@ import { UIEventSource } from "../UIEventSource" +import { Utils } from "../../Utils" /** * UIEventsource-wrapper around localStorage */ export class LocalStorageSource { - static GetParsed(key: string, defaultValue: T): UIEventSource { - return LocalStorageSource.Get(key).sync( + private static readonly _cache: Record> = {} + + static getParsed(key: string, defaultValue: T): UIEventSource { + return LocalStorageSource.get(key).sync( (str) => { if (str === undefined) { return defaultValue @@ -21,16 +24,27 @@ export class LocalStorageSource { ) } - static Get(key: string, defaultValue: string = undefined): UIEventSource { - try { - let saved = localStorage.getItem(key) - if (saved === "undefined") { - saved = undefined + static get(key: string, defaultValue: string = undefined): UIEventSource { + const cached = LocalStorageSource._cache[key] + if (cached) { + return cached + } + let saved = defaultValue + if (!Utils.runningFromConsole) { + try { + saved = localStorage.getItem(key) + if (saved === "undefined") { + saved = undefined + } + } catch (e) { + console.error("Could not get value", key, "from local storage") } - const source = new UIEventSource(saved ?? defaultValue, "localstorage:" + key) + } + const source = new UIEventSource(saved ?? defaultValue, "localstorage:" + key) + if (!Utils.runningFromConsole) { source.addCallback((data) => { - if(data === undefined || data === "" || data === null){ + if (data === undefined || data === "" || data === null) { localStorage.removeItem(key) return } @@ -38,13 +52,12 @@ export class LocalStorageSource { localStorage.setItem(key, data) } catch (e) { // Probably exceeded the quota with this item! - // Lets nuke everything + // Let's nuke everything localStorage.clear() } }) - return source - } catch (e) { - return new UIEventSource(defaultValue) } + LocalStorageSource._cache[key] = source + return source } } diff --git a/src/Logic/Web/MangroveReviews.ts b/src/Logic/Web/MangroveReviews.ts index 6765d8204..b52f48c49 100644 --- a/src/Logic/Web/MangroveReviews.ts +++ b/src/Logic/Web/MangroveReviews.ts @@ -22,7 +22,7 @@ export class MangroveIdentity { this.mangroveIdentity = mangroveIdentity this._mangroveIdentityCreationDate = mangroveIdentityCreationDate mangroveIdentity.addCallbackAndRunD(async (data) => { - if(data === ""){ + if (data === "") { return } await this.setKeypair(data) diff --git a/src/Logic/Web/NameSuggestionIndex.ts b/src/Logic/Web/NameSuggestionIndex.ts index 04fab73aa..7133c1247 100644 --- a/src/Logic/Web/NameSuggestionIndex.ts +++ b/src/Logic/Web/NameSuggestionIndex.ts @@ -297,15 +297,13 @@ export default class NameSuggestionIndex { return true } - if ( - i.locationSet.include.some((c) => countries.indexOf(c) >= 0) - ) { + if (i.locationSet.include.some((c) => countries.indexOf(c) >= 0)) { // We prefer the countries provided by lonlat2country, they are more precise and are loaded already anyway (cheap) // Country might contain multiple countries, separated by ';' return true } - if (i.locationSet.exclude?.some(c => countries.indexOf(c) >= 0)) { + if (i.locationSet.exclude?.some((c) => countries.indexOf(c) >= 0)) { return false } @@ -313,18 +311,20 @@ export default class NameSuggestionIndex { return true } - const hasSpecial = i.locationSet.include?.some(i => i.endsWith(".geojson") || Array.isArray(i)) || i.locationSet.exclude?.some(i => i.endsWith(".geojson") || Array.isArray(i)) + const hasSpecial = + i.locationSet.include?.some((i) => i.endsWith(".geojson") || Array.isArray(i)) || + i.locationSet.exclude?.some((i) => i.endsWith(".geojson") || Array.isArray(i)) if (!hasSpecial) { return false } const key = i.locationSet.include?.join(";") + "-" + i.locationSet.exclude?.join(";") const fromCache = NameSuggestionIndex.resolvedSets[key] - const resolvedSet = fromCache ?? NameSuggestionIndex.loco.resolveLocationSet(i.locationSet) + const resolvedSet = + fromCache ?? NameSuggestionIndex.loco.resolveLocationSet(i.locationSet) if (!fromCache) { NameSuggestionIndex.resolvedSets[key] = resolvedSet } - if (resolvedSet) { // We actually have a location set, so we can check if the feature is in it, by determining if our point is inside the MultiPolygon using @turf/boolean-point-in-polygon // This might occur for some extra boundaries, such as counties, ... diff --git a/src/Logic/Web/NearbyImagesSearch.ts b/src/Logic/Web/NearbyImagesSearch.ts index bf9f571f4..0b4c07f70 100644 --- a/src/Logic/Web/NearbyImagesSearch.ts +++ b/src/Logic/Web/NearbyImagesSearch.ts @@ -58,7 +58,7 @@ export interface P4CPicture { author? license? detailsUrl?: string - direction?: number, + direction?: number osmTags?: object /*To copy straight into OSM!*/ thumbUrl: string details: { @@ -103,7 +103,7 @@ class P4CImageFetcher implements ImageFetcher { { mindate: new Date().getTime() - maxAgeSeconds, towardscenter: false, - }, + } ) } catch (e) { console.log("P4C image fetcher failed with", e) @@ -172,16 +172,13 @@ class ImagesFromPanoramaxFetcher implements ImageFetcher { constructor(url?: string, radius: number = 100) { this._radius = radius if (url) { - this._panoramax = new Panoramax(url) } else { this._panoramax = new PanoramaxXYZ() } } - public async fetchImages(lat: number, lon: number): Promise { - const bboxObj = new BBox([ GeoOperations.destination([lon, lat], this._radius * Math.sqrt(2), -45), GeoOperations.destination([lon, lat], this._radius * Math.sqrt(2), 135), @@ -189,16 +186,16 @@ class ImagesFromPanoramaxFetcher implements ImageFetcher { const bbox: [number, number, number, number] = bboxObj.toLngLatFlat() const images = await this._panoramax.search({ bbox, limit: 1000 }) - return images.map(i => { + return images.map((i) => { const [lng, lat] = i.geometry.coordinates - return ({ + return { pictureUrl: i.assets.sd.href, coordinates: { lng, lat }, provider: "panoramax", direction: i.properties["view:azimuth"], osmTags: { - "panoramax": i.id, + panoramax: i.id, }, thumbUrl: i.assets.thumb.href, date: new Date(i.properties.datetime).getTime(), @@ -206,9 +203,10 @@ class ImagesFromPanoramaxFetcher implements ImageFetcher { author: i.providers.at(-1).name, detailsUrl: i.id, details: { - isSpherical: i.properties["exif"]["Xmp.GPano.ProjectionType"] === "equirectangular", + isSpherical: + i.properties["exif"]["Xmp.GPano.ProjectionType"] === "equirectangular", }, - }) + } }) } } @@ -236,7 +234,7 @@ class ImagesFromCacheServerFetcher implements ImageFetcher { async fetchImagesForType( targetlat: number, targetlon: number, - type: "lines" | "pois" | "polygons", + type: "lines" | "pois" | "polygons" ): Promise { const { x, y, z } = Tiles.embedded_tile(targetlat, targetlon, 14) @@ -253,7 +251,7 @@ class ImagesFromCacheServerFetcher implements ImageFetcher { }), x, y, - z, + z ) await src.updateAsync() return src.features.data @@ -427,7 +425,7 @@ export class CombinedFetcher { lat: number, lon: number, state: UIEventSource>, - sink: UIEventSource, + sink: UIEventSource ): Promise { try { const pics = await source.fetchImages(lat, lon) @@ -460,7 +458,7 @@ export class CombinedFetcher { public getImagesAround( lon: number, - lat: number, + lat: number ): { images: Store state: Store> diff --git a/src/Logic/Web/VeloparkLoader.ts b/src/Logic/Web/VeloparkLoader.ts index 904f7ca25..dffaec485 100644 --- a/src/Logic/Web/VeloparkLoader.ts +++ b/src/Logic/Web/VeloparkLoader.ts @@ -17,7 +17,7 @@ export default class VeloparkLoader { private static readonly coder = new CountryCoder( Constants.countryCoderEndpoint, - Utils.downloadJson + Utils.downloadJson, ) public static convert(veloparkData: VeloparkData): Feature { @@ -46,14 +46,14 @@ export default class VeloparkLoader { if (veloparkData.contactPoint?.email) { properties["operator:email"] = VeloparkLoader.emailReformatting.reformat( - veloparkData.contactPoint?.email + veloparkData.contactPoint?.email, ) } if (veloparkData.contactPoint?.telephone) { properties["operator:phone"] = VeloparkLoader.phoneValidator.reformat( veloparkData.contactPoint?.telephone, - () => "be" + () => "be", ) } @@ -78,9 +78,12 @@ export default class VeloparkLoader { ) { const duration = g.maximumParkingDuration.substring( 1, - g.maximumParkingDuration.length - 1 + g.maximumParkingDuration.length - 1, ) - properties.maxstay = duration + " days" + if (duration !== "30") { + // We don't set maxstay if it is 30, they are the default value that velopark chose for "unknown" + properties.maxstay = duration + " days" + } } properties.access = g.publicAccess ?? "yes" ? "yes" : "no" const prefix = "http://schema.org/" @@ -94,11 +97,11 @@ export default class VeloparkLoader { const startHour = spec.opens const endHour = spec.closes === "23:59" ? "24:00" : spec.closes const merged = OH.MergeTimes( - OH.ParseRule(dayOfWeek + " " + startHour + "-" + endHour) + OH.ParseRule(dayOfWeek + " " + startHour + "-" + endHour), ) return OH.ToString(merged) }) - .join("; ") + .join("; "), ) properties.opening_hours = oh } diff --git a/src/Logic/Web/Wikidata.ts b/src/Logic/Web/Wikidata.ts index e4418515a..56a35fda6 100644 --- a/src/Logic/Web/Wikidata.ts +++ b/src/Logic/Web/Wikidata.ts @@ -1,6 +1,6 @@ import { Utils } from "../../Utils" import { Store, UIEventSource } from "../UIEventSource" -import { WBK} from "wikibase-sdk" +import { WBK } from "wikibase-sdk" export class WikidataResponse { public readonly id: string @@ -128,10 +128,9 @@ interface SparqlResult { * Utility functions around wikidata */ export default class Wikidata { - public static wds = WBK({ instance: "https://wikidata.org", - sparqlEndpoint: "https://query.wikidata.org/bigdata/namespace/wdq/sparql" + sparqlEndpoint: "https://query.wikidata.org/bigdata/namespace/wdq/sparql", }) public static readonly neededUrls = [ @@ -211,7 +210,7 @@ export default class Wikidata { ${instanceOf} ${minusPhrases.join("\n ")} } ORDER BY ASC(?num) LIMIT ${options?.maxCount ?? 20}` - const url = Wikidata. wds.sparqlQuery(sparql) + const url = Wikidata.wds.sparqlQuery(sparql) const result = await Utils.downloadJson(url) /*The full uri of the wikidata-item*/ @@ -252,7 +251,7 @@ export default class Wikidata { lang + "&type=item&origin=*" + "&props=" // props= removes some unused values in the result - const response = await Utils.downloadJsonCached<{search: any[]}>(url, 10000) + const response = await Utils.downloadJsonCached<{ search: any[] }>(url, 10000) const result = response.search @@ -401,7 +400,7 @@ export default class Wikidata { "}" const url = Wikidata.wds.sparqlQuery(query) const result = await Utils.downloadJsonCached(url, 24 * 60 * 60 * 1000) - return result.results.bindings + return result.results.bindings } private static _cache = new Map>() diff --git a/src/Models/Constants.ts b/src/Models/Constants.ts index afefc9cef..04c69f44f 100644 --- a/src/Models/Constants.ts +++ b/src/Models/Constants.ts @@ -27,7 +27,7 @@ export default class Constants { "favourite", "summary", "search", - "geocoded_image" + "geocoded_image", ] as const /** * Special layers which are not included in a theme by default @@ -50,12 +50,17 @@ export default class Constants { ...Constants.no_include, ] as const - public static panoramax: { url: string, token: string } = packagefile.config.panoramax + public static panoramax: { + url: string + token: string + sequence: string + testsequence: string + } = packagefile.config.panoramax // The user journey states thresholds when a new feature gets unlocked public static userJourney = { moreScreenUnlock: 1, - personalLayoutUnlock: 5, + personalThemeUnlock: 5, historyLinkVisible: 10, deletePointsOfOthersUnlock: 20, tagsVisibleAt: 25, @@ -63,7 +68,6 @@ export default class Constants { mapCompleteHelpUnlock: 50, themeGeneratorReadOnlyUnlock: 50, - themeGeneratorFullUnlock: 500, addNewPointWithUnreadMessagesUnlock: 500, importHelperUnlock: 5000, diff --git a/src/Models/FilteredLayer.ts b/src/Models/FilteredLayer.ts index 0077039f4..a3d5364ec 100644 --- a/src/Models/FilteredLayer.ts +++ b/src/Models/FilteredLayer.ts @@ -36,7 +36,7 @@ export default class FilteredLayer { constructor( layer: LayerConfig, appliedFilters?: ReadonlyMap>, - isDisplayed?: UIEventSource, + isDisplayed?: UIEventSource ) { this.layerDef = layer this.isDisplayed = isDisplayed ?? new UIEventSource(true) @@ -82,25 +82,25 @@ export default class FilteredLayer { layer: LayerConfig, context: string, osmConnection: OsmConnection, - enabledByDefault?: Store, + enabledByDefault?: Store ) { let isDisplayed: UIEventSource if (layer.syncSelection === "local") { - isDisplayed = LocalStorageSource.GetParsed( + isDisplayed = LocalStorageSource.getParsed( context + "-layer-" + layer.id + "-enabled", - layer.shownByDefault, + layer.shownByDefault ) } else if (layer.syncSelection === "theme-only") { isDisplayed = FilteredLayer.getPref( osmConnection, context + "-layer-" + layer.id + "-enabled", - layer, + layer ) } else if (layer.syncSelection === "global") { isDisplayed = FilteredLayer.getPref( osmConnection, "layer-" + layer.id + "-enabled", - layer, + layer ) } else { let isShown = layer.shownByDefault @@ -110,7 +110,7 @@ export default class FilteredLayer { isDisplayed = QueryParameters.GetBooleanQueryParameter( FilteredLayer.queryParameterKey(layer), 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( option: FilterConfigOption, - fieldstate: string | Record, + fieldstate: string | Record ): TagsFilter | undefined { let properties: Record if (typeof fieldstate === "string") { @@ -181,7 +181,7 @@ export default class FilteredLayer { private static getPref( osmConnection: OsmConnection, key: string, - layer: LayerConfig, + layer: LayerConfig ): UIEventSource { return osmConnection.GetPreference(key, layer.shownByDefault + "").sync( (v) => { @@ -196,7 +196,7 @@ export default class FilteredLayer { return undefined } return "" + b - }, + } ) } @@ -216,8 +216,14 @@ export default class FilteredLayer { } for (const globalFilter of globalFilters ?? []) { const neededTags = globalFilter.osmTags - if (neededTags !== undefined && !neededTags.matchesProperties(properties)) { - return false + if (neededTags !== undefined) { + const doesMatch = neededTags.matchesProperties(properties) + if (globalFilter.forceShowOnMatch) { + return doesMatch || this.isDisplayed.data + } + if (!doesMatch) { + return false + } } } { diff --git a/src/Models/GlobalFilter.ts b/src/Models/GlobalFilter.ts index ce837acca..42100245f 100644 --- a/src/Models/GlobalFilter.ts +++ b/src/Models/GlobalFilter.ts @@ -4,6 +4,10 @@ import { TagsFilter } from "../Logic/Tags/TagsFilter" export interface GlobalFilter { osmTags: TagsFilter + /** + * If set, this object will be shown instead of hidden, even if the layer is not displayed + */ + forceShowOnMatch?: boolean state: number | string | undefined id: string onNewPoint: { diff --git a/src/Models/MapProperties.ts b/src/Models/MapProperties.ts index 336b3686c..69d016f5e 100644 --- a/src/Models/MapProperties.ts +++ b/src/Models/MapProperties.ts @@ -32,7 +32,6 @@ export interface MapProperties { onKeyNavigationEvent(f: (event: KeyNavigationEvent) => void | boolean): () => void flyTo(lon: number, lat: number, zoom: number): void - } export interface ExportableMap { diff --git a/src/Models/MenuState.ts b/src/Models/MenuState.ts index 6d3e5f868..a7b43523e 100644 --- a/src/Models/MenuState.ts +++ b/src/Models/MenuState.ts @@ -57,7 +57,7 @@ export class MenuState { }) } - const visitedBefore = LocalStorageSource.GetParsed( + const visitedBefore = LocalStorageSource.getParsed( themeid + "thememenuisopened", false ) diff --git a/src/Models/RasterLayers.ts b/src/Models/RasterLayers.ts index cde3dddf3..0e0cb0e79 100644 --- a/src/Models/RasterLayers.ts +++ b/src/Models/RasterLayers.ts @@ -1,5 +1,7 @@ import { Feature, Polygon } from "geojson" import * as globallayers from "../assets/global-raster-layers.json" +import * as globallayersEli from "../assets/generated/editor-layer-index-global.json" + import * as bingJson from "../assets/bing.json" import { BBox } from "../Logic/BBox" @@ -28,12 +30,21 @@ export class AvailableRasterLayers { return this._editorLayerIndex } - public static globalLayers: ReadonlyArray = globallayers.layers - .filter( + public static readonly globalLayers: ReadonlyArray = + AvailableRasterLayers.initGlobalLayers() + + private static initGlobalLayers(): RasterLayerPolygon[] { + const gl: RasterLayerProperties[] = (globallayers["default"] ?? globallayers).layers.filter( (properties) => properties.id !== "osm.carto" && properties.id !== "Bing" /*Added separately*/ ) - .map( + const glEli: RasterLayerProperties[] = globallayersEli["default"] ?? globallayersEli + const joined = gl.concat(glEli) + if (joined.some((j) => !j.id)) { + console.log("Invalid layers:", JSON.stringify(joined.filter((l) => !l.id))) + throw "Detected invalid global layer with invalid id" + } + return joined.map( (properties) => { type: "Feature", @@ -41,6 +52,8 @@ export class AvailableRasterLayers { geometry: BBox.global.asGeometry(), } ) + } + public static bing = bingJson public static readonly osmCartoProperties: RasterLayerProperties = { id: "osm", diff --git a/src/Models/ThemeConfig/Conversion/ConversionContext.ts b/src/Models/ThemeConfig/Conversion/ConversionContext.ts index ee38c8c62..3f31103eb 100644 --- a/src/Models/ThemeConfig/Conversion/ConversionContext.ts +++ b/src/Models/ThemeConfig/Conversion/ConversionContext.ts @@ -120,11 +120,11 @@ export class ConversionContext { return new ConversionContext(this.messages, this.path, [...this.operation, key]) } - warn(message: string) { - this.messages.push({ context: this, level: "warning", message }) + warn(...message: (string | number)[]) { + this.messages.push({ context: this, level: "warning", message: message.join(" ") }) } - err(...message: string[]) { + err(...message: (string | number)[]) { this._hasErrors = true this.messages.push({ context: this, level: "error", message: message.join(" ") }) } diff --git a/src/Models/ThemeConfig/Conversion/CreateNoteImportLayer.ts b/src/Models/ThemeConfig/Conversion/CreateNoteImportLayer.ts deleted file mode 100644 index f36b21f56..000000000 --- a/src/Models/ThemeConfig/Conversion/CreateNoteImportLayer.ts +++ /dev/null @@ -1,209 +0,0 @@ -import { Conversion } from "./Conversion" -import LayerConfig from "../LayerConfig" -import { LayerConfigJson } from "../Json/LayerConfigJson" -import Translations from "../../../UI/i18n/Translations" -import { Translation, TypedTranslation } from "../../../UI/i18n/Translation" -import { ConversionContext } from "./ConversionContext" - -export default class CreateNoteImportLayer extends Conversion { - /** - * A closed note is included if it is less then 'n'-days closed - * @private - */ - private readonly _includeClosedNotesDays: number - - constructor(includeClosedNotesDays = 0) { - super( - [ - "Advanced conversion which deducts a layer showing all notes that are 'importable' (i.e. a note that contains a link to some MapComplete theme, with hash '#import').", - "The import buttons and matches will be based on the presets of the given theme", - ].join("\n\n"), - [], - "CreateNoteImportLayer" - ) - this._includeClosedNotesDays = includeClosedNotesDays - } - - convert(layerJson: LayerConfigJson, _: ConversionContext): LayerConfigJson { - const t = Translations.t.importLayer - - /** - * The note itself will contain `tags=k=v;k=v;k=v;... - * This must be matched with a regex. - * This is a simple JSON-object as how it'll be put into the layerConfigJson directly - */ - const isShownIfAny: any[] = [] - const layer = new LayerConfig(layerJson, "while constructing a note-import layer") - for (const preset of layer.presets) { - const mustMatchAll = [] - for (const tag of preset.tags) { - const key = tag.key - const value = tag.value - const condition = "_tags~(^|.*;)" + key + "=" + value + "($|;.*)" - mustMatchAll.push(condition) - } - isShownIfAny.push({ and: mustMatchAll }) - } - - const title = layer.presets[0].title - - const importButton = {} - { - const translations = trs(t.importButton, { - layerId: layer.id, - title: layer.presets[0].title, - }) - for (const key in translations) { - if (key !== "_context") { - importButton[key] = "{" + translations[key] + "}" - } else { - importButton[key] = translations[key] - } - } - } - - function embed(prefix, translation: Translation, postfix) { - const result = {} - for (const language in translation.translations) { - result[language] = prefix + translation.translations[language] + postfix - } - result["_context"] = translation.context - return result - } - - function tr(translation: Translation) { - return { ...translation.translations, _context: translation.context } - } - - function trs(translation: TypedTranslation, subs: T): Record { - return { ...translation.Subs(subs).translations, _context: translation.context } - } - - return { - id: "note_import_" + layer.id, - // By disabling the name, the import-layers won't pollute the filter view "name": t.layerName.Subs({title: layer.title.render}).translations, - description: trs(t.description, { title: layer.title.render }), - source: { - osmTags: { - and: ["id~[0-9]+", "comment_url~.*notes/[0-9]*/comment.json"], - }, - geoJson: - "https://api.openstreetmap.org/api/0.6/notes.json?limit=10000&closed=" + - this._includeClosedNotesDays + - "&bbox={x_min},{y_min},{x_max},{y_max}", - geoJsonZoomLevel: 10, - }, - /* We need to set 'pass_all_features' - There are probably many note_import-layers, and we don't want the first one to gobble up all notes and then discard them... - */ - passAllFeatures: true, - minzoom: Math.min(12, layerJson.minzoom - 2), - title: { - render: trs(t.popupTitle, { title }), - }, - calculatedTags: [ - "_first_comment=get(feat)('comments')[0]?.text?.toLowerCase() ?? ''", - "_trigger_index=(() => {const lines = feat.properties['_first_comment']?.split('\\n') ?? []; const matchesMapCompleteURL = lines.map(l => l.match(\".*https://mapcomplete.\\(org|osm.be\\)/\\([a-zA-Z_-]+\\)\\(.html\\)?.*#import\")); const matchedIndexes = matchesMapCompleteURL.map((doesMatch, i) => [doesMatch !== null, i]).filter(v => v[0]).map(v => v[1]); return matchedIndexes[0] })()", - "_comments_count=get(feat)('comments').length", - "_intro=(() => {const lines = get(feat)('comments')[0].text.split('\\n'); lines.splice(get(feat)('_trigger_index')-1, lines.length); return lines.filter(l => l !== '').join('
    ');})()", - "_tags=(() => {let lines = get(feat)('comments')[0].text.split('\\n').map(l => l.trim()); lines.splice(0, get(feat)('_trigger_index') + 1); lines = lines.filter(l => l != ''); return lines.join(';');})()", - ], - isShown: { - and: ["_trigger_index~*", { or: isShownIfAny }], - }, - titleIcons: [ - { - render: "", - }, - ], - tagRenderings: [ - { - id: "Intro", - render: "{_intro}", - }, - { - id: "conversation", - render: "{visualize_note_comments(comments,1)}", - condition: "_comments_count>1", - }, - { - id: "import", - render: importButton, - condition: "closed_at=", - }, - { - id: "close_note_", - render: embed( - "{close_note(", - t.notFound.Subs({ title }), - ", ./assets/svg/close.svg, id, This feature does not exist, 18)}" - ), - condition: "closed_at=", - }, - { - id: "close_note_mapped", - render: embed( - "{close_note(", - t.alreadyMapped.Subs({ title }), - ", ./assets/svg/duplicate.svg, id, Already mapped, 18)}" - ), - condition: "closed_at=", - }, - { - id: "handled", - render: tr(t.importHandled), - condition: "closed_at~*", - }, - { - id: "comment", - render: "{add_note_comment()}", - }, - { - id: "add_image", - render: "{add_image_to_note()}", - }, - { - id: "nearby_images_note", - render: tr(t.nearbyImagesIntro), - }, - { - id: "all_tags_note", - render: "{all_tags()}", - metacondition: { - or: [ - "__featureSwitchIsDebugging=true", - "mapcomplete-show_tags=full", - "mapcomplete-show_debug=yes", - ], - }, - }, - ], - pointRendering: [ - { - location: ["point"], - marker: [ - { - icon: "circle", - color: "#fff", - }, - { - icon: { - render: "help", - mappings: [ - { - if: { or: ["closed_at~*", "_imported=yes"] }, - then: "checkmark", - }, - ], - }, - color: "#00", - }, - ], - iconSize: "40,40", - anchor: "center", - }, - ], - allowMove: false, - } - } -} diff --git a/src/Models/ThemeConfig/Conversion/FixImages.ts b/src/Models/ThemeConfig/Conversion/FixImages.ts index 50c67153b..331e3d02e 100644 --- a/src/Models/ThemeConfig/Conversion/FixImages.ts +++ b/src/Models/ThemeConfig/Conversion/FixImages.ts @@ -1,5 +1,5 @@ import { Conversion, DesugaringStep } from "./Conversion" -import { LayoutConfigJson } from "../Json/LayoutConfigJson" +import { ThemeConfigJson } from "../Json/ThemeConfigJson" import { Utils } from "../../../Utils" import metapaths from "../../../assets/schemas/layoutconfigmeta.json" import tagrenderingmetapaths from "../../../assets/schemas/questionabletagrenderingconfigmeta.json" @@ -9,7 +9,7 @@ import { parse as parse_html } from "node-html-parser" import { ConversionContext } from "./ConversionContext" export class ExtractImages extends Conversion< - LayoutConfigJson, + ThemeConfigJson, { path: string; context: string }[] > { private static readonly layoutMetaPaths = metapaths.filter((mp) => { @@ -109,7 +109,7 @@ export class ExtractImages extends Conversion< * */ convert( - json: LayoutConfigJson, + json: ThemeConfigJson, context: ConversionContext ): { path: string; context: string }[] { const allFoundImages: { path: string; context: string }[] = [] @@ -243,7 +243,7 @@ export class ExtractImages extends Conversion< } } -export class FixImages extends DesugaringStep { +export class FixImages extends DesugaringStep { private readonly _knownImages: Set constructor(knownImages: Set) { @@ -289,7 +289,7 @@ export class FixImages extends DesugaringStep { * fixed.layers[0]["pointRendering"][0].marker[0].icon // => "https://raw.githubusercontent.com/seppesantens/MapComplete-Themes/main/VerkeerdeBordenDatabank/TS_bolt.svg" * fixed.layers[0]["pointRendering"][0].iconBadges[0].then.mappings[0].then // => "https://raw.githubusercontent.com/seppesantens/MapComplete-Themes/main/VerkeerdeBordenDatabank/Something.svg" */ - convert(json: LayoutConfigJson, context: ConversionContext): LayoutConfigJson { + convert(json: ThemeConfigJson, context: ConversionContext): ThemeConfigJson { let url: URL try { url = new URL(json.id) diff --git a/src/Models/ThemeConfig/Conversion/LegacyJsonConvert.ts b/src/Models/ThemeConfig/Conversion/LegacyJsonConvert.ts index 18c78ccf2..b7187a7c8 100644 --- a/src/Models/ThemeConfig/Conversion/LegacyJsonConvert.ts +++ b/src/Models/ThemeConfig/Conversion/LegacyJsonConvert.ts @@ -1,4 +1,4 @@ -import { LayoutConfigJson } from "../Json/LayoutConfigJson" +import { ThemeConfigJson } from "../Json/ThemeConfigJson" import { Utils } from "../../../Utils" import LineRenderingConfigJson from "../Json/LineRenderingConfigJson" import { LayerConfigJson } from "../Json/LayerConfigJson" @@ -257,12 +257,12 @@ export class UpdateLegacyLayer extends DesugaringStep< } } -class UpdateLegacyTheme extends DesugaringStep { +class UpdateLegacyTheme extends DesugaringStep { constructor() { super("Small fixes in the theme config", ["roamingRenderings"], "UpdateLegacyTheme") } - convert(json: LayoutConfigJson, context: ConversionContext): LayoutConfigJson { + convert(json: ThemeConfigJson, context: ConversionContext): ThemeConfigJson { const oldThemeConfig = { ...json } if (oldThemeConfig.socialImage === "") { @@ -311,7 +311,7 @@ class UpdateLegacyTheme extends DesugaringStep { } } -export class FixLegacyTheme extends Fuse { +export class FixLegacyTheme extends Fuse { constructor() { super( "Fixes a legacy theme to the modern JSON format geared to humans. Syntactic sugars are kept (i.e. no tagRenderings are expandend, no dependencies are automatically gathered)", diff --git a/src/Models/ThemeConfig/Conversion/PrepareLayer.ts b/src/Models/ThemeConfig/Conversion/PrepareLayer.ts index 569f02271..5d86d2883 100644 --- a/src/Models/ThemeConfig/Conversion/PrepareLayer.ts +++ b/src/Models/ThemeConfig/Conversion/PrepareLayer.ts @@ -10,7 +10,10 @@ import { SetDefault, } from "./Conversion" import { LayerConfigJson } from "../Json/LayerConfigJson" -import { MinimalTagRenderingConfigJson, TagRenderingConfigJson } from "../Json/TagRenderingConfigJson" +import { + MinimalTagRenderingConfigJson, + TagRenderingConfigJson, +} from "../Json/TagRenderingConfigJson" import { Utils } from "../../../Utils" import RewritableConfigJson from "../Json/RewritableConfigJson" import SpecialVisualizations from "../../../UI/SpecialVisualizations" @@ -30,24 +33,30 @@ import LineRenderingConfigJson from "../Json/LineRenderingConfigJson" import { ConversionContext } from "./ConversionContext" import { ExpandRewrite } from "./ExpandRewrite" import { TagUtils } from "../../../Logic/Tags/TagUtils" - +import { Tag } from "../../../Logic/Tags/Tag" +import { RegexTag } from "../../../Logic/Tags/RegexTag" +import { Or } from "../../../Logic/Tags/Or" class AddFiltersFromTagRenderings extends DesugaringStep { constructor() { - super("Inspects all the tagRenderings. If some tagRenderings have the `filter` attribute set, introduce those filters. This step might introduce shorthand filter names, thus 'ExpandFilter' should be run afterwards. Can be disabled with \"#filter\":\"no-auto\"", ["filter"], "AddFiltersFromTagRenderings") + super( + 'Inspects all the tagRenderings. If some tagRenderings have the `filter` attribute set, introduce those filters. This step might introduce shorthand filter names, thus \'ExpandFilter\' should be run afterwards. Can be disabled with "#filter":"no-auto"', + ["filter"], + "AddFiltersFromTagRenderings" + ) } convert(json: LayerConfigJson, context: ConversionContext): LayerConfigJson { const noAutoFilters = json["#filter"] === "no-auto" - if(noAutoFilters){ + if (noAutoFilters) { return json } - if(json.filter?.["sameAs"]){ + if (json.filter?.["sameAs"]) { return json } - const filters: (FilterConfigJson | string)[] = [...json.filter ?? []] + const filters: (FilterConfigJson | string)[] = [...(json.filter ?? [])] function filterExists(filterName: string): boolean { return filters.some((existing) => { @@ -59,8 +68,6 @@ class AddFiltersFromTagRenderings extends DesugaringStep { }) } - - for (let i = 0; i < json.tagRenderings?.length; i++) { const tagRendering = json.tagRenderings[i] if (!tagRendering?.filter) { @@ -70,7 +77,12 @@ class AddFiltersFromTagRenderings extends DesugaringStep { if (filterExists(tagRendering["id"])) { continue } - filters.push(ExpandFilter.buildFilterFromTagRendering(tagRendering, context.enters("tagRenderings", i, "filter"))) + filters.push( + ExpandFilter.buildFilterFromTagRendering( + tagRendering, + context.enters("tagRenderings", i, "filter") + ) + ) continue } for (const filterName of tagRendering.filter ?? []) { @@ -89,7 +101,7 @@ class AddFiltersFromTagRenderings extends DesugaringStep { } } - if(filters.length === 0){ + if (filters.length === 0) { return json } @@ -102,10 +114,12 @@ class ExpandFilter extends DesugaringStep { constructor(state: DesugaringContext) { super( - ["Expands filters: replaces a shorthand by the value found in 'filters.json'.", - "If the string is formatted 'layername.filtername, it will be looked up into that layer instead."].join(" "), + [ + "Expands filters: replaces a shorthand by the value found in 'filters.json'.", + "If the string is formatted 'layername.filtername, it will be looked up into that layer instead.", + ].join(" "), ["filter"], - "ExpandFilter", + "ExpandFilter" ) this._state = state } @@ -118,25 +132,41 @@ class ExpandFilter extends DesugaringStep { return filters } - public static buildFilterFromTagRendering(tr: TagRenderingConfigJson, context: ConversionContext): FilterConfigJson { + public static buildFilterFromTagRendering( + tr: TagRenderingConfigJson, + context: ConversionContext + ): FilterConfigJson { if (!(tr.mappings?.length >= 1)) { context.err( - "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 options = (tr).mappings.map((mapping) => { + const qtr = tr + const options = qtr.mappings.map((mapping) => { let icon: string = mapping.icon?.["path"] ?? mapping.icon let emoji: string = undefined if (Utils.isEmoji(icon)) { emoji = icon icon = undefined } - return ({ + let osmTags = TagUtils.Tag(mapping.if) + if (qtr.multiAnswer && osmTags instanceof Tag) { + osmTags = new RegexTag( + osmTags.key, + new RegExp("^(.+;)?" + osmTags.value + "(;.+)$", "is") + ) + } + if (mapping.alsoShowIf) { + osmTags = new Or([osmTags, TagUtils.Tag(mapping.alsoShowIf)]) + } + + return { question: mapping.then, - osmTags: mapping.if, + osmTags: osmTags.asJson(), searchTerms: mapping.searchTerms, - icon, emoji, - }) + icon, + emoji, + } }) // Add default option options.unshift({ @@ -144,10 +174,10 @@ class ExpandFilter extends DesugaringStep { osmTags: undefined, searchTerms: undefined, }) - return ({ + return { id: tr["id"], options, - }) + } } convert(json: LayerConfigJson, context: ConversionContext): LayerConfigJson { @@ -159,11 +189,9 @@ class ExpandFilter extends DesugaringStep { return json // Nothing to change here } - const newFilters: FilterConfigJson[] = [] const filters = <(FilterConfigJson | string)[]>json.filter - /** * Create filters based on builtin filters or create them based on the tagRendering */ @@ -181,7 +209,10 @@ class ExpandFilter extends DesugaringStep { json.tagRenderings.find((tr) => !!tr && tr["id"] === filter) ) if (matchingTr) { - const filter = ExpandFilter.buildFilterFromTagRendering(matchingTr, context.enters("filter", i)) + const filter = ExpandFilter.buildFilterFromTagRendering( + matchingTr, + context.enters("filter", i) + ) newFilters.push(filter) continue } @@ -194,7 +225,7 @@ class ExpandFilter extends DesugaringStep { const split = filter.split(".") if (split.length > 2) { context.err( - "invalid filter name: " + filter + ", expected `layername.filterid`", + "invalid filter name: " + filter + ", expected `layername.filterid`" ) } const layer = this._state.sharedLayers.get(split[0]) @@ -203,7 +234,7 @@ class ExpandFilter extends DesugaringStep { } const expectedId = split[1] const expandedFilter = (<(FilterConfigJson | string)[]>layer.filter).find( - (f) => typeof f !== "string" && f.id === expectedId, + (f) => typeof f !== "string" && f.id === expectedId ) if (expandedFilter === undefined) { context.err("Did not find filter with name " + filter) @@ -218,15 +249,15 @@ class ExpandFilter extends DesugaringStep { const suggestions = Utils.sortedByLevenshteinDistance( filter, Array.from(ExpandFilter.predefinedFilters.keys()), - (t) => t, + (t) => t ) context .enter(filter) .err( "While searching for predefined filter " + - filter + - ": this filter is not found. Perhaps you meant one of: " + - suggestions, + filter + + ": this filter is not found. Perhaps you meant one of: " + + suggestions ) } newFilters.push(found) @@ -239,9 +270,9 @@ class ExpandTagRendering extends Conversion< | string | TagRenderingConfigJson | { - builtin: string | string[] - override: any -}, + builtin: string | string[] + override: any + }, TagRenderingConfigJson[] > { private readonly _state: DesugaringContext @@ -263,12 +294,12 @@ class ExpandTagRendering extends Conversion< noHardcodedStrings?: false | boolean // If set, a question will be added to the 'sharedTagRenderings'. Should only be used for 'questions.json' addToContext?: false | boolean - }, + } ) { super( "Converts a tagRenderingSpec into the full tagRendering, e.g. by substituting the tagRendering by the shared-question and reusing the builtins", [], - "ExpandTagRendering", + "ExpandTagRendering" ) this._state = state this._self = self @@ -288,7 +319,7 @@ class ExpandTagRendering extends Conversion< public convert( spec: string | any, - ctx: ConversionContext, + ctx: ConversionContext ): QuestionableTagRenderingConfigJson[] { const trs = this.convertOnce(spec, ctx) @@ -401,8 +432,8 @@ class ExpandTagRendering extends Conversion< found, ConversionContext.construct( [layer.id, "tagRenderings", found["id"]], - ["AddContextToTranslations"], - ), + ["AddContextToTranslations"] + ) ) matchingTrs[i] = found } @@ -430,17 +461,17 @@ class ExpandTagRendering extends Conversion< ctx.warn( `A literal rendering was detected: ${tr} Did you perhaps forgot to add a layer name as 'layername.${tr}'? ` + - Array.from(state.sharedLayers.keys()).join(", "), + Array.from(state.sharedLayers.keys()).join(", ") ) } if (this._options?.noHardcodedStrings && this._state?.sharedLayers?.size > 0) { ctx.err( "Detected an invocation to a builtin tagRendering, but this tagrendering was not found: " + - tr + - " \n Did you perhaps forget to add the layer as prefix, such as `icons." + - tr + - "`? ", + tr + + " \n Did you perhaps forget to add the layer as prefix, such as `icons." + + tr + + "`? " ) } @@ -475,9 +506,9 @@ class ExpandTagRendering extends Conversion< } ctx.err( "An object calling a builtin can only have keys `builtin` or `override`, but a key with name `" + - key + - "` was found. This won't be picked up! The full object is: " + - JSON.stringify(tr), + key + + "` was found. This won't be picked up! The full object is: " + + JSON.stringify(tr) ) } @@ -496,39 +527,39 @@ class ExpandTagRendering extends Conversion< const candidates = Utils.sortedByLevenshteinDistance( layerName, Array.from(state.sharedLayers.keys()), - (s) => s, + (s) => s ) if (state.sharedLayers.size === 0) { ctx.warn( "BOOTSTRAPPING. Rerun generate layeroverview. While reusing tagrendering: " + - name + - ": layer " + - layerName + - " not found for now, but ignoring as this is a bootstrapping run. ", + name + + ": layer " + + layerName + + " not found for now, but ignoring as this is a bootstrapping run. " ) } else { ctx.err( ": While reusing tagrendering: " + - name + - ": layer " + - layerName + - " not found. Maybe you meant one of " + - candidates.slice(0, 3).join(", "), + name + + ": layer " + + layerName + + " not found. Maybe you meant one of " + + candidates.slice(0, 3).join(", ") ) } continue } candidates = Utils.NoNull(layer.tagRenderings.map((tr) => tr["id"])).map( - (id) => layerName + "." + id, + (id) => layerName + "." + id ) } candidates = Utils.sortedByLevenshteinDistance(name, candidates, (i) => i) ctx.err( "The tagRendering with identifier " + - name + - " was not found.\n\tDid you mean one of " + - candidates.join(", ") + - "?\n(Hint: did you add a new label and are you trying to use this label at the same time? Run 'reset:layeroverview' first", + name + + " was not found.\n\tDid you mean one of " + + candidates.join(", ") + + "?\n(Hint: did you add a new label and are you trying to use this label at the same time? Run 'reset:layeroverview' first" ) continue } @@ -553,13 +584,13 @@ class DetectInline extends DesugaringStep { super( "If no 'inline' is set on the freeform key, it will be automatically added. If no special renderings are used, it'll be set to true", ["freeform.inline"], - "DetectInline", + "DetectInline" ) } convert( json: QuestionableTagRenderingConfigJson, - context: ConversionContext, + context: ConversionContext ): QuestionableTagRenderingConfigJson { if (json.freeform === undefined) { return json @@ -582,7 +613,7 @@ class DetectInline extends DesugaringStep { if (json.freeform.inline === true) { context.err( "'inline' is set, but the rendering contains a special visualisation...\n " + - spec[key], + spec[key] ) } json = JSON.parse(JSON.stringify(json)) @@ -596,11 +627,17 @@ class DetectInline extends DesugaringStep { return json } - if(!Object.values(json.render).some(render => render !== "{"+json.freeform.key+"}")){ - // We only render the current value, without anything more. Not worth inlining + if (json.render === undefined) { + context.err("No 'render' defined") return json } + if ( + !Object.values(json?.render)?.some((render) => render !== "{" + json.freeform.key + "}") + ) { + // We only render the current value, without anything more. Not worth inlining + return json + } json.freeform.inline ??= true return json @@ -612,7 +649,7 @@ export class AddQuestionBox extends DesugaringStep { super( "Adds a 'questions'-object if no question element is added yet", ["tagRenderings"], - "AddQuestionBox", + "AddQuestionBox" ) } @@ -636,18 +673,18 @@ export class AddQuestionBox extends DesugaringStep { json.tagRenderings = [...json.tagRenderings] const allSpecials: Exclude[] = ( ValidationUtils.getAllSpecialVisualisations( - json.tagRenderings, + json.tagRenderings ).filter((spec) => typeof spec !== "string") ) const questionSpecials = allSpecials.filter((sp) => sp.func.funcName === "questions") const noLabels = questionSpecials.filter( - (sp) => sp.args.length === 0 || sp.args[0].trim() === "", + (sp) => sp.args.length === 0 || sp.args[0].trim() === "" ) if (noLabels.length > 1) { context.err( - "Multiple 'questions'-visualisations found which would show _all_ questions. Don't do this", + "Multiple 'questions'-visualisations found which would show _all_ questions. Don't do this" ) } @@ -655,9 +692,9 @@ export class AddQuestionBox extends DesugaringStep { const allLabels = new Set( [].concat( ...json.tagRenderings.map( - (tr) => (tr).labels ?? [], - ), - ), + (tr) => (tr).labels ?? [] + ) + ) ) const seen: Set = new Set() for (const questionSpecial of questionSpecials) { @@ -675,20 +712,20 @@ export class AddQuestionBox extends DesugaringStep { if (blacklisted?.length > 0 && used?.length > 0) { context.err( "The {questions()}-special rendering only supports either a blacklist OR a whitelist, but not both." + - "\n Whitelisted: " + - used.join(", ") + - "\n Blacklisted: " + - blacklisted.join(", "), + "\n Whitelisted: " + + used.join(", ") + + "\n Blacklisted: " + + blacklisted.join(", ") ) } for (const usedLabel of used) { if (!allLabels.has(usedLabel)) { context.err( "This layers specifies a special question element for label `" + - usedLabel + - "`, but this label doesn't exist.\n" + - " Available labels are " + - Array.from(allLabels).join(", "), + usedLabel + + "`, but this label doesn't exist.\n" + + " Available labels are " + + Array.from(allLabels).join(", ") ) } seen.add(usedLabel) @@ -721,7 +758,7 @@ export class AddEditingElements extends DesugaringStep { super( "Add some editing elements, such as the delete button or the move button if they are configured. These used to be handled by the feature info box, but this has been replaced by special visualisation elements", [], - "AddEditingElements", + "AddEditingElements" ) this._desugaring = desugaring this.builtinQuestions = Array.from(this._desugaring.tagRenderings?.values() ?? []) @@ -751,13 +788,13 @@ export class AddEditingElements extends DesugaringStep { json.tagRenderings = [...(json.tagRenderings ?? [])] const allIds = new Set(json.tagRenderings.map((tr) => tr["id"])) const specialVisualisations = ValidationUtils.getAllSpecialVisualisations( - json.tagRenderings, + json.tagRenderings ) const usedSpecialFunctions = new Set( specialVisualisations.map((sv) => - typeof sv === "string" ? undefined : sv.func.funcName, - ), + typeof sv === "string" ? undefined : sv.func.funcName + ) ) /***** ADD TO TOP ****/ @@ -825,7 +862,7 @@ export class RewriteSpecial extends DesugaringStep { super( "Converts a 'special' translation into a regular translation which uses parameters", ["special"], - "RewriteSpecial", + "RewriteSpecial" ) } @@ -860,12 +897,12 @@ export class RewriteSpecial extends DesugaringStep { * // should handle special case with a translated parameter * const spec = {"special": {"type":"image_upload", "label": {"en": "Add a picture to this object", "nl": "Voeg een afbeelding toe"}}} * const r = RewriteSpecial.convertIfNeeded(spec, ConversionContext.test()) - * r // => {"en": "{image_upload(,Add a picture to this object)}", "nl": "{image_upload(,Voeg een afbeelding toe)}" } + * r // => {"en": "{image_upload(,Add a picture to this object,)}", "nl": "{image_upload(,Voeg een afbeelding toe,)}" } * * // should handle special case with a prefix and postfix * const spec = {"special": {"type":"image_upload" }, before: {"en": "PREFIX "}, after: {"en": " POSTFIX", nl: " Achtervoegsel"} } * const r = RewriteSpecial.convertIfNeeded(spec, ConversionContext.test()) - * r // => {"en": "PREFIX {image_upload(,)} POSTFIX", "nl": "PREFIX {image_upload(,)} Achtervoegsel" } + * r // => {"en": "PREFIX {image_upload(,,)} POSTFIX", "nl": "PREFIX {image_upload(,,)} Achtervoegsel" } * * // should warn for unexpected keys * const context = ConversionContext.test() @@ -916,12 +953,12 @@ export class RewriteSpecial extends DesugaringStep { private static convertIfNeeded( input: | (object & { - special: { - type: string - } - }) + special: { + type: string + } + }) | any, - context: ConversionContext, + context: ConversionContext ): any { const special = input["special"] if (special === undefined) { @@ -931,7 +968,7 @@ export class RewriteSpecial extends DesugaringStep { const type = special["type"] if (type === undefined) { context.err( - "A 'special'-block should define 'type' to indicate which visualisation should be used", + "A 'special'-block should define 'type' to indicate which visualisation should be used" ) return undefined } @@ -941,10 +978,10 @@ export class RewriteSpecial extends DesugaringStep { const options = Utils.sortedByLevenshteinDistance( type, SpecialVisualizations.specialVisualizations, - (sp) => sp.funcName, + (sp) => sp.funcName ) context.err( - `Special visualisation '${type}' not found. Did you perhaps mean ${options[0].funcName}, ${options[1].funcName} or ${options[2].funcName}?\n\tFor all known special visualisations, please see https://github.com/pietervdvn/MapComplete/blob/develop/Docs/SpecialRenderings.md`, + `Special visualisation '${type}' not found. Did you perhaps mean ${options[0].funcName}, ${options[1].funcName} or ${options[2].funcName}?\n\tFor all known special visualisations, please see https://github.com/pietervdvn/MapComplete/blob/develop/Docs/SpecialRenderings.md` ) return undefined } @@ -965,7 +1002,7 @@ export class RewriteSpecial extends DesugaringStep { const byDistance = Utils.sortedByLevenshteinDistance( wrongArg, argNamesList, - (x) => x, + (x) => x ) return `Unexpected argument in special block at ${context} with name '${wrongArg}'. Did you mean ${ byDistance[0] @@ -984,8 +1021,8 @@ export class RewriteSpecial extends DesugaringStep { `Obligated parameter '${arg.name}' in special rendering of type ${ vis.funcName } not found.\n The full special rendering specification is: '${JSON.stringify( - input, - )}'\n ${arg.name}: ${arg.doc}`, + input + )}'\n ${arg.name}: ${arg.doc}` ) } } @@ -1087,7 +1124,7 @@ export class RewriteSpecial extends DesugaringStep { continue } Utils.WalkPath(path.path, json, (leaf, travelled) => - RewriteSpecial.convertIfNeeded(leaf, context.enter(travelled)), + RewriteSpecial.convertIfNeeded(leaf, context.enter(travelled)) ) } @@ -1121,7 +1158,7 @@ class ExpandIconBadges extends DesugaringStep { } = badgesJson[i] const expanded = this._expand.convert( iconBadge.then, - context.enters("iconBadges", i), + context.enters("iconBadges", i) ) if (expanded === undefined) { iconBadges.push(iconBadge) @@ -1132,7 +1169,7 @@ class ExpandIconBadges extends DesugaringStep { ...expanded.map((resolved) => ({ if: iconBadge.if, then: resolved, - })), + })) ) } @@ -1149,11 +1186,11 @@ class PreparePointRendering extends Fuse { new Each( new On( "icon", - new FirstOf(new ExpandTagRendering(state, layer, { applyCondition: false })), - ), - ), + new FirstOf(new ExpandTagRendering(state, layer, { applyCondition: false })) + ) + ) ), - new ExpandIconBadges(state, layer), + new ExpandIconBadges(state, layer) ) } } @@ -1163,7 +1200,7 @@ class SetFullNodeDatabase extends DesugaringStep { super( "sets the fullNodeDatabase-bit if needed", ["fullNodeDatabase"], - "SetFullNodeDatabase", + "SetFullNodeDatabase" ) } @@ -1192,7 +1229,7 @@ class ExpandMarkerRenderings extends DesugaringStep { super( "Expands tagRenderings in the icons, if needed", ["icon", "color"], - "ExpandMarkerRenderings", + "ExpandMarkerRenderings" ) this._layer = layer this._state = state @@ -1224,7 +1261,7 @@ class AddFavouriteBadges extends DesugaringStep { super( "Adds the favourite heart to the title and the rendering badges", [], - "AddFavouriteBadges", + "AddFavouriteBadges" ) } @@ -1249,7 +1286,7 @@ export class AddRatingBadge extends DesugaringStep { super( "Adds the 'rating'-element if a reviews-element is used in the tagRenderings", ["titleIcons"], - "AddRatingBadge", + "AddRatingBadge" ) } @@ -1268,8 +1305,8 @@ export class AddRatingBadge extends DesugaringStep { const specialVis: Exclude[] = < Exclude[] - >ValidationUtils.getAllSpecialVisualisations(json.tagRenderings).filter( - (rs) => typeof rs !== "string", + >ValidationUtils.getAllSpecialVisualisations(json.tagRenderings).filter( + (rs) => typeof rs !== "string" ) const funcs = new Set(specialVis.map((rs) => rs.func.funcName)) @@ -1285,12 +1322,12 @@ export class AutoTitleIcon extends DesugaringStep { super( "The auto-icon creates a (non-clickable) title icon based on a tagRendering which has icons", ["titleIcons"], - "AutoTitleIcon", + "AutoTitleIcon" ) } private createTitleIconsBasedOn( - tr: QuestionableTagRenderingConfigJson, + tr: QuestionableTagRenderingConfigJson ): TagRenderingConfigJson | undefined { const mappings: { if: TagConfigJson; then: string }[] = tr.mappings ?.filter((m) => m.icon !== undefined) @@ -1320,7 +1357,7 @@ export class AutoTitleIcon extends DesugaringStep { return undefined } return this.createTitleIconsBasedOn(tr) - }), + }) ) json.titleIcons.splice(allAutoIndex, 1, ...generated) return json @@ -1349,8 +1386,8 @@ export class AutoTitleIcon extends DesugaringStep { .enters("titleIcons", i) .warn( "TagRendering with id " + - trId + - " does not have any icons, not generating an icon for this", + trId + + " does not have any icons, not generating an icon for this" ) continue } @@ -1365,7 +1402,7 @@ class DeriveSource extends DesugaringStep { super( "If no source is given, automatically derives the osmTags by 'or'-ing all the preset tags", ["source"], - "DeriveSource", + "DeriveSource" ) } @@ -1375,7 +1412,7 @@ class DeriveSource extends DesugaringStep { } if (!json.presets) { context.err( - "No source tags given. Trying to derive the source-tags based on the presets, but no presets are given", + "No source tags given. Trying to derive the source-tags based on the presets, but no presets are given" ) return json } @@ -1401,7 +1438,7 @@ class DeriveSource extends DesugaringStep { export class PrepareLayer extends Fuse { constructor( state: DesugaringContext, - options?: { addTagRenderingsToContext?: false | boolean }, + options?: { addTagRenderingsToContext?: false | boolean } ) { super( "Fully prepares and expands a layer for the LayerConfig.", @@ -1414,8 +1451,8 @@ export class PrepareLayer extends Fuse { new Concat( new ExpandTagRendering(state, layer, { addToContext: options?.addTagRenderingsToContext ?? false, - }), - ), + }) + ) ), new On("tagRenderings", new Each(new DetectInline())), new AddQuestionBox(), @@ -1428,11 +1465,11 @@ export class PrepareLayer extends Fuse { new On( "pointRendering", (layer) => - new Each(new On("marker", new Each(new ExpandMarkerRenderings(state, layer)))), + new Each(new On("marker", new Each(new ExpandMarkerRenderings(state, layer)))) ), new On( "pointRendering", - (layer) => new Each(new PreparePointRendering(state, layer)), + (layer) => new Each(new PreparePointRendering(state, layer)) ), new SetDefault("titleIcons", ["icons.defaults"]), new AddRatingBadge(), @@ -1441,10 +1478,10 @@ export class PrepareLayer extends Fuse { new On( "titleIcons", (layer) => - new Concat(new ExpandTagRendering(state, layer, { noHardcodedStrings: true })), + new Concat(new ExpandTagRendering(state, layer, { noHardcodedStrings: true })) ), new AddFiltersFromTagRenderings(), - new ExpandFilter(state), + new ExpandFilter(state) ) } } diff --git a/src/Models/ThemeConfig/Conversion/PrepareTheme.ts b/src/Models/ThemeConfig/Conversion/PrepareTheme.ts index 3ff4268c5..f1081cbd6 100644 --- a/src/Models/ThemeConfig/Conversion/PrepareTheme.ts +++ b/src/Models/ThemeConfig/Conversion/PrepareTheme.ts @@ -9,19 +9,17 @@ import { Pass, SetDefault, } from "./Conversion" -import { LayoutConfigJson } from "../Json/LayoutConfigJson" +import { ThemeConfigJson } from "../Json/ThemeConfigJson" import { PrepareLayer } from "./PrepareLayer" import { LayerConfigJson } from "../Json/LayerConfigJson" import { Utils } from "../../../Utils" import Constants from "../../Constants" -import CreateNoteImportLayer from "./CreateNoteImportLayer" import LayerConfig from "../LayerConfig" import { TagRenderingConfigJson } from "../Json/TagRenderingConfigJson" import DependencyCalculator from "../DependencyCalculator" import { AddContextToTranslations } from "./AddContextToTranslations" import ValidationUtils from "./ValidationUtils" import { ConversionContext } from "./ConversionContext" -import { PrevalidateTheme } from "./Validation" class SubstituteLayer extends Conversion { private readonly _state: DesugaringContext @@ -30,7 +28,7 @@ class SubstituteLayer extends Conversion [ + const withDistance: [string, number][] = knownLayers.map((lname) => [ lname, Utils.levenshteinDistance(name, lname), ]) @@ -86,14 +84,14 @@ class SubstituteLayer extends Conversion 0 ) { context.err( - `When overriding a layer, an override is not allowed to override into tagRenderings. Use "+tagRenderings" or "tagRenderings+" instead to prepend or append some questions.`, + `When overriding a layer, an override is not allowed to override into tagRenderings. Use "+tagRenderings" or "tagRenderings+" instead to prepend or append some questions.` ) } try { const trPlus = json["override"]["tagRenderings+"] if (trPlus) { let index = found.tagRenderings.findIndex( - (tr) => tr["id"] === "leftover-questions", + (tr) => tr["id"] === "leftover-questions" ) if (index < 0) { index = found.tagRenderings.length @@ -107,8 +105,8 @@ class SubstituteLayer extends Conversion 0) { context.err( "This theme specifies that certain tagrenderings have to be removed based on forbidden layers. One or more of these layers did not match any tagRenderings and caused no deletions: " + - unused.join(", ") + - "\n This means that this label can be removed or that the original tagRendering that should be deleted does not have this label anymore", + unused.join(", ") + + "\n This means that this label can be removed or that the original tagRendering that should be deleted does not have this label anymore" ) } found.tagRenderings = filtered @@ -177,19 +175,19 @@ class SubstituteLayer extends Conversion { +class AddDefaultLayers extends DesugaringStep { private readonly _state: DesugaringContext constructor(state: DesugaringContext) { super( "Adds the default layers, namely: " + Constants.added_by_default.join(", "), ["layers"], - "AddDefaultLayers", + "AddDefaultLayers" ) this._state = state } - convert(json: LayoutConfigJson, context: ConversionContext): LayoutConfigJson { + convert(json: ThemeConfigJson, context: ConversionContext): ThemeConfigJson { const state = this._state json.layers = Utils.NoNull([...(json.layers ?? [])]) const alreadyLoaded = new Set(json.layers.map((l) => l["id"])) @@ -207,10 +205,10 @@ class AddDefaultLayers extends DesugaringStep { if (alreadyLoaded.has(v.id)) { context.warn( "Layout " + - context + - " already has a layer with name " + - v.id + - "; skipping inclusion of this builtin layer", + context + + " already has a layer with name " + + v.id + + "; skipping inclusion of this builtin layer" ) continue } @@ -221,97 +219,35 @@ class AddDefaultLayers extends DesugaringStep { } } -class AddImportLayers extends DesugaringStep { - constructor() { - super( - "For every layer in the 'layers'-list, create a new layer which'll import notes. (Note that priviliged layers and layers which have a geojson-source set are ignored)", - ["layers"], - "AddImportLayers", - ) - } - - convert(json: LayoutConfigJson, context: ConversionContext): LayoutConfigJson { - if (!(json.enableNoteImports ?? true)) { - context.info( - "Not creating a note import layers for theme " + json.id + " as they are disabled", - ) - return json - } - - json = { ...json } - const allLayers: LayerConfigJson[] = json.layers - json.layers = [...json.layers] - - const creator = new CreateNoteImportLayer() - for (let i1 = 0; i1 < allLayers.length; i1++) { - const layer = allLayers[i1] - if (layer.source === undefined) { - // Priviliged layers are skipped - continue - } - - if (layer.source["geoJson"] !== undefined) { - // Layer which don't get their data from OSM are skipped - continue - } - - if (layer.title === undefined || layer.name === undefined) { - // Anonymous layers and layers without popup are skipped - continue - } - - if (layer.presets === undefined || layer.presets.length == 0) { - // A preset is needed to be able to generate a new point - continue - } - - try { - const importLayerResult = creator.convert( - layer, - context.inOperation(this.name).enter(i1), - ) - if (importLayerResult !== undefined) { - json.layers.push(importLayerResult) - } - } catch (e) { - console.error("Error", e) - context.err("Could not generate an import-layer for " + layer.id + " due to " + e) - } - } - - return json - } -} - -class AddContextToTranslationsInLayout extends DesugaringStep { +class AddContextToTranslationsInLayout extends DesugaringStep { constructor() { super( "Adds context to translations, including the prefix 'themes:json.id'; this is to make sure terms in an 'overrides' or inline layer are linkable too", ["_context"], - "AddContextToTranlationsInLayout", + "AddContextToTranlationsInLayout" ) } - convert(json: LayoutConfigJson): LayoutConfigJson { - const conversion = new AddContextToTranslations("themes:") + convert(json: ThemeConfigJson): ThemeConfigJson { + const conversion = new AddContextToTranslations("themes:") // The context is used to generate the 'context' in the translation .It _must_ be `json.id` to correctly link into weblate return conversion.convert( json, - ConversionContext.construct([json.id], ["AddContextToTranslation"]), + ConversionContext.construct([json.id], ["AddContextToTranslation"]) ) } } -class ApplyOverrideAll extends DesugaringStep { +class ApplyOverrideAll extends DesugaringStep { constructor() { super( "Applies 'overrideAll' onto every 'layer'. The 'overrideAll'-field is removed afterwards", ["overrideAll", "layers"], - "ApplyOverrideAll", + "ApplyOverrideAll" ) } - convert(json: LayoutConfigJson, ctx: ConversionContext): LayoutConfigJson { + convert(json: ThemeConfigJson, ctx: ConversionContext): ThemeConfigJson { const overrideAll = json.overrideAll if (overrideAll === undefined) { return json @@ -336,7 +272,7 @@ class ApplyOverrideAll extends DesugaringStep { layer.tagRenderings = tagRenderingsPlus } else { let index = layer.tagRenderings.findIndex( - (tr) => tr["id"] === "leftover-questions", + (tr) => tr["id"] === "leftover-questions" ) if (index < 0) { index = layer.tagRenderings.length - 1 @@ -352,14 +288,14 @@ class ApplyOverrideAll extends DesugaringStep { } } -class AddDependencyLayersToTheme extends DesugaringStep { +class AddDependencyLayersToTheme extends DesugaringStep { private readonly _state: DesugaringContext constructor(state: DesugaringContext) { super( `If a layer has a dependency on another layer, these layers are added automatically on the theme. (For example: defibrillator depends on 'walls_and_buildings' to snap onto. This layer is added automatically)`, ["layers"], - "AddDependencyLayersToTheme", + "AddDependencyLayersToTheme" ) this._state = state } @@ -368,7 +304,7 @@ class AddDependencyLayersToTheme extends DesugaringStep { alreadyLoaded: LayerConfigJson[], allKnownLayers: Map, themeId: string, - context: ConversionContext, + context: ConversionContext ): { config: LayerConfigJson; reason: string }[] { const dependenciesToAdd: { config: LayerConfigJson; reason: string }[] = [] const loadedLayerIds: Set = new Set(alreadyLoaded.map((l) => l?.id)) @@ -392,7 +328,7 @@ class AddDependencyLayersToTheme extends DesugaringStep { for (const layerConfig of alreadyLoaded) { try { const layerDeps = DependencyCalculator.getLayerDependencies( - new LayerConfig(layerConfig, themeId + "(dependencies)"), + new LayerConfig(layerConfig, themeId + "(dependencies)") ) dependencies.push(...layerDeps) } catch (e) { @@ -411,8 +347,16 @@ class AddDependencyLayersToTheme extends DesugaringStep { // We mark the needed layer as 'mustLoad' const loadedLayer = alreadyLoaded.find((l) => l.id === dependency.neededLayer) loadedLayer.forceLoad = true - if(dependency.checkHasSnapName && !loadedLayer.snapName){ - context.enters("layer dependency").err("Layer "+dependency.neededLayer+" is loaded because "+dependency.reason+"; so it must specify a `snapName`. This is used in the sentence `move this point to snap it to {snapName}`") + if (dependency.checkHasSnapName && !loadedLayer.snapName) { + context + .enters("layer dependency") + .err( + "Layer " + + dependency.neededLayer + + " is loaded because " + + dependency.reason + + "; so it must specify a `snapName`. This is used in the sentence `move this point to snap it to {snapName}`" + ) } } } @@ -436,10 +380,10 @@ class AddDependencyLayersToTheme extends DesugaringStep { if (dep === undefined) { const message = [ "Loading a dependency failed: layer " + - unmetDependency.neededLayer + - " is not found, neither as layer of " + - themeId + - " nor as builtin layer.", + unmetDependency.neededLayer + + " is not found, neither as layer of " + + themeId + + " nor as builtin layer.", reason, "Loaded layers are: " + alreadyLoaded.map((l) => l.id).join(","), ] @@ -455,16 +399,15 @@ class AddDependencyLayersToTheme extends DesugaringStep { }) loadedLayerIds.add(dep.id) unmetDependencies = unmetDependencies.filter( - (d) => d.neededLayer !== unmetDependency.neededLayer, + (d) => d.neededLayer !== unmetDependency.neededLayer ) } } while (unmetDependencies.length > 0) - return dependenciesToAdd } - convert(theme: LayoutConfigJson, context: ConversionContext): LayoutConfigJson { + convert(theme: ThemeConfigJson, context: ConversionContext): ThemeConfigJson { const state = this._state const allKnownLayers: Map = state.sharedLayers const knownTagRenderings: Map = state.tagRenderings @@ -478,12 +421,12 @@ class AddDependencyLayersToTheme extends DesugaringStep { layers, allKnownLayers, theme.id, - context, + context ) if (dependencies.length > 0) { for (const dependency of dependencies) { context.info( - "Added " + dependency.config.id + " to the theme. " + dependency.reason, + "Added " + dependency.config.id + " to the theme. " + dependency.reason ) } } @@ -502,7 +445,7 @@ class AddDependencyLayersToTheme extends DesugaringStep { } } -class PreparePersonalTheme extends DesugaringStep { +class PreparePersonalTheme extends DesugaringStep { private readonly _state: DesugaringContext constructor(state: DesugaringContext) { @@ -510,7 +453,7 @@ class PreparePersonalTheme extends DesugaringStep { this._state = state } - convert(json: LayoutConfigJson, context: ConversionContext): LayoutConfigJson { + convert(json: ThemeConfigJson, context: ConversionContext): ThemeConfigJson { if (json.id !== "personal") { return json } @@ -526,16 +469,16 @@ class PreparePersonalTheme extends DesugaringStep { } } -class WarnForUnsubstitutedLayersInTheme extends DesugaringStep { +class WarnForUnsubstitutedLayersInTheme extends DesugaringStep { constructor() { super( "Generates a warning if a theme uses an unsubstituted layer", ["layers"], - "WarnForUnsubstitutedLayersInTheme", + "WarnForUnsubstitutedLayersInTheme" ) } - convert(json: LayoutConfigJson, context: ConversionContext): LayoutConfigJson { + convert(json: ThemeConfigJson, context: ConversionContext): ThemeConfigJson { if (json.hideFromOverview === true) { return json } @@ -543,7 +486,7 @@ class WarnForUnsubstitutedLayersInTheme extends DesugaringStep context .enter("layers") .err( - "No layers are defined. You must define at least one layer to have a valid theme", + "No layers are defined. You must define at least one layer to have a valid theme" ) return json } @@ -567,17 +510,17 @@ class WarnForUnsubstitutedLayersInTheme extends DesugaringStep context.warn( "The theme " + - json.id + - " has an inline layer: " + - layer["id"] + - ". This is discouraged.", + json.id + + " has an inline layer: " + + layer["id"] + + ". This is discouraged." ) } return json } } -class PostvalidateTheme extends DesugaringStep { +class PostvalidateTheme extends DesugaringStep { private readonly _state: DesugaringContext constructor(state: DesugaringContext) { @@ -585,11 +528,10 @@ class PostvalidateTheme extends DesugaringStep { this._state = state } - convert(json: LayoutConfigJson, context: ConversionContext): LayoutConfigJson { + convert(json: ThemeConfigJson, context: ConversionContext): ThemeConfigJson { for (const l of json.layers) { const layer = l const basedOn = layer["_basedOn"] - const basedOnDef = this._state.sharedLayers.get(basedOn) if (!basedOn) { continue } @@ -598,13 +540,13 @@ class PostvalidateTheme extends DesugaringStep { } const sameBasedOn = ( json.layers.filter( - (l) => l["_basedOn"] === layer["_basedOn"] && l["id"] !== layer.id, + (l) => l["_basedOn"] === layer["_basedOn"] && l["id"] !== layer.id ) ) const minZoomAll = Math.min(...sameBasedOn.map((sbo) => sbo.minzoom)) const sameNameDetected = sameBasedOn.some( - (same) => JSON.stringify(layer["name"]) === JSON.stringify(same["name"]), + (same) => JSON.stringify(layer["name"]) === JSON.stringify(same["name"]) ) if (!sameNameDetected) { // The name is unique, so it'll won't be confusing @@ -613,12 +555,12 @@ class PostvalidateTheme extends DesugaringStep { if (minZoomAll < layer.minzoom) { context.err( "There are multiple layers based on " + - basedOn + - ". The layer with id " + - layer.id + - " has a minzoom of " + - layer.minzoom + - ", and has a name set. Another similar layer has a lower minzoom. As such, the layer selection might show 'zoom in to see features' even though some of the features are already visible. Set `\"name\": null` for this layer and eventually remove the 'name':null for the other layer.", + basedOn + + ". The layer with id " + + layer.id + + " has a minzoom of " + + layer.minzoom + + ", and has a name set. Another similar layer has a lower minzoom. As such, the layer selection might show 'zoom in to see features' even though some of the features are already visible. Set `\"name\": null` for this layer and eventually remove the 'name':null for the other layer." ) } } @@ -638,17 +580,17 @@ class PostvalidateTheme extends DesugaringStep { const closeLayers = Utils.sortedByLevenshteinDistance( sameAs, json.layers, - (l) => l["id"], + (l) => l["id"] ).map((l) => l["id"]) context .enters("layers", config.id, "filter", "sameAs") .err( "The layer " + - config.id + - " follows the filter state of layer " + - sameAs + - ", but no layer with this name was found.\n\tDid you perhaps mean one of: " + - closeLayers.slice(0, 3).join(", "), + config.id + + " follows the filter state of layer " + + sameAs + + ", but no layer with this name was found.\n\tDid you perhaps mean one of: " + + closeLayers.slice(0, 3).join(", ") ) } } @@ -657,14 +599,14 @@ class PostvalidateTheme extends DesugaringStep { } } -export class PrepareTheme extends Fuse { +export class PrepareTheme extends Fuse { private state: DesugaringContext constructor( state: DesugaringContext, options?: { skipDefaultLayers: false | boolean - }, + } ) { super( "Fully prepares and expands a theme", @@ -685,13 +627,13 @@ export class PrepareTheme extends Fuse { ? new Pass("AddDefaultLayers is disabled due to the set flag") : new AddDefaultLayers(state), new AddDependencyLayersToTheme(state), - new AddImportLayers(), - new PostvalidateTheme(state), + // new AddImportLayers(), + new PostvalidateTheme(state) ) this.state = state } - convert(json: LayoutConfigJson, context: ConversionContext): LayoutConfigJson { + convert(json: ThemeConfigJson, context: ConversionContext): ThemeConfigJson { const result = super.convert(json, context) if ((this.state.publicLayers?.size ?? 0) === 0) { // THis is a bootstrapping run, no need to already set this flag @@ -701,13 +643,13 @@ export class PrepareTheme extends Fuse { const needsNodeDatabase = result.layers?.some((l: LayerConfigJson) => l.tagRenderings?.some((tr) => ValidationUtils.getSpecialVisualisations(tr)?.some( - (special) => special.needsNodeDatabase, - ), - ), + (special) => special.needsNodeDatabase + ) + ) ) if (needsNodeDatabase) { context.info( - "Setting 'enableNodeDatabase' as this theme uses a special visualisation which needs to keep track of _all_ nodes", + "Setting 'enableNodeDatabase' as this theme uses a special visualisation which needs to keep track of _all_ nodes" ) result.enableNodeDatabase = true } diff --git a/src/Models/ThemeConfig/Conversion/PrevalidateLayer.ts b/src/Models/ThemeConfig/Conversion/PrevalidateLayer.ts index 76b17fdf9..ca5245cf9 100644 --- a/src/Models/ThemeConfig/Conversion/PrevalidateLayer.ts +++ b/src/Models/ThemeConfig/Conversion/PrevalidateLayer.ts @@ -69,7 +69,7 @@ export class PrevalidateLayer extends DesugaringStep { context .enters("source", "osmTags") .err( - "The source states tags which give a very wide selection: it only uses negative expressions, which will result in too much and unexpected data. Add at least one required tag. The tags are:\n\t" + + "The tags that will be used to load data from OpenStreetMap are all negative - this means that they all match something that _doesn't_ have a certain tag. For example, `key=` means anything without `key`. Did you perhaps mean to use `key~*`, meaning anything _with_ this key set? The tags are:\n\t" + osmTags.asHumanString(false, false, {}) ) } @@ -88,7 +88,7 @@ export class PrevalidateLayer extends DesugaringStep { } } - if(json["doCount"] !== undefined){ + if (json["doCount"] !== undefined) { context.err("Detected 'doCount'. did you mean: isCounted ?") } @@ -145,7 +145,11 @@ export class PrevalidateLayer extends DesugaringStep { } } - if(this._isBuiltin && json.allowMove === undefined && json.source["geoJson"] === undefined) { + if ( + this._isBuiltin && + json.allowMove === undefined && + json.source["geoJson"] === undefined + ) { if (!Constants.priviliged_layers.find((x) => x == json.id)) { context.err("Layer " + json.id + " does not have an explicit 'allowMove'") } diff --git a/src/Models/ThemeConfig/Conversion/ValidateTheme.ts b/src/Models/ThemeConfig/Conversion/ValidateTheme.ts index d5aee78bb..dc89de029 100644 --- a/src/Models/ThemeConfig/Conversion/ValidateTheme.ts +++ b/src/Models/ThemeConfig/Conversion/ValidateTheme.ts @@ -1,13 +1,13 @@ import { DesugaringStep } from "./Conversion" -import { LayoutConfigJson } from "../Json/LayoutConfigJson" +import { ThemeConfigJson } from "../Json/ThemeConfigJson" import { AvailableRasterLayers } from "../../RasterLayers" import { ExtractImages } from "./FixImages" import { ConversionContext } from "./ConversionContext" -import LayoutConfig from "../LayoutConfig" +import ThemeConfig from "../ThemeConfig" import { Utils } from "../../../Utils" import { DetectDuplicatePresets, DoesImageExist, ValidateLanguageCompleteness } from "./Validation" -export class ValidateTheme extends DesugaringStep { +export class ValidateTheme extends DesugaringStep { /** * The paths where this layer is originally saved. Triggers some extra checks * @private @@ -33,8 +33,8 @@ export class ValidateTheme extends DesugaringStep { } } - convert(json: LayoutConfigJson, context: ConversionContext): LayoutConfigJson { - const theme = new LayoutConfig(json, this._isBuiltin) + convert(json: ThemeConfigJson, context: ConversionContext): ThemeConfigJson { + const theme = new ThemeConfig(json, this._isBuiltin) { // Legacy format checks if (this._isBuiltin) { diff --git a/src/Models/ThemeConfig/Conversion/ValidateThemeAndLayers.ts b/src/Models/ThemeConfig/Conversion/ValidateThemeAndLayers.ts index 556f3f37d..52b504d02 100644 --- a/src/Models/ThemeConfig/Conversion/ValidateThemeAndLayers.ts +++ b/src/Models/ThemeConfig/Conversion/ValidateThemeAndLayers.ts @@ -1,10 +1,10 @@ import { Bypass, Each, Fuse, On } from "./Conversion" -import { LayoutConfigJson } from "../Json/LayoutConfigJson" +import { ThemeConfigJson } from "../Json/ThemeConfigJson" import Constants from "../../Constants" import { DoesImageExist, ValidateLayerConfig } from "./Validation" import { ValidateTheme } from "./ValidateTheme" -export class ValidateThemeAndLayers extends Fuse { +export class ValidateThemeAndLayers extends Fuse { constructor( doesImageExist: DoesImageExist, path: string, diff --git a/src/Models/ThemeConfig/Conversion/Validation.ts b/src/Models/ThemeConfig/Conversion/Validation.ts index 84f0463d4..7aa1a5e06 100644 --- a/src/Models/ThemeConfig/Conversion/Validation.ts +++ b/src/Models/ThemeConfig/Conversion/Validation.ts @@ -4,8 +4,8 @@ import LayerConfig from "../LayerConfig" import { Utils } from "../../../Utils" import Constants from "../../Constants" import { Translation } from "../../../UI/i18n/Translation" -import { LayoutConfigJson } from "../Json/LayoutConfigJson" -import LayoutConfig from "../LayoutConfig" +import { ThemeConfigJson } from "../Json/ThemeConfigJson" +import ThemeConfig from "../ThemeConfig" import { TagRenderingConfigJson } from "../Json/TagRenderingConfigJson" import { TagUtils } from "../../../Logic/Tags/TagUtils" import { And } from "../../../Logic/Tags/And" @@ -20,8 +20,10 @@ import { Translatable } from "../Json/Translatable" import { ConversionContext } from "./ConversionContext" import PointRenderingConfigJson from "../Json/PointRenderingConfigJson" import { PrevalidateLayer } from "./PrevalidateLayer" +import { AvailableRasterLayers } from "../../RasterLayers" +import { eliCategory } from "../../RasterLayerProperties" -export class ValidateLanguageCompleteness extends DesugaringStep { +export class ValidateLanguageCompleteness extends DesugaringStep { private readonly _languages: string[] constructor(...languages: string[]) { @@ -33,7 +35,7 @@ export class ValidateLanguageCompleteness extends DesugaringStep { this._languages = languages ?? ["en"] } - convert(obj: LayoutConfig, context: ConversionContext): LayoutConfig { + convert(obj: ThemeConfig, context: ConversionContext): ThemeConfig { const origLayers = obj.layers obj.layers = [...obj.layers].filter((l) => l["id"] !== "favourite") const translations = Translation.ExtractAllTranslationsFrom(obj) @@ -103,7 +105,7 @@ export class DoesImageExist extends DesugaringStep { return image } - if(Utils.isEmoji(image)){ + if (Utils.isEmoji(image)) { return image } @@ -126,7 +128,7 @@ export class DoesImageExist extends DesugaringStep { } } -class OverrideShadowingCheck extends DesugaringStep { +class OverrideShadowingCheck extends DesugaringStep { constructor() { super( "Checks that an 'overrideAll' does not override a single override", @@ -135,7 +137,7 @@ class OverrideShadowingCheck extends DesugaringStep { ) } - convert(json: LayoutConfigJson, context: ConversionContext): LayoutConfigJson { + convert(json: ThemeConfigJson, context: ConversionContext): ThemeConfigJson { const overrideAll = json.overrideAll if (overrideAll === undefined) { return json @@ -168,12 +170,12 @@ class OverrideShadowingCheck extends DesugaringStep { } } -class MiscThemeChecks extends DesugaringStep { +class MiscThemeChecks extends DesugaringStep { constructor() { super("Miscelleanous checks on the theme", [], "MiscThemesChecks") } - convert(json: LayoutConfigJson, context: ConversionContext): LayoutConfigJson { + convert(json: ThemeConfigJson, context: ConversionContext): ThemeConfigJson { if (json.id !== "personal" && (json.layers === undefined || json.layers.length === 0)) { context.err("The theme " + json.id + " has no 'layers' defined") } @@ -218,11 +220,41 @@ class MiscThemeChecks extends DesugaringStep { "'overrideAll' is spelled with _two_ `r`s. You only wrote a single one of them." ) } + + if ( + json.defaultBackgroundId && + ![AvailableRasterLayers.osmCartoProperties.id, ...eliCategory].find( + (l) => l === json.defaultBackgroundId + ) + ) { + const background = json.defaultBackgroundId + const match = AvailableRasterLayers.globalLayers.find( + (l) => l.properties.id === background + ) + if (!match) { + const suggestions = Utils.sortedByLevenshteinDistance( + background, + AvailableRasterLayers.globalLayers, + (l) => l.properties.id + ) + context.enter("defaultBackgroundId").warn( + "The default background layer with id", + background, + "does not exist or is not a global layer. Perhaps you meant one of:", + suggestions + .slice(0, 5) + .map((l) => l.properties.id) + .join(", "), + "If you want to use a certain category of background image, use", + AvailableRasterLayers.globalLayers.join(", ") + ) + } + } return json } } -export class PrevalidateTheme extends Fuse { +export class PrevalidateTheme extends Fuse { constructor() { super( "Various consistency checks on the raw JSON", @@ -887,7 +919,7 @@ export class ValidateFilter extends DesugaringStep { export class DetectDuplicateFilters extends DesugaringStep<{ layers: LayerConfigJson[] - themes: LayoutConfigJson[] + themes: ThemeConfigJson[] }> { constructor() { super( @@ -898,15 +930,15 @@ export class DetectDuplicateFilters extends DesugaringStep<{ } convert( - json: { layers: LayerConfigJson[]; themes: LayoutConfigJson[] }, + json: { layers: LayerConfigJson[]; themes: ThemeConfigJson[] }, context: ConversionContext - ): { layers: LayerConfigJson[]; themes: LayoutConfigJson[] } { + ): { layers: LayerConfigJson[]; themes: ThemeConfigJson[] } { const { layers, themes } = json const perOsmTag = new Map< string, { layer: LayerConfigJson - layout: LayoutConfigJson | undefined + theme: ThemeConfigJson | undefined filter: FilterConfigJson }[] >() @@ -937,10 +969,10 @@ export class DetectDuplicateFilters extends DesugaringStep<{ return } let msg = "Possible duplicate filter: " + key - for (const { filter, layer, layout } of value) { + for (const { filter, layer, theme } of value) { let id = "" - if (layout !== undefined) { - id = layout.id + ":" + if (theme !== undefined) { + id = theme.id + ":" } msg += `\n - ${id}${layer.id}.${filter.id}` } @@ -959,11 +991,11 @@ export class DetectDuplicateFilters extends DesugaringStep<{ string, { layer: LayerConfigJson - layout: LayoutConfigJson | undefined + theme: ThemeConfigJson | undefined filter: FilterConfigJson }[] >, - layout?: LayoutConfigJson | undefined + theme?: ThemeConfigJson | undefined ): void { if (layer.filter === undefined || layer.filter === null) { return @@ -991,14 +1023,14 @@ export class DetectDuplicateFilters extends DesugaringStep<{ perOsmTag.get(key).push({ layer, filter, - layout, + theme, }) } } } } -export class DetectDuplicatePresets extends DesugaringStep { +export class DetectDuplicatePresets extends DesugaringStep { constructor() { super( "Detects mappings which have identical (english) names or identical mappings.", @@ -1007,7 +1039,7 @@ export class DetectDuplicatePresets extends DesugaringStep { ) } - convert(json: LayoutConfig, context: ConversionContext): LayoutConfig { + convert(json: ThemeConfig, context: ConversionContext): ThemeConfig { const presets: PresetConfig[] = [].concat(...json.layers.map((l) => l.presets)) const enNames = presets.map((p) => p.title.textFor("en")) @@ -1056,7 +1088,7 @@ export class DetectDuplicatePresets extends DesugaringStep { } export class ValidateThemeEnsemble extends Conversion< - LayoutConfig[], + ThemeConfig[], Map< string, { @@ -1075,7 +1107,7 @@ export class ValidateThemeEnsemble extends Conversion< } convert( - json: LayoutConfig[], + json: ThemeConfig[], context: ConversionContext ): Map< string, diff --git a/src/Models/ThemeConfig/DeleteConfig.ts b/src/Models/ThemeConfig/DeleteConfig.ts index 4abcdfa16..0b5e32512 100644 --- a/src/Models/ThemeConfig/DeleteConfig.ts +++ b/src/Models/ThemeConfig/DeleteConfig.ts @@ -64,8 +64,7 @@ export default class DeleteConfig { for (const defaultDeleteReason of deleteReasons) { this.deleteReasons.push({ changesetMessage: defaultDeleteReason.changesetMessage, - explanation: - defaultDeleteReason.explanation.Clone(/*Must clone, hides translation otherwise*/), + explanation: defaultDeleteReason.explanation, }) } } diff --git a/src/Models/ThemeConfig/DependencyCalculator.ts b/src/Models/ThemeConfig/DependencyCalculator.ts index 66fa129f5..868a75e62 100644 --- a/src/Models/ThemeConfig/DependencyCalculator.ts +++ b/src/Models/ThemeConfig/DependencyCalculator.ts @@ -31,11 +31,20 @@ export default class DependencyCalculator { * Returns a set of all other layer-ids that this layer needs to function. * E.g. if this layers does snap to another layer in the preset, this other layer id will be mentioned */ - public static getLayerDependencies( - layer: LayerConfig - ): { neededLayer: string; reason: string; context?: string; neededBy: string, checkHasSnapName: boolean }[] { - const deps: { neededLayer: string; reason: string; context?: string; neededBy: string, checkHasSnapName: boolean }[] = - [] + public static getLayerDependencies(layer: LayerConfig): { + neededLayer: string + reason: string + context?: string + neededBy: string + checkHasSnapName: boolean + }[] { + const deps: { + neededLayer: string + reason: string + context?: string + neededBy: string + checkHasSnapName: boolean + }[] = [] for (let i = 0; layer.presets !== undefined && i < layer.presets.length; i++) { const preset = layer.presets[i] @@ -51,7 +60,7 @@ export default class DependencyCalculator { reason: `preset \`${preset.title.textFor("en")}\` snaps to this layer`, context: `${layer.id}.presets[${i}]`, neededBy: layer.id, - checkHasSnapName: true + checkHasSnapName: true, }) }) } @@ -63,7 +72,7 @@ export default class DependencyCalculator { reason: "a tagrendering needs this layer", context: tr.id, neededBy: layer.id, - checkHasSnapName: false + checkHasSnapName: false, }) } } @@ -99,7 +108,7 @@ export default class DependencyCalculator { "] which calculates the value for " + currentKey, neededBy: layer.id, - checkHasSnapName: false + checkHasSnapName: false, }) return [] diff --git a/src/Models/ThemeConfig/FilterConfig.ts b/src/Models/ThemeConfig/FilterConfig.ts index 73eea0297..62eaa9453 100644 --- a/src/Models/ThemeConfig/FilterConfig.ts +++ b/src/Models/ThemeConfig/FilterConfig.ts @@ -59,20 +59,30 @@ export default class FilterConfig { throw `Invalid filter: no question given at ${ctx}` } - const fields: { name: string; type: ValidatorType }[] = (option.fields ?? []).map((f, i) => { - const type = f.type ?? "regex" - if(Validators.availableTypes.indexOf(type) < 0){ - throw `Invalid filter: type is not a valid validator. Did you mean one of ${Utils.sortedByLevenshteinDistance(type, Validators.availableTypes, x => x).slice(0, 3)}` + const fields: { name: string; type: ValidatorType }[] = (option.fields ?? []).map( + (f, i) => { + const type = f.type ?? "regex" + if (Validators.availableTypes.indexOf(type) < 0) { + throw `Invalid filter: type is not a valid validator. Did you mean one of ${Utils.sortedByLevenshteinDistance( + type, + >Validators.availableTypes, + (x) => x + ).slice(0, 3)}` + } + // Type is validated against 'ValidatedTextField' in Validation.ts, in ValidateFilterConfig + if ( + f.name === undefined || + f.name === "" || + f.name.match(/[a-z0-9_-]+/) == null + ) { + throw `Invalid filter: a variable name should match [a-z0-9_-]+ at ${ctx}.fields[${i}]` + } + return { + name: f.name, + type, + } } - // Type is validated against 'ValidatedTextField' in Validation.ts, in ValidateFilterConfig - if (f.name === undefined || f.name === "" || f.name.match(/[a-z0-9_-]+/) == null) { - throw `Invalid filter: a variable name should match [a-z0-9_-]+ at ${ctx}.fields[${i}]` - } - return { - name: f.name, - type - } - }) + ) for (const field of fields) { for (const ln in question.translations) { @@ -226,7 +236,7 @@ export default class FilterConfig { opt.osmTags?.asHumanString() ?? "", opt.fields?.length > 0 ? opt.fields.map((f) => f.name + " (" + f.type + ")").join(" ") - : undefined + : undefined, ]) ) }) diff --git a/src/Models/ThemeConfig/Json/LayoutConfigJson.ts b/src/Models/ThemeConfig/Json/ThemeConfigJson.ts similarity index 99% rename from src/Models/ThemeConfig/Json/LayoutConfigJson.ts rename to src/Models/ThemeConfig/Json/ThemeConfigJson.ts index b3449ad01..cbdeef07b 100644 --- a/src/Models/ThemeConfig/Json/LayoutConfigJson.ts +++ b/src/Models/ThemeConfig/Json/ThemeConfigJson.ts @@ -16,7 +16,7 @@ import { Translatable } from "./Translatable" * * General remark: a type (string | any) indicates either a fixed or a translatable string. */ -export interface LayoutConfigJson { +export interface ThemeConfigJson { /** * question: What is the id of this layout? * diff --git a/src/Models/ThemeConfig/LayerConfig.ts b/src/Models/ThemeConfig/LayerConfig.ts index cb02b719d..2f7824cb2 100644 --- a/src/Models/ThemeConfig/LayerConfig.ts +++ b/src/Models/ThemeConfig/LayerConfig.ts @@ -85,12 +85,12 @@ export default class LayerConfig extends WithContextLoader { } this.syncSelection = json.syncSelection ?? "no" - if(!json.source) { - if(json.presets === undefined){ - throw "Error while parsing "+json.id+" in "+context+"; no source given" + if (!json.source) { + if (json.presets === undefined) { + throw "Error while parsing " + json.id + " in " + context + "; no source given" } this.source = new SourceConfig({ - osmTags: TagUtils.Tag({or: json.presets.map(pr => ({and:pr.tags}))}), + osmTags: TagUtils.Tag({ or: json.presets.map((pr) => ({ and: pr.tags })) }), }) } else if (typeof json.source !== "string") { this.maxAgeOfCache = json.source["maxCacheAge"] ?? 24 * 60 * 60 * 30 @@ -104,7 +104,7 @@ export default class LayerConfig extends WithContextLoader { mercatorCrs: json.source["mercatorCrs"], idKey: json.source["idKey"], }, - json.id, + json.id ) } @@ -124,7 +124,7 @@ export default class LayerConfig extends WithContextLoader { if (json.calculatedTags !== undefined) { if (!official) { console.warn( - `Unofficial theme ${this.id} with custom javascript! This is a security risk`, + `Unofficial theme ${this.id} with custom javascript! This is a security risk` ) } this.calculatedTags = [] @@ -194,7 +194,7 @@ export default class LayerConfig extends WithContextLoader { tags: pr.tags.map((t) => TagUtils.SimpleTag(t)), description: Translations.T( pr.description, - `${translationContext}.presets.${i}.description`, + `${translationContext}.presets.${i}.description` ), preciseInput: preciseInput, exampleImages: pr.exampleImages, @@ -208,7 +208,7 @@ export default class LayerConfig extends WithContextLoader { if (json.lineRendering) { this.lineRendering = Utils.NoNull(json.lineRendering).map( - (r, i) => new LineRenderingConfig(r, `${context}[${i}]`), + (r, i) => new LineRenderingConfig(r, `${context}[${i}]`) ) } else { this.lineRendering = [] @@ -216,7 +216,7 @@ export default class LayerConfig extends WithContextLoader { if (json.pointRendering) { this.mapRendering = Utils.NoNull(json.pointRendering).map( - (r, i) => new PointRenderingConfig(r, `${context}[${i}](${this.id})`), + (r, i) => new PointRenderingConfig(r, `${context}[${i}](${this.id})`) ) } else { this.mapRendering = [] @@ -228,7 +228,7 @@ export default class LayerConfig extends WithContextLoader { r.location.has("centroid") || r.location.has("projected_centerpoint") || r.location.has("start") || - r.location.has("end"), + r.location.has("end") ) if ( @@ -250,7 +250,7 @@ export default class LayerConfig extends WithContextLoader { Constants.priviliged_layers.indexOf(this.id) < 0 && this.source !== null /*library layer*/ && !this.source?.geojsonSource?.startsWith( - "https://api.openstreetmap.org/api/0.6/notes.json", + "https://api.openstreetmap.org/api/0.6/notes.json" ) ) { throw ( @@ -269,7 +269,7 @@ export default class LayerConfig extends WithContextLoader { typeof tr !== "string" && tr["builtin"] === undefined && tr["id"] === undefined && - tr["rewrite"] === undefined, + tr["rewrite"] === undefined ) ?? [] if (missingIds?.length > 0 && official) { console.error("Some tagRenderings of", this.id, "are missing an id:", missingIds) @@ -280,8 +280,8 @@ export default class LayerConfig extends WithContextLoader { (tr, i) => new TagRenderingConfig( tr, - this.id + ".tagRenderings[" + i + "]", - ), + this.id + ".tagRenderings[" + i + "]" + ) ) if (json.units !== undefined && !Array.isArray(json.units)) { throw ( @@ -291,7 +291,7 @@ export default class LayerConfig extends WithContextLoader { ) } this.units = (json.units ?? []).flatMap((unitJson, i) => - Unit.fromJson(unitJson, this.tagRenderings, `${context}.unit[${i}]`), + Unit.fromJson(unitJson, this.tagRenderings, `${context}.unit[${i}]`) ) if ( @@ -362,14 +362,18 @@ export default class LayerConfig extends WithContextLoader { if (mapRenderings.length === 0) { return undefined } - return new Combine(mapRenderings.map( - mr => mr.GetBaseIcon(properties ?? this.GetBaseTags()).SetClass("absolute left-0 top-0 w-full h-full")) + return new Combine( + mapRenderings.map((mr) => + mr + .GetBaseIcon(properties ?? this.GetBaseTags()) + .SetClass("absolute left-0 top-0 w-full h-full") + ) ).SetClass("relative block w-full h-full") } public GetBaseTags(): Record { return TagUtils.changeAsProperties( - this.source?.osmTags?.asChange({ id: "node/-1" }) ?? [{ k: "id", v: "node/-1" }], + this.source?.osmTags?.asChange({ id: "node/-1" }) ?? [{ k: "id", v: "node/-1" }] ) } @@ -382,7 +386,7 @@ export default class LayerConfig extends WithContextLoader { neededLayer: string }[] = [], addedByDefault = false, - canBeIncluded = true, + canBeIncluded = true ): string { const extraProps: string[] = [] extraProps.push("This layer is shown at zoomlevel **" + this.minzoom + "** and higher") @@ -390,32 +394,32 @@ export default class LayerConfig extends WithContextLoader { if (canBeIncluded) { if (addedByDefault) { extraProps.push( - "**This layer is included automatically in every theme. This layer might contain no points**", + "**This layer is included automatically in every theme. This layer might contain no points**" ) } if (this.shownByDefault === false) { extraProps.push( - "This layer is not visible by default and must be enabled in the filter by the user. ", + "This layer is not visible by default and must be enabled in the filter by the user. " ) } if (this.title === undefined) { extraProps.push( - "Elements don't have a title set and cannot be toggled nor will they show up in the dashboard. If you import this layer in your theme, override `title` to make this toggleable.", + "Elements don't have a title set and cannot be toggled nor will they show up in the dashboard. If you import this layer in your theme, override `title` to make this toggleable." ) } if (this.name === undefined && this.shownByDefault === false) { extraProps.push( - "This layer is not visible by default and the visibility cannot be toggled, effectively resulting in a fully hidden layer. This can be useful, e.g. to calculate some metatags. If you want to render this layer (e.g. for debugging), enable it by setting the URL-parameter layer-=true", + "This layer is not visible by default and the visibility cannot be toggled, effectively resulting in a fully hidden layer. This can be useful, e.g. to calculate some metatags. If you want to render this layer (e.g. for debugging), enable it by setting the URL-parameter layer-=true" ) } if (this.name === undefined) { extraProps.push( - "Not visible in the layer selection by default. If you want to make this layer toggable, override `name`", + "Not visible in the layer selection by default. If you want to make this layer toggable, override `name`" ) } if (this.mapRendering.length === 0) { extraProps.push( - "Not rendered on the map by default. If you want to rendering this on the map, override `mapRenderings`", + "Not rendered on the map by default. If you want to rendering this on the map, override `mapRenderings`" ) } @@ -425,12 +429,12 @@ export default class LayerConfig extends WithContextLoader { "", "This layer is loaded from an external source, namely ", "`" + this.source.geojsonSource + "`", - ].join("\n\n"), + ].join("\n\n") ) } } else { extraProps.push( - "This layer can **not** be included in a theme. It is solely used by [special renderings](SpecialRenderings.md) showing a minimap with custom data.", + "This layer can **not** be included in a theme. It is solely used by [special renderings](SpecialRenderings.md) showing a minimap with custom data." ) } @@ -440,7 +444,7 @@ export default class LayerConfig extends WithContextLoader { usingLayer = [ "## Themes using this layer", MarkdownUtils.list( - (usedInThemes ?? []).map((id) => `[${id}](https://mapcomplete.org/${id})`), + (usedInThemes ?? []).map((id) => `[${id}](https://mapcomplete.org/${id})`) ), ] } else if (this.source !== null) { @@ -456,31 +460,43 @@ export default class LayerConfig extends WithContextLoader { " into the layout as it depends on it: ", dep.reason, "(" + dep.context + ")", - ].join(" "), + ].join(" ") ) } let presets: string[] = [] if (this.presets.length > 0) { - presets = [ "## Presets", "The following options to create new points are included:", - MarkdownUtils.list(this.presets.map(preset => { - let snaps = "" - if (preset.preciseInput?.snapToLayers) { - snaps = " (snaps to layers " + preset.preciseInput.snapToLayers.map(id => `\`${id}\``).join(", ") + ")" - } - return "**" + preset.title.txt + "** which has the following tags:" + new And(preset.tags).asHumanString(true) + snaps - })), + MarkdownUtils.list( + this.presets.map((preset) => { + let snaps = "" + if (preset.preciseInput?.snapToLayers) { + snaps = + " (snaps to layers " + + preset.preciseInput.snapToLayers + .map((id) => `\`${id}\``) + .join(", ") + + ")" + } + return ( + "**" + + preset.title.txt + + "** which has the following tags:" + + new And(preset.tags).asHumanString(true) + + snaps + ) + }) + ), ] } for (const revDep of Utils.Dedup(layerIsNeededBy?.get(this.id) ?? [])) { extraProps.push( ["This layer is needed as dependency for layer", `[${revDep}](#${revDep})`].join( - " ", - ), + " " + ) ) } @@ -491,10 +507,10 @@ export default class LayerConfig extends WithContextLoader { .filter((values) => values.key !== "id") .map((values) => { const embedded: string[] = values.values?.map((v) => - Link.OsmWiki(values.key, v, true).SetClass("mr-2").AsMarkdown(), + Link.OsmWiki(values.key, v, true).SetClass("mr-2").AsMarkdown() ) ?? ["_no preset options defined, or no values in them_"] const statistics = `https://taghistory.raifer.tech/?#***/${encodeURIComponent( - values.key, + values.key )}/` const tagInfo = `https://taginfo.openstreetmap.org/keys/${values.key}#values` return [ @@ -509,7 +525,7 @@ export default class LayerConfig extends WithContextLoader { : `[${values.type}](../SpecialInputElements.md#${values.type})`, embedded.join(" "), ] - }), + }) ) let quickOverview: string[] = [] @@ -519,7 +535,7 @@ export default class LayerConfig extends WithContextLoader { "this quick overview is incomplete", MarkdownUtils.table( ["attribute", "type", "values which are supported by this layer"], - tableRows, + tableRows ), ] } @@ -553,19 +569,19 @@ export default class LayerConfig extends WithContextLoader { const parts = neededTags["and"] tagsDescription.push( "Elements must match **all** of the following expressions:", - parts.map((p, i) => i + ". " + p.asHumanString(true, false, {})).join("\n"), + parts.map((p, i) => i + ". " + p.asHumanString(true, false, {})).join("\n") ) } else if (neededTags["or"]) { const parts = neededTags["or"] tagsDescription.push( "Elements must match **any** of the following expressions:", - parts.map((p) => " - " + p.asHumanString(true, false, {})).join("\n"), + parts.map((p) => " - " + p.asHumanString(true, false, {})).join("\n") ) } else { tagsDescription.push( "Elements must match the expression **" + - neededTags.asHumanString(true, false, {}) + - "**", + neededTags.asHumanString(true, false, {}) + + "**" ) } @@ -616,8 +632,7 @@ export default class LayerConfig extends WithContextLoader { if (!presets) { return undefined } - const matchingPresets = presets - .filter((pr) => new And(pr.tags).matchesProperties(tags)) + const matchingPresets = presets.filter((pr) => new And(pr.tags).matchesProperties(tags)) let mostShadowed = matchingPresets[0] let mostShadowedTags = new And(mostShadowed.tags) for (let i = 1; i < matchingPresets.length; i++) { @@ -646,18 +661,18 @@ export default class LayerConfig extends WithContextLoader { * Indicates if this is a normal layer, meaning that it can be toggled by the user in normal circumstances * Thus: name is set, not a note import layer, not synced with another filter, ... */ - public isNormal(){ - if(this.id.startsWith("note_import")){ + public isNormal() { + if (this.id.startsWith("note_import")) { return false } - if(Constants.added_by_default.indexOf( this.id) >=0){ + if (Constants.added_by_default.indexOf(this.id) >= 0) { return false } - if(this.filterIsSameAs !== undefined){ + if (this.filterIsSameAs !== undefined) { return false } - if(!this.name ){ + if (!this.name) { return false } return true diff --git a/src/Models/ThemeConfig/TagRenderingConfig.ts b/src/Models/ThemeConfig/TagRenderingConfig.ts index 153abe36c..483cab3da 100644 --- a/src/Models/ThemeConfig/TagRenderingConfig.ts +++ b/src/Models/ThemeConfig/TagRenderingConfig.ts @@ -85,7 +85,7 @@ export default class TagRenderingConfig { | string | TagRenderingConfigJson | (QuestionableTagRenderingConfigJson & { questionHintIsMd?: boolean }), - context?: string, + context?: string ) { let json = config if (json === undefined) { @@ -144,7 +144,7 @@ export default class TagRenderingConfig { this.description = Translations.T(json.description, translationKey + ".description") this.editButtonAriaLabel = Translations.T( json.editButtonAriaLabel, - translationKey + ".editButtonAriaLabel", + translationKey + ".editButtonAriaLabel" ) this.condition = TagUtils.Tag(json.condition ?? { and: [] }, `${context}.condition`) @@ -160,7 +160,7 @@ export default class TagRenderingConfig { } this.metacondition = TagUtils.Tag( json.metacondition ?? { and: [] }, - `${context}.metacondition`, + `${context}.metacondition` ) if (json.freeform) { if ( @@ -178,7 +178,7 @@ export default class TagRenderingConfig { }, perhaps you meant ${Utils.sortedByLevenshteinDistance( json.freeform.key, Validators.availableTypes, - (s) => s, + (s) => s )}` } const type: ValidatorType = json.freeform.type ?? "string" @@ -200,7 +200,7 @@ export default class TagRenderingConfig { placeholder, addExtraTags: json.freeform.addExtraTags?.map((tg, i) => - TagUtils.ParseUploadableTag(tg, `${context}.extratag[${i}]`), + TagUtils.ParseUploadableTag(tg, `${context}.extratag[${i}]`) ) ?? [], inline: json.freeform.inline ?? false, default: json.freeform.default, @@ -266,8 +266,8 @@ export default class TagRenderingConfig { context, this.multiAnswer, this.question !== undefined, - commonIconSize, - ), + commonIconSize + ) ) } else { this.mappings = [] @@ -293,7 +293,7 @@ export default class TagRenderingConfig { for (const expectedKey of keys) { if (usedKeys.indexOf(expectedKey) < 0) { const msg = `${context}.mappings[${i}]: This mapping only defines values for ${usedKeys.join( - ", ", + ", " )}, but it should also give a value for ${expectedKey}` this.configuration_warnings.push(msg) } @@ -340,7 +340,7 @@ export default class TagRenderingConfig { context: string, multiAnswer?: boolean, isQuestionable?: boolean, - commonSize: string = "small", + commonSize: string = "small" ): Mapping { const ctx = `${translationKey}.mappings.${i}` if (mapping.if === undefined) { @@ -349,7 +349,7 @@ export default class TagRenderingConfig { if (mapping.then === undefined) { if (mapping["render"] !== undefined) { throw `${ctx}: Invalid mapping: no 'then'-clause found. You might have typed 'render' instead of 'then', change it in ${JSON.stringify( - mapping, + mapping )}` } throw `${ctx}: Invalid mapping: no 'then'-clause found in ${JSON.stringify(mapping)}` @@ -360,7 +360,7 @@ export default class TagRenderingConfig { if (mapping["render"] !== undefined) { throw `${ctx}: Invalid mapping: a 'render'-key is present, this is probably a bug: ${JSON.stringify( - mapping, + mapping )}` } if (typeof mapping.if !== "string" && mapping.if["length"] !== undefined) { @@ -383,11 +383,11 @@ export default class TagRenderingConfig { } else if (mapping.hideInAnswer !== undefined) { hideInAnswer = TagUtils.Tag( mapping.hideInAnswer, - `${context}.mapping[${i}].hideInAnswer`, + `${context}.mapping[${i}].hideInAnswer` ) } const addExtraTags = (mapping.addExtraTags ?? []).map((str, j) => - TagUtils.SimpleTag(str, `${ctx}.addExtraTags[${j}]`), + TagUtils.SimpleTag(str, `${ctx}.addExtraTags[${j}]`) ) if (hideInAnswer === true && addExtraTags.length > 0) { throw `${ctx}: Invalid mapping: 'hideInAnswer' is set to 'true', but 'addExtraTags' is enabled as well. This means that extra tags will be applied if this mapping is chosen as answer, but it cannot be chosen as answer. This either indicates a thought error or obsolete code that must be removed.` @@ -483,7 +483,7 @@ export default class TagRenderingConfig { * @constructor */ public GetRenderValues( - tags: Record, + tags: Record ): { then: Translation; icon?: string; iconClass?: string }[] { if (!this.multiAnswer) { return [this.GetRenderValueWithImage(tags)] @@ -506,7 +506,7 @@ export default class TagRenderingConfig { return mapping } return undefined - }), + }) ) if (freeformKeyDefined && tags[this.freeform.key] !== undefined) { @@ -514,7 +514,7 @@ export default class TagRenderingConfig { applicableMappings ?.flatMap((m) => m.if?.usedTags() ?? []) ?.filter((kv) => kv.key === this.freeform.key) - ?.map((kv) => kv.value), + ?.map((kv) => kv.value) ) const freeformValues = tags[this.freeform.key].split(";") @@ -523,7 +523,7 @@ export default class TagRenderingConfig { applicableMappings.push({ then: new TypedTranslation( this.render.replace("{" + this.freeform.key + "}", leftover).translations, - this.render.context, + this.render.context ), }) } @@ -541,7 +541,7 @@ export default class TagRenderingConfig { * @constructor */ public GetRenderValueWithImage( - tags: Record, + tags: Record ): { then: TypedTranslation; icon?: string; iconClass?: string } | undefined { if (this.condition !== undefined) { if (!this.condition.matchesProperties(tags)) { @@ -610,7 +610,7 @@ export default class TagRenderingConfig { const answerMappings = this.mappings?.filter((m) => m.hideInAnswer !== true) if (key === undefined) { const values: { k: string; v: string }[][] = Utils.NoNull( - answerMappings?.map((m) => m.if.asChange({})) ?? [], + answerMappings?.map((m) => m.if.asChange({})) ?? [] ) if (values.length === 0) { return @@ -628,15 +628,15 @@ export default class TagRenderingConfig { return { key: commonKey, values: Utils.NoNull( - values.map((arr) => arr.filter((item) => item.k === commonKey)[0]?.v), + values.map((arr) => arr.filter((item) => item.k === commonKey)[0]?.v) ), } } let values = Utils.NoNull( answerMappings?.map( - (m) => m.if.asChange({}).filter((item) => item.k === key)[0]?.v, - ) ?? [], + (m) => m.if.asChange({}).filter((item) => item.k === key)[0]?.v + ) ?? [] ) if (values.length === undefined) { values = undefined @@ -700,7 +700,7 @@ export default class TagRenderingConfig { freeformValue: string | undefined, singleSelectedMapping: number, multiSelectedMapping: boolean[] | undefined, - currentProperties: Record, + currentProperties: Record ): UploadableTag { if (typeof freeformValue === "string") { freeformValue = freeformValue?.trim() @@ -775,7 +775,7 @@ export default class TagRenderingConfig { new And([ new Tag(this.freeform.key, freeformValue), ...(this.freeform.addExtraTags ?? []), - ]), + ]) ) } const and = TagUtils.FlattenMultiAnswer([...selectedMappings, ...unselectedMappings]) @@ -845,11 +845,11 @@ export default class TagRenderingConfig { } const msgs: string[] = [ icon + - " " + - "*" + - m.then.textFor(lang) + - "* is shown if with " + - m.if.asHumanString(true, false, {}), + " " + + "*" + + m.then.textFor(lang) + + "* is shown if with " + + m.if.asHumanString(true, false, {}), ] if (m.hideInAnswer === true) { @@ -858,11 +858,11 @@ export default class TagRenderingConfig { if (m.ifnot !== undefined) { msgs.push( "Unselecting this answer will add " + - m.ifnot.asHumanString(true, false, {}), + m.ifnot.asHumanString(true, false, {}) ) } return msgs.join(". ") - }), + }) ) } @@ -871,7 +871,7 @@ export default class TagRenderingConfig { const conditionAsLink = (this.condition.optimize()).asHumanString( true, false, - {}, + {} ) condition = "This tagrendering is only visible in the popup if the following condition is met: " + @@ -905,7 +905,7 @@ export default class TagRenderingConfig { this.metacondition, this.condition, this.freeform?.key ? new RegexTag(this.freeform?.key, /.*/) : undefined, - this.invalidValues, + this.invalidValues ) for (const m of this.mappings ?? []) { tags.push(m.if) @@ -925,21 +925,26 @@ export default class TagRenderingConfig { * The keys that should be erased if one has to revert to 'unknown'. * Might give undefined if setting to unknown is not possible */ - public removeToSetUnknown(partOfLayer: LayerConfig, currentTags: Record): string[] | undefined { + public removeToSetUnknown( + partOfLayer: LayerConfig, + currentTags: Record + ): string[] | undefined { if (!partOfLayer?.source || !currentTags) { return } const toDelete = new Set() if (this.freeform) { toDelete.add(this.freeform.key) - const extraTags = new And(this.freeform.addExtraTags ?? []).usedKeys().filter(k => k !== "fixme") + const extraTags = new And(this.freeform.addExtraTags ?? []) + .usedKeys() + .filter((k) => k !== "fixme") if (extraTags.length > 0) { return undefined } } if (this.mappings?.length > 0) { const mainkey = this.mappings[0].if.usedKeys() - mainkey.forEach(k => toDelete.add(k)) + mainkey.forEach((k) => toDelete.add(k)) for (const mapping of this.mappings) { if (mapping.addExtraTags?.length > 0) { return undefined @@ -953,7 +958,6 @@ export default class TagRenderingConfig { } } - currentTags = { ...currentTags } for (const key of toDelete) { delete currentTags[key] @@ -971,7 +975,7 @@ export class TagRenderingConfigUtils { public static withNameSuggestionIndex( config: TagRenderingConfig, tags: UIEventSource>, - feature?: Feature, + feature?: Feature ): Store { const isNSI = NameSuggestionIndex.supportedTypes().indexOf(config.freeform?.key) >= 0 if (!isNSI) { @@ -989,8 +993,8 @@ export class TagRenderingConfigUtils { tags, country.split(";"), center, - { sortByFrequency: true }, - ), + { sortByFrequency: true } + ) ) }) return extraMappings.map((extraMappings) => { @@ -1000,19 +1004,17 @@ export class TagRenderingConfigUtils { const clone: TagRenderingConfig = Object.create(config) // The original mappings get "priorityIf" set const oldMappingsCloned = - clone.mappings?.map( - (m) => { - const mapping = { - ...m, - priorityIf: m.priorityIf ?? TagUtils.Tag("id~*"), - } - if (m.if.usedKeys().indexOf("nobrand") < 0) { - // Erase 'nobrand=yes', unless this option explicitly sets it - mapping["addExtraTags"] = [new Tag("nobrand", "")] - } - return mapping - }, - ) ?? [] + clone.mappings?.map((m) => { + const mapping = { + ...m, + priorityIf: m.priorityIf ?? TagUtils.Tag("id~*"), + } + if (m.if.usedKeys().indexOf("nobrand") < 0) { + // Erase 'nobrand=yes', unless this option explicitly sets it + mapping["addExtraTags"] = [new Tag("nobrand", "")] + } + return mapping + }) ?? [] clone.mappings = [...oldMappingsCloned, ...extraMappings] return clone }) diff --git a/src/Models/ThemeConfig/LayoutConfig.ts b/src/Models/ThemeConfig/ThemeConfig.ts similarity index 93% rename from src/Models/ThemeConfig/LayoutConfig.ts rename to src/Models/ThemeConfig/ThemeConfig.ts index e9239b200..9917007ea 100644 --- a/src/Models/ThemeConfig/LayoutConfig.ts +++ b/src/Models/ThemeConfig/ThemeConfig.ts @@ -1,5 +1,5 @@ import { Translation } from "../../UI/i18n/Translation" -import { LayoutConfigJson } from "./Json/LayoutConfigJson" +import { ThemeConfigJson } from "./Json/ThemeConfigJson" import LayerConfig from "./LayerConfig" import { LayerConfigJson } from "./Json/LayerConfigJson" import Constants from "../Constants" @@ -13,7 +13,7 @@ import { Translatable } from "./Json/Translatable" /** * Minimal information about a theme **/ -export class MinimalLayoutInformation { +export class MinimalThemeInformation { id: string icon: string title: Translatable @@ -23,10 +23,11 @@ export class MinimalLayoutInformation { keywords?: Record layers: string[] } + /** * Minimal information about a theme **/ -export class LayoutInformation { +export class ThemeInformation { id: string icon: string title: Translatable | Translation @@ -37,9 +38,7 @@ export class LayoutInformation { keywords?: (Translatable | Translation)[] } - - -export default class LayoutConfig implements LayoutInformation { +export default class ThemeConfig implements ThemeInformation { public static readonly defaultSocialImage = "assets/SocialImage.png" public readonly id: string public readonly credits?: string @@ -57,7 +56,6 @@ export default class LayoutConfig implements LayoutInformation { public readonly startZoom: number public readonly startLat: number public readonly startLon: number - public widenFactor: number public defaultBackgroundId?: string public layers: LayerConfig[] public tileLayerSources: (RasterLayerProperties & { defaultState?: true | boolean })[] @@ -92,11 +90,11 @@ export default class LayoutConfig implements LayoutInformation { public readonly definitionRaw?: string private readonly layersDict: Map - private readonly source: LayoutConfigJson + private readonly source: ThemeConfigJson public readonly enableCache: boolean constructor( - json: LayoutConfigJson, + json: ThemeConfigJson, official = true, options?: { definedAtUrl?: string @@ -167,7 +165,7 @@ export default class LayoutConfig implements LayoutInformation { ? undefined : new Translation(json.descriptionTail, "themes:" + context + ".descriptionTail") this.icon = json.icon - this.socialImage = json.socialImage ?? LayoutConfig.defaultSocialImage + this.socialImage = json.socialImage ?? ThemeConfig.defaultSocialImage if (this.socialImage === "") { if (official) { throw "Theme " + json.id + " has empty string as social image" @@ -176,7 +174,6 @@ export default class LayoutConfig implements LayoutInformation { this.startZoom = json.startZoom this.startLat = json.startLat this.startLon = json.startLon - this.widenFactor = 1.5 this.defaultBackgroundId = json.defaultBackgroundId this.tileLayerSources = json.tileLayerSources ?? [] @@ -294,14 +291,7 @@ export default class LayoutConfig implements LayoutInformation { if (!untranslated.has(ln)) { untranslated.set(ln, []) } - untranslated - .get(ln) - .push( - translation.context.replace( - /^note_import_[a-zA-Z0-9_]*/, - "note_import" - ) - ) + untranslated.get(ln).push(translation.context) } }) }, @@ -315,6 +305,7 @@ export default class LayoutConfig implements LayoutInformation { return { untranslated, total } } + public getMatchingLayer(tags: Record): LayerConfig | undefined { if (tags === undefined) { return undefined @@ -336,7 +327,12 @@ export default class LayoutConfig implements LayoutInformation { } } } - console.trace("Fallthrough: could not find the appropriate layer for an object with tags", tags, "within layout", this) + console.trace( + "Fallthrough: could not find the appropriate layer for an object with tags", + tags, + "within layout", + this + ) return undefined } diff --git a/src/Models/ThemeViewState.ts b/src/Models/ThemeViewState.ts index 596060f12..ce21d1308 100644 --- a/src/Models/ThemeViewState.ts +++ b/src/Models/ThemeViewState.ts @@ -1,8 +1,12 @@ -import LayoutConfig from "./ThemeConfig/LayoutConfig" +import ThemeConfig from "./ThemeConfig/ThemeConfig" import { SpecialVisualizationState } from "../UI/SpecialVisualization" import { Changes } from "../Logic/Osm/Changes" import { Store, UIEventSource } from "../Logic/UIEventSource" -import { FeatureSource, IndexedFeatureSource, WritableFeatureSource } from "../Logic/FeatureSource/FeatureSource" +import { + FeatureSource, + IndexedFeatureSource, + WritableFeatureSource, +} from "../Logic/FeatureSource/FeatureSource" import { OsmConnection } from "../Logic/Osm/OsmConnection" import { ExportableMap, MapProperties } from "./MapProperties" import LayerState from "../Logic/State/LayerState" @@ -18,7 +22,7 @@ import UserRelatedState from "../Logic/State/UserRelatedState" import LayerConfig from "./ThemeConfig/LayerConfig" import GeoLocationHandler from "../Logic/Actors/GeoLocationHandler" import { AvailableRasterLayers, RasterLayerPolygon, RasterLayerUtils } from "./RasterLayers" -import LayoutSource from "../Logic/FeatureSource/Sources/LayoutSource" +import ThemeSource from "../Logic/FeatureSource/Sources/ThemeSource" import StaticFeatureSource from "../Logic/FeatureSource/Sources/StaticFeatureSource" import FeaturePropertiesStore from "../Logic/FeatureSource/Actors/FeaturePropertiesStore" import PerLayerFeatureSourceSplitter from "../Logic/FeatureSource/PerLayerFeatureSourceSplitter" @@ -46,7 +50,9 @@ import BackgroundLayerResetter from "../Logic/Actors/BackgroundLayerResetter" import SaveFeatureSourceToLocalStorage from "../Logic/FeatureSource/Actors/SaveFeatureSourceToLocalStorage" import BBoxFeatureSource from "../Logic/FeatureSource/Sources/TouchesBboxFeatureSource" import ThemeViewStateHashActor from "../Logic/Web/ThemeViewStateHashActor" -import NoElementsInViewDetector, { FeatureViewState } from "../Logic/Actors/NoElementsInViewDetector" +import NoElementsInViewDetector, { + FeatureViewState, +} from "../Logic/Actors/NoElementsInViewDetector" import FilteredLayer from "./FilteredLayer" import { PreferredRasterLayerSelector } from "../Logic/Actors/PreferredRasterLayerSelector" import { ImageUploadManager } from "../Logic/ImageProviders/ImageUploadManager" @@ -70,6 +76,7 @@ import { GeocodeResult, GeocodingUtils } from "../Logic/Search/GeocodingProvider import SearchState from "../Logic/State/SearchState" import { ShowDataLayerOptions } from "../UI/Map/ShowDataLayerOptions" import { PanoramaxUploader } from "../Logic/ImageProviders/Panoramax" +import { Tag } from "../Logic/Tags/Tag" /** * @@ -80,7 +87,7 @@ import { PanoramaxUploader } from "../Logic/ImageProviders/Panoramax" * It ties up all the needed elements and starts some actors. */ export default class ThemeViewState implements SpecialVisualizationState { - readonly layout: LayoutConfig + readonly theme: ThemeConfig readonly map: UIEventSource readonly changes: Changes readonly featureSwitches: FeatureSwitchState @@ -104,7 +111,7 @@ export default class ThemeViewState implements SpecialVisualizationState { readonly fullNodeDatabase?: FullNodeDatabaseSource readonly historicalUserLocations: WritableFeatureSource> - readonly indexedFeatures: IndexedFeatureSource & LayoutSource + readonly indexedFeatures: IndexedFeatureSource & ThemeSource readonly currentView: FeatureSource> readonly featuresInView: FeatureSource readonly favourites: FavouritesFeatureSource @@ -160,13 +167,13 @@ export default class ThemeViewState implements SpecialVisualizationState { */ public readonly featureSummary: SummaryTileSourceRewriter - constructor(layout: LayoutConfig, mvtAvailableLayers: Set) { + constructor(layout: ThemeConfig, mvtAvailableLayers: Set) { Utils.initDomPurify() - this.layout = layout + this.theme = layout this.featureSwitches = new FeatureSwitchState(layout) this.guistate = new MenuState( this.featureSwitches.featureSwitchWelcomeMessage.data, - layout.id, + layout.id ) this.map = new UIEventSource(undefined) const geolocationState = new GeoLocationState() @@ -182,14 +189,14 @@ export default class ThemeViewState implements SpecialVisualizationState { oauth_token: QueryParameters.GetQueryParameter( "oauth_token", undefined, - "Used to complete the login", + "Used to complete the login" ), }) this.userRelatedState = new UserRelatedState( this.osmConnection, layout, this.featureSwitches, - this.mapProperties, + this.mapProperties ) this.userRelatedState.fixateNorth.addCallbackAndRunD((fixated) => { this.mapProperties.allowRotating.setData(fixated !== "yes") @@ -200,29 +207,29 @@ export default class ThemeViewState implements SpecialVisualizationState { geolocationState, this.selectedElement, this.mapProperties, - this.userRelatedState.gpsLocationHistoryRetentionTime, + this.userRelatedState.gpsLocationHistoryRetentionTime ) this.geolocationControl = new GeolocationControlState(this.geolocation, this.mapProperties) this.availableLayers = AvailableRasterLayers.layersAvailableAt( this.mapProperties.location, - this.osmConnection.isLoggedIn, + this.osmConnection.isLoggedIn ) this.layerState = new LayerState( this.osmConnection, layout.layers, layout.id, - this.featureSwitches.featureSwitchLayerDefault, + this.featureSwitches.featureSwitchLayerDefault ) { const overlayLayerStates = new Map }>() - for (const rasterInfo of this.layout.tileLayerSources) { + for (const rasterInfo of this.theme.tileLayerSources) { const isDisplayed = QueryParameters.GetBooleanQueryParameter( "overlay-" + rasterInfo.id, rasterInfo.defaultState ?? true, - "Whether or not overlay layer " + rasterInfo.id + " is shown", + "Whether or not overlay layer " + rasterInfo.id + " is shown" ) const state = { isDisplayed } overlayLayerStates.set(rasterInfo.id, state) @@ -236,18 +243,18 @@ export default class ThemeViewState implements SpecialVisualizationState { * A bit tricky, as this is heavily intertwined with the 'changes'-element, which generates a stream of new and changed features too */ - if (this.layout.layers.some((l) => l._needsFullNodeDatabase)) { + if (this.theme.layers.some((l) => l._needsFullNodeDatabase)) { this.fullNodeDatabase = new FullNodeDatabaseSource() } - const layoutSource = new LayoutSource( + const layoutSource = new ThemeSource( layout.layers, this.featureSwitches, this.mapProperties, this.osmConnection.Backend(), (id) => this.layerState.filteredLayers.get(id).isDisplayed, mvtAvailableLayers, - this.fullNodeDatabase, + this.fullNodeDatabase ) let currentViewIndex = 0 @@ -265,7 +272,7 @@ export default class ThemeViewState implements SpecialVisualizationState { id: "current_view_" + currentViewIndex, }), ] - }), + }) ) this.featuresInView = new BBoxFeatureSource(layoutSource, this.mapProperties.bounds) @@ -276,19 +283,19 @@ export default class ThemeViewState implements SpecialVisualizationState { this.changes = new Changes( this, layout?.isLeftRightSensitive() ?? false, - (e, extraMsg) => this.reportError(e, extraMsg), + (e, extraMsg) => this.reportError(e, extraMsg) ) this.historicalUserLocations = this.geolocation.historicalUserLocations this.newFeatures = new NewGeometryFromChangesFeatureSource( this.changes, layoutSource, - this.featureProperties, + this.featureProperties ) layoutSource.addSource(this.newFeatures) const perLayer = new PerLayerFeatureSourceSplitter( Array.from(this.layerState.filteredLayers.values()).filter( - (l) => l.layerDef?.source !== null, + (l) => l.layerDef?.source !== null ), new ChangeGeometryApplicator(this.indexedFeatures, this.changes), { @@ -299,10 +306,10 @@ export default class ThemeViewState implements SpecialVisualizationState { "Got ", features.length, "leftover features, such as", - features[0].properties, + features[0].properties ) }, - }, + } ) this.perLayer = perLayer.perLayer } @@ -340,14 +347,14 @@ export default class ThemeViewState implements SpecialVisualizationState { }) this.lastClickObject = new LastClickFeatureSource( - this.layout, + this.theme, this.mapProperties.lastClickLocation, - this.userRelatedState.addNewFeatureMode, + this.userRelatedState.addNewFeatureMode ) this.osmObjectDownloader = new OsmObjectDownloader( this.osmConnection.Backend(), - this.changes, + this.changes ) this.perLayerFiltered = this.showNormalDataOn(this.map) @@ -357,19 +364,29 @@ export default class ThemeViewState implements SpecialVisualizationState { { currentZoom: this.mapProperties.zoom, layerState: this.layerState, - bounds: this.visualFeedbackViewportBounds.map(bounds => bounds ?? this.mapProperties.bounds?.data, [this.mapProperties.bounds]), - }, + bounds: this.visualFeedbackViewportBounds.map( + (bounds) => bounds ?? this.mapProperties.bounds?.data, + [this.mapProperties.bounds] + ), + } ) this.featureSummary = this.setupSummaryLayer() this.hasDataInView = new NoElementsInViewDetector(this).hasFeatureInView this.imageUploadManager = new ImageUploadManager( layout, - new PanoramaxUploader(Constants.panoramax.url, Constants.panoramax.token), + new PanoramaxUploader( + Constants.panoramax.url, + Constants.panoramax.token, + this.featureSwitchIsTesting.map((t) => + t ? Constants.panoramax.testsequence : Constants.panoramax.sequence + ) + ), this.featureProperties, this.osmConnection, this.changes, this.geolocation.geolocationState.currentGPSLocation, - this.indexedFeatures + this.indexedFeatures, + this.reportError ) this.favourites = new FavouritesFeatureSource(this) const longAgo = new Date() @@ -413,10 +430,10 @@ export default class ThemeViewState implements SpecialVisualizationState { const storage = new SaveFeatureSourceToLocalStorage( this.osmConnection.Backend(), fs.layer.layerDef.id, - LayoutSource.fromCacheZoomLevel, + ThemeSource.fromCacheZoomLevel, fs, this.featureProperties, - fs.layer.layerDef.maxAgeOfCache, + fs.layer.layerDef.maxAgeOfCache ) toLocalStorage.set(layerId, storage) }) @@ -427,9 +444,19 @@ export default class ThemeViewState implements SpecialVisualizationState { const filteringFeatureSource = new Map() this.perLayer.forEach((fs, layerName) => { const doShowLayer = this.mapProperties.zoom.map( - (z) => - (fs.layer.isDisplayed?.data ?? true) && z >= (fs.layer.layerDef?.minzoom ?? 0), - [fs.layer.isDisplayed], + (z) => { + if ( + (fs.layer.isDisplayed?.data ?? true) && + z >= (fs.layer.layerDef?.minzoom ?? 0) + ) { + return true + } + if (this.layerState.globalFilters.data.some((f) => f.forceShowOnMatch)) { + return true + } + return false + }, + [fs.layer.isDisplayed, this.layerState.globalFilters] ) if (!doShowLayer.data && this.featureSwitches.featureSwitchFilter.data === false) { @@ -446,7 +473,7 @@ export default class ThemeViewState implements SpecialVisualizationState { fs.layer, fs, (id) => this.featureProperties.getStore(id), - this.layerState.globalFilters, + this.layerState.globalFilters ) filteringFeatureSource.set(layerName, filtered) @@ -508,7 +535,7 @@ export default class ThemeViewState implements SpecialVisualizationState { } }) - this.userRelatedState.markLayoutAsVisited(this.layout) + this.userRelatedState.markLayoutAsVisited(this.theme) this.selectedElement.addCallback((selected) => { if (selected === undefined) { @@ -516,8 +543,8 @@ export default class ThemeViewState implements SpecialVisualizationState { } }) - if (this.layout.customCss !== undefined && window.location.pathname.indexOf("theme") >= 0) { - Utils.LoadCustomCss(this.layout.customCss) + if (this.theme.customCss !== undefined && window.location.pathname.indexOf("theme") >= 0) { + Utils.LoadCustomCss(this.theme.customCss) } Hash.hash.addCallbackAndRunD((hash) => { @@ -531,7 +558,7 @@ export default class ThemeViewState implements SpecialVisualizationState { * Selects the feature that is 'i' closest to the map center */ private selectClosestAtCenter(i: number = 0) { - console.log("Selecting closest",i) + console.log("Selecting closest", i) if (this.userRelatedState.a11y.data !== "never") { this.visualFeedback.setData(true) } @@ -578,7 +605,6 @@ export default class ThemeViewState implements SpecialVisualizationState { this.guistate.pageStates.favourites.set(true) }) - Hotkeys.RegisterHotkey( { nomod: " ", @@ -592,11 +618,14 @@ export default class ThemeViewState implements SpecialVisualizationState { if (this.guistate.isSomethingOpen() || this.previewedImage.data !== undefined) { return } - if (document.activeElement.tagName === "button" || document.activeElement.tagName === "input") { + if ( + document.activeElement.tagName === "button" || + document.activeElement.tagName === "input" + ) { return } this.selectClosestAtCenter(0) - }, + } ) for (let i = 1; i < 9; i++) { @@ -614,15 +643,18 @@ export default class ThemeViewState implements SpecialVisualizationState { onUp: true, }, doc, - () => this.selectClosestAtCenter(i - 1), + () => this.selectClosestAtCenter(i - 1) ) } - - Hotkeys.RegisterHotkey({ ctrl: "F" }, Translations.t.hotkeyDocumentation.selectSearch, () => { - this.searchState.feedback.set(undefined) - this.searchState.searchIsFocused.set(true) - }) + Hotkeys.RegisterHotkey( + { ctrl: "F" }, + Translations.t.hotkeyDocumentation.selectSearch, + () => { + this.searchState.feedback.set(undefined) + this.searchState.searchIsFocused.set(true) + } + ) this.featureSwitches.featureSwitchBackgroundSelection.addCallbackAndRun((enable) => { if (!enable) { @@ -637,7 +669,7 @@ export default class ThemeViewState implements SpecialVisualizationState { if (this.featureSwitches.featureSwitchBackgroundSelection.data) { this.guistate.pageStates.background.setData(true) } - }, + } ) Hotkeys.RegisterHotkey( { @@ -648,7 +680,7 @@ export default class ThemeViewState implements SpecialVisualizationState { if (this.featureSwitches.featureSwitchFilter.data) { this.guistate.openFilterView() } - }, + } ) const setLayerCategory = (category: EliCategory, skipLayers: number = 0) => { const timeOfCall = new Date() @@ -663,7 +695,7 @@ export default class ThemeViewState implements SpecialVisualizationState { available, category, current.data, - skipLayers, + skipLayers ) if (!best) { return @@ -676,43 +708,43 @@ export default class ThemeViewState implements SpecialVisualizationState { Hotkeys.RegisterHotkey( { nomod: "O" }, Translations.t.hotkeyDocumentation.selectOsmbasedmap, - () => setLayerCategory("osmbasedmap"), + () => setLayerCategory("osmbasedmap") ) Hotkeys.RegisterHotkey( { nomod: "M" }, Translations.t.hotkeyDocumentation.selectMap, - () => setLayerCategory("map"), + () => setLayerCategory("map") ) Hotkeys.RegisterHotkey( { nomod: "P" }, Translations.t.hotkeyDocumentation.selectAerial, - () => setLayerCategory("photo"), + () => setLayerCategory("photo") ) Hotkeys.RegisterHotkey( { shift: "O" }, Translations.t.hotkeyDocumentation.selectOsmbasedmap, - () => setLayerCategory("osmbasedmap", 2), + () => setLayerCategory("osmbasedmap", 2) ) Hotkeys.RegisterHotkey( { shift: "M" }, Translations.t.hotkeyDocumentation.selectMap, - () => setLayerCategory("map", 2), + () => setLayerCategory("map", 2) ) Hotkeys.RegisterHotkey( { shift: "P" }, Translations.t.hotkeyDocumentation.selectAerial, - () => setLayerCategory("photo", 2), + () => setLayerCategory("photo", 2) ) Hotkeys.RegisterHotkey( { nomod: "L" }, Translations.t.hotkeyDocumentation.geolocate, () => { this.geolocationControl.handleClick() - }, + } ) return true }) @@ -729,7 +761,7 @@ export default class ThemeViewState implements SpecialVisualizationState { } else { tm.setData("false") } - }, + } ) } @@ -737,19 +769,15 @@ export default class ThemeViewState implements SpecialVisualizationState { /** * MaxZoom for the summary layer */ - const normalLayers = this.layout.layers.filter( - (l) => - Constants.priviliged_layers.indexOf(l.id) < 0 && - !l.id.startsWith("note_import"), - ) + const normalLayers = this.theme.layers.filter((l) => l.isNormal()) const maxzoom = Math.min(...normalLayers.map((l) => l.minzoom)) - const layers = this.layout.layers.filter( + const layers = this.theme.layers.filter( (l) => Constants.priviliged_layers.indexOf(l.id) < 0 && l.source.geojsonSource === undefined && - l.doCount, + l.doCount ) if (!Constants.SummaryServer || layers.length === 0) { return undefined @@ -761,7 +789,7 @@ export default class ThemeViewState implements SpecialVisualizationState { this.mapProperties, { isActive: this.mapProperties.zoom.map((z) => z < maxzoom), - }, + } ) return new SummaryTileSourceRewriter(summaryTileSource, this.layerState.filteredLayers) @@ -783,12 +811,12 @@ export default class ThemeViewState implements SpecialVisualizationState { gps_track: this.geolocation.historicalUserLocationsTrack, geocoded_image: new StaticFeatureSource(this.geocodedImages), selected_element: new StaticFeatureSource( - this.selectedElement.map((f) => (f === undefined ? empty : [f])), + this.selectedElement.map((f) => (f === undefined ? empty : [f])) ), range: new StaticFeatureSource( this.mapProperties.maxbounds.map((bbox) => - bbox === undefined ? empty : [bbox.asGeoJson({ id: "range" })], - ), + bbox === undefined ? empty : [bbox.asGeoJson({ id: "range" })] + ) ), current_view: this.currentView, favourite: this.favourites, @@ -797,18 +825,17 @@ export default class ThemeViewState implements SpecialVisualizationState { search: this.searchState.locationResults, } - this.closestFeatures.registerSource(specialLayers.favourite, "favourite") - if (this.layout?.lockLocation) { - const bbox = new BBox(this.layout.lockLocation) + if (this.theme?.lockLocation) { + const bbox = new BBox(this.theme.lockLocation) this.mapProperties.maxbounds.setData(bbox) ShowDataLayer.showRange( this.map, new StaticFeatureSource([bbox.asGeoJson({ id: "range" })]), - this.featureSwitches.featureSwitchIsTesting, + this.featureSwitches.featureSwitchIsTesting ) } - const currentViewLayer = this.layout.layers.find((l) => l.id === "current_view") + const currentViewLayer = this.theme.layers.find((l) => l.id === "current_view") if (currentViewLayer?.tagRenderings?.length > 0) { const params = MetaTagging.createExtraFuncParams(this) this.featureProperties.trackFeatureSource(specialLayers.current_view) @@ -817,9 +844,9 @@ export default class ThemeViewState implements SpecialVisualizationState { features, params, currentViewLayer, - this.layout, + this.theme, this.osmObjectDownloader, - this.featureProperties, + this.featureProperties ) }) } @@ -851,7 +878,6 @@ export default class ThemeViewState implements SpecialVisualizationState { layer: flayer.layerDef, metaTags: this.userRelatedState.preferencesAsTags, selectedElement: this.selectedElement, - } if (flayer.layerDef.id === "search") { options.onClick = (feature) => { @@ -866,20 +892,20 @@ export default class ThemeViewState implements SpecialVisualizationState { { const lastClickLayerConfig = new LayerConfig( last_click_layerconfig, - "last_click", + "last_click" ) const lastClickFiltered = lastClickLayerConfig.isShown === undefined ? specialLayers.last_click : specialLayers.last_click.features.mapD((fs) => - fs.filter((f) => { - const matches = lastClickLayerConfig.isShown.matchesProperties( - f.properties, - ) - console.debug("LastClick ", f, "matches", matches) - return matches - }), - ) + fs.filter((f) => { + const matches = lastClickLayerConfig.isShown.matchesProperties( + f.properties + ) + console.debug("LastClick ", f, "matches", matches) + return matches + }) + ) // show last click = new point/note marker new ShowDataLayer(this.map, { features: new StaticFeatureSource(lastClickFiltered), @@ -911,6 +937,18 @@ export default class ThemeViewState implements SpecialVisualizationState { * Setup various services for which no reference are needed */ private initActors() { + if (!this.theme.official) { + // Add custom themes to the "visited custom themes" + const th = this.theme + this.userRelatedState.addUnofficialTheme({ + id: th.id, + icon: th.icon, + title: th.title.translations, + shortDescription: th.shortDescription.translations, + layers: th.layers.filter((l) => l.isNormal()).map((l) => l.id), + }) + } + this.selectedElement.addCallback((selected) => { if (selected === undefined) { this.focusOnMap() @@ -930,30 +968,55 @@ export default class ThemeViewState implements SpecialVisualizationState { }) // Add the selected element to the recently visited history - this.selectedElement.addCallbackD(selected => { + this.selectedElement.addCallbackD((selected) => { const [osm_type, osm_id] = selected.properties.id.split("/") const [lon, lat] = GeoOperations.centerpointCoordinates(selected) - const layer = this.layout.getMatchingLayer(selected.properties) + const layer = this.theme.getMatchingLayer(selected.properties) const nameOptions = [ selected?.properties?.name, - selected?.properties?.alt_name, selected?.properties?.local_name, + selected?.properties?.alt_name, + selected?.properties?.local_name, layer?.title.GetRenderValue(selected?.properties ?? {}).txt, selected.properties.display_name, selected.properties.id, ] const r = { feature: selected, - display_name: nameOptions.find(opt => opt !== undefined), - osm_id, osm_type, - lon, lat, + display_name: nameOptions.find((opt) => opt !== undefined), + osm_id, + osm_type, + lon, + lat, } this.userRelatedState.recentlyVisitedSearch.add(r) }) - this.userRelatedState.showScale.addCallbackAndRun(showScale => { + this.userRelatedState.showScale.addCallbackAndRun((showScale) => { this.mapProperties.showScale.set(showScale) }) + + this.layerState.filteredLayers + .get("favourite") + ?.isDisplayed?.addCallbackAndRunD((favouritesShown) => { + const oldGlobal = this.layerState.globalFilters.data + const key = "show-favourite" + if (favouritesShown) { + this.layerState.globalFilters.set([ + ...oldGlobal, + { + forceShowOnMatch: true, + id: key, + osmTags: new Tag("_favourite", "yes"), + state: 0, + onNewPoint: undefined, + }, + ]) + } else { + this.layerState.globalFilters.set(oldGlobal.filter((gl) => gl.id !== key)) + } + }) + new ThemeViewStateHashActor(this) new MetaTagging(this) new TitleHandler(this.selectedElement, this) @@ -965,7 +1028,7 @@ export default class ThemeViewState implements SpecialVisualizationState { this.mapProperties.rasterLayer, this.availableLayers, this.featureSwitches.backgroundLayerId, - this.userRelatedState.preferredBackgroundLayer, + this.userRelatedState.preferredBackgroundLayer ) } @@ -975,10 +1038,9 @@ export default class ThemeViewState implements SpecialVisualizationState { } /** - * Searches the appropriate layer - will first try if a special layer matches; if not, a normal layer will be used by delegating to the layout + * Searches the appropriate layer - will first try if a special layer matches; if not, a normal layer will be used by delegating to the theme */ public getMatchingLayer(properties: Record) { - const id = properties.id if (id.startsWith("summary_")) { @@ -990,15 +1052,15 @@ export default class ThemeViewState implements SpecialVisualizationState { return UserRelatedState.usersettingsConfig } if (id.startsWith(LastClickFeatureSource.newPointElementId)) { - return this.layout.layers.find((l) => l.id === "last_click") + return this.theme.layers.find((l) => l.id === "last_click") } if (id.startsWith("search_result")) { return GeocodingUtils.searchLayer } if (id === "location_track") { - return this.layout.layers.find((l) => l.id === "gps_track") + return this.theme.layers.find((l) => l.id === "gps_track") } - return this.layout.getMatchingLayer(properties) + return this.theme.getMatchingLayer(properties) } public async reportError(message: string | Error | XMLHttpRequest, extramessage: string = "") { @@ -1006,13 +1068,13 @@ export default class ThemeViewState implements SpecialVisualizationState { console.error("Got (in themeViewSTate.reportError):", message, extramessage) return } - const isTesting = this.featureSwitchIsTesting.data + const isTesting = this.featureSwitchIsTesting?.data console.log( isTesting ? ">>> _Not_ reporting error to report server as testmode is on" : ">>> Reporting error to", Constants.ErrorReportServer, - message, + message ) if (isTesting) { return @@ -1036,7 +1098,7 @@ export default class ThemeViewState implements SpecialVisualizationState { } if (extramessage) { - message += "(" + extramessage + ")" + message += " (" + extramessage + ")" } const stacktrace: string = new Error().stack @@ -1047,7 +1109,7 @@ export default class ThemeViewState implements SpecialVisualizationState { body: JSON.stringify({ stacktrace, message: "" + message, - layout: this.layout.id, + theme: this.theme.id, version: Constants.vNumber, language: this.userRelatedState.language.data, username: this.osmConnection.userDetails.data?.name, diff --git a/src/UI/AllThemesGui.svelte b/src/UI/AllThemesGui.svelte index 81afe3dbc..9681c01da 100644 --- a/src/UI/AllThemesGui.svelte +++ b/src/UI/AllThemesGui.svelte @@ -12,7 +12,7 @@ import Constants from "../Models/Constants" import { ImmutableStore, Store, Stores, UIEventSource } from "../Logic/UIEventSource" import ThemesList from "./BigComponents/ThemesList.svelte" - import { MinimalLayoutInformation } from "../Models/ThemeConfig/LayoutConfig" + import { MinimalThemeInformation } from "../Models/ThemeConfig/ThemeConfig" import Eye from "../assets/svg/Eye.svelte" import LoginButton from "./Base/LoginButton.svelte" import Mastodon from "../assets/svg/Mastodon.svelte" @@ -33,7 +33,7 @@ "oauth_token", undefined, "Used to complete the login" - ) + ), }) const state = new UserRelatedState(osmConnection) const t = Translations.t.index @@ -46,42 +46,56 @@ let searchIsFocused = new UIEventSource(true) - const officialThemes: MinimalLayoutInformation[] = ThemeSearch.officialThemes.themes.filter(th => th.hideFromOverview === false) - const hiddenThemes: MinimalLayoutInformation[] = ThemeSearch.officialThemes.themes.filter(th => th.hideFromOverview === true) - let visitedHiddenThemes: Store = UserRelatedState.initDiscoveredHiddenThemes(state.osmConnection) - .map((knownIds) => hiddenThemes.filter((theme) => - knownIds.indexOf(theme.id) >= 0 || state.osmConnection.userDetails.data.name === "Pieter Vander Vennet" - )) + const officialThemes: MinimalThemeInformation[] = ThemeSearch.officialThemes.themes.filter( + (th) => th.hideFromOverview === false + ) + const hiddenThemes: MinimalThemeInformation[] = ThemeSearch.officialThemes.themes.filter( + (th) => th.hideFromOverview === true + ) + let visitedHiddenThemes: Store = + UserRelatedState.initDiscoveredHiddenThemes(state.osmConnection).map((knownIds) => + hiddenThemes.filter( + (theme) => + knownIds.indexOf(theme.id) >= 0 || + state.osmConnection.userDetails.data.name === "Pieter Vander Vennet" + ) + ) - const customThemes: Store = Stores.ListStabilized(state.installedUserThemes) - .mapD(stableIds => Utils.NoNullInplace(stableIds.map(id => state.getUnofficialTheme(id)))) + const customThemes: Store = Stores.ListStabilized( + state.installedUserThemes + ).mapD((stableIds) => Utils.NoNullInplace(stableIds.map((id) => state.getUnofficialTheme(id)))) + function filtered(themes: Store): Store { + return searchStable.map( + (search) => { + if (!search) { + return themes.data + } - function filtered(themes: Store): Store { - return searchStable.map(search => { - if (!search) { - return themes.data - } - - const start = new Date().getTime() - const scores = ThemeSearch.sortedByLowestScores(search, themes.data) - const end = new Date().getTime() - console.trace("Scores for", search , "are", scores, "searching took", end - start,"ms") - const strict = scores.filter(sc => sc.lowest < 2) - if (strict.length > 0) { - return strict.map(sc => sc.theme) - } - return scores.filter(sc => sc.lowest < 4).slice(0, 6).map(sc => sc.theme) - }, [themes]) + const start = new Date().getTime() + const scores = ThemeSearch.sortedByLowestScores(search, themes.data) + const end = new Date().getTime() + console.trace("Scores for", search, "are", scores, "searching took", end - start, "ms") + const strict = scores.filter((sc) => sc.lowest < 2) + if (strict.length > 0) { + return strict.map((sc) => sc.theme) + } + return scores + .filter((sc) => sc.lowest < 4) + .slice(0, 6) + .map((sc) => sc.theme) + }, + [themes] + ) } - - let officialSearched : Store= filtered(new ImmutableStore(officialThemes)) - let hiddenSearched: Store = filtered(visitedHiddenThemes) - let customSearched: Store = filtered(customThemes) - + let officialSearched: Store = filtered( + new ImmutableStore(officialThemes) + ) + let hiddenSearched: Store = filtered(visitedHiddenThemes) + let customSearched: Store = filtered(customThemes) let searchIsFocussed = new UIEventSource(false) - document.addEventListener("keydown", function(event) { + document.addEventListener("keydown", function (event) { if (event.ctrlKey && event.code === "KeyF") { searchIsFocussed.set(true) event.preventDefault() @@ -90,9 +104,7 @@ function applySearch() { const didRedirect = SearchUtils.applySpecialSearch(search.data) - console.log("Did redirect?", didRedirect) if (didRedirect) { - // Just for style and readability; won't _actually_ reach this return } @@ -102,10 +114,7 @@ } window.location.href = ThemeSearch.createUrlFor(candidate, undefined) - } - -
    @@ -137,7 +146,13 @@ - applySearch()} autofocus isFocused={searchIsFocussed} /> + applySearch()} + autofocus + isFocused={searchIsFocussed} + /> @@ -167,8 +182,11 @@ {#if $customThemes.length > 0} -

    @@ -178,7 +196,6 @@ {/if} - -
    +
    + class={`absolute ${dotsPosition} ${dotsSize} dots-menu transition-colors ${ + $open ? "dots-menu-opened" : "" + }`} + on:click={toggle} + />
    - diff --git a/src/UI/Base/DrawerRight.svelte b/src/UI/Base/DrawerRight.svelte index 6fd67c962..f6aaaf440 100644 --- a/src/UI/Base/DrawerRight.svelte +++ b/src/UI/Base/DrawerRight.svelte @@ -8,11 +8,11 @@ let transitionParams = { x: 640, duration: 200, - easing: sineIn + easing: sineIn, } let hidden = !shown.data - shown.addCallback(sh => { + shown.addCallback((sh) => { hidden = !sh }) @@ -23,19 +23,21 @@ }) - - +
    -
    +
    diff --git a/src/UI/Base/Page.svelte b/src/UI/Base/Page.svelte index f284b8e32..1ec03cd03 100644 --- a/src/UI/Base/Page.svelte +++ b/src/UI/Base/Page.svelte @@ -3,12 +3,10 @@ import { UIEventSource } from "../../Logic/UIEventSource" import Popup from "./Popup.svelte" - export let onlyLink: boolean = false export let bodyPadding = "p-4 md:p-5 " export let fullscreen: boolean = false export let shown: UIEventSource - {#if !onlyLink} diff --git a/src/UI/Base/Popup.svelte b/src/UI/Base/Popup.svelte index 65fcd08f1..b644bcbae 100644 --- a/src/UI/Base/Popup.svelte +++ b/src/UI/Base/Popup.svelte @@ -7,40 +7,48 @@ */ export let fullscreen: boolean = false + export let bodyPadding = "p-4 md:p-5 " + export let shown: UIEventSource + export let dismissable = true + /** + * Default: 50 + */ + export let zIndex: string = "z-50" - 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" + 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" let defaultClass = "relative flex flex-col mx-auto w-full divide-y " + shared if (fullscreen) { defaultClass = shared } - let dialogClass = "fixed top-0 start-0 end-0 h-modal inset-0 z-50 w-full p-4 flex" + let dialogClass = "fixed top-0 start-0 end-0 h-modal inset-0 w-full p-4 flex " + zIndex if (fullscreen) { dialogClass += " h-full-child" } - export let bodyPadding = "p-4 md:p-5 " let bodyClass = bodyPadding + " h-full space-y-4 flex-1 overflow-y-auto overscroll-contain" let headerClass = "flex justify-between items-center p-2 px-4 md:px-5 rounded-t-lg" if (!$$slots.header) { headerClass = "hidden" } - export let shown: UIEventSource - export let dismissable = true let _shown = false - shown.addCallbackAndRun(sh => { + shown.addCallbackAndRun((sh) => { _shown = sh }) - - - - shown.set(false)} outsideclose - size="xl" - {dismissable} - {defaultClass} {bodyClass} {dialogClass} {headerClass} - color="none"> - + shown.set(false)} + outsideclose + size="xl" + {dismissable} + {defaultClass} + {bodyClass} + {dialogClass} + {headerClass} + color="none" +> {#if $$slots.header}

    diff --git a/src/UI/Base/Searchbar.svelte b/src/UI/Base/Searchbar.svelte index d92ae10e0..f85fba471 100644 --- a/src/UI/Base/Searchbar.svelte +++ b/src/UI/Base/Searchbar.svelte @@ -10,7 +10,7 @@ export let value: UIEventSource let _value = value.data ?? "" - value.addCallbackD(v => { + value.addCallbackD((v) => { _value = v }) $: value.set(_value) @@ -22,7 +22,7 @@ export let autofocus = false - isFocused?.addCallback(focussed => { + isFocused?.addCallback((focussed) => { if (focussed) { requestAnimationFrame(() => { if (document.activeElement !== inputElement) { @@ -33,41 +33,44 @@ } }) - if(autofocus){ + if (autofocus) { isFocused.set(true) } - - -
    dispatch("search")} -> + dispatch("search")}>
    +
    {/if} diff --git a/src/UI/Base/SidebarUnit.svelte b/src/UI/Base/SidebarUnit.svelte index aa1b8fcdc..d868eca21 100644 --- a/src/UI/Base/SidebarUnit.svelte +++ b/src/UI/Base/SidebarUnit.svelte @@ -1,55 +1,64 @@ diff --git a/src/UI/BigComponents/ContactLink.svelte b/src/UI/BigComponents/ContactLink.svelte index 2cd12366b..ca37679f8 100644 --- a/src/UI/BigComponents/ContactLink.svelte +++ b/src/UI/BigComponents/ContactLink.svelte @@ -6,6 +6,7 @@ import ToSvelte from "../Base/ToSvelte.svelte" import * as native from "../../assets/language_native.json" import { TypedTranslation } from "../i18n/Translation" + import Tr from "../Base/Tr.svelte" const availableTranslationTyped: TypedTranslation<{ native: string }> = Translations.t.communityIndex.available @@ -46,7 +47,7 @@ {resource.resolved?.description} {#if resource.languageCodes?.indexOf($language) >= 0}
    - availableTranslation.Clone()} /> +
    {/if}
    diff --git a/src/UI/BigComponents/CopyrightAllIcons.svelte b/src/UI/BigComponents/CopyrightAllIcons.svelte index 78dd6c129..a408bcfa2 100644 --- a/src/UI/BigComponents/CopyrightAllIcons.svelte +++ b/src/UI/BigComponents/CopyrightAllIcons.svelte @@ -6,7 +6,7 @@ export let state: SpecialVisualizationState - let layoutToUse = state.layout + let layoutToUse = state.theme let iconAttributions: string[] = layoutToUse.getUsedImages() const allLicenses = {} diff --git a/src/UI/BigComponents/CopyrightPanel.svelte b/src/UI/BigComponents/CopyrightPanel.svelte index 67410dba7..893b56882 100644 --- a/src/UI/BigComponents/CopyrightPanel.svelte +++ b/src/UI/BigComponents/CopyrightPanel.svelte @@ -18,7 +18,7 @@ export let state: SpecialVisualizationState const t = Translations.t.general.attribution - const layoutToUse = state.layout + const layoutToUse = state.theme let maintainer: Translation = undefined if (layoutToUse.credits !== undefined && layoutToUse.credits !== "") { @@ -122,7 +122,7 @@ {/if} {#if maintainer !== undefined}
    - +
    {/if} diff --git a/src/UI/BigComponents/ExtraLinkButton.svelte b/src/UI/BigComponents/ExtraLinkButton.svelte index eba6f3406..0c1c2bcba 100644 --- a/src/UI/BigComponents/ExtraLinkButton.svelte +++ b/src/UI/BigComponents/ExtraLinkButton.svelte @@ -9,8 +9,8 @@ import Icon from "../Map/Icon.svelte" export let state: SpecialVisualizationState - let theme = state.layout?.id ?? "" - let config: ExtraLinkConfig = state.layout.extraLink + let theme = state.theme?.id ?? "" + let config: ExtraLinkConfig = state.theme.extraLink let basepath = window.location.host let showWelcomeMessageSwitch = state.featureSwitches.featureSwitchWelcomeMessage const isIframe = Utils.isIframe @@ -42,7 +42,7 @@ {#if config.text} {:else} - + {/if}
    diff --git a/src/UI/BigComponents/FilterPage.svelte b/src/UI/BigComponents/FilterPage.svelte index fb3301c8d..693c6ad3d 100644 --- a/src/UI/BigComponents/FilterPage.svelte +++ b/src/UI/BigComponents/FilterPage.svelte @@ -14,7 +14,7 @@ export let state: ThemeViewState export let onlyLink: boolean - let layout = state.layout + let theme = state.theme let allEnabled: boolean let allDisabled: boolean @@ -70,7 +70,7 @@

    - {#each layout.layers as layer} + {#each theme.layers as layer} {/each} - {#each layout.tileLayerSources as tilesource} + {#each theme.tileLayerSources as tilesource} = filteredLayer.isDisplayed 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" + ) /** * Gets a UIEventSource as boolean for the given option, to be used with a checkbox @@ -31,7 +40,7 @@ return state.sync( (f) => f === 0, [], - (b) => (b ? 0 : undefined), + (b) => (b ? 0 : undefined) ) } @@ -67,6 +76,9 @@ {#if filter.options.length === 1 && filter.options[0].fields.length === 0} + + {filter.options[0].osmTags.asHumanString()} + {/if} @@ -82,6 +94,9 @@ {option.emoji} {/if} + {#if $showTags && option.osmTags !== undefined} +  ({option.osmTags.asHumanString()}) + {/if} {/each} @@ -92,7 +107,7 @@ {/if}
    {:else if $isDebugging} -
    - {layer.id} (no name) -
    +
    + {layer.id} (no name) +
    {/if} diff --git a/src/UI/BigComponents/FilterviewWithFields.svelte b/src/UI/BigComponents/FilterviewWithFields.svelte index 5245c9c2f..98e9c100a 100644 --- a/src/UI/BigComponents/FilterviewWithFields.svelte +++ b/src/UI/BigComponents/FilterviewWithFields.svelte @@ -55,14 +55,18 @@ let feedback: UIEventSource = new UIEventSource(undefined) -
    0}> +
    0}> {#each parts as part, i} {#if part["subs"]} - + {:else} @@ -70,6 +74,6 @@ {/if} {/each} {#if $feedback} - + {/if}
    diff --git a/src/UI/BigComponents/MenuDrawer.svelte b/src/UI/BigComponents/MenuDrawer.svelte index 0a7d597b9..b11cd1289 100644 --- a/src/UI/BigComponents/MenuDrawer.svelte +++ b/src/UI/BigComponents/MenuDrawer.svelte @@ -56,7 +56,7 @@ let usersettingslayer = new LayerConfig(usersettings, "usersettings", true) - let layout = state.layout + let theme = state.theme let featureSwitches = state.featureSwitches let showHome = featureSwitches.featureSwitchBackToThemeOverview let pg = state.guistate.pageStates @@ -108,7 +108,7 @@
    - +
    @@ -150,7 +150,6 @@
    - @@ -161,12 +160,12 @@ - + - - + + @@ -193,32 +192,31 @@ {/if} - {#if layout.official} + {#if theme.official} - + - + {/if} -

    @@ -238,13 +236,13 @@ - - + + +
    -

    @@ -275,11 +273,11 @@ - - + + - + @@ -322,6 +320,3 @@
    - - - diff --git a/src/UI/BigComponents/NewPointLocationInput.svelte b/src/UI/BigComponents/NewPointLocationInput.svelte index ced6c8f85..4156acade 100644 --- a/src/UI/BigComponents/NewPointLocationInput.svelte +++ b/src/UI/BigComponents/NewPointLocationInput.svelte @@ -83,7 +83,11 @@ let featuresForLayer: FeatureSource = state.perLayer.get(targetLayer.id) if (featuresForLayer) { if (dontShow) { - featuresForLayer = new StaticFeatureSource(featuresForLayer.features.map(feats => feats.filter(f => dontShow.indexOf(f.properties.id) < 0))) + featuresForLayer = new StaticFeatureSource( + featuresForLayer.features.map((feats) => + feats.filter((f) => dontShow.indexOf(f.properties.id) < 0) + ) + ) } new ShowDataLayer(map, { layer: targetLayer, @@ -116,7 +120,7 @@ allowUnsnapped: true, snappedTo, snapLocation: value, - }, + } ) const withCorrectedAttributes = new StaticFeatureSource( snappedLocation.features.mapD((feats) => @@ -130,8 +134,8 @@ ...f, properties, } - }), - ), + }) + ) ) // The actual point to be created, snapped at the new location new ShowDataLayer(map, { @@ -140,14 +144,13 @@ }) withCorrectedAttributes.features.addCallbackAndRunD((f) => console.log("Snapped point is", f)) } - 0 ? new UIEventSource(undefined) : value} + value={snapToLayers?.length > 0 ? new UIEventSource(undefined) : value} initialCoordinate={coordinate} {maxDistanceInMeters} > diff --git a/src/UI/BigComponents/PanoramaxLink.svelte b/src/UI/BigComponents/PanoramaxLink.svelte index 058674c06..dcd273d72 100644 --- a/src/UI/BigComponents/PanoramaxLink.svelte +++ b/src/UI/BigComponents/PanoramaxLink.svelte @@ -6,7 +6,7 @@ import { twMerge } from "tailwind-merge" import { PanoramaxXYZ, Panoramax } from "panoramax-js/dist" import Panoramax_bw from "../../assets/svg/Panoramax_bw.svelte" - import {default as Panoramax_svg} from "../../assets/svg/Panoramax.svelte" + import { default as Panoramax_svg } from "../../assets/svg/Panoramax.svelte" /* A subtleButton which opens panoramax in a new tab at the current location @@ -19,11 +19,14 @@ } let location = mapProperties.location let zoom = mapProperties.zoom - let href = location.mapD(location => - host.createViewLink({ - location, - zoom: zoom.data, - }), [zoom]) + let href = location.mapD( + (location) => + host.createViewLink({ + location, + zoom: zoom.data, + }), + [zoom] + ) export let large: boolean = true diff --git a/src/UI/BigComponents/ShareScreen.svelte b/src/UI/BigComponents/ShareScreen.svelte index 49e90ba7f..fe7280f51 100644 --- a/src/UI/BigComponents/ShareScreen.svelte +++ b/src/UI/BigComponents/ShareScreen.svelte @@ -25,8 +25,8 @@ * In some cases (local deploys, custom themes), we need to set the URL to `/theme.html?layout=xyz` instead of `/xyz?...` * Note that the 'layout='-param will be included automatically */ - let needsThemeRedirect = url.port !== "" || url.hostname.match(/^[0-9]/) || !state.layout.official - let layoutId = state.layout.id + let needsThemeRedirect = url.port !== "" || url.hostname.match(/^[0-9]/) || !state.theme.official + let layoutId = state.theme.id let baseLink = `${url.protocol}//${url.host}/${needsThemeRedirect ? "theme.html" : layoutId}?` let showWelcomeMessage = true @@ -44,7 +44,7 @@ enableBackground: boolean, enableGeolocation: boolean ) { - const layout = state.layout + const layout = state.theme let excluded = Utils.NoNull([ showWelcomeMessage ? undefined : "fs-welcome-message", enableLogin ? undefined : "fs-enable-login", @@ -60,9 +60,6 @@ if (flayer.layerDef.filterIsSameAs) { continue } - if (id.indexOf("note_import") >= 0) { - continue - } if (Constants.added_by_default.indexOf(id) >= 0) { continue } @@ -102,7 +99,7 @@ ${ enableGeolocation ? 'allow="geolocation"' : "" } width="100%" height="100%" style="min-width: 250px; min-height: 250px" - title="${state.layout.title?.txt ?? "MapComplete"} with MapComplete"> + title="${state.theme.title?.txt ?? "MapComplete"} with MapComplete"> ` Array.from(state.layerState.filteredLayers.values()).forEach((flayer) => @@ -119,7 +116,6 @@