all repos — caroster @ 5b56ddaba8515a32a5623282ddc378007e8efcb9

[Octree] Group carpool to your event https://caroster.io

feat: 🌐 Add language support for Dutch
Simon Mulquin simon@octree.ch
Thu, 30 May 2024 14:15:17 +0000
commit

5b56ddaba8515a32a5623282ddc378007e8efcb9

parent

78fdd8ec9cfe0e4c667c49f8e4f538231a7ea319

M backend/src/api/email/services/email.tsbackend/src/api/email/services/email.ts

@@ -3,7 +3,7 @@ import _ from "lodash";

import { marked } from "marked"; import { getHTML } from "../utils/layout"; -const langs = ["en", "fr"]; +const langs = ["en", "fr", "nl"]; let locales: Record< string,
M backend/src/api/event/content-types/event/schema.jsonbackend/src/api/event/content-types/event/schema.json

@@ -24,7 +24,8 @@ "lang": {

"type": "enumeration", "enum": [ "fr", - "en" + "en", + "nl" ], "default": "en" },
M backend/src/extensions/users-permissions/content-types/user/schema.jsonbackend/src/extensions/users-permissions/content-types/user/schema.json

@@ -101,7 +101,8 @@ "lang": {

"type": "enumeration", "enum": [ "fr", - "en" + "en", + "nl" ], "default": "fr" },
M backend/types/generated/contentTypes.d.tsbackend/types/generated/contentTypes.d.ts

@@ -770,7 +770,7 @@ firstName: Attribute.String;

lastName: Attribute.String; onboardingUser: Attribute.Boolean & Attribute.DefaultTo<false>; onboardingCreator: Attribute.Boolean & Attribute.DefaultTo<false>; - lang: Attribute.Enumeration<['fr', 'en']> & Attribute.DefaultTo<'fr'>; + lang: Attribute.Enumeration<['fr', 'en', 'nl']> & Attribute.DefaultTo<'fr'>; newsletterConsent: Attribute.Boolean & Attribute.DefaultTo<false>; notificationEnabled: Attribute.Boolean & Attribute.DefaultTo<true>; notifications: Attribute.Relation<

@@ -811,7 +811,7 @@ };

attributes: { name: Attribute.String & Attribute.Required; email: Attribute.String & Attribute.Required; - lang: Attribute.Enumeration<['fr', 'en']> & Attribute.DefaultTo<'en'>; + lang: Attribute.Enumeration<['fr', 'en', 'nl']> & Attribute.DefaultTo<'en'>; date: Attribute.Date; address: Attribute.Text; position: Attribute.JSON;
M frontend/generated/graphql.tsxfrontend/generated/graphql.tsx

@@ -205,7 +205,8 @@ }

export enum Enum_Event_Lang { en = 'en', - fr = 'fr' + fr = 'fr', + nl = 'nl' } export enum Enum_Notification_Type {

@@ -230,7 +231,8 @@ }

export enum Enum_Userspermissionsuser_Lang { en = 'en', - fr = 'fr' + fr = 'fr', + nl = 'nl' } export type Event = {
D frontend/i18n-unused.js

@@ -1,50 +0,0 @@

-var fs = require('fs'); -var glob = require('glob'); - -glob( - '**/*.{js,jsx,ts,tsx}', - {ignore: ['**/node_modules/**'], absolute: true}, - function (err, filesPaths) { - if (err) { - console.log(err); - return; - } - - const i18nSourceFileRelativePath = '/locales/en.json'; - const i18nSourceFilePath = `${__dirname}${i18nSourceFileRelativePath}`; - - const sourceJson = fs.readFileSync(i18nSourceFilePath, 'UTF-8'); - const preSourceTranslations = JSON.parse(sourceJson); - const preKeys = Object.keys(preSourceTranslations); - - const keysToKeep = preKeys.filter(k => k.split('.')[0] === 'PROTECTED'); - filesPaths.forEach(filePath => { - const content = fs.readFileSync(filePath, 'UTF-8'); - - preKeys.forEach(key => { - if (content.includes(key) && !keysToKeep.includes(key)) { - keysToKeep.push(key); - - //supports plurals for english source translation - if (preKeys.includes(`${key}_plural`)) { - keysToKeep.push(`${key}_plural`); - } - } - }); - }); - - const sourceTranslationsToKeep = {}; - keysToKeep.sort(); - keysToKeep.forEach(key => { - sourceTranslationsToKeep[key] = preSourceTranslations[key]; - }); - - const sourceJsonToKeep = JSON.stringify(sourceTranslationsToKeep, null, 4); - fs.writeFileSync(i18nSourceFilePath, sourceJsonToKeep); - console.warn( - `This script is a workaround, ${ - preKeys.length - keysToKeep.length - } keys were removed from the ${i18nSourceFileRelativePath}, please make sure to review them before running i18n-format and adapt the code to avoid future deletion.` - ); - } -);
M frontend/lib/i18n.tsfrontend/lib/i18n.ts

@@ -1,10 +1,11 @@

import i18n from 'i18next'; import {initReactI18next} from 'react-i18next'; -import 'moment/locale/fr'; +import 'moment/min/locales'; import moment from 'moment'; import {Enum_Userspermissionsuser_Lang as SupportedLocales} from '../generated/graphql'; import translationFr from '../locales/fr.json'; import translationEn from '../locales/en.json'; +import translationNl from '../locales/nl.json'; const resources = { fr: {

@@ -13,6 +14,9 @@ },

en: { translation: translationEn, }, + nl: { + translation: translationNl, + }, }; export const initI18Next = (locale: SupportedLocales) => {

@@ -21,7 +25,8 @@ .use(initReactI18next) // passes i18n down to react-i18next

.init({ resources, lng: locale, - supportedLngs: ['fr', 'en'], + supportedLngs: ['fr', 'en', 'nl'], + fallbackLng: 'en', interpolation: { escapeValue: false, // react already safes from xss },
M frontend/locales/en.jsonfrontend/locales/en.json

@@ -1,14 +1,12 @@

{ - "PROTECTED.languages.en": "English", - "PROTECTED.languages.fr": "Français", + "alert.button.label": "Save", "alert.create": "Your alert has been successfully configured", + "alert.description": "Set up an alert to receive an email in case of a nearby departure", "alert.errors.cant_create": "Unable to create your alert", - "alert.title": "Alerts", "alert.location.label": "Your location", + "alert.optional": "Optional", "alert.radius.label": "Radius desired", - "alert.optional": "Optional", - "alert.button.label": "Save", - "alert.description": "Set up an alert to receive an email in case of a nearby departure", + "alert.title": "Alerts", "confirm.creating": "Creating the account", "confirm.google.title": "Complete registration", "confirm.text": "You have received an email with a link. Please click on this link to confirm your account.",

@@ -26,15 +24,15 @@ "dashboard.sections.past": "Caroster passed",

"dashboard.sections.past_plural": "Past Carosters", "dashboard.title": "$t(menu.dashboard)", "date.today": "Today", + "drawer.alerts": "Alerts", "drawer.information": "Information", "drawer.options": "Options", "drawer.travels": "Trips", - "drawer.alerts": "Alerts", "drawer.waitingList": "Waiting list", "event.actions.add_to_my_events": "Add to my events", - "event.actions.share": "Share the Caroster", "event.actions.copied": "The link has been copied to your clipboard", "event.actions.noShareCapability": "Your browser cannot share nor copy to clipboard, please copy the page's URL instead.", + "event.actions.share": "Share the Caroster", "event.add_to_my_events.login": "$t(menu.login)", "event.add_to_my_events.register": "$t(menu.register)", "event.add_to_my_events.text_html": "To add <strong> {{eventName}} </strong> to your carosters you must be logged in or create an account.",

@@ -63,39 +61,25 @@ "event.fields.date": "Event date",

"event.fields.date_placeholder": "DD/MM/YYYY", "event.fields.description": "Description", "event.fields.empty": "Not specified", + "event.fields.lang": "Language", "event.fields.link": "Share link", "event.fields.link_desc": "Share this link with other people", "event.fields.name": "Name of the event", - "event.fields.lang": "Language", "event.fields.share": "Share", + "event.filter.allDates": "All dates", + "event.filter.dates": "Multiple dates", + "event.filter.title": "Filter dates", "event.loginToAttend": "Do you want to attend this event ?", "event.loginToAttend.desc": "Signup or log in to carpool to the event", "event.loginToAttend.login": "$t(menu.login)", "event.loginToAttend.signup": "$t(signup.title)", "event.no_other_travel.title": "There are currently no other trip", + "event.no_travel.desc": "1. Subscribe to the waiting list\n2. Share the event\n3. You will be notified when a new trip is added", + "event.no_travel.plus.action": "Create an alert", "event.no_travel.plus.desc": "Create an alert to receive an email in case of a nearby departure", - "event.no_travel.plus.action": "Create an alert", - "event.no_travel.desc": "1. Subscribe to the waiting list\n2. Share the event\n3. You will be notified when a new trip is added", "event.no_travel.title": "There are currently no trips", "event.not_found": "Project not found", "event.title": "{{title}} - Caroster", - "options.no_module": "There are no modules currently available.", - "event.filter.title": "Filter dates", - "event.filter.allDates": "All dates", - "event.filter.dates": "Multiple dates", - "options.plus.title": "Caroster Plus", - "options.plus.admins": "Administrators", - "options.plus.creator": "Creator", - "options.plus.activationOK": "Add Caroster Plus to your event", - "options.plus.activationForbiden": "You must be the event creator and logged in with a Caroster account to add modules", - "options.plus.addAdmin": "Add an administrator", - "options.plus.addAdmin.email": "Email", - "options.plus.addAdmin.emailHelper": "The email is not valid", - "options.plus.adminAdded": "The administrator has been invited", - "options.plus.addAdminError": "An error has occurred", - "options.plus.adminDeleted": "The administrator has been deleted", - "options.plus.deleteAdminError": "An error has occurred", - "options.plus.notRightForAddAdmin": "You are not authorized to add an administrator", "generic.access": "Access", "generic.add": "Add", "generic.cancel": "Cancel",

@@ -131,42 +115,56 @@ "menu.logout": "Logout",

"menu.new_event": "Create a Caroster", "menu.profile": "My profile", "menu.register": "Sign-Up", - "notifications.title": "Notifications", - "notifications.markAllRead": "Mark all in read", - "notifications.content": "No notification", + "notification.type.AddedAsAdmin.content": "You have been promoted as administrator to the event.", + "notification.type.ContactTripCreator.content": "Contact the driver to organize your trip.", + "notification.type.DeletedFromTrip.content": "You have been removed from a trip.", + "notification.type.DeletedTrip.content": "A trip has been removed.", + "notification.type.DeletedYourTrip.content": "Your trip has been removed by an event administrator", + "notification.type.EnabledCarosterPlus.content": "Caroster Plus has been activated for your event.", "notification.type.NewPassengerInYourTrip.content": "A passenger has been added to your trip.", "notification.type.NewTrip.content": "A new trip close to you is available.", "notification.type.NewTripAlert.content": "A new trip close to you is available.", - "notification.type.DeletedTrip.content": "A trip has been removed.", - "notification.type.DeletedYourTrip.content": "Your trip has been removed by an event administrator", - "notification.type.AddedAsAdmin.content": "You have been promoted as administrator to the event.", "notification.type.PassengerJoinTrip.content": "A new passenger wishes to contact you to travel with you.", - "notification.type.ContactTripCreator.content": "Contact the driver to organize your trip.", - "notification.type.EnabledCarosterPlus.content": "Caroster Plus has been activated for your event.", - "notification.type.DeletedFromTrip.content": "You have been removed from a trip.", + "notifications.content": "No notification", + "notifications.markAllRead": "Mark all in read", + "notifications.title": "Notifications", + "options.no_module": "There are no modules currently available.", + "options.plus.activationForbiden": "You must be the event creator and logged in with a Caroster account to add modules", + "options.plus.activationOK": "Add Caroster Plus to your event", + "options.plus.addAdmin": "Add an administrator", + "options.plus.addAdmin.email": "Email", + "options.plus.addAdmin.emailHelper": "The email is not valid", + "options.plus.addAdminError": "An error has occurred", + "options.plus.adminAdded": "The administrator has been invited", + "options.plus.adminDeleted": "The administrator has been deleted", + "options.plus.admins": "Administrators", + "options.plus.creator": "Creator", + "options.plus.deleteAdminError": "An error has occurred", + "options.plus.notRightForAddAdmin": "You are not authorized to add an administrator", + "options.plus.title": "Caroster Plus", "passenger.actions.place": "Assign", "passenger.actions.remove_alert": "Are you sure you want to remove <italic> <bold> {{name}} </bold> </italic> from the waitlist?", - "passenger.availability.seats": "{{count}} seat available", - "passenger.availability.seats_plural": "{{count}} seats available", - "passenger.assign.title": "Assign a passenger", "passenger.assign.assign": "Assign", + "passenger.assign.availableCars": "Available trips", "passenger.assign.departure": "Departure: ", "passenger.assign.no_travel.desc": "{{name}} will receive an email when new trips are available. You can share the event in the meantime.", "passenger.assign.no_travel.title": "No available seats at the moment...", + "passenger.assign.seats": "{{count}} available seats", "passenger.assign.seats_zero": "Full", - "passenger.assign.seats": "{{count}} available seats", - "passenger.assign.availableCars": "Available trips", + "passenger.assign.title": "Assign a passenger", + "passenger.availability.seats": "{{count}} seat available", + "passenger.availability.seats_plural": "{{count}} seats available", "passenger.deleted": "The passenger has been deleted from the event.", "passenger.errors.cant_add_passenger": "Unable to add a passenger", "passenger.errors.cant_remove_passenger": "Unable to remove the passenger", "passenger.errors.cant_select_travel": "Can't move the passenger", - "passenger.informations.title": "Contact us", + "passenger.informations.call.label": "Call", + "passenger.informations.email.label": "E-mail", "passenger.informations.name.label": "Name", - "passenger.informations.surname.label": "Surname", + "passenger.informations.notSpecify": "Not provided", "passenger.informations.phone.label": "Phone", - "passenger.informations.email.label": "E-mail", - "passenger.informations.call.label": "Call", - "passenger.informations.notSpecify": "Not provided", + "passenger.informations.surname.label": "Surname", + "passenger.informations.title": "Contact us", "passenger.success.added_self_to_car": "You have been added to the trip", "passenger.success.added_self_to_waitlist": "You have been added to the waitlist. You'll be notified when new trips are added.", "passenger.success.added_to_car": "{{name}} has been added to the trip",

@@ -183,26 +181,29 @@ "profile.actions.logout": "Logout",

"profile.actions.save": "Save", "profile.actions.save_new_password": "Update", "profile.current_password": "Current password", - "profile.notification.label": "Notifications", - "profile.notification.value.yes": "Activated", - "profile.notification.value.no": "Disabled", - "profile.newsletter.label": "Receive our newsletter", - "profile.newsletter.value.yes": "Yes", - "profile.newsletter.value.no": "No", "profile.email": "Email", "profile.errors.password_nomatch": "Wrong password", "profile.firstName": "First name", "profile.lastName": "Last name", "profile.new_password": "New password", + "profile.newsletter.label": "Receive our newsletter", + "profile.newsletter.value.no": "No", + "profile.newsletter.value.yes": "Yes", "profile.not_defined": "Not specified", + "profile.notification.label": "Notifications", + "profile.notification.value.no": "Disabled", + "profile.notification.value.yes": "Activated", "profile.password_changed": "Password updated", + "profile.stripe_link.button": "History", + "profile.stripe_link.title": "Billing", "profile.title": "Profile", - "profile.stripe_link.title": "Billing", - "profile.stripe_link.button": "History", + "PROTECTED.languages.en": "English", + "PROTECTED.languages.fr": "Français", + "PROTECTED.languages.nl": "Nederlands", + "signin.email": "Email", + "signin.emailConfirmation": "Your account has been confirmed. You can now login.", "signin.errors.CredentialsSignin": "Check your email and password. If your account is linked to Google, please use login with Google.", "signin.errors.EmailNotConfirmed": "Your account has not been confirmed. Please check your emails", - "signin.email": "Email", - "signin.emailConfirmation": "Your account has been confirmed. You can now login.", "signin.login": "$t(menu.login)", "signin.no_account": "You don't have an account ?", "signin.or": "OR",

@@ -219,10 +220,10 @@ "signup.firstName": "First name",

"signup.lastName": "Last name", "signup.login": "$t(menu.login)", "signup.newsletter.consent": "I am interested in carpooling, I want to subscribe to the newsletter.", - "signup.tos.consent": "I accept <tos-link>terms of service</tos-link> and <data-privacy-link>data privacy policy</data-privacy-link>", "signup.password": "Password", "signup.submit": "Create your account", "signup.title": "Sign up", + "signup.tos.consent": "I accept <tos-link>terms of service</tos-link> and <data-privacy-link>data privacy policy</data-privacy-link>", "signup.with_mail": "Continue with an email", "supportCaroster": "Support Caroster", "tour.creator.step1": "Add a new trip by clicking on this button.",

@@ -248,9 +249,6 @@ "travel.creation.date": "Date of departure",

"travel.creation.meeting": "Meeting place", "travel.creation.name": "Name of the car", "travel.creation.notes": "Additional information", - "travel.creation.travel.titleHelper": "Please provide a valid name", - "travel.creation.travel.dateHelper": "Please provide a valid date", - "travel.creation.travel.timeHelper": "Please provide a valid time", "travel.creation.phone": "Telephone number", "travel.creation.phoneHelper.faq": "/en/faq", "travel.creation.phoneHelper.why": "Why do we ask for a phone number ?",

@@ -258,7 +256,10 @@ "travel.creation.seats": "Number of available seats",

"travel.creation.submit": "Add", "travel.creation.time": "Departure time", "travel.creation.title": "Add a trip", + "travel.creation.travel.dateHelper": "Please provide a valid date", + "travel.creation.travel.timeHelper": "Please provide a valid time", "travel.creation.travel.title": "Trip", + "travel.creation.travel.titleHelper": "Please provide a valid name", "travel.errors.cant_create": "Unable to create the trip", "travel.errors.cant_remove": "Unable to remove the trip", "travel.errors.cant_remove_passenger": "Unable to remove passenger",

@@ -268,10 +269,7 @@ "travel.fields.meeting_point": "Meeting place",

"travel.fields.phone": "Contact", "travel.passengers.add": "Add a passenger", "travel.passengers.add_me": "Add myself", - "travel.passengers.registered": "Assigned", "travel.passengers.add_someone": "Add someone", - "travel.passengers.remove": "Remove", - "travel.passengers.removed": "Passenger removed from the trip", "travel.passengers.add_to_car": "Add to trip", "travel.passengers.add_to_travel": "Add passenger", "travel.passengers.add_to_waitingList": "Add to waiting list",

@@ -283,29 +281,31 @@ "travel.passengers.empty": "Available seat",

"travel.passengers.location": "Meeting place", "travel.passengers.location_helper": "Indicate your preferred departure location", "travel.passengers.location_placeholder": "Meeting place (optionnal)", + "travel.passengers.moved_to_waiting_list": "The passenger has been moved to the waiting list.", "travel.passengers.name": "Name", "travel.passengers.name_placeholder": "Name", - "travel.passengers.moved_to_waiting_list" : "The passenger has been moved to the waiting list.", "travel.passengers.register_to_waiting_list": "Register to waiting list", - "travel.removePassengerModal.title": "Remove the passenger from the trip", + "travel.passengers.registered": "Assigned", + "travel.passengers.remove": "Remove", + "travel.passengers.removed": "Passenger removed from the trip", + "travel.removePassengerModal.cancel": "Cancel", "travel.removePassengerModal.description": "The passenger will be moved to the waiting list.", - "travel.removePassengerModal.cancel": "Cancel", + "travel.removePassengerModal.plus.description": "The user will receive a notification.", + "travel.removePassengerModal.plus.self.description": "You'll have to find a new trip.", "travel.removePassengerModal.remove": "Remove the passenger", - "travel.removePassengerModal.self.title": "Leave this trip", "travel.removePassengerModal.self.description": "You'll be moved to the waiting list.", "travel.removePassengerModal.self.remove": "Leave the trip", - "travel.removePassengerModal.plus.description": "The user will receive a notification.", - "travel.removePassengerModal.plus.self.description": "You'll have to find a new trip.", - "travel.requestTrip.title": "Information sent", + "travel.removePassengerModal.self.title": "Leave this trip", + "travel.removePassengerModal.title": "Remove the passenger from the trip", "travel.requestTrip.description": "The following information will be sent to the trip driver.", - "travel.requestTrip.phone": "Phone", "travel.requestTrip.email": "Email", "travel.requestTrip.emailHelper": "Invalid Email", + "travel.requestTrip.phone": "Phone", "travel.requestTrip.send": "Send", + "travel.requestTrip.title": "Information sent", "travel.vehicle.add": "Add a new vehicle", "travel.vehicle.empty": "There is no vehicle assigned to you. Click the button bellow in order to create one.", "travel.vehicle.name": "Name of the vehicle", "travel.vehicle.seats_number": "Seats number", - "travel.vehicle.title": "My Vehicles" - -} + "travel.vehicle.title": "My Vehicles" +}
M frontend/locales/fr.jsonfrontend/locales/fr.json

@@ -1,14 +1,12 @@

{ - "PROTECTED.languages.en": "English", - "PROTECTED.languages.fr": "Français", + "alert.button.label": "Enregistrer", "alert.create": "Votre alerte a bien été configurée", + "alert.description": "Configurez une alerte pour être notifié des nouveaux trajets ajoutés.", "alert.errors.cant_create": "Impossible de créer votre alerte", - "alert.title": "Alertes", "alert.location.label": "Votre localisation", - "alert.radius.label": "Rayon désiré", "alert.optional": "Optionnel", - "alert.button.label": "Enregistrer", - "alert.description": "Configurez une alerte pour être notifié des nouveaux trajets ajoutés.", + "alert.radius.label": "Rayon désiré", + "alert.title": "Alertes", "confirm.creating": "Création de compte", "confirm.google.title": "Finaliser l'inscription", "confirm.text": "Vous avez reçu un email avec un lien. Merci de cliquer sur ce lien pour confirmer votre compte.",

@@ -26,15 +24,15 @@ "dashboard.sections.past": "Caroster passé",

"dashboard.sections.past_plural": "Carosters passés", "dashboard.title": "$t(menu.dashboard)", "date.today": "Aujourd'hui", + "drawer.alerts": "Alertes", "drawer.information": "Information", "drawer.options": "Options", "drawer.travels": "Trajets", - "drawer.alerts": "Alertes", "drawer.waitingList": "Liste d'attente", "event.actions.add_to_my_events": "Ajouter à mes évènements", - "event.actions.share": "Partager le Caroster", "event.actions.copied": "Le lien a été copié dans votre presse-papier", "event.actions.noShareCapability": "Votre navigateur ne permet pas de partager ou de copier dans le presse papier, veuillez copier l'URL de la page.", + "event.actions.share": "Partager le Caroster", "event.add_to_my_events.login": "$t(menu.login)", "event.add_to_my_events.register": "$t(menu.register)", "event.add_to_my_events.text_html": "Pour ajouter <strong>{{eventName}}</strong> à vos carosters vous devez être connecté ou créer un compte.",

@@ -63,39 +61,25 @@ "event.fields.date": "Date de l'événement",

"event.fields.date_placeholder": "DD/MM/YYYY", "event.fields.description": "Description", "event.fields.empty": "Non précisé", + "event.fields.lang": "Langue", "event.fields.link": "Lien de partage", "event.fields.link_desc": "Partager l'évènement à d'autres personnes", "event.fields.name": "Nom de l'événement", - "event.fields.lang": "Langue", "event.fields.share": "Partager", + "event.filter.allDates": "Toutes les dates", + "event.filter.dates": "Dates multiples", + "event.filter.title": "Filtrer par dates", "event.loginToAttend": "Voulez-vous rejoindre cet évènement ?", "event.loginToAttend.desc": "Créez un compte ou connectez-vous pour covoiturer à l'événement", "event.loginToAttend.login": "$t(menu.login)", "event.loginToAttend.signup": "$t(signup.title)", "event.no_other_travel.title": "Pas d'autres trajets pour le moment", - "event.no_travel.plus.desc": "Créez une alerte de covoiturage pour être notifié", - "event.no_travel.plus.action": "Créer une alerte", "event.no_travel.desc": "1. Inscrivez-vous dans la liste d’attente \n2. Partagez l’événement \n3. Vous serez notifié lorsqu’un nouveau trajet sera ajouté", + "event.no_travel.plus.action": "Créer une alerte", + "event.no_travel.plus.desc": "Créez une alerte de covoiturage pour être notifié", "event.no_travel.title": "Pas de trajets pour le moment", "event.not_found": "Projet introuvable", "event.title": "{{title}} - Caroster", - "options.no_module": "Il n'y a pas de module disponible pour le moment.", - "event.filter.title": "Filtrer par dates", - "event.filter.allDates": "Toutes les dates", - "event.filter.dates": "Dates multiples", - "options.plus.title": "Caroster Plus", - "options.plus.admins": "Administrateurs", - "options.plus.creator": "Créateur", - "options.plus.activationOK": "Ajoutez Caroster Plus à votre évènement", - "options.plus.activationForbiden": "Vous devez être le créateur de l'événement et être connecté avec un compte Caroster pour ajouter des modules", - "options.plus.addAdmin": "Ajouter un administrateur", - "options.plus.addAdmin.email": "E-mail", - "options.plus.addAdmin.emailHelper": "L e-mail n'est pas valide", - "options.plus.adminAdded": "L'administrateur a été invité", - "options.plus.addAdminError": "Une erreur est survenue", - "options.plus.adminDeleted": "L'administrateur a été supprimé", - "options.plus.deleteAdminError": "Une erreur est survenue", - "options.plus.notRightForAddAdmin": "Vous n'avez pas les droits pour ajouter un administrateur", "generic.access": "Accéder", "generic.add": "Ajouter", "generic.cancel": "Annuler",

@@ -131,42 +115,56 @@ "menu.logout": "Se déconnecter",

"menu.new_event": "Créer un caroster", "menu.profile": "Mon profil", "menu.register": "Créer un compte", - "notifications.title": "Notifications", - "notifications.markAllRead": "Tout marquer en lu", - "notifications.content": "Aucune notification", + "notification.type.AddedAsAdmin.content": "Vous avez été promu administrateur.", + "notification.type.ContactTripCreator.content": "Contactez la conductrice ou le conducteur pour organiser votre trajet.", + "notification.type.DeletedFromTrip.content": "Vous avez été retiré(e) d'un trajet.", + "notification.type.DeletedTrip.content": "Un trajet a été supprimée.", + "notification.type.DeletedYourTrip.content": "Votre trajet a été supprimé par un administrateur de l'événement.", + "notification.type.EnabledCarosterPlus.content": "Caroster Plus a été activé pour votre événement.", "notification.type.NewPassengerInYourTrip.content": "Un passager a été ajouté à votre trajet.", "notification.type.NewTrip.content": "Un nouveau trajet proche de chez vous est disponible.", "notification.type.NewTripAlert.content": "Un nouveau trajet proche de chez vous est disponible.", - "notification.type.DeletedTrip.content": "Un trajet a été supprimée.", - "notification.type.DeletedYourTrip.content": "Votre trajet a été supprimé par un administrateur de l'événement.", - "notification.type.AddedAsAdmin.content": "Vous avez été promu administrateur.", "notification.type.PassengerJoinTrip.content": "Un passager souhaite prendre contact pour voyager avec vous.", - "notification.type.ContactTripCreator.content": "Contactez la conductrice ou le conducteur pour organiser votre trajet.", - "notification.type.EnabledCarosterPlus.content": "Caroster Plus a été activé pour votre événement.", - "notification.type.DeletedFromTrip.content": "Vous avez été retiré(e) d'un trajet.", + "notifications.content": "Aucune notification", + "notifications.markAllRead": "Tout marquer en lu", + "notifications.title": "Notifications", + "options.no_module": "Il n'y a pas de module disponible pour le moment.", + "options.plus.activationForbiden": "Vous devez être le créateur de l'événement et être connecté avec un compte Caroster pour ajouter des modules", + "options.plus.activationOK": "Ajoutez Caroster Plus à votre évènement", + "options.plus.addAdmin": "Ajouter un administrateur", + "options.plus.addAdmin.email": "E-mail", + "options.plus.addAdmin.emailHelper": "L e-mail n'est pas valide", + "options.plus.addAdminError": "Une erreur est survenue", + "options.plus.adminAdded": "L'administrateur a été invité", + "options.plus.adminDeleted": "L'administrateur a été supprimé", + "options.plus.admins": "Administrateurs", + "options.plus.creator": "Créateur", + "options.plus.deleteAdminError": "Une erreur est survenue", + "options.plus.notRightForAddAdmin": "Vous n'avez pas les droits pour ajouter un administrateur", + "options.plus.title": "Caroster Plus", "passenger.actions.place": "Placer", "passenger.actions.remove_alert": "Voulez-vous vraiment supprimer <italic><bold>{{name}}</bold></italic> de la liste d'attente ?", - "passenger.availability.seats": "{{count}} place disponible", - "passenger.availability.seats_plural": "{{count}} places disponibles", - "passenger.assign.title": "Placer le passager", "passenger.assign.assign": "Placer", + "passenger.assign.availableCars": "Trajets disponibles", "passenger.assign.departure": "Depart: ", "passenger.assign.no_travel.desc": "{{name}} recevra un email lorsqu’un trajet sera ajouté. En attendant, partagez l’événement", "passenger.assign.no_travel.title": "Pas de place disponible en ce moment...", + "passenger.assign.seats": "{{count}} places disponibles", "passenger.assign.seats_zero": "Complet", - "passenger.assign.seats": "{{count}} places disponibles", - "passenger.assign.availableCars": "Trajets disponibles", + "passenger.assign.title": "Placer le passager", + "passenger.availability.seats": "{{count}} place disponible", + "passenger.availability.seats_plural": "{{count}} places disponibles", "passenger.deleted": "Le passager a été supprimé de l'événement.", "passenger.errors.cant_add_passenger": "Impossible d'ajouter un passager", "passenger.errors.cant_remove_passenger": "Impossible de retirer le passager", "passenger.errors.cant_select_travel": "Impossible de placer le passager", - "passenger.informations.title": "Demande de contact", + "passenger.informations.call.label": "Appeler", + "passenger.informations.email.label": "E-mail", "passenger.informations.name.label": "Prénom", - "passenger.informations.surname.label": "Nom", + "passenger.informations.notSpecify": "Non précisé", "passenger.informations.phone.label": "Téléphone", - "passenger.informations.email.label": "E-mail", - "passenger.informations.call.label": "Appeler", - "passenger.informations.notSpecify": "Non précisé", + "passenger.informations.surname.label": "Nom", + "passenger.informations.title": "Demande de contact", "passenger.success.added_self_to_car": "Vous avez été ajouté au trajet", "passenger.success.added_self_to_waitlist": "Vous avez été ajouté à la liste d’attente. Vous serez notifié à l’ajout de nouveaux trajets", "passenger.success.added_to_car": "{{name}} a été ajouté au trajet",

@@ -183,26 +181,26 @@ "profile.actions.logout": "Se déconnecter",

"profile.actions.save": "Enregistrer", "profile.actions.save_new_password": "Mettre à jour", "profile.current_password": "Mot de passe actuel", - "profile.notification.label": "Notifications", - "profile.notification.value.yes": "Activées", - "profile.notification.value.no": "Désactivées", - "profile.newsletter.label": "Recevoir la newsletter", - "profile.newsletter.value.yes": "Oui", - "profile.newsletter.value.no": "Non", "profile.email": "Email", "profile.errors.password_nomatch": "Mot de passe erroné", "profile.firstName": "Prénom", "profile.lastName": "Nom", "profile.new_password": "Nouveau mot de passe", + "profile.newsletter.label": "Recevoir la newsletter", + "profile.newsletter.value.no": "Non", + "profile.newsletter.value.yes": "Oui", "profile.not_defined": "Non précisé", + "profile.notification.label": "Notifications", + "profile.notification.value.no": "Désactivées", + "profile.notification.value.yes": "Activées", "profile.password_changed": "Mot de passe mis à jour", - "profile.title": "Profil", - "profile.stripe_link.title": "Facturation", "profile.stripe_link.button": "Historique", - "signin.errors.CredentialsSignin": "Vérifiez votre email et mot de passe. Si votre compte est lié à Google, merci d'utiliser l'authentification Google.", - "signin.errors.EmailNotConfirmed": "Votre compte n'a pas été confirmé. Merci de vérifier vos emails", + "profile.stripe_link.title": "Facturation", + "profile.title": "Profil", "signin.email": "Email", "signin.emailConfirmation": "Votre compte a bien été confirmé. Vous pouvez maintenant vous connecter.", + "signin.errors.CredentialsSignin": "Vérifiez votre email et mot de passe. Si votre compte est lié à Google, merci d'utiliser l'authentification Google.", + "signin.errors.EmailNotConfirmed": "Votre compte n'a pas été confirmé. Merci de vérifier vos emails", "signin.login": "$t(menu.login)", "signin.no_account": "Vous n'avez pas de compte ?", "signin.or": "OU",

@@ -219,10 +217,10 @@ "signup.firstName": "Prénom",

"signup.lastName": "Nom", "signup.login": "$t(menu.login)", "signup.newsletter.consent": "Le covoiturage m'intéresse, je souhaite recevoir des nouvelles de Caroster", - "signup.tos.consent": "J'accepte les <tos-link>conditions d'utilisation</tos-link> et la <data-privacy-link>politique de gestion de données</data-privacy-link>", "signup.password": "Mot de passe", "signup.submit": "Créer un compte", "signup.title": "Inscription", + "signup.tos.consent": "J'accepte les <tos-link>conditions d'utilisation</tos-link> et la <data-privacy-link>politique de gestion de données</data-privacy-link>", "signup.with_mail": "Continuer avec un email", "supportCaroster": "Soutenir Caroster", "tour.creator.step1": "Ajoutez un nouveau trajet en cliquant directement sur ce bouton.",

@@ -248,9 +246,6 @@ "travel.creation.date": "Date de départ",

"travel.creation.meeting": "Lieu de rencontre", "travel.creation.name": "Nom de la voiture", "travel.creation.notes": "Infos complémentaires", - "travel.creation.travel.titleHelper": "Veuillez indiquer un nom valide", - "travel.creation.travel.dateHelper": "Veuillez indiquer une date valide", - "travel.creation.travel.timeHelper": "Veuillez indiquer une heure valide", "travel.creation.phone": "Numéro de téléphone", "travel.creation.phoneHelper.faq": "/fr/faq", "travel.creation.phoneHelper.why": "Pourquoi le num. de tél. est-il demandé?",

@@ -258,7 +253,10 @@ "travel.creation.seats": "Nombre de places disponibles",

"travel.creation.submit": "Ajouter", "travel.creation.time": "Heure de départ", "travel.creation.title": "Ajouter un trajet", + "travel.creation.travel.dateHelper": "Veuillez indiquer une date valide", + "travel.creation.travel.timeHelper": "Veuillez indiquer une heure valide", "travel.creation.travel.title": "Trajet", + "travel.creation.travel.titleHelper": "Veuillez indiquer un nom valide", "travel.errors.cant_create": "Impossible de créer le trajet", "travel.errors.cant_remove": "Impossible de supprimer le trajet", "travel.errors.cant_remove_passenger": "Impossible de supprimer le passager",

@@ -268,11 +266,7 @@ "travel.fields.meeting_point": "Lieu de rencontre",

"travel.fields.phone": "Contact", "travel.passengers.add": "Ajouter un passager", "travel.passengers.add_me": "S'ajouter", - "travel.passengers.registered": "Inscrit!", "travel.passengers.add_someone": "Ajouter quelqu'un", - "travel.passengers.remove": "Retirer", - "travel.passengers.removed": "Le passager a été retiré du trajet.", - "travel.passengers.moved_to_waiting_list": "Le passager a été déplacé dans la liste d'attente.", "travel.passengers.add_to_car": "Ajouter au trajet", "travel.passengers.add_to_travel": "Ajouter au trajet", "travel.passengers.add_to_waitingList": "Ajouter à la liste d'attente",

@@ -284,27 +278,31 @@ "travel.passengers.empty": "Place disponible",

"travel.passengers.location": "Lieu de rencontre", "travel.passengers.location_helper": "Indiquez votre lieu de départ de préférence", "travel.passengers.location_placeholder": "Lieu de rencontre (optionnel)", + "travel.passengers.moved_to_waiting_list": "Le passager a été déplacé dans la liste d'attente.", "travel.passengers.name": "Nom", "travel.passengers.name_placeholder": "Nom", "travel.passengers.register_to_waiting_list": "Inscription à la liste d'attente", - "travel.removePassengerModal.title": "Retirer le passager du trajet?", + "travel.passengers.registered": "Inscrit!", + "travel.passengers.remove": "Retirer", + "travel.passengers.removed": "Le passager a été retiré du trajet.", + "travel.removePassengerModal.cancel": "Annuler", "travel.removePassengerModal.description": "Le passager sera placé en liste d'attente.", - "travel.removePassengerModal.cancel": "Annuler", + "travel.removePassengerModal.plus.description": "L'utilisateur sera notifié.", + "travel.removePassengerModal.plus.self.description": "Vous devrez trouver un nouveau trajet.", "travel.removePassengerModal.remove": "Retirer le passager", - "travel.removePassengerModal.self.title": "Vous retirer du trajet?", "travel.removePassengerModal.self.description": "Vous serez placé en liste d'attente.", "travel.removePassengerModal.self.remove": "Me retirer", - "travel.removePassengerModal.plus.description": "L'utilisateur sera notifié.", - "travel.removePassengerModal.plus.self.description": "Vous devrez trouver un nouveau trajet.", - "travel.requestTrip.title": "Informations transmises", + "travel.removePassengerModal.self.title": "Vous retirer du trajet?", + "travel.removePassengerModal.title": "Retirer le passager du trajet?", "travel.requestTrip.description": "Les informations suivantes vont être transmises au conducteur du trajet.", - "travel.requestTrip.phone": "Téléphone", "travel.requestTrip.email": "Email", "travel.requestTrip.emailHelper": "Email non valide", + "travel.requestTrip.phone": "Téléphone", "travel.requestTrip.send": "Envoyer", + "travel.requestTrip.title": "Informations transmises", "travel.vehicle.add": "Ajouter un nouveau véhicule", "travel.vehicle.empty": "Vous n'avez aucun véhicule assigné. Utilisez le bouton ci-dessous pour en créer un.", "travel.vehicle.name": "Nom du véhicule", "travel.vehicle.seats_number": "Nombre de places", "travel.vehicle.title": "Mes véhicules" -} +}
M frontend/locales/nl.jsonfrontend/locales/nl.json

@@ -1,6 +1,12 @@

{ - "PROTECTED.languages.en": "English", - "PROTECTED.languages.fr": "Français", + "alert.button.label": "Opslaan", + "alert.create": "De melding is ingesteld", + "alert.description": "Ontvang een e-mailmelding als er een carpoolvertrek in de buurt is", + "alert.errors.cant_create": "De melding kan niet worden aangemaakt", + "alert.location.label": "Mijn locatie", + "alert.optional": "Optioneel", + "alert.radius.label": "Straal vereist", + "alert.title": "Meldingen", "confirm.creating": "Account aanmaken", "confirm.google.title": "Registratie afronden", "confirm.text": "U heeft een e-mail ontvangen met daarin een link. Klik op de link om uw account te bevestigen.",

@@ -17,14 +23,16 @@ "dashboard.sections.noDate_plural": "Caroster zonder datums",

"dashboard.sections.past": "Afgelopen caroster", "dashboard.sections.past_plural": "Afgelopen carosters", "dashboard.title": "$t(menu.dashboard)", + "date.today": "Vandaag", + "drawer.alerts": "Meldingen", "drawer.information": "Informatie", "drawer.options": "Opties", "drawer.travels": "Reizen", "drawer.waitingList": "Wachtlijst", "event.actions.add_to_my_events": "Toevoegen aan mijn afspraken", - "event.actions.share": "Delen het Caroster", "event.actions.copied": "De link is gekopieerd naar het klembord", "event.actions.noShareCapability": "Uw browser heeft geen klembordondersteuning - kopieer de pagina-url.", + "event.actions.share": "Delen het Caroster", "event.add_to_my_events.login": "$t(menu.login)", "event.add_to_my_events.register": "$t(menu.register)", "event.add_to_my_events.text_html": "U kunt <strong>{{eventName}}</strong> alleen toevoegen aan uw carosters als u bent ingelogd.",

@@ -53,32 +61,25 @@ "event.fields.date": "Afspraakdatum",

"event.fields.date_placeholder": "DD/MM/YYYY", "event.fields.description": "Beschrijving", "event.fields.empty": "Niet opgegeven", + "event.fields.lang": "Taal", "event.fields.link": "Link delen", "event.fields.link_desc": "Deel deze link met anderen", "event.fields.name": "Afspraaknaam", - "event.fields.lang": "", "event.fields.share": "Delen", - "event.loginToAttend": "", - "event.loginToAttend.desc": "", + "event.filter.allDates": "Alle datums", + "event.filter.dates": "Meerdere datums", + "event.filter.title": "Datums filteren", + "event.loginToAttend": "Wilt u deelnemen aan deze afspraak?", + "event.loginToAttend.desc": "Registreer of log in om deel te nemen", "event.loginToAttend.login": "$t(menu.login)", "event.loginToAttend.signup": "$t(signup.title)", - "event.no_other_travel.title": "Er is momenteel geen andere auto", + "event.no_other_travel.title": "Er is momenteel geen ander voertuig", "event.no_travel.desc": "1. Zet uzelf op de wachtlijst;\n2. Deel de afspraak;\n3. Ontvang een melding zodra er een reis beschikbaar is.", - "event.no_travel.title": "Er zijn momenteel geen auto's", + "event.no_travel.plus.action": "Maak een waarschuwing", + "event.no_travel.plus.desc": "Maak een waarschuwing aan om een ​​e-mail te ontvangen in geval van een vertrek in de buurt", + "event.no_travel.title": "Er zijn momenteel geen voertuigen", "event.not_found": "Dit project bestaat niet", "event.title": "{{title}} - Caroster", - "options.plus.title": "Caroster Plus", - "options.plus.admins": "Beheerders", - "options.plus.creator": "Schepper", - "options.plus.activationOK": "Voeg Caroster Plus toe aan uw evenement", - "options.plus.activationForbiden": "Alleen de beheerder is bevoegd om modules toe te voegen", - "options.plus.addAdmin": "", - "options.plus.addAdmin.email": "", - "options.plus.addAdmin.emailHelper": "", - "options.plus.adminAdded": "", - "options.plus.addAdminError": "", - "options.plus.adminDeleted": "", - "options.plus.deleteAdminError": "", "generic.access": "Toegang", "generic.add": "toevoegen", "generic.cancel": "Annuleren",

@@ -114,42 +115,64 @@ "menu.logout": "Uitloggen",

"menu.new_event": "Caroster aanmaken", "menu.profile": "Mijn profiel", "menu.register": "Registreren", - "notifications.title": "", - "notifications.markAllRead": "", - "notifications.content": "", - "notification.type.NewPassengerInYourTrip.content": "", - "notification.type.NewTrip.content": "", - "notification.type.NewTripAlert.content": "", - "notification.type.DeletedTrip.content": "", - "notification.type.DeletedYourTrip.content": "", - "notification.type.DeletedFromTrip.content": "", - "notification.type.AddedAsAdmin.content": "", - "notification.type.ContactTripCreator.content": "", - "notification.type.EnabledCarosterPlus.content": "", + "notification.type.AddedAsAdmin.content": "U bent toegevoegd als beheerder van de afspraak.", + "notification.type.ContactTripCreator.content": "Neem contact op met de bestuurder om de reis te organiseren.", + "notification.type.DeletedFromTrip.content": "U bent verwijderd uit een reis.", + "notification.type.DeletedTrip.content": "Er is een reis verwijderd.", + "notification.type.DeletedYourTrip.content": "De reis is verwijderd door een beheerder", + "notification.type.EnabledCarosterPlus.content": "Caroster Plus is voor deze afspraak geactiveerd.", + "notification.type.NewPassengerInYourTrip.content": "Er is een passagier toegevoegd aan de reis.", + "notification.type.NewTrip.content": "Er staat in uw buurt een reis gepland.", + "notification.type.NewTripAlert.content": "Er is een nieuwe reis bij jou in de buurt beschikbaar.", + "notification.type.PassengerJoinTrip.content": "Een passagier wil contact met u opnemen over de reis.", + "notifications.content": "Er zijn geen meldingen", + "notifications.markAllRead": "Alles markeren als gelezen", + "notifications.title": "Meldingen", + "options.no_module": "Er zijn momenteel geen modules beschikbaar.", + "options.plus.activationForbiden": "Alleen de beheerder is bevoegd om modules toe te voegen", + "options.plus.activationOK": "Voeg Caroster plus toe aan uw evenement", + "options.plus.addAdmin": "Beheerder toevoegen", + "options.plus.addAdmin.email": "E-mailadres", + "options.plus.addAdmin.emailHelper": "Het e-mailadres is ongeldig", + "options.plus.addAdminError": "Er is een fout opgetreden", + "options.plus.adminAdded": "De beheerder is uitgenodigd", + "options.plus.adminDeleted": "De beheerder is verwijderd", + "options.plus.admins": "Beheerders", + "options.plus.creator": "Schepper", + "options.plus.deleteAdminError": "Er is een fout opgetreden", + "options.plus.notRightForAddAdmin": "U bent niet bevoegd om een beheerder toe te voegen", + "options.plus.title": "Caroster Plus", "passenger.actions.place": "Toewijzen", "passenger.actions.remove_alert": "Weet u zeker dat u <italic><bold>{{name}}</bold></italic> van de wachtlijst wilt halen?", - "passenger.availability.seats": "Er is {{count}} plaats beschikbaar", - "passenger.availability.seats_plural": "Er zijn {{count}} plaatsen beschikbaar", - "passenger.assign.title": "Toewijzen de passagier", "passenger.assign.assign": "Toewijzen", + "passenger.assign.availableCars": "Beschikbare voertuigen", "passenger.assign.departure": "Vetrek: ", "passenger.assign.no_travel.desc": "{{name}} ontvangt een e-mail zodra er nieuwe auto's beschikbaar zijn. In de tussentijd kunt u de afspraak gewoon delen.", "passenger.assign.no_travel.title": "Er zijn momenteel geen beschikbare plaatsen…", - "passenger.assign.seats_0": "", - "passenger.assign.seats": "", - "passenger.assign.availableCars": "Beschikbare auto's", + "passenger.assign.seats": "{{count}} zitplaatsen beschikbaar", + "passenger.assign.seats_zero": "Volledig", + "passenger.assign.title": "Toewijzen de passagier", + "passenger.availability.seats": "Er is {{count}} plaats beschikbaar", + "passenger.availability.seats_plural": "Er zijn {{count}} plaatsen beschikbaar", "passenger.deleted": "De passagier is verwijderd.", "passenger.errors.cant_add_passenger": "De passagier kan niet worden toegevoegd", "passenger.errors.cant_remove_passenger": "De passagier kan niet worden verwijderd", - "passenger.errors.cant_select_travel": "", - "passenger.success.added_self_to_car": "U bent toegevoegd aan deze auto", - "passenger.success.added_self_to_waitlist": "U bent toegevoegd aan de wachtlijst. U ontvangt een melding zodra er nieuwe auto's beschikbaar zijn.", - "passenger.success.added_to_car": "{{name}} is toegevoegd aan deze auto", + "passenger.errors.cant_select_travel": "De passagier kan niet worden verplaatst", + "passenger.informations.call.label": "Bellen", + "passenger.informations.email.label": "E-mailadres", + "passenger.informations.name.label": "Voornaam", + "passenger.informations.notSpecify": "Niet opgegeven", + "passenger.informations.phone.label": "Telefoonnummer", + "passenger.informations.surname.label": "Achternaam", + "passenger.informations.title": "Contact opnemen", + "passenger.success.added_self_to_car": "U bent toegevoegd aan dit voertuig", + "passenger.success.added_self_to_waitlist": "U bent toegevoegd aan de wachtlijst en ontvangt een melding zodra er nieuwe voertuigen beschikbaar zijn.", + "passenger.success.added_to_car": "{{name}} is toegevoegd aan dit voertuig", "passenger.success.added_to_waitlist": "{{name}} is toegevoegd aan de wachtlijst", "passenger.success.goToTravels": "Ga naar reizen", "passenger.title": "Wachtlijst", - "placeInput.mapboxUnavailable": "", - "placeInput.noCoordinates": "", + "placeInput.mapboxUnavailable": "Er kunnen momenteel geen locaties worden voorgesteld", + "placeInput.noCoordinates": "Deze locatie is niet aangetroffen en verschijnt daarom niet op de kaart", "profile.actions.cancel": "Annuleren", "profile.actions.change_password": "Wachtwoord wijzigen", "profile.actions.edit": "Bewerken",

@@ -162,15 +185,21 @@ "profile.errors.password_nomatch": "Het wachtwoord is onjuist",

"profile.firstName": "Voornaam", "profile.lastName": "Achternaam", "profile.new_password": "Nieuw wachtwoord", + "profile.newsletter.label": "Ontvang onze nieuwsbrief", + "profile.newsletter.value.no": "Nee", + "profile.newsletter.value.yes": "Ja", "profile.not_defined": "Niet opgegeven", + "profile.notification.label": "Meldingen", + "profile.notification.value.no": "Uitgeschakeld", + "profile.notification.value.yes": "Ingeschakeld", "profile.password_changed": "Het wachtwoord is bijgewerkt", + "profile.stripe_link.button": "Geschiedenis", + "profile.stripe_link.title": "Facturering", "profile.title": "Profiel", - "profile.stripe_link.title": "", - "profile.stripe_link.button": "", - "signin.errors.CredentialsSignin": "", - "signin.errors.EmailNotConfirmed": "", "signin.email": "E-mailadres", "signin.emailConfirmation": "Uw account is bevestigd - u kunt nu inloggen.", + "signin.errors.CredentialsSignin": "Controleer uw e-mailadres en wachtwoord. Als uw account gekoppeld is aan Google, log dan in met uw Google-account.", + "signin.errors.EmailNotConfirmed": "Uw account is nog niet bevestigd - controleer uw postvak in.", "signin.login": "$t(menu.login)", "signin.no_account": "Heeft u nog geen account?", "signin.or": "OF",

@@ -187,34 +216,34 @@ "signup.firstName": "Voornaam",

"signup.lastName": "Achternaam", "signup.login": "$t(menu.login)", "signup.newsletter.consent": "Ik ben geïnteresseerd in carpooling en wil me abonneren op de nieuwsbrief.", - "signup.tos.consent": "", "signup.password": "Wachtwoord", "signup.submit": "Account aanmaken", "signup.title": "Registreren", + "signup.tos.consent": "Ik ga akkoord met de <tos-link>algemene voorwaarden</tos-link> en het <data-privacy-link>privacybeleid</data-privacy-link>", "signup.with_mail": "Doorgaan met e-mailadres", "supportCaroster": "Doneren", - "tour.creator.step1": "Klik op deze knop om een auto toe te voegen.", - "tour.creator.step2": "De wachtlijst bevat passagiers die nog geen plekje hebben in uw auto.", + "tour.creator.step1": "Klik op deze knop om een voertuig toe te voegen.", + "tour.creator.step2": "De wachtlijst bevat passagiers die nog geen plekje hebben in uw voertuig.", "tour.creator.step3": "De afspraakinformatie kan met behulp van dit menu worden bewerkt.", "tour.creator.step4": "De afspraak kan worden bewerkt door op de bewerkknop te klikken.", "tour.creator.step5": "U kunt de link kopiëren en delen via e-mail, WhatsApp, Telegram, etc.", - "tour.user.step1": "Klik op deze knop om een auto toe te voegen.", - "tour.user.step2": "Wilt u een plekje in een auto reserveren? Zet uzelf dan op de wachtlijst of kies een auto.", + "tour.user.step1": "Klik op deze knop om een voertuig toe te voegen.", + "tour.user.step2": "Wilt u een plekje in een voertuig reserveren? Zet uzelf dan op de wachtlijst of kies een voertuig.", "tour.user.step3": "De afspraakinformatie is toegankelijk via dit menu.", "tour.user.step4": "U kunt de link kopiëren en delen via e-mail, WhatsApp, Telegram, etc.", "tour.welcome.nope": "Later", "tour.welcome.onboard": "Ja, graag!", "tour.welcome.text": "Wilt u een rondleiding nemen?", "tour.welcome.title": "Welkom bij Caroster!", - "travel.actions.remove_alert": "Weet u zeker dat u deze auto wilt verwijderen en daardoor de passagiers wilt toevoegen aan de wachtlijst?", - "travel.actions.remove_alert.caroster_plus": "", - "travel.actions.removed": "De auto is verwijderd en de passagiers zijn toegevoegd aan de wachtlijst.", - "travel.actions.removed.caroster_plus": "", - "travel.creation.car.title": "Auto en bestuurder", - "travel.creation.created": "De auto is aangemaakt", + "travel.actions.remove_alert": "Weet u zeker dat u dit voertuig wilt verwijderen en daardoor de passagiers wilt toevoegen aan de wachtlijst?", + "travel.actions.remove_alert.caroster_plus": "Weet u zeker dat u dit voertuig wilt verwijderen? Alle passagiers worden hiervan op de hoogte gesteld.", + "travel.actions.removed": "Het voertuig is verwijderd en de passagiers zijn toegevoegd aan de wachtlijst.", + "travel.actions.removed.caroster_plus": "Het voertuig is verwijderd en alle passagiers zijn op de hoogte gesteld.", + "travel.creation.car.title": "Voertuig en bestuurder", + "travel.creation.created": "Het voertuig is aangemaakt", "travel.creation.date": "Vertrekdatum", "travel.creation.meeting": "Afspraaklocatie", - "travel.creation.name": "Autonaam", + "travel.creation.name": "Voertuignaam", "travel.creation.notes": "Aanvullende informatie", "travel.creation.phone": "Telefoonnummer", "travel.creation.phoneHelper.faq": "/nl/faq",

@@ -222,22 +251,22 @@ "travel.creation.phoneHelper.why": "Waarom wordt er om een telefoonnummer gevraagd?",

"travel.creation.seats": "Aantal beschikbare plaatsen", "travel.creation.submit": "Toevoegen", "travel.creation.time": "Vertrektijd", - "travel.creation.title": "Auto toevoegen", + "travel.creation.title": "Voertuig toevoegen", + "travel.creation.travel.dateHelper": "Geef een geldige datum op", + "travel.creation.travel.timeHelper": "Geef een geldige tijd op", "travel.creation.travel.title": "Reis", - "travel.errors.cant_create": "De auto kan niet worden toegevoegd", - "travel.errors.cant_remove": "De auto kan niet worden verwijderd", + "travel.creation.travel.titleHelper": "Geef een geldige naam op", + "travel.errors.cant_create": "Het voertuig kan niet worden toegevoegd", + "travel.errors.cant_remove": "Het voertuig kan niet worden verwijderd", "travel.errors.cant_remove_passenger": "De passagier kan niet worden verwijderd", - "travel.errors.cant_update": "De auto kan niet worden bewerkt", + "travel.errors.cant_update": "Het voertuig kan niet worden bewerkt", "travel.fields.details": "Aantekeningen", "travel.fields.meeting_point": "Afspraaklocatie", "travel.fields.phone": "Contact", - "travel.moved_to_waiting_list": "De passagier is toegevoegd aan de wachtlijst.", "travel.passengers.add": "Passagier toevoegen", "travel.passengers.add_me": "Mijzelf toevoegen", - "travel.passengers.registered": "", "travel.passengers.add_someone": "Iemand toevoegen", - "travel.passengers.remove": "verwijderen", - "travel.passengers.add_to_car": "Toevoegen aan auto", + "travel.passengers.add_to_car": "Toevoegen aan voertuig", "travel.passengers.add_to_travel": "Passagier toevoegen", "travel.passengers.add_to_waitingList": "Iemand toevoegen", "travel.passengers.email": "E-mailadres",

@@ -248,27 +277,31 @@ "travel.passengers.empty": "Beschikbare plaats",

"travel.passengers.location": "Afspraaklocatie", "travel.passengers.location_helper": "Geef de gewenste vertreklocatie op", "travel.passengers.location_placeholder": "Afspraaklocatie (optioneel)", + "travel.passengers.moved_to_waiting_list": "De passagier is toegevoegd aan de wachtlijst.", "travel.passengers.name": "Naam", "travel.passengers.name_placeholder": "Naam", "travel.passengers.register_to_waiting_list": "Op wachtlijst zetten", - "travel.removePassengerModal.title": "Verwijder de passagier van de reis", - "travel.removePassengerModal.description": "De passagier wordt op de wachtlijst geplaatst.", + "travel.passengers.registered": "Toegewezen", + "travel.passengers.remove": "verwijderen", + "travel.passengers.removed": "De passagier is verwijderd", "travel.removePassengerModal.cancel": "Annuleren", + "travel.removePassengerModal.description": "De passagier wordt op de wachtlijst geplaatst.", + "travel.removePassengerModal.plus.description": "De gebruiker ontvangt een melding.", + "travel.removePassengerModal.plus.self.description": "Je zult een nieuwe reis moeten vinden.", "travel.removePassengerModal.remove": "Verwijder de passagier", - "travel.removePassengerModal.self.title": "Verlaat deze reis", "travel.removePassengerModal.self.description": "Je wordt verplaatst op de wachtlijst.", "travel.removePassengerModal.self.remove": "Verlaat de reis", - "travel.removePassengerModal.plus.description": "De gebruiker ontvangt een melding.", - "travel.removePassengerModal.plus.self.description": "Je zult een nieuwe reis moeten vinden.", - "travel.requestTrip.title": "Informatie verzonden", + "travel.removePassengerModal.self.title": "Verlaat deze reis", + "travel.removePassengerModal.title": "Verwijder de passagier van de reis", "travel.requestTrip.description": "De volgende informatie wordt doorgegeven aan de bestuurder van de reis.", - "travel.requestTrip.phone": "Telefoonnummer", "travel.requestTrip.email": "E-mailadres", "travel.requestTrip.emailHelper": "Het e-mailadres is ongeldig", + "travel.requestTrip.phone": "Telefoonnummer", "travel.requestTrip.send": "Sturen", + "travel.requestTrip.title": "Informatie verzonden", "travel.vehicle.add": "Voertuig toevoegen", "travel.vehicle.empty": "Er is nog geen voertuig aan u toegewezen. Klik op onderstaande knop om er een toe te voegen.", "travel.vehicle.name": "Voertuignaam", "travel.vehicle.seats_number": "Aantal plaatsen", "travel.vehicle.title": "Mijn voertuigen" -} +}
M frontend/locales/pl.jsonfrontend/locales/pl.json

@@ -1,269 +1,286 @@

{ - "PROTECTED.languages.en": "English", - "PROTECTED.languages.fr": "Français", - "confirm.creating": "Tworzenie konta", - "confirm.google.title": "Zakończ rejestrację", - "confirm.text": "Wysłano wiadomość e-mail z linkiem. Kliknij ten link, aby potwierdzić swoje konto.", - "confirm.title": "Potwierdź swój e-mail", - "dashboard.actions.add_event": "", - "dashboard.actions.see_event": "", - "dashboard.noEvent.create_event": "", - "dashboard.noEvent.text_html": "", - "dashboard.noEvent.title": "", - "dashboard.sections.future_0": "", - "dashboard.sections.future_1": "", - "dashboard.sections.future_2": "", - "dashboard.sections.noDate_0": "", - "dashboard.sections.noDate_1": "", - "dashboard.sections.noDate_2": "", - "dashboard.sections.past_0": "", - "dashboard.sections.past_1": "", - "dashboard.sections.past_2": "", - "dashboard.title": "", - "drawer.information": "Informacje", - "drawer.options": "", - "drawer.travels": "Podróże", - "drawer.waitingList": "Lista oczekujących", - "event.actions.add_to_my_events": "", - "event.actions.share": "", - "event.actions.copied": "", - "event.actions.noShareCapability": "", - "event.add_to_my_events.login": "", - "event.add_to_my_events.register": "", - "event.add_to_my_events.text_html": "", - "event.add_to_my_events.title": "", - "event.creation.addFromAccount.actions.login": "", - "event.creation.addFromAccount.actions.register": "", - "event.creation.addFromAccount.subtitle": "", - "event.creation.addFromAccount.title": "", - "event.creation.address": "Miejsce wydarzenia", - "event.creation.creator_email": "Twój adres e-mail", - "event.creation.date": "Data wydarzenia", - "event.creation.description": "Opis", - "event.creation.description_helper": "Opcjonalne", - "event.creation.name": "Nazwa wydarzenia", - "event.creation.newsletter": "Informuj mnie o rozwoju Caroster przez e-mail", - "event.creation.next": "Dalej", - "event.creation.title": "Nowe wydarzenie", - "event.details": "", - "event.details.modify": "Modyfikuj", - "event.details.save": "Zapisz", - "event.errors.cant_create": "", - "event.errors.cant_update": "", - "event.fields.address": "Miejsce wydarzenia", - "event.fields.copyLink": "Kopiuj link", - "event.fields.date": "Data wydarzenia", - "event.fields.date_placeholder": "DD/MM/YYYY", - "event.fields.description": "Opis", - "event.fields.empty": "Nie określono", - "event.fields.link": "Udostępnij link", - "event.fields.link_desc": "Udostępnij ten link innym osobom", - "event.fields.name": "Nazwa wydarzenia", - "event.fields.lang": "", - "event.fields.share": "Udostępnij", - "event.loginToAttend": "", - "event.loginToAttend.desc": "", - "event.loginToAttend.login": "$t(menu.login)", - "event.loginToAttend.signup": "$t(signup.title)", - "event.no_other_travel.title": "Obecnie nie ma żadnych innych samochodów", - "event.no_travel.desc": "1. Zasubskrybuj listę oczekujących\n2. Udostępnij wydarzenie\n3. Dostaniesz powiadomienie kiedy zostanie dodana nowa podróż", - "event.no_travel.title": "Obecnie nie ma żadnych samochodów", - "event.not_found": "Nie znaleziono projektu", - "event.title": "{{title}} - Caroster", - "options.plus.title": "", - "options.plus.admins": "", - "options.plus.creator": "", - "options.plus.activationOK": "", - "options.plus.activationForbiden": "", - "options.plus.addAdmin": "", - "options.plus.addAdmin.email": "", - "options.plus.addAdmin.emailHelper": "", - "options.plus.adminAdded": "", - "options.plus.addAdminError": "", - "options.plus.adminDeleted": "", - "options.plus.deleteAdminError": "", - "generic.access": "Dostęp", - "generic.add": "toevoegen", - "generic.cancel": "Anuluj", - "generic.confirm": "Potwierdź", - "generic.create": "Stwórz", - "generic.delete": "Usuń", - "generic.errors.not_found": "Nie znaleziono zasobu", - "generic.errors.unknown": "Wystąpił nieznany błąd", - "generic.me": "Ja", - "generic.remove": "Usuń", - "generic.save": "Zapisz", - "generic.select": "Wybierz", - "lost_password.actions.cancel": "Anuluj", - "lost_password.actions.login": "Wróć do ekranu logowania", - "lost_password.actions.register": "Stworzyć konto?", - "lost_password.actions.save_new_password": "Aktualizuj", - "lost_password.actions.send": "", - "lost_password.change_success": "Twoje hasło zostało zmienione", - "lost_password.email": "Twój e-mail", - "lost_password.error": "Ten e-mail nie istnieje", - "lost_password.message": "", - "lost_password.password": "Nowe hasło", - "lost_password.password_confirmation": "Potwierdzenie nowego hasła", - "lost_password.reset_title": "Definiowanie nowego hasła", - "lost_password.sent": "", - "lost_password.title": "Odzyskiwanie hasła", - "menu.about": "Dowiedz się więcej o Caroster", - "menu.code": "Caroster jest Open Source", - "menu.dashboard": "", - "menu.language": "Zmień język", - "menu.login": "Zaloguj się", - "menu.logout": "Wyloguj się", - "menu.new_event": "", - "menu.profile": "Mój profil", - "menu.register": "Zarejestruj się", - "notifications.title": "", - "notifications.markAllRead": "", - "notifications.content": "", - "notification.type.NewPassengerInYourTrip.content": "", - "notification.type.NewTrip.content": "", - "notification.type.NewTripAlert.content": "", - "notification.type.DeletedTrip.content": "", - "notification.type.DeletedYourTrip.content": "", - "notification.type.DeletedFromTrip.content": "", - "notification.type.AddedAsAdmin.content": "", - "notification.type.ContactTripCreator.content": "", - "notification.type.EnabledCarosterPlus.content": "", - "passenger.assign.title": "", - "passenger.actions.place": "Przypisz", - "passenger.actions.remove_alert": "Czy na pewno chcesz usunąć <italic> <bold> {{name}} </bold> </italic> z listy oczekujących?", - "passenger.availability.seats_0": "", - "passenger.availability.seats_1": "", - "passenger.availability.seats_2": "", - "passenger.assign.assign": "", - "passenger.assign.departure": "", - "passenger.assign.no_travel.desc": "", - "passenger.assign.no_travel.title": "", - "passenger.assign.seats_0": "", - "passenger.assign.seats": "", - "passenger.assign.availableCars": "", - "passenger.deleted": "Pasażer został usunięty z wydarzenia.", - "passenger.errors.cant_add_passenger": "Nie można dodać pasażera", - "passenger.errors.cant_remove_passenger": "Nie można usunąć pasażera", - "passenger.errors.cant_select_travel": "", - "passenger.success.added_self_to_car": "Dodano cię do tego samochodu", - "passenger.success.added_self_to_waitlist": "Dodano cię do listy oczekujących. Otrzymasz powiadomienie, gdy zostaną dodane nowe samochody.", - "passenger.success.added_to_car": "Dodano {{name}} do tego samochodu", - "passenger.success.added_to_waitlist": "Dodano {{name}} do listy oczekujących", - "passenger.success.goToTravels": "", - "passenger.title": "", - "placeInput.mapboxUnavailable": "", - "placeInput.noCoordinates": "", - "profile.actions.cancel": "", - "profile.actions.change_password": "", - "profile.actions.edit": "", - "profile.actions.logout": "", - "profile.actions.save": "", - "profile.actions.save_new_password": "", - "profile.current_password": "", - "profile.email": "", - "profile.errors.password_nomatch": "", - "profile.firstName": "", - "profile.lastName": "", - "profile.new_password": "", - "profile.not_defined": "", - "profile.password_changed": "", - "profile.title": "", - "profile.stripe_link.title": "", - "profile.stripe_link.button": "", - "signin.errors.CredentialsSignin": "", - "signin.errors.EmailNotConfirmed": "", - "signin.email": "E-mail", - "signin.emailConfirmation": "Twoje konto zostało potwierdzone. Teraz można się zalogować.", - "signin.login": "$t(menu.login)", - "signin.no_account": "Nie masz konta?", - "signin.or": "LUB", - "signin.password": "Hasło", - "signin.register": "$t(menu.register)", - "signin.title": "Sign in", - "signin.withGoogle": "Użyj konta Google", - "signup.account_already": "Czy masz już konto?", - "signup.create": "Stwórz konto", - "signup.createForm": "Stwórz konto\ninformacje do wypełnienia", - "signup.email": "E-mail", - "signup.errors.email_taken": "Ten adres e-mail jest już powiązany z kontem", - "signup.firstName": "Imię", - "signup.lastName": "Nazwisko", - "signup.login": "$t(menu.login)", - "signup.newsletter.consent": "Interesuje mnie car pooling, chcę zapisać się do newslettera.", - "signup.tos.consent": "", - "signup.password": "Hasło", - "signup.submit": "Stwórz swoje konto", - "signup.title": "Załóż konto", - "signup.with_mail": "Kontynuuj z e-mailem", - "supportCaroster": "Wesprzyj Caroster", - "tour.creator.step1": "Dodaj nowy samochód klikając ten przycisk.", - "tour.creator.step2": "Lista oczekujących obejmuje pasażerów, którzy nie mają jeszcze miejsca w samochodzie.", - "tour.creator.step3": "Informacje o wydarzeniu można modyfikować w tym menu.", - "tour.creator.step4": "Wydarzenie można edytować, klikając przycisk edycji.", - "tour.creator.step5": "Od teraz możesz skopiować link, aby udostępnić go za pośrednictwem poczty e-mail, WhatsAppa, Telegrama itp.", - "tour.user.step1": "Dodaj nowy samochód, klikając ten przycisk.", - "tour.user.step2": "", - "tour.user.step3": "Dostęp do informacji o wydarzeniu można uzyskać z tego menu.", - "tour.user.step4": "Od teraz możesz skopiować link, aby udostępnić go za pośrednictwem poczty e-mail, WhatsAppa, Telegrama itp.", - "tour.welcome.nope": "Później", - "tour.welcome.onboard": "Tak, ruszajmy!", - "tour.welcome.text": "Czy chcesz zobaczyć w prezentację naszych funkcji?", - "tour.welcome.title": "Witamy w Caroster!", - "travel.actions.remove_alert": "", - "travel.actions.remove_alert.caroster_plus": "", - "travel.actions.removed": "", - "travel.actions.removed.caroster_plus": "", - "travel.creation.car.title": "", - "travel.creation.created": "", - "travel.creation.date": "", - "travel.creation.meeting": "", - "travel.creation.name": "", - "travel.creation.notes": "", - "travel.creation.phone": "", - "travel.creation.phoneHelper.faq": "", - "travel.creation.phoneHelper.why": "", - "travel.creation.seats": "", - "travel.creation.submit": "", - "travel.creation.time": "", - "travel.creation.title": "", - "travel.creation.travel.title": "", - "travel.errors.cant_create": "", - "travel.errors.cant_remove": "", - "travel.errors.cant_remove_passenger": "", - "travel.errors.cant_update": "", - "travel.fields.details": "", - "travel.fields.meeting_point": "", - "travel.fields.phone": "", - "travel.moved_to_waiting_list": "", - "travel.passengers.add": "", - "travel.passengers.add_me": "", - "travel.passengers.registered": "", - "travel.passengers.add_someone": "", - "travel.passengers.remove": "", - "travel.passengers.add_to_car": "", - "travel.passengers.add_to_travel": "", - "travel.passengers.add_to_waitingList": "", - "travel.passengers.email": "Email", - "travel.passengers.email_helpertext": "", - "travel.passengers.email_placeholder": "Email", - "travel.passengers.email_placeholder_optionnal": "", - "travel.passengers.empty": "", - "travel.passengers.location": "", - "travel.passengers.location_helper": "", - "travel.passengers.location_placeholder": "", - "travel.passengers.name": "", - "travel.passengers.name_placeholder": "", - "travel.passengers.register_to_waiting_list": "", - "travel.requestTrip.title": "", - "travel.requestTrip.description": "", - "travel.requestTrip.phone": "", - "travel.requestTrip.email": "", - "travel.requestTrip.emailHelper": "", - "travel.requestTrip.send": "", - "travel.vehicle.add": "", - "travel.vehicle.empty": "", - "travel.vehicle.name": "", - "travel.vehicle.seats_number": "", - "travel.vehicle.title": "" -} + "alert.button.label": "Zapisz", + "alert.location.label": "Twoja lokacja", + "alert.optional": "Opcjonalne", + "alert.title": "Ostrzeżenia", + "confirm.creating": "Tworzenie konta", + "confirm.google.title": "Zakończ rejestrację", + "confirm.text": "Wysłano wiadomość e-mail z linkiem. Kliknij ten link, aby potwierdzić swoje konto.", + "confirm.title": "Potwierdź swój e-mail", + "dashboard.actions.add_event": "", + "dashboard.actions.see_event": "", + "dashboard.noEvent.create_event": "$t(menu.new_event)", + "dashboard.noEvent.text_html": "", + "dashboard.noEvent.title": "", + "dashboard.sections.future_0": "", + "dashboard.sections.future_1": "", + "dashboard.sections.future_2": "", + "dashboard.sections.noDate_0": "", + "dashboard.sections.noDate_1": "", + "dashboard.sections.noDate_2": "", + "dashboard.sections.past_0": "", + "dashboard.sections.past_1": "", + "dashboard.sections.past_2": "", + "dashboard.title": "$t(menu.dashboard)", + "date.today": "Dzisiaj", + "drawer.alerts": "Ostrzeżenia", + "drawer.information": "Informacje", + "drawer.options": "Ustawienia", + "drawer.travels": "Podróże", + "drawer.waitingList": "Lista oczekujących", + "event.actions.add_to_my_events": "", + "event.actions.copied": "", + "event.actions.noShareCapability": "", + "event.actions.share": "", + "event.add_to_my_events.login": "$t(menu.login)", + "event.add_to_my_events.register": "$t(menu.register)", + "event.add_to_my_events.text_html": "", + "event.add_to_my_events.title": "", + "event.creation.addFromAccount.actions.login": "$t(menu.login)", + "event.creation.addFromAccount.actions.register": "$t(menu.register)", + "event.creation.addFromAccount.subtitle": "", + "event.creation.addFromAccount.title": "", + "event.creation.address": "Miejsce wydarzenia", + "event.creation.creator_email": "Twój adres e-mail", + "event.creation.date": "Data wydarzenia", + "event.creation.description": "Opis", + "event.creation.description_helper": "Opcjonalne", + "event.creation.name": "Nazwa wydarzenia", + "event.creation.newsletter": "Informuj mnie o rozwoju Caroster przez e-mail", + "event.creation.next": "Dalej", + "event.creation.title": "Nowe wydarzenie", + "event.details": "Informacje", + "event.details.modify": "Modyfikuj", + "event.details.save": "Zapisz", + "event.errors.cant_create": "", + "event.errors.cant_update": "", + "event.fields.address": "Miejsce wydarzenia", + "event.fields.copyLink": "Kopiuj link", + "event.fields.date": "Data wydarzenia", + "event.fields.date_placeholder": "DD/MM/YYYY", + "event.fields.description": "Opis", + "event.fields.empty": "Nie określono", + "event.fields.lang": "Język", + "event.fields.link": "Udostępnij link", + "event.fields.link_desc": "Udostępnij ten link innym osobom", + "event.fields.name": "Nazwa wydarzenia", + "event.fields.share": "Udostępnij", + "event.loginToAttend": "", + "event.loginToAttend.desc": "", + "event.loginToAttend.login": "$t(menu.login)", + "event.loginToAttend.signup": "$t(signup.title)", + "event.no_other_travel.title": "Obecnie nie ma żadnych innych samochodów", + "event.no_travel.desc": "1. Zasubskrybuj listę oczekujących\n2. Udostępnij wydarzenie\n3. Dostaniesz powiadomienie kiedy zostanie dodana nowa podróż", + "event.no_travel.title": "Obecnie nie ma żadnych samochodów", + "event.not_found": "Nie znaleziono projektu", + "event.title": "{{title}} - Caroster", + "generic.access": "Dostęp", + "generic.add": "toevoegen", + "generic.cancel": "Anuluj", + "generic.confirm": "Potwierdź", + "generic.create": "Stwórz", + "generic.delete": "Usuń", + "generic.errors.not_found": "Nie znaleziono zasobu", + "generic.errors.unknown": "Wystąpił nieznany błąd", + "generic.me": "Ja", + "generic.remove": "Usuń", + "generic.save": "Zapisz", + "generic.select": "Wybierz", + "lost_password.actions.cancel": "Anuluj", + "lost_password.actions.login": "Wróć do ekranu logowania", + "lost_password.actions.register": "Stworzyć konto?", + "lost_password.actions.save_new_password": "Aktualizuj", + "lost_password.actions.send": "", + "lost_password.change_success": "Twoje hasło zostało zmienione", + "lost_password.email": "Twój e-mail", + "lost_password.error": "Ten e-mail nie istnieje", + "lost_password.message": "", + "lost_password.password": "Nowe hasło", + "lost_password.password_confirmation": "Potwierdzenie nowego hasła", + "lost_password.reset_title": "Definiowanie nowego hasła", + "lost_password.sent": "", + "lost_password.title": "Odzyskiwanie hasła", + "menu.about": "Dowiedz się więcej o Caroster", + "menu.code": "Caroster jest Open Source", + "menu.dashboard": "", + "menu.language": "Zmień język", + "menu.login": "Zaloguj się", + "menu.logout": "Wyloguj się", + "menu.new_event": "", + "menu.profile": "Mój profil", + "menu.register": "Zarejestruj się", + "notification.type.AddedAsAdmin.content": "", + "notification.type.ContactTripCreator.content": "", + "notification.type.DeletedFromTrip.content": "", + "notification.type.DeletedTrip.content": "", + "notification.type.DeletedYourTrip.content": "", + "notification.type.EnabledCarosterPlus.content": "", + "notification.type.NewPassengerInYourTrip.content": "", + "notification.type.NewTrip.content": "", + "notifications.content": "Brak powiadomień", + "notifications.markAllRead": "", + "notifications.title": "Powiadomienia", + "options.plus.activationForbiden": "", + "options.plus.activationOK": "", + "options.plus.addAdmin": "", + "options.plus.addAdmin.email": "E-mail", + "options.plus.addAdmin.emailHelper": "", + "options.plus.addAdminError": "", + "options.plus.adminAdded": "", + "options.plus.adminDeleted": "", + "options.plus.admins": "Administratorzy", + "options.plus.creator": "Twórca", + "options.plus.deleteAdminError": "", + "options.plus.title": "Caroster plus", + "passenger.actions.place": "Przypisz", + "passenger.actions.remove_alert": "Czy na pewno chcesz usunąć <italic> <bold> {{name}} </bold> </italic> z listy oczekujących?", + "passenger.assign.assign": "Przypisz", + "passenger.assign.availableCars": "Dostępne samochody", + "passenger.assign.departure": "", + "passenger.assign.no_travel.desc": "", + "passenger.assign.no_travel.title": "", + "passenger.assign.seats": "", + "passenger.assign.seats_0": "", + "passenger.assign.seats_zero": "Pełne", + "passenger.assign.title": "", + "passenger.availability.seats_0": "", + "passenger.availability.seats_1": "", + "passenger.availability.seats_2": "", + "passenger.deleted": "Pasażer został usunięty z wydarzenia.", + "passenger.errors.cant_add_passenger": "Nie można dodać pasażera", + "passenger.errors.cant_remove_passenger": "Nie można usunąć pasażera", + "passenger.errors.cant_select_travel": "", + "passenger.informations.call.label": "Połączenie", + "passenger.informations.email.label": "E-mail", + "passenger.informations.name.label": "Imię", + "passenger.informations.phone.label": "Numer telefonu", + "passenger.informations.surname.label": "Nazwisko", + "passenger.informations.title": "Skontaktuj się z nami", + "passenger.success.added_self_to_car": "Dodano cię do tego samochodu", + "passenger.success.added_self_to_waitlist": "Dodano cię do listy oczekujących. Otrzymasz powiadomienie, gdy zostaną dodane nowe samochody.", + "passenger.success.added_to_car": "Dodano {{name}} do tego samochodu", + "passenger.success.added_to_waitlist": "Dodano {{name}} do listy oczekujących", + "passenger.success.goToTravels": "", + "passenger.title": "", + "placeInput.mapboxUnavailable": "", + "placeInput.noCoordinates": "", + "profile.actions.cancel": "Anuluj", + "profile.actions.change_password": "", + "profile.actions.edit": "Edytuj", + "profile.actions.logout": "Wyloguj się", + "profile.actions.save": "Zapisz", + "profile.actions.save_new_password": "Aktualizuj", + "profile.current_password": "", + "profile.email": "Email", + "profile.errors.password_nomatch": "", + "profile.firstName": "", + "profile.lastName": "", + "profile.new_password": "", + "profile.newsletter.value.no": "Nie", + "profile.newsletter.value.yes": "Tak", + "profile.not_defined": "", + "profile.notification.label": "Powiadomienia", + "profile.notification.value.no": "Wyłączone", + "profile.notification.value.yes": "Aktywowane", + "profile.password_changed": "", + "profile.stripe_link.button": "Historia", + "profile.stripe_link.title": "", + "profile.title": "Profil", + "PROTECTED.languages.en": "English", + "PROTECTED.languages.fr": "Français", + "signin.email": "E-mail", + "signin.emailConfirmation": "Twoje konto zostało potwierdzone. Teraz można się zalogować.", + "signin.errors.CredentialsSignin": "", + "signin.errors.EmailNotConfirmed": "", + "signin.login": "$t(menu.login)", + "signin.no_account": "Nie masz konta?", + "signin.or": "LUB", + "signin.password": "Hasło", + "signin.register": "$t(menu.register)", + "signin.title": "Sign in", + "signin.withGoogle": "Użyj konta Google", + "signup.account_already": "Czy masz już konto?", + "signup.create": "Stwórz konto", + "signup.createForm": "Stwórz konto\ninformacje do wypełnienia", + "signup.email": "E-mail", + "signup.errors.email_taken": "Ten adres e-mail jest już powiązany z kontem", + "signup.firstName": "Imię", + "signup.lastName": "Nazwisko", + "signup.login": "$t(menu.login)", + "signup.newsletter.consent": "Interesuje mnie car pooling, chcę zapisać się do newslettera.", + "signup.password": "Hasło", + "signup.submit": "Stwórz swoje konto", + "signup.title": "Załóż konto", + "signup.tos.consent": "", + "signup.with_mail": "Kontynuuj z e-mailem", + "supportCaroster": "Wesprzyj Caroster", + "tour.creator.step1": "Dodaj nowy samochód klikając ten przycisk.", + "tour.creator.step2": "Lista oczekujących obejmuje pasażerów, którzy nie mają jeszcze miejsca w samochodzie.", + "tour.creator.step3": "Informacje o wydarzeniu można modyfikować w tym menu.", + "tour.creator.step4": "Wydarzenie można edytować, klikając przycisk edycji.", + "tour.creator.step5": "Od teraz możesz skopiować link, aby udostępnić go za pośrednictwem poczty e-mail, WhatsAppa, Telegrama itp.", + "tour.user.step1": "Dodaj nowy samochód, klikając ten przycisk.", + "tour.user.step2": "", + "tour.user.step3": "Dostęp do informacji o wydarzeniu można uzyskać z tego menu.", + "tour.user.step4": "Od teraz możesz skopiować link, aby udostępnić go za pośrednictwem poczty e-mail, WhatsAppa, Telegrama itp.", + "tour.welcome.nope": "Później", + "tour.welcome.onboard": "Tak, ruszajmy!", + "tour.welcome.text": "Czy chcesz zobaczyć w prezentację naszych funkcji?", + "tour.welcome.title": "Witamy w Caroster!", + "travel.actions.remove_alert": "", + "travel.actions.remove_alert.caroster_plus": "", + "travel.actions.removed": "", + "travel.actions.removed.caroster_plus": "", + "travel.creation.car.title": "", + "travel.creation.created": "", + "travel.creation.date": "", + "travel.creation.meeting": "", + "travel.creation.name": "", + "travel.creation.notes": "", + "travel.creation.phone": "", + "travel.creation.phoneHelper.faq": "/pl/faq", + "travel.creation.phoneHelper.why": "", + "travel.creation.seats": "", + "travel.creation.submit": "Dodaj", + "travel.creation.time": "", + "travel.creation.title": "", + "travel.creation.travel.title": "Podróż", + "travel.errors.cant_create": "", + "travel.errors.cant_remove": "", + "travel.errors.cant_remove_passenger": "", + "travel.errors.cant_update": "", + "travel.fields.details": "Notatki", + "travel.fields.meeting_point": "", + "travel.fields.phone": "Kontakt", + "travel.moved_to_waiting_list": "", + "travel.passengers.add": "", + "travel.passengers.add_me": "", + "travel.passengers.add_someone": "", + "travel.passengers.add_to_car": "", + "travel.passengers.add_to_travel": "", + "travel.passengers.add_to_waitingList": "", + "travel.passengers.email": "Email", + "travel.passengers.email_helpertext": "", + "travel.passengers.email_placeholder": "Email", + "travel.passengers.email_placeholder_optionnal": "", + "travel.passengers.empty": "", + "travel.passengers.location": "", + "travel.passengers.location_helper": "", + "travel.passengers.location_placeholder": "", + "travel.passengers.name": "Imię", + "travel.passengers.name_placeholder": "Imię", + "travel.passengers.register_to_waiting_list": "", + "travel.passengers.registered": "Przypisano", + "travel.passengers.remove": "Usuń", + "travel.requestTrip.description": "", + "travel.requestTrip.email": "Email", + "travel.requestTrip.emailHelper": "", + "travel.requestTrip.phone": "Numer telefonu", + "travel.requestTrip.send": "Wyślij", + "travel.requestTrip.title": "", + "travel.vehicle.add": "", + "travel.vehicle.empty": "", + "travel.vehicle.name": "", + "travel.vehicle.seats_number": "", + "travel.vehicle.title": "" +}
M frontend/locales/sv.jsonfrontend/locales/sv.json

@@ -1,6 +1,4 @@

{ - "PROTECTED.languages.en": "English", - "PROTECTED.languages.fr": "Français", "confirm.creating": "Skapar kontot", "confirm.google.title": "Färdigställ registrering", "confirm.text": "Du har fått ett E-mail med en länk. Klicka på den här länken för att bekräfta ditt konto.",

@@ -22,9 +20,9 @@ "drawer.options": "",

"drawer.travels": "", "drawer.waitingList": "", "event.actions.add_to_my_events": "", - "event.actions.share": "", "event.actions.copied": "", "event.actions.noShareCapability": "", + "event.actions.share": "", "event.add_to_my_events.login": "$t(menu.login)", "event.add_to_my_events.register": "$t(menu.register)", "event.add_to_my_events.text_html": "",

@@ -53,10 +51,10 @@ "event.fields.date": "",

"event.fields.date_placeholder": "", "event.fields.description": "", "event.fields.empty": "", + "event.fields.lang": "", "event.fields.link": "", "event.fields.link_desc": "", "event.fields.name": "", - "event.fields.lang": "", "event.fields.share": "", "event.loginToAttend": "", "event.loginToAttend.desc": "",

@@ -67,18 +65,6 @@ "event.no_travel.desc": "",

"event.no_travel.title": "", "event.not_found": "", "event.title": "", - "options.plus.title": "", - "options.plus.admins": "", - "options.plus.creator": "", - "options.plus.activationOK": "", - "options.plus.activationForbiden": "", - "options.plus.addAdmin": "", - "options.plus.addAdmin.email": "", - "options.plus.addAdmin.emailHelper": "", - "options.plus.adminAdded": "", - "options.plus.addAdminError": "", - "options.plus.adminDeleted": "", - "options.plus.deleteAdminError": "", "generic.access": "", "generic.add": "toevoegen", "generic.cancel": "",

@@ -114,30 +100,42 @@ "menu.logout": "",

"menu.new_event": "", "menu.profile": "", "menu.register": "", - "notifications.title": "", - "notifications.markAllRead": "", - "notifications.content": "", + "notification.type.AddedAsAdmin.content": "", + "notification.type.ContactTripCreator.content": "", + "notification.type.DeletedFromTrip.content": "", + "notification.type.DeletedTrip.content": "", + "notification.type.DeletedYourTrip.content": "", + "notification.type.EnabledCarosterPlus.content": "", "notification.type.NewPassengerInYourTrip.content": "", "notification.type.NewTrip.content": "", "notification.type.NewTripAlert.content": "", - "notification.type.DeletedTrip.content": "", - "notification.type.DeletedYourTrip.content": "", - "notification.type.DeletedFromTrip.content": "", - "notification.type.AddedAsAdmin.content": "", - "notification.type.ContactTripCreator.content": "", - "notification.type.EnabledCarosterPlus.content": "", - "passenger.assign.title": "", + "notifications.content": "", + "notifications.markAllRead": "", + "notifications.title": "", + "options.plus.activationForbiden": "", + "options.plus.activationOK": "", + "options.plus.addAdmin": "", + "options.plus.addAdmin.email": "", + "options.plus.addAdmin.emailHelper": "", + "options.plus.addAdminError": "", + "options.plus.adminAdded": "", + "options.plus.adminDeleted": "", + "options.plus.admins": "", + "options.plus.creator": "", + "options.plus.deleteAdminError": "", + "options.plus.title": "", "passenger.actions.place": "", "passenger.actions.remove_alert": "", - "passenger.availability.seats": "", - "passenger.availability.seats_plural": "", "passenger.assign.assign": "", + "passenger.assign.availableCars": "", "passenger.assign.departure": "", "passenger.assign.no_travel.desc": "", "passenger.assign.no_travel.title": "", + "passenger.assign.seats": "", "passenger.assign.seats_0": "Full", - "passenger.assign.seats": "", - "passenger.assign.availableCars": "", + "passenger.assign.title": "", + "passenger.availability.seats": "", + "passenger.availability.seats_plural": "", "passenger.deleted": "", "passenger.errors.cant_add_passenger": "", "passenger.errors.cant_remove_passenger": "",

@@ -164,13 +162,13 @@ "profile.lastName": "",

"profile.new_password": "", "profile.not_defined": "", "profile.password_changed": "", - "profile.title": "", + "profile.stripe_link.button": "", "profile.stripe_link.title": "", - "profile.stripe_link.button": "", + "profile.title": "", + "signin.email": "", + "signin.emailConfirmation": "", "signin.errors.CredentialsSignin": "", "signin.errors.EmailNotConfirmed": "", - "signin.email": "", - "signin.emailConfirmation": "", "signin.login": "", "signin.no_account": "", "signin.or": "",

@@ -187,10 +185,10 @@ "signup.firstName": "",

"signup.lastName": "", "signup.login": "", "signup.newsletter.consent": "", - "signup.tos.consent": "", "signup.password": "", "signup.submit": "", "signup.title": "", + "signup.tos.consent": "", "signup.with_mail": "", "supportCaroster": "Support Caroster", "tour.creator.step1": "",

@@ -234,9 +232,7 @@ "travel.fields.phone": "",

"travel.moved_to_waiting_list": "", "travel.passengers.add": "", "travel.passengers.add_me": "", - "travel.passengers.registered": "", "travel.passengers.add_someone": "", - "travel.passengers.remove": "", "travel.passengers.add_to_car": "", "travel.passengers.add_to_travel": "", "travel.passengers.add_to_waitingList": "",

@@ -251,15 +247,17 @@ "travel.passengers.location_placeholder": "",

"travel.passengers.name": "", "travel.passengers.name_placeholder": "", "travel.passengers.register_to_waiting_list": "", - "travel.requestTrip.title": "", + "travel.passengers.registered": "", + "travel.passengers.remove": "", "travel.requestTrip.description": "", - "travel.requestTrip.phone": "", "travel.requestTrip.email": "", "travel.requestTrip.emailHelper": "", + "travel.requestTrip.phone": "", "travel.requestTrip.send": "", + "travel.requestTrip.title": "", "travel.vehicle.add": "", "travel.vehicle.empty": "", "travel.vehicle.name": "", "travel.vehicle.seats_number": "", "travel.vehicle.title": "" -} +}
M frontend/package.jsonfrontend/package.json

@@ -5,8 +5,6 @@ "private": true,

"scripts": { "dev": "next dev", "build": "next build", - "i18n-format": "sync-i18n --files 'locales/*.json' --primary en --newKeysEmpty true", - "i18n-unused": "node i18n-unused", "start": "next start", "lint": "next lint", "gql": "graphql-codegen --config codegen.yml"

@@ -57,7 +55,6 @@ "eslint-config-next": "^13.4.18",

"eslint-config-prettier": "^9.0.0", "fs": "^0.0.1-security", "glob": "^10.3.3", - "i18next-json-sync": "^3.1.2", "ts-node": "^10.9.1" } }
M frontend/pages/_app.tsxfrontend/pages/_app.tsx

@@ -45,7 +45,7 @@ <ThemeProvider theme={theme}>

<LocalizationProvider dateAdapter={AdapterMoment} dateLibInstance={moment} - adapterLocale={locale === 'fr' ? 'fr-ch' : 'en'} + adapterLocale={locale} > <CssBaseline /> <Head>
M frontend/react-i18next.config.jsfrontend/react-i18next.config.js

@@ -3,7 +3,7 @@

module.exports = { i18n: { defaultLocale: FALLBACK_LANGUAGE, - locales: [...new Set([FALLBACK_LANGUAGE, 'en', 'fr'])], + locales: [...new Set([FALLBACK_LANGUAGE, 'en', 'fr', 'nl'])], localeDetection: false, }, trailingSlash: true,