Feature #11569
closedCustom QFQ-Code pro Session
0%
Description
Gedacht als Erweiterung der Custom-Variablen im QFQ-Backend.
Idee
Es kann QFQ-Code definiert werden, der zu Beginn einer User-Session (vgl. User-Store) ausgeführt wird.
Umsetzung
In der QFQ-Config kann eine uid definiert werden, welche auf den gewünschten QFQ-PageContent zeigt. Dieser wird dann (einmalig) bei Beginn einer User-Session ausgeführt (render = api, d.h. nicht angezeigt)
Anwendungsmöglichkeiten
Ich habe einige Variablen, die ich auf vielen Seiten jedesmal neu definieren muss, insbesondere im Zusammenhang mit dem eingeloggten feUser. Mit dieser Lösung könnte ich diese Variabeln einmal definieren, im User-Store (AS '_=varName') ablegen und jederzeit abrufen ({{varName:U}})
Related issues
Updated by Elias Villiger over 3 years ago
On second thought bin ich selbst gar nicht mehr so scharf drauf...
Nachteil: Die Variablen sind nicht dynamisch (bilden z.B. einen simulierten {{feUser:UT}} nicht ab), wenn sie nur einmal Anfangs Session definiert werden. Man müsste den Code also fast bei jedem Seitenaufruf neu ausführen.
Alternative (keine Anpassungen von QFQ notwendig): Den SQL-Code für die gewünschte Variable in eine Custom-Variable packen (im Y-Store) und dann wo gewünscht ausführen, z.B.:
In QFQ-Config:
FE_USER_ID = (SELECT pId FROM account WHERE accountType='uzh shortname' AND username='{{feUser:UTE:alnumx}}')
und dann im Report/Form
SELECT p.lastName FROM person AS p WHERE p.id = {{FE_USER_ID:Y0::-}}
Funktioniert - von daher bin ich eigtl. happy :)
Wenn sonst niemand Bedarf nach dem Feature hat, kann es von mir aus auch wieder gelöscht werden.
Updated by Marc Egger over 3 years ago
Ich glaube das von dir beschriebene feature existiert bereits. Siehe Typo3 > Extensions > QFQ > Dynamic (pill)
Updated by Elias Villiger over 3 years ago
- Status changed from New to Closed
Stimmt, das ist genau das Prinzip. War mir nicht bewusst, ich kannte nur Pill "Custom". Danke für den Hinweis!
Allerdings ist hier auch das Problem, dass die Variablen nicht wirklich dynamisch sind. feUser:T z.B. ist bei Beginn einer Session noch nicht definiert, wenn sich der User noch nicht eingeloggt hat. Aber wenn ich meine feUser-abhängigen Variablen direkt auf der Post-Login-Seite im User-Store definiere, habe ich das Problem auch gelöst.
Ich schliesse das Ticket also mal.
Updated by Carsten Rose about 3 years ago
- Target version changed from next5 to 21.2.0
Updated by Elias Villiger about 3 years ago
- Related to Feature #11998: Custom QFQ-Function added