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]