aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* fix month to numeric value mapHEADmainFlorian Fischer8 hours1-3/+3
| | | | Fixes: 349262b8c82c96ad8c4237d2a191d4b7ba208b13
* mass-graduation: fix list of changesFlorian Fischer11 days2-8/+21
| | | | | | Fix the code copied from cockpit to list all changes made by a coach. Fixes: 1f458004ee2a018cff176c9939a9e8b03425dbfa
* parse the dates provided by moodle manuallyFlorian Fischer11 days2-1/+29
| | | | | The reported date values are in german locale and can not be parsed by my browser for example.
* admin-tools: set coach assignment textarea width to 80%Florian Fischer13 days1-0/+4
|
* utils: cache user icon urlsFlorian Fischer13 days3-22/+20
|
* add moodle mock codeFlorian Fischer2026-09-281-0/+39
|
* utils: move get*Id functions into utils-common.tsFlorian Fischer2026-09-285-32/+46
|
* admin-tools: show update errors and skip missing activitiesFlorian Fischer2026-09-281-3/+11
|
* admin-tools: implement mass course updateFlorian Fischer2026-09-274-0/+163
|
* admin-tools: allow wildcard coach assignmentFlorian Fischer2026-09-271-6/+13
|
* mass-graduation: add list of submitted changesFlorian Fischer2026-09-255-4/+130
|
* mass-graduation: keep student selection stable for 45 minutesFlorian Fischer2026-09-254-3/+30
|
* utils: introduce course local storage helper classFlorian Fischer2026-09-254-7/+34
|
* students: only consider the actual students role as studentsFlorian Fischer2026-09-251-1/+1
|
* mass-graduation: make not reassigned variable constFlorian Fischer2026-09-251-1/+1
|
* coaching: link to each student's cockpitFlorian Fischer2026-09-253-3/+32
|
* mock: implement selective student fetchingFlorian Fischer2026-09-252-4/+9
|
* mock: add more students to test the mandatory selection algorithmFlorian Fischer2026-09-251-0/+27
|
* cockpit: fix fetchStudent parameter typeFlorian Fischer2026-09-251-1/+1
|
* coaching: add simple coaching overview pageFlorian Fischer2026-09-255-1/+139
|
* mass-graduation: fix selection of mandatory graduationsFlorian Fischer2026-09-231-19/+23
| | | | | | | | | | | The previous algorithm did compare all graduations to the one with the most mandatory changes. However, the amount of mandatory changes can differ during normal operation by two. Therefore, the pool of candidates consists of graduations with one or two fewer mandatory changes than the maximum. This is fixed by selecting as many graduations from the group with the next fewest mandatory changes as possible.
* make: prevent double npm buildsFlorian Fischer2026-09-231-2/+0
|
* students-prod: add trailing commaFlorian Fischer2026-09-231-1/+1
|
* git-blame: add reformat commit to ignore listFlorian Fischer2026-09-231-0/+2
|
* mass-graduation: revert mandatory graduation constraintFlorian Fischer2026-09-231-39/+29
| | | | It is not always possible to graduate all mandatory ones.
* format: run prettierFlorian Fischer2026-09-233-10/+10
|
* mass-graduation usability improvementsFlorian Fischer2026-09-231-32/+59
| | | | | | * Only allow one graduation per student * Check if all mandatory graduations are made * Disable the submit button to prevent double submits
* mass-graduation: remove leftover cleanup code from the old observation flowFlorian Fischer2026-09-231-5/+0
|
* graduation: prevent negative pointsFlorian Fischer2026-09-171-1/+12
|
* use course dependent local cache keyFlorian Fischer2026-09-172-3/+3
| | | | This prevents multiple courses overwriting the cached values.
* mass-graduation: add explanationFlorian Fischer2026-09-171-0/+3
|
* remove groupsFlorian Fischer2026-09-1410-208/+26
|
* fetchStudents: do not consider innerHTML for role selectionFlorian Fischer2026-09-141-2/+3
| | | | | The HTML for the role assignments contains all options and thus makes the separation not possible.
* ensure to see all participantsFlorian Fischer2026-09-131-1/+1
| | | | | By not specifying the first and last name filters the last used one are still active and may reduce the amount of observed participants.
* student: test for an empty or nil students listFlorian Fischer2026-09-041-1/+1
|
* admin-tools: remove obsolete button and add coach assignment importFlorian Fischer2026-09-038-57/+42
|
* student: make parameters of fetchStudents optionalFlorian Fischer2026-09-031-1/+1
|
* admin-tools: add html for csv importFlorian Fischer2026-09-031-0/+8
|
* cockpit: use colored spans instead of unicode circlesFlorian Fischer2026-09-032-3/+30
|
* cockpit: add top padding for graduation history and level changeFlorian Fischer2026-08-111-0/+1
|
* cockpit: properly position the submit buttonFlorian Fischer2026-08-111-2/+3
|
* cockpit: reduce opacity of point change color hintsFlorian Fischer2026-08-101-3/+3
|
* cockpit: hide / show level change for assigned coachesFlorian Fischer2026-08-101-1/+2
|
* cockpit: format change context appropriatelyFlorian Fischer2026-08-101-1/+19
|
* graduation: flatten universal changesFlorian Fischer2026-08-101-1/+4
| | | | Fixes: 2c78bd116108cbf6843d75fa2570fb457918df20.
* cockpit: improve graduation historyFlorian Fischer2026-08-103-25/+104
| | | | | * Allow change deletion if the current user issued the change * Only the assigned coach is allowed to change the level
* cockpit: show the assigned coachFlorian Fischer2026-08-102-0/+6
|
* mock: add coach assignment for MaxiFlorian Fischer2026-08-101-11/+2
|
* doc: document new graduation change typesFlorian Fischer2026-08-101-3/+17
|
* graduation: support change deletion, coach assignmentFlorian Fischer2026-08-103-72/+145
| | | | Also reset points after a level change.