Commit Graph

408 Commits

Author SHA1 Message Date
Steffen Jost
9ee7ec8d7a fix(build): schools.model examDiscouragedModes default contained whitespace, which is not allowed 2021-12-13 17:43:50 +01:00
Steffen Jost
282a7d44b2 fix(models): correct erroneous default values 2021-11-25 12:44:00 +01:00
Sarah Vaupel
029e3e2ff9 chore(model): set default for UserNotificationSettings 2021-11-18 15:51:43 +01:00
Sarah Vaupel
4d7ae255b1 chore(model): set default for SchoolExamDiscouragedModes 2021-11-18 15:46:56 +01:00
Steffen Jost
c4fc67d4e8 chore: remove workflows 2021-09-07 12:57:53 +02:00
Gregor Kleen
fcce16d838 fix(submissions): cascade delete to authorship statements 2021-07-28 11:16:39 +02:00
Gregor Kleen
9df0686086 feat: load shedding 2021-07-21 12:37:54 +02:00
Gregor Kleen
34b3e6ae21 feat: demand authorship statements 2021-07-18 00:16:32 +02:00
Sarah Vaupel
3f87f20eb1 feat(sheets): introduce sheet-specific statements for exam-unrelated sheets and as exam-statement overrides 2021-07-18 00:16:30 +02:00
Sarah Vaupel
b6a72d9a45 chore(exams): connect exam authorship statement form part to model 2021-07-18 00:16:29 +02:00
Sarah Vaupel
5cc41aeef9 feat(exams): basic required optional action for authorship statements 2021-07-18 00:16:28 +02:00
Sarah Vaupel
7b11ed46de refactor(exams): prepare for exam-wide statements 2021-07-18 00:16:27 +02:00
Sarah Vaupel
6e7e8a2b20 refactor(sheets): prepare for sheet-scoped statements 2021-07-18 00:16:27 +02:00
Sarah Vaupel
0735c05a74 feat(sheets): eliminate authship statement required Bool 2021-07-18 00:16:26 +02:00
Sarah Vaupel
541dd7688f feat(sheets): add required flag and definition 2021-07-18 00:16:26 +02:00
Sarah Vaupel
960bd76aca feat(schools): more school-wide configuration authorship statements 2021-07-18 00:16:26 +02:00
Sarah Vaupel
67c30165ae fix(schools): use StoredMarkup instead of Html for authorship statement 2021-07-18 00:16:25 +02:00
Sarah Vaupel
09927ae140 feat(schools): store school authorship statements as html 2021-07-18 00:16:25 +02:00
Sarah Vaupel
cb8e338588 feat(schools): add school settings regarding authorship statements 2021-07-18 00:16:25 +02:00
Gregor Kleen
cf67945292 feat(personalised-sheet-files): seeds 2021-07-13 10:46:23 +02:00
Gregor Kleen
5ade6c65d6 chore: bump versions 2021-06-28 09:21:34 +02:00
Gregor Kleen
adbbb8db6b chore: support storing chunks in minio 2021-06-27 10:51:58 +02:00
Gregor Kleen
cde0122529 feat(news): active allocations for lecturers 2021-06-10 21:08:54 +02:00
Gregor Kleen
df073ef794 feat(terms): time based term activity 2021-06-08 15:13:08 +02:00
Gregor Kleen
1717785a51 refactor: be more explicit about ARC strictness 2021-04-09 12:27:04 +02:00
Wolfgang Witt
9ce54efd28 chore: make examOccurrenceCapacity optional 2021-03-29 16:03:30 +02:00
Gregor Kleen
b9cc5b9970 feat(transaction-log): more details about submission files 2021-02-24 12:39:32 +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
b814bc094a refactor(workflows): shared workflow graphs 2021-02-01 17:37:55 +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
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
e25e8a2f4c fix(html-field): introduce stored-markup
BREAKING CHANGE: StoredMarkup
2020-11-06 20:39:43 +01:00
Gregor Kleen
03fec7752b Merge branch 'master' into workflows 2020-11-05 12:19:18 +01:00
Gregor Kleen
1666081fea feat(mail): archive all sent mail & better verp 2020-11-04 15:27:06 +01:00
Gregor Kleen
ef51c6e7c3 feat(users): assimilation 2020-11-02 09:58:01 +01:00
Gregor Kleen
6cd9f9bbfd Merge branch 'master' into workflows 2020-10-13 14:31:48 +02:00
Gregor Kleen
8abcd65edf feat(allocations): allocation-course-accept-substitutes 2020-10-13 13:06:12 +02:00
Gregor Kleen
94436ee0e1 feat(exams): exam staff & additional schools 2020-10-12 14:08:14 +02:00
Gregor Kleen
48eddaf1ed Merge branch 'master' into workflows 2020-10-08 09:42:28 +02:00
Gregor Kleen
8f6d54d012 feat(study-features): cache study features term relevance 2020-10-06 12:31:32 +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
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
e3b5b93c71 feat(workflows): definition route stubs & i18n 2020-09-25 13:13:24 +02:00
Gregor Kleen
94f78a07d9 fix(workflows): refer by id in model 2020-09-25 13:00:49 +02:00
Gregor Kleen
8943c3e3bf refactor(workflows): rework types & instances 2020-09-25 13:00:48 +02:00
Sarah Vaupel
386d3bfc49 refactor(workflows): refine model and types; TODO fix instances 2020-09-25 12:59:14 +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
e1261761a2 chore(workflows): more on types 2020-09-25 12:45:10 +02:00
Sarah Vaupel
460bd9d3e5 chore(workflow-types): import authdns 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
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
b7dec2f1d0 chore: very stubby stub for workflow model 2020-09-25 12:44:15 +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
297ff4f025 feat: automatically sync system functions from ldap 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
4f9a4f7f44 refactor: remove course-participant-field, course-application-field 2020-08-25 14:27:58 +02:00
Gregor Kleen
dcb83d96fc feat(study-features): add study-features-first-observed 2020-08-25 12:27:40 +02:00
Gregor Kleen
9827f10b5d Merge branch 'master' into feat/customized-exercises 2020-08-10 15:56:16 +02:00
Gregor Kleen
ed5fb6e218 feat(personalised-sheet-files): finish upload functionality
TODO: Interaction of course participants with personalised files
2020-08-06 09:57:53 +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
88a92390d5 feat(files): safer file deletion 2020-08-01 14:43:33 +02:00
Sarah Vaupel
27d57fba32 Merge branch 'master' into course-visibility 2020-07-31 18:06:02 +02:00
Gregor Kleen
a0392dd329 fix: better concurrency behaviour 2020-07-31 18:00:30 +02:00
Gregor Kleen
9ee44aa2f1 feat(personalised-sheet-files): introduce routes & work on crypto 2020-07-28 19:14:15 +02:00
Sarah Vaupel
222d566bda feat(course-visibility): add visibleFrom,visibleTo
add visibleFrom and visibleTo to model, add fields (CEditR), add info
(CShowR)
2020-07-24 18:52:54 +02:00
Gregor Kleen
d770afd2c6 feat(sheets): require exam registration 2020-07-20 14:26:55 +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
14be8f61b4 refactor(files): store content separately from metadata 2020-07-17 15:54:28 +02:00
Gregor Kleen
cf06f79807 feat(system-messages): manual priority 2020-06-16 10:18:46 +02:00
Gregor Kleen
2e826d3c45 feat(load): allow creation of submissions without login (w/ token) 2020-05-22 14:31:19 +02:00
Gregor Kleen
bf64eafd08 feat(course-participants): course-deregister-no-show
Fixes #499
2020-05-05 08:59:57 +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
192b6279d3 refactor(file upload): move to genericFileField 2020-04-29 18:30:54 +02:00
Gregor Kleen
6d00410682 Merge branch 'master' into feat/feste-abgabegruppen 2020-04-27 16:51:00 +02:00
Gregor Kleen
3ea7371465 feat(allocations): switch to csprng 2020-04-27 09:12:32 +02:00
Gregor Kleen
94d3e00bbc refactor(fixed-submission-groups): cleanup stub 2020-04-24 18:40:59 +02:00
Gregor Kleen
fd2c2881ea feat(submissions): non-anonymized correction
Fixes #524
Fixes #292
2020-04-17 15:19:26 +02:00
Gregor Kleen
c81bc2314e feat(system-messages): hiding 2020-04-15 12:34:20 +02:00
Gregor Kleen
ead6015dfe feat(system-messages): refactor cookies & improve system messages
BREAKING CHANGE: names of cookies & configuration changed
2020-04-15 10:39:26 +02:00
Gregor Kleen
0d39924777 feat(news): show system messages 2020-04-09 11:56:29 +02:00
Sarah Vaupel
c8904d10b6 feat(course-events): course event note text -> html 2020-03-31 14:22:42 +02:00
Sarah Vaupel
6ad8f2ee29 feat(course-events): add optional note to course events 2020-03-31 14:07:37 +02:00
Gregor Kleen
3422fd70a7 feat(allocations): improve accept ui and logging 2020-03-11 14:16:02 +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
Gregor Kleen
e994fafe28 feat(exams): automatic exam occurrence assignment 2020-01-29 20:31:37 +01:00
Gregor Kleen
f25b21aa4b feat(external-exams): requisite routes 2020-01-15 12:07:27 +01:00
Gregor Kleen
83fa9c9c69 fix: improve exam occurrence ui 2020-01-11 23: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
bc248d0fc2 fix(tutorials): improve creation interface
tutorial_room is no longer NOT NULL
2019-10-16 18:38:59 +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
fa7f7712f7 feat(courses): course events 2019-10-09 16:51:56 +02:00
Gregor Kleen
60603cb6ec feat(allocations): fingerprints & ordinal ratings 2019-10-04 16:37:11 +02:00
Gregor Kleen
fccc2ea212 feat(favourites): usability improvements 2019-10-04 13:28:58 +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
aa93b75e00 feat(course): introduce CourseNews 2019-10-01 19:46:40 +02:00
Gregor Kleen
95ceeddc83 feat(csv): allow customisation of csv-export-options 2019-09-30 15:53:29 +02:00
Gregor Kleen
977840446e fix: make migration idempotent again 2019-09-25 17:43:23 +02:00
Gregor Kleen
4383eb1359 fix: migration 2019-09-20 09:20:52 +02:00
Gregor Kleen
ea5a398bab feat(exams): automatically compute examResults
BREAKING CHANGE: examPartName no longer required
2019-09-18 17:17:18 +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
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
cb9ff32063 fix(exam-office): better logic for isSynced 2019-09-11 09:11:24 +02:00
Gregor Kleen
72a7f6e8a8 feat(exam-office): grade export 2019-09-10 15:26:45 +02:00
Gregor Kleen
f75cc641e2 feat(exam-office): subscription management for users & fields 2019-09-06 18:33:50 +02:00
Gregor Kleen
412ce98fa0 feat(forms): allow customisation of user-facing datalist values 2019-09-05 20:08:15 +02:00
Gregor Kleen
90aef6423f Merge branch 'master' into schools 2019-08-29 16:52:02 +02:00
Gregor Kleen
b39ba8b268 feat(ldap): automatically synchronise user data from ldap 2019-08-29 15:03:33 +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
Sarah Vaupel
1c2f2b7221 feat(invitations): save expiresAt to DB 2019-08-28 14:18:36 +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
5e393c53c6 feat(allocations): serve archive of all application files by course 2019-08-23 10:15:59 +02:00
Steffen Jost
d23e222fd0 feat(home): allow users to define exam warning time
Closes #445
2019-08-22 18:05:14 +02:00
Gregor Kleen
f5da3bebba feat(allocations): show table of course applications 2019-08-22 15:27:28 +02:00
Gregor Kleen
ef625cd901 feat(allocations): add application form(s) 2019-08-14 15:06:43 +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
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
67eda82bbc fix(jobs): only write CronLastExec after job has executed 2019-08-05 19:04:09 +02:00
Gregor Kleen
14a9a45674 feat(allocations): add courses to allocations 2019-08-05 11:34:00 +02:00
Gregor Kleen
bf56081576 Merge branch 'master' into 155-zentralanmeldungen 2019-07-30 13:05:22 +02:00
Gregor Kleen
069eb1e0b7 feat(allocations): refine model for allocations 2019-07-26 13:58:09 +02:00
Gregor Kleen
ceed070e35 feat(users): store first names and titles 2019-07-26 11:36:56 +02:00