Commit Graph

4108 Commits

Author SHA1 Message Date
Steffen Jost
8af8526e61 chore(lms): attempts to use standard columns working now after refactoring 2022-04-12 17:12:15 +02:00
Steffen Jost
2326b077c9 chore(lms): lmsUser Overview reworked to newfound purpose. work in progress, compiles 2022-04-12 13:32:23 +02:00
Steffen Jost
06201bc22e refactor(lms): better lms indentifiers and passwords 2022-04-12 11:30:53 +02:00
Steffen Jost
2c66cb5e5d chore(lms): add more columns to all qualficiation 2022-04-11 16:30:45 +02:00
Steffen Jost
39f16b90db chore(lms): lmsstatus to proper semigroup, notifications for qualifications added but need more work 2022-04-08 17:28:55 +02:00
Steffen Jost
d4c4a60e7c chore(lms): add notifications stub forgotten in previous commit 2022-04-07 18:06:42 +02:00
Steffen Jost
41a05edcd4 chore(lms): lmsstatus to semigroup for easy switch, lms notficiation stub 2022-04-07 18:05:29 +02:00
Steffen Jost
f1021d4e10 chore(lms): add primary lms job handler for kickoff of all qualifications 2022-04-06 18:19:36 +02:00
Steffen Jost
49ccb35035 chore(lms): dispatch single fresh lms user implemented 2022-04-06 17:35:47 +02:00
Steffen Jost
19f77dad02 chore(lms): implement job handler to enqueue renewals 2022-04-05 18:06:33 +02:00
Steffen Jost
21b74a5d7f feat(lms): random ident pw generation without db 2022-04-05 16:16:02 +02:00
Steffen Jost
efcc9526ac chore(dbtable): fix tooltipCell to display default icon 2022-04-05 11:03:25 +02:00
Steffen Jost
2dac5a056c refactor(lms): qualification validity changed from utctime to days 2022-04-04 15:39:57 +02:00
Steffen Jost
a5121f0d3e feat(lms): enable upload handlers for all upload routes 2022-04-04 15:19:17 +02:00
Steffen Jost
9483a0fc15 chore(lms): qualfication overview table refactored 2022-04-04 13:48:14 +02:00
Sarah Vaupel
e96de2cd65 Update LMS.hs 2022-03-31 17:15:07 +02:00
Steffen Jost
e669e495f9 chore(lms): wip handler dispatch enqueue 2022-03-31 16:05:59 +02:00
Steffen Jost
4fd4462045 chore(term): change to 4 digit format for disambiguation 2022-03-31 12:59:56 +02:00
Steffen Jost
88b22d50e8 chore(terms): switched to years 2022-03-30 16:46:41 +02:00
Steffen Jost
ac9590f27c chore(lms): switch icons course and e-learning 2022-03-30 09:14:48 +02:00
Steffen Jost
5f2f353007 chore(lms): correct job handler ulist to deal with repeated uploads 2022-03-28 16:08:08 +02:00
Steffen Jost
c7f734cfca chore(lms): complete import jobs 2022-03-25 17:40:37 +01:00
Steffen Jost
ab45a719c3 chore(lms): complete dispatchJobLmsResults with persistent now 2022-03-24 17:52:25 +01:00
Steffen Jost
904e3ee044 chore(lms): create job for processing lms results 2022-03-24 16:17:50 +01:00
Steffen Jost
1f4cabc8da chore(lms): demo subSelect in dbtSQLQuery vs sqlCell 2022-03-23 18:08:44 +01:00
Steffen Jost
1bb2e571fb chore(lms): add primary nav link to lms 2022-03-23 15:40:22 +01:00
Steffen Jost
577399199a chore(lms): qualfication overview table stub working 2022-03-23 15:35:22 +01:00
Steffen Jost
b9bda938b4 chore(lms): show all data in qualfication overview page 2022-03-22 18:27:48 +01:00
Steffen Jost
1f9a5e377d chore(lms): lms overview cleaned 2022-03-22 17:13:40 +01:00
Steffen Jost
0d6bfaf099 chore(lms): bette lms overview tables with filtering 2022-03-21 18:26:11 +01:00
Steffen Jost
01d9916520 chore(lms): reorder routes and (wip) overview table 2022-03-17 18:40:58 +01:00
Steffen Jost
5e4906d04e chore(lms): fix build 2022-03-17 15:18:34 +01:00
Steffen Jost
9e91eab139 chore(lms): direct export for lms users working 2022-03-17 13:13:06 +01:00
Steffen Jost
e860a99657 chore(lms): upload and direct for userlist and result working now 2022-03-17 11:16:28 +01:00
Steffen Jost
cbfa88a059 chore(lms): clean direct result upload 2022-03-16 18:33:40 +01:00
Steffen Jost
51aa76ebdb chore(lms): add working direct upload page lms results 2022-03-16 17:37:25 +01:00
Steffen Jost
7ccbf5868d chore(lms): reinstate CSV examples, sorting working now 2022-03-14 17:32:34 +01:00
Steffen Jost
497e3e38e1 chore(lms): remove example data to allow sorting again; ignore identical imports for lms tables 2022-03-11 17:50:40 +01:00
Steffen Jost
4a1fc5ebb2 chore(lms): switch result day format to LmsDay 2022-03-11 11:47:19 +01:00
Steffen Jost
f9fb236025 chore(lms): minor changes 2022-03-10 19:47:45 +01:00
Steffen Jost
9e80a2e5e9 chore(lms): activate filters, add examples 2022-03-08 16:16:16 +01:00
Steffen Jost
6772290044 chore(lms): add newtype for special day format (not yet used) 2022-03-08 11:17:35 +01:00
Steffen Jost
dc4ea0cc29 chore(lms): export user implemented 2022-03-07 19:12:15 +01:00
Steffen Jost
5aae0339fb refactor(lms): simplify lms result interface 2022-03-07 12:51:04 +01:00
Steffen Jost
864c2f13ad chore(status): minor code cleaning 2022-03-03 17:28:31 +01:00
Steffen Jost
7b8e566f65 refactor(lms): encode bool by 0 and 1 in lms csv export/import 2022-02-24 14:00:07 +01:00
Steffen Jost
aa54bba62b chore(lms): encode bool by 0 and 1 in lms csv export/import 2022-02-24 13:03:59 +01:00
Steffen Jost
c1d0f63620 chore(lms): add dd-mm-yyyy date format specified in lms interface 2022-02-24 12:37:02 +01:00
Steffen Jost
9ee476736c fix(lms): correct lms table column sorting key 2022-02-24 11:33:13 +01:00
Steffen Jost
0a43acbfad chore(lms): lms userlist handler should be working now 2022-02-23 18:26:34 +01:00
Steffen Jost
902bb71a22 chore(status): minor rewording of status page 2022-02-23 18:20:35 +01:00
Steffen Jost
60087d44b0 chore(lms): userlist page csv export added 2022-02-23 17:07:43 +01:00
Steffen Jost
01a2f47961 chore(lms): userlist page refactored and improved 2022-02-23 16:05:29 +01:00
Steffen Jost
3ec9401d39 chore(lms): minor refactor for csv filenames 2022-02-21 17:57:52 +01:00
Steffen Jost
e5216fde31 chore(lms): import ought to work now 2022-02-21 17:02:53 +01:00
Steffen Jost
8ad25c6ca5 chore(lms): remove some unnecessary singleton-cases to expose types 2022-02-21 15:07:16 +01:00
Steffen Jost
a49c24147e chore(lms): add another common version of camelToPathPiece 2022-02-21 14:34:48 +01:00
Steffen Jost
f5cab6e58b chore(lms): make the stub for csv import of LmsResult compile again 2022-02-21 12:53:38 +01:00
Steffen Jost
fea453a87e chore(lms): work on stub for csv import of LmsResult 2022-02-18 17:54:24 +01:00
Steffen Jost
e821b416f0 chore(lms): add skeleton for csv decoding of lms result 2022-02-18 14:33:00 +01:00
Steffen Jost
87a94a5517 chore(haddock): fix minor typo in haddock, preventing links to functions 2022-02-18 14:31:58 +01:00
Steffen Jost
40c312d2bd chore(lms): change routes to respect schools 2022-02-17 16:05:17 +01:00
Steffen Jost
e338c025e5 chore(lms): table filter finally typing 2022-02-16 18:13:52 +01:00
Steffen Jost
3656f1e6f1 chore(lms): rethunk qualifcation model and process 2022-02-16 17:35:56 +01:00
Steffen Jost
3d3ac9d77c chore(lms): make model compile again, sort out model errors 2022-02-15 18:15:39 +01:00
Steffen Jost
aa73359893 chore(lms): revise db model after discussion 2022-02-15 12:46:20 +01:00
Steffen Jost
944ef46d84 refactor(db): instance PersistField CalendarDiffDays 2022-02-15 12:39:17 +01:00
Steffen Jost
70409fa320 chore(qualifications): expand model to include CalendarDiffDays 2022-02-14 22:14:35 +01:00
Steffen Jost
08ad0da878 chore(lms): display lmsresultlist compiles but incomplete 2022-02-11 16:29:43 +01:00
Steffen Jost
e28c75b5e2 chore(lms): display lmsuserlist compiles but incomplete 2022-02-10 16:55:22 +01:00
Steffen Jost
37411b7106 chore(lms): add stubs for lms userlist and result uploads 2022-02-10 15:40:58 +01:00
Steffen Jost
31154b9430 chore(lms): add required lenses for stub wip 2022-02-08 18:01:59 +01:00
Steffen Jost
c76b2efd1d chore(lms): continued work on stub wip 2022-02-08 12:21:35 +01:00
Sarah Vaupel
417a48e7cb chore(lms): work on lms handler stub 2022-02-08 11:43:37 +01:00
Steffen Jost
3eeac06c47 chore(lms): minor code cleaning 2022-02-08 09:36:11 +01:00
Steffen Jost
cdc297716a chore(lms): add datatypes for export tables 2022-02-07 18:18:40 +01:00
Sarah Vaupel
303e7096d3 chore: add LMS Handler stub 2022-02-04 18:20:15 +01:00
Steffen Jost
02051100e4 refactor(utils): code cleaning 2022-01-13 11:53:20 +01:00
Steffen Jost
fe190c022e test(restarts): add application crash button to admin test page 2022-01-12 12:48:04 +01:00
Steffen Jost
8743719183 feat(status): show instance running time 2022-01-11 17:55:20 +01:00
Steffen Jost
71950d9e5c refactor(mail): code cleaning and improved messages 2022-01-10 17:29:27 +01:00
Steffen Jost
859f5b8494 fix(smtp): case-insensitive from-domain comparison for reply-to instead option 2022-01-10 12:12:28 +01:00
Steffen Jost
3453fc3459 fix(mail): add debug info why setting reply to instead of sender does not work 2022-01-07 17:45:14 +01:00
Steffen Jost
ddb1a15c18 fix(user): display name may omit hyphenated given name parts 2022-01-07 16:52:10 +01:00
Steffen Jost
5aa096f56a fix(email): rename settings parameter and switch to safe default 2022-01-06 14:24:12 +01:00
Steffen Jost
272eb73203 chore(email): option to keep sender fixed and use replyto instead 2022-01-06 13:18:34 +01:00
Steffen Jost
2fb4dce95f chore(ldap): remove deprecated code 2022-01-05 13:57:07 +01:00
Steffen Jost
a5d5d8dbd6 fix(build): remove obsolete import 2022-01-05 13:43:17 +01:00
Steffen Jost
61cfdc8758 fix(ldap): allow punctuation in displaynames 2022-01-05 13:08:08 +01:00
Steffen Jost
8cdc2b5267 fix(smtp): use full email with name in reply-to field 2021-12-23 13:26:18 +01:00
Steffen Jost
4c8f7e1267 fix(email): instead of sender set reply-to only 2021-12-22 17:15:13 +01:00
Steffen Jost
991ee9c704 fix(ldap): update phone numbers and company data from ldap 2021-12-21 18:14:50 +01:00
Steffen Jost
40e885955f chore(translation): change campus to bueko and uni2work to fradrive 2021-12-20 17:52:04 +01:00
Steffen Jost
9697d8c7fa fix(ldap): fix type in department descriptor 2021-12-17 17:49:45 +01:00
Steffen Jost
a09d8b6dd0 Fix/ldap 2021-12-15 19:12:14 +01:00
Steffen Jost
074a33dc51 fix(status): route status exempt from approot normalisation, might not fix the issue yet 2021-12-08 16:34:55 +01:00
Steffen Jost
1c5dc74edf chore(terms): fix add term help message and allow alternative TermId Format 2021-11-26 15:57:15 +01:00
Steffen Jost
4846547f48 chore(status): show build age in days 2021-11-26 15:55:52 +01:00
Steffen Jost
abd85afe57 chore(settings): allow notls or none as smtptls setting for convenience 2021-11-25 17:30:40 +01:00
Steffen Jost
8f2bb43e2a chore(testdata): generate a user with simple password authentication 2021-11-25 12:45:33 +01:00
Steffen Jost
1bb500ab02 fix(status): nix files inaccessible on build server 2021-11-22 16:29:21 +01:00
Steffen Jost
c59ecf5019 fix(status): module imports fixed 2021-11-22 12:36:12 +01:00
Steffen Jost
6a2719071f chore(status): add time and container version to status page 2021-11-22 12:05:13 +01:00
Steffen Jost
9e156f407d fix(build): no change, just retry merge pipeline 2021-10-28 11:34:52 +02:00
Steffen Jost
8130eb6b7f fix(health): include compile time instead of version number 2021-10-28 11:22:33 +02:00
Steffen Jost
ecdb22aa61 fix(termidentifier): rational not working use derived day instances instead 2021-10-28 11:22:03 +02:00
Steffen Jost
621444829e fix(health): correct file path 2021-10-28 09:46:40 +02:00
Steffen Jost
f807b42089 chore(dayterms): change termidentifiers to single days complete 2021-10-27 20:03:02 +02:00
Steffen Jost
0c0cb06cdc chore(termdays): add function to step businessdays 2021-10-25 18:00:06 +02:00
Steffen Jost
6728106cd5 refactor(term): terms are now the day the lecture starts 2021-10-22 13:37:06 +02:00
Steffen Jost
426af0f183 chore(status): add very simple status page with nix/docker/version numbers 2021-10-21 16:26:56 +02:00
Steffen Jost
d2938e3ae9 fix(holidays): add proper memoization to yet unused function 2021-10-05 12:35:12 +02:00
Steffen Jost
f411fde42d fix(holidays): minor improvement to memoization 2021-10-04 16:43:58 +02:00
Steffen Jost
f1f510c24c chore(terms): add holiday presets; fix term edit error messages 2021-09-30 11:35:32 +02:00
Steffen Jost
538aa5b3b9 fix(fill): correct term start day guessing 2021-09-30 09:41:23 +02:00
Steffen Jost
94b4ff2e7e chore(term): generalize termToRational by using Enum instances 2021-09-24 14:25:10 +02:00
Steffen Jost
aeafe3118b fix(types): move term identifier start/end information to type definition; simplifies fill 2021-09-22 13:39:22 +02:00
Steffen Jost
9540f5ce0f chore(term): terms changed to quarters; does not compile yet. tests and fill are todos 2021-09-22 09:57:35 +02:00
Steffen Jost
24e55ce209 Merge branch 'cicd_changes' into add_company_admins
Not sure if the logo changes cause trouble elsewhere, but I want to test them more now.
2021-09-13 11:16:00 +02:00
Steffen Jost
c4fc67d4e8 chore: remove workflows 2021-09-07 12:57:53 +02:00
Steffen Jost
72d481e5d6 style(asidenav): use logo with text 2021-08-30 17:08:23 +02:00
Steffen Jost
74a7bb6a64 Merge branch 'cicd_changes' into 'master'
# Conflicts:
#   src/Model/Types/Submission.hs
2021-08-30 07:40:34 +00:00
Gregor Kleen
bd660ab7ad refactor: fix haddock 2021-08-27 20:42:34 +02:00
Steffen Jost
c6264f75b4 fix(haddock): hoogle.sh fails on a comment, turned into normal comment 2021-08-27 17:00:22 +02:00
Steffen Jost
4c0357410f chore(ui): change favicon and logo 2021-08-27 16:59:35 +02:00
Sarah Vaupel
b999cb4f28 Merge branch 'master' into 436-administrator-lecturertype 2021-08-20 14:06:55 +02:00
Sarah Vaupel
b80cb53649 Merge branch 'master' into 718-hinweis-auf-ablauffrist-in-e-mail-zum-passwort-zurucksetzen 2021-08-20 12:23:21 +02:00
Sarah Vaupel
d9d0e24762 Merge branch 'master' into 436-administrator-lecturertype 2021-08-20 12:20:48 +02:00
ros
9dc12de056 feat(sorting tutorial table): application restore 2021-08-19 09:13:26 +00:00
ros
b1787cd77e feat(tutor tabel sorting): dbt sorting tutors added 2021-08-19 09:13:26 +00:00
ros
482241d033 feat(sorting tutorial table): done 2021-08-19 09:13:26 +00:00
Gregor Kleen
7aadb6662b feat(corrections-r): allow csv exporting one line per submittor 2021-08-18 20:59:52 +02:00
Gregor Kleen
42f1eabb2c fix(csv): less quoting in semicolon separated lists 2021-08-18 19:00:53 +02:00
Gregor Kleen
fe8e4bbd4f feat(corrections-r): json export 2021-08-18 19:00:12 +02:00
Gregor Kleen
2a6248e3d5 feat(corrections-r): csv export
Fixes #705
2021-08-18 16:54:50 +02:00
Gregor Kleen
51522efc7c feat(corrections-r): authorship statement state 2021-08-17 14:38:52 +02:00
Gregor Kleen
57ea5fe329 refactor(corrections-r): modernize 2021-08-17 12:46:27 +02:00
Gregor Kleen
153af8c6b4 feat(corrections-r): filter/sort by pseudonym 2021-08-17 12:30:08 +02:00
ros
6d536c39bd feat(link password time): application restore 2021-08-17 11:44:52 +02:00
Gregor Kleen
1b6b781e82 fix(corrections-r): allow filtering by matriculation 2021-08-17 11:44:14 +02:00
ros
cb4ed8d988 feat(course admin): application restore 2021-08-17 11:42:14 +02:00
Gregor Kleen
abdc2a8926 refactor(corrections-r): modernize 2021-08-16 15:04:12 +02:00
Gregor Kleen
0184a5fe3b fix(submissions): maintain anonymity 2021-08-16 11:07:48 +02:00
Gregor Kleen
dcd5dddec8 fix(volatile-cluster-config): fix pathpiece instance 2021-08-13 14:06:31 +02:00
Gregor Kleen
b1143cb12b fix(jobs): more general no queue same 2021-08-13 13:53:13 +02:00
Gregor Kleen
24491b446b fix(interval jobs): avoid accumulation, reduce job size 2021-08-13 11:38:57 +02:00
Gregor Kleen
c0f69730b8 refactor: hlint 2021-08-12 18:32:32 +02:00
Gregor Kleen
7749238e55 feat(submissions): display authorship statements 2021-08-12 17:55:19 +02:00
ros
85006ff389 feat(link password time): restore application 2021-08-12 12:06:49 +02:00
Gregor Kleen
cbd6d7d2b0 feat(submission-show): display authorship statements 2021-08-06 19:10:15 +02:00
Gregor Kleen
d2e2456f62 feat(submissions): display submittors more explicitly 2021-08-06 16:22:53 +02:00
Gregor Kleen
625caa10b5 refactor(submission-helper): reduce number of db transactions 2021-08-06 12:26:44 +02:00
Gregor Kleen
d151b6fc14 fix(submissions): more precise feedback 2021-08-02 11:44:13 +02:00
Gregor Kleen
a17d2dc779 perf(authorization): generalize routes before pred exec for caching 2021-08-02 11:25:26 +02:00
Gregor Kleen
5bbb86aa77 fix(submissions): allow user to resolve themself for auth'stmt' 2021-07-30 19:18:02 +02:00
Gregor Kleen
66f5e96eca fix(submissions): don't leak info from corrected versions of files 2021-07-30 17:05:50 +02:00
Gregor Kleen
59c7c17665 fix(jobs): flush only partially for reliability 2021-07-30 16:42:04 +02:00
Gregor Kleen
871595e068 perf(auth): offload work creating list of correctors to db 2021-07-28 11:05:45 +02:00
Gregor Kleen
071df906da fix: build 2021-07-26 16:30:31 +02:00
Gregor Kleen
17ed2fad22 fix(workflows): disabled warning for top workflows/instances 2021-07-26 15:55:53 +02:00
Gregor Kleen
8634d20e2a feat(workflows): replace pages with warning if turned off 2021-07-26 10:39:30 +02:00
ros
df2a9bc20f feat(link password time): new time format 2021-07-23 09:53:40 +02:00
ros
0a6a1749d3 feat(course admin): no new-line 2021-07-22 21:01:54 +02:00
Gregor Kleen
33171a28d7 perf: cache system-message visibility times 2021-07-21 21:55:25 +02:00
Gregor Kleen
ef4734ebb6 fix(arc): actually invalidate 2021-07-21 21:55:04 +02:00
Gregor Kleen
3a2d031bb5 fix(authorship-statements): resolve exam-part to exam properly 2021-07-21 14:46:54 +02:00
Gregor Kleen
9df0686086 feat: load shedding 2021-07-21 12:37:54 +02:00
Gregor Kleen
9fd95d181c fix: build 2021-07-20 12:17:27 +02:00
Gregor Kleen
5e969825ad feat: show authorship statement requirement for sheet
also default authorship statements for exam to on iff a default
definition exists for the school
2021-07-18 21:05:01 +02:00
Gregor Kleen
34b3e6ae21 feat: demand authorship statements 2021-07-18 00:16:32 +02:00
Gregor Kleen
2d95f353c1 feat: i18n form 2021-07-18 00:16:32 +02:00
Gregor Kleen
a9fe7487a6 chore: fix tests 2021-07-18 00:16:32 +02:00
Sarah Vaupel
09a1c829bd refactor(sheets): remove obsolete form validation TODOs 2021-07-18 00:16:32 +02:00
Sarah Vaupel
7192cb527c fix(sheets): fixhance sheet authship form section 2021-07-18 00:16:32 +02:00
Sarah Vaupel
491f7d3582 chore: refactor authship statement messages 2021-07-18 00:16:31 +02:00
Sarah Vaupel
0cd8f4c02f fix(exams): prefill with school authship statement in optional mode 2021-07-18 00:16:31 +02:00
Sarah Vaupel
bf059a1320 fix(exams): remove deprecated/unnecessary form validation wrt. authship statements 2021-07-18 00:16:31 +02:00
Sarah Vaupel
ac86832b34 fix(exams): correctly treat school-mode optional as off by default 2021-07-18 00:16:31 +02:00
Sarah Vaupel
5c813ed02b refactor(exams): restruct case wrt. aformSection 2021-07-18 00:16:31 +02:00
Sarah Vaupel
4109db6f81 fix(exams): fixhance exam authship form section 2021-07-18 00:16:31 +02:00
Sarah Vaupel
c5b3ac65c8 chore(schools): document form failure with authship mode none as FIXME 2021-07-18 00:16:30 +02:00
Sarah Vaupel
227264743e fix(schools): insert correct authorship statement definition for exam-unrelated sheets 2021-07-18 00:16:30 +02:00
Sarah Vaupel
8fb49dd602 fix(schools): switch authorship modes to required in form 2021-07-18 00:16:30 +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
1e87aa2dfe refactor(exams): add FIXME markers (exam form still broken) 2021-07-18 00:16:30 +02:00
Sarah Vaupel
fe78377fae fix(exams): better behaviour for optional statements wrt school default 2021-07-18 00:16:30 +02:00
Sarah Vaupel
0082135c56 fix(exams): fix form validation wrt non-empty statements 2021-07-18 00:16:30 +02:00
Sarah Vaupel
bf7b25ca9e feat(exams): do form validation 2021-07-18 00:16:29 +02:00
Sarah Vaupel
fe5111c25f chore(exams): get authorship statement content from template 2021-07-18 00:16:29 +02:00
Sarah Vaupel
53a8f1ba12 fix(schools): fix schools form wrt. discouraged modes 2021-07-18 00:16:29 +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
57a259d8a2 feat(exams): use template authorship statement settings if applicable 2021-07-18 00:16:29 +02:00
Sarah Vaupel
0392297ddb feat(exams): first do-nothing stub for exam-wide authorship statements 2021-07-18 00:16:28 +02:00
Sarah Vaupel
8bb61401a7 fix(exams): set use-custom correctly if forced 2021-07-18 00:16:28 +02:00
Sarah Vaupel
abd68ac032 feat(exams): display school default in form 2021-07-18 00:16:28 +02:00
Sarah Vaupel
22dfd33aca feat(exams): disable and set use-custom field according to school setting 2021-07-18 00:16:28 +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
0e62073760 fix(schools): rename messages 2021-07-18 00:16:27 +02:00
Sarah Vaupel
c3a75d3a75 refactor(messages): move to categories 2021-07-18 00:16:27 +02:00
Sarah Vaupel
202fd76940 refactor: create authorship statement message category 2021-07-18 00:16:27 +02:00
Sarah Vaupel
a39a0d7c87 feat(sheets): fetch school statement as statement default 2021-07-18 00:16:27 +02:00
Sarah Vaupel
44473b4575 feat(sheets): display authship req on SShowR 2021-07-18 00:16:26 +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
579371cffd fix(schools): perform authorship statement inserts 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
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
ros
4490e9ad20 feat(link password time): done 2021-07-09 17:01:30 +02:00
Gregor Kleen
576fccb522 fix: avoid subSelectForeign join issues 2021-07-08 20:20:40 +02:00
ros
2321216b0f feat(link password time): done 2021-07-08 14:12:05 +02:00
ros
89e1d675c3 feat(lecturer type): aenderung 2021-07-08 11:01:09 +02:00
Gregor Kleen
ef7fde937e fix(cache): atomicity & workflow instance invalidations 2021-07-06 10:18:07 +02:00
Gregor Kleen
32efdae839 feat(workflows): update instances from definitions 2021-07-05 22:13:00 +02:00
Gregor Kleen
29de910633 refactor: hlint 2021-07-05 19:44:36 +02:00
Gregor Kleen
3c366a3627 Merge branch 'master' of gitlab2.rz.ifi.lmu.de:uni2work/uni2work 2021-07-05 19:27:21 +02:00
Gregor Kleen
5c5cbaddf8 fix(workflows): workflow-definition edit translations 2021-07-05 17:56:07 +02:00
ros
dc5fc3f710 feat(course material): merge-request suggestions 2021-07-05 16:58:00 +02:00
Sarah Vaupel
617eb7ff94 Apply 1 suggestion(s) to 1 file(s) 2021-07-05 16:57:59 +02:00
Sarah Vaupel
bc09bedb84 Apply 1 suggestion(s) to 1 file(s) 2021-07-05 16:57:59 +02:00
Sarah Vaupel
363762081e Apply 1 suggestion(s) to 1 file(s) 2021-07-05 16:57:59 +02:00
Sarah Vaupel
bee8f84eb3 Apply 1 suggestion(s) to 1 file(s) 2021-07-05 16:57:59 +02:00
ros
c09acbbf8a feat(course material): runDB für cid nur einmal 2021-07-05 16:57:10 +02:00
Gregor Kleen
08ec676616 Apply 1 suggestion(s) to 1 file(s) 2021-07-05 16:57:10 +02:00
Gregor Kleen
a7b41e9cc8 Apply 1 suggestion(s) to 1 file(s) 2021-07-05 16:57:10 +02:00
Gregor Kleen
95d1b41c60 Apply 1 suggestion(s) to 1 file(s) 2021-07-05 16:57:10 +02:00
ros
d8b1f9788c feat(course material): small empty-bug fixed 2021-07-05 16:57:10 +02:00
ros
decdda359d feat(course material): auto vorschläge für materialtype 2021-07-05 16:57:09 +02:00
ros
3a9622dfb8 feat(course material): materialdescription search implemented 2021-07-05 16:55:48 +02:00
ros
89e9887fe1 feat(course material): materialDescription in progress 2021-07-05 16:45:12 +02:00
ros
90e4a620f0 feat(course material): first two filters 2021-07-05 16:45:12 +02:00
ros
15689c597e feat(course admin): done 2021-07-05 12:53:17 +02:00
Gregor Kleen
3c0a41f5a1 Merge branch 'version-bumps' 2021-06-29 14:34:54 +02:00
Gregor Kleen
03226eca6a fix(health): monitor flush by check interval not flush interval 2021-06-28 10:23:18 +02:00
Gregor Kleen
9676615c55 fix: fix creating new terms 2021-06-28 09:44:24 +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
79ec5184e6 chore: minio-runner 2021-06-24 10:47:43 +02:00
Gregor Kleen
426c40f0a4 feat(workflows): enum fields 2021-06-22 18:36:36 +02:00
Gregor Kleen
aa1c0c8a3e chore(health): monitor job flushes 2021-06-21 15:53:42 +02:00
Gregor Kleen
6c12737ad9 chore(allocation-info): extend for lecturers
Fixes #619
2021-06-18 15:43:46 +02:00
Gregor Kleen
de39686d89 feat(course-list): filter by allocation
Fixes #715
2021-06-17 17:08:21 +02:00
Gregor Kleen
1e6f6e4296 chore: fix tests 2021-06-16 23:15:01 +02:00
Gregor Kleen
5e38f03a85 feat(allocations): admin-interface registrations
Fixes #677
2021-06-16 18:15:22 +02:00
Gregor Kleen
6da8ad3481 feat(allocations): display number of ratings and vetos to admins 2021-06-15 17:40:19 +02:00
Gregor Kleen
6a1a64a611 feat(allocations): delete allocation-users 2021-06-15 13:55:37 +02:00
Gregor Kleen
300c378786 feat(allocations): highlight app's of users without alloc'-user 2021-06-15 12:25:11 +02:00
Gregor Kleen
cde0122529 feat(news): active allocations for lecturers 2021-06-10 21:08:54 +02:00
Gregor Kleen
6aacf40125 chore(allocations): no more Not'AllocationAllocation & better text
Fixes #689
2021-06-10 13:15:28 +02:00
Gregor Kleen
4daf33a1a0 feat(allocations): edit allocation-user and their applications 2021-06-10 12:29:25 +02:00
Gregor Kleen
b742731511 feat(workflows): restrict day field wrt. current time
Also fixes wrt. CaptureDateTime
2021-06-09 14:15:47 +02:00
Gregor Kleen
5944a174bc feat(workflows): new field CaptureDateTime 2021-06-09 13:12:01 +02:00
Gregor Kleen
df073ef794 feat(terms): time based term activity 2021-06-08 15:13:08 +02:00
Gregor Kleen
5320a4fe98 feat(allocations): create & edit, list & download matching logs 2021-06-08 00:47:47 +02:00
Gregor Kleen
93a829b81b fix: added uw-enter-as-tab to CCommR subject field 2021-06-07 15:13:04 +02:00
Gregor Kleen
5035dff902 fix(submissions): fix distribution without consideration for deficit
Fixes #713
2021-06-07 14:48:27 +02:00
Gregor Kleen
fd704e7d23 chore: local hoogle 2021-06-07 09:58:55 +02:00
Gregor Kleen
d7f2d11392 feat(submission-list): bulk download submission originals
Fixes #707
2021-06-03 10:59:22 +02:00
Gregor Kleen
adcd5d5aee fix: better pathPieceJoined 2021-06-02 17:24:24 +02:00
Gregor Kleen
8cfdd28651 fix: valid binary ci instance 2021-06-02 17:23:48 +02:00
Gregor Kleen
d79a539f71 fix(memcached): don't 500 upon hitting item size limit 2021-06-02 16:46:24 +02:00
Gregor Kleen
6f04a6b693 fix(auth): properly restrict various auth by school 2021-06-01 18:09:21 +02:00
ros
d6ce0c47d9 feat(participants): corrections 2 2021-05-26 17:16:47 +02:00
ros
fd11121544 feat(participants): corrections 2021-05-25 17:14:36 +02:00
ros
02354f0998 feat(participants): second version, Intersection added 2021-05-24 12:20:26 +02:00
ros
0a3fd23e22 feat(participants): first finished verson 2021-05-24 11:45:28 +02:00
ros
3b20ec27aa Merge branch '663-teilnehmerschnitt' of gitlab2.rz.ifi.lmu.de:uni2work/uni2work into 663-teilnehmerschnitt 2021-05-22 12:00:11 +02:00
ros
6f3243d90b feat(participants): small Name-change 2021-05-22 11:59:46 +02:00
Winnie Ros
095110d948 Merge branch 'master' of gitlab2.rz.ifi.lmu.de:uni2work/uni2work into 663-teilnehmerschnitt 2021-05-22 10:31:26 +02:00
ros
eced7781ae feat(participants): small Name-change 2021-05-21 17:23:38 +02:00
ros
b96327b18d feat(participants): basic funktions added 2021-05-21 16:55:02 +02:00
Gregor Kleen
575fadcd8c fix(submissions): hide correction-only files 2021-05-19 20:50:48 +02:00
Gregor Kleen
d59f686021 fix: properly apply auth to corrections in sheet table
Fixes #700
2021-05-19 14:50:54 +02:00
Gregor Kleen
21bbb92d4c feat: allow examFinished before examEnd 2021-05-19 14:50:07 +02:00
Gregor Kleen
79d4b72780 chore: ensure translations are sensible
Also fix some translations
2021-05-19 13:12:59 +02:00
ros
a4bd1159c2 refactor(utils.set): new utils.set folder with set-functions added 2021-05-13 16:18:59 +02:00
Gregor Kleen
c6a6ec721c feat(submissions): optionally disable consideration for deficit 2021-05-11 14:17:12 +02:00
Gregor Kleen
330a2fd974 Merge branch 'master' into merge-requests/37 2021-05-10 10:16:01 +02:00
Gregor Kleen
eec9a3974f fix: update imprint & add instructions for help 2021-05-07 20:41:32 +02:00
Gregor Kleen
454a91702b fix(workflow-workflow-list): restore default sorting 2021-05-06 14:22:22 +02:00
Gregor Kleen
e95abc97ee refactor: stabilize showCompactCorrectorLoad 2021-05-05 13:08:12 +02:00
Gregor Kleen
e55c6d795f fix: restore workflowWorkflowList columns 2021-05-05 11:59:59 +02:00
Gregor Kleen
c2212a86e6 refactor: hlint 2021-05-04 19:40:50 +02:00
Gregor Kleen
605abda65a refactor: improve dbTable performance 2021-05-04 14:05:00 +02:00
ros
b86179a7cc refactor(messages): shriked misc-file 2021-05-03 20:18:32 +02:00
ros
a1eaed8633 refactor(messages): eliminated uniworx_new + hlint 2021-05-03 18:19:26 +02:00
Gregor Kleen
407aa5edde refactor(participants-intersect): do intersect in haskell not sql 2021-05-03 11:44:05 +02:00
ros
c0a614ae6c refactor(messages): splitting misc finished 2021-04-26 16:13:36 +02:00
ros
84386c9547 refactor(messages): splitted misc to a (almost) minimal 2021-04-26 15:23:39 +02:00
Winnie Ros
8ad82d7dcb refactor(messages): bugs fixed 2021-04-18 13:49:29 +02:00
Gregor Kleen
d8878a905e feat(workflows): list involved users 2021-04-15 14:38:52 +02:00
Gregor Kleen
eb2cad341f chore: redundant import 2021-04-14 14:32:52 +02:00
Gregor Kleen
c89e02fad2 chore: redundant constraint 2021-04-14 12:52:00 +02:00
Winnie Ros
690872d679 Merge branch 'master' into fix/split-message-files 2021-04-14 09:14:36 +02:00
Gregor Kleen
9087e241c1 chore: remove redundant constraints 2021-04-14 07:23:09 +02:00
Gregor Kleen
30015b2e09 chore: update comment wrt. course-favourite-off icon 2021-04-13 20:10:01 +02:00
Gregor Kleen
87ab97de00 style: fancify favourite toggle 2021-04-13 20:08:10 +02:00
Wolfgang Witt
45fd92aa04 chore: add getCFavouriteR handler+route 2021-04-13 15:06:27 +02:00
Wolfgang Witt
16abbc5da9 chore: use requireAuthPair (+ fix type errors) 2021-04-13 15:06:26 +02:00
Wolfgang Witt
d6e39fb07c chore: unify runDB calls 2021-04-13 15:06:26 +02:00
Wolfgang Witt
89e7345b8c Apply 2 suggestion(s) to 2 file(s) 2021-04-13 15:06:26 +02:00
Wolfgang Witt
ca3d2713e6 Apply 1 suggestion(s) to 1 file(s) 2021-04-13 15:06:26 +02:00
Wolfgang Witt
544f5af78d chore: reset Handler.Course.Show to master state
remove two new lines leftover from previous edited state
2021-04-13 15:06:25 +02:00
Wolfgang Witt
0e7e042ef8 chore: only show favourite-toggle in sidenav + code cleanup 2021-04-13 15:06:25 +02:00
Wolfgang Witt
7a1dc57134 chore: try out different toggle-button locations 2021-04-13 15:06:24 +02:00
Wolfgang Witt
4ddbcc4217 chore: use css classes 2021-04-13 15:06:24 +02:00
Wolfgang Witt
f99d071601 chore: newline experiments 2021-04-13 15:06:24 +02:00
Wolfgang Witt
712dcfbf9d chore: adjust icon size 2021-04-13 15:06:24 +02:00
Wolfgang Witt
9da26e9ae1 chore: add BCLink-class to avoid outline 2021-04-13 15:06:24 +02:00
Wolfgang Witt
ad6671ed10 chore: use star icons 2021-04-13 15:06:23 +02:00
Wolfgang Witt
ebe676d39d refactor: hlint 2021-04-13 15:06:23 +02:00
Wolfgang Witt
7896c0bb16 chore: remove special case for participants 2021-04-13 15:06:23 +02:00
Wolfgang Witt
664c915065 chore: remove debug messages 2021-04-13 15:06:23 +02:00
Wolfgang Witt
56c26f3e51 chore: remove -Wwarn marker 2021-04-13 15:06:22 +02:00
Wolfgang Witt
91a7e11987 chore: implement favourite/blacklist toggle 2021-04-13 15:06:22 +02:00
Wolfgang Witt
3f48d5aa0c chore: only display favouriteToggle-Button when logged in 2021-04-13 15:06:22 +02:00
Wolfgang Witt
942c8bd59d chore: only write favourites to db when userMaxFavourites>0 2021-04-13 15:06:21 +02:00
Wolfgang Witt
0556b769cf refactor: don't interpret during lookup 2021-04-13 15:06:21 +02:00
Wolfgang Witt
0605e940c6 refactor: use the same function to lookup storedFavouriteReason 2021-04-13 15:06:21 +02:00
Wolfgang Witt
f0ddd680d1 chore: lookup current favourite reason in DB 2021-04-13 15:06:21 +02:00
Wolfgang Witt
e23a5a64cc chore: button only redirects to postCFavouriteR
actual swapping should happen there
still need to display the correct button
2021-04-13 15:06:21 +02:00
Wolfgang Witt
6b9c0849e4 chore: show some Icon calling postCFavouriteR 2021-04-13 15:06:20 +02:00
Gregor Kleen
9859c2e99c fix: prevent deleting sheet-referenced exam parts
Fixes #681
2021-04-13 14:51:31 +02:00
Gregor Kleen
5c709f1bbb fix: build 2021-04-13 12:18:12 +02:00
Winnie Ros
dbbc9c4a69 refactor(messages): continuing 2021-04-12 16:37:56 +02:00
Gregor Kleen
37cdc775b5 feat: partial support for lsf import
Work on #686
2021-04-12 11:54:13 +02:00
Gregor Kleen
3a92a1c1f2 chore: inline error message into help requests 2021-04-11 20:47:05 +02:00
Gregor Kleen
1717785a51 refactor: be more explicit about ARC strictness 2021-04-09 12:27:04 +02:00
Gregor Kleen
53a54a343d refactor: hlint 2021-04-08 19:33:46 +02:00
Gregor Kleen
939ab37588 feat: additional general purpose caching tier (memcachedLocal) 2021-04-08 18:36:06 +02:00
Winnie Ros
c2ea33066f refactor(messages): continuing utils-folder 2021-04-08 18:15:21 +02:00
Winnie Ros
2e57c81a75 refactor(messages): beginning utils-folder 2021-04-07 10:58:35 +02:00
Winnie Ros
8a9660c2d4 refactor(messages): user-folder 2021-04-06 12:57:48 +02:00
Winnie Ros
fadd3f1a79 refactor(messages): tutorial-folder 2021-04-06 12:37:55 +02:00
Winnie Ros
cbae982287 refactor(messages): submission-folder 2021-04-03 11:13:00 +02:00
Winnie Ros
cdaf1420e8 refactor(messages): admin-folder 2021-04-02 16:59:09 +02:00
Winnie Ros
f51679697f refactor(messages): sheet-folder 2021-04-02 15:53:10 +02:00
Gregor Kleen
d65bd6889b refactor: improve cryptoid caching 2021-03-30 20:02:16 +02:00
Gregor Kleen
6f291b2e68 feat(course-users-table): json export 2021-03-30 15:49:53 +02:00
Winnie Ros
607fb12fa4 refactor(messages): course-bugs fixed, exam/* finished 2021-03-30 13:22:13 +02:00
Gregor Kleen
af3ec98de5 fix(admin-tokens): avoid option none 2021-03-30 11:23:14 +02:00
Wolfgang Witt
5c56745042 chore: unify runDB calls 2021-03-29 16:03:40 +02:00
Wolfgang Witt
55319c8c50 fix: add missing do 2021-03-29 16:03:40 +02:00
Wolfgang Witt
67d6fd7d43 fix: correctly apply suggestion 2021-03-29 16:03:39 +02:00
Wolfgang Witt
fcc5930a3c Apply 1 suggestion(s) to 1 file(s) 2021-03-29 16:03:39 +02:00
Wolfgang Witt
16cbc78878 fix: correctly report NoUsers for ExamRoomRandom
preselection was ignored for the check so far
2021-03-29 16:03:38 +02:00
Wolfgang Witt
e00a2b074b chore: nudges for ExamRoomRandom have a bigger effect 2021-03-29 16:03:38 +02:00
Wolfgang Witt
f9b545952d chore: disable accept button for failing results 2021-03-29 16:03:38 +02:00
Wolfgang Witt
02589e4d00 fix: correct rebase-sourced error 2021-03-29 16:03:37 +02:00
Wolfgang Witt
ea32fdfa91 chore: convert buttons to icons 2021-03-29 16:03:37 +02:00
Wolfgang Witt
84a50646b0 chore: strikethrough names of ignored occurrences 2021-03-29 16:03:37 +02:00
Wolfgang Witt
25fa6ef0d7 refactor: hlint 2021-03-29 16:03:36 +02:00
Wolfgang Witt
a36f0deb09 chore: always show the correct ignore/reconsider button 2021-03-29 16:03:36 +02:00
Wolfgang Witt
b2d6eada17 refactor: calculate mimizeRooms before examAutoOccurrence 2021-03-29 16:03:36 +02:00
Wolfgang Witt
d5bd5042ad fix: correctly handle original minimizeRooms-flag 2021-03-29 16:03:36 +02:00
Wolfgang Witt
732df50530 fix: sort occurrences in the right order 2021-03-29 16:03:36 +02:00
Wolfgang Witt
30fb1462ab chore: make tests compile again 2021-03-29 16:03:36 +02:00
Wolfgang Witt
ce0f48b82a chore: don't redirect, but show a nullResult for Left 2021-03-29 16:03:35 +02:00
Wolfgang Witt
fabf56c164 fix: check space of occurrences after ignoring 2021-03-29 16:03:35 +02:00
Wolfgang Witt
11664dcd82 fix: buttons know about ALL actions from other buttons 2021-03-29 16:03:35 +02:00
Wolfgang Witt
13af035223 chore: correct button classes 2021-03-29 16:03:35 +02:00
Wolfgang Witt
65d0f24d71 chore: rename btn-constructors 2021-03-29 16:03:35 +02:00
Wolfgang Witt
362e2cf00d chore: also return sorted-state of occurrences 2021-03-29 16:03:34 +02:00
Wolfgang Witt
f6cbf99245 fix: oops 2021-03-29 16:03:34 +02:00
Wolfgang Witt
a35a481f33 chore: create (incomplete) ignore/reconsider buttons 2021-03-29 16:03:34 +02:00
Wolfgang Witt
25262aa7a5 chore: allow ignoring occurances based on a curated set 2021-03-29 16:03:34 +02:00
Wolfgang Witt
ddb68eeb98 chore: allow nudges between unrestricted rooms (random) 2021-03-29 16:03:33 +02:00
Wolfgang Witt
3ab8be2e0d chore: reimagine nudge usage
- scale appropriately for unrestricted sizes
- don't behave weirdly for very large rooms
2021-03-29 16:03:33 +02:00
Wolfgang Witt
ff5d27cdf3 refactor: don't store order of unrestrictedOccurrences 2021-03-29 16:03:33 +02:00
Wolfgang Witt
2be9d76af2 fix: use extraUsers instead of extraCapacity for unrestricted pseudo-capacity 2021-03-29 16:03:33 +02:00
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
ae3e1b6266 Apply 1 suggestion(s) to 1 file(s) 2021-03-29 16:03:33 +02:00
Wolfgang Witt
74219c632d Apply 2 suggestion(s) to 2 file(s) 2021-03-29 16:03:32 +02:00
Wolfgang Witt
6e20c22f7d chore: introduce a real cost function for unrestricted rooms 2021-03-29 16:03:32 +02:00
Wolfgang Witt
b7d7252649 refactor: hlint 2021-03-29 16:03:32 +02:00
Wolfgang Witt
d34f674c3e chore: use ∞ to display unrestricted room size 2021-03-29 16:03:31 +02:00
Wolfgang Witt
03a0899f5f chore: chase error messages 2021-03-29 16:03:31 +02:00
Wolfgang Witt
1c24b8e5e2 chore: display unrestricted rooms as "-" 2021-03-29 16:03:31 +02:00
Wolfgang Witt
7e425754fc chore: inform examAutoOccurrence about unrestricted room sizes 2021-03-29 16:03:31 +02:00
Wolfgang Witt
d3661b69fd chore: create ExamRoomCapacity-type
_examRoomCapacityIso for convenience
2021-03-29 16:03:30 +02:00
Gregor Kleen
5dad0a79c7 chore: improve faq & results mail for allocations 2021-03-29 10:47:14 +02:00
Winnie Ros
ee7f32f5cc refactor(messages): course finished, templates-msgs added 2021-03-25 13:07:43 +01:00
Winnie Ros
580c62067a refactor(messages): course finished, templates missing 2021-03-25 11:13:16 +01:00
Gregor Kleen
0e50e6ebce perf: try to reduce db-conn-load of cached auth 2021-03-24 21:43:24 +01:00
Gregor Kleen
2f85cea1de perf: reduce db-conn-load of tokens 2021-03-24 17:35:40 +01:00
Gregor Kleen
ff8270042f fix: remove cached-db-runner
Observed "connection disconnected" from persistent on 25.5.0
CachedDBRunner seemed suspicious.
2021-03-23 21:53:33 +01:00
Gregor Kleen
3ff97aca77 refactor: hlint 2021-03-23 15:52:28 +01:00
Gregor Kleen
c23222aef6 perf: try to reduce db conn load of site-layout/nav 2021-03-23 15:18:37 +01:00
Gregor Kleen
da724654ed perf: try to reduce db connection load of auth 2021-03-23 11:07:05 +01:00
Gregor Kleen
1036926470 feat(course-participants): csv export first name/surname separately 2021-03-22 12:00:07 +01:00
Gregor Kleen
383d709620 refactor: give glossaryTerms better type 2021-03-19 16:58:10 +01:00
Gregor Kleen
8795edd1fa feat(submissions): also warn correctors about multiple submissions 2021-03-19 16:25:48 +01:00
Gregor Kleen
c19a00dcef feat(submissions): warn about multiple submissions for same user 2021-03-19 16:09:15 +01:00
Gregor Kleen
9d1f1c6910 fix(auth): wrong caching for external-exam-staff 2021-03-19 14:20:49 +01:00
Gregor Kleen
72191315b6 fix(submissions): improve submission process
Fixes #675
2021-03-19 14:13:32 +01:00
Gregor Kleen
78d0f2522d feat(exams): exam finish button 2021-03-19 00:05:56 +01: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
0c37cbff64 chore: generalize embedRenderMessage 2021-03-18 18:47:34 +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
8bdaae0881 fix(csv-export): mime confusion 2021-03-17 21:38:18 +01:00
Gregor Kleen
5c513946c1 feat(csv-export): .xlsx 2021-03-17 21:15:00 +01:00
Gregor Kleen
f09f851e2b perf(admin-tokens): worse but faster selection of active users 2021-03-17 09:45:13 +01:00
Gregor Kleen
a314f64a70 fix: weight random token impersonation towards active users 2021-03-17 00:19:45 +01:00
Winnie Ros
51a90bbb5f refactor(messages): course/application/event 2021-03-16 16:40:57 +01:00
Gregor Kleen
600bbe5d7e feat: admins can efficiently generate many tokens for random users 2021-03-16 16:02:00 +01:00
Winnie Ros
8d9d3c613f refactor(messages): msgmenu only for navLabel, gender-neutral language navigation 2021-03-16 11:43:00 +01:00
Winnie Ros
c796bd5934 refactor(messages): navigation messages in new folder 2021-03-15 18:26:23 +01:00
Winnie Ros
7b10a9ae0f refactor(messages): breadcrumbs extracted and added 2021-03-15 17:23:30 +01:00
Wolfgang Witt
9b0adab023 chore: extende random distribution with nudges 2021-03-15 10:45:37 +00:00
Wolfgang Witt
9c928b0375 fix: make sure to report NoUsers, regardless of rule 2021-03-15 10:45:37 +00:00
Wolfgang Witt
e13049d958 chore(test): inform test about changed type signature 2021-03-15 10:45:37 +00:00
Wolfgang Witt
163715afc8 chore: hlint 2021-03-15 10:45:37 +00:00
Wolfgang Witt
a7671dbec6 chore: remove TODO marker 2021-03-15 10:45:37 +00:00
Wolfgang Witt
767090ded1 chore: check for no users first 2021-03-15 10:45:37 +00:00
Wolfgang Witt
5dc37a07c1 chore: improve error messages 2021-03-15 10:45:37 +00:00
Wolfgang Witt
0765f4b925 chore: chasing type-errors
messages are still temporary
2021-03-15 10:45:37 +00:00
Wolfgang Witt
e03326e1ac chore: examAutoOccurrence converted to Either 2021-03-15 10:45:37 +00:00
Wolfgang Witt
72d42baec5 chore: remove redundant seq 2021-03-15 10:45:37 +00:00
Wolfgang Witt
6dedb2b2a0 Apply 1 suggestion(s) to 1 file(s) 2021-03-15 10:45:37 +00:00
Wolfgang Witt
6ae1aeaeb0 Apply 5 suggestion(s) to 1 file(s) 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
Wolfgang Witt
ad67c2e0e2 chore: remove trailing 'A' from surname-range-start
- still add it if the previous end was too short
- this way overall shorter descriptions are possible
- in rare cases (at maxTagLength) this  prevented a description to be created
2021-03-15 10:45:37 +00:00
Wolfgang Witt
c99d96ecb8 fix: handle rare cases where a mappingDescription with start>end would be produced 2021-03-15 10:45:37 +00:00
Wolfgang Witt
cd07a56a9f fix: correctly calculate maximum user name length 2021-03-15 10:45:37 +00:00
Wolfgang Witt
daceac95fc chore(test): relax requirements for justified nullResult
Instances with bigger user buckets than the smallest room might correctly fail
Thus, don't report an error for them.
2021-03-15 10:45:37 +00:00
Wolfgang Witt
7e1b75c2e1 fix: shown ranges "include" special mappings
previously, they stopped just before leading to clashes with the next range
e.g. Äm would cause Am as mapping end with the next starting at An
Now, the mapping end is AZ with the next starting at BA
2021-03-15 10:45:37 +00:00
Wolfgang Witt
4f4cd394db chore: add missing+remove redundant imports 2021-03-15 10:45:37 +00:00
Wolfgang Witt
b974942f07 chore: matriculation numbers limited same length again
- this time as suffixes
- also start range description with full used length
  otherwise suffix-description is confusing
2021-03-15 10:45:37 +00:00
Wolfgang Witt
f0a79dff65 chore: rewrite ExamRoomRandom mapping, so it actually respects room sizes 2021-03-15 10:45:37 +00:00
Wolfgang Witt
a559ac74cb chore: include non-ascii names in range-calculation 2021-03-15 10:45:37 +00:00
Wolfgang Witt
8e4cb0917d fix: make sure unfortunate combination doesn't only produce 0-9 ranges for matrikelnummer 2021-03-15 10:45:37 +00:00
Wolfgang Witt
fc35fd26c1 fix: mappingDescription doesn't overlap for the first n rooms/with small names/matrikelnummer 2021-03-15 10:45:37 +00:00
Wolfgang Witt
6ccc192426 chore: remove -Wwarn 2021-03-15 10:45:37 +00:00
Wolfgang Witt
5480e2d7b7 chore: names with non-ascii prefix get a ExamOccurrenceMappingSpecial 2021-03-15 10:45:37 +00:00
Wolfgang Witt
d60f93561f fix: make sure it compiles again + add 2-letter name 2021-03-15 10:45:37 +00:00
Wolfgang Witt
873d5a02ad fix: ensure termination for non-{'A'..'Z']-names 2021-03-15 10:45:37 +00:00
Wolfgang Witt
344bd420cd chore: don't use suffix of a prefix for mapping description 2021-03-15 10:45:37 +00:00
Wolfgang Witt
8f2b31acef chore: add padding to mappingRange if names are too short 2021-03-15 10:45:37 +00:00
Wolfgang Witt
5a3b2881c4 chore: rewrite resultAscList 2021-03-15 10:45:37 +00:00
Wolfgang Witt
f0f6706bcf chore: remove redundant MultiWayIf 2021-03-15 10:45:37 +00:00
Wolfgang Witt
479f4326b2 chore: filter out all empty/prefilled rooms
They might produce unnecessary null-results
2021-03-15 10:45:37 +00:00
Wolfgang Witt
317b95be31 fix: check if number of relevant user is >0 to prevent crash 2021-03-15 10:45:37 +00:00
Wolfgang Witt
44a52e034f chore: filter out pre-filled rooms 2021-03-15 10:45:37 +00:00
Wolfgang Witt
4fc05351fa fix: user with a pre-assigned room count towards the capacity limit 2021-03-15 10:45:37 +00:00
Wolfgang Witt
e487ceff58 fix: make sure line-break algorithm respects available lines 2021-03-15 10:45:37 +00:00
Wolfgang Witt
eaf245beaa fix: examAutoOccurence no longer user >100% of a room 2021-03-15 10:45:37 +00:00
Wolfgang Witt
7b0fd61f7f fix: spelling plugin had a suggestion; actually Hello World commit :p 2021-03-15 10:45:37 +00:00
Gregor Kleen
65814c005e fix(authorisation): inverted logic for empty 2021-03-13 17:53:44 +01:00
Gregor Kleen
e88b6d6bab fix: invalidate nav caches 2021-03-12 18:39:00 +01:00
Gregor Kleen
6fbef0433c perf: additional/improved auth caching 2021-03-12 14:59:38 +01:00
Winnie Ros
0dd8aa46e4 refactor(messages): split of support 2021-03-12 14:08:47 +01:00
Winnie Ros
5a9bf0de2e refactor(messages): split of settings completed 2021-03-12 13:15:54 +01:00
Gregor Kleen
896bd41e3b fix(auth-caching): submission-group
Also improve metrics wrt. auth tag eval
2021-03-11 16:22:52 +01:00
Winnie Ros
1ff05eb243 refactor(messages): new subcategory message/auth 2021-03-09 13:27:20 +01:00
Gregor Kleen
683a7da5fe refactor: hlint 2021-03-08 13:08:54 +01:00
Gregor Kleen
55a9c8a5ae perf: skip favouriteQuickActions under db conn pressure 2021-03-08 12:55:48 +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
38f16ebac3 refactor: hlint 2021-03-08 09:24:59 +01:00
Gregor Kleen
ea33d844cc feat(messages): mkMessageAddition 2021-03-06 22:31:20 +01:00
Gregor Kleen
bb877eb813 feat(messages): implement custom parser for message files 2021-03-06 20:13:55 +01:00
Gregor Kleen
6d93e3e8bc refactor: hlint 2021-03-01 13:12:30 +01:00
Gregor Kleen
cf33f0af84 fix: build 2021-03-01 07:50:08 +01:00
Gregor Kleen
23ff9d9222 feat(db): track source of database accesses 2021-02-26 11:00:44 +01:00
Gregor Kleen
6115b83bb3 fix(jobs): wake more often during waitUntil 2021-02-24 12:46:06 +01:00
Gregor Kleen
b9cc5b9970 feat(transaction-log): more details about submission files 2021-02-24 12:39:32 +01:00
Gregor Kleen
56e9212e65 chore: reduce logging 2021-02-24 10:12:48 +01:00
Gregor Kleen
d801a2f84a feat(monitoring): observe database connection opening/closing 2021-02-23 20:33:05 +01:00
Gregor Kleen
50fdcb4540 feat(db): provide our own implementation of connection pooling
Also allows monitoring pool status (available/in use connections,
total number of takes from pool)

This reverts commit 35ac503bf9.
2021-02-23 16:30:24 +01:00
Gregor Kleen
35ac503bf9 feat(db): optionally disable some db connection pooling 2021-02-21 20:44:45 +01:00
Gregor Kleen
fb6ae089c6 feat(bot-mitigations): only logged in table sorting 2021-02-21 13:39:47 +01:00
Gregor Kleen
db48bbb776 fix(jobs): use more read only/deferrable transactions 2021-02-20 11:16:47 +01:00
Gregor Kleen
c272618aa6 fix(missing-files): properly account for workflows 2021-02-19 13:42:23 +01:00
Gregor Kleen
e54b985815 fix(files): count personalised sheet files as alive 2021-02-19 09:27:12 +01:00
Gregor Kleen
e179c0ff6c refactor: hlint 2021-02-17 15:12:56 +01:00
Gregor Kleen
8d1f216b5b feat(caching): introduce cache prewarming 2021-02-17 14:31:30 +01:00
Gregor Kleen
c76794f7c8 chore: fix tests 2021-02-15 15:31:23 +01:00
Gregor Kleen
e2eddc93c5 chore(changelog): bump 2021-02-15 14:29:17 +01:00
Gregor Kleen
a8f268852a feat(personalised-sheet-files): restrict download by exam 2021-02-15 14:24:36 +01:00
Gregor Kleen
854fa6b968 fix(exam-bonus): fix rounding
Fixes #672
2021-02-15 12:55:12 +01:00
Gregor Kleen
0fd7e86695 fix(exam-bonus): avoid divide by zero if all sheets are bonus
Fixes #671
2021-02-15 12:28:04 +01:00
Gregor Kleen
1cd79d35e2 feat(minio): use separate bucket for temporary files 2021-02-15 11:44:00 +01:00
Gregor Kleen
1be391f5f5 fix(arc): reduce lock contention 2021-02-11 15:10:36 +01:00
Gregor Kleen
8ecb460f39 fix: unbreak arc 2021-02-10 22:58:01 +01:00
Gregor Kleen
dc5a9fda9d refactor: hlint 2021-02-10 20:52:17 +01:00
Gregor Kleen
36debd865f feat: implement in-memory cache for file download 2021-02-10 20:06:59 +01:00
Gregor Kleen
e61b5611b1 fix(jobs): prevent offloading instances from deleting cron last exec 2021-02-10 16:55:27 +01:00
Gregor Kleen
7027a3dd2d chore: allow AdminCrontabR from any approot 2021-02-09 11:00:51 +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
5698e9ca0b fix: restore storting for exam-office exams 2021-02-08 14:35:26 +01:00
Gregor Kleen
03e9f5be56 refactor: switch everything to cached relevant study features 2021-02-04 23:12:27 +01:00
Gregor Kleen
23fdf4af6d refactor: switch exams list to cached study features only 2021-02-04 11:07:25 +01:00
Gregor Kleen
500b0bba6f refactor(exam-office): try to make list performance more predictable 2021-02-03 18:26:55 +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
e0173908b4 chore(profiling): remove -fprof-auto-top to hopefully fix build 2021-02-01 22:45:12 +01:00
Gregor Kleen
90e3965b92 Merge branch 'master' into profile 2021-02-01 19:37:02 +01:00
Gregor Kleen
b814bc094a refactor(workflows): shared workflow graphs 2021-02-01 17:37:55 +01:00
Gregor Kleen
09fb26f1a8 feat(jobs): batch job offloading
BREAKING CHANGE: Job offloading
2021-02-01 09:52:47 +01:00
Gregor Kleen
07bde5b012 chore(profiling): switch to prof-auto-top to hopefully fix build
Also build only once, again
2021-02-01 09:26:59 +01:00
Gregor Kleen
cb1e715e9b fix(workflows): don't cache instance-list empty for correctness 2021-01-29 14:38:40 +01:00
Gregor Kleen
c7c4f50f5b refactor: hlint 2021-01-27 22:22:12 +01:00
Gregor Kleen
48028c4053 fix: more verbose watchdog notification failures 2021-01-27 20:14:54 +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
bce2c953e0 chore: bump tests 2021-01-11 16:27:10 +01:00
Gregor Kleen
ae3f2aa703 chore: version bumps 2021-01-11 14:16:39 +01:00
Gregor Kleen
8939a8b90a fix(tokens): introduce clock leniency and remove start for downloads 2020-12-13 00:36:11 +01:00
Gregor Kleen
13b6fe1db5 chore: setup for profiling 2020-12-12 17:12:50 +01:00
Gregor Kleen
1d3fd8c8a7 fix: hopefully improve workflow auth performance 2020-12-11 19:56:05 +01:00
Gregor Kleen
50455e68a1 feat(auth): record student ldap role 2020-12-10 19:09:33 +01:00
Gregor Kleen
aba673756e feat(workflows): explanation text 2020-12-10 18:42:01 +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
447df0bc9b refactor: hlint 2020-12-10 02:08:24 +01:00
Gregor Kleen
f22675189e feat: use c++ library for json parsing from database 2020-12-09 23:51:46 +01:00
Gregor Kleen
212e316c7e fix(jobs): weaken crontab guarantees for performance 2020-12-09 18:11:39 +01:00
Gregor Kleen
3a106d1ee5 feat: don't redirect monitoring routes & crontab tokens 2020-12-09 15:33:54 +01:00
Gregor Kleen
c5ee5b26d5 chore: re-enable optimisations for i18n 2020-12-09 15:18:30 +01:00
Gregor Kleen
bbd4916f3a feat(admin-crontab): export as json 2020-12-09 15:16:33 +01:00
Gregor Kleen
a27a553e0a feat(jobs): queue by jobctl priority 2020-12-09 15:11:07 +01:00
Gregor Kleen
ed38f93537 fix(jobs): adjust job handling to hopefully reduce load 2020-12-09 13:25:26 +01:00
Gregor Kleen
3a90c88b35 fix(files): better configuration for file batch jobs 2020-12-08 18:04:39 +01:00
Gregor Kleen
3ba41d8f24 fix(downloads): do download links via redirect 2020-12-08 17:34:39 +01:00
Gregor Kleen
403dc37f9a chore: further suggestions for workflow lint 2020-12-06 20:42:05 +01:00
Gregor Kleen
affa8072de refactor: hlint 2020-12-06 20:25:00 +01:00
Gregor Kleen
21cf6cfa87 fix(auth): fix infinite auth loop for workflow files 2020-12-06 20:12:04 +01:00
Gregor Kleen
316097a07e feat(workflows): improve linter 2020-12-06 16:03:36 +01:00
Gregor Kleen
e1b60844cb fix: submission download token generation broke viewing 2020-12-05 22:24:25 +01:00
Gregor Kleen
8c17f3354a fix: remove manually inserted error for testing 2020-12-05 13:07:46 +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
aa0404a007 fix(workflows): properly offer previous payload files 2020-12-04 16:36:55 +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
c392cb5895 refactor(workflows): better modularize workflow-workflow-list 2020-12-03 17:51:07 +01:00
Gregor Kleen
22961d9a89 refactor: hlint 2020-12-03 16:20:54 +01:00
Gregor Kleen
833b674c31 fix(errors): better handling of errors from separated approots 2020-12-03 15:51:23 +01:00
Gregor Kleen
fbf21d7313 feat(errors): redirect errors back to ApprootDefault 2020-12-03 12:17:28 +01:00
Gregor Kleen
f7fdc5cf13 refactor: hlint 2020-12-02 19:15:03 +01:00
Gregor Kleen
707b41d4ec feat: allow separating user generated content into separate domain 2020-12-02 16:58:52 +01:00
Gregor Kleen
ee6fecb79e feat(workflows): prepare for admin-workflow-instance-edit 2020-12-01 11:11:48 +01:00
Gregor Kleen
dae2d16677 refactor(workflows): better modularize handlers 2020-11-30 19:09:30 +01:00
Gregor Kleen
282d56a5c2 refactor: minor 2020-11-30 12:26:33 +01:00
Gregor Kleen
48208c9105 feat(admin-workflows): allow uploading graph spec as file 2020-11-30 12:19:58 +01:00
Gregor Kleen
f9d933bdac fix(admin-workflows): fix workflow definition descriptions forms 2020-11-29 17:25:49 +01:00
Gregor Kleen
68b8b458b1 fix: build 2020-11-29 13:32:02 +01:00
Gregor Kleen
6322fd449b fix: build 2020-11-29 13:30:30 +01:00
Gregor Kleen
b1641ad57e fix: build 2020-11-29 13:24:16 +01:00
Gregor Kleen
43bb0abe72 fix: build 2020-11-29 13:22:50 +01:00
Gregor Kleen
ed5d871182 fix(rooms): honor roomHidden 2020-11-29 13:13:17 +01:00
Gregor Kleen
dfea39907c fix: non-dev build 2020-11-27 14:28:16 +01:00
Gregor Kleen
50cbba114a fix: csp-sandbox downloads 2020-11-26 16:29:32 +01:00
Gregor Kleen
211ff5eacc fix(csv): ignore empty lines 2020-11-26 14:59:50 +01:00
Gregor Kleen
946a42b7f0 fix(auth): authorize exam offices by school 2020-11-26 10:23:08 +01:00
Gregor Kleen
2619b08ad1 fix(workflows): prefer payload label from target state
Adjust styling
2020-11-25 18:47:13 +01:00
Gregor Kleen
0a3eaa2994 fix(workflows): cleanup 2020-11-25 15:00:16 +01:00
Gregor Kleen
82b3a6364c feat(workflows): wire up ws-school 2020-11-24 22:35:59 +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
771532c666 style(exams): larger occurrence description fields 2020-11-20 11:31:10 +01:00
Gregor Kleen
319c75a85a feat(rooms): different room types & hidden rooms 2020-11-19 14:25:38 +01:00
Gregor Kleen
1ce5598207 refactor: document cronNotAfter for exam closure 2020-11-17 13:48:49 +01:00
Gregor Kleen
ef1411efdb feat(external-exams): open defaults wrt. external exam schools
Fixes #651
2020-11-17 13:30:18 +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
4ea54d8b82 refactor: hlint 2020-11-10 19:46:22 +01:00
Gregor Kleen
8d49e66eed style: use full course name in exam office notifications 2020-11-10 17:36:52 +01:00
Gregor Kleen
1d83c4ce2b Merge branch 'feat/partial-downloads' into master 2020-11-10 17:23:30 +01:00
Gregor Kleen
5b28303539 feat: partial/conditional downloads & video streaming 2020-11-10 17:23:15 +01:00
Gregor Kleen
6008cb040d fix(personalised-sheet-files): don't delete files when "keep" 2020-11-09 17:07:17 +01:00
Gregor Kleen
e25e8a2f4c fix(html-field): introduce stored-markup
BREAKING CHANGE: StoredMarkup
2020-11-06 20:39:43 +01:00
Gregor Kleen
78c5bc5258 fix(course): better explanation for material access 2020-11-06 12:12:39 +01:00
Gregor Kleen
a0e5edeaef Merge branch 'master' into workflows 2020-11-06 11:06:50 +01:00
Gregor Kleen
44d43c706a chore: have db-fill use modification times for changelog 2020-11-05 17:29:54 +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
8cf39dcbe6 fix(mails): prevent emails being resent to due archiving errors 2020-11-05 11:05:36 +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
af9f96f3f1 chore: fix tests & refactor 2020-11-04 15:57:20 +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
b6664089f7 fix(course): don't delete applications when deregistering
Fixes #648
2020-11-02 17:02:10 +01:00
Gregor Kleen
1c2c8fe3d9 fix(courses): better defaults for application/registration 2020-11-02 17:00:25 +01:00
Gregor Kleen
1c6ac4cb4a fix(exam-users): prevent exam results without registration via csv 2020-11-02 12:18:07 +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
3ff2cf1fec fix: work around conduit-bug releasing fh to early 2020-10-27 10:15:31 +01:00
Gregor Kleen
ca29a66330 fix(exams): error messages for foreign key constraint violations 2020-10-26 16:27:02 +01:00
Gregor Kleen
5108e1494a feat(workflows): additional work on WorkflowWorkflowWorkflow 2020-10-26 14:52:58 +01:00
Gregor Kleen
64c8f9ab3d refactor: hlint 2020-10-20 15:58:05 +02:00
Gregor Kleen
48fd6bc702 chore: additional faqs 2020-10-20 15:32:51 +02:00
Gregor Kleen
b79bac777c feat(allocations): display participant counts to admins 2020-10-20 15:01:44 +02: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
b631ed7d06 fix(auth): prettier active directory errors in help messages 2020-10-14 16:30:35 +02:00
Gregor Kleen
ea95d74cb5 fix(migration): don't consider changelog in requiresMigration 2020-10-14 16:24:21 +02:00
Gregor Kleen
286407252a chore: use better exit code for "migration needed" 2020-10-14 13:04:47 +02:00
Gregor Kleen
7529933ebe chore: have uniworxdb accept config file as argument 2020-10-14 12:40:31 +02:00
Gregor Kleen
51ed7e0a26 feat(ldap): expose active directory errors 2020-10-14 12:40:08 +02:00
Gregor Kleen
4a731eca4e fix(allocations): work around yesod weirdness wrt "none" 2020-10-14 08:28:19 +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
8abcd65edf feat(allocations): allocation-course-accept-substitutes 2020-10-13 13:06:12 +02:00
Gregor Kleen
7b7f11e728 feat(allocations): ui for adding applicants 2020-10-12 21:09:15 +02:00
Gregor Kleen
d817179113 refactor: hlint 2020-10-12 15:14:01 +02:00
Gregor Kleen
5207bcf8a1 Merge branch 'master' into workflows 2020-10-12 14:34:38 +02:00
Gregor Kleen
29a3e24bcf feat(exams): auth ExamResults by ExamExamOfficeSchools 2020-10-12 14:32:59 +02:00
Gregor Kleen
94436ee0e1 feat(exams): exam staff & additional schools 2020-10-12 14:08:14 +02:00
Gregor Kleen
b69481e88f fix(authorization): have AllocationTime consider ParticipantState 2020-10-12 10:54:27 +02:00
Gregor Kleen
a4114a79f1 feat(allocations): csv-export new-assigned 2020-10-10 21:22:43 +02:00
Gregor Kleen
7f7d2c7957 feat(allocations): include study features in users table 2020-10-10 17:36:02 +02:00
Gregor Kleen
48eddaf1ed Merge branch 'master' into workflows 2020-10-08 09:42:28 +02:00
Gregor Kleen
564c0b975a fix(study-features): also apply caching to table columns 2020-10-06 13:31:36 +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
c5eea64b27 fix(workflows): navigation order 2020-09-30 17:04:18 +02:00
Gregor Kleen
30be798286 style(workflows): better nav icon 2020-09-30 16:56:25 +02:00
Gregor Kleen
baea302e48 feat(workflows): placeholder handlers 2020-09-30 16:51:24 +02:00
Gregor Kleen
0ced4094c9 Merge branch 'master' into workflows 2020-09-29 11:10:48 +02:00
Gregor Kleen
4b459ea143 fix(exams): default exam mode to Nothing 2020-09-29 10:14:27 +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
35737902b7 Merge branch 'master' of gitlab2.rz.ifi.lmu.de:uni2work/uni2work into master 2020-09-28 12:45:38 +02:00
Gregor Kleen
0e1035ddb0 refactor: generalize mkFaqItems 2020-09-28 12:23:38 +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
9e0b43a60d fix(allocations): notify for new course upon registration 2020-09-28 11:20:26 +02:00
Gregor Kleen
18921e06d1 feat(allocations): notify about new courses 2020-09-28 10:55:09 +02:00
Gregor Kleen
c7f4fa0e41 fix(workflows): ui improvements
BREAKING CHANGE: digests now json encode via base64

Also improve efficiency of marking workflow files as referenced
2020-09-28 10:51:51 +02:00
Gregor Kleen
99f3fca6d0 fix(workflows): integrate in new master 2020-09-25 16:42:45 +02:00
Gregor Kleen
bda4f81702 feat(workflows): delete definitions 2020-09-25 13:20:52 +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
712714c903 refactor: isomorphism for converting sqlbackend-keys 2020-09-25 13:00:59 +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
4f58f652cd refactor(workflows): remove old number resolution utils 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
b359468593 feat(allocations): show staff descriptions 2020-09-25 12:02:59 +02:00
Gregor Kleen
34a52653d7 fix(metrics): larger range for worker_state_duration 2020-09-23 19:49:46 +02:00
Gregor Kleen
32b2314d0c refactor: hlint 2020-09-23 17:02:29 +02:00
Gregor Kleen
fb0ae65ac5 feat(files): monitor missing files 2020-09-23 16:48:41 +02:00
Gregor Kleen
e4416e7f0e fix(jobs): better flushing, correct metrics, better etas 2020-09-23 14:05:30 +02:00
Gregor Kleen
513249b9eb refactor: hlint 2020-09-22 14:14:25 +02:00
Gregor Kleen
2ca024b935 fix(files): don't inject serializable 2020-09-22 13:43:58 +02:00
Gregor Kleen
2a84edccb4 fix(jobs): improve job worker healthchecks & logging 2020-09-22 02:39:03 +02:00
Gregor Kleen
284aae1213 feat(jobs): move held-up jobs to different workers 2020-09-21 23:14:37 +02:00
Gregor Kleen
cbf41b2ea0 feat(logging): additional logging for inject-files 2020-09-21 13:59:57 +02:00
Gregor Kleen
d21faf4de0 feat: improve logging/metrics wrt. batch jobs 2020-09-21 13:31:53 +02:00
Gregor Kleen
8afacdd6b7 refactor: hlint 2020-09-21 12:24:31 +02:00
Gregor Kleen
4801d22cb3 feat(metrics): measure file i/o 2020-09-21 12:16:47 +02:00
Gregor Kleen
6d475497c0 fix(exam-form): sort occurrences and parts 2020-09-18 15:16:55 +02:00
Gregor Kleen
7038099389 fix(jobs): delimit resource allocation to within handler
Hopefully fixes memory leak in production
2020-09-18 11:34:58 +02:00
Gregor Kleen
e099e13816 fix(file-jobs): improve log messages 2020-09-17 21:56:41 +02:00
Gregor Kleen
e5ae1521a0 fix(metrics): sort metrics 2020-09-17 20:38:00 +02:00
Gregor Kleen
dd235590b4 fix: migration 2020-09-17 20:29:14 +02:00
Gregor Kleen
937326639a feat(sheet): warn about no submission without not graded
Fixes #342
2020-09-16 17:22:38 +02:00
Sarah Vaupel
885de4403c fix(eexamlistr): allow access for users with exam results 2020-09-16 15:42:57 +02:00
Gregor Kleen
28e93c8fec chore(files): test roundtripping through minio & db 2020-09-11 18:43:00 +02:00
Gregor Kleen
ce54adce6b fix(files): fix download of non-injected files 2020-09-11 16:15:33 +02:00
Gregor Kleen
7d559cc0f1 Merge branch '631-content-dependent-chunking' into master 2020-09-11 12:05:55 +02:00
Gregor Kleen
5659f2df1e fix(dbtable): calculate height of header correctly
Fixes #634
2020-09-10 16:45:16 +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
58c2420458 feat(files): chunk prune-unreferenced-files finer 2020-09-03 14:53:20 +02:00
Gregor Kleen
8f608c1955 feat(files): chunking
BREAKING CHANGE: files now chunked
2020-09-02 21:25:20 +02:00
Gregor Kleen
0b4fadedd2 feat: log ldap error messages on invalid-credentials 2020-08-28 17:58:13 +02:00
Gregor Kleen
56c23ebd33 style: minor frontend cleanup wrt. monospace fonts 2020-08-28 14:00:52 +02:00
Gregor Kleen
bbfd182ed9 feat: support for ldap primary keys 2020-08-28 14:00:26 +02:00
Gregor Kleen
fdaad16e71 fix: don't set user-last-authentication during ldap sync 2020-08-28 12:38:37 +02:00
Gregor Kleen
42aee66d1f feat: implement system-exam-office 2020-08-27 22:58:29 +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
2c4080d0e0 feat: generated columns tooltip 2020-08-27 14:55:32 +02:00
Gregor Kleen
6abe5c8b3f refactor: hlint 2020-08-27 14:43:18 +02:00
Gregor Kleen
363f7abc19 feat: restore study features in all tables 2020-08-27 14:29:35 +02:00
Gregor Kleen
44eeffcc70 feat: course applications study features 2020-08-27 13:14:18 +02:00
Gregor Kleen
96d0ba8f7a feat: study feature filtering 2020-08-27 11:51:16 +02:00
Gregor Kleen
51a98f0670 feat: reduce number of study features for courses 2020-08-26 23:46:21 +02:00
Gregor Kleen
f44f150747 fix: order of on in exam office auth 2020-08-26 21:55:44 +02:00
Gregor Kleen
f7a9bc831a feat(study-features): further restriction by course 2020-08-26 20:54:21 +02:00
Gregor Kleen
32c18038b6 Merge branch 'master' into 623-kursassoziierte-studienfacher-abschaffen 2020-08-26 16:33:09 +02:00
Gregor Kleen
24f428b13b fix: have exam deregistration always delete stored grades 2020-08-26 16:03:54 +02:00
Gregor Kleen
ab841a65a3 Merge branch 'master' into 623-kursassoziierte-studienfacher-abschaffen 2020-08-26 13:45:37 +02:00
Gregor Kleen
06375f8cd8 style(dbtable): add rowspan to number column header 2020-08-26 13:29:03 +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
132a510a23 fix: migrate so as not to resend allocation notifications 2020-08-24 19:01:31 +02:00
Gregor Kleen
f2971f66fd refactor: hlint 2020-08-24 17:05:10 +02:00
Gregor Kleen
9e9e53e76a feat(allocations): merge notifications 2020-08-24 14:39:43 +02:00
Gregor Kleen
0261b3979d fix(notification-form): define rules for all notification-triggers
Fixes #561
2020-08-21 12:09:17 +02:00
Gregor Kleen
67771facff chore: use fewer segfault-y packages (hopefully) 2020-08-17 17:57:44 +02:00
Sarah Vaupel
97b22171bf Apply 1 suggestion(s) to 1 file(s) 2020-08-17 11:35:13 +02:00
Sarah Vaupel
f2e6435a03 chore: move Utils.Exam to Utils.Exam.Correct 2020-08-17 11:29:48 +02:00
Sarah Vaupel
6244a250ee Apply 1 suggestion(s) to 1 file(s) 2020-08-17 11:08:34 +02:00
Sarah Vaupel
323d423fc6 Apply 1 suggestion(s) to 1 file(s) 2020-08-17 11:08:24 +02:00
Sarah Vaupel
df18a6bea3 Apply 1 suggestion(s) to 1 file(s) 2020-08-17 11:08:10 +02:00
Sarah Vaupel
7e14fef5c5 fix: hlint 2020-08-17 10:48:46 +02:00
Sarah Vaupel
58c933c624 fix: hlint 2020-08-15 19:16:14 +02:00
Sarah Vaupel
662943b256 fix: hlint 2020-08-15 19:03:12 +02:00
Sarah Vaupel
a1b03e819f fix: typo 2020-08-15 18:20:52 +02:00
Sarah Vaupel
366761ba84 Merge branch 'master' into eecorrectr 2020-08-15 16:57:08 +02:00
Sarah Vaupel
ad4ae713c8 fix(guess-user): fix ldap-lookup condition and refactor 2020-08-15 16:37:13 +02:00
Sarah Vaupel
4154a395f4 feat(guess-user): add option to limit query 2020-08-14 19:03:57 +02:00
Sarah Vaupel
ca96518e0e feat(guess-user): replace guessUser and usages 2020-08-14 18:16:05 +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
Sarah Vaupel
e1a9977772 chore(guess-user): first stub with PredDNF 2020-08-13 13:48:31 +02:00
Sarah Vaupel
753e29dfff chore(guess-user): first stub with different return type 2020-08-13 11:49:10 +02:00
Sarah Vaupel
3b4c7fed36 feat(eecorrectr): more appropriate error messages 2020-08-12 17:53:38 +02:00
Sarah Vaupel
527fd8a5ca chore(exam-correct): remove TODOs 2020-08-12 17:40:43 +02:00
Sarah Vaupel
e941083a44 feat(exam-correct): add hasMore to no-op reponse 2020-08-12 16:13:25 +02:00
Sarah Vaupel
d4d27f8ef6 feat(exam-correct): limit number of matching users (BE) 2020-08-12 16:03:36 +02:00
Sarah Vaupel
62fef35475 refactor(exam-correct): get rid of hardcoded minNeedleLength 2020-08-12 14:49:44 +02:00
Sarah Vaupel
5d9ca454fa fix(eecorrectr): encrypt eeid 2020-08-12 14:31:55 +02:00
Sarah Vaupel
4515987446 refactor(exam-correct): move responseStatus to utils 2020-08-12 13:51:38 +02:00
Sarah Vaupel
36d45fcc0e refactor(exam-correct): move userToResponse to utils 2020-08-12 13:35:06 +02:00
Sarah Vaupel
33691556ab fix(eecorrectr): use default time 2020-08-12 11:58:15 +02:00
Sarah Vaupel
de02895ed0 feat(eecorrectr): basic handler structure (WIP) 2020-08-11 21:18:59 +02:00
Sarah Vaupel
be2eb3c38d feat(eecorrectr): add handlers and navigation 2020-08-11 16:01:51 +02:00
Gregor Kleen
2b9c2602bf refactor: hlint 2020-08-11 10:56:43 +02:00
Sarah Vaupel
0f519050eb refactor: move correct interfaces to utils 2020-08-11 10:00:42 +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
b9181de154 chore: bump to ghc-8.10 2020-08-10 15:41:19 +02:00
Sarah Vaupel
9494019694 feat(course-visibility): error on visibleFrom > visibleTo 2020-08-10 13:55:00 +02:00
Sarah Vaupel
6a0774bff3 refactor(course-visibility): guard on user id and auth tag before exists 2020-08-10 13:47:53 +02:00
Sarah Vaupel
036d761ec8 refactor(course-visibility): comment DBSTCourse 2020-08-10 12:44:45 +02:00
Sarah Vaupel
a7abe1231a refactor(course-visibility): remove unnecessary allocation checks 2020-08-10 12:40:43 +02:00
Gregor Kleen
99c810b82e refactor(submission-own-r): add comment explaining behaviour 2020-08-10 12:08:18 +02:00
Sarah Vaupel
65c85e7607 Apply 1 suggestion(s) to 1 file(s) 2020-08-10 11:54:16 +02:00
Sarah Vaupel
e08f9f2ca1 Apply 1 suggestion(s) to 1 file(s) 2020-08-10 11:54:05 +02:00
Sarah Vaupel
e9d67fdac9 Apply 1 suggestion(s) to 1 file(s) 2020-08-10 11:54:00 +02:00
Sarah Vaupel
ff19b4a98d Apply 1 suggestion(s) to 1 file(s) 2020-08-10 11:53:55 +02:00
Sarah Vaupel
0baa3325c2 Apply 1 suggestion(s) to 1 file(s) 2020-08-10 11:53:24 +02:00
Sarah Vaupel
139d848292 Apply 1 suggestion(s) to 1 file(s) 2020-08-10 11:53:19 +02:00
Sarah Vaupel
18bd29b746 Apply 1 suggestion(s) to 1 file(s) 2020-08-10 11:53:07 +02:00
Sarah Vaupel
d5b7b08f31 Apply 1 suggestion(s) to 1 file(s) 2020-08-10 11:52:37 +02:00
Gregor Kleen
93d0ace8ba feat(personalised-sheet-files): download from CUsersR 2020-08-10 11:41:51 +02:00
Sarah Vaupel
d20ad6c5db Apply 1 suggestion(s) to 1 file(s) 2020-08-10 11:40:03 +02:00
Sarah Vaupel
e4f9f393eb Apply 1 suggestion(s) to 1 file(s) 2020-08-10 11:37:55 +02:00
Sarah Vaupel
5b4df3c6b1 Apply 1 suggestion(s) to 1 file(s) 2020-08-10 11:37:38 +02:00
Gregor Kleen
0b0eaff20d fix(personalised-sheet-files): more thorough check wrt sub-warnings 2020-08-10 10:35:09 +02:00
Sarah Vaupel
1e016dab17 Merge branch 'master' into course-visibility 2020-08-08 15:43:00 +02:00
Sarah Vaupel
5ea7816926 fix: hlint 2020-08-08 15:39:10 +02:00
Sarah Vaupel
dfa70ee7fe feat(course-visibility): allow access for exam correctors 2020-08-08 12:54:37 +02:00
Sarah Vaupel
16ad72d876 feat(course-visibility): warn on deregister from invisible course 2020-08-08 12:38:20 +02:00
Gregor Kleen
f452b2b24f feat(personalised-sheet-files): i18n 2020-08-07 20:51:53 +02:00
Gregor Kleen
db205f635d feat(personalised-sheet-files): participant interaction 2020-08-07 18:18:41 +02:00
Gregor Kleen
1fe63a23a0 feat(personalised-sheet-files): collated ignore 2020-08-07 14:31:22 +02:00
Sarah Vaupel
183aa8d222 feat(course-visibility): redirect to NewsR after deregister (WIP!) 2020-08-06 20:38:39 +02:00
Sarah Vaupel
43f625ba0c fix(course-visibility): visibility for admin-like users 2020-08-06 19:46:15 +02:00
Sarah Vaupel
7bdf8cac88 feat(course-visibility): now as default visibleFrom for new courses 2020-08-06 11:18:09 +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
Sarah Vaupel
6fbb2eabf1 feat(course-visibility): more precise description on CShowR 2020-08-06 09:09:27 +02:00
Sarah Vaupel
1ac3c08d01 fix(course-visibility): fix favourites 2020-08-05 22:53:32 +02:00
Sarah Vaupel
c1eb558871 refactor(course-visibility): major course-util refactor
- refactor Utils.Course and usages
- check for open allocation registration in courseIsVisible
- remove isAssociated from favourites (not needed anymore)
2020-08-05 21:08:02 +02:00
Sarah Vaupel
06c4e0c2c3 refactor(course-visibility): use E.maybe 2020-08-05 11:39:24 +02:00
Sarah Vaupel
f129ce6b2b fix(course-visibility): allow for caching Nothing results of getBy 2020-08-05 10:50:19 +02:00
Gregor Kleen
c4c952ebc1 Merge branch 'master' into feat/customized-exercises 2020-08-04 10:07:36 +02:00
Gregor Kleen
a9cdfcc7e1 refactor: hlint 2020-08-03 14:16:03 +02:00
Gregor Kleen
1be971677b fix(jobs): queue certain jobs at most once 2020-08-03 13:52:37 +02:00
Sarah Vaupel
23aca1caa4 feat(course-visibility): warn on invisibility during registration 2020-08-03 10:37:09 +02:00
Gregor Kleen
460c133aac feat: admin-crontab-r 2020-08-03 10:11:52 +02:00
Sarah Vaupel
95490af7af Merge branch 'master' into course-visibility 2020-08-02 17:49:22 +02:00
Sarah Vaupel
7530287788 fix(course-visibility): correctly count courses on AllocationListR 2020-08-02 17:49:01 +02:00
Sarah Vaupel
a16eb1ab91 feat(course-visibility): rework visibility check for ZA courses 2020-08-02 16:15:54 +02:00
Gregor Kleen
7a17535600 fix(migration): make index migration truly idempotent 2020-08-02 14:08:01 +02:00
Gregor Kleen
eb9c6760b9 fix: weird sql casting 2020-08-02 13:42:02 +02:00
Gregor Kleen
60be62b63b fix(set-serializable): logging limit 2020-08-02 10:40:35 +02:00
Gregor Kleen
dfe68d5924 feat: migrate indexes 2020-08-02 10:27:50 +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
Sarah Vaupel
cb0bf15121 feat(course-visibility): account for visibility in routes 2020-07-31 18:05:01 +02:00
Gregor Kleen
a0392dd329 fix: better concurrency behaviour 2020-07-31 18:00:30 +02:00
Sarah Vaupel
4185742f38 feat(course-visibility): account for visibility on AllocationListR 2020-07-30 15:09:03 +02:00
Sarah Vaupel
0c3f2011dd refactor(course-visibility): make course utils require less 2020-07-30 11:52:28 +02:00
Sarah Vaupel
c99433c291 fix(course-visibility): account for active auth tags everywhere 2020-07-29 16:44:39 +02:00
Sarah Vaupel
9473d657a6 refactor(course-utils): better auth tag checks in course utils 2020-07-29 16:16:11 +02:00
Sarah Vaupel
7d3c5b11a5 chore(course-visibility): add active auth tags to all course utils 2020-07-29 16:01:15 +02:00
Sarah Vaupel
0ff07a5fad feat(course-visibility): account for visibility on TShowR 2020-07-29 15:31:02 +02:00
Sarah Vaupel
df7a784a9d feat(course-visibility): account for visibility on AShowR 2020-07-29 15:11:40 +02:00
Sarah Vaupel
ec43ab1ad1 refactor(course-visibility): use utils in course list 2020-07-29 14:49:22 +02:00
Sarah Vaupel
b1d0893993 fix(course-visibility): check for mayEdit on course list 2020-07-29 13:55:54 +02:00
Gregor Kleen
d47d6aa6cc fix: suppress exceptions relating to expired sessions 2020-07-29 09:46:38 +02:00
Gregor Kleen
ec42d834ee fix(campus-auth): properly handle login failures 2020-07-28 20:54:55 +02:00
Gregor Kleen
22882c1fa0 refactor: hlint 2020-07-28 20:21:02 +02:00
Gregor Kleen
9213b7554a feat(failover): treat alternatives cyclically 2020-07-28 20:04:44 +02:00
Gregor Kleen
9ee44aa2f1 feat(personalised-sheet-files): introduce routes & work on crypto 2020-07-28 19:14:15 +02:00
Sarah Vaupel
796a8066aa fix(course-visibility): (more) correct visibility check for favourites 2020-07-28 12:37:07 +02:00
Sarah Vaupel
d86fed7a32 feat(course-visibility): hide invisible courses from favourites + icon 2020-07-25 18:20:00 +02:00
Sarah Vaupel
17dbccf2a3 feat(course-visibility): display icon in course list for lecturers 2020-07-25 16:38:23 +02:00
Sarah Vaupel
cbb8e7217d fix(course-visibility): show icon to lecturers only 2020-07-25 15:15:16 +02:00
Sarah Vaupel
24f12896e0 feat(course-visibility): no invisible courses in course list 2020-07-25 15:10:59 +02:00
Sarah Vaupel
7af82bcb67 feat(course-visibility): reorder course form 2020-07-24 20:51:50 +02:00
Sarah Vaupel
6c0adde5db feat(course-visibility): add invisible icon to CShowR title 2020-07-24 20:37:32 +02:00
Sarah Vaupel
39683928ec refactor(course-visibility): enhance visibility info on CShowR 2020-07-24 20:19:34 +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
02fc0d476f fix(submission): race condition allowed creating multiple subs 2020-07-23 17:58:36 +02:00
Gregor Kleen
de53c80a1e fix(file-upload): size limitation was inverted 2020-07-23 17:58:15 +02:00
Gregor Kleen
e84305769b style: improve usability of genericFileField 2020-07-22 12:07:01 +02:00
Gregor Kleen
0c7e56f405 feat(metrics): observe login attempts 2020-07-21 16:57:38 +02:00
Gregor Kleen
19b8b0616f fix: shutdown behaviour & tests 2020-07-21 15:52:45 +02:00
Gregor Kleen
240477b9ab refactor: hlint 2020-07-20 16:13:45 +02:00
Gregor Kleen
a60ad1abae fix(files): allow clobbering files during form submission 2020-07-20 15:38:30 +02:00
Gregor Kleen
d770afd2c6 feat(sheets): require exam registration 2020-07-20 14:26:55 +02:00
Gregor Kleen
c87c9c13d1 fix(deletion): fix usage of deleteR from POST handler 2020-07-20 14:17:14 +02:00
Gregor Kleen
febf316c6c refactor: split up sheet handlers 2020-07-20 12:06:13 +02:00
Gregor Kleen
e62d7a34e6 feat(csv): don't limit number of exported rows 2020-07-20 09:20:58 +02:00
Gregor Kleen
cf412a4b54 fix(migration): omit index for old versions of postgres 2020-07-18 16:42:41 +02:00
Gregor Kleen
fc49f46f50 refactor: hlint 2020-07-17 16:52:34 +02:00
Gregor Kleen
cadb18df7b refactor: use minioIsDoesNotExist 2020-07-17 15:54:43 +02:00
Gregor Kleen
82b24df1f0 refactor: hlint 2020-07-17 15:54:43 +02:00
Gregor Kleen
e7a5162ec9 feat(db): automatic retry of database transactions upon system error
BREAKING CHANGE: transactions need to be retryable, now
2020-07-17 15:54:42 +02:00
Gregor Kleen
1926917dd7 feat(files): further balance file jobs 2020-07-17 15:54:42 +02:00
Gregor Kleen
1380d9d21e feat(invitations): anonymous invitations 2020-07-17 15:54:42 +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
d9e9179a52 feat(files): buffer uploads to minio
Missing: batch job to transfer uploads to database
2020-07-17 15:54:39 +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
da1bf86d5e fix(ldap-failover): improve concurrency & error handling 2020-07-17 15:42:44 +02:00
Gregor Kleen
2fd060d55b feat(course-comm): recipient categories for sheets and exams 2020-07-16 19:28:37 +02:00
Gregor Kleen
9dee134b11 feat(file-uploads): maximum file sizes 2020-07-13 09:32:28 +02:00
Gregor Kleen
46ce477235 feat(corrections): better highlight corrected files
Fixes #602
2020-06-27 15:39:16 +02:00
Gregor Kleen
62dd7b9f04 fix(rating-files): support integral points values
Fixes #604
2020-06-24 14:01:52 +02:00
Gregor Kleen
c87315006d fix(ratings): improve decoding error reporting 2020-06-19 17:38:48 +02:00
Gregor Kleen
036c74ef49 fix: hlint & build 2020-06-18 10:12:08 +02:00
Gregor Kleen
bbbfa946e1 feat(corrections): override rating_done & documentation
Fixes #525
Fixes #274
2020-06-17 14:38:11 +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
1195231bc3 feat(ratings): i18n rating file names 2020-06-16 12:15:56 +02:00
Gregor Kleen
69c61a4bb4 refactor(rating): move formatting/parsing of rating files 2020-06-16 11:44:42 +02:00
Gregor Kleen
e5732df1b6 feat(terms): better prediction of term dates 2020-06-16 10:53:49 +02:00
Gregor Kleen
cf06f79807 feat(system-messages): manual priority 2020-06-16 10:18:46 +02:00
Gregor Kleen
8b7e8e4bd5 feat(terms): improve term display/editing
Fixes #485
2020-06-15 16:49:31 +02:00
Gregor Kleen
06f47c59b4 feat(course-participants): csv export exercise sheets 2020-06-14 18:15:58 +02:00
Gregor Kleen
26cc8e4b53 feat(course-participants): show exercise sheets (first cornice) 2020-06-14 16:27:27 +02:00
Gregor Kleen
e10cfe9c58 fix(corrections-overview): behavioural fixes 2020-06-12 10:24:34 +02:00
Gregor Kleen
fdeb2514c0 feat(dbtable): add support for Cornice 2020-06-10 09:42:39 +02:00
Gregor Kleen
b4cf9ca4bb refactor: split up Corrections and move below Submission 2020-06-10 09:34:20 +02:00
Gregor Kleen
21af3e1348 refactor: split up Handler.Submission 2020-06-10 09:34:20 +02:00
Gregor Kleen
0fa8d37037 feat(submission): allow restriction of submittors via token 2020-05-29 13:12:08 +02:00
Gregor Kleen
0fa910ae7c fix(exam-users): don't crash when participant doesn't have bonus 2020-05-29 12:36:46 +02:00
Gregor Kleen
b8362398da chore(load): implement sheet-submission 2020-05-28 12:59:13 +02:00
Gregor Kleen
cbe211bf23 fix(cron): work around extraneous sheet notifications 2020-05-26 15:07:10 +02:00
Gregor Kleen
9a35c8542c fix(submission): allow non-group-subs when user isn't in sub-group 2020-05-26 11:39:02 +02:00
Gregor Kleen
f74581c356 feat(correction): allow lecturers to set corrector
Fixes #414
2020-05-26 11:30:39 +02:00
Gregor Kleen
d5a897c020 fix(cron): time out sheet notifications 2020-05-26 08:58:03 +02:00
Gregor Kleen
7147bb478d fix: build 2020-05-25 17:28:56 +02:00
Gregor Kleen
8af6bde8a6 fix(sheet-inactive-notification): improve wording
Fixes #514
2020-05-25 17:05:14 +02:00
Gregor Kleen
f11b215773 feat(notifications): sheet-hint & sheet-solution 2020-05-25 16:07:49 +02:00
Gregor Kleen
6711173687 feat(applicants): disclose applicant emails & allow communication 2020-05-25 15:02:14 +02:00
Gregor Kleen
99f23f2558 feat(course-communication): one recipient group per tutorial
Fixes #428
2020-05-25 14:04:31 +02:00
Gregor Kleen
3944ce0261 feat(sheets): better explain rating-done 2020-05-23 12:12:05 +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
2e826d3c45 feat(load): allow creation of submissions without login (w/ token) 2020-05-22 14:31:19 +02:00
Gregor Kleen
002775e192 feat(dry-run): implement dry-run
BREAKING CHANGE: runDBRead
2020-05-22 11:29:30 +02:00
Gregor Kleen
3820b45b3e feat(forms): improve field labeling & error reporting
Fixes #588
2020-05-19 10:21:42 +02:00
Gregor Kleen
aebc05d021 feat(faq): exam-points
Fixes #595
2020-05-18 14:36:47 +02:00
Gregor Kleen
01e61f9bfd fix(submissions): off-by-one when isLecturer 2020-05-18 09:07:14 +02:00
Gregor Kleen
bcd3e467d6 fix(serversession-backend-memcached): don't throw on deleteSession 2020-05-18 08:53:16 +02:00
Gregor Kleen
ec020c5486 feat(exams): show number of registrations to course admins 2020-05-15 12:07:03 +02:00
Gregor Kleen
16643b6244 fix(failover): don't always record as failed
Also improve ldap error handling
2020-05-13 11:20:30 +02:00
Gregor Kleen
d90da85df3 feat(communication): send test emails 2020-05-12 16:44:53 +02:00
Gregor Kleen
e060080261 feat(submission): add correction to sub-show-r 2020-05-12 15:28:56 +02:00
Gregor Kleen
d0358b4a50 fix(html-field): remove warning about html-input 2020-05-12 14:22:42 +02:00
Gregor Kleen
c072b85299 feat(multi-user-field): multi-user-invitation-field 2020-05-12 14:20:05 +02:00
Gregor Kleen
859ae5eea1 fix(sql): quiet warnings in setSerializable 2020-05-12 11:46:02 +02:00
Gregor Kleen
e5acdad134 fix(sql): fix transaction behaviour of setSerializable
Fixes #535
2020-05-12 10:24:23 +02:00
Gregor Kleen
46e99081d9 fix(generic-file-field): allow .zip when doUnpack 2020-05-10 22:59:38 +02:00
Gregor Kleen
daaeb09de8 feat(admin-test): download test 2020-05-10 17:56:12 +02:00
Gregor Kleen
06796269d4 fix(submission-groups): wrong sql query for finding buddies 2020-05-08 13:11:43 +02:00
Gregor Kleen
27731ac077 fix(submission-multi-archive): fix cleanup & improve 2020-05-08 10:57:43 +02:00
Gregor Kleen
32c060575c fix(course-register): swapped warning message 2020-05-07 14:13:43 +02:00
Gregor Kleen
2936eefbd1 feat(multi-user-field): improve placeholder
Remove MassInputTip
2020-05-06 19:01:32 +02:00
Gregor Kleen
04db1b5a45 chore(migration): delete unused stub session_file 2020-05-06 15:03:40 +02:00
Gregor Kleen
7d3e9a3de3 feat(eeusers): fix form & finish implementation 2020-05-06 15:03:00 +02:00
Gregor Kleen
8008248483 Merge branch 'master' into 574-aktionen-auf-eeusersr 2020-05-06 13:53:03 +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
14f9ab6a31 fix(corrections-grade-r): add get following post
Fixes #532
2020-05-05 17:27:33 +02:00
Gregor Kleen
970ca784b0 fix(jobs): reduce likelihood for multiple queueing of notifications 2020-05-05 17:18:29 +02:00
Gregor Kleen
fb54c8445a fix(exams): don't show manual bonus as inconsistent 2020-05-05 16:23:37 +02:00
Gregor Kleen
c348b7cb03 feat(async-table): history api
Fixes #426
2020-05-05 15:09:42 +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
5a47688735 Merge branch 'feat/generic-file-field' 2020-04-30 13:42:09 +02:00
Gregor Kleen
693189fe82 feat(http-client): baseUrl and defaultUrl 2020-04-30 13:02:39 +02:00
Gregor Kleen
f87cf7a378 fix(submission-groups): prevent deleting group before insert 2020-04-30 11:50:46 +02:00
Gregor Kleen
98e1141e60 feat(generic-file-field): prevent multiple session files of same name 2020-04-30 11:08:59 +02:00
Gregor Kleen
192b6279d3 refactor(file upload): move to genericFileField 2020-04-29 18:30:54 +02:00
Gregor Kleen
f889ec674e fix(health): ldap check only admins 2020-04-28 17:27:50 +02:00
Gregor Kleen
9032f80f59 feat(corrections): non-anonymous download w/ registered groups 2020-04-28 17:08:21 +02:00
Gregor Kleen
7f10d44aee feat(submission-groups): invite w/ submission-group & audit 2020-04-28 15:49:20 +02:00
Gregor Kleen
57f1ce9265 feat(sheets): submission groups & rework sheet form 2020-04-28 14:31:27 +02:00
Gregor Kleen
6d00410682 Merge branch 'master' into feat/feste-abgabegruppen 2020-04-27 16:51:00 +02:00
Gregor Kleen
76098cc3c8 fix(campus): fix corner case with study features
results in uglier features (more unnecessary inactive features)
2020-04-27 16:37:39 +02:00
Gregor Kleen
0e68b6cf53 feat(ldap): failover 2020-04-27 16:17:00 +02:00
Gregor Kleen
31aa25a1fd feat(news): timeout sheets after a month 2020-04-27 10:44:04 +02:00
Gregor Kleen
3ea7371465 feat(allocations): switch to csprng 2020-04-27 09:12:32 +02:00
Gregor Kleen
e1c6fd43b8 fix(allocation): don't restart cloneCount when allocating successors 2020-04-26 13:21:56 +02:00
Gregor Kleen
94d3e00bbc refactor(fixed-submission-groups): cleanup stub 2020-04-24 18:40:59 +02:00
Gregor Kleen
18766edc7c feat(faqs): more faqs 2020-04-24 16:41:41 +02:00
Gregor Kleen
fdd6b1a194 feat(help): attach last error message 2020-04-24 13:30:20 +02:00
Gregor Kleen
10d44d189b feat(faqs): more links to faq 2020-04-23 17:44:15 +02:00
Gregor Kleen
7b5337723d feat(faqs): initial 2020-04-23 16:52:34 +02:00
Gregor Kleen
36abb3ee26 fix(system-message): lastChanged & unhide logic error 2020-04-23 11:00:41 +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
e8c2dc5aaa feat(memcached): introduce general purpose memcached 2020-04-21 10:51:11 +02:00
Gregor Kleen
4f237e1968 fix(course-users): deregistration w/ allocation & w/o reason 2020-04-17 17:25:43 +02:00
Gregor Kleen
fd2c2881ea feat(submissions): non-anonymized correction
Fixes #524
Fixes #292
2020-04-17 15:19:26 +02:00
Gregor Kleen
38f69c3aed feat(submissions): ignore additional filename components 2020-04-17 11:57:02 +02:00
Gregor Kleen
d15792cd7d feat(course-user): authorisation checks 2020-04-17 11:05:20 +02:00
Gregor Kleen
ced6ef2874 feat(course-user): major improvements
See #126
2020-04-16 17:19:16 +02:00
Gregor Kleen
0b3c88407b refactor(course-user): modularize 2020-04-16 09:26:37 +02:00
Gregor Kleen
096b92f300 refactor: hlint 2020-04-15 13:19:47 +02:00
Gregor Kleen
05d37fbc0c fix(allocations): better handle participants without applications 2020-04-15 13:13:53 +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
908e6def80 fix: hlint 2020-04-09 15:37:18 +02:00
Gregor Kleen
738ab7b738 feat: admin interface to issue tokens 2020-04-09 15:23:46 +02:00
Gregor Kleen
0d39924777 feat(news): show system messages 2020-04-09 11:56:29 +02:00
Gregor Kleen
bc47dcf43f feat(tokens): multiple authorities 2020-04-09 10:30:25 +02:00
Gregor Kleen
d8040e7aa8 feat: persist bearer tokens in session 2020-04-07 14:31:55 +02:00
Sarah Vaupel
fbc36806b1 fix(exam-form): allow finished without start 2020-03-31 17:34:26 +02:00
Sarah Vaupel
1ac7f4e881 feat(course-events): hide note column if there are no notes to display 2020-03-31 16:35:32 +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
Sarah Vaupel
cdbe12c726 feat(applications-list): add warning regarding features of study 2020-03-22 17:55:33 +01:00
Gregor Kleen
fd8255de8c fix(dbtable): improve sorting for haskell+sql 2020-03-16 11:42:02 +01:00
Gregor Kleen
731231d5ea fix(exams): provide bonus information in return of examBonusGrade 2020-03-16 10:34:11 +01:00
Gregor Kleen
ec6a8ae463 feat(exams): convenience for automatic grade calculation 2020-03-16 10:21:02 +01:00
Gregor Kleen
a7e64bce7b fix: configure sessions to be strictly same-site 2020-03-16 09:05:42 +01:00
Gregor Kleen
0a2a578547 chore: fix tests 2020-03-16 08:52:25 +01:00
Gregor Kleen
cf03277874 feat(allocations): improve acceptance display 2020-03-14 14:15:29 +01:00
Gregor Kleen
648d733f3f chore: fix tests 2020-03-13 19:05:04 +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
bb20062d9f feat(allocations): display new allocations in user table 2020-03-11 14:48:02 +01:00
Gregor Kleen
3422fd70a7 feat(allocations): improve accept ui and logging 2020-03-11 14:16:02 +01:00
Gregor Kleen
20ef95c142 feat(allocations): compute & accept allocations 2020-03-10 22:36:33 +01:00
Gregor Kleen
936c3666fc feat: more date & time formats 2020-03-07 11:19:17 +01:00
Gregor Kleen
2dc6641e68 fix(csv-import): major usability improvements 2020-03-06 20:38:42 +01:00
Gregor Kleen
40ce19d1b4 refactor: fix hlint 2020-03-06 14:01:57 +01:00
Gregor Kleen
49d9ab9dba feat(csv): export example data & improve zoned-time parsing 2020-03-06 13:53:13 +01:00