diff --git a/modules/webapp/src/main/elm/Messages.elm b/modules/webapp/src/main/elm/Messages.elm index e7423aea..8cc059ef 100644 --- a/modules/webapp/src/main/elm/Messages.elm +++ b/modules/webapp/src/main/elm/Messages.elm @@ -165,7 +165,7 @@ fr tz = , upload = Messages.Page.Upload.fr , itemDetail = Messages.Page.ItemDetail.fr tz , queue = Messages.Page.Queue.fr tz - , userSettings = Messages.Page.UserSettings.gb tz + , userSettings = Messages.Page.UserSettings.fr tz , manageData = Messages.Page.ManageData.gb tz , search = Messages.Page.Search.gb tz , share = Messages.Page.Share.gb tz diff --git a/modules/webapp/src/main/elm/Messages/Comp/ChangePasswordForm.elm b/modules/webapp/src/main/elm/Messages/Comp/ChangePasswordForm.elm index f7e84644..bc597be2 100644 --- a/modules/webapp/src/main/elm/Messages/Comp/ChangePasswordForm.elm +++ b/modules/webapp/src/main/elm/Messages/Comp/ChangePasswordForm.elm @@ -9,6 +9,7 @@ module Messages.Comp.ChangePasswordForm exposing ( Texts , de , gb + , fr ) import Http @@ -61,3 +62,19 @@ de = , fillRequiredFields = "Bitte die erforderlichen Felder ausfüllen." , passwordChangeSuccessful = "Das Passwort wurde geändert." } + + +fr : Texts +fr = + { basics = Messages.Basics.fr + , httpError = Messages.Comp.HttpError.fr + , currentPassword = "Mot de passe actuel" + , newPassword = "Nouveau mot de passe" + , repeatPassword = "Nouveau mot de passe (confirmation)" + , currentPasswordPlaceholder = "Mot de passe" + , newPasswordPlaceholder = "Mot de passe" + , repeatPasswordPlaceholder = "Mot de passe" + , passwordMismatch = "Les mots de passe ne correspondent pas." + , fillRequiredFields = "Veuillez compléter les champs requis." + , passwordChangeSuccessful = "Le mot de passe a été mis à jour." + } diff --git a/modules/webapp/src/main/elm/Messages/Comp/ChannelForm.elm b/modules/webapp/src/main/elm/Messages/Comp/ChannelForm.elm index fc034814..5d190581 100644 --- a/modules/webapp/src/main/elm/Messages/Comp/ChannelForm.elm +++ b/modules/webapp/src/main/elm/Messages/Comp/ChannelForm.elm @@ -9,6 +9,7 @@ module Messages.Comp.ChannelForm exposing ( Texts , de , gb + , fr ) import Messages.Basics @@ -45,3 +46,12 @@ de = , mailForm = Messages.Comp.NotificationMailForm.de , httpForm = Messages.Comp.NotificationHttpForm.de } + +fr : Texts +fr = + { basics = Messages.Basics.fr + , matrixForm = Messages.Comp.NotificationMatrixForm.fr + , gotifyForm = Messages.Comp.NotificationGotifyForm.fr + , mailForm = Messages.Comp.NotificationMailForm.fr + , httpForm = Messages.Comp.NotificationHttpForm.fr + } diff --git a/modules/webapp/src/main/elm/Messages/Comp/ChannelRefInput.elm b/modules/webapp/src/main/elm/Messages/Comp/ChannelRefInput.elm index e5730b19..3b848a37 100644 --- a/modules/webapp/src/main/elm/Messages/Comp/ChannelRefInput.elm +++ b/modules/webapp/src/main/elm/Messages/Comp/ChannelRefInput.elm @@ -9,6 +9,7 @@ module Messages.Comp.ChannelRefInput exposing ( Texts , de , gb + , fr ) import Messages.Basics @@ -39,3 +40,13 @@ de = , placeholder = "Wähle…" , noCategory = "Kein Kanal" } + +fr : Texts +fr = + { basics = Messages.Basics.fr + , channelType = Messages.Data.ChannelType.fr + , placeholder = "Choisir..." + , noCategory = "Pas de canal" + } + + diff --git a/modules/webapp/src/main/elm/Messages/Comp/DueItemsTaskForm.elm b/modules/webapp/src/main/elm/Messages/Comp/DueItemsTaskForm.elm index 582200cf..0b5b0b34 100644 --- a/modules/webapp/src/main/elm/Messages/Comp/DueItemsTaskForm.elm +++ b/modules/webapp/src/main/elm/Messages/Comp/DueItemsTaskForm.elm @@ -9,6 +9,7 @@ module Messages.Comp.DueItemsTaskForm exposing ( Texts , de , gb + , fr ) import Data.TimeZone exposing (TimeZone) @@ -138,3 +139,43 @@ de tz = , channelRequired = "Ein Versandkanal muss angegeben werden." , channelHeader = "Kanäle" } + +fr : TimeZone -> Texts +fr tz = + { basics = Messages.Basics.fr + , calEventInput = Messages.Comp.CalEventInput.fr tz + , httpError = Messages.Comp.HttpError.fr + , channelForm = Messages.Comp.ChannelForm.fr + , tagDropdown = Messages.Comp.TagDropdown.fr + , channelType = Messages.Data.ChannelType.fr + , channelRef = Messages.Comp.ChannelRefInput.fr + , reallyDeleteTask = "Confirmer la suppression de cette tâche ?" + , startOnce = "Lancer une une seule fois" + , startTaskNow = "Démarrer cette tâche maintenant" + , deleteThisTask = "Supprimer cette tâche" + , enableDisable = "Activer ou désactiver cette tâche." + , summary = "Résumé" + , summaryInfo = "Lisible pour un humain, juste pour affichage" + , tagsInclude = "Tags à inclure (and)" + , tagsIncludeInfo = "Les documents doivent avoir tous les tags spécifiés ici." + , tagsExclude = "Tags à exclure (or)" + , tagsExcludeInfo = "Les documents ne doivent avoir aucun tag spécifié ici" + , remindDaysLabel = "Jours de rappel" + , remindDaysInfo = "Sélectionner les document avec un date d'échéance *plus petite que* `aujourd'hui+jours_restant`" + , capOverdue = "Documents à échéance dépassée" + , capOverdueInfo = "Si coché, seuls les documents avec une date d'échéance *supérieur à * `aujourd'hui - jours_restant` sont retenus." + , schedule = "Programmation" + , scheduleClickForHelp = "Cliquer ici pour l'aide" + , scheduleInfo = + "Spécifie quand et à quelle fréquence cette tâche doit se lancer." + ++ "Utiliser les jours de la semaine à l'anglaise en 3 lettres. Soit une valeur simple, " + ++ "une liste (ex: 1,2,3), un interval (ex: 1..3) ou un '*' (pour ous) " + ++ "est autorisé pour chaque partie." + , connectionMissing = "Aucune connexion E-mail de configuré, aller dans Paramètres E-Mail pour en ajouter une." + , invalidCalEvent = "L'événement du calendrier n'est pas valide" + , remindDaysRequired = "Le nombre de jour de rappel est requis" + , recipientsRequired = "Au moins un destinataire est requis." + , queryLabel = "Requête" + , channelRequired = "Un canal valide doit être entré." + , channelHeader = "Canaux" + } diff --git a/modules/webapp/src/main/elm/Messages/Comp/DueItemsTaskList.elm b/modules/webapp/src/main/elm/Messages/Comp/DueItemsTaskList.elm index 0da1b2d9..9d1ed88d 100644 --- a/modules/webapp/src/main/elm/Messages/Comp/DueItemsTaskList.elm +++ b/modules/webapp/src/main/elm/Messages/Comp/DueItemsTaskList.elm @@ -9,6 +9,7 @@ module Messages.Comp.DueItemsTaskList exposing ( Texts , de , gb + , fr ) import Messages.Basics @@ -42,3 +43,12 @@ de = , schedule = "Zeitplan" , connection = "Kanal" } + +fr : Texts +fr = + { basics = Messages.Basics.fr + , channelType = Messages.Data.ChannelType.fr + , summary = "Résumé" + , schedule = "Programmation" + , connection = "Canal" + } diff --git a/modules/webapp/src/main/elm/Messages/Comp/DueItemsTaskManage.elm b/modules/webapp/src/main/elm/Messages/Comp/DueItemsTaskManage.elm index 4f315aef..12a7a0b1 100644 --- a/modules/webapp/src/main/elm/Messages/Comp/DueItemsTaskManage.elm +++ b/modules/webapp/src/main/elm/Messages/Comp/DueItemsTaskManage.elm @@ -9,6 +9,7 @@ module Messages.Comp.DueItemsTaskManage exposing ( Texts , de , gb + , fr ) import Data.TimeZone exposing (TimeZone) @@ -65,3 +66,18 @@ de tz = , taskStarted = "Auftrag gestartet." , taskDeleted = "Auftrag gelöscht." } + +fr : TimeZone -> Texts +fr tz = + { basics = Messages.Basics.fr + , notificationForm = Messages.Comp.DueItemsTaskForm.fr tz + , notificationTable = Messages.Comp.DueItemsTaskList.fr + , httpError = Messages.Comp.HttpError.fr + , channelType = Messages.Data.ChannelType.fr + , newTask = "Nouvelle tâche" + , createNewTask = "Créer une nouvelle tâche de notification" + , taskCreated = "Tâche créée" + , taskUpdated = "Tâche mise à jours" + , taskStarted = "Tâche démarrée" + , taskDeleted = "Tache supprimée" + } diff --git a/modules/webapp/src/main/elm/Messages/Comp/EmailSettingsForm.elm b/modules/webapp/src/main/elm/Messages/Comp/EmailSettingsForm.elm index 78ee41d3..7d18dafb 100644 --- a/modules/webapp/src/main/elm/Messages/Comp/EmailSettingsForm.elm +++ b/modules/webapp/src/main/elm/Messages/Comp/EmailSettingsForm.elm @@ -9,6 +9,7 @@ module Messages.Comp.EmailSettingsForm exposing ( Texts , de , gb + , fr ) import Data.SSLType exposing (SSLType) @@ -79,3 +80,24 @@ de = , ssl = "SSL" , ignoreCertCheck = "Zertifikatsprüfung ignorieren" } + +fr : Texts +fr = + { basics = Messages.Basics.fr + , sslTypeLabel = Messages.Data.SSLType.fr + , connectionPlaceholder = "Nom de la connection ex: 'gmail.com'" + , connectionNameInfo = "Le nom ne doit pas comprendre d'espace ou de caractères spéciaux." + , smtpHost = "Hôte SMTP" + , smtpHostPlaceholder = "SMTP hostname ex: 'mail.gmail.com'" + , smtpPort = "Port SMTP" + , smtpUser = "Identifiant SMTP" + , smtpUserPlaceholder = "identifiant SMTP, ex: 'your.name@gmail.com'" + , smtpPassword = "Mot de passe SMTP" + , smtpPasswordPlaceholder = "Mot de passe" + , fromAddress = "De" + , fromAddressPlaceholder = "Email de l'expéditeur" + , replyTo = "Répondre à" + , replyToPlaceholder = "Adresse de réponse optionnelle" + , ssl = "SSL" + , ignoreCertCheck = "Ignorer la vérification des certificats" + } diff --git a/modules/webapp/src/main/elm/Messages/Comp/EmailSettingsManage.elm b/modules/webapp/src/main/elm/Messages/Comp/EmailSettingsManage.elm index 68ca8a1f..c66fbb5f 100644 --- a/modules/webapp/src/main/elm/Messages/Comp/EmailSettingsManage.elm +++ b/modules/webapp/src/main/elm/Messages/Comp/EmailSettingsManage.elm @@ -9,6 +9,7 @@ module Messages.Comp.EmailSettingsManage exposing ( Texts , de , gb + , fr ) import Http @@ -57,3 +58,17 @@ de = , deleteThisEntry = "Verbindung löschen" , fillRequiredFields = "Bitte die erforderlichen Felder ausfüllen." } + + +fr : Texts +fr = + { basics = Messages.Basics.fr + , settingsForm = Messages.Comp.EmailSettingsForm.fr + , settingsTable = Messages.Comp.EmailSettingsTable.fr + , httpError = Messages.Comp.HttpError.fr + , newSettings = "Nouvelle Connexion" + , addNewSmtpSettings = "Ajouter un serveur SMTP" + , reallyDeleteConnection = "Confirmer la suppression de cette connexion ?" + , deleteThisEntry = "Supprimer cette connexion" + , fillRequiredFields = "Veuillez compléter les champs requis." + } diff --git a/modules/webapp/src/main/elm/Messages/Comp/EmailSettingsTable.elm b/modules/webapp/src/main/elm/Messages/Comp/EmailSettingsTable.elm index 7baabf3a..750b3152 100644 --- a/modules/webapp/src/main/elm/Messages/Comp/EmailSettingsTable.elm +++ b/modules/webapp/src/main/elm/Messages/Comp/EmailSettingsTable.elm @@ -9,6 +9,7 @@ module Messages.Comp.EmailSettingsTable exposing ( Texts , de , gb + , fr ) import Messages.Basics @@ -35,3 +36,12 @@ de = , hostPort = "Server/Port" , from = "Absender" } + +fr : Texts +fr = + { basics = Messages.Basics.fr + , hostPort = "Hôte/Port" + , from = "De" + } + + diff --git a/modules/webapp/src/main/elm/Messages/Comp/ImapSettingsForm.elm b/modules/webapp/src/main/elm/Messages/Comp/ImapSettingsForm.elm index bebd3074..afe687e1 100644 --- a/modules/webapp/src/main/elm/Messages/Comp/ImapSettingsForm.elm +++ b/modules/webapp/src/main/elm/Messages/Comp/ImapSettingsForm.elm @@ -9,6 +9,7 @@ module Messages.Comp.ImapSettingsForm exposing ( Texts , de , gb + , fr ) import Data.SSLType exposing (SSLType) @@ -73,3 +74,22 @@ de = , enableOAuth2 = "Aktiviere OAuth2-Authentifizierung" , oauth2Info = "Wenn dies aktiviert ist, wird via XOAuth authentifiziert wobei das Passwort als Access-Token verwendet wird." } + +fr : Texts +fr = + { basics = Messages.Basics.fr + , sslTypeLabel = Messages.Data.SSLType.fr + , connectionNamePlaceholder = "Nom de la connexion ex: gmail.com" + , connectionNameInfo = "Le nom de la connexion ne doit contenir i espace ni caractères spéciaux" + , imapHost = "Hôte IMAP" + , imapHostPlaceholder = "Nom de l'hôte IMAP ex: 'mail.gmail.com'" + , imapPort = "Port IMAP" + , imapUser = "Utilisateur IMAP" + , imapUserPlaceholder = "Identifiant IMAP, ex: 'your.name@gmail.com'" + , imapPassword = "Mot de passe IMAP" + , imapPasswordPlaceholder = "Mot de passe" + , ssl = "SSL" + , ignoreCertCheck = "Ignorer la vérification des certificats" + , enableOAuth2 = "Activer l'authentification OAuth2" + , oauth2Info = "Ceci permet la connexion via XOAuth en utilisant le mot de passe comme token d'accès" + } diff --git a/modules/webapp/src/main/elm/Messages/Comp/ImapSettingsManage.elm b/modules/webapp/src/main/elm/Messages/Comp/ImapSettingsManage.elm index 54c3dcb3..1979d120 100644 --- a/modules/webapp/src/main/elm/Messages/Comp/ImapSettingsManage.elm +++ b/modules/webapp/src/main/elm/Messages/Comp/ImapSettingsManage.elm @@ -9,6 +9,7 @@ module Messages.Comp.ImapSettingsManage exposing ( Texts , de , gb + , fr ) import Http @@ -57,3 +58,18 @@ de = , deleteThisEntry = "Lösche diese Verbindung" , fillRequiredFields = "Bitte die erforderlichen Felder ausfüllen." } + +fr : Texts +fr = + { basics = Messages.Basics.fr + , imapForm = Messages.Comp.ImapSettingsForm.fr + , imapTable = Messages.Comp.ImapSettingsTable.fr + , httpError = Messages.Comp.HttpError.fr + , addNewImapSettings = "Ajouter un connexion IMAP" + , newSettings = "Ajouter une nouvelle connexion" + , reallyDeleteSettings = "Confirmer la suppression de cette connexion ?" + , deleteThisEntry = "Supprimer cette entrée" + , fillRequiredFields = "Veuillez compléter les champs requis" + } + + diff --git a/modules/webapp/src/main/elm/Messages/Comp/ImapSettingsTable.elm b/modules/webapp/src/main/elm/Messages/Comp/ImapSettingsTable.elm index d43ca961..830e2301 100644 --- a/modules/webapp/src/main/elm/Messages/Comp/ImapSettingsTable.elm +++ b/modules/webapp/src/main/elm/Messages/Comp/ImapSettingsTable.elm @@ -5,7 +5,7 @@ -} -module Messages.Comp.ImapSettingsTable exposing (Texts, de, gb) +module Messages.Comp.ImapSettingsTable exposing (Texts, de, gb, fr) import Messages.Basics @@ -28,3 +28,10 @@ de = { basics = Messages.Basics.de , hostPort = "Server/Port" } + + +fr : Texts +fr = + { basics = Messages.Basics.fr + , hostPort = "Hôte/Port" + } diff --git a/modules/webapp/src/main/elm/Messages/Comp/NotificationGotifyForm.elm b/modules/webapp/src/main/elm/Messages/Comp/NotificationGotifyForm.elm index 4a6afb30..d6cca46f 100644 --- a/modules/webapp/src/main/elm/Messages/Comp/NotificationGotifyForm.elm +++ b/modules/webapp/src/main/elm/Messages/Comp/NotificationGotifyForm.elm @@ -9,6 +9,7 @@ module Messages.Comp.NotificationGotifyForm exposing ( Texts , de , gb + , fr ) import Messages.Basics @@ -41,3 +42,14 @@ de = , priority = "Priorität" , priorityInfo = "Eine Zahl, um die Wichtigkeit anzugeben (je höher desto wichtiger). Es steuert, wie eine Notifizierung erscheint." } + +fr : Texts +fr = + { basics = Messages.Basics.fr + , gotifyUrl = "Gotify URL" + , appKey = "App Key" + , priority = "Priorité" + , priorityInfo = "A number denoting the importance of a message controlling notification behaviour. The higher the more important." + } + + diff --git a/modules/webapp/src/main/elm/Messages/Comp/NotificationHttpForm.elm b/modules/webapp/src/main/elm/Messages/Comp/NotificationHttpForm.elm index e9a2c336..1befccd0 100644 --- a/modules/webapp/src/main/elm/Messages/Comp/NotificationHttpForm.elm +++ b/modules/webapp/src/main/elm/Messages/Comp/NotificationHttpForm.elm @@ -9,6 +9,7 @@ module Messages.Comp.NotificationHttpForm exposing ( Texts , de , gb + , fr ) import Messages.Basics @@ -32,3 +33,11 @@ de = { basics = Messages.Basics.de , httpUrl = "URL" } + +fr : Texts +fr = + { basics = Messages.Basics.fr + , httpUrl = "URL HTTP" + } + + diff --git a/modules/webapp/src/main/elm/Messages/Comp/NotificationMailForm.elm b/modules/webapp/src/main/elm/Messages/Comp/NotificationMailForm.elm index 9e88a3c2..9132fa1d 100644 --- a/modules/webapp/src/main/elm/Messages/Comp/NotificationMailForm.elm +++ b/modules/webapp/src/main/elm/Messages/Comp/NotificationMailForm.elm @@ -9,6 +9,7 @@ module Messages.Comp.NotificationMailForm exposing ( Texts , de , gb + , fr ) import Messages.Basics @@ -47,3 +48,15 @@ de = , recipientsInfo = "Eine oder mehrere E-Mail-Adressen, jede mit 'Eingabe' bestätigen." , recipientsRequired = "Mindestens ein Empfänger muss angegeben werden." } +fr : Texts +fr = + { basics = Messages.Basics.fr + , selectConnection = "Sélectionner la connexion..." + , sendVia = "Envoyer via" + , sendViaInfo = "La connexion SMTP à utiliser pour envoyer les notifications par mail." + , recipients = "Destinataire(s)" + , recipientsInfo = "Une ou plusieurs adresses mail, confirmer chacune en pressant 'Entrée'" + , recipientsRequired = "Au moins un destinataire est requis" + } + + diff --git a/modules/webapp/src/main/elm/Messages/Comp/NotificationMatrixForm.elm b/modules/webapp/src/main/elm/Messages/Comp/NotificationMatrixForm.elm index 7e44d5c6..ba66b54b 100644 --- a/modules/webapp/src/main/elm/Messages/Comp/NotificationMatrixForm.elm +++ b/modules/webapp/src/main/elm/Messages/Comp/NotificationMatrixForm.elm @@ -9,6 +9,7 @@ module Messages.Comp.NotificationMatrixForm exposing ( Texts , de , gb + , fr ) import Messages.Basics @@ -38,3 +39,12 @@ de = , roomId = "Room ID" , accessKey = "Access Token" } +fr : Texts +fr = + { basics = Messages.Basics.fr + , homeServer = "URL du homeserver" + , roomId = "Room ID" + , accessKey = "Token d'accès" + } + + diff --git a/modules/webapp/src/main/elm/Messages/Comp/ScanMailboxForm.elm b/modules/webapp/src/main/elm/Messages/Comp/ScanMailboxForm.elm index 17d59fb2..19b1b2ee 100644 --- a/modules/webapp/src/main/elm/Messages/Comp/ScanMailboxForm.elm +++ b/modules/webapp/src/main/elm/Messages/Comp/ScanMailboxForm.elm @@ -9,6 +9,7 @@ module Messages.Comp.ScanMailboxForm exposing ( Texts , de , gb + , fr ) import Data.TimeZone exposing (TimeZone) @@ -244,3 +245,85 @@ kann hier ein Wert für alle festgelegt werden. Bei 'Automatisch' wird auf den S , saveNewTitle = "Einen neuen Auftrag speichern" , updateTitle = "Den Auftrag aktualisieren" } + + +fr : TimeZone -> Texts +fr tz = + { basics = Messages.Basics.fr + , calEventInput = Messages.Comp.CalEventInput.fr tz + , httpError = Messages.Comp.HttpError.fr + , tagDropdown = Messages.Comp.TagDropdown.fr + , reallyDeleteTask = "Confirmer la suppression de cette tâche ?" + , startOnce = "Exécuter une seule fois" + , startNow = "Exécuter cette tâche maintenant" + , deleteThisTask = "Supprimer cette tâche" + , generalTab = "Général" + , processingTab = "En cours d'exécution" + , additionalFilterTab = "Filtre additionnel" + , postProcessingTab = "Traitement ad hoc" + , metadataTab = "Metadonnées" + , scheduleTab = "Programmation" + , processingTabInfo = "Ces paramètres définissent quel mails sont récupérés sur la boite mail." + , additionalFilterTabInfo = "Ces filtres sont aplliqués à tous les mails récupérés afin de trier ceux qui doivent être importés." + , postProcessingTabInfo = "Ceci définit ce qui arrive aux mails qui sont importés" + , metadataTabInfo = "Défini les métadonnées qui seront affectées à tous les documents créés par cette tâche." + , scheduleTabInfo = "Defini quand les mails doivent être importés" + , selectConnection = "Choisir une connexion..." + , enableDisable = "Active ou désactive cette tâche." + , mailbox = "Mailbox" + , summary = "Résumé" + , summaryInfo = "Un texte pour humain, uniquement pour affichage" + , connectionInfo = "La connexion IMAP utilisée pour récupérer les mails" + , folders = "Dossiers" + , foldersInfo = "Le dossier où chercher les mails" + , receivedHoursInfo = "Sélectionner les mails plus récent que `maintenant - HeureDepuisRéception`" + , receivedHoursLabel = "Heures depuis réception" + , fileFilter = "Filtre de fichier" + , fileFilterInfo = + "Entrer un filtre 'glob' pour les pièces-jointes. Par example, pour extraire uniquement les pdf:" + ++ " `*.pdf`. Pour inclure le corps du meassage, ajouter des fichiers html ou" + ++ " `mail.html`. Les Globs peuvent être combinés avec OR:" + ++ " `*.pdf|mail.html`. Aucun filtre par défaut correspond à `*`" + ++ " qui revient à tout inclure" + , subjectFilter = "Filtre de sujet" + , subjectFilterInfo = + "Entrer un filtre 'glob' s'appliquant au sujet. Par exemple: " + ++ "`*Scanned Document*`. Aucun filtre correspond à `*` qui revient à tout inclure." + , postProcessingLabel = "Appliquer le traitement add hoc tous les mails" + , postProcessingInfo = + "Quand des mails sont récupérés mais non importés du fait de 'filtres additionnels', cette option permet de " + ++ "controler s'ils doivent être déplacés vers un dossier cible ou supprimés." + ++ " Si non coché, seuls les mails importés bénéficient d'un traitement add hoc, les autres restent où ils sont." + , targetFolder = "Dossier cible" + , targetFolderInfo = "Déplacer les mails vers ce dossier" + , deleteMailLabel = "Effacer les mails importés" + , deleteMailInfo = + "Supprimer ou non tous les mails importés dans docspell. Ceci ne s'applique que si le dossier cible n'est pas défini" + , itemDirection = "Sens des documents" + , automatic = "Automatique" + , itemDirectionInfo = + "Défini le sens pour un document. Si vous savez que tous les mails sont entrant ou sortant" + ++ ", il est possible le fixer ici. Sinon ce sera déviné en regardant l'émetteur et le destinataire" + , itemFolder = "Dossier documents" + , itemFolderInfo = "Placer tous les documents d'une boite mail dans un dossier" + , tagsInfo = "Choisir les tags à appliquer aux documents" + , documentLanguage = "Langue" + , documentLanguageInfo = + "Utilisé pour l'extraction et l'analyse du texte. La langue" + ++ "par défaut du groupe est utilisée, si non spécifié" + , schedule = "Programmation" + , scheduleClickForHelp = "Cliquer pour l'aide" + , scheduleInfo = + "Spécifie la fréquence à laquelle cette tâche doit être lancée" + ++ "Utiliser les jours de la semaine anglais en 3 lettres. Soit un valeur simple, " + ++ "une liste (ex: 1,2,3), un interval (ex: 1..3) ou '*' (pour tous) " + ++ "est autorisé pour chaque partie." + , connectionMissing = "Pas de connexion mail configurée. Aller dans parmètres mail pour en ajouter une." + , noProcessingFolders = "Pas de dossier de traitement donné" + , invalidCalEvent = "L'événement calendaire n'est pas valide" + , attachmentsOnlyLabel = "Importer uniquement les pièces-jointes" + , attachmentsOnlyInfo = "Ignore le corps des messages et importe uniquement les pièces-jointes" + , save = "Enregistrer" + , saveNewTitle = "Enregistrer une nouvelle tâche" + , updateTitle = "Mettre à jour la tâche" + } diff --git a/modules/webapp/src/main/elm/Messages/Comp/ScanMailboxManage.elm b/modules/webapp/src/main/elm/Messages/Comp/ScanMailboxManage.elm index 4129e251..90efde2c 100644 --- a/modules/webapp/src/main/elm/Messages/Comp/ScanMailboxManage.elm +++ b/modules/webapp/src/main/elm/Messages/Comp/ScanMailboxManage.elm @@ -9,6 +9,7 @@ module Messages.Comp.ScanMailboxManage exposing ( Texts , de , gb + , fr ) import Data.TimeZone exposing (TimeZone) @@ -61,3 +62,18 @@ de tz = , taskStarted = "Auftrag gestartet." , taskDeleted = "Auftrag gelöscht." } + + +fr : TimeZone -> Texts +fr tb = + { basics = Messages.Basics.fr + , form = Messages.Comp.ScanMailboxForm.fr tb + , table = Messages.Comp.ScanMailboxTable.fr + , httpError = Messages.Comp.HttpError.fr + , newTask = "Nouvelle tâche" + , createNewTask = "Créer une nouvelle tâche de surveillance de boite mail" + , taskCreated = "Tâche créé" + , taskUpdated = "Tâche mise à jour" + , taskStarted = "Tâche démarrée." + , taskDeleted = "Tâche supprimée." + } diff --git a/modules/webapp/src/main/elm/Messages/Comp/ScanMailboxTable.elm b/modules/webapp/src/main/elm/Messages/Comp/ScanMailboxTable.elm index a1c1506c..bd6c8478 100644 --- a/modules/webapp/src/main/elm/Messages/Comp/ScanMailboxTable.elm +++ b/modules/webapp/src/main/elm/Messages/Comp/ScanMailboxTable.elm @@ -9,6 +9,7 @@ module Messages.Comp.ScanMailboxTable exposing ( Texts , de , gb + , fr ) import Messages.Basics @@ -41,3 +42,14 @@ de = , folders = "Ordner" , receivedSince = "Empfangen seit" } + +fr : Texts +fr = + { basics = Messages.Basics.fr + , summary = "Résumé" + , connection = "Connexion" + , folders = "Dossiers" + , receivedSince = "Reçu depuis" + } + + diff --git a/modules/webapp/src/main/elm/Messages/Comp/UiSettingsForm.elm b/modules/webapp/src/main/elm/Messages/Comp/UiSettingsForm.elm index 771bab51..289750db 100644 --- a/modules/webapp/src/main/elm/Messages/Comp/UiSettingsForm.elm +++ b/modules/webapp/src/main/elm/Messages/Comp/UiSettingsForm.elm @@ -9,6 +9,7 @@ module Messages.Comp.UiSettingsForm exposing ( Texts , de , gb + , fr ) import Data.Color exposing (Color) @@ -212,3 +213,78 @@ dargestellt. , pdfMode = Messages.Data.PdfMode.de , resetLabel = "Zurücksetzen" } + + +fr : Texts +fr = + { basics = Messages.Basics.fr + , general = "Général" + , showSideMenuByDefault = "Afficher le menu latéral par défaut" + , uiLanguage = "Langue de l'interface" + , itemSearch = "Recherche de document" + , maxResultsPerPageInfo = + \max -> + "Nombre maximum de résultats par page. Au plus " + ++ String.fromInt max + ++ "." + , maxResultsPerPage = "Résultats par page" + , showBasicSearchStatsByDefault = "Afficher les statistiques de base par défaut" + , enablePowerSearch = "Activer la barre de recherche avancée" + , itemCards = "Carte des documents" + , maxNoteSize = "Longueur max. par note" + , maxNoteSizeInfo = + \max -> + "Longueur maximale de la note à afficher entre 0 - " + ++ String.fromInt max + ++ "." + , sizeOfItemPreview = "Taille de l'aperçu des documents" + , cardTitlePattern = "Gabarit du titre" + , togglePatternHelpText = "Afficher/masquer le texte d'aide des gabarits" + , cardSubtitlePattern = "Gabarit du sous-titre" + , searchMenu = "Menu de recherche" + , searchMenuTagCount = "Nombre de tag dans le menu de recherche" + , searchMenuTagCountInfo = "Combien de tag afficher dans le menu de recherche à la fois. Les autres peuvent être déroulés. Mettre 0 pour toujours tout afficher." + , searchMenuCatCount = "Nombre de catégorie dans le menu de recherche" + , searchMenuCatCountInfo = "Combien de catégorie afficher dans le menu de recherche à la fois. Les autres peuvent être déroulés. Mettre 0 pour toujours tout afficher." + , searchMenuFolderCount = "Nombre de dossier dans le menu de recherche" + , searchMenuFolderCountInfo = "Combien de dossier afficher dans le menu de recherche à la fois. Les autres peuvent être déroulés. Mettre 0 pour toujours tout afficher." + , itemDetail = "Détail d'un document" + , browserNativePdfView = "Aperçu PDF natif du navigateur" + , keyboardShortcutLabel = "Utiliser les raccourcis claviers pour la navigation/confirmer/annuler avec les menu d'édition ouvert." + , tagCategoryColors = "Couleur des catégories de tag" + , colorLabel = Messages.Data.Color.fr + , chooseTagColorLabel = "Choisir les couleurs des catéories de tag" + , tagColorDescription = "Les tags peuvent être affichés différement selon leur catégorie." + , fields = "Champs" + , fieldsInfo = "Choisir quels champs affichés dans les menus d'édition et de recherche." + , fieldLabel = Messages.Data.Fields.fr + , templateHelpMessage = + """ +Un gabarit permet de personnaliser les titre et sous titre de chaque carte. +Les variables sont encadrées par `{{` and `}}`, le reste du texte est utilisé +comme tel. Les variables suivantes sont disponible: + +- `{{name}}` nom du document +- `{{source}}` la source d'origine du document +- `{{folder}}` le dossier du document +- `{{corrOrg}}` l'organisation correspondante +- `{{corrPerson}}` la personne correspondante +- `{{correspondent}}` les deux organisation et personne séparées par une virgule +- `{{concPerson}}` la personne concernée +- `{{concEquip}}` l'équipement concerné +- `{{concerning}}` les deux equipement et personne séparés par une virgule +- `{{fileCount}}` le nombre de fichier du document +- `{{dateLong}}` La date complète du document +- `{{dateShort}}` la date numérique du document (jj/mm/aaaa) +- `{{dueDateLong}}` La date d'échance complète du document +- `{{dueDateShort}}` La date numérique d'échéance du document (jj/mm/aaaa) +- `{{direction}}` La direction/sens du document + +Si une variable n'est pas présente, une chaine de charactère vide remplace. Il est +possible de combiner plusieurs variables avec `|`, la première non vide sera utilisée. +Par example: `{{corrOrg|corrPerson|-}}` affichera l'organisation si présente, la personne +si organisation est absente et enfin `-` si les 2 sont absentes. +""" + , pdfMode = Messages.Data.PdfMode.fr + , resetLabel = "Remise à zéro" + } diff --git a/modules/webapp/src/main/elm/Messages/Comp/UiSettingsManage.elm b/modules/webapp/src/main/elm/Messages/Comp/UiSettingsManage.elm index dd7d56f2..80e8d0b2 100644 --- a/modules/webapp/src/main/elm/Messages/Comp/UiSettingsManage.elm +++ b/modules/webapp/src/main/elm/Messages/Comp/UiSettingsManage.elm @@ -9,6 +9,7 @@ module Messages.Comp.UiSettingsManage exposing ( Texts , de , gb + , fr ) import Http @@ -48,7 +49,7 @@ gb = , userHeader = "Personal settings" , userInfo = "Your personal settings override those of the collective. On reset, settings are taken from the collective settings." , collectiveHeader = "Collective settings" - , collectiveInfo = "These settings apply to all users, unless overriden by personal ones. A reset loads the provided default values of the application." + , collectiveInfo = "These settings apply to all users, unless overridden by personal ones. A reset loads the provided default values of the application." , expandCollapse = "Expand/collapse all" } @@ -69,3 +70,21 @@ de = , collectiveInfo = "Diese Einstellungen sind für alle Benutzer, können aber in den persönlichen Einstellungen überschrieben werden. Durch ein Zurücksetzen erhält man die bereitgestellten Standardwerte der Anwendung." , expandCollapse = "Alle ein-/ausklappen" } + + +fr : Texts +fr = + { basics = Messages.Basics.fr + , uiSettingsForm = Messages.Comp.UiSettingsForm.fr + , accountScope = Messages.Data.AccountScope.fr + , saveSettings = "Enregistrer les paramètres" + , settingsUnchanged = "Paramètres inchangés ou invalides." + , settingsSaved = "Paramètres enregistrés." + , unknownSaveError = "Erreur inconnue lors de l'enregistrement des paramètres." + , httpError = Messages.Comp.HttpError.fr + , userHeader = "Paramètres personnels" + , userInfo = "Les paramètres personnels écrasent ceux du groupe. En cas de remise à zéro, ceux du groupe sont utilisés." + , collectiveHeader = "Paramètres de groupe" + , collectiveInfo = "Ces paramètres s'appliquent à tous les utilisateurs à moins d'être écrasés par les paramètres personnels. En cas de remise à zéro, les paramètres par défaut de l'application sont utilisés." + , expandCollapse = "Étendre/Réduire tout" + } diff --git a/modules/webapp/src/main/elm/Messages/Data/AccountScope.elm b/modules/webapp/src/main/elm/Messages/Data/AccountScope.elm index 5f135ecb..07b13035 100644 --- a/modules/webapp/src/main/elm/Messages/Data/AccountScope.elm +++ b/modules/webapp/src/main/elm/Messages/Data/AccountScope.elm @@ -5,7 +5,7 @@ -} -module Messages.Data.AccountScope exposing (Texts, de, gb) +module Messages.Data.AccountScope exposing (Texts, de, gb, fr) import Data.AccountScope exposing (AccountScope) @@ -22,3 +22,8 @@ gb = de : Texts de = Data.AccountScope.fold "Persönlich" "Kollektiv" + + +fr : Texts +fr = + Data.AccountScope.fold "Personnel" "Groupe" \ No newline at end of file diff --git a/modules/webapp/src/main/elm/Messages/Data/ChannelType.elm b/modules/webapp/src/main/elm/Messages/Data/ChannelType.elm index 2003e6e1..0e9ad183 100644 --- a/modules/webapp/src/main/elm/Messages/Data/ChannelType.elm +++ b/modules/webapp/src/main/elm/Messages/Data/ChannelType.elm @@ -5,7 +5,7 @@ -} -module Messages.Data.ChannelType exposing (Texts, de, gb) +module Messages.Data.ChannelType exposing (Texts, de, gb, fr) import Data.ChannelType exposing (ChannelType) @@ -44,3 +44,20 @@ de ct = Data.ChannelType.Http -> "JSON" + + +fr : Texts +fr ct = + case ct of + Data.ChannelType.Matrix -> + "Matrix" + + Data.ChannelType.Gotify -> + "Gotify" + + Data.ChannelType.Mail -> + "E-Mail" + + Data.ChannelType.Http -> + "JSON" + diff --git a/modules/webapp/src/main/elm/Messages/Data/Color.elm b/modules/webapp/src/main/elm/Messages/Data/Color.elm index 58d51326..cf982226 100644 --- a/modules/webapp/src/main/elm/Messages/Data/Color.elm +++ b/modules/webapp/src/main/elm/Messages/Data/Color.elm @@ -8,6 +8,7 @@ module Messages.Data.Color exposing ( de , gb + , fr ) import Data.Color exposing (Color(..)) @@ -97,3 +98,45 @@ de color = Black -> "Schwarz" + +fr : Color -> String +fr color = + case color of + Red -> + "Rouge" + + Orange -> + "Orange" + + Yellow -> + "Jaune" + + Olive -> + "Olive" + + Green -> + "Vert" + + Teal -> + "Turquoise" + + Blue -> + "Bleu" + + Violet -> + "Mauve" + + Purple -> + "Violet" + + Pink -> + "Rose" + + Brown -> + "Marron" + + Grey -> + "Gris" + + Black -> + "Noir" diff --git a/modules/webapp/src/main/elm/Messages/Data/Fields.elm b/modules/webapp/src/main/elm/Messages/Data/Fields.elm index 528094a2..7510e680 100644 --- a/modules/webapp/src/main/elm/Messages/Data/Fields.elm +++ b/modules/webapp/src/main/elm/Messages/Data/Fields.elm @@ -8,6 +8,7 @@ module Messages.Data.Fields exposing ( de , gb + , fr ) import Data.Fields exposing (Field(..)) @@ -91,3 +92,43 @@ de field = SourceName -> "Quelle" + + +fr : Field -> String +fr field = + case field of + Tag -> + "Tag" + + Folder -> + "Dossier" + + CorrOrg -> + "Organisation correspondante" + + CorrPerson -> + "Personne correspondante" + + ConcPerson -> + "Personne concernée" + + ConcEquip -> + "Équipement concerné" + + Date -> + "Date" + + DueDate -> + "Date d'échéance" + + Direction -> + "Sens" + + PreviewImage -> + "Aperçu" + + CustomFields -> + "Champs personnalisés" + + SourceName -> + "Source du document" diff --git a/modules/webapp/src/main/elm/Messages/Data/PdfMode.elm b/modules/webapp/src/main/elm/Messages/Data/PdfMode.elm index 73748076..e0f4a23a 100644 --- a/modules/webapp/src/main/elm/Messages/Data/PdfMode.elm +++ b/modules/webapp/src/main/elm/Messages/Data/PdfMode.elm @@ -8,6 +8,7 @@ module Messages.Data.PdfMode exposing ( de , gb + , fr ) import Data.Pdf exposing (PdfMode(..)) @@ -37,3 +38,17 @@ de st = Server -> "Browserübergreifende Ersatzdarstellung" + + + +fr : PdfMode -> String +fr st = + case st of + Detect -> + "Détecter automatiquement" + + Native -> + "Utiliser le support pdf natif du navigateur" + + Server -> + "Utiliser le mode compatibilité" \ No newline at end of file diff --git a/modules/webapp/src/main/elm/Messages/Data/SSLType.elm b/modules/webapp/src/main/elm/Messages/Data/SSLType.elm index 7779aca9..45fd9b8b 100644 --- a/modules/webapp/src/main/elm/Messages/Data/SSLType.elm +++ b/modules/webapp/src/main/elm/Messages/Data/SSLType.elm @@ -8,6 +8,7 @@ module Messages.Data.SSLType exposing ( de , gb + , fr ) import Data.SSLType exposing (SSLType(..)) @@ -37,3 +38,16 @@ de st = StartTLS -> "StartTLS" + +fr : SSLType -> String +fr st = + case st of + None -> + "Aucun" + + SSL -> + "SSL/TLS" + + StartTLS -> + "StartTLS" + diff --git a/modules/webapp/src/main/elm/Messages/Page/UserSettings.elm b/modules/webapp/src/main/elm/Messages/Page/UserSettings.elm index cb791093..45b1102d 100644 --- a/modules/webapp/src/main/elm/Messages/Page/UserSettings.elm +++ b/modules/webapp/src/main/elm/Messages/Page/UserSettings.elm @@ -9,6 +9,7 @@ module Messages.Page.UserSettings exposing ( Texts , de , gb + , fr ) import Data.TimeZone exposing (TimeZone) @@ -183,3 +184,67 @@ erstellt werden muss. , channels = "Benachrichtigungskanäle" , channelInfoText = "Über Kanäle werden Notifizierungen versendet." } + + +fr : TimeZone -> Texts +fr tz = + { basics = Messages.Basics.fr + , changePasswordForm = Messages.Comp.ChangePasswordForm.fr + , uiSettingsManage = Messages.Comp.UiSettingsManage.fr + , emailSettingsManage = Messages.Comp.EmailSettingsManage.fr + , imapSettingsManage = Messages.Comp.ImapSettingsManage.fr + , notificationManage = Messages.Comp.DueItemsTaskManage.fr tz + , scanMailboxManage = Messages.Comp.ScanMailboxManage.fr tz + , notificationHookManage = Messages.Comp.NotificationHookManage.fr + , periodicQueryTask = Messages.Comp.PeriodicQueryTaskManage.fr tz + , channelManage = Messages.Comp.NotificationChannelManage.fr + , otpSetup = Messages.Comp.OtpSetup.fr tz + , userSettings = "Paramètres utilisateur" + , uiSettings = "Paramètres UI" + , notifications = "Notifications" + , scanMailbox = "Scanner Boite Mail" + , emailSettingSmtp = "Configuration E-Mail (SMTP)" + , emailSettingImap = "Configuration E-Mail (IMAP)" + , changePassword = "Changer le mot de passe" + , channelSettings = "Canaux de notifications" + , uiSettingsInfo = + "Ces paramètres n'affectent que l'interface web. Les paramètres peuvent être enregistrer " + ++ " dans les profiles utilsateur ou de groupe. Les paramètres utilsateurs ont la priorité." + , scanMailboxInfo1 = + "Docspell scanne les dossiers de votre boite mail pour importer vos mails. " + ++ "La connexion doit être configurée" + ++ " dans les paramètres email (imap)." + , scanMailboxInfo2 = + """ + Docpsell parcourt tous les dossiers configurés et importe + les mails correspondant aux critères de recherche. Les + mails précédement importés (avec documents toujours présents) + sont ignorés. Après import d'un mail dans docspell, il + est possible de le déplacer dans un autre répertoire, le + supprimer ou ne rien faire. Dans ce dernier cas + la programmation devra être ajustée afin de ne pas + relir ce mail encore une fois.""" + , otpMenu = "Authentification à 2 facteurs" + , dueItems = "requête des Documents à échéance" + , notificationInfoText = """ + +Docspell peut envoyer des notifications pour divers événements. +Les canaux suivants sont possible pour envoyer des message: +[Matrix](https://matrix.org), [Gotify](https://gotify.net) or E-Mail. +Enfin il est possible d'envoyer de vrai requête http avec les détails +de l'événement contenus dans le payload. + +De plus, il est possible de paramétrer des requêtes exécutées périodiquement +dont les résultats seront transmis via une notification. + +Le paramétrage d'une notification nécessite la création au préalable d'au +moins un canal de communication. + +""" + , webhookInfoText = """Les webhooksWebhooks executent une requête http en réponse à certains évenements dans docspell. +""" + , dueItemsInfoText = """Docspell peut vous notifier quand la data d'échéance de vos documents approche. """ + , periodicQueryInfoText = "Des requêtes périodiques peuvent être définies." + , channels = "Canaux de notification" + , channelInfoText = "Les canaux sont utilisés pour envoyer des messages de notification." + }