Ticket #198 (assigned Aufgabe)

Opened 3 years ago

Last modified 3 years ago

Internationalisierungskonzept überarbeiten

Reported by: driehle Owned by: driehle
Priority: major Milestone: Jlog 1.5
Component: Kernfunktion Version:
Keywords: Cc:

Description

Bis dato lädt Jlog die Sprachdateien per include() und arbeitet dann mit dem Array, welches darin enthalten ist. Das ist aus mehreren Gründen unschön.

  • Falls eine Sprachdatei veraltet ist und für einen bestimmten Key keine Übersetzung enthält, so kann nicht auf Default-Werte (eine andere Sprache, z.B. Deutsch) zurückgegriffen werden. Stattdessen bleibt die Ausgabe einfach leer.
  • Sollte sich mal jemand im PHP-Code vertippen, so spuckt PHP eine Notice aus, welche wir aber per Konfiguration unterdrücken. Hier sollte stattdessen dann der Key für welcher nicht existiert ausgegeben werden.
  • Die PHP-Dateien lassen sich für Nicht-Programmierer nur unkomfortabel übersetzen, die Gefahr ist hoch, dass Syntax-Errors eingebaut werden. Wir sollten auf ein renomiertes Konzept zurückgreifen, für welches evtl. auch Übersetzungssoftware gibt.

Für Jlog 2.0 würde ich GNU Gettext vorschlagen, es gibt da einen simplen in PHP implementierten Adapter für, nämlich Zend_Translate aus dem Zend Framework. Da Jlog 1.5 aber noch PHP 4 unterstützen soll, fällt dies wohl flach.

Mein Vorschlag für Jlog 1.5 wären INI-Dateien - diese sind von der Syntax her etwas simpler und sollten für Jlog 2.0 eine gute Basis bilden auf der man weiter arbeiten kann.

Change History

comment:1 Changed 4 years ago by robertb

  • Status changed from new to closed
  • Resolution set to invalid

comment:2 Changed 3 years ago by driehle

  • Owner set to driehle
  • Status changed from new to assigned

comment:3 Changed 3 years ago by driehle

  • Type changed from Fehlermeldung to Aufgabe

comment:4 Changed 3 years ago by jeena

Die vorschläge finde ich gut, zogegen ich hingegen bin sind so Sachen wie Worrpress macht, dass man ("Enlish Text") schreibt, da hätte ich in der Gergangenheit nur Probleme damit, weil verschiedene Sachen auf englisch gleich geschrieben werden in anderen sprachem aber unterschiedlich.

Note: See TracTickets for help on using tickets.