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