CMS Fiona verwendet Velocity-Templates (Dateiendung .vm), um die Ansichten im Content Navigator anzuzeigen. Velocity ist ein Interpreter, der in Servlet-Umgebungen eingesetzt werden kann und Inhalte mittels Templates ausgibt (siehe https://velocity.apache.org/). Administratoren können Templates schreiben und anpassen, um sowohl die dargestellten Felder von CMS-Dateien als auch deren Darstellung zu beeinflussen.
Das GUI lädt neben den Templates für die Darstellung der Details immer auch das Template macros.vm. Sie können in dieser Datei Ihre eigenen Makros ablegen, jedoch wird diese Datei bei einer Migration auf eine neuere Fiona-Version nicht automatisch übernommen. Daher ist es besser, die Makros in der Datei contentInspectors.xml im config-Verzeichnis der betreffenden Instanz zu pflegen. Ein Beispiel:
<contentInspectors>
...
<templates>
<template name="macros.vm">
<![CDATA[
## my macros
]]>
</template>
</templates>
...
</contentInspectors>
Mit Hilfe der im Folgenden aufgeführten Schlüsselwörter können Werte aus verschiedenen Kontexten ausgelesen werden. Schlüsselwörter, die sich auf die CMS-Entitäten Datei, Version, Link, Feld und Feldgruppe beziehen, können auch per Tcl abgefragt werden und sind in der Tcl-Referenz beschrieben.
Schlüsselwörter im Kontext der aktuellen CMS-Datei
|
Schlüsselwort
|
Typ
|
Bedeutung
|
content
|
ContentTool
|
Liefert editedContent oder releasedContent, je nach Präferenz des Benutzers und Vorhandensein der Version
|
editedContent
|
ContentTool
|
Die Arbeitsversion der Datei, falls existent
|
icons
|
String
|
Schema-basierte URL-Ermittlung von Icons. Beispiel:
<img src="$icons.get("image.png")"/>
|
lang
|
String
|
Das Sprachkürzel des Benutzers: "de", "en", .... Verwenden Sie eine if-Abfrage um eigene Zeichenketten zu lokalisieren: #if ($lang == "de") Hallo #elseif ($lang == "en") Hello #else Hi #end
|
localizer
|
String
|
Wird intern verwendet, um in der Benutzersprache lokalisierte Zeichenketten zu ermitteln
|
object
|
ObjectTool
|
Die aktuell anzuzeigende Datei
|
releasedContent
|
ContentTool
|
Die freigegebene Version der Datei, falls existent
|
role
|
String
|
Die dem Benutzer zugeordnete oder von ihm ausgewählte Oberfäche. Fragen Sie dieses Schlüsselwort ab, um beispielsweise Felder je nach gewählter Oberfläche anzuzeigen oder zu verbergen.
|
Schlüsselwörter im ObjectTool ($object.key)
|
Schlüsselwort
|
Typ
|
Bedeutung
|
hasMirrors
|
AttributeTool
|
|
id
|
AttributeTool
|
|
isDeactivated
|
AttributeTool
|
|
isMirror
|
AttributeTool
|
|
mirrors
|
LinkListTool
|
|
name
|
AttributeTool
|
|
original
|
AttributeTool
|
Bei Spiegeldateien der Pfad des Originals
|
path
|
AttributeTool
|
|
reminder
|
AttributeTool
|
Wiedervorlage
|
type
|
AttributeTool
|
|
visiblePath
|
AttributeTool
|
|
objClass
|
AttributeTool
|
|
isExportSuppressed
|
AttributeTool
|
|
isExportable
|
AttributeTool
|
|
isEdited
|
AttributeTool
|
|
isReleased
|
AttributeTool
|
|
editedContent
|
ContentTool
|
|
releasedContent
|
ContentTool
|
|
content
|
ContentTool
|
Version, die entsprechend der aktuellen Darstellung angezeigt wird
|
workflow
|
AttributeTool
|
|
version
|
AttributeTool
|
|
superlinks
|
LinkListTool
|
|
state
|
AttributeTool
|
Status der Datei, je nach vorhandenen Versionen (released, edited, committed)
|
hasPermissionRead
|
AttributeTool
|
|
hasPermissionWrite
|
AttributeTool
|
|
hasPermissionRoot
|
AttributeTool
|
|
hasPermissionCreateChildren
|
AttributeTool
|
|
permissionRead
|
AttributeTool
|
Gibt Gruppennamen aus
|
permissionCreateChildren
|
AttributeTool
|
Gibt Gruppennamen aus
|
permissionLiveServerRead
|
AttributeTool
|
Gibt Gruppennamen aus
|
permissionRoot
|
AttributeTool
|
Gibt Gruppennamen aus
|
permissionWrite
|
AttributeTool
|
Gibt Gruppennamen aus
|
Schlüsselwörter im ContentTool
|
Schlüsselwort
|
Typ
|
Bedeutung
|
title
|
AttributeTool
|
|
contentType
|
AttributeTool
|
|
validFrom
|
AttributeTool
|
|
validUntil
|
AttributeTool
|
|
lastModified
|
AttributeTool
|
|
lastChanged
|
AttributeTool
|
Synonym für lastModified
|
thumbnail
|
AttributeTool
|
img-Link auf das Thumbnail
|
preview
|
AttributeTool
|
Inline-Preview bei Bildern, sonst a-href-Link auf Preview-Page
|
getAttributeGroup(name)
|
AttributeGroupTool
|
attributeGroups
|
AttributeGroupTool-Liste
|
sourceCode
|
AttributeTool
|
Quelltext-Ansicht
|
blobLength
|
AttributeTool
|
|
width
|
AttributeTool
|
|
height
|
AttributeTool
|
|
bodyTemplateName
|
AttributeTool
|
|
mimeType
|
AttributeTool
|
|
isComplete
|
AttributeTool
|
|
reasonsForIncompleteState
|
AttributeTool
|
|
channels
|
AttributeTool
|
|
textLinks
|
LinkListTool
|
Links im Hauptinhalt
|
body
|
AttributeTool
|
|
blob
|
AttributeTool
|
Synonym für Hauptinhalt
|
sortOrder
|
SortOrderTool
|
|
|
Namen anderer Versionsfelder
|
AttributeTool
|
Schlüsselwörter im AttributeGroupTool
|
Schlüsselwort
|
Typ
|
Bedeutung
|
editButton
|
String
|
HTML-Code für Edit-Button
|
editMarkupOpen
|
String
|
Öffnender HTML-Code für Edit-Marker
|
editMarkupClose
|
String
|
Abschließender HTML-Code für Edit-Marker
|
title
|
String
|
Lokalisierter Titel der Feldergruppe
|
name
|
String
|
Name der Feldergruppe
|
identifier
|
String
|
Identifier der Feldergruppe
|
isDefaultGroup
|
boolean
|
|
isEmpty
|
boolean
|
|
attributes
|
AttributeTool-Liste
|
Schlüsselwörter im SortOrderTool
|
Schlüsselwort
|
Typ
|
Bedeutung
|
editButton
|
String
|
HTML-Code für Edit-Button.
|
editMarkupOpen
|
String
|
Öffnender HTML-Code für Edit-Marker
|
editMarkupClose
|
String
|
Abschließender HTML-Code für Edit-Marker
|
label
|
String
|
Lokalisiertes Label Sortierung
|
getLabel(i)
|
String
|
Sortierkriterium mit dem Index 1 ≤ i ≤ 3
|
getType(i)
|
AttributeTool
|
Typ des Sortierkriteriums mit dem Index 1 ≤ i ≤ 3
|
getKey(i)
|
AttributeTool
|
Sortierkriterium-Feld mit dem Index 1 ≤ i ≤ 3
|
getKeyLength(i)
|
AttributeTool
|
Länge des Sortierkriterium-Feldes mit dem Index 1 ≤ i ≤ 3
|
direction(i)
|
AttributeTool
|
Sortierrichtung ascending oder descending
|
Schlüsselwörter im AttributeTool
|
Schlüsselwort
|
Typ
|
Bedeutung
|
editButton
|
String
|
HTML-Code für Edit-Button.
|
editMarkupOpen
|
String
|
Öffnender HTML-Code für Edit-Marker
|
editMarkupClose
|
String
|
Abschließender HTML-Code für Edit-Marker
|
displayValue
|
String
|
Formatierter Anzeigewert
|
helpText
|
String
|
Hilfetext des Feldes (ab Version 6.10) |
editButton
|
String
|
HTML-Code für Edit-Button.
|
label
|
String
|
Lokalisiertes Label
|
placeholderForEmpty
|
String
|
Der Wert, der anstelle des leeren Wertes ausgegeben wird
|
type
|
String
|
date, enum, multienum, html, generic, image, linklist, signature, string, text, boolean, integer, href
|
isMandatory
|
boolean
|
1 bei obligatorischen Feldern, andernfalls 0
|
Schlüsselwörter im LinkListTool
|
Schlüsselwort
|
Typ
|
Bedeutung
|
editMarkupOpen
|
String
|
Öffnender HTML-Code für Edit-Marker
|
editMarkupClose
|
String
|
Abschließender HTML-Code für Edit-Marker
|
editButton
|
String
|
HTML-Code für Edit-Button
|
label
|
String
|
Lokalisiertes Label
|
isEmptyAndEditingAllowed
|
boolean
|
wahr, wenn die Linkliste leer und ihre Bearbeitung erlaubt ist (nicht der Fall bei Textlinks und Superlinks)
|
placeholderForEmpty
|
String
|
Der Wert, der an Stelle des leeren Wertes angezeigt wird
|
type
|
String
|
Gibt immer linklist zurück
|
isMandatory
|
boolean
|
1 bei obligatorischen Feldern, andernfalls 0
|
links
|
LinkTool-Liste
|
Die in der Linkliste enthaltenen Links
|
Schlüsselwörter im LinkTool
|
Schlüsselwort
|
Typ
|
Bedeutung
|
iconMarkup
|
String
|
HTML-Code, der ein Icon einbindet
|
isComplete
|
boolean
|
Gibt an, ob der Link vollständig ist
|
displayUri
|
String
|
Der bereits als HTML-Text gequotete URI des Links
|
title
|
String
|
Der Titel der Links, kann null sein
|
followLinkMarkup
|
String
|
HTML-Code für einen Link, der bei Klick zum Linkziel navigiert, kann null sein
|
sourceObject
|
ObjectTool
|
Quelle des Links
|
targetObject
|
ObjectTool
|
Ziel des Links
|