if-Bedingung um CEs verschieden zu wrappen

  • jhernst jhernst
    Padawan
    0 x
    36 Beiträge
    0 Hilfreiche Beiträge
    30. 11. 2007, 16:11

    Hallo zusammen,

    ich muss in Abhängigkeit von der colPos eines Elementes dieses mit einem <div class="left_column_object"> oder einem <div class="right_column_object"> wrappen.
    Eine erste Idee war, dies über
    [TS]tt_content.stdWrap.dataWrap = <a id="c{field:uid}"></a><div class="{field:colPos}_column_object">|</div>[/TS]
    zu lösen.
    Dies funktioniert insoweit, als das so die Elemente links mit <div class="0_column_object"> bzw. rechts mit <div class="1_column_object"> gewrappt werden.
    Aaaaaber... die CSS-Dateien des Projektes sind sehr umfangreich, so dass es zu kompliziert wäre, diese entsprechend zu ändern.

    Gibt es einen Weg dieses Problem zu lösen? Entweder indem man {field:colPos} on-the-fly ändert oder über die if-Condition?
    Gerade Letzteres erschliesst sich mir noch nicht wirklich... o.O

    Danke!
    Jari


  • 1
  • ArminB ArminB
    Jedi-Meister
    0 x
    410 Beiträge
    0 Hilfreiche Beiträge
    30. 11. 2007, 21:01

    moin,

    mach den wrap doch styles.content.getRight, styles.content.getLeft etc. pp.

    Armin

  • jhernst jhernst
    Padawan
    0 x
    36 Beiträge
    0 Hilfreiche Beiträge
    03. 12. 2007, 15:44

    Hm, der Gedanke kam mir auch schon.
    Allerdings arbeite ich (zum ersten Mal) mit TemplaVoila und da erfolgt die Zuweisung ja anders. Ich habe aber mal versucht, lib.leftContent und lib.rightContent zu wrappen, was aber zu gar keinem Ergebnis geführt hat, weil der TS-Code ignoriert wird.

    Andere Ideen?

    Jari

  • jhernst jhernst
    Padawan
    0 x
    36 Beiträge
    0 Hilfreiche Beiträge
    13. 12. 2007, 16:54

    Hallo zusammen,

    nicht, dass ich den Thread unbedingt wieder nach oben bringen will, aber leider hat sich die Frage noch nicht erledigt. ;)

    Die Lösung mittels dataWrap für die beiden Spalten die unterschiedlichen CSS-Klassen columm_0_obejct und column_1_object zu erstellen, führt in dem vorgegebenen Szenario leider in eine Sackgasse, da der HTML-Code für beide Objekte unterschiedlich ist. Ich muss also auf jeden Fall in Abhängigkeit von der colPos die einzelnen tt_content-Einträge wrappen.

    Meine Recherche hat mich auf die Spur gebracht, es mit dem CASE-cObjekt zu versuchen.
    Leider aber ist tt_content ja selbst ein CASE-cObjekt, welches in Abhängigkeit vom cType unterschiedliche Zustände annehmen kann.

    Ist es möglich als key für ein CASE-cObjekt mehrere Felder zu nutzen? Und wenn ja, wie? Direkt auf die stdWrap-Funktion eines cObjects zuzugreifen geht offenkundig nicht!

    Bin immer noch für alle Ideen offen!

    Lieben Gruß,
    Jari

  • 1