Commit Graph

679 Commits

Author SHA1 Message Date
Wolfgang Witt
b5ee9f2c05 refactor: make ExamOccurrenceCapacity a newtype
use pattern synonyms for convenience, so usage doesn't change
2021-03-29 16:03:33 +02:00
Wolfgang Witt
d3661b69fd chore: create ExamRoomCapacity-type
_examRoomCapacityIso for convenience
2021-03-29 16:03:30 +02:00
Gregor Kleen
a6390eccbd fix(submissions): take care when to display corrections
Also cleanup usage of Utils via hlint
2021-03-18 23:12:36 +01:00
Gregor Kleen
91a51664c3 feat(submissions): improve behaviour of sheet-type-exam-part
Fixes #676
2021-03-18 17:50:27 +01:00
Gregor Kleen
5c513946c1 feat(csv-export): .xlsx 2021-03-17 21:15:00 +01:00
Gregor Kleen
600bbe5d7e feat: admins can efficiently generate many tokens for random users 2021-03-16 16:02:00 +01:00
Wolfgang Witt
e03326e1ac chore: examAutoOccurrence converted to Either 2021-03-15 10:45:37 +00:00
Wolfgang Witt
85e3941538 chore: add my name to contributers + create changelog files 2021-03-15 10:45:37 +00:00
Gregor Kleen
e88b6d6bab fix: invalidate nav caches 2021-03-12 18:39:00 +01:00
Gregor Kleen
63f0d3c37a feat(auth): user independent authorisation caching
BREAKING CHANGE: additional authorisation caching
2021-03-08 12:08:43 +01:00
Gregor Kleen
8d1f216b5b feat(caching): introduce cache prewarming 2021-02-17 14:31:30 +01:00
Gregor Kleen
e2eddc93c5 chore(changelog): bump 2021-02-15 14:29:17 +01:00
Gregor Kleen
8798f547a6 feat: ensure cached study feature relevance is up to date 2021-02-08 19:53:00 +01:00
Gregor Kleen
03e9f5be56 refactor: switch everything to cached relevant study features 2021-02-04 23:12:27 +01:00
Gregor Kleen
f4f95e1494 chore(profiling): restore prof-auto and test build
Revert "chore(profiling): switch to prof-auto-top to hopefully fix build"

This reverts commit 07bde5b012.
2021-02-03 09:06:55 +01:00
Gregor Kleen
09ce1bb035 chore(profiling): remove all newtype-deriv PersistFieldSql instances 2021-02-02 19:48:11 +01:00
Gregor Kleen
c90dcba1a7 chore(profiling): remove all cost centres to hopefully fix build 2021-02-02 18:12:01 +01:00
Gregor Kleen
b814bc094a refactor(workflows): shared workflow graphs 2021-02-01 17:37:55 +01:00
Gregor Kleen
2c0fc63be1 feat(dbtable): extra representations 2021-01-21 13:22:22 +01:00
Gregor Kleen
500000ba0f feat(exams): exam sheets 2021-01-18 14:19:02 +01:00
Gregor Kleen
ae3f2aa703 chore: version bumps 2021-01-11 14:16:39 +01:00
Gregor Kleen
13b6fe1db5 chore: setup for profiling 2020-12-12 17:12:50 +01:00
Gregor Kleen
50455e68a1 feat(auth): record student ldap role 2020-12-10 19:09:33 +01:00
Gregor Kleen
03fda74415 Revert "feat: use c++ library for json parsing from database"
This reverts commit f22675189e.
2020-12-10 02:17:44 +01:00
Gregor Kleen
f22675189e feat: use c++ library for json parsing from database 2020-12-09 23:51:46 +01:00
Gregor Kleen
3a106d1ee5 feat: don't redirect monitoring routes & crontab tokens 2020-12-09 15:33:54 +01:00
Gregor Kleen
3cf033560e feat(inject-files): additionally throttle by file count 2020-12-04 18:08:10 +01:00
Gregor Kleen
c22004e1b2 feat(workflows): edge messages 2020-12-04 17:50:32 +01:00
Gregor Kleen
ac08846c26 feat(workflows): proper workflow-workflow-tables 2020-12-04 16:00:14 +01:00
Gregor Kleen
7a7cd4d07c feat(workflows): make admin or token sufficient for all roles 2020-12-03 19:48:49 +01:00
Gregor Kleen
707b41d4ec feat: allow separating user generated content into separate domain 2020-12-02 16:58:52 +01:00
Gregor Kleen
ed5d871182 fix(rooms): honor roomHidden 2020-11-29 13:13:17 +01:00
Gregor Kleen
211ff5eacc fix(csv): ignore empty lines 2020-11-26 14:59:50 +01:00
Gregor Kleen
0a3eaa2994 fix(workflows): cleanup 2020-11-25 15:00:16 +01:00
Gregor Kleen
f2fb7d8c26 feat(migration): switch from versions to enum
BREAKING CHANGE: ManualMigration
2020-11-24 15:18:37 +01:00
Gregor Kleen
43caeefbf1 Merge branch 'master' into workflows 2020-11-24 10:56:41 +01:00
Gregor Kleen
319c75a85a feat(rooms): different room types & hidden rooms 2020-11-19 14:25:38 +01:00
Gregor Kleen
4b525ea824 feat(exams): optionally close on finish
Fixes #652
2020-11-17 12:43:24 +01:00
Gregor Kleen
3eba184be2 chore(changelog): bump 2020-11-14 12:49:21 +01:00
Gregor Kleen
5b28303539 feat: partial/conditional downloads & video streaming 2020-11-10 17:23:15 +01:00
Gregor Kleen
e25e8a2f4c fix(html-field): introduce stored-markup
BREAKING CHANGE: StoredMarkup
2020-11-06 20:39:43 +01:00
Gregor Kleen
a0e5edeaef Merge branch 'master' into workflows 2020-11-06 11:06:50 +01:00
Gregor Kleen
ab1940cb09 feat(sheets): upload-empty-ok 2020-11-05 15:52:04 +01:00
Gregor Kleen
03fec7752b Merge branch 'master' into workflows 2020-11-05 12:19:18 +01:00
Gregor Kleen
fa61b46d30 fix: build 2020-11-04 18:18:59 +01:00
Gregor Kleen
0dbf4f8bde fix(mail): better separation of sender/from/envelope-from 2020-11-04 17:21:40 +01:00
Gregor Kleen
1666081fea feat(mail): archive all sent mail & better verp 2020-11-04 15:27:06 +01:00
Gregor Kleen
4451ceedf7 feat(course): warning if re-registration is not possible
Fixes #646

BREAKING CHANGE: AccessPredicates now take continuation
2020-11-02 19:31:25 +01:00
Gregor Kleen
ef51c6e7c3 feat(users): assimilation 2020-11-02 09:58:01 +01:00
Gregor Kleen
6a7a892c74 feat(workflows): node messages 2020-10-28 17:16:42 +01:00
Gregor Kleen
5b897c7a42 feat(workflows): further work on WorkflowWorkflowWorkflow 2020-10-28 15:59:16 +01:00
Gregor Kleen
3e6935490b Merge branch 'master' into workflows 2020-10-27 11:02:03 +01:00
Gregor Kleen
5108e1494a feat(workflows): additional work on WorkflowWorkflowWorkflow 2020-10-26 14:52:58 +01:00
Gregor Kleen
b4df980699 fix(allocations): fix allocation-course-accept-substitutes 2020-10-20 13:06:36 +02:00
Gregor Kleen
fd7c91f5b8 feat(workflows): initiate 2020-10-19 21:46:10 +02:00
Gregor Kleen
ddd1dd5df4 Merge branch 'master' into workflows 2020-10-14 17:01:31 +02:00
Gregor Kleen
3f5b5727e3 refactor: hlint 2020-10-14 16:43:55 +02:00
Gregor Kleen
ea95d74cb5 fix(migration): don't consider changelog in requiresMigration 2020-10-14 16:24:21 +02:00
Gregor Kleen
6cd9f9bbfd Merge branch 'master' into workflows 2020-10-13 14:31:48 +02:00
Gregor Kleen
0d372c636a feat(authorisation): cookie-active-auth-tags 2020-10-13 14:22:23 +02:00
Gregor Kleen
850c8d4dae fix(changelog): try not to crash on unknown changelog items 2020-10-13 14:14:58 +02:00
Gregor Kleen
2fce1354ad chore: bump changelog 2020-10-13 13:16:46 +02:00
Gregor Kleen
54e1d6bb9d refactor(workflows): flip association of edges 2020-10-02 15:14:27 +02:00
Gregor Kleen
baea302e48 feat(workflows): placeholder handlers 2020-09-30 16:51:24 +02:00
Gregor Kleen
653f7f30dd Merge branch 'master' into workflows 2020-09-29 09:43:40 +02:00
Gregor Kleen
63a876fb97 Merge branch 'master' into feat/allocation-new-course-notification 2020-09-28 19:51:36 +02:00
Gregor Kleen
d9d353fcb7 feat(changelog): implement changelog like faq 2020-09-28 19:47:32 +02:00
Gregor Kleen
65e06882d2 fix: tests 2020-09-28 11:22:00 +02:00
Gregor Kleen
f9c50c80f2 feat(exams): check exam_discouraged_modes 2020-09-28 11:22:00 +02:00
Gregor Kleen
f7bab3befc feat(exams): exam design & school exam rules 2020-09-28 11:22:00 +02:00
Gregor Kleen
18921e06d1 feat(allocations): notify about new courses 2020-09-28 10:55:09 +02:00
Gregor Kleen
99f3fca6d0 fix(workflows): integrate in new master 2020-09-25 16:42:45 +02:00
Gregor Kleen
ff370c68c7 feat(workflows): list & edit definitions 2020-09-25 13:20:50 +02:00
Gregor Kleen
4d63d30634 feat(workflows): create new workflow definitions 2020-09-25 13:15:54 +02:00
Gregor Kleen
e3b5b93c71 feat(workflows): definition route stubs & i18n 2020-09-25 13:13:24 +02:00
Gregor Kleen
8943c3e3bf refactor(workflows): rework types & instances 2020-09-25 13:00:48 +02:00
Sarah Vaupel
c2169423e6 refactor(workflows): rework types and instances 2020-09-25 12:59:30 +02:00
Sarah Vaupel
386d3bfc49 refactor(workflows): refine model and types; TODO fix instances 2020-09-25 12:59:14 +02:00
Sarah Vaupel
88b995a7fd chore(workflow-types): comment test defs 2020-09-25 12:58:44 +02:00
Sarah Vaupel
98bd769b22 chore(workflow-types): update test defs 2020-09-25 12:58:42 +02:00
Sarah Vaupel
ce9648e47a fix(workflow-types): fix Int64 workaround; update test defs 2020-09-25 12:58:24 +02:00
Sarah Vaupel
8995248bff refactor(workflows): switch to Int64 instead of *Id
also fix rebase conflicts
2020-09-25 12:57:38 +02:00
Sarah Vaupel
8b32edee64 feat(workflows): add missing instances; correct Int64 workaround 2020-09-25 12:50:02 +02:00
Sarah Vaupel
6689df5929 chore(workflows): update test defs 2020-09-25 12:50:02 +02:00
Sarah Vaupel
5e92a6e04a fix(workflows): add missing import/reexport 2020-09-25 12:45:28 +02:00
Sarah Vaupel
881e9347ed chore(workflows): export and comment test defs 2020-09-25 12:45:12 +02:00
Sarah Vaupel
3787cc2012 refactor(workflow-types): refactor workflow payload 2020-09-25 12:45:12 +02:00
Sarah Vaupel
89a621ef07 refactor(workflow-types): use WorkflowPayloadFieldLabel as label type 2020-09-25 12:45:12 +02:00
Sarah Vaupel
d5f401be4a refactor(workflows): restructure workflow types 2020-09-25 12:45:11 +02:00
Sarah Vaupel
da2bdeb6ab refactor(workflows): reformat Show instance 2020-09-25 12:45:11 +02:00
Sarah Vaupel
8b67481228 refactor(workflows): rename payload record fields 2020-09-25 12:45:11 +02:00
Sarah Vaupel
44b3b5faee chore(workflows): refactor names and add label to payload 2020-09-25 12:45:11 +02:00
Sarah Vaupel
4d6d4ec9f6 chore(workflows): better Show instance for fields and tmp test payload 2020-09-25 12:45:11 +02:00
Sarah Vaupel
8608e83ef8 fix(workflow): add missing optional 2020-09-25 12:45:11 +02:00
Sarah Vaupel
e1261761a2 chore(workflows): more on types 2020-09-25 12:45:10 +02:00
Sarah Vaupel
857ab74525 chore(workflows): switch from SomeResolution to Scientific (wip) 2020-09-25 12:45:10 +02:00
Sarah Vaupel
c1b48e4d55 chore(workflows): replace heterogeneous list in json 2020-09-25 12:45:10 +02:00
Sarah Vaupel
c65bc7bda8 chore(workflow-types): derive Show for Graph and Edge 2020-09-25 12:45:10 +02:00
Sarah Vaupel
99c0bfe8bf chore(workflow-types): tmp stub 2020-09-25 12:45:10 +02:00
Sarah Vaupel
263fee19f2 fix(workflow): fix node and graph FromJSON instances 2020-09-25 12:45:10 +02:00
Sarah Vaupel
8812f24d90 fix(workflow): fix false instance with atrocious instances 2020-09-25 12:45:09 +02:00
Sarah Vaupel
ce1acec444 fix(workflow): fix types 2020-09-25 12:45:09 +02:00
Sarah Vaupel
d1b9d502e8 chore(workflow-types): more on types 2020-09-25 12:45:02 +02:00
Sarah Vaupel
460bd9d3e5 chore(workflow-types): import authdns 2020-09-25 12:44:16 +02:00
Sarah Vaupel
9612b7d905 chore(workflow-types): reference node labels instead of nodes 2020-09-25 12:44:16 +02:00
Sarah Vaupel
26c5a32f58 chore(workflows): cleanup types 2020-09-25 12:44:16 +02:00
Sarah Vaupel
4334253122 fix(workflow): fix types 2020-09-25 12:44:16 +02:00
Sarah Vaupel
0eea74b8b3 refactor(workflow): more on types 2020-09-25 12:44:16 +02:00
Sarah Vaupel
5ff48d9b60 refactor(workflow): payload specification 2020-09-25 12:44:15 +02:00
Sarah Vaupel
094421ae5c refactor(workflow): more on adts 2020-09-25 12:44:15 +02:00
Sarah Vaupel
50b3fb8dcf refactor(workflow): roles as initiators; fix instance scope type 2020-09-25 12:44:15 +02:00
Sarah Vaupel
b19c1b31b7 fix(workflow-types): minor import fix 2020-09-25 12:44:15 +02:00
Sarah Vaupel
b7dec2f1d0 chore: very stubby stub for workflow model 2020-09-25 12:44:15 +02:00
Gregor Kleen
dd235590b4 fix: migration 2020-09-17 20:29:14 +02:00
Gregor Kleen
350ee79af3 fix: zip handling & tests 2020-09-09 13:44:01 +02:00
Gregor Kleen
e80f7d7a89 feat(files): avoid initial unnecessary rechunking 2020-09-07 15:03:40 +02:00
Gregor Kleen
d624a951c5 feat(files): content dependent chunking 2020-09-07 14:27:36 +02:00
Gregor Kleen
8f608c1955 feat(files): chunking
BREAKING CHANGE: files now chunked
2020-09-02 21:25:20 +02:00
Gregor Kleen
bbfd182ed9 feat: support for ldap primary keys 2020-08-28 14:00:26 +02:00
Gregor Kleen
42aee66d1f feat: implement system-exam-office 2020-08-27 22:58:29 +02:00
Gregor Kleen
abc37aca9c feat: add user-system-function 2020-08-27 22:58:28 +02:00
Gregor Kleen
f7a9bc831a feat(study-features): further restriction by course 2020-08-26 20:54:21 +02:00
Gregor Kleen
dcb83d96fc feat(study-features): add study-features-first-observed 2020-08-25 12:27:40 +02:00
Gregor Kleen
132a510a23 fix: migrate so as not to resend allocation notifications 2020-08-24 19:01:31 +02:00
Gregor Kleen
67771facff chore: use fewer segfault-y packages (hopefully) 2020-08-17 17:57:44 +02:00
Sarah Vaupel
366761ba84 Merge branch 'master' into eecorrectr 2020-08-15 16:57:08 +02:00
Gregor Kleen
c68a01d7ae refactor: split foundation & llvm
BREAKING CHANGE: split foundation
2020-08-14 17:02:14 +02:00
Sarah Vaupel
58ae9dddbc feat(guess-user): variant of guessUser 2020-08-14 15:53:27 +02:00
Gregor Kleen
f46d187f18 Merge branch 'master' of gitlab2.rz.ifi.lmu.de:uni2work/uni2work into version-bumps 2020-08-11 09:30:55 +02:00
Gregor Kleen
eb0aeeadbb Merge branch 'master' into version-bumps 2020-08-10 22:11:31 +02:00
Gregor Kleen
0fcb65f9fa refactor: hlint 2020-08-10 21:59:16 +02:00
Gregor Kleen
9827f10b5d Merge branch 'master' into feat/customized-exercises 2020-08-10 15:56:16 +02:00
Gregor Kleen
0b0eaff20d fix(personalised-sheet-files): more thorough check wrt sub-warnings 2020-08-10 10:35:09 +02:00
Gregor Kleen
db205f635d feat(personalised-sheet-files): participant interaction 2020-08-07 18:18:41 +02:00
Gregor Kleen
c4c952ebc1 Merge branch 'master' into feat/customized-exercises 2020-08-04 10:07:36 +02:00
Sarah Vaupel
95490af7af Merge branch 'master' into course-visibility 2020-08-02 17:49:22 +02:00
Gregor Kleen
7a17535600 fix(migration): make index migration truly idempotent 2020-08-02 14:08:01 +02:00
Gregor Kleen
dfe68d5924 feat: migrate indexes 2020-08-02 10:27:50 +02:00
Sarah Vaupel
cb0bf15121 feat(course-visibility): account for visibility in routes 2020-07-31 18:05:01 +02:00
Sarah Vaupel
c99433c291 fix(course-visibility): account for active auth tags everywhere 2020-07-29 16:44:39 +02:00
Gregor Kleen
9ee44aa2f1 feat(personalised-sheet-files): introduce routes & work on crypto 2020-07-28 19:14:15 +02:00
Gregor Kleen
cf412a4b54 fix(migration): omit index for old versions of postgres 2020-07-18 16:42:41 +02:00
Gregor Kleen
9a2cba5c0a feat(files): move uploads from buffer to database
Rate limit pruning of unreferenced files
2020-07-17 15:54:42 +02:00
Gregor Kleen
353b7704dc chore(files): migration to content-addressable storage 2020-07-17 15:54:28 +02:00
Gregor Kleen
14be8f61b4 refactor(files): store content separately from metadata 2020-07-17 15:54:28 +02:00
Gregor Kleen
9dee134b11 feat(file-uploads): maximum file sizes 2020-07-13 09:32:28 +02:00
Gregor Kleen
c87315006d fix(ratings): improve decoding error reporting 2020-06-19 17:38:48 +02:00
Gregor Kleen
af7947328d feat(ratings): parsing for new format 2020-06-17 12:57:54 +02:00
Gregor Kleen
2bf484609e feat(rating): pretty-print to new yaml based format
Parsing not implemented yet; tests should fail
2020-06-16 18:23:02 +02:00
Gregor Kleen
06f47c59b4 feat(course-participants): csv export exercise sheets 2020-06-14 18:15:58 +02:00
Gregor Kleen
f11b215773 feat(notifications): sheet-hint & sheet-solution 2020-05-25 16:07:49 +02:00
Gregor Kleen
b2ebce4836 feat(sheets): pass-always 2020-05-23 11:50:54 +02:00
Gregor Kleen
8bb3bc50a2 fix(correction-upload): better error messages wrt rating files 2020-05-22 17:12:18 +02:00
Gregor Kleen
04db1b5a45 chore(migration): delete unused stub session_file 2020-05-06 15:03:40 +02:00
Gregor Kleen
35621df03e fix(migration): handle deleted courses & users 2020-05-06 12:52:53 +02:00
Gregor Kleen
e508277496 fix(migration): typos 2020-05-06 08:56:55 +02:00
Gregor Kleen
fb7c7efebd fix(migration): typo 2020-05-05 21:09:06 +02:00
Gregor Kleen
d5b65a1b06 feat(course-participants): introduce CourseParticipantState
BREAKING CHANGE: CourseParticipantState

Addresses #499
Fixes #371
2020-05-04 14:52:45 +02:00
Gregor Kleen
57f1ce9265 feat(sheets): submission groups & rework sheet form 2020-04-28 14:31:27 +02:00
Gregor Kleen
94d3e00bbc refactor(fixed-submission-groups): cleanup stub 2020-04-24 18:40:59 +02:00
Gregor Kleen
d05306a39a fix(memcached): navAccess & quick actions cache invalidations 2020-04-23 10:41:20 +02:00
Gregor Kleen
b9b090992f feat(caching): aggressively cache nav items 2020-04-22 11:14:25 +02:00
Gregor Kleen
466203d866 fix(health): more generous healthchecks 2020-04-21 10:51:45 +02:00
Gregor Kleen
738ab7b738 feat: admin interface to issue tokens 2020-04-09 15:23:46 +02:00
Gregor Kleen
bc47dcf43f feat(tokens): multiple authorities 2020-04-09 10:30:25 +02:00
Gregor Kleen
ec6a8ae463 feat(exams): convenience for automatic grade calculation 2020-03-16 10:21:02 +01:00
Gregor Kleen
996005935d feat(serversessions): move session storage to dedicated memcached
fixes #390
2020-03-13 17:26:47 +01:00
Gregor Kleen
26f8f392a9 feat(allocations): improve display 2020-03-12 11:56:26 +01:00
Gregor Kleen
3422fd70a7 feat(allocations): improve accept ui and logging 2020-03-11 14:16:02 +01:00
Gregor Kleen
49d9ab9dba feat(csv): export example data & improve zoned-time parsing 2020-03-06 13:53:13 +01:00
Gregor Kleen
432a77f705 refactor(dbtable): optimize 2020-03-03 15:16:23 +01:00
Gregor Kleen
7462e03e70 feat(allocations): show & export priority 2020-02-27 17:04:32 +01:00
Gregor Kleen
a590f45cc1 feat(allocations): upload of priorities 2020-02-27 16:31:38 +01:00
Gregor Kleen
2735d465eb feat(allocations): table of allocation users 2020-02-27 11:09:16 +01:00
Gregor Kleen
cfaea9c08b chore: bump to lts-15.0
BREAKING CHANGE: major version bumps
2020-02-23 11:12:45 +01:00
Gregor Kleen
acffe04350 feat(exams): allow mixed ExamGradingMode 2020-02-18 20:11:46 +01:00
Gregor Kleen
0e49bc14e5 feat(exams): improve handling of exam results everywhere
BREAKING CHANGE: ExamResult now contains ExamResultPassedGrade
2020-02-18 15:43:07 +01:00
Sarah Vaupel
6f2b58c002 Merge branch 'master' into 476-interface-fur-klausurkorrekturen 2020-02-04 09:52:33 +01:00
Gregor Kleen
e994fafe28 feat(exams): automatic exam occurrence assignment 2020-01-29 20:31:37 +01:00
Gregor Kleen
282df86bc2 feat(exam): start work on automatic exam-occurrence assignment 2020-01-28 17:06:47 +01:00
Sarah Vaupel
36e90102c4 Merge branch 'master' into 476-interface-fur-klausurkorrekturen 2020-01-20 09:42:21 +01:00
Gregor Kleen
88dd5a90b9 feat: course-participant-lists 2020-01-17 17:55:14 +01:00
Sarah Vaupel
ce72679761 Merge branch 'master' into 476-interface-fur-klausurkorrekturen 2020-01-14 11:19:08 +01:00
Gregor Kleen
83fa9c9c69 fix: improve exam occurrence ui 2020-01-11 23:44:47 +01:00
Gregor Kleen
14bb020fe9 feat: support exam registration including room (ExamRoomFifo) 2020-01-11 22:49:42 +01:00
Sarah Vaupel
cb7c9ac6da feat(exam-correct): add basic interface stub 2020-01-08 16:38:16 +01:00
Sarah Vaupel
f619b0a36c Merge branch 'master' into 476-interface-fur-klausurkorrekturen 2020-01-07 10:28:33 +01:00
Gregor Kleen
98c0d6919e feat(submission): edit notifications 2019-12-05 13:44:47 +01:00
Gregor Kleen
b7d6f3c9e9 refactor(sub-study-fields): reformulate as superStudyField
Fixes #531

BREAKING CHANGE: superStudyField
2019-11-28 12:52:03 +01:00
Gregor Kleen
0e027b129e refactor: bump esqueleto & redo StudySubTerms
BREAKING CHANGE: Bumped esqueleto
2019-11-26 17:43:19 +01:00
Gregor Kleen
38a4e6cdb7 chore: merge master 2019-11-25 10:25:52 +01:00
Gregor Kleen
2621d36b7d feat(features-of-study): record parent & standalone candidates 2019-10-31 08:59:49 +01:00
Gregor Kleen
81415e1afb feat(csv): encoding 2019-10-23 17:34:37 +02:00
Gregor Kleen
c443ee4e0d style(corrections-overview): better present tutorial assignments 2019-10-20 12:04:46 +02:00
Gregor Kleen
9d709ca400 fix(rights): split applicant off participant 2019-10-16 17:11:34 +02:00
Gregor Kleen
c2a8381278 feat(users): sex 2019-10-14 15:34:43 +02:00
Gregor Kleen
261f3ed92f feat(tutorials): delegate control to tutors 2019-10-14 11:50:06 +02:00
Gregor Kleen
5bc015ddcb refactor(allocations): store log/fingerprint separately 2019-10-13 21:41:29 +02:00
Gregor Kleen
3750da81dc feat(courses): add NotificationCourseRegistered 2019-10-08 16:20:40 +02:00
Gregor Kleen
60603cb6ec feat(allocations): fingerprints & ordinal ratings 2019-10-04 16:37:11 +02:00
Gregor Kleen
93232201f2 feat(allocations): notification about finished allocation 2019-10-04 11:12:10 +02:00
Gregor Kleen
c18299028c refactor: hlint 2019-10-03 19:46:13 +02:00
Gregor Kleen
6d8743fe15 Merge branch '155-zentralanmeldungen' 2019-10-03 19:33:31 +02:00
Gregor Kleen
47bfd8d4ea feat(allocations): auxilliaries for allocation-algo 2019-10-03 15:18:36 +02:00
Gregor Kleen
9d2995b6a5 refactor(favourites): introduce FavouriteReason 2019-10-02 18:54:48 +02:00
Gregor Kleen
89adf7f2dc fix(mail): honor userCsvOptions and userDisplayEmail 2019-10-01 09:07:21 +02:00
Gregor Kleen
95ceeddc83 feat(csv): allow customisation of csv-export-options 2019-09-30 15:53:29 +02:00
Gregor Kleen
620950df83 feat(course-applications): automatic acceptance of direct applicants 2019-09-27 11:46:25 +02:00
Gregor Kleen
54e94a6670 feat(exams): re-introduce ExamBonusManual 2019-09-26 11:01:32 +02:00
Gregor Kleen
9569c4f026 Merge branch 'master' into 205-klausuren 2019-09-25 14:10:52 +02:00
Gregor Kleen
67e3b38834 chore: bump versions
BREAKING CHANGE: yesod >=1.6
2019-09-25 13:46:10 +02:00
Gregor Kleen
7afd569eaa fix: syntax 2019-09-19 18:26:37 +02:00
Gregor Kleen
d79dca6be9 fix(migration): drop more tables in w.a. for inconsistent 21→22 2019-09-19 17:38:23 +02:00
Gregor Kleen
e97cd5616b feat(exams): implement rounding of exambonus 2019-09-19 11:30:24 +02:00
Gregor Kleen
e05ea8ea8c fix: fix migration & tests 2019-09-19 10:11:25 +02:00
Gregor Kleen
d2478a3657 fix: fix migration 2019-09-19 09:08:33 +02:00
Gregor Kleen
014a17a3be feat(exams): refine exam form 2019-09-18 11:45:08 +02:00
Gregor Kleen
29f4e28536 feat(exams): csv-import of ExamPartResults
BREAKING CHANGE: Introduces ExamPartNumbers
2019-09-16 17:53:45 +02:00
Gregor Kleen
517da054b1 Merge branch 'master' into exam-office 2019-09-13 10:37:20 +02:00
Gregor Kleen
ae27ff0bb1 feat(exams): notifications wrt. registration 2019-09-13 10:06:38 +02:00
Gregor Kleen
2f38278ab1 feat(users): allow customisation of displayed email address
Fixes #459
2019-09-12 17:18:17 +02:00
Gregor Kleen
a85f317bf2 feat(users): allow customisation of userDisplayName
Fixes #346
2019-09-12 15:46:09 +02:00
Gregor Kleen
52e1844d5e feat(exam-office): notifications 2019-09-11 15:46:01 +02:00
Gregor Kleen
f75cc641e2 feat(exam-office): subscription management for users & fields 2019-09-06 18:33:50 +02:00
Gregor Kleen
e29f042229 fix(jobs): implement job priorities 2019-09-05 16:14:11 +02:00
Gregor Kleen
6d52ed5c4c feat(allocations): notifications 2019-09-05 08:37:56 +02:00
Gregor Kleen
12067de2ff feat(user-schools): automatically assign users to schools
Based on StudyTerms and SchoolLdap
2019-08-28 17:08:23 +02:00
Gregor Kleen
76f8da52e0 feat(users): generalise UserLecturer and UserAdmin to UserFunction
Closes #320
BREAKING CHANGE: Remove UserLecturer and UserAdmin
2019-08-28 09:46:03 +02:00
Gregor Kleen
104ab8f994 Merge branch 'master' into 155-zentralanmeldungen 2019-08-22 15:29:07 +02:00
Gregor Kleen
f5da3bebba feat(allocations): show table of course applications 2019-08-22 15:27:28 +02:00
Steffen Jost
a346524073 fix(csv exam import): ignore unchanged noshow and voided
noshow and voided are now independent of whether the exam is graded or
pass and fail only
2019-08-22 10:29:49 +02:00
Steffen Jost
7d2937c71d fix(csv upload exams): allow ambiguous harmless study fields 2019-08-21 17:45:12 +02:00
Gregor Kleen
d621e61b11 feat(allocations): show table of all allocations
Cleanup imports & pageactions
2019-08-20 13:55:01 +02:00
Gregor Kleen
4dcc82a770 feat(allocations): implement application interface 2019-08-19 14:54:03 +02:00
Gregor Kleen
c5b18fcfcf feat(allocations): add registration form 2019-08-13 17:51:12 +02:00
Gregor Kleen
c2df01c2f7 feat(allocations): set up routes 2019-08-13 11:30:45 +02:00
Gregor Kleen
79d4ae20ee feat(courses): rework couse registration
Support course applications

BREAKING CHANGE: auditing for course registrations and deregistrations, more
tightly couple exam results, exam registration, and course registration (delete
them together now)
2019-08-12 16:54:37 +02:00
Gregor Kleen
a00698e99e feat(course-registration): allow independent course application 2019-08-09 16:44:26 +02:00
Gregor Kleen
203dbd3705 fix: fix collision with keyword "none" 2019-08-07 09:00:40 +02:00
Gregor Kleen
f602b79e7a feat(audit): introduce id-based format 2019-08-06 09:51:05 +02:00
Gregor Kleen
a7e2921a73 feat(notifications): add NotificationExamResult 2019-08-05 19:04:50 +02:00
Gregor Kleen
8ea1b8b2af refactor: minor csv cleanups 2019-08-05 17:23:11 +02:00
Gregor Kleen
94a120808d feat(allocations): prevent course (de)registrations 2019-08-05 13:01:36 +02:00
Gregor Kleen
14a9a45674 feat(allocations): add courses to allocations 2019-08-05 11:34:00 +02:00
Gregor Kleen
84c12b5fc7 feat(notification triggers): redesign interface
Fixes #410
2019-07-29 17:12:48 +02:00
Gregor Kleen
0d610ccf44 feat(users): switching between AuthModes & password changing 2019-07-29 10:55:23 +02:00
Gregor Kleen
ceed070e35 feat(users): store first names and titles 2019-07-26 11:36:56 +02:00
Gregor Kleen
932145ccf7 feat(exams): csv-based grade upload 2019-07-25 16:59:09 +02:00
Gregor Kleen
40e952a452 Merge branch 'master' into 205-klausuren 2019-07-25 16:57:51 +02:00
Gregor Kleen
b8b308d608 feat(exams): show exam results 2019-07-25 14:45:45 +02:00