Ich setze die newloginbox und Intranet SSO ein.
Durch das SSO ist ein Logout im Intranet nicht möglich, also möchte ich den für SSO Anwender in der Newloginbox ein anderes Template verwenden, in dem der Logout Button nicht angezeigt wird.
In der SSO Intranet klasse tx_wwscssointranet_sv1 setze ich eine "eigene" Umgebunsvariable:
putenv("cv_intranet_benutzer_sso=1");
Nun habe ich eine Condition in meinem TS gebaut die im Fall cv_intranet_benutzer_sso=1 ein anderes Template verwenden soll, das sieht etwa so aus:
[??? cv_intranet_benutzer_sso=1]
temp.newloginboxConf {
10 < plugin.tx_newloginbox_pi1
10.templateFile = fileadmin/templates/newloginbox_startseite.html
}
[else]
temp.newloginboxConf {
10 < plugin.tx_newloginbox_pi1
10.templateFile = fileadmin/templates/newloginbox.html
}
[global]
In einer PHP Datei die ich unmittelbar vor dem Plugin in die Seite eingebunden habe kann ich mit getenv("cv_intranet_benutzer_sso"); ganz Prima die Variable abfrage.
Ich habe aber schon eine halbe milliarde Versuche unternommen die Variable in der TS Condition abzufrage, leider ohne Erfolg - den Cache habe ich stets gelöscht:
[globalVar = _GET|tx_wwscssointranet_sv1|cv_intranet_benutzer_sso > 0]
[globalVar = _GET|tx_wwscssointranet_sv1|cv_intranet_benutzer_sso = 1 ]
[globalVar = IENV:cv_intranet_benutzer_sso = 1 ]
[globalVar = ENV:cv_intranet_benutzer_sso = 1]
[globalString = IENV:cv_intranet_benutzer_sso = 1]
[globalString = ENV:cv_intranet_benutzer_sso = 1]
[cv_intranet_benutzer_sso=1]
Es tut nicht 😢
Was mache ich falsch? Kann TypoScript keine PHP Umgebungsvariablen verwenden, die ich "selbst" setze? Oder bin ich nur strunzdoof?
Mir wäre schon sehr geholfen, wenn ich wüsste wie ich ein Typo3 Plugin in meiner PHP Datei Parametrisieren und an den $content anhängen kann. Ich Google aber schon seit Stunden im Kreis herum.
Kann mir jenmand dabei zur Hand gehen? Das sollte etwa so aussehen:
$ssostatus = getenv("cv_intranet_benutzer_sso");
If ($ssostatus == 1) {
// Template ohne Button Abmelden
$templateFile = "fileadmin/templates/newloginbox_sso.html;
} Else {
// Template ohne Button Abmelden
$templateFile = "fileadmin/templates/newloginbox.html;
}
??? ->plugin.tx_newloginbox_pi1.templateFile = $templateFile;
??? ->plugin.tx_newloginbox_pi1
$content .= ??? <- newloginbox