TimoMeister
Occasional Collector

CMS_FUNCTION - Letzte Reihe gerade bzw. ungerade

Jump to solution

Hallo zusammen,

habe mal wieder eine kleine Frage. Und zwar in der CMS_FUNCTION Table möchte ich gerne Abfragen ob die letzte Reihe gerade bzw. ungerade ist.

Ob es sich um die letzte Reihe handelt mache ich ja mit diesem Aufruf:

<ROW number="LAST"><![CDATA[<tr class="">$CMS_VALUE(#content)$</tr>]]></ROW>

Nun muss ich aber noch Abfragen ob die letzte Reihe gerade ist. Wenn ja dann soll eine entsprechende Klasse ("bottom") eingefügt werden - sonst nicht!

Aufbau der Tabelle:

<tr class="even">

          <td>Videns Triton testandum deprecata</td>

          <td>Ingens ad deprecata</td>

          <td></td>

</tr>

<tr class="odd">

          <td>Videns Triton testandum deprecata</td>

          <td>Ingens ad deprecata</td>

          <td></td>

</tr>

<tr class="even bottom">

          <td>Videns Triton</td>

          <td>Ingens</td>

          <td></td>

</tr>

Hoffe es ist verständlich.

Danke

Labels (1)
0 Kudos
1 Solution

Accepted Solutions
hoebbel
Crownpeak employee
Crownpeak employee

Re: CMS_FUNCTION - Letzte Reihe gerade bzw. ungerade

Jump to solution

Hallo Herr Meister,

innerhab des ROW Tags steht das #cell Objekt nicht zur Verfügung, insofern ist es das erwartete Verhalten Smiley Sad

Ich würde es so lösen:

- Sonderbehandlung für die letzte Zeile:

<ROW number="LAST"><![CDATA[<tr class="$CMS_VALUE(lastRowClass)$ bottom">$CMS_VALUE(#content)$</tr>]]></ROW>

- Die Variable lastRowClass dann in graden und ungraden Zeilen entsprechend füllen:

<ROW number="ODD"><![CDATA[<tr class="odd">$CMS_VALUE(#content)$</tr>$CMS_SET(lastRowClass,"even")$]]></ROW>

<ROW number="EVEN"><![CDATA[<tr class="odd">$CMS_VALUE(#content)$</tr>$CMS_SET(lastRowClass,"")$]]></ROW>

Der in der vorletzten Zeile gesetzte Wert ist dann für die letzte Zeile gültig. Hier muss man zwar etwas "um die Ecke denken", dafür kommt man ohne Abfragen aus Smiley Wink

Viele Grüsse aus Dortmund,

  Holger Höbbel

View solution in original post

0 Kudos
4 Replies
feddersen
Community Manager
Community Manager

Re: CMS_FUNCTION - Letzte Reihe gerade bzw. ungerade

Jump to solution

Mit #cell.rowNumber können Sie abfragen, in welcher Zeile Sie sich befinden. Zusammen mit einer modulo Operation sollte das zum Ziel führen. Siehe http://www.e-spirit.com/odfs42/de/vorlagenentwicklung/vorlagensyntax/systemobjekte/cell/cell_1.html?...

0 Kudos
TimoMeister
Occasional Collector

Re: CMS_FUNCTION - Letzte Reihe gerade bzw. ungerade

Jump to solution

Hab ich so versucht. Mir wird aber kein Wert ausgegeben.

<ROW number="LAST"><![CDATA[<tr class="$CMS_VALUE(#cell.rowNumber)$">$CMS_VALUE(#content)$</tr>]]></ROW>

0 Kudos
hoebbel
Crownpeak employee
Crownpeak employee

Re: CMS_FUNCTION - Letzte Reihe gerade bzw. ungerade

Jump to solution

Hallo Herr Meister,

innerhab des ROW Tags steht das #cell Objekt nicht zur Verfügung, insofern ist es das erwartete Verhalten Smiley Sad

Ich würde es so lösen:

- Sonderbehandlung für die letzte Zeile:

<ROW number="LAST"><![CDATA[<tr class="$CMS_VALUE(lastRowClass)$ bottom">$CMS_VALUE(#content)$</tr>]]></ROW>

- Die Variable lastRowClass dann in graden und ungraden Zeilen entsprechend füllen:

<ROW number="ODD"><![CDATA[<tr class="odd">$CMS_VALUE(#content)$</tr>$CMS_SET(lastRowClass,"even")$]]></ROW>

<ROW number="EVEN"><![CDATA[<tr class="odd">$CMS_VALUE(#content)$</tr>$CMS_SET(lastRowClass,"")$]]></ROW>

Der in der vorletzten Zeile gesetzte Wert ist dann für die letzte Zeile gültig. Hier muss man zwar etwas "um die Ecke denken", dafür kommt man ohne Abfragen aus Smiley Wink

Viele Grüsse aus Dortmund,

  Holger Höbbel

0 Kudos
TimoMeister
Occasional Collector

Re: CMS_FUNCTION - Letzte Reihe gerade bzw. ungerade

Jump to solution

Super! Das ist eine Klasse Lösung.

Vielen Dank

0 Kudos