People scheduled for each day (similar to WEEEHire inverviews table)
Table 1: People to schedule:
[ ] Only show users which have a matricola (or some other attribute which allows us to exclude system accounts) AND do not have a safety test date
[ ] Display: name, surname, matricola
[ ] Checkbox for "schedule requested" (email sent), linked to a new LDAP attribute to be created*
[ ] "Schedule requested" button
[ ] Scheduled day (always empty, if set they do not appear in this table)
[ ] A "toggle all" button which works client-side only (useful if we want to to do "all but one")
[ ] SIR download button
[ ] Table should be sortable client-side, at least for name, surname, matricola (use surname by default/server-side), but the usual library messes up JS even handlers so it's not a top priority
After the table:
[ ] Email template for all users without "schedule requested"
Table 2: People scheduled for each day
[ ] Only show users which have a safetyTestDate attribute AND (are NOT locked AND have signed the SIR)*
[ ] Multiple "headers" for different days, or multiple tables
[ ] Display: name, surname, matricola, groups
[ ] Checkbox for "SIR signed"
[ ] Checkbox for "locked"
[ ] Scheduled day (may be redundant, but it's useful if we want to quickly change the date) and some way to completely unschedule the test (big red button? deleting the date?)
[ ] SIR download button
[ ] "Save" button at the end
[ ] Table should be sortable client-side, at least for name, surname, matricola (use surname by default/server-side)
The new LDAP attribute may be something more than a boolean. Something like safetyTestStatus: (no|todo|requested), "scheduled" is implicit from the presence/absence date.
Multiple tables/lists:
Table 1: People to schedule:
After the table:
Table 2: People scheduled for each day
The new LDAP attribute may be something more than a boolean. Something like safetyTestStatus: (no|todo|requested), "scheduled" is implicit from the presence/absence date.