Use Cases "Conditions and Functions" ==================================== Mail Function ------------- In many situations we need to send an email to the head of a committee plus all his deputies. For now it is rather complicated to collect all the needed info (name, title, mail for head; mail for all deputies, name of student) Ideally we could use the same code for each such mail and would only need to pass the id of the student and the subject and body of the message. -> functions Graduation Ceremony ------------------- Students should be able to register with a given Link until a specific deadline. - Before the deadline, a from should be displayed. - After the deadline, a warning should be displayed. -> if-then-else -> include content elements (A nice option would also be to redirect to a different page on the server side) Note: This can be solved via a "beforeLoad"-Action element and the formModeGlobal parameter. A real "if-then-else" is only needed when the content is not in a form but in a report (and Typo3's time limited access can not be used, e.g. because the until-date depends on the record) Status Table ------------ We want to display the exact same status table on different pages. The status table needs the id of the student, however the variable storing the id on a given page might be {{id:R}} or {{r:S}} or {{feUser:T}}. -> functions Note: The display part, can be solved with twig template files. The combination of Query + Display can be stored in a separate tt_content-Record but there is no robust solution to ensure the right variable. Possible Solutions ================== We need a way to include a "code-blocks/functions" and pass variables to it - maybe a new Function-Argument-store and a way to include content elements?) Needed Constructs ================= - if-then-else: see https://project.math.uzh.ch/issues/8217 - functions - for-loops: 2/3 ok with existing solutions - 10.1.sql - SELECT seq FROM seq_1_to_9; - twig loops Other Ideas =========== Server-Side Redirect -------------------- - useful in if-then-else - redirect if a user is not allowed to access something - redirect user after action pages have been processed - split complex task into several pages and then chain them server side Stop-Rendering -------------- - avoid else parts