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