Suche:
Virthos-Onlinedokumentation > >   

Inline-Aktionen mit vtDo

Virthos Master stellt eine VirthosTalk-Anweisung zur Verfügung, mit der sich Vorgänge, die normalerweise durch das Absenden eines Formulars angestoßen werden, auch "inline" – also einfach durch das Abrufen einer Seite – ausführen lassen. Diese Anweisung sieht folgendermaßen aus:

<!--{{vtDo: -act="xxx", yyy}}-->

Das "xxx" müssen Sie durch den Namen der Aktion ersetzen, die ausgeführt werden soll, das "yyy" durch zusätzliche Angaben, die für das Ausführen der Aktion erforderlich sind (und die in vielen Fällen auch durch das Absenden eines Formulars übergeben werden könnten).

Ein einfaches Beispiel könnte so aussehen:

<!--{{vtDo: -act="create", -target="//", -template="logentry"}}-->

Wenn Sie diese Anweisung in ein Template einbinden und in Virthos eine Seite auf Basis dieses Templates anlegen, wird bei jedem Aufruf dieser Seite ein "Logeintrag" erzeugt. Logeintrag bedeutet in diesem Fall einfach, dass auf der obersten Virthos-Ebene eine neue Seite vom Typ "logentry" erzeugt wird. Auf diese Weise sammelt sich schnell eine Menge "Abfall" an, den Sie mit Hilfe der folgenden Anweisungen aber schnell wieder beseitigen können:

<!--{{vtUse://}}-->
    <!--{{vtLoop: logentry}}-->
        <!--{{vtDo: -act="trash", -obj="{vtID}"}}-->
    <!--{{vtEndLoop}}-->
<!--{{vtEndUse}}-->

Die vtUse-Anweisung macht die oberste Virthos-Ebene zum aktuellen Kontext. Mit vtLoop werden dann alle Seiten vom Typ "logentry" durchlaufen, die sich auf dieser Ebene befinden. Und die vtDo-Anweisung verschiebt diese Seiten dann in den Papierkorb.

Besonders hilfreich ist vtDo, wenn man Sessionvariablen speichern möchte, ohne dass ein Formular abgesendet oder ein Hyperlink angeklickt wird:

<!--{{vtDo: -act="updateSession", Variable1="Wert1", Variable2="Wert2" }}-->

Grundsätzlich können Sie mit vtDo alle Aktionen verwenden, die auch als Formularaktionen zur Verfügung stehen. Welche dies sind und welche Parameter Sie jeweils angeben müssen, ist im dritten Teil des Virthos-Benutzerhandbuches im Kapitel "Formularverarbeitung" beschrieben. Zusätzlich zu den dort aufgeführten Aktionen stellt Virthos Master noch weitere Aktionen zur Verfügung:

Aktion Beschreibung Parameter
setCookie speichert Variablen in einem Cookie siehe den Abschnitt über Cookies weiter hinten
importCSV importiert eine CSV-Datei, erstellt für jede Zeile eine Seite in Virthos -file (CSV-Datei, die per Formular hochgeladen wurde; diese muss in der ersten Zeile die Namen der Platzhalter enthalten, die der jeweiligen Spalte entsprechen), -template (Name des Seitentyps für die erstellten Seiten)
addUserToGroup fügt einen Benutzer zu einer Gruppe hinzu -user (Name des Benutzers), -group (Name der Gruppe)

Beachten Sie: Anders als bei Formularaktionen prüft Virthos bei einer Inline-Aktion nicht, ob der aktuelle Benutzer die nötigen Rechte besitzt, um die Aktion auszuführen. Diese Prüfung müssen Sie daher, wenn sie gewünscht ist, selbst in Form von vtIf-Bedingungen in das jeweilige Template einbauen.

< 11.09.2008, 07:51 Uhr Ereignisgesteuerte Methoden >