OTRS macht es möglich, das Erscheinungsbild des Systems (Front-End) an die eingenen Bedürfnisse anzupassen. Das Zauberwort lautet: dtl (Dynamic Template Language). Alle Front-End Masken befinden sich im Verzeichnis: ~otrs/Kernel/Output/HTML/<THEME>/*.dtl. Standardmäßig ist das "Standard" Motiv ausgewählt.
Sie haben also die Möglichkeit, Ihr OTRS so anzupassen, wie Sie es möchten. Sie können aber auch ein gegenes Motiv entwerfen.
Kommentar
Ein Kommentar wird durch ein einfaches "#"-Zeichen eingeleitet.
# -- # das ist ein Kommentar # -- |
Eine Variable setzen
<dtl set $Data{"Test1"} = "German"> |
Note: $Data{"xyz"} existiert nur in diesem dtl-Datei wobei $Env{"xyz"} in allen dtl-Dateien existiert. Neu: $Config{"xyz"} ist eine nicht nur "read only" und existiert im gesamten Programm! (2002-05-22 / 0.5 BETA5)
Ausgabe einer Variablen
Um eine Variable auf dem Monitor auzugeben, verwenden Sie einfach:
$Data{"xyz"} oderr $Env{"xyz"} |
Text Übersetzung
$Text{"Das wird übersetzt"} |
Achten Sie darauf, dass die Übersetzung in den entsprchenden Übersetzungsdateien unter "$HOME_OTRS/Kernel/Language/*.pm" existiert. Wenn diese nicht existiert, wird der gegebene Text angezeigt.
Bedingungen
<dtl if ($Text{"Lock"} eq "Lock") { $Data{"FrontendLanguage"} = "English"; }> |
Es gibt lediglich die Möglichkeit etwas in $Data{"xyz"} und $Env{"xyz"} zu speichern.
Auf eine Konfigurationsoption zugreifen - $Config{}
$Config{"Sendmail"} |
Gemeinsame Umgebungsvariablen - $Env{}
$Env{"SessionID"} --> Die aktuelle Session ID $Env{"Time"} --> Die aktuelle Zeit z.B. 'Thu Dec 27 16:00:55 2001' $Env{"CGIHandle"} --> Die aktuelle CGI-Datei z.B. 'index.pl' $Env{"UserCharset"} --> Der akturelle Zeichensatz z.B. 'iso-8859-1' $Env{"Baselink"} --> Der Basislink --> index.pl?SessionID=... $Env{"UserFirstname"} --> z.B. Dirk $Env{"UserLastname"} --> z.B. Hohndel $Env{"UserLogin"} --> z.B. mgg@x11.org $Env{"UserIsGroup[users]"} = Yes --> Benutzergruppen (useful for own links) $Env{"UserIsGroup[admin]"} = Yes $Env{"Action"} --> Die aktuelle Aktion $Env{"Subaction"} --> Die aktuelle Subaktion |
Inkludieren eines ander dtl Datei - $Include{}
Um css.dtl inkludieren:
$Include{"css"} |
System-Aufruf
Um den Output eines Systemkommandos zu bekommen, verwenden Sie:
# execute system call <dtl system-call $Data{"uptime"} = "uptime"> # print $Data{"uptime"} |
# execute system call <dtl system-call $Data{"procinfo"} = "procinfo | head -n1 "> # print $Data{"procinfo"} |
Beispiele
# set variable <dtl set $Data{"Test1"} = "English"> # print variable Echo: $Data{"Test1"} # condition <dtl if ($Text{"Lock"} ne "Lock") { $Data{"Test2"} = "Not English!"; }> # print result Result: $Data{"Test1"} |
# translation test Lock: $Text{"Lock"} # config options Sendmail: $Config{"Sendmail"} |