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": "
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.
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": "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.
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}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 +}