Zum Inhalt springen

Sprachen & Internationalisierung

Der hwr.manager unterstützt die vollständige Mehrsprachigkeit (Internationalisierung / i18n), um mehrsprachigen Teams und internationalen Einsätzen gerecht zu werden. Die Benutzeroberfläche passt sich flexibel an die Sprachpräferenz jedes einzelnen Benutzers an.


Aktuell stehen fünf Sprachversionen zur Verfügung:

SpracheSprachcodeStandard-DatumsformatRegionale Ausrichtung
DeutschdeDD.MM.YYYYDeutschland, Österreich, Schweiz
EnglishenDD/MM/YYYYInternational, Vereinigtes Königreich
FrançaisfrDD/MM/YYYYFrankreich, Belgien, Schweiz
EspañolesDD/MM/YYYYSpanien, Lateinamerika
ItalianoitDD/MM/YYYYItalien, Schweiz

Die Spracheinstellung ist ein persönliches Merkmal jedes Benutzers und erfordert keine administrativen Rechte. Jeder Monteur, Meister oder Büro-Mitarbeiter kann seine bevorzugte Sprache eigenständig festlegen:

  • Über die persönliche Profilseite:
    • Klick auf das Benutzerprofil unten links in der Sidebar („Profil ansehen“ oder /profile).
    • In der Übersichtskarte „Sprache & Lokalisierung“ kann die gewünschte Sprache über ein Dropdown ausgewählt werden.
  • Über die Profileinstellungen:
    • Im Menü unter Einstellungen → Profil & Sprache (/settings/profile) steht das gleiche Auswahlfeld zur Verfügung.
  • Schnellwechsler im Header:
    • Direkt in der oberen Menüleiste neben dem Theme-Umschalter (Hell-/Dunkelmodus) befindet sich ein kompakter Schnellwähler, mit dem die Sprache mit einem Klick gewechselt werden kann.

3. Geräteübergreifende Synchronisation & Erkennung

Abschnitt betitelt „3. Geräteübergreifende Synchronisation & Erkennung“

Die Sprachauswahl funktioniert auf drei Ebenen:

  1. Systemsprache (automatisch - Standard):
    • Neu angemeldete Benutzer starten standardmäßig im Modus auto.
    • Das System erkennt automatisch die Sprache des verwendeten Webbrowsers bzw. Betriebssystems (navigator.language und HTTP-Header Accept-Language).
  2. Speicherung im Benutzerprofil:
    • Sobald eine Sprache explizit ausgewählt wird, speichert das System diese Präferenz in der Datenbank (profiles.preferences.locale).
    • Meldet sich der Mitarbeiter an einem anderen Computer, Tablet oder Laptop an, wird seine gewählte Sprache sofort übernommen.
  3. Cookie-Caching für Sofortstart (hwr_locale):
    • Zusätzlich wird die Einstellung im Cookie hwr_locale hinterlegt, damit auch serverseitig gerenderte Seiten (SSR) sofort in der korrekten Sprache ausgeliefert werden, ohne dass ein Flackern oder Nachladen entsteht.

  • Zentrales Wörterbuchsystem:
    • Sämtliche Texte sind in typisierten Wörterbüchern unter web/src/locales/ strukturiert abgelegt (de.ts, en.ts, fr.ts, es.ts, it.ts).
    • Die Gliederung erfolgt in logische Namespaces:
      • common: Allgemeine Aktionen (Speichern, Abbrechen, Löschen, Bearbeiten, Filtern, Exportieren)
      • nav: Modul- und Menübezeichnungen (Dashboard, Einsatzplanung, Aufträge, Lager, Zeiterfassung)
      • guards: Dialoge zum Schutz vor Datenverlust (Nicht gespeicherte Änderungen)
      • dialogs: Bestätigungs- und Löschdialoge
      • settings: Konfigurationsmasken und Beschreibungen
      • Fachmodule: articles, assets, suppliers, jobs, purchases, times
  • Zero-Error Fallback auf Deutsch (de):
    • Sollte in einer Zielsprache ein neuer Übersetzungsschlüssel noch nicht gepflegt sein, greift das System nahtlos auf die deutsche Referenzfassung zurück.
    • Dadurch wird verhindert, dass leere Beschriftungen oder technische Platzhalter angezeigt werden.

Mit der Sprachumstellung passen sich auch Formatierungshelfer automatisch an:

  • Datums- und Uhrzeitangaben:
    • Werden über das Modul dateUtils.ts formatiert und berücksichtigen das aktive Locale.
    • Beispiel Deutsch: 14.01.2026, 08:30 Uhr
    • Beispiel Englisch: 14/01/2026, 08:30
  • Zahlen und Beträge:
    • Werden stets mit tabellarischen Ziffern (tabular-nums) gerendert, um einheitliche Spaltenbreiten in Tabellen zu gewährleisten.