92ff99a36e
chore(tutorial): granting qualification automatically picks better expiry date
...
Previously, the form for granting tutorial users a qualification suggested the minimum of all expiry dates, if there where several course qualficiations. This lead to some users being granted driving licences being valid for only one month.
The expiry date can now be left blank, using the validDuration of the selected qualification instead.
The default is blank, if there are more than one course qualification having disagreeing qualification dates.
2025-03-26 16:58:07 +01:00
9d1a97172e
fix(tutorial): fix #2978 by having one column per course qualification
2025-03-10 15:57:06 +01:00
aae5a5f997
fix spdx copyright year having 2 digits only
2025-03-03 11:44:03 +01:00
9fbab25ecc
chore(tutorial): assigning exam occurrences may check duplicate examiners
...
towards #2347
2025-02-28 17:12:48 +01:00
be18af08c6
chore(tutorial): user view warns against duplicate examiners
...
towards #2347
2025-02-28 17:12:48 +01:00
cce4b2b27d
chore(lms): fix #2605
...
- Implement a mechanism that deletes those users after a short while
- Never delete numerical LMS logins
- Allow admins to terminate an E-Learning manually
- Option to terminate E-Learning upon longtime renewal
- Detection of unnecessary E-Learning (i.e. long valid durations)
2025-02-28 17:08:59 +01:00
e9fefa75bd
refactor(lms): ensure days/months in qualification settings are always used correctly and implement settings for orphans
...
- extensive refactoring for qualification lms settings
- qualificationAuditDuration changed from months to days
- qualificationAuditDuration no longer optional
- qualificationAuditDuration is only used for LMS; clarified
- three new settings:
+ orphan-deletion-days:
+ orphan-deletion-batch:
+ orphan-deletion-repeat-hours:
2025-02-28 17:05:50 +01:00
e8a21610a4
chore(tutorial): convenience button to show tutorial exam results
...
required new filter on exam participants page
2025-02-28 16:59:09 +01:00
c1ed89a30b
various minor code refactors
2025-02-28 16:59:09 +01:00
b26dd285df
chore(form): create calendarDiffDaysField
2025-02-28 16:58:46 +01:00
e5cf120af2
refactor(UniWorxMessages): eliminate superfluous whitespace
...
also: some tutorial code cleaning
2025-02-28 16:56:11 +01:00
ad12b8f927
refactor(tutorial): fix and complete exam occurrence form function
2025-02-28 16:56:11 +01:00
9fe78541d7
refactor(tutorial): exam occurrence form function and appearance
2025-02-28 16:56:11 +01:00
a0604637bd
refactor(tutorial): exam occurrence editing received specialised page
2025-02-28 16:56:11 +01:00
5e41c2073f
chore(tutorial): add separate exam occurrence edit page (WIP)
2025-02-28 16:56:11 +01:00
f996976f65
chore(exam): auto name generation for examOccurrences
2025-02-28 16:56:11 +01:00
f04a40c0a3
chore(tutorial): add covenience button to full exam editing
2025-02-28 16:56:11 +01:00
6cc929e377
fix(tutorial): fix exam occurrence form
...
works better, but still not 100%
some debugging added
2025-02-28 16:56:11 +01:00
11bcef67f8
chore(tutorial): switch relevant exams from registerFrom/To to examStart/End
...
registering is of users/supervisors, but this page is for admins, so examStart/examEnd are only relevant for when it is actually happening
2025-02-28 16:56:11 +01:00
7b7ffab109
chore(tutorial): towards #2347 exam occurrence form design finished, but buggy somehow (WIP)
...
Propably due to multiActionAForm badly interacting with contained massInputForm
2025-02-28 16:56:11 +01:00
afbeb86762
chore(pathpiecel): PathPiece instance for lists of exam occurrence ids
...
towards #2347
2025-02-28 16:56:11 +01:00
9af4a3a22e
chore(tutorial): towards #2347 exam occurrence form mostly working (WIP)
...
form is completed, but the initial call needs proper arguments from DB about all apropriate exams
2025-02-28 16:56:11 +01:00
4241c75afe
chore(tutorial): towards #2347 exam occurrence form added (WIP)
2025-02-28 16:56:11 +01:00
afa2f9bf0e
chore(tutorial): towards #2347 add convenience buttons to add exam tutorial (STUB)
...
This is STUB add a multiform action that is not yet evaluated. Form Handler is to be implemented next.
2025-02-28 16:56:11 +01:00
f44d66cb91
chore(tutorial): assign exam rooms for tutorial users ad hoc
2025-02-28 16:56:11 +01:00
cd84d0a932
refactor(daily): move caching into own submodule
...
we need those methods in Handler.Tutorial.Users as well
2025-02-28 16:54:19 +01:00
aaf72f7255
chore(exam): show exam occurrences in participants views for tutorial and course
2025-02-28 16:53:20 +01:00
cfd25348ad
fix(course): fix #148 course qualification ordering
...
some refactoring done along the way, fixing a bug in relation to #150 as well
2024-08-01 17:45:18 +02:00
92aca1b830
refactor(performance): disable modalAccess use for known admins
...
modalAccess displays a link to modal only
if the user has the rights to follow that link.
However, for large dbTables this checking takes
too long. So we use a conventional modal instead again.
Worst-case: some non-admins are shown links that they cannot follow
2023-11-28 15:32:33 +01:00
d7a94b9619
chore(lms): include lms ids in qualification audit log events triggered by e-learning
2023-11-03 14:41:31 +01:00
5d8d8cf17e
fix(course): grant qualifications now issues and unblocks
2023-10-19 11:21:35 +00:00
3085b8d91d
chore(lms): implement report dispatch job DONE
2023-08-25 12:35:21 +00:00
05b807a49a
Merge branch 'master' into fradrive/lms-type-refactor
2023-07-03 10:53:05 +00:00
23bc9033e7
refactor(qualifications): views course, admin-avs and lms-user refactored (WIP)
2023-06-29 17:05:46 +00:00
22426db241
chore(course): unlink course certificates from course qualification
2023-06-19 10:01:15 +00:00
a64a2368db
chore(qualification): Fix #46 by add qualification grant act to qualification view
2023-05-04 10:58:55 +00:00
13f53e3221
chore(tutorial): attempt to fix download
2023-04-19 16:35:45 +00:00
768f03f672
feat(letter): allow printing of multiple course certificates at once
2023-04-06 15:41:59 +00:00
5f536864a5
refactor(letter): change pdf download for course certificates and filename generation
2023-04-06 12:56:59 +00:00
879b8a72be
chore(letter): improve certificate interpolation and styling
2023-04-05 16:10:53 +00:00
db0eadc746
chore(letter): print certificates linked to tutorium
2023-04-05 11:13:53 +00:00
c49b329d18
chore(avs): use AVSNO as matriculation
2023-04-03 15:04:01 +00:00
ba8bcc5436
chore(tutorial): show user qualification info
2023-03-27 17:51:34 +00:00
3664c1988c
chore(tutorial): actions on 0 users are marked as warning
2023-03-24 17:30:57 +00:00
825e4271c1
chore(qualifications): show associated qualifications in course
2023-03-17 10:01:33 +00:00
32d56e30cc
chore(print): prepare modules for more letters
2023-03-07 15:09:51 +00:00
5eb14c8512
chore(tutorial): ensure that course qualification form actions are stll valid upon reception
2023-03-06 17:59:00 +00:00
ffaaf9c86d
feat(course): associate qualifications with courses
2023-03-06 17:27:57 +00:00
Steffen Jost
878c87a378
chore(tutorials): force qualification option order
2023-02-27 11:48:34 +01:00
Steffen Jost
b3861144aa
chore(qualifications): renew regularly implemented
2023-02-21 13:45:34 +01:00