Zum Ende der Metadaten springen
Zum Anfang der Metadaten

Überholt

Der Inhalt dieses Artikels ist überholt. Ab LoxBerry 1.0 verwende diesen Artikel: Perl Template-System ab LoxBerry 1.0

LoxBerry enthält ein Template-System für Perl und PHP mit integrierter Mehrsprachigkeitsunterstützung für Plugins, welches aus diesen Systemen hervorgegangen ist.


Für LoxBerry gibt es aktuell zwei Template-Systeme, mit denen im Perl-Programm erzeugte Variablen in vorgefertige HTML-Templates übernommen werden können. Beide Template-Systeme sind multilingual konzipiert.

Template-System mit sprachspezifischen Templates

Bei diesem Template-System wird ein HTML-Template für jede Sprache (z.B. de, en, usw.) erstellt. Feldbeschreibungen, Hinweise und Notizen in den HTML-Templates werden in der jeweiligen Sprache erstellt.

In den HTML-Templates können dann globale Perl-Variablen verwendet werden, beispielsweise um einen Status anzuzeigen oder Formularfelder vorzubefüllen.

Die HTML-Templates für die jeweilige Sprache werden in einen Sprach-Unterordner im Template-Verzeichnis abgelegt, z.B. de und en.

Variablen werden folgendermaßen eingesetzt:

<p>Aktueller Status: <!--$currentstate--></p>

Dieser Code kann nicht nur im HTML-Template direkt eingesetzt werden. Es ist auch möglich, in Perl in einer String-Variable HTML-Code mit Variablen zu erzeugen (z.B. in einer Schleife zur Formularerstellung), und die erzeugte Variable dann im HTML-Template einzusetzen. Die Variablen werden im fertigen HTML korrekt aufgelöst.

IN ARBEIT Für dieses System soll es in LoxBerry V0.3.x spezielle Funktionen zur Vereinfachung bei der Implementierung geben. 

Template-System mit multilingualen Templates und Sprachdateien

Bei diesem, aus dem ersten Template-System abgeleiteten System, wird pro Seite ein einziges HTML-Template, genutzt für alle Sprachen, erzeugt. Das erzeugte Template wird im Unterverzeichnis multi abgelegt.

Zusätzlich zum HTML-Template wird pro Sprache ein Textfile in Form einer Konfigurationsdatei erzeugt. Diese Konfigurationsdateien werden in Sprachordnern abgelegt, z.B. de und en.

In den Sprachfiles finden sich Einträge mit LABEL="Sprachspezifischer Text", bzw. LABEL="Language-specific text". Zur Ordnung können in der Textdatei Kategorien verwendet werden, z.B. [BASIC] oder [BUTTON]. Die Labels können unter Angabe des T-Namespaces ("Translate") wie Variablen eingesetzt werden:

<p><!--T::BASIC_CURRSTATE-->: <!--$currentstate--></p>

Dieser Code kann nicht nur im HTML-Template direkt eingesetzt werden. Es ist auch möglich, in Perl in einer String-Variable HTML-Code mit diesen Tags zu erzeugen (z.B. in einer Schleife zur Formularerstellung), und diese Variable dann im HTML einzusetzen. Sprachspezifische Strings und Variablen werden im fertigen HTML korrekt aufgelöst.

Dieses System implementiert zudem einen "Fallback" für einzelne Textzeilen auf Englisch oder Deutsch.

Siehe auch Translation Guide for Squeezelite Player Plugin

IN ARBEIT Für dieses System soll es in LoxBerry V0.3.x spezielle Funktionen zur Vereinfachung bei der Implementierung geben.