Zum Inhalt springen

elseif bzw case

Erstellt am 26. Juli 2006 · 2 Antworten · letzte Antwort am 27. Juli 2006

Tags: Frage

electroNik ·

Habe ein TypoScript geschrieben, dass je nach übergabe von "size" ein anderer CSS-Sheet eingebunden wird..

[globalString = HTTP_GET_VARS|size = 3]
page.stylesheet = {$UrlToTemplate}style_gross.css
[global]
[globalString = HTTP_GET_VARS|size = 2]
page.stylesheet = {$UrlToTemplate}style.css
[global]
[globalString = HTTP_GET_VARS|size = 1]
page.stylesheet = {$UrlToTemplate}style_klein.css
[else]
page.stylesheet = {$UrlToTemplate}style.css
[global]

Somit habe ich ein (nicht funktionierendes)case gebaut 😉 . Lustigerweise geht 1 und 2 aber 3 nicht #angry#
--> es kann auch sein, dass das nur das else is... und es so wirkt als würde 2 funktionieren
Die CSS Datei ist vorhanden. Probiert in IE und FF.

Biite hilfe vllt gibt es ja auch noch eine andere möglichkeit das zu realisieren?

Mfg
electroNik

laptop24 ·

Ich hab's nicht probiert, aber teste doch mal das hier:

page.stylesheet = {$UrlToTemplate}style.css

[globalString = HTTP_GET_VARS|size = 3]
page.stylesheet = {$UrlToTemplate}style_gross.css
[globalString = HTTP_GET_VARS|size = 1]
page.stylesheet = {$UrlToTemplate}style_klein.css
[global]

Notfalls kann man die Stylesheets noch löschen:

page.stylesheet = {$UrlToTemplate}style.css

[globalString = HTTP_GET_VARS|size = 3]
page.stylesheet >
page.stylesheet = {$UrlToTemplate}style_gross.css
[globalString = HTTP_GET_VARS|size = 1]
page.stylesheet >
page.stylesheet = {$UrlToTemplate}style_klein.css
[global]

Bei den Bedingungen (Conditions) gilt die aktive Bedingung immer solange, bis eine neue Bedingung auftaucht. Dabei ist [global] (bzw. [end]) auch eine neue Bedingung: nämlich eine, die immer true zurückgibt. Insofern braucht man nicht jede Bedingung mit einem [global] auflösen.