Page-Condition / TypoScript Conditions in TemplaVoilà Datenstruktur

Ein bestimmter Button oder Inhalt soll nur angezeigt werden, wenn der Benutzer im Frontend eingeloggt ist. Problem: TemplaVoilà läßt keine Page-Conditions im TypoScript zu. Es geht aber trotzdem: Man muss nur das TypoScript mit der Condition-Klausel auslagern – und genau zu diesem Zweck gibt es den Tag „TypoScriptObjPath“ in der TemplaVoilà Datenstruktur.

Die entsprechende Stelle im DataStructure XML des TemplaVoilà Datensatzes. Hier ist zwar der Typ auf „Bild“ eingestellt worden und zeigt das normale Upload-Feld für ein Bild, aber die Verarbeitung des Bildes ist durch das Tag „TypoScriptObjPath“ auf das TypoScript lib.fce_bike_images augelagert:

...

   
      
      
         
      
      
      image
               
      lib.fce_bike_images
      
      
         0
         0
         
      
      
   
   
      
      
         group
         file
         gif,png,jpg,jpeg
         5000
         uploads/tx_templavoila
         1
         2
         10
         0
      
   

...

Das TypoScript lib.fce_bike_images sitzt in einer Template Extension – und genau dort sind dann auch Page-Conditions erlaubt:


lib.fce_bike_images = COA
lib.fce_bike_images {
  10 = IMAGE
  10 {
    file {
      import = uploads/tx_templavoila/
      import.current = 1
      import.listNum = 0
      maxW = 650
    }
    imageLinkWrap = 1
    imageLinkWrap {
      enable = 1
      typolink {
         parameter {
            cObject = IMG_RESOURCE
            cObject.file.import.data = TSFE:lastImageInfo|origFile
            cObject.file.maxW = 950
         }
         ATagParams = class="bikezoom"
      }
    }
  }
  
  20 = IMG_RESOURCE
  20.file {
    import = uploads/tx_templavoila/
    import.current = 1
    import.listNum = 1
  }
  20.stdWrap.wrap = Zoom
  20.stdWrap.required = 1
  
  30 = TEXT
  30.value = 
}

[loginUser = *]
lib.fce_bike_images {
  30 >
  30 < .20
  30.file.import.listNum = 2
  30.stdWrap.wrap = > Download
}
[global]