Guten Morgen zusammen,
ich bastel mir gerade eine Galerie-Absatz-Vorlage mit Bootstrap als CSS-/JS-Grundlage. Nun gebe ich dem Redakteur die Möglichkeit, einen Medienordner auszuwählen. Aus diesem werden alle Bilder geladen und mittels for-Schleife im HTML-Bereich ausgegeben.
Nun kann der Redakteur auch auswählen, in wie vielen Spalten die Galerie ausgegeben werden will. In der for-Schleife will ich mittels Modulo-Rechnung prüfen, ob am Ende des aktuellen Durchlaufs eine neue Zeile angefangen werden muss. Leider funktioniert es nicht, da es mir den Wert aus dem CMS_INPUT_RADIOBUTTON scheinbar nicht als Zahl erkennt. Folglich schlägt die Modulo-Rechnung fehl.
Mein CMS_INPUT_RADIOBUTTON:
<CMS_INPUT_RADIOBUTTON name="st_columns" allowEmpty="no" gridWidth="5" hFill="yes" useLanguages="no">
<ENTRIES>
<ENTRY value="2">
<LANGINFOS>
<LANGINFO lang="*" label="2"/>
</LANGINFOS>
</ENTRY>
<ENTRY value="3">
<LANGINFOS>
<LANGINFO lang="*" label="3"/>
</LANGINFOS>
</ENTRY>
<ENTRY value="4">
<LANGINFOS>
<LANGINFO lang="*" label="4"/>
</LANGINFOS>
</ENTRY>
<ENTRY value="5">
<LANGINFOS>
<LANGINFO lang="*" label="5"/>
</LANGINFOS>
</ENTRY>
<ENTRY value="6">
<LANGINFOS>
<LANGINFO lang="*" label="6"/>
</LANGINFOS>
</ENTRY>
</ENTRIES>
<LANGINFOS>
<LANGINFO lang="*" label="Anzahl der Spalten"/>
</LANGINFOS>
</CMS_INPUT_RADIOBUTTON>
Im HTML-Bereich:
$CMS_FOR(x, media_list)$
$-- Index korrekt setzen --$
$CMS_SET(index, #for.index + 1)$
$CMS_IF(#for.isFirst)$
<div class="row">
$CMS_END_IF$
$-- Inhalt des aktuellen Elements --$
$CMS_IF(index % st_colummns == 0)$
</div>
<div class="row">
$CMS_END_IF$
$CMS_IF(#for.isLast)$
</div>
$CMS_END_IF$
$CMS_END_FOR$
Wie gesagt greift meine Modulo-Rechnung nie. Ersetze ich st_columns in der IF-Anweisung durch eine Zahl funktioniert alles korrekt.
Jemand eine Idee, woran es liegen könnte? Muss ich st_columns erst nach Integer casten?
Danke schonmal!
Fabian