Funktionen
Header-Funktionen
Funktionen werden innerhalb der <CMS_HEADER>-Tags definiert. Innerhalb dieser Tags ist nur die Eingabe von gültigem XML zulässig. Alternativ können auch Funktionen durch ein BeanShell-Skript erzeugt und eingefügt werden.
Jede CMS-Funktion wird durch einen <CMS_FUNCTION>-Tag umschlossen, in dem die Attribute "name" und "resultname" gesetzt werden müssen. Der zu „name“ definierte Wert ist der Funktionsbezeichner, mit dem die Funktion aufgerufen werden kann, in „resultname“ wird der Bezeichner der Rückgabevariable definiert, die das Ergebnis der Funktion speichert. Funktionen werden nur einmal, bei der Generierung einer Seite ausgeführt. Dabei können nur dem Server bekannte Funktionen in der Vorlagen-Verwaltung genutzt werden, die in den nachfolgenden Kapiteln erläutert werden.
Aufgaben von Funktionen
Über den Einsatz von Funktionen kann eine gewisse Dynamik in die HTML-Seiten gebracht werden. Indem bereits durch die Vorlagenentwickler Funktionen innerhalb der Vorlagen definiert werden, benötigen die Redakteure selber keine HTML-Kenntnisse mehr, um das Design einer Seite anzupassen. Die Redakteure treffen ihre Auswahl, in den zur Verfügung stehenden GUI-Elementen, die anschließend durch Funktionen ausgewertet werden. Die Darstellung wird entsprechend den Ergebnissen der Funktionen angepasst.
Im Allgemeinen haben Funktionen in FirstSpirit folgende Aufgaben:
- Eingaben des Redakteurs prüfen und auswerten (siehe Funktion define).
- Texte als Bild bzw. auf ein bereits vorhandenes Hintergrundbild rendern (siehe Funktion Font).
- gefilterte Daten aus der Datenquellen-Verwaltung ausgeben (siehe Funktion contentSelect).
- Strukturen der Struktur-Verwaltung für die Navigation auswerten (siehe Funktion Navigation).
Das ist insbesondere auch für Menügruppen (siehe Funktion MenuGroup)
oder Seitengruppen (siehe Funktion PageGroup) möglich.
Aufruf von Funktionen
Funktionen können überall da aufgerufen werden, wo auch Methoden-Aufrufe genutzt werden können. Im Unterschied zu Methoden beziehen sich Funktionen aber auf kein Objekt:
Jede Funktion hat einen Funktionsbezeichner, über den sie aufgerufen werden kann. Abhängig von der Art der Funktion können ein oder mehrere Parameter übergeben werden. Neben den übergebenen Parametern besitzen Funktionen lokale Variablen, die nur innerhalb der Funktion gültig sind. Einige Funktionen liefern das Ergebnis der Ausführung als Rückgabewert zurück.
Syntax:
$CMS_VALUE(methodenName([Argumente]))$