diff --git a/UI/AllThemesGui.ts b/UI/AllThemesGui.ts index 68cb52ddb3..0724aecb70 100644 --- a/UI/AllThemesGui.ts +++ b/UI/AllThemesGui.ts @@ -10,7 +10,6 @@ import IndexText from "./BigComponents/IndexText" import FeaturedMessage from "./BigComponents/FeaturedMessage" import { ImportViewerLinks } from "./BigComponents/UserInformation" import { LoginToggle } from "./Popup/LoginButton" -import UserSurveyPanel from "./UserSurveyPanel" export default class AllThemesGui { setup() { @@ -26,7 +25,6 @@ export default class AllThemesGui { new Combine([ intro, new FeaturedMessage().SetClass("mb-4 block"), - new Combine([new UserSurveyPanel()]).SetClass("flex justify-center"), new MoreScreen(state, true), new LoginToggle(undefined, Translations.t.index.logIn, state), new ImportViewerLinks(state.osmConnection), diff --git a/UI/BigComponents/ThemeIntroductionPanel.ts b/UI/BigComponents/ThemeIntroductionPanel.ts index 319a3cc42e..1fc2f35abb 100644 --- a/UI/BigComponents/ThemeIntroductionPanel.ts +++ b/UI/BigComponents/ThemeIntroductionPanel.ts @@ -5,15 +5,12 @@ import Toggle from "../Input/Toggle" import { SubtleButton } from "../Base/SubtleButton" import { Store, UIEventSource } from "../../Logic/UIEventSource" import { LoginToggle } from "../Popup/LoginButton" -import Svg from "../../Svg" import LayoutConfig from "../../Models/ThemeConfig/LayoutConfig" import { OsmConnection } from "../../Logic/Osm/OsmConnection" -import FullWelcomePaneWithTabs from "./FullWelcomePaneWithTabs" import LoggedInUserIndicator from "../LoggedInUserIndicator" import { ActionButtons } from "./ActionButtons" import { BBox } from "../../Logic/BBox" import Loc from "../../Models/Loc" -import UserSurveyPanel from "../UserSurveyPanel" export default class ThemeIntroductionPanel extends Combine { constructor( @@ -70,7 +67,6 @@ export default class ThemeIntroductionPanel extends Combine { const hasPresets = layout.layers.some((l) => l.presets?.length > 0) super([ layout.description.Clone().SetClass("block mb-4"), - new UserSurveyPanel(), new Combine([ t.welcomeExplanation.general, hasPresets diff --git a/UI/UserSurveyPanel.ts b/UI/UserSurveyPanel.ts deleted file mode 100644 index 9925895614..0000000000 --- a/UI/UserSurveyPanel.ts +++ /dev/null @@ -1,50 +0,0 @@ -import Combine from "./Base/Combine" -import { FixedUiElement } from "./Base/FixedUiElement" -import { SubtleButton } from "./Base/SubtleButton" -import Svg from "../Svg" -import { LocalStorageSource } from "../Logic/Web/LocalStorageSource" -import Toggle from "./Input/Toggle" - -export default class UserSurveyPanel extends Toggle { - private static readonly userSurveyHasBeenTaken = LocalStorageSource.GetParsed( - "usersurvey-has-been-taken", - false - ) - - constructor() { - super( - new Combine([ - new FixedUiElement("Thanks for taking the survey!").SetClass("thanks px-2"), - new SubtleButton(Svg.star_svg(), "Take the user survey again", { - imgSize: "h-6 w-6", - }) - .onClick(() => { - window.open( - "https://framaforms.org/mapcomplete-usage-survey-1672687708", - "_blank" - ) - UserSurveyPanel.userSurveyHasBeenTaken.setData(false) - }) - .SetClass("h-12"), - ]), - new Combine([ - new FixedUiElement("Please, fill in the user survey").SetClass("alert"), - "Hey! We'd like to get to know you better - would you mind to help out by filling out this form? Your opinion is important", - new FixedUiElement( - "We are specifically searching responses from underrepresented groups, such as non-technical people, minorities, women, people without an account, people of colour, ..." - ).SetClass("font-bold"), - "Results are fully anonymous and are used to improve MapComplete. We don't ask private information. So, don't hesitate and fill it out!", - new SubtleButton(Svg.star_outline_svg(), "Take the survey").onClick(() => { - window.open( - "https://framaforms.org/mapcomplete-usage-survey-1672687708", - "_blank" - ) - UserSurveyPanel.userSurveyHasBeenTaken.setData(true) - }), - ]).SetClass("block border-2 border-black rounded-xl flex flex-col p-2"), - UserSurveyPanel.userSurveyHasBeenTaken - ) - - this.SetStyle("max-width: 40rem") - } -} diff --git a/langs/ca.json b/langs/ca.json index 3e35b834dc..aed853753f 100644 --- a/langs/ca.json +++ b/langs/ca.json @@ -44,21 +44,35 @@ "cyclofix": "A CycloFix hi han mManxes, estacions de reparacions, fonts d'aigua i botigues per a ciclistes", "description": "Un full de mà A4-apaisat per a promocionar MapComplete", "fakeui": { - "add_images": "Afegeix imatges amb pocs clics" - } + "add_images": "Afegeix imatges amb pocs clics", + "see_images": "Mostra imatges de contribuïdors anteriors, Wikipedia, Mapillary, ... ", + "wikipedia": "Es mostren articles de Wikipedia enllaçats", + "attributes": "Mostra els atributs d'una manera amigable", + "edit": "Informació incorrecta o desactualitzada? El botó d'editar està just aquí", + "question": "Si encara no es coneix cap atribut, MapCpomplete mostrarà una pregunta" + }, + "mapcomplete": { + "li0": "Mostra on estan els PDI", + "li1": "Afegeix nous punts i actualitza informació dels existents", + "li2": "Afegeix informació de contacte i hores d'apertura fàcilment", + "title": "Que és MapComplete?" + }, + "title": "MapComplete.osm.be", + "whatIsOsm": "Que és OpenStreetMap?", + "examples": "Hi han molts mapes temàtics disponibles, el quals alguns estan disponibles aquí.\n\nHi han molts mapes temàtics en línea: sobre salut, navegació interior, accessibilitat per a cadires de rodes, instal·lacions per a residus, prestageries públiques, creuaments per vianants pitnats amb l'arc de Sant Martí, ... Descobreix-los tots a mapcomplete.osm.be" }, "general": { "about": "Edita facilment i afegeix punts a OpenStreetMap d'una petició determinada", - "aboutMapcomplete": "

Sobre MapComplete

Usa-ho per afegir informació a OpenStreetMap amb una petició. Respon preguntes i en minuts les teves contribucions estaran disponibles arreu. La persona gestionadora defineix elements, preguntes i idiomes per a fer-ho possible.

Troba més info

MapComplete sempre ofereix el següent pas per aprendre'n més sobre OpenStreetMap.


Has trobat alguna incidència? Tens alguna petició ? Vols ajudar a traduir? Vés a per accedir al codi font o al registre d'incidències.

Vols veure els teus progressos ? Segueix el recompte d'edicions a OsmCha.

", + "aboutMapcomplete": "

Sobre

Utilitza MapCompelte per afegir informació a OpenStreetMap amb una petició. Respon preguntes i en minuts les teves contribucions estaran disponibles arreu. En molts temes pots afegir fotografies o fins i tot afegeix \"reviews\". La persona gestionadora defineix elements, preguntes i idiomes per a fer-ho possible.

Troba més info

MapComplete sempre ofereix el següent pas per aprendre'n més sobre OpenStreetMap.


Has trobat alguna incidència? Tens alguna petició ? Vols ajudar a traduir? Vés a per accedir al codi font o al registre d'incidències.

Vols veure els teus progressos ? Segueix el recompte d'edicions a OsmCha.

", "add": { "addNew": "Afegir {category} aquí", "addNewMapLabel": "Afegir nou element", "backToSelect": "Selecciona una categoria diferent", "confirmButton": "Afegir una {category}
La teva atribució és visible per a tots
", - "confirmIntro": "

Afegir {title} aquí?

El punt que estàs creant el veurà tothom. Només afegeix coses que realment existeixin. Moltes aplicacions fan servir aquestes dades.", + "confirmIntro": "

Afegir {title} aquí?

L'element que estàs creant el veurà tothom. Només afegeix coses que realment existeixen. Moltes aplicacions fan servir aquestes dades.", "disableFilters": "Deshabilitar tots els filtres", "disableFiltersExplanation": "Alguns elements s'amagaran en passar un filtre", - "hasBeenImported": "Aquest punt ja ha estat importat", + "hasBeenImported": "Aquest element ja ha estat importat", "import": { "hasBeenImported": "Aquest objecte ha estat importat", "howToTest": "Per provar, afegeix test=true o backend=osm-test a l'URL. El conjunt de canvis s'imprimirà a la consola. Obre un PR per oficialitzar aquesta petició per activar realment el botó d'importació.", @@ -69,15 +83,15 @@ }, "importTags": "L'element rebrà {tags}", "intro": "Has marcat un lloc on no coneixem les dades.
", - "layerNotEnabled": "La capa {layer} no està habilitada. Fes-ho per poder afegir un punt a aquesta capa", + "layerNotEnabled": "La capa {layer} no està habilitada. Fes-ho per poder afegir un element a aquesta capa", "openLayerControl": "Obrir el control de capes", - "pleaseLogin": "Entra per afegir un nou punt", + "pleaseLogin": "Entra per afegir un nou element", "presetInfo": "El nou PDI tindrà les etiquetes {tags}", - "stillLoading": "Les dades es segueixen carregant. Espera una mica abans d'afegir cap punt.", - "title": "Vols afegir un punt?", + "stillLoading": "Les dades es segueixen carregant. Espera una mica abans d'afegir cap element.", + "title": "Vols afegir un element?", "warnVisibleForEveryone": "La teva contribució serà vista per tothom", "wrongType": "Aquest element no és un punt o una via i no pot ser importat", - "zoomInFurther": "Apropa per afegir un punt.", + "zoomInFurther": "Apropa per afegir un element.", "zoomInMore": "Ampliar per importar aquest element" }, "apply_button": { @@ -136,7 +150,7 @@ "example": "Exemple", "examples": "Exemples", "feelFreeToSkip": "Podeu afegir més informació a sota, però sentiu-vos lliures de botar preguntes que no conegueu la resposta.", - "fewChangesBefore": "Contesta unes quantes preguntes sobre punts existents abans d'afegir-ne un de nou.", + "fewChangesBefore": "Contesta unes quantes preguntes sobre elements existents abans d'afegir-ne un de nou.", "getStartedLogin": "Entra a OpenStreetMap per començar", "getStartedNewAccount": " o crea un nou compte", "goToInbox": "Obrir missatges", @@ -150,7 +164,7 @@ "loading": "Carregant…", "loadingTheme": "Carregant {theme}…", "loginFailed": "Ha fallat l'entrada a OpenStreetMap", - "loginOnlyNeededToEdit": "Si vols ajudar a editar el mapa", + "loginOnlyNeededToEdit": "Si voleu fer canvis", "loginToStart": "Entra per contestar aquesta pregunta", "loginWithOpenStreetMap": "Entrar a OpenStreetMap", "logout": "Sortir", @@ -161,7 +175,9 @@ "noMatchingThemes": "Cap tema coincideix amb els teus criteris de cerca", "previouslyHiddenTitle": "Peticions visitades i amagades", "requestATheme": "Si vols que et fem una petició pròpia , demana-la al registre d'incidències", - "streetcomplete": "Una altra aplicació similar és StreetComplete." + "streetcomplete": "Una altra aplicació similar és StreetComplete.", + "noSearch": "Mostra tots els temes", + "searchForATheme": "Busca un tema" }, "nameInlineQuestion": "{category}: El seu nom és $$$", "newlyCreated": "Acabeu de crear aquest element! Gràcies per compartir aquesta informació amb el mon i ajudar a persones al voltant del món.", @@ -204,7 +220,7 @@ "websiteIs": "Pàgina web: {website}", "websiteOf": "Quina és la pàgina web de {category}?" }, - "readYourMessages": "Llegeix tots els teus missatges d'OpenStreetMap abans d'afegir nous punts.", + "readYourMessages": "Per favor, llegeix tots els teus missatges d'OpenStreetMap abans d'afegir nous punts.", "removeLocationHistory": "Esborrar l'historial d'ubicació", "returnToTheMap": "Tornar al mapa", "save": "Desar", @@ -232,7 +248,9 @@ "fsUserbadge": "Activar el botó d'entrada", "fsWelcomeMessage": "Mostra el missatge emergent de benvinguda i pestanyes associades", "intro": "

Comparteix aquest mapa

Comparteix aquest mapa copiant l'enllaç de sota i enviant-lo a amics i família:", - "thanksForSharing": "Gràcies per compartir!" + "thanksForSharing": "Gràcies per compartir!", + "downloadCustomThemeHelp": "Un contribuïdor amb experiència pot utilitzar un arxiu per a millorar el vostre tema", + "downloadCustomTheme": "Descarrega la configuració per a aquest tema" }, "skip": "Saltar aquesta pregunta", "skippedQuestions": "Has ignorat algunes preguntes", @@ -273,7 +291,20 @@ }, "searchWikidata": "Cercar a Wikidata", "wikipediaboxTitle": "Viquipèdia" - } + }, + "levelSelection": { + "addNewOnLevel": "El nou punt està localitzat al nivell {level}?", + "confirmLevel": "Si, afegeix {preset} al nivell {level}" + }, + "error": "Algo ha anat mal", + "loginFailedOfflineMode": "Actualment OpenStreetMap.org no està disponible a causa d'un manteniment. Prompte serà possible fer edicions", + "uploadGpx": { + "meta": { + "title": "Títol i descripció", + "intro": "Afegeix un títol per a la teua traça:" + } + }, + "notValid": "Selecciona un valor vàlid per a continuar" }, "hotkeyDocumentation": { "title": "Dreceres" diff --git a/langs/de.json b/langs/de.json index 4dea3efc53..7dbedbd150 100644 --- a/langs/de.json +++ b/langs/de.json @@ -137,7 +137,7 @@ "openIssueTracker": "Fehler melden", "openMapillary": "Mapillary öffnen", "openOsmcha": "Letzte Bearbeitungen zum Thema {theme} ansehen", - "themeBy": "Thema betreut von {author}", + "themeBy": "Dieses Thema wurde erstellt von {author}", "translatedBy": "MapComplete wurde übersetzt von {contributors} und {hiddenCount} weiteren Personen" }, "back": "Zurück", diff --git a/langs/nl.json b/langs/nl.json index e3a0d52f44..4ca58aed98 100644 --- a/langs/nl.json +++ b/langs/nl.json @@ -53,7 +53,7 @@ "fakeui": { "add_images": "Voeg foto's toe met een paar klikken", "attributes": "Attributen worden getoond op begrijpbare wijze", - "edit": "Foute of verouderde gegevens? Aanpassen kan hier", + "edit": "Foute of verouderde gegevens? Aanpassen kan hier.", "question": "Is een attribuut nog niet gekend?\nMapComplete toont een vraag", "see_images": "Toont afbeeldingen van eerdere bijdragers, Wikipedia, Mapillary, ... ", "wikipedia": "Gelinkte Wikipedia-artikelen worden getoond" @@ -905,7 +905,7 @@ "attribution": "De beoordelingen worden voorzien door Mangrove Reviews en zijn beschikbaar onder deCC-BY 4.0-licentie. ", "i_am_affiliated": "Ik ben persoonlijk betrokken
Vink aan indien je de oprichter, maker, werknemer, ... of dergelijke bent", "name_required": "De naam van dit object moet gekend zijn om een review te kunnen maken", - "no_rating": "Geen score bekend", + "no_rating": "Geef een beoordeling voordat je verzendt…", "no_reviews_yet": "Er zijn nog geen beoordelingen. Wees de eerste om een beoordeling te schrijven en help open data en het bedrijf!", "plz_login": "Meld je aan om een beoordeling te geven", "posting_as": "Ingelogd als", diff --git a/langs/themes/ca.json b/langs/themes/ca.json index 2d0b5606bf..303ce35036 100644 --- a/langs/themes/ca.json +++ b/langs/themes/ca.json @@ -522,7 +522,8 @@ } } }, - "title": "Jardins verticals" + "title": "Jardins verticals", + "shortDescription": "Aquest mapa mostra jardins a façanes amb fotografies i informació útil sobre l'orientació, llum del sol i els tipus de plantes." }, "food": { "description": "Restaurants i menjar ràpid", @@ -740,4 +741,4 @@ "shortDescription": "Un mapa amb papereres", "title": "Papepera" } -} \ No newline at end of file +} diff --git a/langs/themes/fr.json b/langs/themes/fr.json index b6fff12e29..8227da15db 100644 --- a/langs/themes/fr.json +++ b/langs/themes/fr.json @@ -325,7 +325,7 @@ "title": "Points de recharge" }, "climbing": { - "description": "Cette carte indique les sites d’escalade comme les salles d’escalade ou les sites naturels", + "description": "Cette carte indique les sites d’escalade comme les salles d’escalade ou les sites naturels.", "descriptionTail": "La carte des sites d'escalade a été créée par Christian Neumann. Merci de le contacter pour des avis ou des questions.

Ce projet utilise les données OpenStreetMap.

", "layers": { "0": { @@ -799,6 +799,13 @@ "question": "Fait par le serveur {search}" } } + }, + "7": { + "options": { + "0": { + "question": "Le groupe de modifications a ajouté au moins une image" + } + } } }, "name": "Centres de modifications de paramètres", @@ -814,10 +821,30 @@ "locale": { "question": "En quelle langue est-ce que ce changement a été fait ?", "render": "La langue de l'utilisateur est {locale}" + }, + "theme-id": { + "question": "Quel thème a été utilisé pour faire cette modification ?", + "render": "Modifié avec le thème {theme}" + }, + "show_changeset_id": { + "render": "Groupe de modifications {id}" + } + }, + "title": { + "render": "Groupe de modifications pour {theme}" + } + }, + "1": { + "override": { + "tagRenderings": { + "link_to_more": { + "render": "D’autres statistiques sont disponibles ici" + } } } } - } + }, + "title": "Changements faits avec MapComplete" }, "maproulette": { "description": "Thème MapRoulette permettant d’afficher, rechercher, filtrer et résoudre les tâches.", @@ -928,7 +955,9 @@ "title": "OpenWindPowerMap" }, "osm_community_index": { - "description": "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." + "description": "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.", + "title": "Index communautaire OSM", + "shortDescription": "Index des ressources communautaires pour OpenStreetMap." }, "parkings": { "description": "Cette carte affiche différents lieux de stationnement", @@ -1020,6 +1049,28 @@ "tagRenderings": { "streetname": { "render": "Cette rue s’appelle {name}" + }, + "left-right-questions": { + "renderings": { + "2": { + "question": "Quelle est la largeur du trottoir de ce côté de la route ?", + "render": "Ce trottoir fait {sidewalk:left|right:width} m de large" + }, + "1": { + "question": "Y a-t-il un trottoir de ce côté de la route ?", + "mappings": { + "2": { + "then": "Il y a un trottoir où marcher cartographié séparément" + }, + "0": { + "then": "Oui, il y a un trottoir de ce côté de la route" + }, + "1": { + "then": "Non, il n'y a pas de trottoir où marcher" + } + } + } + } } }, "title": { @@ -1036,8 +1087,19 @@ "title": "Terrains de sport" }, "sports": { - "shortDescription": "Carte des équipements sportifs", - "title": "Sports" + "shortDescription": "Carte des équipements sportifs.", + "title": "Sports", + "layers": { + "4": { + "override": { + "presets": { + "0": { + "description": "Ajouter un nouveau commerce vendant des équipements sportifs." + } + } + } + } + } }, "street_lighting": { "description": "Retrouvez tout ce qui touche à l’éclairage de rue sur cette carte", @@ -1125,5 +1187,44 @@ "description": "Retrouvez les poubelles près de vous. Si une poubelle est manquante, vous pouvez l’ajouter vous même", "shortDescription": "Une carte des poubelles", "title": "Poubelles" + }, + "stations": { + "layers": { + "15": { + "title": { + "render": "Tableau des départs" + }, + "description": "Panneau affichant les trains au départ depuis cette gare", + "tagRenderings": { + "type": { + "mappings": { + "1": { + "then": "Panneau électronique, affichant les prochains départs en temps réel" + }, + "0": { + "then": "Panneau des départs de type inconnu" + }, + "2": { + "then": "Tableau des départs papier" + } + }, + "question": "De quel type de panneau de départs s'agit-il ?" + } + }, + "presets": { + "0": { + "description": "Ajouter un panneau indiquant les départs, qu'il soit électronique ou papier", + "title": "un panneaux des départs" + } + }, + "name": "Panneaux des départs" + }, + "3": { + "name": "Gares ferroviaires", + "description": "Couche montrant les gares" + } + }, + "description": "Voir, modifier et ajouter des détails à une gare ferroviaire", + "title": "Gares ferroviaires" } -} \ No newline at end of file +}