[TYPO3-german] Element-Gruppen wrappen in eigenem Content mit TS

Tom Arnold t3list at bnt.de
Mon Mar 28 12:41:58 CEST 2011


So, weiter im Selbstgespräch.

Die Anzahl der Gesamtrecords habe ich nun auch, mit LOAD_REGISTER und 
numRows.

Jetzt gibt es noch eine letzte Sache:

Wenn der letzte Record gleichzeitig der erste Record nach dem Modulo 
ist, dann wird durch die Überprüfung auf "es ist das letzte", das 
startende Group-Div nicht erzeugt... argh.

Ich brauche also *noch* eine Überprüfung.

Im Moment wird innerhalb des CASE des outerWraps gecheckt, ob es der 
erste Record (oder der erste nach dem der Modulo=0 ist) ist, oder der 
Record, bei dem der Modulo=0 ist.

Dann wird im Override des Outerwrap geschaut, ob es der letzte Record ist.

Hier müsste jetzt noch die Überprüfung rein, ob es der erste Record 
(nach dem Modulo) UND der letzte Record ist - und wieder stehe ich vor 
einem Rätsel.

temp.gruppen = CONTENT
temp.gruppen {
      (selectkrams...)
      renderObj = COA
      renderObj {
          stdWrap.dataWrap =
<div class="item-{cObj:parentRecordNumber}">|</div>

	1 = LOAD_REGISTER
      	1.totalRecords = TEXT
       	1.totalRecords.numRows < temp.gruppen

          stdWrap.outerWrap.cObject = COA
          stdWrap.outerWrap.cObject {
              10 = CASE
              10.key.cObject = TEXT
              10.key.cObject.data = cObj:parentRecordNumber
                  # 2, Berechnung per Modulo
                  10.key.cObject.wrap = |%4
                  10.key.prioriCalc = intval
              # default: nix wrappen
                  10.default = TEXT
                  10.default.value = |
              # erstes element: groupwrap oeffnen:
                  10.1 = TEXT
                  10.1.value = <div class="group">|
              # modulo = 0: groupwrap schliessen:
                  10.0 = TEXT
                  10.0.value = |<!-- .group --></div>
          }
     stdWrap.outerWrap.override.cObject = COA
           stdWrap.outerWrap.override.cObject {
             if.value.data = cObj:parentRecordNumber

         # wie bekomme ich hier die numRows hin?
             if.equals.data = register:totalRecords

             10 = TEXT
             10.value = |<!-- .group .last --></div>
           }
          10 = TEXT
          10.value = (Hier der Inhalt)
      }
}

Viele Grüsse
Tom




Am 27.03.11 19:51, schrieb Tom Arnold:
> Soo, fast am Ziel :)
>
> Das letzte Puzzlestück, den letzten Record zu identifizieren und
> ebenfalls mit dem schliessenden Group-Div zu versehen, klappt, wenn ich
> die Anzahl der Records als Zahl reinschreibe (14). Perfekt wäre es, wenn
> ich an dieser Stelle sowas wie cObj:parentRecordTotal oder eben die
> numRows aus dem select benutzten könnte...
>
> temp.gruppen = CONTENT
> temp.gruppen {
> (selectkrams...)
> renderObj = COA
> renderObj {
> stdWrap.dataWrap =
> <div class="item-{cObj:parentRecordNumber}">|</div>
> stdWrap.outerWrap.cObject = COA
> stdWrap.outerWrap.cObject {
> 10 = CASE
> 10.key.cObject = TEXT
> 10.key.cObject.data = cObj:parentRecordNumber
> # 2, Berechnung per Modulo
> 10.key.cObject.wrap = |%4
> 10.key.prioriCalc = intval
> # default: nix wrappen
> 10.default = TEXT
> 10.default.value = |
> # erstes element: groupwrap oeffnen:
> 10.1 = TEXT
> 10.1.value = <div class="group">|
> # modulo = 0: groupwrap schliessen:
> 10.0 = TEXT
> 10.0.value = |<!-- .group --></div>
> }
> stdWrap.outerWrap.override.cObject = COA
> stdWrap.outerWrap.override.cObject {
> if.value.data = cObj:parentRecordNumber
>
> # wie bekomme ich hier die numRows hin?
> if.equals = 14
>
> 10 = TEXT
> 10.value = |<!-- .group .last --></div>
> }
> 10 = TEXT
> 10.value = (Hier der Inhalt)
> }
> }
>
> Hat da jemand eine Idee?
> Vielem Dank,
> Tom
>
>
>
> Am 27.03.11 14:12, schrieb Tom Arnold:
>> Argh. Einen kleinen Schönheitsfehler hat das Ganze noch: Die letzte
>> Group wird nicht geschlossen, wenn es nicht genau auf 4 aufgeht. Damn.
>> Zu früh gefreut.
>>
>>
>> Am 27.03.11 13:45, schrieb Tom Arnold:
>>> temp.gruppen = CONTENT
>>> temp.gruppen {
>>> (selectkrams...)
>>> renderObj = COA
>>> renderObj {
>>> stdWrap.dataWrap =
>>> <div class="item-{cObj:parentRecordNumber}">|</div>
>>> stdWrap.outerWrap.cObject = COA
>>> stdWrap.outerWrap.cObject {
>>> 10 = CASE
>>> 10.key.cObject = TEXT
>>> 10.key.cObject.data = cObj:parentRecordNumber
>>> # 2, Berechnung per Modulo
>>> 10.key.cObject.wrap = |%4
>>> 10.key.prioriCalc = intval
>>> # default: nix wrappen
>>> 10.default = TEXT
>>> 10.default.value = |
>>> # erstes element: groupwrap oeffnen:
>>> 10.1 = TEXT
>>> 10.1.value = <div class="group">|
>>> # modulo = 0: groupwrap schliessen:
>>> 10.0 = TEXT
>>> 10.0.value = |<!-- .group --></div>
>>> }
>>> 10 = TEXT
>>> 10.value = (Hier der Inhalt)
>>> }
>>> }
>>
>



More information about the TYPO3-german mailing list