Webgate Anywhere 4.1 - TMLScript Referenz
TMLContext

Objekt TMLContext
Beschreibung Der TML-Kontext ist das Basisobjekt der TMLScript-Laufzeit und vereinheitlicht diverse oft benutzte Funktionalitäten in sich. Es repräsentiert den TML-Kontext den auch WebTML-Tags benutzen, und der immer ein bestimmtes Inhaltsdokument im Zugriff hat. Daher finden sich hier auch die vom Tag <tml:item> bekannten Funktionalitäten um Item- und Metadaten aus dem Inhaltsdokument auszulesen in Form der Methoden this.item() und this.meta().

Mit der Methode this.context() kann auf andere TML-Kontexte zugegriffen werden indem die bereits aus dem WebTML-Attribut "context" bekannten Kontext-Ausdrücke verwendet werden.

Über die Methode this.content() erlaubt das TML-Kontext-Objekt Zugriff auf das WGAPI-Objekt zum aktuell im Kontext befindlichen Inhaltsdokument.

Alle Methoden dieses Objektes sind case-insensitiv und können in diversen Groß-/Kleinschreibungs-Varianten verwendet werden. Lediglich die Kurzformen der Methoden "this.item" und "this.meta" werden anhand der Groß-/Kleinschreibung unterschieden.

Ab WGA 3.2 ist die Angabe von "this" implizit. Felder und Methoden die nicht explizit über ein Objekt qualifiziert oder als Javascript-Variable deklariert werden werden als Felder und Methoden des "this"-Objektes interpretiert.
Ermittelbar über Das "this"-Objekt (Angabe ist implizit)
this.context()
Verfügbar in
  • WebTML-Seiten und normalen WebTML-Aktionen
  • Master-Aktionen
  • TMLScript-Tasks in Jobs
  • Seitentyp-Events
Eigenschaften und Methoden
Name Purpose
parseHTML(htmlText) Parst HTML-Text und stellt dazu ein DOM-Dokumentenobjekt zur Verfügung
this.addWarning(message[, severe]) Erstellt eine WebTML-Warnung
this.assignUserProfile([domain,] profileid, password) Weist dem aktuellen Benutzer ein Benutzerprofil zu.
this.bestFragments(itemname, fragmentSize, maxFragments [, prefix] [, suffix] [, encode]) Ermittelt zu einem Item aus einem Ergebnisdokument einer Lucene-Volltextsuche die "besten Fragmente" mit der höchsten Such-Übereinstimmung
this.changeSessionPassword([domain, ] newPassword) Ändert das Kennwort in der aktuellen Browser-Sitzung, mit welchem der Benutzer an einer Domäne angemeldet ist
this.closeUserProfile([domain]) Beendet die Zuweisung eines Benutzerprofils zum aktuellen Benutzer.
this.content() Stellt das WGAPI-Objekt "WGContent" zum Inhaltsdokument im Kontext zur Verfügung.
this.contentURL(medienkey, layoutkey [, ignoreVirtualLink]) Gibt eine URL zum Inhaltsdokument im Kontext aus.
this.context(contextExpression [, returnContextOnError])
this.context(content)
Ermittelt ein TMLKontext-Objekt zu einem anderen Inhaltsdokument.
this.cookies Repräsentiert die Browser-Cookies des aktuellen Benutzers
this.createCalendar(date) Erstelllt ein Objekt vom Typ "Calendar" welches diverse Funktionen zur Modifikationen von Datumswerten zur Verfügung stellt.
this.createCookie(name, value) Erstellt ein Browser-Cookie
this.createDate([includeMillis]) Erstellt ein neues Java-Datum welches die aktuelle Uhrzeit beinhaltet.
this.createEvent(name) Erstellt ein neues Objekt vom Typ PortletEvent.
this.createFolderTree( Root_ID, Root_Titel, User_defined_parameter, Javascript_Function_Name) Erstellt ein neues Objekt vom Typ FolderTree
this.createForm(formInfo) Erstellt ein neues Objekt vom Typ TMLForm basierend auf den Informationen eines Objektes vom Typ FormInfo
this.createFormInfo(formid [, htmlinput, persistent]) Erstellt ein neues Objekt vom Typ FormInfo
this.createImageScaler([file]) Erstellt ein Objekt vom Typ ImageScaler auf Basis einer Datei
this.createList()
this.createList(array)
this.createList(liststring, delimiter)
Erstellt ein neues Listenobjekt.
this.createLookupTable() Erstellt eine neue leere Lookup-Tabelle
this.createMail([host, username, password]) Erstellt ein Hilfsobjekt zur Versendung von E-Mails
this.createUserProfile([domain,] profilename, password [, forCurrentUser]) Erstellt manuell ein neues Benutzerprofil.
this.dateOnly(date) Entfernt Tageszeit-Angaben aus einem Datum.
this.db([dbkey]) Ermittelt ein WGAPI-Objekt "WGDatabase" zu einer eingebundenen Datenbank.
this.document Das WGAPI-Dokument im Kontext
this.encode(encoding, input) Führt eine Enkodierung an einem Text aus
this.event Ermittelt das Informationsobjekt zu einem eingetretenen Ereignis in Event-Scripts
this.fileurl(containername, filename) Erstellt eine URL zu einem Dateinanhang an Datei-Container oder Inhaltsdokument
this.getPortletByKey(String key) Ermittelt die Portletkonfiguration zum Portlet des angegebenen Schlüssels
this.hasChildren() Bestimmt ob das aktuelle Kontext-Dokument untergeordnete Dokumente besitzt.
this.hasLabel([container], [file], key) Überprüft, ob für die aktuelle Sprache ein Label definiert ist
this.hasprofile() Gibt true zurück, wenn für den aktuellen Benutzer ein Benutzerprofil vorliegt.
this.hdb([dbkey]) Ermittelt ein HDB-Datenbankobjekt zu einer eingebundenen Datenbank.
this.highlightItem(name, prefix, suffix [, encode]) Gibt ein Item des Kontext-Dokumentes aus und hebt dabei die in der letzten Lucene-Suche gesuchten Begriffe im Text hervor, falls diese dort enthalten sind.
this.httpsession Stellt das J2EE Session-Objekt zur Verfügung.
this.isbrowserinterface() Gibt true zurück, wenn die aktuelle Seite im Browser Interface gerendert wird.
this.isdefined(name) Überprüft ob ein Name als Item oder WebTML-Variable existiert.
this.isEmpty(item) Gibt true zurück, wenn das angegebene Item / die WebTML-Variable "leer" ist
this.isEmptyValue(value) Gibt true zurück, wenn der übergebene Wert "leer" ist
this.isfalse(varname) Überprüft ob der Inhalt des angegebenen Items oder WebTML-Variable false ist.
this.isFilled(item) Gibt true zurück, wenn der Inhalt des angegebenen Items / der WebTML-Variable "gefüllt" ist.
this.isFirstLoop([Tag-ID]) Überprüft, ob ein Tag <tml:foreach> in der ersten Iteration ist.
this.isLastLoop([Tag-ID]) Überprüft, ob ein Tag <tml:foreach> in der letzten Iteration ist.
this.ismaindocument() Überprüft ob der aktuelle Kontext der Hauptkontext des Requests ist
this.isnewsession() Überprüft ob der aktuelle Request der erste Request einer neuen Web Session ist.
this.isroot() Überpüft ob der aktuelle Kontext ein Root-Dokument ist.
this.isselected() Überprüft, ob der Kontext ein übergeordnetes Dokument des Hauptkontextes oder der Hauptkontext selbst ist.
this.istrue(varname) Überprüft ob der Inhalt eines Items oder einer WebTML-Variable true ist.
this.isWebEnvironment() Gibt zurück, ob der aktuelle TMLScript-Code im Kontext eines WebTML-Requests ausgeführt wird
this.item([type, ] itemname) Ermittelt den Inhalt eines Items oder einer WebTML-Variable
this.itemList([type, ] itemname) Ermittelt den Inhalt eines Items oder einer WebTML-Variable als Liste.
this.label([[container, ] file, ] key [, params])
this.label(database, container, file, key , params [, returnPlaceholder])
Gibt ein Textlabel in der Sprache des WGA-Benutzers zurück.
this.lastError Gibt den Fehler des letzten fehlgeschlagenen Kontextwechsels aus.
this.layoutURL(medium, layout) Generiert eine URL zu einem WebTML-Modul.
this.log Stellt ein Logging-Objekt für Ausgaben im Anwendungslog zur Verfügung.
this.logException([msg, ] error) Gibt Informationen zu einem TMLScript-Fehler als WebTML-Warnung und im Anwendungslog aus.
this.login(user, password, domain) Führt eine Benutzeranmeldung in TMLScript aus
this.logout(domain) Meldet den aktuellen Benutzer an einer Domäne ab
this.luceneSearch(phrase [, scope]) Führt eine Suche im Lucene-Volltextindex durch
this.maincontext Gibt den Hauptkontext zurück.
this.meta([type,] name) Gibt den Inhalt eines Metadaten-Feldes aus.
this.metaList([type,] metaname) Ermittelt den Inhalt eines Metadaten-Feldes als Liste
this.option(name) Ermittelt den Inhalt einer WebTML-Option.
this.parseDate(date, format) Konvertiert einen Datums-String in ein Datumsobjekt.
this.parseNumber(number, format) Konvertiert einen Zahlen-String in ein Nummer-Objekt.
this.path Gibt den absoluten Kontextpfad zum aktuellen Kontext zurück.
this.pluginDB(pluginName) Ermittelt das WGAPI-Objekjt "WGDatabase" zu einem WGA Plugin über seinen eindeutigen Namen
this.pluginDBKey(pluginName) Ermittelt den Datenbankschlüssel zu einem WGA Plugin über seinen eindeutigen Namen
this.pluginID(uniqueName) Ermittelt Versionsinformationen zu einem installierten WGA-Plugin
this.portlet Gibt die aktuelle Portlet-Konfiguration zurück.
this.preferredLanguage Gibt die bevorzugte Sprache des aktuellen Benutzers zurück.
this.profile Gibt das Benutzerprofil des aktuellen Benutzers zurück.
this.redirectTo(String url) Leitet den Browser des Benutzers zu einer anderen URL um.
this.removeLuceneQuery() Entfernt die letzte Lucene-Volltextsuche mit aktiviertem Ergebnis-Highlighting von der Sitzung des aktuellen Web-Benutzers
this.removeSessionVar(varname) Entfernt eine zuvor gesetzte Session-Variable.
this.removeVar(varname) Entfernt eine zuvor gesetzte WebTML-Variable.
this.request Stellt das J2EE Request-Objekt zur Verfügung
this.response Stellt das J2EE Response-Objekt zur Verfügung.
this.saveProfileOnEnd() Lässt Speicherungen am Benutzerprofil am Ende des Requests vornehmen
this.setOption(name, value [, scope]) Setzt eine WebTML-Option
this.setSessionVar(varname, value) Setzt den Inhalt einer WebTML-Session-Variable
this.setVar(varname, wert) Setzt den Wert einer WebTML-Variable.
this.tagInfo(tagid, infoname) Ermittelt den Inhalt einer WebTML-Tag-Information.
this.timeOnly(Date date) Entfernt Tag, Monat und Jahr aus einem Datum.
this.tmlform Gibt das aktuelle WebTML-Form-Objekt zurück
this.tmlformbyid(id) Gibt das WebTML-Form-Objekt mit der angegebenen ID zurück.
this.waitForAuthUpdates(database, timeout) Wartet bis Änderungen an einer Authentifizierungs-Datenbank wirksam werden
Beispiele Auslesen eines Items, einmal in normaler, einmal in Kurzform

return this.item("body");
return this.body


Auslesen eines Metadaten-Feldes, hier der Datenbank-Key der Datenbank im aktuellen Kontext.

return this.meta("db", "dbkey");


Ermitteln eines anderen TML-Kontext-Objektes. Das ermittelte Objekt ist wieder ein TML-Kontext-Objekt mit denselben Funktionen, hat jedoch ein anderes Inhaltsdokument im Kontext:

var rootContext = this.context("root");


Seit WGA 3.2 ist das "this"-Objekt implizit, d.h. muss nicht mehr mit angegeben werden. Die oben genannten Beispiele könnten also wie folgendermaßen codiert werden:

return item("body");
return body;
return meta("db", "dbkey");
var rootContext = context("root");


<< portletEvent.sourceName this.addwarning() >>