Hallo Leute,
ich komm mir zwar etwas blöd vor das zu fragen, aber besser so als Stunden mit dem Kopf gegen die Wand rennen:
Ich möchte eine einfache userFunc erstellen. (hatte bis jetzt noch kein großes Glück damit). Diese soll einfach überprüfen, ob eine Variable "0" oder "1" ist und true oder false zurückgeben. Eigentlich ganz einfach.
Dafür hab ich folgende userFunc geschrieben und in die localconf.php gepackt.
function user_inputistrue($input){
echo "Hallo!";
if($input){
return true;
} else {
return false;
}
}
Im Setup-Feld des Templates mache ich jetzt folgendes:
plugin.tx_wfqbe_pi1.customProcess.3 {
template = uploads/tf/template_suche.htm
style = uploads/tf/css_suche.htm
7 = TEXT
[userFunc = user_inputistrue(7.value)]
7.value = <img src="fileadmin/templates_additional/flag_on.gif" alt="verfügbar" />
[else]
7.value = <img src="fileadmin/templates_additional/flag_off.gif" alt="nicht_verfügbar" />
[end]
}
Soweit funktioniert alles, nur zeigt er mit grundsätzlich den ELSE-Fall an, selbst wenn 7.value "1" ist.
Dann hab ich gedacht: Vielleicht ist 7.value noch nicht definiert oder sowas? "Hallo!" wird aber nicht ausgegeben. Also siehts er danach aus, als dass er user_inputistrue nicht aufruft oder so...
Nur warum? Die Funktion steht ordnungsgemäß in der localconf.php und fängt mit "user_" an?
Noch eine Frage dazu: Muss ich die Variable so:
[userFunc = user_inputistrue(7.value)]
oder so übergeben?
[userFunc = user_inputistrue(###FIELD_7###)]
Vielen Dank für die Antworten und Hilfen!
*Fuchur*
conditions funktionieren nicht innerhalb von {}
Hm, okay... so klappt es aber leider auch nicht:
plugin.tx_wfqbe_pi1.customProcess.3.7 = TEXT
[userFunc = user_input_istrue(###FIELD_7###)]
plugin.tx_wfqbe_pi1.customProcess.3.7.value = <img src="fileadmin/templates_additional/flag_on.gif" alt="verfügbar" />
[ELSE]
plugin.tx_wfqbe_pi1.customProcess.3.7.value = <img src="fileadmin/templates_additional/flag_off.gif" alt="nicht_verfügbar" />
[END]
plugin.tx_wfqbe_pi1.customProcess.3.8 = TEXT
[userFunc = user_input_istrue(plugin.tx_wfqbe_p1.customProcess.3.FIELD_7)]
plugin.tx_wfqbe_pi1.customProcess.3.8.value = <img src="fileadmin/templates_additional/flag_on.gif" alt="verfügbar" />
[ELSE]
plugin.tx_wfqbe_pi1.customProcess.3.8.value = <img src="fileadmin/templates_additional/flag_off.gif" alt="nicht_verfügbar" />
[END]
plugin.tx_wfqbe_pi1.customProcess.3 {
template = uploads/tf/template_suche.htm
style = uploads/tf/css_suche.htm
9 = Text
[userFunc = user_input_istrue(###FIELD_9)]
9.value = <img src="fileadmin/templates_additional/flag_on.gif" alt="verfügbar" />
[ELSE]
9.value = <img src="fileadmin/templates_additional/flag_off.gif" alt="nicht_verfügbar" />
[END]
}
Das hier führt alles zum selben Ergebnis für 7, 8 und 9 -> nämlich der else-fall auch wenns keiner wäre... echos() und exit() in der Funktion user_inpput_isttrue() werden ebenfalls ignoriert, also scheint da wohl einfach die Funktion nicht aufgerufen zu werden.
Das einfache Beispiel hast du schon mal durchgemacht:
http://typo3blogger.de/condition-mit-userfunc/
Hab ich jetzt ehrlich gesagt noch nicht, aber ich hab mir viele beispiele angeschaut und sie auf mein Problem versucht zu übertragen... scheint aber irgendwo noch zu hapern...
Weiss jemand Rat warum?
*Fuchur*