Sie sind hier:   » ZMS home » Dokumentation » Details » How-To » DTML/Products » Textformate ändern

Textformate rekursiv ändern

Autor: Dr. Frank Hoffmann, 08.06.2005

Die Bildlegende ist nicht mit dem dafür gedachten Textformat ausgestattet worden. Also möchte man generalisiert (oder ab einem bestimmten Knoten) das Attribut 'format' des ZMS-Standard-Objektes 'ZMS-Graphic' neu setzen.

Lösungsansatz: Eíne DTML-Methode auf Template-Ebene steigt mit der API-Funktion 'filteredTreeNodes() 'im Zielknoten ein, ermittelt den (ausnahmenweise stets monolingualen) Wert von Format, setzt den Wert neu mit setObjProperty() und speichert diesen mit onChangeObj(REQUEST) ab. Schliesslich liefert diese Beispiel-Methode ein orientierendes Protokoll aus.

Zoom (88KB)

DTML Methode zur Manipulation von Objekt-Attributen

<html>
<body>
<dtml-with "content.e232.e233">
<dtml-var f_standard_html_request>
<dtml-in "filteredTreeNodes(REQUEST,'ZMSGraphic')">
<dtml-call "REQUEST.set('f',getObjProperty('format',REQUEST))">
<dtml-if f>
  Format: '<dtml-var f>'
  <dtml-call "setObjStateModified(REQUEST)">
  <dtml-call "setObjProperty('format','caption',lang)">
  <dtml-call "onChangeObj(REQUEST)">
  <i>changed to</i>: 'caption'<br />
</dtml-if>
</dtml-in>
</dtml-with>
</body>
</html>