theaterelch

Christian Probst

Bern, Schweiz
Kontakt: info@theaterelch.ch
Klamm · Platero · Ware · Tod · Habgier · Gier · Philoktet · Gott · Maleine

spacer

Hilfe: Entwickler Makros

Diese Makros werden verwendet um programmierähnliche Funktionalität einzubauen. Sie sind mächtig, wenn Sie sachgemäss benutzt werden und schädlich/gefährlich, wenn sie unachtsam verwendet werden. Seien Sie also vorsichtig, beim Verwenden dieser Makros.

Beachte: Diese Makros sind in WebGUI enthalten, um die vielseitige Funktionalität zu demonstrieren. Damit können einfache Web-Applikationen erstellt werden. Standardmässig sind diese Makros deaktiviert, um die Sicherheit Ihrer Seite und des Servers zu gewährleisten. Sie können nur vom Administrator aktiviert werden.

^D; oder ^D(); - Datum
Das aktuelle Datum und die Uhrzeit. Sie können dies mit den Formatierungssymbolen konfigurieren. Wenn Sie z. B. ein Makro wie ^D("%c %D, %y"); erstellen, wird Ihnen folgendes angezeigt September 26, 2001. Nachfolgend die verfügbaren Formatierungssymbole:

%% %
%y 4-stelliges Jahr
%Y 2-stelliges Jahr
%m 2-stelliger Monat
%M variable Monat
%c Monatsname
%d 2-stelliger Tag
%D Variable Tag des Monats
%w Name des Wochentags
%h 2-stellige Uhrzeit (12-Stunden Format)
%H Variable Uhrzeit (12-Stunden Format)
%j 2-stellige Uhrzeit (24-Stunden Format)
%J variable Uhrzeit (24-Stunden Format)
%p kleingeschrieben am/pm
%P grossgeschrieben AM/PM
%z Benutzerdefiniertes Datums-Format
%Z Benutzerdefiniertes Zeit-Format

^Env();
Kann benutzt werden, um eine WebServer Umgebungsvariable auf der Seite anzeigen zu lassen. Diese Umgebungsvariablen sind von WebServer zu WebServer unterschiedlich, aber Sie können Sie die verfügbaren Variablen anzeigen lassen, wenn Sie http://www.ihreWebGUISeite.de/env.pl aufrufen. Das Makro wird z. B. wie folgt verwendet ^Env("REMOTE_ADDR");

^Execute();
Gibt dem Contentmanager oder Administrator die Möglichkeit, ein externes Programm auszuführen. Beispiel: ^Execute("/verzeichnis/datei.sh");.

^FormParam();
Dieses Makro wird hauptsächlich benutzt, um dynamische Abfragen in SQL Reports zu erzeugen. Das Benutzen dieses Makros kann z. B. den Wert eines Formularfeldes zurückgeben, in dem Sie einfach den Namen des Formularfeldes einsetzen, wie z. b. ^FormParam("Telefon Nummer");

^If();
Eine simple Bedingungsabfrage (IF/THEN/ELSE) um Layout und Nachrichten zu steuern.

Beispiele:
Zeigt Happy New Year am 1. Januar an: ^If('^D("%m%d");' eq '0101' , Happy New Year);

Zeigt eine Nachricht an Leute in Ihrem Subnet an (192.168.1.*): ^If('^Env("REMOTE_ADDR");' =~ /^192.168.1/,"Hi co-worker","Hi Stranger");

Zeigt eine Nachricht an Windows-Benutzer: ^If('^Env("HTTP_USER_AGENT");' =~ /windows/i,"Hey... Linux is free !");

Zeigt eine Nachricht an Benutzer hinter einem Proxy-Server an: ^If('^Env("HTTP_VIA");' ne "", You're behind a proxy !, Proxy-free is the best...);

Zeigt Guten Morgen/Guten Tag/Guten Abend an: ^If(^D("%J");<=12,Guten Morgen,^If(^D("%J");<=18,Guten Tag, Guten Abend););

^Include();
Gibt dem Contentmanager oder Administrator die Möglichkeit, eine Datei des lokalen Dateisystems einzubinden Beispiel: ^Include("/verzeichnis/seite.html");

^International();
Gibt den übersetzten Text vom 'Internationalisierungs-System' (Übersetzungen) zurück. Beispiel: ^International(45,"Article"); Beachte: Es muss die englische Bezeichnung (Article) verwendet werden.

^Quote();
Benutzen Sie dies, um einen String abzuschliessen bevor Sie in einer Datenbank-Abfrage benutzen, z.B. ^Quote(suche dieses oder jenes);

^Page();
Dieses Makro kann verwendet werden, um Informationen der aktuellen Seite zurückzugeben. Zum Beispiel kann es benutzt werden, um die Seiten-URL anzuzeigen: ^Page("urlizedTitle"); oder um einen Menutitel zu erhalten: ^Page("menuTitle");.

^SQL();
Ein einzeiliger SQL Report. Manchmal ist es erforderlich, schnell einen Datenbankinhalt zurückzugeben. Dieses Makro ist aber auch gut einsetzbar, um einen SQL-Report zu erweitern. Es werden numerische Makros (^0; ^1; ^2; etc) benutzt, um Daten zu positionieren. Sie können auch das ^rownum; Makro wie beim SQL Report Wobject benutzen.

Beispiele:

^SQL("select count(*) from users","Es sind ^0; Benutzer registriert.");

^SQL("select userId,username from users order by username","<a href='^/;?op=viewProfile&uid=^0;'>^1;</a><br>");

^URLEncode();
Dieses Makro wird auch hauptsächlich in SQL Reports verwendet, aber es kann auch genauso gut wo anders eingesetzt werden. Es überprüft den Inhalt einer Eingabe (z. B. im Formular) und wandelt ihn in eine URL um, sodass die Eingabe nachher als Link angezeigt wird.
Die Syntax ist wie folgt: ^URLEncode("Ist dies meine Eingabe?");

^User();
Mit diesem Makro können Sie einige Infos aus dem Benutzer-Konto oder Benutzerprofil anzeigen lassen. Wenn Sie z. B. die Emailadresse des Benutzers anzeigen möchten, müssen Sie das Makro wie folgt verwenden: ^User("email");

^*; oder ^*(); - Zufallszahl
Eine Zufallszahl. Wird oft in Banner-Ads oder ähnlichembenötigt, um z. B. sicherzustellen, das nicht gecachet wird. Sie können dieses Makro u. a. einsetzen, um eine Zufallszahl zwischen 1 und 100 zu erzeugen: ^*(100); .

^-; ^0; ^1; ^2; ^3; etc.
Diese Makros sind für System/Wobject spezifische Funktionen reserviert, wie im SQL Report oder im Body des Style Managers.

Siehe auch:

Mein Benutzerkonto