Merge branch 'master' into develop

This commit is contained in:
Pieter Vander Vennet 2023-09-24 01:29:03 +02:00
commit 708e624779
28 changed files with 405 additions and 161 deletions

View file

@ -213,22 +213,26 @@
{
"id": "speech_output_available",
"question": {
"en": "Has this elevator speech output?"
"en": "Has this elevator speech output?",
"de": "Verfügt der Aufzug über eine Sprachausgabe?"
},
"questionHint": {
"en": "E.g. it announces the current floor"
"en": "E.g. it announces the current floor",
"de": "Z.B. werden Stockwerke angesagt"
},
"mappings": [
{
"if": "speech_output=yes",
"then": {
"en": "This elevator has speech output"
"en": "This elevator has speech output",
"de": "Der Aufzug verfügt über eine Sprachausgabe"
}
},
{
"if": "speech_output=no",
"then": {
"en": "This elevator does not have speech output"
"en": "This elevator does not have speech output",
"de": "Der Aufzug verfügt über keine Sprachausgabe"
}
}
]

View file

@ -1012,13 +1012,7 @@
"options": [
{
"question": {
"en": "Has a vegetarian menu",
"de": "Vegetarische Gerichte im Angebot",
"es": "Tiene menú vegetariano",
"fr": "A un menu végétarien",
"nl": "Heeft een vegetarisch menu",
"pl": "Ma menu wegetariańskie",
"ca": "Té menú vegetarià"
"en": "Restaurants and fast food businesses"
}
},
{
@ -1048,13 +1042,8 @@
"options": [
{
"question": {
"en": "Has a vegan menu",
"nl": "Heeft een veganistisch menu",
"de": "Vegane Gerichte im Angebot",
"es": "Tiene menú vegano",
"fr": "A un menu végétalien",
"pl": "Ma menu wegańskie",
"ca": "Té menú vegà"
"en": "Has a vegetarian menu",
"nl": "Heeft een vegetarisch menu"
},
"osmTags": {
"or": [
@ -1072,13 +1061,13 @@
"options": [
{
"question": {
"en": "Has a halal menu",
"nl": "Heeft een halal menu",
"de": "Halal Gerichte im Angebot",
"es": "Tiene menú halah",
"fr": "A un menu halal",
"da": "Har en halalmenu",
"ca": "Té menú halal"
"en": "Has a vegan menu",
"nl": "Heeft een veganistisch menu",
"de": "Vegane Gerichte im Angebot",
"es": "Tiene menú vegano",
"fr": "A un menu végétalien",
"pl": "Ma menu wegańskie",
"ca": "Té menú vegà"
},
"osmTags": {
"or": [

View file

@ -59,7 +59,8 @@
"if": "map_type=topo",
"then": {
"en": "Topographical map <p class='subtle'>The map contains contour lines. </p>",
"de": "Topographische Katte <p class='subtle'> Die Karte enthält Höhenlinien. </p>"
"de": "Topographische Katte <p class='subtle'> Die Karte enthält Höhenlinien. </p>",
"ca": "Mapa topogràfic <p class='subtle'>El mapa conté línies de contorn. </p>"
}
},
{
@ -75,7 +76,8 @@
"then": {
"en": "This is a schematic map. <p class='subtle'>A sketched map with only important ways and POIs. The angles, distances etc. are merely illustrative, not accurate.</p> ",
"de": "Dies ist eine schematische Karte. <p class='subtle'>Eine skizzierte Karte mit nur wichtigen Wegen und POIs. Die Winkel, Entfernungen usw. sind lediglich illustrativ, nicht genau.</p> ",
"pl": "To jest mapa schematyczna. <p class='subtle'>Mapa-szkic z tylko ważnymi drogami i POI. Kąty, odległości itp. są tylko ilustratywne, niedokładne.</p> "
"pl": "To jest mapa schematyczna. <p class='subtle'>Mapa-szkic z tylko ważnymi drogami i POI. Kąty, odległości itp. są tylko ilustratywne, niedokładne.</p> ",
"ca": "Això és un mapa esquemàtic. <p class='subtle'>Un mapa esbossat amb només camins importants i PDI. Els angles, els trajectes etc. són merament il·lustratius, no acurat.</p> "
}
},
{
@ -92,7 +94,8 @@
"question": {
"en": "What is the size of the shown area on the map?",
"de": "Was wird von der Fläche abgedeckt?",
"pl": "Jaki jest rozmiar obszaru pokazanego na tej mapie?"
"pl": "Jaki jest rozmiar obszaru pokazanego na tej mapie?",
"ca": "Quina és la mida de l'àrea mostrada en el mapa?"
},
"mappings": [
{
@ -100,14 +103,16 @@
"then": {
"en": "A map of the rooms within a building",
"de": "Eine Karte der Räume innerhalb eines Gebäudes",
"pl": "Plan pomieszczeń w budynku"
"pl": "Plan pomieszczeń w budynku",
"ca": "Un mapa de les habitacions dins d'un edifici"
}
},
{
"if": "map_size=site",
"then": {
"en": "A map of special site, like of a historical castle, a park, a campus, a forest, ....",
"de": "Örtlichkeit (z.B. Burg)"
"de": "Örtlichkeit (z.B. Burg)",
"ca": "Un mapa d'un lloc especial, com un castell històric, un parc, un campus, un bosc, …"
}
},
{
@ -115,7 +120,8 @@
"then": {
"en": "A map showing the village or town",
"de": "Eine Karte, die das Dorf oder die Stadt anzeigt",
"pl": "Mapa pokazująca wieś lub niewielkie miasto"
"pl": "Mapa pokazująca wieś lub niewielkie miasto",
"ca": "Un mapa que mostra el poble o la ciutat"
}
},
{
@ -123,7 +129,8 @@
"then": {
"en": " A map of a city",
"de": "Stadt",
"pl": " Mapa miasta"
"pl": " Mapa miasta",
"ca": " Un mapa d'una ciutat"
}
},
{
@ -131,7 +138,8 @@
"then": {
"en": "The map of an entire region, showing multiple cities and villages",
"de": "Region",
"pl": "Mapa całego regionu, pokazująca wiele miast i wsi"
"pl": "Mapa całego regionu, pokazująca wiele miast i wsi",
"ca": "El mapa d'una regió sencera, mostrant múltiples ciutats i pobles"
}
}
]

View file

@ -4,7 +4,8 @@
"en": "OpenStreetMap notes",
"nl": "OpenStreetMap Notes",
"de": "OpenStreetMap-Hinweise",
"es": "Notas de OpenStreetMap"
"es": "Notas de OpenStreetMap",
"ca": "Notes d'OpenStreetMap"
},
"description": "This layer shows notes on OpenStreetMap. Having this layer in your theme will trigger the 'add new note' functionality in the 'addNewPoint'-popup (or if your theme has no presets, it'll enable adding notes)",
"source": {
@ -33,7 +34,8 @@
"nl": "Gesloten Note",
"de": "Geschlossene Notiz",
"es": "Nota cerrada",
"pl": "Zamknięta notatka"
"pl": "Zamknięta notatka",
"ca": "Nota tancada"
}
}
]
@ -72,7 +74,8 @@
"en": "<h3>Nearby images</h3>The pictures below are nearby geotagged images and might be helpful to handle this note.",
"de": "<h3>Bilder aus der Nähe</h3>Die folgenden Bilder sind mit Geotags versehene Bilder aus der Nähe und könnten für die Bearbeitung dieser Notiz hilfreich sein.",
"es": "<h3>Imágenes cercanas</h3>Las imágenes de debajo son imágenes geoetiquetadas cercanas y pueden ser útiles para encargarse de esta nota.",
"nl": "<h3>Afbeeldingen in de buurt</h3>Onderstaande afbeeldingen zijn afbeeldingen met geo-referentie en die in de buurt genomen zijn. Mogelijks zijn ze nuttig om deze kaartnota af te handelen."
"nl": "<h3>Afbeeldingen in de buurt</h3>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": "<h3>Imatges properes</h3>Les imatges de sota són imatges geoetiquetades properes i poden ser útils per a encarregar-se d'aquesta nota."
},
"special": {
"type": "nearby_images",
@ -86,7 +89,8 @@
"en": "<a href='https://www.openstreetmap.org/reports/new?reportable_id={_first_user_id}&reportable_type=User' target='_blank' class='subtle'>Report {_first_user} for spam or inappropriate messages</a>",
"nl": "<a href='https://www.openstreetmap.org/reports/new?reportable_id={_first_user_id}&reportable_type=User' target='_blank' class='subtle'>{_first_user} melden voor spam of ongepaste opmerkingen</a>",
"de": "<a href='https://www.openstreetmap.org/reports/new?reportable_id={_first_user_id}&reportable_type=User' target='_blank' class='subtle' {_first_user} für Spam oder unangemessene Nachrichten melden</a>",
"es": "<a href='https://www.openstreetmap.org/reports/new?reportable_id={_first_user_id}&reportable_type=User' target='_blank' class='subtle'>Reportar {_first_user}"
"es": "<a href='https://www.openstreetmap.org/reports/new?reportable_id={_first_user_id}&reportable_type=User' target='_blank' class='subtle'>Reportar {_first_user}",
"ca": "<a href='https://www.openstreetmap.org/reports/new?reportable_id={_first_user_id}&reportable_type=User' target='_blank' class='subtle'>Reporta {_first_user} per spam o missatges inapropiats</a>"
},
"condition": "_opened_by_anonymous_user=false"
},
@ -96,7 +100,8 @@
"en": "<a href='https://www.openstreetmap.org/reports/new?reportable_id={id}&reportable_type=Note' target='_blank'>Report this note as spam or inappropriate</a>",
"nl": "<a href='https://www.openstreetmap.org/reports/new?reportable_id={id}&reportable_type=Note' target='_blank'>Deze note melden als spam of ongepast</a>",
"de": "<a href='https://www.openstreetmap.org/reports/new?reportable_id={id}&reportable_type=Note' target='_blank'>Notiz als Spam oder unangemessen melden</a>",
"es": "<a href='https://www.openstreetmap.org/reports/new?reportable_id={id}&reportable_type=Note' target='_blank'>Reporta esta nota como spam o inapropiada</a>"
"es": "<a href='https://www.openstreetmap.org/reports/new?reportable_id={id}&reportable_type=Note' target='_blank'>Reporta esta nota como spam o inapropiada</a>",
"ca": "<a href='https://www.openstreetmap.org/reports/new?reportable_id={id}&reportable_type=Note' target='_blank'>Reporta aquesta nota com spam o inapropiada</a>"
}
}
],
@ -330,7 +335,8 @@
"en": "Hide import notes",
"nl": "Verberg import Notes",
"de": "Importnotizen ausblenden",
"es": "Ocultar las nostras de importación"
"es": "Ocultar las notas de importación",
"ca": "Oculta les notes d'importació"
}
},
{
@ -339,7 +345,8 @@
"en": "Show only import Notes",
"nl": "Toon enkel import Notes",
"de": "Nur Importnotizen anzeigen",
"es": "Solo mostrar las notas de importación"
"es": "Solo mostrar las notas de importación",
"ca": "Mostrar només les notes d'importació"
}
}
]

View file

@ -40,7 +40,8 @@
"nl": "Torens om van het uitzicht te genieten",
"de": "Türme zur Aussicht auf die umgebende Landschaft",
"es": "Torres con vista panorámica",
"pl": "Wieże z panoramicznym widokiem"
"pl": "Wieże z panoramicznym widokiem",
"ca": "Torres amb vista panoràmica"
},
"tagRenderings": [
"images",
@ -93,7 +94,8 @@
"nl": "Deze toren is {height} hoog",
"de": "Dieser Turm ist {height} hoch",
"es": "Esta torre mide {height}",
"pl": "Ta wieża ma wysokość {height}"
"pl": "Ta wieża ma wysokość {height}",
"ca": "Aquesta torre fa {height}"
},
"freeform": {
"key": "height",
@ -141,14 +143,16 @@
"nl": "Hoeveel moet men betalen om deze toren te bezoeken?",
"de": "Was kostet der Zugang zu diesem Turm?",
"es": "¿Cuánto hay que pagar para entrar en esta torre?",
"pl": "Ile kosztuje wstęp na tę wieżę?"
"pl": "Ile kosztuje wstęp na tę wieżę?",
"ca": "Quant hi ha que pagar per entrar a aquesta torre?"
},
"render": {
"en": "Visiting this tower costs <b>{charge}</b>",
"nl": "Deze toren bezoeken kost <b>{charge}</b>",
"de": "Der Besuch des Turms kostet <b>{charge}</b>",
"es": "Visitar esta torre cuesta <b>{charge}</b>",
"pl": "Wizyta na tej wieży kosztuje <b>{charge}</b>"
"pl": "Wizyta na tej wieży kosztuje <b>{charge}</b>",
"ca": "Visitar aquesta torre costa <b>{charge}</b>"
},
"freeform": {
"key": "charge",
@ -228,8 +232,9 @@
"en": "Does this tower have an elevator?",
"nl": "Heeft deze toren een lift?",
"de": "Hat dieser Turm einen Aufzug?",
"es": "¿Tiene ascensor esta torre?",
"pl": "Czy ta wieża ma windę?"
"es": "¿Esta torre tiene ascensor?",
"pl": "Czy ta wieża ma windę?",
"ca": "Aquesta torre té ascensor?"
},
"mappings": [
{
@ -239,7 +244,8 @@
"nl": "Deze toren heeft een lift die bezoekers naar de top van de toren brengt",
"de": "Dieser Turm verfügt über einen Aufzug, der die Besucher nach oben bringt",
"es": "Esta torre tiene un ascensor que lleva a los visitantes a la cima",
"pl": "Ta wieża ma windę, która zabiera zwiedzających na górę"
"pl": "Ta wieża ma windę, która zabiera zwiedzających na górę",
"ca": "Aquesta torre té un ascensor que porta els visitants al cim"
}
},
{
@ -249,7 +255,8 @@
"nl": "Deze toren heeft geen lift",
"de": "Dieser Turm hat keinen Aufzug",
"es": "Esta torre no tiene ascensor",
"pl": "Ta wieża nie ma windy"
"pl": "Ta wieża nie ma windy",
"ca": "Aquesta torre no té ascensor"
}
}
],
@ -274,7 +281,8 @@
"en": "Maintained by <b>{operator}</b>",
"de": "Betrieben von <b>{operator}</b>",
"es": "Mantenida por <b>{operator}</b>",
"pl": "Obsługiwana przez <b>{operator}</b>"
"pl": "Obsługiwana przez <b>{operator}</b>",
"ca": "Mantés per {operator}"
},
"freeform": {
"key": "operator"

View file

@ -21,7 +21,8 @@
"de": "Parkplatz",
"es": "aparcamiento de coches",
"fr": "Lieu de stationnement",
"pl": "Parking samochodowy"
"pl": "Parking samochodowy",
"ca": "Aparcament de cotxes"
}
},
"description": {
@ -55,7 +56,8 @@
"en": "This is a parking bay next to a street",
"nl": "Dit is een parkeerplek langs een weg",
"de": "Dies ist eine Parkbucht neben einer Straße",
"fr": "C'est un lieu de stationnement à côté d'une route"
"fr": "C'est un lieu de stationnement à côté d'une route",
"ca": "Es tracta d'un aparcament al costat d'un carrer"
}
},
{
@ -76,7 +78,8 @@
"nl": "Dit is een bovengrondse parkeergarage met meerdere verdiepingen",
"de": "Dies ist ein mehrstöckiges oberirdisches Parkhaus",
"fr": "C'est un parking à plusieurs étages",
"pl": "To jest wielopiętrowy parking"
"pl": "To jest wielopiętrowy parking",
"ca": "Es tracta d'un garatge de diverses plantes"
}
},
{
@ -95,7 +98,8 @@
"nl": "Dit is een strook voor parkeren op de weg",
"de": "Dies ist eine Fahrspur zum Parken auf der Straße",
"fr": "C'est une voie de stationnement sur la route",
"pl": "To jest pas do parkowania na jezdni"
"pl": "To jest pas do parkowania na jezdni",
"ca": "Aquest és un carril per aparcar al carrer"
}
},
{
@ -122,7 +126,8 @@
"en": "This is a parking on a layby",
"nl": "Dit is een parkeerplek op een layby",
"de": "Hier gibt es Parkmöglichkeiten auf einem kleinen Rastplatz",
"fr": "C'est un parking sur une aire de stationnement"
"fr": "C'est un parking sur une aire de stationnement",
"ca": "Aquest és un aparcament en una zona de descans"
}
},
{
@ -178,7 +183,8 @@
"nl": "Er zijn geen parkeerplaatsen voor gehandicapten",
"de": "Es gibt keine barrierefreien Stellplätze",
"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"
"pl": "Nie ma tutaj żadnych miejsc parkingowych dla niepełnosprawnych",
"ca": "No hi ha places d'aparcament per a minusvàlids"
},
"hideInAnswer": true
},

View file

@ -4,13 +4,15 @@
"en": "Parking Spaces",
"de": "Stellplätze",
"nl": "Parkeerplekken",
"pl": "Miejsca parkingowe"
"pl": "Miejsca parkingowe",
"ca": "Places d'aparcament"
},
"description": {
"en": "Layer showing individual parking spaces.",
"de": "Ebene mit den einzelnen PKW Stellplätzen.",
"nl": "Laag met individuele parkeerplekken.",
"pl": "Warstwa pokazująca pojedyncze miejsca parkingowe."
"pl": "Warstwa pokazująca pojedyncze miejsca parkingowe.",
"ca": "Capa que mostra aparcaments de cotxes individuals."
},
"minzoom": 19,
"source": {
@ -43,7 +45,8 @@
"en": "This is a normal parking space.",
"de": "Dies ist ein normaler Stellplatz.",
"nl": "Dit is een normale parkeerplek.",
"pl": "To jest zwykłe miejsce parkingowe."
"pl": "To jest zwykłe miejsce parkingowe.",
"ca": "Aquesta és una plaça d'aparcament normal."
}
},
{
@ -52,7 +55,8 @@
"en": "This is a disabled parking space.",
"de": "Dies ist ein Behindertenstellplatz.",
"nl": "Dit is een gehandicaptenparkeerplaats.",
"pl": "To jest miejsce parkingowe dla niepełnosprawnych."
"pl": "To jest miejsce parkingowe dla niepełnosprawnych.",
"ca": "Aquesta és una plaça d'aparcament per a minusvàlids."
}
},
{
@ -61,7 +65,8 @@
"en": "This is a private parking space.",
"de": "Dies ist ein privater Stellplatz.",
"nl": "Dit is een privéparkeerplek.",
"pl": "To jest prywatne miejsce parkingowe."
"pl": "To jest prywatne miejsce parkingowe.",
"ca": "Es tracta d'una plaça d'aparcament privada."
}
},
{
@ -70,7 +75,8 @@
"en": "This is parking space reserved for charging vehicles.",
"de": "Dies ist ein Stellplatz, der für das Laden von Fahrzeugen reserviert ist.",
"nl": "Deze parkeerplek is gereserveerd voor het opladen van voertuigen.",
"pl": "To miejsce parkingowe jest zarezerwowane dla ładowania pojazdów."
"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."
}
},
{
@ -79,7 +85,8 @@
"en": "This is parking space reserved for deliveries.",
"de": "Dies ist ein Stellplatz, der für Lieferfahrzeuge reserviert ist.",
"nl": "Deze parkeerplek is gereserveerd voor leveringen.",
"pl": "To miejsce parkingowe jest przeznaczone dla dostaw."
"pl": "To miejsce parkingowe jest przeznaczone dla dostaw.",
"ca": "Es tracta d'una plaça d'aparcament reservada per a repartidors."
}
},
{
@ -104,7 +111,8 @@
"en": "This is parking space reserved for buses.",
"de": "Dies ist ein Stellplatz, der für Busse reserviert ist.",
"nl": "Deze parkeerplek is gereserveerd voor bussen.",
"pl": "To miejsce parkingowe jest przeznaczone dla busów."
"pl": "To miejsce parkingowe jest przeznaczone dla busów.",
"ca": "Es tracta d'una plaça d'aparcament reservada per a autobusos."
}
},
{
@ -113,7 +121,8 @@
"en": "This is parking space reserved for motorcycles.",
"de": "Dies ist ein Stellplatz, der für Motorräder reserviert ist.",
"nl": "Deze parkeerplek is gereserveerd voor motoren.",
"pl": "To miejsce parkingowe jest przeznaczone dla motocykli."
"pl": "To miejsce parkingowe jest przeznaczone dla motocykli.",
"ca": "Es tracta d'una plaça d'aparcament reservada per a motos."
}
},
{
@ -122,7 +131,8 @@
"en": "This is a parking space reserved for parents with children.",
"de": "Dies ist ein Stellplatz, der für Eltern mit Kindern reserviert ist.",
"nl": "Deze parkeerplek is gereserveerd voor ouders met kinderen.",
"pl": "To miejsce jest przeznaczone dla rodziców z dziećmi."
"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."
}
},
{
@ -131,7 +141,8 @@
"en": "This is a parking space reserved for staff.",
"de": "Dies ist ein Stellplatz, der für das Personal reserviert ist.",
"nl": "Deze parkeerplek is gereserveerd voor personeel.",
"pl": "To jest miejsce parkingowe przeznaczone dla pracowników."
"pl": "To jest miejsce parkingowe przeznaczone dla pracowników.",
"ca": "Es tracta d'una plaça d'aparcament reservada al personal."
}
},
{

View file

@ -59,7 +59,8 @@
},
"then": {
"en": "Post partner at {name}",
"de": "Postfiliale im {name}"
"de": "Postfiliale im {name}",
"ca": "Col·laborador postal a {name}"
}
}
]
@ -415,7 +416,8 @@
"question": {
"en": "Does this post office have an ATM?",
"nl": "Heeft dit postkantoor een bankautomaat?",
"de": "Verfügt die Postfiliale über einen Geldautomat?"
"de": "Verfügt die Postfiliale über einen Geldautomat?",
"ca": "Aquesta oficina postal té un caixer automàtic?"
},
"mappings": [
{
@ -423,7 +425,8 @@
"then": {
"en": "This post office has an ATM",
"nl": "Dit postkantoor heeft een bankautomaat",
"de": "Die Postfiliale verfügt über einen Geldautomat"
"de": "Die Postfiliale verfügt über einen Geldautomat",
"ca": "Aquesta oficina postal té un caixer automàtic"
}
},
{
@ -431,7 +434,8 @@
"then": {
"en": "This post office does <b>not</b> have an ATM",
"nl": "Dit postkantoor heeft <b>geen</b> bankautomaaat",
"de": "Die Postfiliale verfügt <b>nicht</b> über einen Geldautomat"
"de": "Die Postfiliale verfügt <b>nicht</b> über einen Geldautomat",
"ca": "Aquesta oficina postal <b>no</b> té un caixer automàtic"
}
},
{
@ -439,7 +443,8 @@
"then": {
"en": "This post office does have an ATM, but it is mapped as a different icon",
"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"
"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"
}
}
]

View file

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="23.578 0 52.845 100" enable-background="new 23.578 0 52.845 100" xml:space="preserve"><g><g><g><path d="M67.671,100H32.329c-4.826,0-8.751-3.925-8.751-8.752c0-3.762,2.385-6.978,5.723-8.212V26.423
c0-8.142,4.747-15.439,12.019-18.792C41.871,3.333,45.554,0,50,0c4.445,0,8.131,3.332,8.681,7.632
c7.271,3.352,12.02,10.649,12.02,18.792v56.613c3.337,1.234,5.723,4.451,5.723,8.211C76.423,96.075,72.498,100,67.671,100z
M32.329,88.555c-1.485,0-2.694,1.208-2.694,2.693c0,1.486,1.208,2.694,2.694,2.694h35.342c1.485,0,2.693-1.208,2.693-2.694
c0-1.485-1.208-2.693-2.693-2.693h-3.029V26.423c0-6.291-4.006-11.866-9.968-13.875l-2.432-0.818l0.41-2.535
c0.028-0.178,0.041-0.322,0.041-0.442c0-1.486-1.208-2.695-2.693-2.695s-2.694,1.208-2.694,2.695
c0,0.122,0.014,0.265,0.042,0.438l0.414,2.538l-2.437,0.822c-5.962,2.009-9.967,7.584-9.967,13.875v62.131h-3.029V88.555z"></path></g><g><path d="M46.718,68.833c-1.673,0-3.03-1.356-3.03-3.029V49.984c0-1.673,1.357-3.03,3.03-3.03c1.673,0,3.03,1.357,3.03,3.03
v15.819C49.747,67.477,48.391,68.833,46.718,68.833z"></path></g><g><path d="M46.718,43.084c-1.673,0-3.03-1.357-3.03-3.03V26.423c0-1.672,1.357-3.029,3.03-3.029c1.673,0,3.03,1.356,3.03,3.029
v13.631C49.747,41.728,48.391,43.084,46.718,43.084z"></path></g></g></g></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View file

@ -0,0 +1,2 @@
SPDX-FileCopyrightText: Jesus Jezzini De Anda
SPDX-License-Identifier: CC0-1.0

View file

@ -1,4 +1,14 @@
[
{
"path": "condom.svg",
"license": "CC0-1.0",
"authors": [
" \tJesus Jezzini De Anda"
],
"sources": [
"https://commons.wikimedia.org/wiki/File:Condom_-_The_Noun_Project.svg"
]
},
{
"path": "cow.svg",
"license": "CC-BY-4.0",

View file

@ -130,7 +130,8 @@
"de": "Kondome werden verkauft",
"fr": "Vent des préservatifs",
"ca": "Es venen preservatius"
}
},
"icon": "./assets/layers/vending_machine/condom.svg"
},
{
"if": "vending=coffee",
@ -279,6 +280,14 @@
"ca": "Es venen bitllets de transport públic"
},
"icon": "./assets/themes/stations/public_transport_tickets.svg"
},
{
"if": "vending=meat",
"then": {
"en": "Meat products are being sold",
"nl": "Vleesproducten worden hier verkocht"
},
"icon": "./assets/layers/id_presets/temaki-meat.svg"
}
],
"multiAnswer": true
@ -357,7 +366,18 @@
}
]
},
"level"
"level",
{
"builtin": "phone",
"override": {
"question": {
"en": "What is the phone number of the operator of this vending machine?"
},
"questionHint": {
"en": "This is the number you can call in case of problems with the vending machine"
}
}
}
],
"calculatedTags": [
"_vending_count=feat.properties.vending.split(';').length"
@ -436,6 +456,10 @@
{
"if": "vending=flowers",
"then": "circle:white;./assets/layers/id_presets/maki-florist.svg"
},
{
"if": "vending=condoms",
"then": "circle:white;./assets/layers/vending_machine/condom.svg"
}
]
},
@ -777,6 +801,30 @@
"ca": "Venda de flors"
},
"osmTags": "vending~i~.*flowers.*"
},
{
"osmTags": "vending~i~.*parking_tickets.*",
"question": {
"en": "Sale of parking"
}
},
{
"osmTags": "vending=elongated_coin",
"question": {
"en": "Sale of pressed pennies"
}
},
{
"osmTags": "vending~i~.*public_transport_tickets.*",
"question": {
"en": "Sale of public transport tickets"
}
},
{
"osmTags": "vending=meat",
"question": {
"en": "Sale of meat products"
}
}
]
}
@ -786,4 +834,4 @@
"enableRelocation": true
},
"deletion": true
}
}

View file

@ -131,7 +131,7 @@
"render": {
"en": "Change made with <a href='{host}'>{host}</a>",
"ca": "Canviat fet amb <a href='{host}'>{host}</a>",
"de": "Änderung über <a href='{host}'>{host}</a>",
"de": "Geändert über <a href='{host}'>{host}</a>",
"fr": "Modification faite avec <a href='{host}'>{host}</a>",
"nl": "Wijziging gemaakt met <a href='{host}'>{host}</a>"
},

View file

@ -405,6 +405,9 @@
"doDelete": "Esborrar imatge",
"dontDelete": "Cancel·lar",
"isDeleted": "Esborrada",
"nearby": {
"seeNearby": "Explora i vincula imatges properes"
},
"pleaseLogin": "Entrar per pujar una foto",
"respectPrivacy": "Respecta la privacitat. No fotografiïs gent o matrícules. No facis servir imatges de Google Maps, Google Streetview o altres fonts amb copyright.",
"toBig": "La teva imatge és massa gran ara que medeix {actual_size}. Usa imatges de com a molt {max_size}",

View file

@ -405,6 +405,11 @@
"doDelete": "Bild entfernen",
"dontDelete": "Abbrechen",
"isDeleted": "Gelöscht",
"nearby": {
"link": "Dieses Bild zeigt das Objekt",
"seeNearby": "Bilder in der Nähe durchsuchen und verlinken",
"title": "Straßenbilder in der Nähe"
},
"pleaseLogin": "Bitte anmelden, um ein Bild hinzuzufügen",
"respectPrivacy": "Bitte respektieren Sie die Privatsphäre. Fotografieren Sie weder Personen noch Nummernschilder. Benutzen Sie keine urheberrechtlich geschützten Quellen wie z.B. Google Maps oder Google Streetview.",
"toBig": "Ihr Bild ist mit {actual_size} zu groß. Die maximale Bildgröße ist {max_size}",

View file

@ -279,7 +279,8 @@
"public": {
"name": "Publique"
}
}
},
"title": "Envoyer votre trace sur OpenStreetMap.org"
},
"weekdays": {
"abbreviations": {

View file

@ -3940,9 +3940,6 @@
},
"2": {
"options": {
"0": {
"question": "Té menú vegetarià"
},
"1": {
"question": "Només negocis de menjar ràpid"
},
@ -3951,17 +3948,10 @@
}
}
},
"3": {
"options": {
"0": {
"question": "Té menú vegà"
}
}
},
"4": {
"options": {
"0": {
"question": "Té menú halal"
"question": "Té menú vegà"
}
}
},
@ -4795,6 +4785,36 @@
}
},
"question": "En quines dades es basa aquest mapa?"
},
"map_size": {
"mappings": {
"0": {
"then": "Un mapa de les habitacions dins d'un edifici"
},
"1": {
"then": "Un mapa d'un lloc especial, com un castell històric, un parc, un campus, un bosc, …"
},
"2": {
"then": "Un mapa que mostra el poble o la ciutat"
},
"3": {
"then": " Un mapa d'una ciutat"
},
"4": {
"then": "El mapa d'una regió sencera, mostrant múltiples ciutats i pobles"
}
},
"question": "Quina és la mida de l'àrea mostrada en el mapa?"
},
"map_type": {
"mappings": {
"0": {
"then": "Mapa topogràfic <p class='subtle'>El mapa conté línies de contorn. </p>"
},
"2": {
"then": "Això és un mapa esquemàtic. <p class='subtle'>Un mapa esbossat amb només camins importants i PDI. Els angles, els trajectes etc. són merament il·lustratius, no acurat.</p> "
}
}
}
},
"title": {
@ -5061,18 +5081,56 @@
}
},
"note": {
"filter": {
"10": {
"options": {
"1": {
"question": "Oculta les notes d'importació"
},
"2": {
"question": "Mostrar només les notes d'importació"
}
}
}
},
"name": "Notes d'OpenStreetMap",
"tagRenderings": {
"nearby-images": {
"render": {
"before": "<h3>Imatges properes</h3>Les imatges de sota són imatges geoetiquetades properes i poden ser útils per a encarregar-se d'aquesta nota."
}
},
"report-contributor": {
"render": "<a href='https://www.openstreetmap.org/reports/new?reportable_id={_first_user_id}&reportable_type=User' target='_blank' class='subtle'>Reporta {_first_user} per spam o missatges inapropiats</a>"
},
"report-note": {
"render": "<a href='https://www.openstreetmap.org/reports/new?reportable_id={id}&reportable_type=Note' target='_blank'>Reporta aquesta nota com spam o inapropiada</a>"
}
},
"title": {
"mappings": {
"0": {
"then": "Nota tancada"
}
},
"render": "Nota"
}
},
"observation_tower": {
"description": "Torres amb vista panoràmica",
"name": "Torres d'observació",
"tagRenderings": {
"Fee": {
"question": "Quant hi ha que pagar per entrar a aquesta torre?",
"render": "Visitar aquesta torre costa <b>{charge}</b>"
},
"Height": {
"question": "Quina és l'alçada d'aquesta torre?"
"question": "Quina és l'alçada d'aquesta torre?",
"render": "Aquesta torre fa {height}"
},
"Operator": {
"question": "Qui manté aquesta torre?"
"question": "Qui manté aquesta torre?",
"render": "Mantés per {operator}"
},
"access": {
"mappings": {
@ -5085,6 +5143,17 @@
},
"question": "Es pot visitar aquesta torre?"
},
"elevator": {
"mappings": {
"0": {
"then": "Aquesta torre té un ascensor que porta els visitants al cim"
},
"1": {
"then": "Aquesta torre no té ascensor"
}
},
"question": "Aquesta torre té ascensor?"
},
"name": {
"mappings": {
"0": {
@ -5272,6 +5341,9 @@
"0": {
"then": "Hi ha places d'aparcament per a gent amb mobilitat reduïda, però no es sap quantes"
},
"1": {
"then": "No hi ha places d'aparcament per a minusvàlids"
},
"2": {
"then": "No hi ha places d'aparcament per a persones amb mobilitat reduïda"
}
@ -5284,15 +5356,32 @@
"0": {
"then": "Aquest és un aparcament en superfície"
},
"1": {
"then": "Es tracta d'un aparcament al costat d'un carrer"
},
"2": {
"then": "Aquest és un aparcament subterrani"
},
"3": {
"then": "Es tracta d'un garatge de diverses plantes"
},
"5": {
"then": "Aquest és un carril per aparcar al carrer"
},
"8": {
"then": "Aquest és un aparcament en una zona de descans"
}
},
"question": "Quin tipus d'aparcament és aquest?"
}
},
"title": {
"render": "Aparcament de cotxes"
}
},
"parking_spaces": {
"description": "Capa que mostra aparcaments de cotxes individuals.",
"name": "Places d'aparcament",
"tagRenderings": {
"capacity": {
"mappings": {
@ -5306,6 +5395,33 @@
"mappings": {
"0": {
"then": "És un lloc normal d'aparcament."
},
"1": {
"then": "Aquesta és una plaça d'aparcament normal."
},
"2": {
"then": "Aquesta és una plaça d'aparcament per a minusvàlids."
},
"3": {
"then": "Es tracta d'una plaça d'aparcament privada."
},
"4": {
"then": "Es tracta d'una plaça d'aparcament reservada per a la recàrrega de vehicles."
},
"5": {
"then": "Es tracta d'una plaça d'aparcament reservada per a repartidors."
},
"8": {
"then": "Es tracta d'una plaça d'aparcament reservada per a autobusos."
},
"9": {
"then": "Es tracta d'una plaça d'aparcament reservada per a motos."
},
"10": {
"then": "Es tracta d'una plaça d'aparcament reservada per a pares amb fills."
},
"11": {
"then": "Es tracta d'una plaça d'aparcament reservada al personal."
}
}
}
@ -5512,6 +5628,20 @@
}
},
"tagRenderings": {
"has_atm": {
"mappings": {
"0": {
"then": "Aquesta oficina postal té un caixer automàtic"
},
"1": {
"then": "Aquesta oficina postal <b>no</b> té un caixer automàtic"
},
"2": {
"then": "Aquesta oficina postal té un caixer automàtic, però està mapejat com a un element diferent"
}
},
"question": "Aquesta oficina postal té un caixer automàtic?"
},
"letter-from": {
"mappings": {
"0": {
@ -5606,6 +5736,11 @@
}
},
"title": {
"mappings": {
"1": {
"then": "Col·laborador postal a {name}"
}
},
"render": "Oficina de correus"
}
},

View file

@ -2063,13 +2063,6 @@
},
"food": {
"filter": {
"4": {
"options": {
"0": {
"question": "Har en halalmenu"
}
}
},
"5": {
"options": {
"0": {

View file

@ -4202,6 +4202,18 @@
}
}
},
"speech_output_available": {
"mappings": {
"0": {
"then": "Der Aufzug verfügt über eine Sprachausgabe"
},
"1": {
"then": "Der Aufzug verfügt über keine Sprachausgabe"
}
},
"question": "Verfügt der Aufzug über eine Sprachausgabe?",
"questionHint": "Z.B. werden Stockwerke angesagt"
},
"tactile_writing_language": {
"render": {
"special": {
@ -4839,9 +4851,6 @@
},
"2": {
"options": {
"0": {
"question": "Vegetarische Gerichte im Angebot"
},
"1": {
"question": "Nur Fastfood-Geschäfte"
},
@ -4850,17 +4859,10 @@
}
}
},
"3": {
"options": {
"0": {
"question": "Vegane Gerichte im Angebot"
}
}
},
"4": {
"options": {
"0": {
"question": "Halal Gerichte im Angebot"
"question": "Vegane Gerichte im Angebot"
}
}
},

View file

@ -4892,7 +4892,7 @@
"2": {
"options": {
"0": {
"question": "Has a vegetarian menu"
"question": "Restaurants and fast food businesses"
},
"1": {
"question": "Only fastfood businesses"
@ -4905,14 +4905,14 @@
"3": {
"options": {
"0": {
"question": "Has a vegan menu"
"question": "Has a vegetarian menu"
}
}
},
"4": {
"options": {
"0": {
"question": "Has a halal menu"
"question": "Has a vegan menu"
}
}
},
@ -9872,6 +9872,18 @@
},
"16": {
"question": "Sale of flowers"
},
"17": {
"question": "Sale of parking"
},
"18": {
"question": "Sale of pressed pennies"
},
"19": {
"question": "Sale of public transport tickets"
},
"20": {
"question": "Sale of meat products"
}
}
}
@ -9904,6 +9916,12 @@
"question": "Who operates this vending machine?",
"render": "This vending machine is operated by {operator}"
},
"phone": {
"override": {
"question": "What is the phone number of the operator of this vending machine?",
"questionHint": "This is the number you can call in case of problems with the vending machine"
}
},
"vending": {
"mappings": {
"0": {
@ -9962,6 +9980,9 @@
},
"18": {
"then": "Public transport tickets are sold"
},
"19": {
"then": "Meat products are being sold"
}
},
"question": "What does this vending machine sell?",

View file

@ -2679,24 +2679,10 @@
},
"description": "Una capa mostrando restaurantes y locales de comida rápida (con un renderizado especial para friterías)",
"filter": {
"2": {
"options": {
"0": {
"question": "Tiene menú vegetariano"
}
}
},
"3": {
"options": {
"0": {
"question": "Tiene menú vegano"
}
}
},
"4": {
"options": {
"0": {
"question": "Tiene menú halah"
"question": "Tiene menú vegano"
}
}
},
@ -3215,7 +3201,7 @@
"question": "Todas las notas"
},
"1": {
"question": "Ocultar las nostras de importación"
"question": "Ocultar las notas de importación"
},
"2": {
"question": "Solo mostrar las notas de importación"
@ -3282,7 +3268,7 @@
"then": "Esta torre no tiene ascensor"
}
},
"question": "¿Tiene ascensor esta torre?"
"question": "¿Esta torre tiene ascensor?"
},
"name": {
"mappings": {

View file

@ -3409,9 +3409,6 @@
},
"2": {
"options": {
"0": {
"question": "A un menu végétarien"
},
"1": {
"question": "Seulement les fastfood"
},
@ -3420,17 +3417,10 @@
}
}
},
"3": {
"options": {
"0": {
"question": "A un menu végétalien"
}
}
},
"4": {
"options": {
"0": {
"question": "A un menu halal"
"question": "A un menu végétalien"
}
}
},

View file

@ -4526,24 +4526,17 @@
}
}
},
"2": {
"3": {
"options": {
"0": {
"question": "Heeft een vegetarisch menu"
}
}
},
"3": {
"options": {
"0": {
"question": "Heeft een veganistisch menu"
}
}
},
"4": {
"options": {
"0": {
"question": "Heeft een halal menu"
"question": "Heeft een veganistisch menu"
}
}
},
@ -9147,6 +9140,9 @@
},
"18": {
"then": "Openbaar vervoerkaartjes worden verkocht"
},
"19": {
"then": "Vleesproducten worden hier verkocht"
}
},
"question": "Wat verkoopt deze verkoopautomaat?",

View file

@ -1473,9 +1473,6 @@
},
"2": {
"options": {
"0": {
"question": "Ma menu wegetariańskie"
},
"1": {
"question": "Tylko fast-foody"
},
@ -1484,7 +1481,7 @@
}
}
},
"3": {
"4": {
"options": {
"0": {
"question": "Ma menu wegańskie"

View file

@ -925,7 +925,7 @@
},
"host": {
"question": "Über welchen Host (Webseite) wurde diese Änderung vorgenommen?",
"render": "Änderung über <a href='{host}'>{host}</a>"
"render": "Geändert über <a href='{host}'>{host}</a>"
},
"locale": {
"question": "In welcher Benutzersprache wurde diese Änderung vorgenommen?",

View file

@ -98,7 +98,7 @@ export class TagUtils {
"Invalid type to flatten the multiAnswer: key is a regex too",
tagsFilter
)
throw "Invalid type to FlattenMultiAnswer"
throw "Invalid type to FlattenMultiAnswer: key is a regex too"
}
const keystr = <string>key
if (keyValues[keystr] === undefined) {
@ -109,7 +109,10 @@ export class TagUtils {
}
console.error("Invalid type to flatten the multiAnswer", tagsFilter)
throw "Invalid type to FlattenMultiAnswer"
throw (
"Invalid type to FlattenMultiAnswer, not one of RegexTag, Tag or And: " +
tagsFilter.asHumanString(false, false, {})
)
}
return keyValues
}

View file

@ -357,14 +357,18 @@ class ListenerTracker<T> {
let toDelete = undefined
let startTime = new Date().getTime() / 1000
for (const callback of this._callbacks) {
if (callback(data) === true) {
// This callback wants to be deleted
// Note: it has to return precisely true in order to avoid accidental deletions
if (toDelete === undefined) {
toDelete = [callback]
} else {
toDelete.push(callback)
try {
if (callback(data) === true) {
// This callback wants to be deleted
// Note: it has to return precisely true in order to avoid accidental deletions
if (toDelete === undefined) {
toDelete = [callback]
} else {
toDelete.push(callback)
}
}
} catch (e) {
console.error("Got an error while running a callback:", e)
}
}
let endTime = new Date().getTime() / 1000

View file

@ -54,6 +54,7 @@
if (
confg.mappings?.length > 0 &&
confg.multiAnswer &&
(checkedMappings === undefined ||
checkedMappings?.length < confg.mappings.length + (confg.freeform ? 1 : 0))
) {