Script Action
Dateien mit der Endung .script enthalten Script Actions. Script Actions erzeugen JavaScript. Sie können durch eine URL unter ihrem Dateinamen aufgerufen werden.
<action>
<function>
(lambda (request)
(let
((firstname (. request firstname))
(lastname (. request lastname)))
(cond
((or (null? firstname) (less? (string-length firstname) 1))
(list
(replace-node
(quote message)
"Please enter your firstname.")))
((or (null? lastname) (less? (string-length lastname) 1))
(list
(replace-node
(quote message)
"Please enter your lastname.")))
((list
(replace-node-from-template
(quote content)
"/ok.html"
request))))))
</function>
</action>
Beispiel 3: die Script-Action sumbit.script
Das oben gezeigte Beispiel für eine Script Action ermittelt mit . die Werte in den beiden Eingabefeldern. Die Werte werden anschließend überprüft. Wenn die Werte nicht zulässig sind, sorgt die Script Action mit replace-node dafür, dass der Node message durch eine passende Meldung ersetzt wird. Sind die Werte akzeptabel, ersetzt das Script mit replace-node-from-template den Node content durch eine Instanz des Templates ok.html.
Hello <!-- insert type="text" name="firstname" /--> <!-- insert type="text" name="lastname" /-->!
Beispiel 4: das Template ok.html
Beim Instanzieren des Templates werden die Lücken firstname und lastname durch die Werte aus den Eingabefeldern ersetzt.
<action>
<function>
(lambda (request)
(let
((firstname (. request firstname))
(lastname (. request lastname)))
(cond
((or (null? firstname) (less? (string-length firstname) 1))
(list
(replace-node
(quote message)
"Please enter your firstname.")))
((or (null? lastname) (less? (string-length lastname) 1))
(list
(replace-node
(quote message)
"Please enter your lastname.")))
((list
(replace-node-from-template
(quote content)
"/ok.html"
request))))))
</function>
</action>
Beispiel 3: die Script-Action sumbit.script
Das oben gezeigte Beispiel für eine Script Action ermittelt mit . die Werte in den beiden Eingabefeldern. Die Werte werden anschließend überprüft. Wenn die Werte nicht zulässig sind, sorgt die Script Action mit replace-node dafür, dass der Node message durch eine passende Meldung ersetzt wird. Sind die Werte akzeptabel, ersetzt das Script mit replace-node-from-template den Node content durch eine Instanz des Templates ok.html.
Hello <!-- insert type="text" name="firstname" /--> <!-- insert type="text" name="lastname" /-->!
Beispiel 4: das Template ok.html
Beim Instanzieren des Templates werden die Lücken firstname und lastname durch die Werte aus den Eingabefeldern ersetzt.