[Frage] eine simples oder in der <f:if>

  • Tevsa Tevsa
    Sternenflotten-Admiral
    0 x
    171 Beiträge
    5 Hilfreiche Beiträge
    06. 07. 2016, 16:08

    Der Code:

    1. <f:if condition="{0:ereignis.catergory.0.uid} == {0:9}">
    2. <f:then>
    3. </f:then>
    4. <f:else>
    5. <f:if condition="{0:ereignis.catergory.0.uid} == {0:8}">
    6.  
    7. </f:if>
    8. <f:else>
    9. <f:cObject typoscriptObjectPath="lib.AnzahlJahre" data='(2016-{f:format.date(date: ereignis.zeit, format: "Y")})'/>
    10. </f:else>
    11. </f:else>
    12. </f:if>

    Was ich erreichen will:

    Wenn die {ereignis.catergory.0.uid} NICHT 8 oder 9 ist, dann führe das
    Typoscript aus und bereche die Jahre (auch noch nicht ganz fertig ...:-)

    die erste If wird richtig ausgeführt

    {ereignis.catergory.0.uid} entspricht der uid der Kategorie die über eine 2. Table eingebunden wird

    Ich sehe meine Fehler nicht.
    Mag mir da jemand eine Anstubs geben? :-D
    Danke im Vorraus

    Typo3 7.6.0

    Irgend etwas is' ja immer...

  • Hilfreichster Beitrag

  • jenses jenses
    Flash Gordon
    1 x
    3087 Beiträge
    106 Hilfreiche Beiträge
    07. 07. 2016, 11:07 - Hilfreichster Beitrag

    Schau dir mal den vhs:if viewhelper an, da kannst du conditions kombinieren und kommst dann auf so etwas:

    1. <v:if stack="{0: 0:ereignis.catergory.0.uid, 1: '!=', 2: 0:9, 3: 'AND', 4: 0:ereignis.catergory.0.uid, 5: '!=', 6: 0:8}">
    2. <f:then><f:cObject typoscriptObjectPath="lib.AnzahlJahre" data='(2016-{f:format.date(date: ereignis.zeit, format: "Y")})'/></f:then>
    3. <f:else>IF ELSE</f:else>
    4. </v:if>

    https://fluidtypo3.org/viewhelpers/vhs/master/IfViewHelper.html
    https://github.com/FluidTYPO3/vhs/issues/493


  • 1
  • Tevsa Tevsa
    Sternenflotten-Admiral
    0 x
    171 Beiträge
    5 Hilfreiche Beiträge
    06. 07. 2016, 16:15

    Äh gelöst:

    1. <f:if condition="{0:ereignis.catergory.0.uid} == {0:9}">
    2. <f:then>
    3. </f:then>
    4. <f:else>
    5. <f:if condition="{0:ereignis.catergory.0.uid} != {0:8}">
    6.  
    7. <f:cObject typoscriptObjectPath="lib.AnzahlJahre" data='(2016-{f:format.date(date: ereignis.zeit, format: "Y")})'/>
    8. </f:if>
    9. <f:else>
    10. </f:else>
    11. </f:else>
    12. </f:if>

    wenn es nicht 9 ist:
    wenn es ungleich 8 ist
    DANN mache es ...

    Falls es jemanden interessiert :-D
    Tevsa

    Irgend etwas is' ja immer...

  • jenses jenses
    Flash Gordon
    1 x
    3087 Beiträge
    106 Hilfreiche Beiträge
    07. 07. 2016, 11:07

    Schau dir mal den vhs:if viewhelper an, da kannst du conditions kombinieren und kommst dann auf so etwas:

    1. <v:if stack="{0: 0:ereignis.catergory.0.uid, 1: '!=', 2: 0:9, 3: 'AND', 4: 0:ereignis.catergory.0.uid, 5: '!=', 6: 0:8}">
    2. <f:then><f:cObject typoscriptObjectPath="lib.AnzahlJahre" data='(2016-{f:format.date(date: ereignis.zeit, format: "Y")})'/></f:then>
    3. <f:else>IF ELSE</f:else>
    4. </v:if>

    https://fluidtypo3.org/viewhelpers/vhs/master/IfViewHelper.html
    https://github.com/FluidTYPO3/vhs/issues/493

  • 1