[[esp:direktiven]] tdb Aplication Server

Route:

Die ESP Direktiven

Die bedingten Kompilierung erfolgt anhand von <#? ?#> Tags, und ist hier explizit beschrieben.

Einbinden eines ESP-Dokuments
Mit <!=NAME.ESP!> kann ein weiteres ESP-Dokument eingebunden werden. Dieses wird dann bei der Verarbeitung genau an der Stelle platziert, wo die <!=!> Direktive steht.
Dadurch lassen sich in größeren Projekten leicht Teilbausteine an unterschiedlichen Stellen wieder verwenden.

TITLE-Element des Dokuments bestimmen
Mit der Direktive <#document.title=Anzuzeigender Seitentitel#> kann der Inhalt der Titelzeile bestimmt werden. Dabei kann der Platzhalter {contextName} verwendet werden, um den Namen des Contexts auszugeben.
Beispiel
<#document.title=Adressüberischt ({contextName})#>

JavaScript-Quelldatei ins Dokument einbinden
Mit der Direktive <#document.script=Pfad und Name des JS-Files#> kann ein beliebiges JavaScript-Dokument eingebunden werden.
Dabei kann auch der Platzhalter @@@ für den relativen Context-Pfad verwendet werden.
Beispiel
<#document.script=@@@/js/addresses.js#>

Stylesheets ins Dokument einbinden
Mit der Direktive <#document.css=PFADZUMCSS#> können beliebige Stylesheet-Quellen eingebunden werden.
Beispiel
<#document.css=@@@/css/default.css,@@@/css/special.css#>
oder
<#document.css=@@@/css/default.css#> <#document.css=@@@/css/special.css#>

Eigene Module importieren
Um seine eigene Funktionsbibliothek einzubinden benötigt man diese Direktive: <#document.uses=PFADZUMMODUL#>
Beispiel
<#document.uses=@@@/lib/meinefunktionen.mod,/var/lib/meinelib/modul.mod#>
ist identisch mit
<#document.uses=@@@/lib/meinefunktionen.mod#> <#document.uses=/var/lib/meinelib/modul.mod#>

Ausgabeformat bestimmen
Die Direktive <#document.mode=plain#> teilt dem ESP-Prozessor mit, dass das Ergebnis nicht in das Standard-HTML-Template eingebettet werden soll.
Es obliegt dannn dem Programmierer, dafür zu Sorgen, ein vollständiges Dokument auszugeben (z.B. <HEAD>,<BODY> etc. richtig zu setzen)
Beispiel
<#document.mode=plain#>

Content-Type des Ausgabedokuments bestimmen
document.contenttype
Wenn keine HTML-Seite ausgegeben werden soll, sondern zum Beispiel ein XML-Dokument, kann dies dem Browser hier mitgeteilt werden.
Wird meist zusammen mit document.mode=plain verwendet.
Beispiel
<#document.mode=plain#> <#document.contenttype=text/xml#>

Extensions importieren
Zu beachten: Hier beginnt die Direktive mit compiler und nicht wie bei den vorhergehenden Direktiven mit document
<#compiler.extensions=LISTEDEREINZUBINDENDENEXTENSIONS#>
Beispiel
<#compiler.extensions=ajax,ajaxform,mkls#>
oder
<#compiler.extensions=ajax#> <#compiler.extensions=ajaxform#> <#compiler.extensions=mkls#>

Abschliessende Prozedur auf das Ausgabe-Dokument anwenden
Mit <#compiler.finalize=procedure@modul#> kann, vor der Ausgabe des Dokuments an den Browser, eine letzte Funktion aufgerufen werden.
Diese könnte dazu dienen, temporäre Dateien zu entfernen, oder Übersetzungsplatzhalter gegen die jeweiligen Sprachbausteine auszutauschen.
Während der Übersetzung des ESP-Dokuments in EASY-Code wird die Existens des Moduls überprüft. Die Ausführung findet aber erst zur Laufzeit statt.
Die auszuführende Funktion muss genau einen Parameter vom Typ STRING erwarten. Darin wird der Ramtext mit dem Ausgabedokument übergeben ('ramtext:outputbuffer').
Die hat nun alle Möglichkeiten, mit diesem Ramtext zu verfahren.
Beispiel
<#compiler.finalize=translate@program/translation#>

esp:direktiven, Rev. 14, Zuletzt geändert 2006-12-12 10:59, 2813 Aufrufe
Wiki hosted for free at wikihost.org || RSS-Feed || GeboGebo 1.3.3 || 00.233 Sekunden || || PAGERANK TOOLS