forked from MapComplete/MapComplete
Merge branch 'master' into develop
This commit is contained in:
commit
cce74fc40a
36 changed files with 597 additions and 244 deletions
|
@ -147,6 +147,7 @@
|
|||
"proposed:cyclestreet="
|
||||
]
|
||||
},
|
||||
"icon": "./assets/themes/cyclestreets/F111.svg",
|
||||
"then": {
|
||||
"en": "This street is a cyclestreet (and has a speed limit of 30 km/h)",
|
||||
"ca": "Aquest carrer és un ciclocarrer (i té un límit de velocitat de 30km/h)",
|
||||
|
@ -215,6 +216,7 @@
|
|||
"proposed:cyclestreet="
|
||||
]
|
||||
},
|
||||
"icon": "./assets/themes/cyclestreets/F111.svg",
|
||||
"then": {
|
||||
"en": "This street is a cyclestreet",
|
||||
"ca": "Aquest carrer és una ciclocarrer",
|
||||
|
|
|
@ -8,8 +8,14 @@
|
|||
"pointRendering": [],
|
||||
"lineRendering": [
|
||||
{
|
||||
"width": 3,
|
||||
"fill": "no",
|
||||
"width": 6,
|
||||
"dashArray": "0.1 3",
|
||||
"fillColor": "#00000000",
|
||||
"color": "#cc00cc"
|
||||
},
|
||||
{
|
||||
"width": 1,
|
||||
"fillColor": "#00000000",
|
||||
"color": "#cc00cc"
|
||||
}
|
||||
],
|
||||
|
|
|
@ -26,8 +26,8 @@
|
|||
"_car_width:=2 /* The width that a single car needs */",
|
||||
"_cyclistWidth:=1.5 /* The width a single cyclist needs to be safely overtaken */",
|
||||
"_pedestrianWidth:=0.75 /* The width a pedestrian needs if sidewalks are missing */",
|
||||
"_has_left_parking=['lane','yes', 'parallel'].indexOf(feat.properties['parking:left'] ?? feat.properties['parking:both']) >= 0",
|
||||
"_has_right_parking=['lane','yes','parallel'].indexOf(feat.properties['parking:right'] ?? feat.properties['parking:both']) >= 0",
|
||||
"_has_left_parking=['lane','yes', 'parallel','separate'].indexOf(feat.properties['parking:left'] ?? feat.properties['parking:both']) >= 0",
|
||||
"_has_right_parking=['lane','yes','parallel','separate'].indexOf(feat.properties['parking:right'] ?? feat.properties['parking:both']) >= 0",
|
||||
"_has_other_parking= ['parking:left:orientation','parking:right:orientation','parking:both:orientation'].some(key => ['perpendicular','diagonal'].indexOf(feat.properties[key]) >= 0)",
|
||||
"_parallel_parking_count=get(feat)('_has_right_parking') + get(feat)('_has_left_parking') /* in javascript logic: true + true == 2*/",
|
||||
"_width:needed:parking=get(feat)('_parallel_parking_count') * get(feat)('_car_width')",
|
||||
|
@ -184,6 +184,25 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "autoluw",
|
||||
"mappings": [
|
||||
{
|
||||
"if": {
|
||||
"or": [
|
||||
"access=destination",
|
||||
"highway=pedestrian",
|
||||
"motor_vehicle=no",
|
||||
"motor_vehicle=destination"
|
||||
]
|
||||
},
|
||||
"then": {
|
||||
"nl": "Deze straat is autoluw (voetgangerszone of lokaal autoverkeer)"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"cyclestreets.is_cyclestreet",
|
||||
"questions",
|
||||
"{nearby_images(closed,readonly)}"
|
||||
],
|
||||
|
@ -243,6 +262,7 @@
|
|||
},
|
||||
{
|
||||
"id": "street_no_width",
|
||||
"shownByDefault": false,
|
||||
"description": "Typical city streets with width",
|
||||
"name": {
|
||||
"nl": "Straten zonder breedte"
|
||||
|
@ -305,12 +325,12 @@
|
|||
],
|
||||
"lockLocation": [
|
||||
[
|
||||
3.2006263732910156,
|
||||
51.22699040520305
|
||||
3.16972753881808,
|
||||
51.24050645327853
|
||||
],
|
||||
[
|
||||
3.2529830932617188,
|
||||
51.190748429411705
|
||||
3.298152308504001,
|
||||
51.1777573911088
|
||||
]
|
||||
],
|
||||
"enableUserBadge": false,
|
||||
|
|
|
@ -7,11 +7,13 @@
|
|||
"download": "Stáhnout aplikaci",
|
||||
"downloadOnFDroid": "Stáhnout MapComplete na F-Droidu",
|
||||
"getOnObtanium": "Získat na Obtainiu",
|
||||
"legacyExplanation": "Kvůli restrikcím společnosti Google nelze zkompilovat identický balíček APK pro novější i starší verze systému Android.\n\n Pokud instalace z F-Droidu, Google Play, Obtainia nebo instalace výše odkazované nejnovější verze ('latest') selže,\n zkuste balíčky pro starší verze Androidu, které jsou k dispozici níže.",
|
||||
"intro": "MapComplete je k dispozici jako aplikace pro Android k přímému stažení. Pracujeme na to, aby byla zveřejněna i v repozitáři F-Droid.",
|
||||
"legacyExplanation": "Kvůli restrikcím společnosti Google nelze zkompilovat identický balíček APK pro novější i starší verze systému Android.\nPokud instalace z F-Droidu, Google Play, Obtainia nebo instalace výše odkazované nejnovější verze ('latest') selže, zkuste balíčky pro starší verze Androidu, které jsou k dispozici níže.",
|
||||
"legacyHeader": "Sestavení pro starší telefony se systémem Android",
|
||||
"noPlayServices": "Aplikace funguje bez Google Play Services",
|
||||
"older": "Zobrazit starší verze",
|
||||
"title": "Aplikace MapComplete pro Android"
|
||||
"title": "Aplikace MapComplete pro Android",
|
||||
"getOnGoogle": "Stáhnout MapComplete na Google Playstore"
|
||||
},
|
||||
"centerMessage": {
|
||||
"allFilteredAway": "Žádný objekt v zobrazení nesplňuje všechny filtry",
|
||||
|
@ -363,7 +365,8 @@
|
|||
"thursday": "Ve čtvrtek {ranges}",
|
||||
"tuesday": "V úterý {ranges}",
|
||||
"unknown": "Otevírací doba není známa",
|
||||
"wednesday": "Ve středu {ranges}"
|
||||
"wednesday": "Ve středu {ranges}",
|
||||
"ph": "Státní svátky"
|
||||
},
|
||||
"pdf": {
|
||||
"attr": "Mapová data © OpenStreetMap Contributors, opakovaně použitelná pod ODbL",
|
||||
|
@ -547,7 +550,14 @@
|
|||
"readMore": "Přečtěte si zbytek článku",
|
||||
"searchToShort": "Váš vyhledávací dotaz je příliš krátký, zadejte delší text",
|
||||
"searchWikidata": "Hledat na Wikidatech"
|
||||
}
|
||||
},
|
||||
"points_in_time": {
|
||||
"daily": "Každý den",
|
||||
"weekdays": "V pracovních dnech",
|
||||
"closed": "Zavřeno",
|
||||
"weekends": "O víkendech"
|
||||
},
|
||||
"welcomeBack": "Vítejte zpět"
|
||||
},
|
||||
"hotkeyDocumentation": {
|
||||
"action": "Akce",
|
||||
|
@ -666,7 +676,8 @@
|
|||
},
|
||||
"input_helpers": {
|
||||
"distance": {
|
||||
"setFirst": "Měření z aktuální pozice"
|
||||
"setFirst": "Měření z aktuální pozice",
|
||||
"measureAgain": "Začít nové měření z aktuálního umístění"
|
||||
}
|
||||
},
|
||||
"inspector": {
|
||||
|
@ -834,7 +845,10 @@
|
|||
"too_long": "Povoleno je maximálně {max} znaků. Vaše recenze má {amount} znaků.",
|
||||
"tos": "Zanecháním recenze souhlasíte s <a href='https://mangrove.reviews/terms' target='_blank'>podmínkami a zásadami ochrany osobních údajů služby Mangrove.reviews</a>",
|
||||
"your_reviews": "Vaše předchozí recenze",
|
||||
"your_reviews_empty": "Nenašli jsme žádné z vašich předchozích hodnocení"
|
||||
"your_reviews_empty": "Nenašli jsme žádné z vašich předchozích hodnocení",
|
||||
"editPrivacySettings": "Upravit nastavení soukromí",
|
||||
"loadOnce": "Načíst recenze jednou",
|
||||
"disabledForPrivacy": "Recenze jsou zakázány kvůli vašemu nastavení soukromí."
|
||||
},
|
||||
"split": {
|
||||
"cancel": "Zrušit",
|
||||
|
@ -946,5 +960,24 @@
|
|||
"empty": "Zadejte prosím nějaká wikidata",
|
||||
"startsWithQ": "Identifikátor wikidat začíná písmenem Q a následuje za ním číslo"
|
||||
}
|
||||
},
|
||||
"collectionTimes": {
|
||||
"addTime": "Přidat okamžik"
|
||||
},
|
||||
"offline": {
|
||||
"autoExplanationIntro": "Co znamená automatické stahování základních map?",
|
||||
"date": "Data pro generování map",
|
||||
"delete": "Smazat základní mapu",
|
||||
"deleteAll": "Smazat všechny základní mapy",
|
||||
"download": "Stáhnout oblast",
|
||||
"installing": "Data se stahují",
|
||||
"localOnMap": "Offline základní mapy na mapě",
|
||||
"name": "Název",
|
||||
"overview": "Přehled offline základních map",
|
||||
"range": "Rozsahy zoomu",
|
||||
"size": "Velikost",
|
||||
"actions": "Akce",
|
||||
"autoCheckmark": "Automaticky stahovat základní mapu při prohlížení okolí",
|
||||
"autoExplanation": "Je-li zaškrtnuto, MapComplete bude automaticky stahovat do cache základní mapu oblasti. Bude to znamenat větší počáteční objem dat, ale při delším pohybu jich následně vyžadovat méně. Plánujete-li navštívit oblast s horší konektivitou, můžete si také níže vybrat oblast, kterou chcete stáhnout."
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,7 +7,11 @@
|
|||
"download": "Lade die App runter",
|
||||
"noPlayServices": "Die App funktioniert ohne Google Play Services",
|
||||
"older": "Ältere Versionen ansehen",
|
||||
"title": "MapComplete Android-App"
|
||||
"title": "MapComplete Android-App",
|
||||
"legacyExplanation": "Wegen Einschränkungen von Google ist es nicht möglich, eine identische APK für neuere und ältere Android-Versionen zu erstellen.\nWenn die Installation über F-Droid, Google Play, Obtainium oder die Installation der „neuesten” Version oben nicht geklappt hat, probier mal eine der Versionen für ältere Android-Versionen, die du unten findest.",
|
||||
"legacyHeader": "Versionen für ältere Android-Handys",
|
||||
"downloadOnFDroid": "Lade MapComplete auf F-Droid runter",
|
||||
"getOnObtanium": "Hol es dir auf Obtainium"
|
||||
},
|
||||
"centerMessage": {
|
||||
"allFilteredAway": "Kein Objekt im Kartenausschnitt erfüllt alle Filterkriterien",
|
||||
|
@ -213,7 +217,8 @@
|
|||
"seeOnMapillary": "Dieses Bild auf Mapillary ansehen",
|
||||
"themeBy": "Dieses Thema wurde erstellt von {author}",
|
||||
"title": "Copyright und Urheberrechtsangabe",
|
||||
"translatedBy": "MapComplete wurde übersetzt von {contributors} und <a href='https://source.mapcomplete.org/MapComplete/MapComplete/activity/contributors' target='_blank'>{hiddenCount} weiteren Personen</a>"
|
||||
"translatedBy": "MapComplete wurde übersetzt von {contributors} und <a href='https://source.mapcomplete.org/MapComplete/MapComplete/activity/contributors' target='_blank'>{hiddenCount} weiteren Personen</a>",
|
||||
"fundByNlNet": "ein Fonds, der von NLnet aufgelegt wurde"
|
||||
},
|
||||
"back": "Zurück",
|
||||
"backToIndex": "Alle Themenkarten anzeigen",
|
||||
|
@ -894,4 +899,4 @@
|
|||
"startsWithQ": "Ein Wikidata-Identifikator beginnt mit Q und wird von einer Zahl gefolgt"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -542,6 +542,7 @@
|
|||
"tuesday": "Tuesday",
|
||||
"wednesday": "Wednesday"
|
||||
},
|
||||
"welcomeBack": "Welcome back",
|
||||
"welcomeExplanation": {
|
||||
"addNew": "Is an item missing? Use the button on the bottom-left to add a new point of interest.",
|
||||
"general": "On this map, you can see, edit and add <i>points of interest</i>. Zoom around to see the POI, tap one to see or edit the information. All data is sourced from and saved to OpenStreetMap, which can be freely reused."
|
||||
|
|
|
@ -11,7 +11,9 @@
|
|||
"legacyHeader": "Versions pour les anciens téléphones Android",
|
||||
"noPlayServices": "L'application fonctionne sans Google Play Services",
|
||||
"older": "Voir les anciens builds",
|
||||
"title": "Application Android MapComplete"
|
||||
"title": "Application Android MapComplete",
|
||||
"getOnGoogle": "Téléchargez MapComplete sur le Google Play Store",
|
||||
"intro": "MapComplete est disponible sous forme d'application Android sur différentes boutiques d'applications. L'installation de la version application facilite l'accès à MapComplete et utilise moins d'Internet. Cependant, la version web dispose des mêmes fonctionnalités."
|
||||
},
|
||||
"centerMessage": {
|
||||
"allFilteredAway": "Aucun objet dans la vue actuelle ne correspond aux filtres",
|
||||
|
@ -338,7 +340,7 @@
|
|||
"openTheMapReason": "pour la voir, l'éditer et modifier des informations",
|
||||
"opening_hours": {
|
||||
"all_days_from": "Ouvert tous les jours {ranges}",
|
||||
"closed_permanently": "Fermé",
|
||||
"closed_permanently": "Fermé pour une durée indéterminée",
|
||||
"closed_until": "Fermé jusqu'au {date}",
|
||||
"error": "Impossible d'interpréter les heures d'ouverture",
|
||||
"error_loading": "Erreur : impossible de visualiser ces horaires d'ouverture.",
|
||||
|
@ -363,7 +365,8 @@
|
|||
"thursday": "Le jeudi {ranges}",
|
||||
"tuesday": "Le mardi {ranges}",
|
||||
"unknown": "Les heures d'ouverture sont inconnues",
|
||||
"wednesday": "Le mercredi {ranges}"
|
||||
"wednesday": "Le mercredi {ranges}",
|
||||
"ph": "Jours fériés"
|
||||
},
|
||||
"pdf": {
|
||||
"attr": "Données par © les contributeurs & contributrices OpenStreetMap sous licence libre ODbL",
|
||||
|
@ -547,7 +550,14 @@
|
|||
"readMore": "Lire le reste de l'article",
|
||||
"searchToShort": "Votre requête est trop courte, entrez un texte plus long",
|
||||
"searchWikidata": "Rechercher sur Wikidata"
|
||||
}
|
||||
},
|
||||
"points_in_time": {
|
||||
"daily": "Tous les jours",
|
||||
"weekdays": "En semaine",
|
||||
"weekends": "Les week-ends",
|
||||
"closed": "Fermé"
|
||||
},
|
||||
"welcomeBack": "Bienvenue à nouveau"
|
||||
},
|
||||
"hotkeyDocumentation": {
|
||||
"action": "Action",
|
||||
|
@ -666,7 +676,8 @@
|
|||
},
|
||||
"input_helpers": {
|
||||
"distance": {
|
||||
"setFirst": "Mesure à partir de l'emplacement actuel"
|
||||
"setFirst": "Mesure à partir de l'emplacement actuel",
|
||||
"measureAgain": "Démarrer une nouvelle mesure à partir de l'emplacement actuel"
|
||||
}
|
||||
},
|
||||
"inspector": {
|
||||
|
@ -834,7 +845,10 @@
|
|||
"too_long": "Le nombre maximal de caractères autorisés est de {max}. Votre avis contient {amount} caractères.",
|
||||
"tos": "En publiant un avis, vous êtes d'accord avec <a href=\"https://mangrove.reviews/terms\" target=\"_blank\">les conditions d'utilisation et la politique de confidentialité de Mangrove.reviews</a>",
|
||||
"your_reviews": "Vos précédents avis",
|
||||
"your_reviews_empty": "Aucun avis n'a été trouvé"
|
||||
"your_reviews_empty": "Aucun avis n'a été trouvé",
|
||||
"editPrivacySettings": "Modifiez vos paramètres de confidentialité",
|
||||
"loadOnce": "Charger les avis une seule fois",
|
||||
"disabledForPrivacy": "Les avis sont désactivés en raison de vos paramètres de confidentialité."
|
||||
},
|
||||
"split": {
|
||||
"cancel": "Annuler",
|
||||
|
@ -946,5 +960,24 @@
|
|||
"empty": "Veuillez saisir quelques entrées Wikidata",
|
||||
"startsWithQ": "Un identifiant Wikidata commence par la lettre Q suivie d'un numéro"
|
||||
}
|
||||
},
|
||||
"offline": {
|
||||
"autoExplanationIntro": "Que signifie « téléchargement automatique des fonds de carte » ?",
|
||||
"name": "Nom",
|
||||
"overview": "Aperçu des fonds de carte hors ligne",
|
||||
"range": "Plages de zoom",
|
||||
"size": "Taille",
|
||||
"download": "Zone de téléchargement",
|
||||
"autoExplanation": "Si cette option est cochée, MapComplete téléchargera automatiquement le fond de carte dans le cache pour la zone concernée. Cela entraîne un chargement initial plus important des données, mais nécessite moins de connexion Internet à long terme. Si vous prévoyez de vous rendre dans une région où la connexion Internet est moins bonne, vous pouvez également sélectionner la zone que vous souhaitez télécharger ci-dessous.",
|
||||
"date": "Données de génération de carte",
|
||||
"localOnMap": "Fonds de carte hors ligne sur la carte",
|
||||
"installing": "Les données sont en cours de téléchargement",
|
||||
"actions": "Actions",
|
||||
"autoCheckmark": "Téléchargez automatiquement le fond de carte lorsque vous naviguez",
|
||||
"delete": "Supprimer le fond de carte",
|
||||
"deleteAll": "Supprimer tous les fonds de carte"
|
||||
},
|
||||
"collectionTimes": {
|
||||
"addTime": "Ajouter un moment"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -241,6 +241,9 @@
|
|||
},
|
||||
"9": {
|
||||
"then": "Mapa"
|
||||
},
|
||||
"10": {
|
||||
"then": "Právní zprávy"
|
||||
}
|
||||
},
|
||||
"question": "Jaký typ zprávy je zobrazen?"
|
||||
|
@ -860,6 +863,20 @@
|
|||
"render_single_language": "Tento bankomat má řečový výstup v {language()}"
|
||||
}
|
||||
}
|
||||
},
|
||||
"cash_in-types": {
|
||||
"mappings": {
|
||||
"2": {
|
||||
"then": "Do tohoto bankomatu můžete vkládat uzavřené pytle s penězi"
|
||||
},
|
||||
"0": {
|
||||
"then": "Do tohoto bankomatu můžete vkládat mince"
|
||||
},
|
||||
"1": {
|
||||
"then": "Do tohoto bankomatu můžete vkládat bankovky"
|
||||
}
|
||||
},
|
||||
"question": "Jakými způsoby lze do tohoto bankomatu vkládat hotovost?"
|
||||
}
|
||||
},
|
||||
"title": {
|
||||
|
@ -9140,6 +9157,12 @@
|
|||
"question": "Kdo provozuje tuto poštovní schránku?",
|
||||
"render": "Tuto poštovní schránku provozuje <b>{operator}</b>"
|
||||
}
|
||||
},
|
||||
"collection_times": {
|
||||
"question": "Kdy se tato schránka vybírá?",
|
||||
"render": {
|
||||
"before": "<h3>Časy výběru</h3>"
|
||||
}
|
||||
}
|
||||
},
|
||||
"title": {
|
||||
|
@ -9837,7 +9860,9 @@
|
|||
"operator": {
|
||||
"freeform": {
|
||||
"placeholder": "Operátor"
|
||||
}
|
||||
},
|
||||
"question": "Jaká firma provozuje toto místo?",
|
||||
"render": "Toto místo provozuje <b>{operator}</b>"
|
||||
},
|
||||
"payment-options": {
|
||||
"mappings": {
|
||||
|
@ -12574,10 +12599,26 @@
|
|||
},
|
||||
"question": "Dokáže tato kamera automaticky rozpoznat registrační značky?",
|
||||
"questionHint": "Automatická čtečka registračních značek (<b>ALPR</b>) má obvykle dvě čočky a mezi nimi soustavu infračervených diod LED."
|
||||
},
|
||||
"active": {
|
||||
"mappings": {
|
||||
"1": {
|
||||
"then": "Tato kamera se už nepoužívá"
|
||||
},
|
||||
"0": {
|
||||
"then": "Tato kamera se aktuálně používá."
|
||||
}
|
||||
},
|
||||
"question": "Používá se aktuálně tato kamera?"
|
||||
}
|
||||
},
|
||||
"title": {
|
||||
"render": "Bezpečnostní kamera"
|
||||
"render": "Bezpečnostní kamera",
|
||||
"mappings": {
|
||||
"0": {
|
||||
"then": "Nepoužívaná bezpečnostní kamera"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"tactile_map": {
|
||||
|
@ -13452,23 +13493,23 @@
|
|||
}
|
||||
},
|
||||
"transit_routes": {
|
||||
"description": "Vrstva zobrazující autobusové linky",
|
||||
"name": "Autobusové linky",
|
||||
"description": "Vrstva zobrazující dopravní trasy",
|
||||
"name": "Dopravní trasy",
|
||||
"tagRenderings": {
|
||||
"colour": {
|
||||
"question": "Jakou barvu má tato autobusová linka?",
|
||||
"render": "Tato autobusová linka má barvu {colour}"
|
||||
"question": "Jakou barvu má tato dopravní trasa?",
|
||||
"render": "Tato dopravní trasa má barvu {colour}"
|
||||
},
|
||||
"from": {
|
||||
"question": "Jaký je výchozí bod této autobusové linky?",
|
||||
"render": "Tato autobusová linka začíná v {from}"
|
||||
"question": "Jaký je výchozí bod této dopravní trasy?",
|
||||
"render": "Tato dopravní trasa začíná v {from}"
|
||||
},
|
||||
"name": {
|
||||
"question": "Jak se jmenuje tato autobusová linka? (tj. Autobus XX: Od => Přes => Do)"
|
||||
"question": "Jak se jmenuje tato dopravní trasa? (tj. Autobus XX: Z => Přes => Do)"
|
||||
},
|
||||
"network": {
|
||||
"question": "Do jaké sítě tato autobusová linka patří?",
|
||||
"render": "Tato autobusová linka je součástí sítě {network}"
|
||||
"question": "Do jaké sítě tato dopravní trasa patří?",
|
||||
"render": "Tato dopravní trasa je součástí sítě {network}"
|
||||
},
|
||||
"operator": {
|
||||
"override": {
|
||||
|
@ -13477,12 +13518,12 @@
|
|||
}
|
||||
},
|
||||
"to": {
|
||||
"question": "Jaký je konečný bod této autobusové linky?",
|
||||
"render": "Tato autobusová linka končí v {to}"
|
||||
"question": "Jaký je konečný bod této dopravní trasy?",
|
||||
"render": "Tato dopravní trasa končí v {to}"
|
||||
},
|
||||
"via": {
|
||||
"question": "Jaký je průjezdní bod této autobusové linky?",
|
||||
"render": "Tato autobusová linka jede přes {via}"
|
||||
"question": "Jaký je průjezdní bod této dopravní trasy?",
|
||||
"render": "Tato dopravní trasa jede přes {via}"
|
||||
}
|
||||
},
|
||||
"title": {
|
||||
|
@ -13491,7 +13532,7 @@
|
|||
"then": "{name}"
|
||||
}
|
||||
},
|
||||
"render": "Autobusová linka"
|
||||
"render": "Dopravní trasa"
|
||||
}
|
||||
},
|
||||
"transit_stops": {
|
||||
|
@ -13621,6 +13662,18 @@
|
|||
}
|
||||
},
|
||||
"question": "Má tato zastávka hmatovou dlažbu?"
|
||||
},
|
||||
"ref": {
|
||||
"freeform": {
|
||||
"placeholder": "např. A1 nebo 1"
|
||||
},
|
||||
"mappings": {
|
||||
"0": {
|
||||
"then": "Tato zastávka nemá referenci nástupišť"
|
||||
}
|
||||
},
|
||||
"question": "Jaká je reference nástupiště v této zastávce?",
|
||||
"render": "Reference nástupiště v této zastávce je <b>{ref}</b>."
|
||||
}
|
||||
},
|
||||
"title": {
|
||||
|
@ -15137,5 +15190,13 @@
|
|||
},
|
||||
"render": "větrná turbína"
|
||||
}
|
||||
},
|
||||
"railway": {
|
||||
"description": "Železnice a nepoužívané železnice",
|
||||
"name": "Železnice",
|
||||
"snapName": "železniční trať",
|
||||
"title": {
|
||||
"render": "Železnice"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -4607,6 +4607,12 @@
|
|||
"options": {
|
||||
"0": {
|
||||
"question": "Toutes les notes"
|
||||
},
|
||||
"1": {
|
||||
"question": "Masquer les notes d'importation"
|
||||
},
|
||||
"2": {
|
||||
"question": "Afficher uniquement les notes d'importation"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -4623,6 +4629,62 @@
|
|||
"question": "<b>Exclure</b>les notes ouvertes par {search}"
|
||||
}
|
||||
}
|
||||
},
|
||||
"4": {
|
||||
"options": {
|
||||
"0": {
|
||||
"question": "Il convient de mentionner {search} dans tout commentaire"
|
||||
}
|
||||
}
|
||||
},
|
||||
"14": {
|
||||
"options": {
|
||||
"0": {
|
||||
"question": "Dernière modification avant {search}"
|
||||
}
|
||||
}
|
||||
},
|
||||
"9": {
|
||||
"options": {
|
||||
"0": {
|
||||
"question": "Modifié ou commenté par tout utilisateur dont le nom est {search}"
|
||||
}
|
||||
}
|
||||
},
|
||||
"6": {
|
||||
"options": {
|
||||
"0": {
|
||||
"question": "Ne mentionnez <b>pas</b> {search} dans <b>aucun</b> commentaire"
|
||||
}
|
||||
}
|
||||
},
|
||||
"11": {
|
||||
"options": {
|
||||
"0": {
|
||||
"question": "Non modifié en dernier lieu par {search}"
|
||||
}
|
||||
}
|
||||
},
|
||||
"15": {
|
||||
"options": {
|
||||
"0": {
|
||||
"question": "Dernière modification après {search}"
|
||||
}
|
||||
}
|
||||
},
|
||||
"3": {
|
||||
"options": {
|
||||
"0": {
|
||||
"question": "Il faudrait mentionner {search} dans le premier commentaire"
|
||||
}
|
||||
}
|
||||
},
|
||||
"5": {
|
||||
"options": {
|
||||
"0": {
|
||||
"question": "Ne mentionnez <b>pas</b> {search} dans le premier commentaire"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"name": "Notes OpenStreetMap",
|
||||
|
@ -5525,6 +5587,23 @@
|
|||
}
|
||||
},
|
||||
"question": "Quelle est l'entité Wikidata correspondante ?"
|
||||
},
|
||||
"qr_code": {
|
||||
"render": {
|
||||
"special": {
|
||||
"text": "Scannez ce code pour ouvrir cet emplacement sur un autre appareil"
|
||||
}
|
||||
}
|
||||
},
|
||||
"last_edit": {
|
||||
"render": {
|
||||
"special": {
|
||||
"text": "Dernière modification le {_last_edit:timestamp} par {_last_edit:contributor}"
|
||||
}
|
||||
}
|
||||
},
|
||||
"name": {
|
||||
"question": "Quel est le nom de cet endroit ?"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -7650,4 +7729,4 @@
|
|||
"render": "éolienne"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2189,9 +2189,6 @@
|
|||
},
|
||||
"title": {
|
||||
"mappings": {
|
||||
"0": {
|
||||
"then": "{name}"
|
||||
},
|
||||
"1": {
|
||||
"then": "Vogelkijkhut {name}"
|
||||
},
|
||||
|
@ -7274,11 +7271,6 @@
|
|||
}
|
||||
},
|
||||
"title": {
|
||||
"mappings": {
|
||||
"0": {
|
||||
"then": "{name}"
|
||||
}
|
||||
},
|
||||
"render": "Natuurgebied"
|
||||
}
|
||||
},
|
||||
|
@ -7812,21 +7804,6 @@
|
|||
"render": "Picknicktafel"
|
||||
}
|
||||
},
|
||||
"play_forest": {
|
||||
"description": "Een speelbos is een vrij toegankelijke zone in een bos",
|
||||
"name": "Speelbossen",
|
||||
"title": {
|
||||
"mappings": {
|
||||
"0": {
|
||||
"then": "{name}"
|
||||
},
|
||||
"1": {
|
||||
"then": "Speelbos {name}"
|
||||
}
|
||||
},
|
||||
"render": "Speelbos"
|
||||
}
|
||||
},
|
||||
"playground": {
|
||||
"deletion": {
|
||||
"nonDeleteMappings": {
|
||||
|
@ -9653,9 +9630,6 @@
|
|||
},
|
||||
"title": {
|
||||
"mappings": {
|
||||
"0": {
|
||||
"then": "{name}"
|
||||
},
|
||||
"1": {
|
||||
"then": "Voetpad"
|
||||
},
|
||||
|
@ -11606,6 +11580,9 @@
|
|||
"then": "Je profielbeschrijving bevat een link die vermoedelijk naar je Mastodon gaat, maar deze link is niet verifieerdbaar voor Mastodon.<a href='https://www.openstreetmap.org/profile/edit' target='_blank' rel='noopener'>Pas je profielbeschrijving aan</a> en plaats er de volgende code: <span class='code'><a href=\"{_mastodon_candidate}\" rel=\"me\">Mastodon</a>"
|
||||
}
|
||||
}
|
||||
},
|
||||
"translations-title": {
|
||||
"render": "<h3>MapComplete vertalen</h3>"
|
||||
}
|
||||
},
|
||||
"title": {
|
||||
|
@ -11914,16 +11891,7 @@
|
|||
}
|
||||
},
|
||||
"village_green": {
|
||||
"description": "Een laag die dorpsgroen toont (gemeenschapsgroen, maar niet echt een park)",
|
||||
"name": "Speelweide",
|
||||
"title": {
|
||||
"mappings": {
|
||||
"0": {
|
||||
"then": "{name}"
|
||||
}
|
||||
},
|
||||
"render": "Speelweide"
|
||||
}
|
||||
"description": "Een laag die dorpsgroen toont (gemeenschapsgroen, maar niet echt een park)"
|
||||
},
|
||||
"visitor_information_centre": {
|
||||
"description": "Een bezoekerscentrum biedt informatie over een specifieke attractie of bezienswaardigheid waar het is gevestigd.",
|
||||
|
@ -12135,4 +12103,4 @@
|
|||
"render": "windturbine"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -24,10 +24,17 @@
|
|||
},
|
||||
"street": {
|
||||
"question": "На якій вулиці знаходиться ця адреса?",
|
||||
"render": "Ця адреса знаходиться на вулиці <b>{addr:street}</b>"
|
||||
"render": "Ця адреса знаходиться на вулиці <b>{addr:street}</b>",
|
||||
"questionHint": "Не вказаний номер будинку"
|
||||
},
|
||||
"unit": {
|
||||
"question": "Чим позначено цю адресу: номером чи літерою?"
|
||||
"question": "Чим позначено цю адресу: номером чи літерою?",
|
||||
"mappings": {
|
||||
"0": {
|
||||
"then": "Без номера будинку"
|
||||
}
|
||||
},
|
||||
"render": "Номер блоку <b>{addr:unit}</b>"
|
||||
}
|
||||
},
|
||||
"title": {
|
||||
|
@ -3513,5 +3520,21 @@
|
|||
"title": {
|
||||
"render": "Утилізація відходів"
|
||||
}
|
||||
},
|
||||
"adult_changing_table": {
|
||||
"tagRenderings": {
|
||||
"adult-changing-table-max_height": {
|
||||
"questionHint": "Це вимірюється між підлогою та верхньою частиною стола для переодягання",
|
||||
"question": "Яка максимальна висота, на яку можна підняти стіл для перевдягання дорослих?",
|
||||
"render": "Найбільша висота стола для переодягання дорослих становить {canonical(max_height)}"
|
||||
}
|
||||
},
|
||||
"description": "Стіл для переодягання дорослих — це лавка, на яку можна покласти дорослу людину. Такі столи часто використовують дорослі з важкими порушеннями рухових функцій",
|
||||
"presets": {
|
||||
"0": {
|
||||
"title": "стіл для переодягання дорослих"
|
||||
}
|
||||
},
|
||||
"name": "Столи для переодягання дорослих"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,7 +7,8 @@
|
|||
"download": "Download de laatste versie",
|
||||
"downloadOnFDroid": "Download MapComplete op F-Droid",
|
||||
"older": "Bekijk oudere versies",
|
||||
"title": "MapComplete Anrdoid App"
|
||||
"title": "MapComplete Android-app",
|
||||
"noPlayServices": "De app werkt zonder Google Play Services"
|
||||
},
|
||||
"centerMessage": {
|
||||
"allFilteredAway": "Geen enkel kaart-object voldoet aan alle filters",
|
||||
|
@ -170,7 +171,8 @@
|
|||
},
|
||||
"apply_button": {
|
||||
"appliedOnAnotherObject": "Object {id} zal deze tags ontvangen: {tags}",
|
||||
"isApplied": "De wijzigingen zijn doorgevoerd"
|
||||
"isApplied": "De wijzigingen zijn doorgevoerd",
|
||||
"applying": "Wijzigingen toepassen"
|
||||
},
|
||||
"attribution": {
|
||||
"attributionBackgroundLayer": "De huidige achtergrondlaag is {name}",
|
||||
|
@ -204,7 +206,8 @@
|
|||
"seeOnMapillary": "Bekijk dit beeld op Mapillary",
|
||||
"themeBy": "Thema gemaakt door {author}",
|
||||
"title": "Copyright en attributie",
|
||||
"translatedBy": "MapComplete werd vertaald door {contributors} en <a href=\"https://source.mapcomplete.org/MapComplete/MapComplete/activity/contributors\" target=\"_blank\">{hiddenCount} meer vertalers</a>"
|
||||
"translatedBy": "MapComplete werd vertaald door {contributors} en <a href=\"https://source.mapcomplete.org/MapComplete/MapComplete/activity/contributors\" target=\"_blank\">{hiddenCount} meer vertalers</a>",
|
||||
"openStatistics": "Bekijk de statistieken voor {theme}"
|
||||
},
|
||||
"back": "Vorige",
|
||||
"backToIndex": "Bekijk alle thematische kaarten",
|
||||
|
@ -343,7 +346,8 @@
|
|||
"thursday": "Op donderdag {ranges}",
|
||||
"tuesday": "Op dinsdag {ranges}",
|
||||
"unknown": "De openingsuren zijn niet gekend",
|
||||
"wednesday": "Op woensdag {ranges}"
|
||||
"wednesday": "Op woensdag {ranges}",
|
||||
"open_until": "Sluit op {date}"
|
||||
},
|
||||
"pdf": {
|
||||
"attr": "Kaartgegevens © OpenStreetMap-bijdragers, herbruikbaar volgens ODbL",
|
||||
|
@ -364,7 +368,7 @@
|
|||
"done": "Geen verdere vragen! Bedankt!",
|
||||
"reactivate": "Heractiveer vragen die je oversloeg",
|
||||
"skippedMultiple": "Je hebt {skipped} vragen overgeslaan",
|
||||
"skippedOne": "Je hebt één vraag beantwoord"
|
||||
"skippedOne": "Je hebt één vraag overgeslaan"
|
||||
},
|
||||
"questions": {
|
||||
"disable": "Stel deze vraag niet opnieuw",
|
||||
|
@ -396,7 +400,8 @@
|
|||
"recentThemes": "Recent bezochte kaarten",
|
||||
"recents": "Recent bekeken plaatsen",
|
||||
"search": "Zoek naar een locatie, filter of kaart",
|
||||
"searching": "Aan het zoeken…"
|
||||
"searching": "Aan het zoeken…",
|
||||
"searchShort": "Zoeken…"
|
||||
},
|
||||
"searchAnswer": "Zoek een optie",
|
||||
"seeIndex": "Zie het overzich van alle thematische kaarten",
|
||||
|
@ -603,7 +608,10 @@
|
|||
"uploading": "Je afbeelding wordt geüpload …"
|
||||
}
|
||||
},
|
||||
"uploadFailed": "Afbeelding uploaden mislukt. Heb je internet? Gebruik je Brave of UMatrix? Dan moet je derde partijen toelaten."
|
||||
"uploadFailed": "Afbeelding uploaden mislukt. Heb je internet? Gebruik je Brave of UMatrix? Dan moet je derde partijen toelaten.",
|
||||
"showAnyway": "Laat foto alsnog zien",
|
||||
"loadingFailed": "Afbeelding laden mislukt",
|
||||
"openOnWebsite": "Open deze afbeelding op {name}"
|
||||
},
|
||||
"importInspector": {
|
||||
"title": "Inspecteer en beheer importeer-notas"
|
||||
|
@ -854,5 +862,25 @@
|
|||
"empty": "Voer enkele wikidata-items in",
|
||||
"startsWithQ": "Een wikidata-identificator begint met Q gevolgd door een nummer"
|
||||
}
|
||||
},
|
||||
"inspector": {
|
||||
"createdBy": "Gemaakt door {contributor}",
|
||||
"tableView": "Overzicht",
|
||||
"previouslySpied": {
|
||||
"username": "Gebruikersnaam",
|
||||
"remove": "Verwijderen"
|
||||
},
|
||||
"mapView": "Kaart"
|
||||
},
|
||||
"copy": {
|
||||
"button": "Maak een kopie",
|
||||
"confirm": "Maak een kopie op de opgegeven locatie",
|
||||
"loading": "Kopie maken...",
|
||||
"title": "Maak een kopie"
|
||||
},
|
||||
"imageQueue": {
|
||||
"confirmDelete": "Deze foto permanent verwijderen",
|
||||
"confirmDeleteTitle": "Afbeelding verwijderen?",
|
||||
"delete": "Afbeelding verwijderen"
|
||||
}
|
||||
}
|
|
@ -1024,4 +1024,4 @@
|
|||
"shortDescription": "Un mapa amb papereres",
|
||||
"title": "Papepera"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -646,6 +646,13 @@
|
|||
"grb-reference": {
|
||||
"render": "Byl importován z GRB, referenční číslo je {source:geometry:ref}"
|
||||
}
|
||||
},
|
||||
"title": {
|
||||
"mappings": {
|
||||
"0": {
|
||||
"then": "Část budovy"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"1": {
|
||||
|
@ -1116,6 +1123,11 @@
|
|||
"override": {
|
||||
"name": "Obchody vhodné pro vstup se psy"
|
||||
}
|
||||
},
|
||||
"6": {
|
||||
"override": {
|
||||
"name=": "Místa s nápoji přátelská ke psům"
|
||||
}
|
||||
}
|
||||
},
|
||||
"title": "Veterináři, psí parky a další služby pro domácí zvířata"
|
||||
|
@ -1511,5 +1523,88 @@
|
|||
}
|
||||
},
|
||||
"title": "Zimní údržba"
|
||||
},
|
||||
"zhv": {
|
||||
"description": "Malé téma umožňující import zastávek autobusu z Zentrales Haltestellenverzeichnis v Německu.",
|
||||
"layers": {
|
||||
"0": {
|
||||
"tagRenderings": {
|
||||
"id": {
|
||||
"render": "ID této zastávky je {_ifopt}"
|
||||
},
|
||||
"import": {
|
||||
"render": {
|
||||
"special": {
|
||||
"text": "Přidat tuto zastávku"
|
||||
}
|
||||
}
|
||||
},
|
||||
"imported": {
|
||||
"render": "Tato zastávka už byla (pravděpodobně) přidána. <a href=#{_closest_osm_stop_id}>Zobrazit bod</a>."
|
||||
},
|
||||
"name": {
|
||||
"render": "Tato zastávka se jmenuje {Name}"
|
||||
},
|
||||
"tag-hint": {
|
||||
"render": "Tato zastávka získá následující štítky: <b>{_tags}</b>"
|
||||
},
|
||||
"closest_stop": {
|
||||
"render": "Nejbližší zastávky v OSM je <a href=#{_closest_osm_stop}>{_closest_osm_stop_name}</a>."
|
||||
}
|
||||
},
|
||||
"title": {
|
||||
"render": "Zastávka veřejné dopravy v ZHV"
|
||||
},
|
||||
"name": "Zastávky veřejné dopravy v ZHV"
|
||||
},
|
||||
"1": {
|
||||
"override": {
|
||||
"name": "Zastávky veřejné dopravy v OSM",
|
||||
"tagRenderings+": {
|
||||
"0": {
|
||||
"mappings": {
|
||||
"0": {
|
||||
"then": "Tato zastávka slouží pro autobusovou dopravu."
|
||||
},
|
||||
"2": {
|
||||
"then": "Tato zastávka slouží pro lehkou železnici."
|
||||
},
|
||||
"3": {
|
||||
"then": "Tato zastávka slouží pro metro."
|
||||
},
|
||||
"4": {
|
||||
"then": "Tato zastávka slouží pro tramvajovou dopravu."
|
||||
},
|
||||
"5": {
|
||||
"then": "Tato zastávka slouží pro přívoz nebo trajekt."
|
||||
},
|
||||
"1": {
|
||||
"then": "Tato zastávka slouží pro vlakovou dopravu."
|
||||
}
|
||||
},
|
||||
"question": "Pro jaké druhy dopravy se tato zastávka používá?"
|
||||
},
|
||||
"1": {
|
||||
"freeform": {
|
||||
"placeholder": "např. NL:Q:15003950 nebo de:03457:15801::2"
|
||||
},
|
||||
"question": "Jaká je reference IFOPT této zastávky?",
|
||||
"render": "Reference IFOPT této zastávky je {ref:IFOPT}."
|
||||
},
|
||||
"2": {
|
||||
"render": "Poblíž je zastávka ZHV: <a href=#{_closest_zhv_stop_id}>{_closest_zhv_stop_name}</a>."
|
||||
},
|
||||
"3": {
|
||||
"render": {
|
||||
"special": {
|
||||
"message": "Přidat k této zastávce IFOPT"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"title": "Nástroj importu ZHV"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1517,4 +1517,4 @@
|
|||
},
|
||||
"title": "Vinterservice"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1398,4 +1398,4 @@
|
|||
"shortDescription": "Eine Karte mit Abfalleimern",
|
||||
"title": "Abfalleimer"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1342,4 +1342,4 @@
|
|||
"shortDescription": "Un mapa con papeleras",
|
||||
"title": "Papeleras"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1107,4 +1107,4 @@
|
|||
"shortDescription": "Une carte des poubelles",
|
||||
"title": "Poubelles"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -487,4 +487,4 @@
|
|||
"shortDescription": "Szemeteskosarakat ábrázoló térkép",
|
||||
"title": "Kukatérkép"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1476,4 +1476,4 @@
|
|||
},
|
||||
"title": "Servizio Invernale"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1328,4 +1328,4 @@
|
|||
"shortDescription": "쓰레기통 지도",
|
||||
"title": "쓰레기통"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -519,4 +519,4 @@
|
|||
"shortDescription": "Oversikt over søppelkurver",
|
||||
"title": "Søppelkurv"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -634,37 +634,8 @@
|
|||
"building type": {
|
||||
"question": "Wat voor soort gebouw is dit?"
|
||||
},
|
||||
"grb-fixme": {
|
||||
"mappings": {
|
||||
"0": {
|
||||
"then": "Geen fixme"
|
||||
}
|
||||
},
|
||||
"question": "Wat zegt de fixme?",
|
||||
"render": "De fixme is <b>{fixme}</b>"
|
||||
},
|
||||
"grb-housenumber": {
|
||||
"mappings": {
|
||||
"0": {
|
||||
"then": "Geen huisnummer"
|
||||
}
|
||||
},
|
||||
"question": "Wat is het huisnummer?",
|
||||
"render": "Het huisnummer is <b>{addr:housenumber}</b>"
|
||||
},
|
||||
"grb-min-level": {
|
||||
"question": "Hoeveel verdiepingen ontbreken?",
|
||||
"render": "Dit gebouw begint maar op de {building:min_level} verdieping"
|
||||
},
|
||||
"grb-reference": {
|
||||
"render": "Werd geïmporteerd vanuit GRB, het referentienummer is {source:geometry:ref}"
|
||||
},
|
||||
"grb-street": {
|
||||
"question": "Wat is de straat?",
|
||||
"render": "De straat is <b>{addr:street}</b>"
|
||||
},
|
||||
"grb-unit": {
|
||||
"render": "De wooneenheid-aanduiding is <b>{addr:unit}</b> "
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -706,9 +677,7 @@
|
|||
"render": "Link op profiel verplicht"
|
||||
}
|
||||
}
|
||||
},
|
||||
"shortDescription": "Grb import helper tool",
|
||||
"title": "GRB import helper"
|
||||
}
|
||||
},
|
||||
"guideposts": {
|
||||
"description": "Wegwijzers (ook wel handwijzer genoemd) zijn vaak te vinden langs officiële wandel-, fiets-, ski- of paardrijroutes om de richtingen naar verschillende bestemmingen aan te geven. Vaak zijn ze vernoemd naar een regio of plaats en geven ze de hoogte aan.\n\nDe positie van een wegwijzer kan door een wandelaar/fietser/renner/skiër worden gebruikt als bevestiging van de huidige positie, vooral als ze een gedrukte kaart zonder GPS-ontvanger gebruiken. ",
|
||||
|
@ -1107,11 +1076,6 @@
|
|||
},
|
||||
"title": "Dierenartsen, hondenloopzones en andere huisdiervriendelijke plaatsen"
|
||||
},
|
||||
"play_forests": {
|
||||
"description": "Een speelbos is een zone in een bos die vrij toegankelijk is voor spelende kinderen. Deze wordt in bossen van het Agentschap Natuur en bos altijd aangeduid met het overeenkomstige bord.",
|
||||
"shortDescription": "Deze kaart toont speelbossen",
|
||||
"title": "Speelbossen"
|
||||
},
|
||||
"playgrounds": {
|
||||
"description": "Op deze kaart vind je speeltuinen en kan je zelf meer informatie en foto's toevoegen",
|
||||
"shortDescription": "Een kaart met speeltuinen",
|
||||
|
@ -1185,47 +1149,6 @@
|
|||
"description": "Alles om te skiën",
|
||||
"title": "Skipistes en kabelbanen"
|
||||
},
|
||||
"speelplekken": {
|
||||
"description": "<h3>Welkom bij de Groendoener!</h3>De Zuidrand dat is spelen, ravotten, chillen, wandelen,… in het groen. Meer dan <b>200 grote en kleine speelplekken</b> liggen er in parken, in bossen en op pleintjes te wachten om ontdekt te worden. De verschillende speelplekken werden getest én goedgekeurd door kinder- en jongerenreporters uit de Zuidrand. Met leuke challenges dagen de reporters jou uit om ook op ontdekking te gaan. Klik op een speelplek op de kaart, bekijk het filmpje en ga op verkenning!<br/><br/>Het project groendoener kadert binnen het strategisch project <a href='https://www.provincieantwerpen.be/aanbod/dlm/samenwerkingsverbanden/zuidrand/projecten/strategisch-project-beleefbare-open-ruimte.html' target='_blank'>Beleefbare Open Ruimte in de Antwerpse Zuidrand</a> en is een samenwerking tussen het departement Leefmilieu van provincie Antwerpen, Sportpret vzw, een OpenStreetMap-België Consultent en Createlli vzw. Het project kwam tot stand met steun van Departement Omgeving van de Vlaamse Overheid.<br/><img class='h-32 w-fit' src='./assets/themes/speelplekken/provincie_antwerpen.jpg'/><img class='h-32 w-fit' src='./assets/themes/speelplekken/Departement_Omgeving_Vlaanderen.png'/>",
|
||||
"layers": {
|
||||
"6": {
|
||||
"name": "Wandelroutes van provincie Antwerpen",
|
||||
"tagRenderings": {
|
||||
"walk-description": {
|
||||
"render": "<h3>Korte beschrijving:</h3>{description}"
|
||||
},
|
||||
"walk-length": {
|
||||
"render": "Deze wandeling is <b>{_length:km}km</b> lang"
|
||||
},
|
||||
"walk-operator": {
|
||||
"question": "Wie beheert deze wandeling en plaatst dus de signalisatiebordjes?"
|
||||
},
|
||||
"walk-operator-email": {
|
||||
"question": "Naar wie kan men emailen bij problemen rond signalisatie?",
|
||||
"render": "Bij problemen met signalisatie kan men emailen naar <a href='mailto:{operator:email}'>{operator:email}</a>"
|
||||
},
|
||||
"walk-type": {
|
||||
"mappings": {
|
||||
"0": {
|
||||
"then": "Dit is een internationale wandelroute"
|
||||
},
|
||||
"1": {
|
||||
"then": "Dit is een nationale wandelroute"
|
||||
},
|
||||
"2": {
|
||||
"then": "Dit is een regionale wandelroute"
|
||||
},
|
||||
"3": {
|
||||
"then": "Dit is een lokale wandelroute"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"shortDescription": "Speelplekken in de Antwerpse Zuidrand",
|
||||
"title": "Welkom bij de groendoener!"
|
||||
},
|
||||
"sport_pitches": {
|
||||
"description": "Een sportveld is een ingerichte plaats met infrastructuur om een sport te beoefenen",
|
||||
"shortDescription": "Deze kaart toont sportvelden",
|
||||
|
@ -1344,10 +1267,6 @@
|
|||
},
|
||||
"title": "Straatverlichting"
|
||||
},
|
||||
"street_lighting_assen": {
|
||||
"description": "Op deze kaart vind je alles over straatlantaarns + een dataset van Assen",
|
||||
"title": "Straatverlichting - Assen"
|
||||
},
|
||||
"surveillance": {
|
||||
"description": "Op deze open kaart kan je bewakingscamera's vinden.",
|
||||
"shortDescription": "Bewakingscameras en dergelijke",
|
||||
|
@ -1461,13 +1380,9 @@
|
|||
"description": "Kaart met afvalbakken en recyclingfaciliteiten.",
|
||||
"title": "Afval"
|
||||
},
|
||||
"waste_assen": {
|
||||
"description": "Kaart met afvalbakken en recyclingfaciliteiten + een dataset voor Assen.",
|
||||
"title": "Afval - Assen"
|
||||
},
|
||||
"waste_basket": {
|
||||
"description": "Op deze kaart vind je afvalbakken bij jou in de buurt. Als er een afvalbak ontbreekt op deze kaart, kun je deze zelf toevoegen",
|
||||
"shortDescription": "Een kaart met vuilnisbakken",
|
||||
"title": "Vuilnisbakken"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -194,4 +194,4 @@
|
|||
"waste_basket": {
|
||||
"title": "کوڑے دی ٹوکری"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -980,4 +980,4 @@
|
|||
"shortDescription": "Mapa koszy na śmieci",
|
||||
"title": "Kosz na śmieci"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -276,4 +276,4 @@
|
|||
"waste_basket": {
|
||||
"title": "Корзины для мусора"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -358,13 +358,43 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"2": {
|
||||
"override": {
|
||||
"name": "Велосипедні дороговкази",
|
||||
"title": {
|
||||
"render": "Велосипедний дороговказ"
|
||||
}
|
||||
}
|
||||
},
|
||||
"4": {
|
||||
"override": {
|
||||
"presets": {
|
||||
"0": {
|
||||
"title": "маркер маршруту для зв'язку між вузлами"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"cyclestreets": {
|
||||
"description": "Велодорога — це шлях, на якому <b>моторизованому транспорту заборонено обганяти велосипедистів</b>. Вони позначені спеціальним дорожнім знаком. Велодоріжки можна знайти в Нідерландах і Бельгії, а також у Німеччині та Франції. ",
|
||||
"shortDescription": "Мапа велодоріжок",
|
||||
"title": "Велодоріжки"
|
||||
"title": "Велодоріжки",
|
||||
"layers": {
|
||||
"1": {
|
||||
"title": {
|
||||
"mappings": {
|
||||
"0": {
|
||||
"then": "{name} скоро стане велосипедною доріжкою"
|
||||
}
|
||||
}
|
||||
},
|
||||
"name": "Майбутня велодоріжка",
|
||||
"description": "Ця вулиця незабаром стане велосипедною доріжкою"
|
||||
}
|
||||
}
|
||||
},
|
||||
"cyclofix": {
|
||||
"description": "Мапа, на якій велосипедисти можуть знайти відповідну інфраструктуру для своїх потреб, наприклад, велосипедні насоси, питну воду, веломагазини, ремонтні станції або парковки.",
|
||||
|
@ -647,4 +677,4 @@
|
|||
"description": "Ця мапа показує святині та хрести, знайдені на узбіччях доріг і стежок, а також дозволяє додавати нові",
|
||||
"title": "Придорожні святині"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1512,4 +1512,4 @@
|
|||
},
|
||||
"title": "冬季服務"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -756,7 +756,10 @@
|
|||
"rated": "Рейтинг {n} зірок",
|
||||
"reviewPlaceholder": "Опишіть свій досвід…",
|
||||
"save": "Зберегти відгук",
|
||||
"saved": "Відгук збережено. Дякуємо, що поділилися!"
|
||||
"saved": "Відгук збережено. Дякуємо, що поділилися!",
|
||||
"your_reviews_empty": "Ми не змогли знайти жодного з ваших попередніх відгуків",
|
||||
"your_reviews": "Ваші попередні відгуки",
|
||||
"reviews_bug": "Очікували більше відгуків? Деякі відгуки не відображаються через помилку."
|
||||
},
|
||||
"split": {
|
||||
"inviteToSplit": "Розділіть цю дорогу на менші сегменти. Це дозволяє надати різним частинам дороги різні властивості."
|
||||
|
@ -780,5 +783,23 @@
|
|||
"description": "посилання на веб-сайт",
|
||||
"spamSite": "{host} вважається неякісним веб-сайтом. Використання цього веб-сайту заборонено."
|
||||
}
|
||||
},
|
||||
"app": {
|
||||
"legacyExplanation": "Через обмеження Google неможливо скомпілювати ідентичний APK для нових і старих версій Android.\nЯкщо установка через F-Droid, Google Play, Obtainium або установка «останньої» версії вище не вдалася, спробуйте версії для старих версій Android, які доступні нижче.",
|
||||
"legacyHeader": "Збірки для старих телефонів Android",
|
||||
"downloadOnFDroid": "Завантажити MapComplete з F-Droid",
|
||||
"getOnObtanium": "Отримати Obtainium",
|
||||
"noPlayServices": "Додаток працює без Google Play Services",
|
||||
"back": "Повернутися до MapComplete",
|
||||
"download": "Завантажити додаток",
|
||||
"intro": "MapComplete доступний як додаток для Android, який можна завантажити безпосередньо. Ми працюємо над тим, щоб опублікувати його також у FDroid.",
|
||||
"older": "Переглянути старіші версії",
|
||||
"title": "Додаток MapComplete для Android"
|
||||
},
|
||||
"copy": {
|
||||
"confirm": "Створити копію у вказаному місці",
|
||||
"intro": "Створення копії призведе до створення нового POI на карті з тими самими властивостями, що й поточний об'єкт.",
|
||||
"loading": "Створення копії...",
|
||||
"button": "Створити копію"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,11 +7,12 @@
|
|||
"download": "下載應用程式",
|
||||
"downloadOnFDroid": "在 F-Droid 下載 MapComplete",
|
||||
"getOnObtanium": "從 Obtainium 取得",
|
||||
"legacyExplanation": "由於Google的限制,並無法為更新與更舊的Android編譯相同的APK\n 版本。\n\n 如果你透過F-Droid、Google Play、Obtainium或是安裝「最新」的版本失敗,\n 請為其他較舊Android版本使用其他版本。",
|
||||
"legacyHeader": "為較舊Android手機建構",
|
||||
"intro": "MapComplete可以在Android App直接下載。我們也計畫在Fdroid發佈。",
|
||||
"noPlayServices": "本應用無需 Google Play 服務即可運行",
|
||||
"older": "檢視較舊的軟體構建",
|
||||
"title": "MapComplete Android 應用"
|
||||
"title": "MapComplete Android 應用",
|
||||
"legacyHeader": "為較舊Android手機建構",
|
||||
"legacyExplanation": "由於Google的限制,並無法為更新與更舊的Android編譯相同的APK版本。\n\n如果你透過F-Droid、Google Play、Obtainium或是安裝「最新」的版本失敗,請為其他較舊Android版本使用其他版本。"
|
||||
},
|
||||
"centerMessage": {
|
||||
"allFilteredAway": "檢視畫面當中沒有滿足過瀘條件的圖徵",
|
||||
|
@ -947,4 +948,4 @@
|
|||
"startsWithQ": "維基數據編號以 Q 開頭後面接數字"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -9,12 +9,14 @@ class PrepareServiceWorker extends Script {
|
|||
|
||||
public async main() {
|
||||
const v = Constants.vNumber
|
||||
const date = new Date().getTime()
|
||||
writeFileSync(
|
||||
"./src/service-worker/SWGenerated.ts",
|
||||
[
|
||||
"export class SWGenerated {",
|
||||
"// generated by scripts/prepareServiceWorker.ts",
|
||||
"static vNumber = " + JSON.stringify(v),
|
||||
"static buildTime = " + date,
|
||||
"}",
|
||||
].join("\n"),
|
||||
"utf8"
|
||||
|
|
|
@ -3,9 +3,13 @@
|
|||
import { fade } from "svelte/transition"
|
||||
import { OsmConnection } from "../../Logic/Osm/OsmConnection"
|
||||
import { onDestroy } from "svelte"
|
||||
import If from "../Base/If.svelte"
|
||||
import type { Store } from "../../Logic/UIEventSource"
|
||||
import Translations from "../i18n/Translations"
|
||||
import Tr from "../Base/Tr.svelte"
|
||||
|
||||
let open = false
|
||||
export let state: { osmConnection: OsmConnection }
|
||||
export let state: { osmConnection: OsmConnection, featureSwitches: { featureSwitchEnableLogin: Store<boolean> } }
|
||||
let userdetails = state.osmConnection.userDetails
|
||||
let username = userdetails.mapD((ud) => ud.name, onDestroy)
|
||||
username.addCallbackAndRunD((ud) => {
|
||||
|
@ -18,25 +22,28 @@
|
|||
})
|
||||
</script>
|
||||
|
||||
<Popover
|
||||
class="mt-4 hidden sm:block"
|
||||
defaultClass="py-2 px-3 w-fit "
|
||||
trigger="null"
|
||||
placement="bottom"
|
||||
transition={(e) => fade(e, { duration: 150 })}
|
||||
bind:open
|
||||
>
|
||||
{#if $username !== undefined}
|
||||
<div style="width: max-content" class="flex items-center">
|
||||
{#if $userdetails.img}
|
||||
<img src={$userdetails.img} alt="avatar" class="mr-4 h-10 w-10 rounded-full" />
|
||||
{/if}
|
||||
<div>
|
||||
<div>Welcome back</div>
|
||||
<div class="normal-background" style="width: max-content">
|
||||
<b>{$username}</b>
|
||||
<If condition={state.featureSwitches.featureSwitchEnableLogin}>
|
||||
|
||||
<Popover
|
||||
class="mt-4 hidden sm:block"
|
||||
defaultClass="py-2 px-3 w-fit "
|
||||
trigger="null"
|
||||
placement="bottom"
|
||||
transition={(e) => fade(e, { duration: 150 })}
|
||||
bind:open
|
||||
>
|
||||
{#if $username !== undefined}
|
||||
<div style="width: max-content" class="flex items-center">
|
||||
{#if $userdetails.img}
|
||||
<img src={$userdetails.img} alt="avatar" class="mr-4 h-10 w-10 rounded-full" />
|
||||
{/if}
|
||||
<div>
|
||||
<Tr t={Translations.t.general.welcomeBack}/>
|
||||
<div class="normal-background" style="width: max-content">
|
||||
<b>{$username}</b>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{/if}
|
||||
</Popover>
|
||||
{/if}
|
||||
</Popover>
|
||||
</If>
|
||||
|
|
|
@ -56,9 +56,6 @@
|
|||
if (schema.type === "boolean") {
|
||||
rendervalue = undefined
|
||||
}
|
||||
if (schema.hints.typehint === "tag" || schema.hints.typehint === "simple_tag") {
|
||||
rendervalue = "{tags()}"
|
||||
}
|
||||
|
||||
let helperArgs = schema.hints.typehelper?.split(",")
|
||||
let inline = schema.hints.inline !== undefined
|
||||
|
|
34
src/Utils.ts
34
src/Utils.ts
|
@ -424,23 +424,27 @@ In the case that MapComplete is pointed to the testing grounds, the edit will be
|
|||
v = date.toISOString()
|
||||
}
|
||||
|
||||
if (useLang !== undefined && v?.translations !== undefined) {
|
||||
v = v.translations[useLang] ?? v.translations["*"] ?? v?.textFor(useLang) ?? v
|
||||
}
|
||||
|
||||
if (v.InnerConstructElement !== undefined) {
|
||||
console.warn(
|
||||
"SubstituteKeys received a BaseUIElement to substitute in - this is probably a bug and will be downcast to a string\nThe key is",
|
||||
key,
|
||||
"\nThe value is",
|
||||
v
|
||||
)
|
||||
v = v.InnerConstructElement()?.textContent
|
||||
}
|
||||
|
||||
if (typeof v !== "string") {
|
||||
v = "" + v
|
||||
if (v["asHumanString"]) {
|
||||
v = v.asHumanString(true, false)
|
||||
} else if (useLang !== undefined && v?.translations !== undefined) {
|
||||
v = v.translations[useLang] ?? v.translations["*"] ?? v?.textFor(useLang) ?? v
|
||||
} else if (v.InnerConstructElement !== undefined) {
|
||||
console.warn(
|
||||
"SubstituteKeys received a BaseUIElement to substitute in - this is probably a bug and will be downcast to a string\nThe key is",
|
||||
key,
|
||||
"\nThe value is",
|
||||
v
|
||||
)
|
||||
v = v.InnerConstructElement()?.textContent
|
||||
} else if (typeof v === "object") {
|
||||
v = JSON.stringify(v)
|
||||
} else{
|
||||
v = "" + v
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
v = v.replace(/\n/g, "<br/>")
|
||||
} else {
|
||||
// v === undefined
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
export class SWGenerated {
|
||||
// generated by scripts/prepareServiceWorker.ts
|
||||
static vNumber = "0.55.4"
|
||||
}
|
||||
// generated by scripts/prepareServiceWorker.ts
|
||||
static vNumber = "0.55.5"
|
||||
static buildTime = 1756119249268
|
||||
}
|
|
@ -17,9 +17,27 @@ function jsonResponse(object: object | []): Response {
|
|||
})
|
||||
}
|
||||
|
||||
const cacheKey = SWGenerated.vNumber + "-" + SWGenerated.vNumber
|
||||
|
||||
function cleanOldCaches() {
|
||||
caches.keys().then(keys => {
|
||||
return Promise.all(
|
||||
keys.map(k => {
|
||||
if (k !== cacheKey) {
|
||||
return caches.delete(k)
|
||||
}
|
||||
})
|
||||
)
|
||||
})
|
||||
}
|
||||
|
||||
function getCache() {
|
||||
return caches.open(cacheKey)
|
||||
}
|
||||
|
||||
function respondFromCache(event: FetchEvent) {
|
||||
event.respondWith(
|
||||
caches.open(SWGenerated.vNumber).then(async (cache) => {
|
||||
getCache().then(async (cache) => {
|
||||
const cached = await cache.match(event.request)
|
||||
if (!cached) {
|
||||
const response = await fetch(event.request)
|
||||
|
@ -32,7 +50,7 @@ function respondFromCache(event: FetchEvent) {
|
|||
}
|
||||
|
||||
async function listCachedRequests(): Promise<string[]> {
|
||||
const cache = await caches.open(SWGenerated.vNumber)
|
||||
const cache = await getCache()
|
||||
const requests = await cache.keys()
|
||||
return requests.map((req) => req.url)
|
||||
}
|
||||
|
@ -107,7 +125,10 @@ self.addEventListener("fetch", (event) => {
|
|||
}
|
||||
})
|
||||
|
||||
self.addEventListener("install", () => self.skipWaiting())
|
||||
self.addEventListener("install", async () => {
|
||||
await self.skipWaiting()
|
||||
cleanOldCaches()
|
||||
})
|
||||
self.addEventListener("activate", (event) => {
|
||||
event.waitUntil(self.clients.claim())
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue