Hi,
sicher mal wieder nur ein Denkfehler, aber es funzt nicht.
#check for setting of cookie
temp.my_tx_crypreflangcookie = USER_INT
temp.my_tx_crypreflangcookie {
userFunc = user_functions->GetCookieBySystem
}
GetCookieBySystem return true: Wert ist 20
GetCookieBySystem return false: Wert ist 10
Hab das so gesetzt, da CASE scheinbar mit 0 (FALSE) und 1 (TRUE) nicht umgehen kann.
Zumindest bei mir nicht
Dann soll je nachdem ob 10 oder 20 zurückkommt eine Funktion ausgeführt werden oder eben nur ein TEXT.
#if page is language selection, set default language for cookie
[globalVar = TSFE:id = 544]
temp.text2 = CASE
temp.text2 {
key.data = temp.my_tx_crypreflangcookie
key.intval = 1
default = TEXT
default.value = default
10 = USER_INT
10 {
userFunc = user_functions->SetCookieBySystem
}
20 = TEXT
20.value = Cookie isset
}
[else]
temp.text2 = CASE
temp.text2 {
key.data = temp.my_tx_crypreflangcookie
key.intval = 1
default = TEXT
default.value = default
10 = TEXT
10.value = kein Cookie gesetzt
20 = USER_INT
20 {
userFunc = user_functions->SetCookieBySystem
}
}
[end]
Wenn ich nun testweise temp.my_tx_crypreflangcookie in einem Marker ausgeben lasse, kommt 10 zurück, heißt, das Cookie ist nicht gesetzt.
Warum, gibt mir der CASE dann bitte bei globalVar = 544 default als Ergebnis zurück und führt nicht, wie gewünscht, die Funktion bei 10 aus, die das Cookie setzen soll.
Das gleiche gilt, wenn temp.my_tx_crypreflangcookie 20 zurückgibt und ich nicht auf globalVar 544 bin. Auch dort bekomme ich nur default zurück.
LG
Charly