ich habe gesehen, dass Christian Fenzl im Wiki einen Artikel zum HTML-Templatesystem angefangen hat (Danke für Deine unermüdliche Arbeit das LoxBerry-Chaos zu dokumentieren

Aktuell gibt es ja zwei Varianten:
- Die erste Variante, die ich begonnen hatte, benutzt ein gemischtes Template-File mit Struktur und Daten (Sprache). Variablen werden mit <!-- $variable --> eingebaut.
- Die zweite Variante ist die, die Christian Fenzl "erfunden" hat: Es wird strikt zwischen Struktur und Daten getrennt. Variablen werden mit <!-- $variable --> eingebaut.
Daher möchte ich folgendes Vorschlagen:
Erstens:
Ich wäre dafür das LoxBerry-Grundsystem auf eine einheitliche Variante umzubauen und diese als "offiziell" zu verwenden und zu supporten. Alles andere würd eich nicht dokumentieren (keep it simple). Das hindert ja niemanden daran, sich trotzdem sein eigenen Templatesystem zu bauen. Und auch alle vorhandenen Plugins sollten (mit vielleicht wenig Anpassungen bzgl. der Einbindung der header.html weiter funktionieren).
Wenn ich mich jetzt entscheiden müsste würde ich Christian Fenzl Variante bevorzugen. Insbesondere wenn man viel Javascript benutzt (zum Hinzufügen einer Zeile zu einer Tabelle z. B.) ist das viel Übersichtlicher und einfacher.
Zweitens:
"Mein" Templatesystem, auf dem wiederum Christian Fenzl basiert, ist auch so eine Altlast, welche ich in allen meinen CGI-Anwendungen seit Jahren mit mir rumschleppe (den Tipp mit dem Einbinden der Variablen habe ich irgendwann vor 15 Jahren mal im Web gefunden...).
Es gibt aber auch ein sehr ausgereiftes Perl-Modul dazu: HTML::Template. Das Modul in Kombination mit CGI::Session (das benutzt z. B. der Einrichtungsassistent sowie das Stats4Lox schon) und CGI (benutzen wir alle auch schon zum Einlesen der Formulardaten) wäre in meinen Augen perfekt! HTML::Template bietet If..Else und Loop-Funktionen, womit man meiner Meinung nach das "selected=selected" Problem recht leicht beheben könnte. Zudem arbeiten HTML::Template und CGI::Session perfekt zusammen (siehe Doku zu CGI::Session). CGI bietet auch etwas bzgl. "selected=selected", was ich aber noch nicht ausprobiert habe: Creating Fill-out forms
Zudem gibt es im CGI-Modul saubere Lösungen zum Mixen von URL- und POST-Parametern (meine "andere" Altlast

Wenn wir jetzt schon soviel am LoxBerry anfassen, dann vielleicht auch richtig? Dann wird's halt nicht LoxBerry 0.3.0 sondern vielleicht 1.0.1 oder so...

Kommentar