From 4cbfe52d5b431cb93dff6717e9b8cf0c8f801ad5 Mon Sep 17 00:00:00 2001 From: TekH Date: Fri, 2 Oct 2026 14:46:40 +0200 Subject: [PATCH] Add localized strings and update localization logic Added new localized strings to `Model.en.resx`, `Model.fr-FR.resx`, and `Model.resx` for additional features/settings in English, French, and German. Updated `SenderEditorPage.razor` to inject `ModelLocalizer` and modified the `L` function to prioritize localized strings from `ModelLocalizer` over `UiLocalizer`. Included `@using EnvelopeGenerator.Domain.Resources` to ensure access to the `Model` resource file. These changes improve localization flexibility and maintainability. --- .../Resources/Model.en.resx | 59 ++++++++++++++++++- .../Resources/Model.fr-FR.resx | 57 ++++++++++++++++++ EnvelopeGenerator.Domain/Resources/Model.resx | 59 ++++++++++++++++++- .../Pages/SenderEditorPage.razor | 10 +++- 4 files changed, 181 insertions(+), 4 deletions(-) diff --git a/EnvelopeGenerator.Domain/Resources/Model.en.resx b/EnvelopeGenerator.Domain/Resources/Model.en.resx index 47255b7c..b7edf0ef 100644 --- a/EnvelopeGenerator.Domain/Resources/Model.en.resx +++ b/EnvelopeGenerator.Domain/Resources/Model.en.resx @@ -276,4 +276,61 @@ Yes, with Attachment - \ No newline at end of file + + Electronic Signature + + + Envelope Type + + + Language + + + Certification + + + 2FA enabled + + + Use Access Code + + + Final Email to Creator + + + Final Email to Receivers + + + Send Reminder Emails + + + First Reminder (Days) + + + Reminder Interval (Days) + + + Expires After (Days) + + + Expiry Warning (Days) + + + Envelope Settings + + + Advanced + + + Select Template + + + Please enter a reminder interval greater than 0 days. + + + Please enter valid days for the first reminder. + + + The expiry warning cannot be after the expiry date. + + diff --git a/EnvelopeGenerator.Domain/Resources/Model.fr-FR.resx b/EnvelopeGenerator.Domain/Resources/Model.fr-FR.resx index 34dbe009..8260ac82 100644 --- a/EnvelopeGenerator.Domain/Resources/Model.fr-FR.resx +++ b/EnvelopeGenerator.Domain/Resources/Model.fr-FR.resx @@ -113,4 +113,61 @@ Invitation envoyee + + Signature electronique + + + Type d'enveloppe + + + Langue + + + Certification + + + 2FA active + + + Utiliser un code d'acces + + + E-mail final au createur + + + E-mail final aux destinataires + + + Envoyer des e-mails de rappel + + + Premier rappel (jours) + + + Intervalle de rappel (jours) + + + Expire apres (jours) + + + Avertissement d'expiration (jours) + + + Parametres de l'enveloppe + + + Avance + + + Selectionner un modele + + + Veuillez saisir un intervalle de rappel superieur a 0 jour. + + + Veuillez saisir des jours valides pour le premier rappel. + + + L'avertissement d'expiration ne peut pas etre apres la date d'expiration. + diff --git a/EnvelopeGenerator.Domain/Resources/Model.resx b/EnvelopeGenerator.Domain/Resources/Model.resx index 1712d3b2..e539b61d 100644 --- a/EnvelopeGenerator.Domain/Resources/Model.resx +++ b/EnvelopeGenerator.Domain/Resources/Model.resx @@ -279,4 +279,61 @@ Ja, mit Anhang - \ No newline at end of file + + Elektronische Signatur + + + Umschlagtyp + + + Sprache + + + Zertifizierung + + + 2FA aktiviert + + + Zugriffscode verwenden + + + Finale E-Mail an Ersteller + + + Finale E-Mail an Empfänger + + + Erinnerungs-E-Mails senden + + + Erste Erinnerung (Tage) + + + Erinnerungsintervall (Tage) + + + Läuft ab nach (Tage) + + + Ablaufwarnung (Tage) + + + Envelope-Einstellungen + + + Erweitert + + + Vorlage auswählen + + + Bitte geben Sie ein Erinnerungsintervall größer als 0 Tage ein. + + + Bitte geben Sie gültige Tage für die erste Erinnerung ein. + + + Die Ablaufwarnung darf nicht nach dem Ablaufdatum liegen. + + diff --git a/EnvelopeGenerator.Server/EnvelopeGenerator.Server.Client/Pages/SenderEditorPage.razor b/EnvelopeGenerator.Server/EnvelopeGenerator.Server.Client/Pages/SenderEditorPage.razor index 1700f7a8..74e21b5d 100644 --- a/EnvelopeGenerator.Server/EnvelopeGenerator.Server.Client/Pages/SenderEditorPage.razor +++ b/EnvelopeGenerator.Server/EnvelopeGenerator.Server.Client/Pages/SenderEditorPage.razor @@ -6,6 +6,7 @@ @using EnvelopeGenerator.Application.Envelopes.Commands @using EnvelopeGenerator.Application.Resources @using EnvelopeGenerator.Domain.Constants +@using EnvelopeGenerator.Domain.Resources @using EnvelopeGenerator.Server.Client.Components.PdfEditor @using EnvelopeGenerator.Server.Client.Services @using Microsoft.AspNetCore.WebUtilities @@ -22,6 +23,7 @@ @inject EnvelopeTypeService EnvelopeTypeService @inject AuthService AuthService @inject IStringLocalizer UiLocalizer +@inject IStringLocalizer ModelLocalizer @@ -1586,7 +1588,11 @@ string L(string key, string fallback) { - var value = UiLocalizer[key]; - return value.ResourceNotFound ? fallback : value.Value; + var modelValue = ModelLocalizer[key]; + if (!modelValue.ResourceNotFound) + return modelValue.Value; + + var uiValue = UiLocalizer[key]; + return uiValue.ResourceNotFound ? fallback : uiValue.Value; } }