Am 29.07.14 16:07, schrieb derSven:
Hallo

ich habe drei variablen  {item.albums} {item.songs} {item.singles}
diese 3 sollen wenn alle vorhanden sind als 3er- Spalten nebeneinander
ausgegeben werden:

<div class="row">
    <div class="col2 col"> {item.albums} </div>
    <div class="col2 col"> {item.songs} </div>
    <div class="col2 col"> {item.singles} </div>
</div>

Nun habe ich aber Situationen wo ein oder zwei variablen nicht gefüllt
sind.
das heisst auch das layout soll sich auf 2 oder 1 spalte ändern.

dafür gibt es 7 Möglichkieten:

1:
albums
songs
singles

2:
albums
songs

3:
songs
singles

4:
albums
singles

5:
albums alleine

6:
songs alleine

7:
singles alleine


mit if condition kann ich ausgehend von {item.singles} die Situationen
abfragen, das funktioniert aber nicht bis zur letzten Möglichkeit. siehe
Schemata

if {item.albums}
then
"col2" {item.albums}
"col2" {item.songs}
"col2" {item.singles}
else
  if {item.songs}
    then
      "col3" {item.songs}
      "col3" {item.singles}
    else
       "col6" {item.singles}

das ist aber nicht wirklich vollständig. bei drei abfragen musst du auch drei ebenen mit jeweils 'then' und 'else' haben:

if {item.albums}
then
  if {item.songs}
  then
    if {item.singles}
    then
       2-2-2
    else
       3-3-0
  else
    if {item.singles}
    then
       3-0-3
    else
       6-0-0
else
  if {item.songs}
  then
    if {item.singles}
    then
      0-3-3
    else
      0-6-0
  else
    if {item.singles}
    then
      0-0-6
    else
      0-0-0 ???

alternativ zählst du die elemente und errechnest die Spaltenbreite
(ext:vhs mit v:var.set
und <f:cObject typoscriptObjectPath="lib.calc"> ...)

spalten = 0
if {item.albums}  spalten++
if {item.songs}   spalten++
if {item.singles} spalten++
spaltenbreite = 6 / spalten

if {item.albums}  "col{spaltenbreite}" {item.albums}
if {item.songs}   "col{spaltenbreite}" {item.songs}
if {item.singles} "col{spaltenbreite}" {item.singles}

Wie kann ich das abfangen?!? Kann mir da jemand helfen?!

vollständige Abfragen machen!

bernd
--
http://www.pi-phi.de/cheatsheet.html
_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Antwort per Email an