Gregor Kleen
|
d90da85df3
|
feat(communication): send test emails
|
2020-05-12 16:44:53 +02:00 |
|
Gregor Kleen
|
c072b85299
|
feat(multi-user-field): multi-user-invitation-field
|
2020-05-12 14:20:05 +02:00 |
|
Gregor Kleen
|
46e99081d9
|
fix(generic-file-field): allow .zip when doUnpack
|
2020-05-10 22:59:38 +02:00 |
|
Gregor Kleen
|
27731ac077
|
fix(submission-multi-archive): fix cleanup & improve
|
2020-05-08 10:57:43 +02:00 |
|
Gregor Kleen
|
2936eefbd1
|
feat(multi-user-field): improve placeholder
Remove MassInputTip
|
2020-05-06 19:01:32 +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
|
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
|
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
|
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
|
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
|
0e68b6cf53
|
feat(ldap): failover
|
2020-04-27 16:17:00 +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
|
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
|
e8c2dc5aaa
|
feat(memcached): introduce general purpose memcached
|
2020-04-21 10:51:11 +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
|
ced6ef2874
|
feat(course-user): major improvements
See #126
|
2020-04-16 17:19:16 +02:00 |
|
Gregor Kleen
|
c81bc2314e
|
feat(system-messages): hiding
|
2020-04-15 12:34:20 +02:00 |
|
Gregor Kleen
|
738ab7b738
|
feat: admin interface to issue tokens
|
2020-04-09 15:23:46 +02:00 |
|
Gregor Kleen
|
bc47dcf43f
|
feat(tokens): multiple authorities
|
2020-04-09 10:30:25 +02:00 |
|
Gregor Kleen
|
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
|
cf03277874
|
feat(allocations): improve acceptance display
|
2020-03-14 14:15:29 +01:00 |
|
Gregor Kleen
|
996005935d
|
feat(serversessions): move session storage to dedicated memcached
fixes #390
|
2020-03-13 17:26:47 +01:00 |
|
Gregor Kleen
|
26f8f392a9
|
feat(allocations): improve display
|
2020-03-12 11:56:26 +01:00 |
|
Gregor Kleen
|
3422fd70a7
|
feat(allocations): improve accept ui and logging
|
2020-03-11 14:16:02 +01:00 |
|
Gregor Kleen
|
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 |
|
Gregor Kleen
|
38dbfe73b2
|
feat(corrections): submission filter
|
2020-03-06 10:12:21 +01:00 |
|
Gregor Kleen
|
38945c99c4
|
style: number every table
|
2020-03-06 10:01:23 +01:00 |
|
Gregor Kleen
|
17882868d2
|
refactor(dbtable): move haskell-land filtering to actual filter
|
2020-03-06 09:00:24 +01:00 |
|
Sarah Vaupel
|
d4b784afba
|
feat(eeusersr): more on actions, TODO audit
|
2020-03-03 15:44:09 +01:00 |
|
Gregor Kleen
|
432a77f705
|
refactor(dbtable): optimize
|
2020-03-03 15:16:23 +01:00 |
|
Sarah Vaupel
|
4d48730abd
|
feat(eeusersr): stubs for new actions
|
2020-03-03 09:58:58 +01:00 |
|
Gregor Kleen
|
42089e17a1
|
chore: better test data
|
2020-03-03 09:11:54 +01:00 |
|
Sarah Vaupel
|
2cf4895231
|
feat(external-exams): add actions to EEUsers
|
2020-03-02 17:21:07 +01:00 |
|
Gregor Kleen
|
5090cca98b
|
style(allocations): improve display of unset priorities
|
2020-02-28 22:11:44 +01:00 |
|
Gregor Kleen
|
ee2e504ffa
|
feat(allocations): explanations & introduce grade-ordinal-proportion
BREAKING CHANGE: influence of grades on allocation priority now
relative when priorities are ordinal
|
2020-02-28 20:53:24 +01:00 |
|
Gregor Kleen
|
6bca64cf5f
|
feat(allocations): tooltips listing courses in users table
major improvements to tooltips
|
2020-02-28 18:42:31 +01:00 |
|
Gregor Kleen
|
7462e03e70
|
feat(allocations): show & export priority
|
2020-02-27 17:04:32 +01:00 |
|
Gregor Kleen
|
a590f45cc1
|
feat(allocations): upload of priorities
|
2020-02-27 16:31:38 +01:00 |
|
Gregor Kleen
|
2735d465eb
|
feat(allocations): table of allocation users
|
2020-02-27 11:09:16 +01:00 |
|
Gregor Kleen
|
cfaea9c08b
|
chore: bump to lts-15.0
BREAKING CHANGE: major version bumps
|
2020-02-23 11:12:45 +01:00 |
|
Gregor Kleen
|
4879bb8404
|
feat: use pandoc to convert html emails to markdown (plaintext)
|
2020-02-21 18:09:15 +01:00 |
|
Gregor Kleen
|
c5848b24e8
|
feat: pandoc-markdown based htmlField
BREAKING CHANGE: markdown based HTML input
|
2020-02-21 17:34:49 +01:00 |
|
Gregor Kleen
|
acffe04350
|
feat(exams): allow mixed ExamGradingMode
|
2020-02-18 20:11:46 +01:00 |
|
Gregor Kleen
|
0e49bc14e5
|
feat(exams): improve handling of exam results everywhere
BREAKING CHANGE: ExamResult now contains ExamResultPassedGrade
|
2020-02-18 15:43:07 +01:00 |
|
Gregor Kleen
|
1348c91c3c
|
feat: navbar header containers
BREAKING CHANGE: major navigation refactor
|
2020-02-06 16:27:28 +01:00 |
|
Gregor Kleen
|
a91fd7fd63
|
feat: exam auto-occurrence nudging
|
2020-01-30 17:24:22 +01:00 |
|
Gregor Kleen
|
a1d547990d
|
fix(exams): exam-auto-occurrence introduced spurious MappingSpecial
|
2020-01-30 13:33:02 +01:00 |
|
Gregor Kleen
|
3ef10d98a1
|
fix: exam auto-occurrence by matriculation
|
2020-01-30 12:30:26 +01:00 |
|
Gregor Kleen
|
5bff34ed0a
|
fix: non-exhaustive patterns
|
2020-01-30 08:31:52 +01:00 |
|
Gregor Kleen
|
7140618a5c
|
chore: remove traces
|
2020-01-29 21:46:16 +01:00 |
|
Gregor Kleen
|
e994fafe28
|
feat(exams): automatic exam occurrence assignment
|
2020-01-29 20:31:37 +01:00 |
|
Gregor Kleen
|
f89545f36e
|
feat(exam): working prototype of automatic occurrence assignment
|
2020-01-28 17:06:47 +01:00 |
|
Gregor Kleen
|
282df86bc2
|
feat(exam): start work on automatic exam-occurrence assignment
|
2020-01-28 17:06:47 +01:00 |
|
Gregor Kleen
|
4e9b618b61
|
fix: tests & hlint
|
2020-01-15 17:20:13 +01:00 |
|
Gregor Kleen
|
bcd5326129
|
fix: restrict guessUser to consistent queries
|
2020-01-15 12:09:01 +01:00 |
|
Gregor Kleen
|
3b739f751d
|
feat: external exams in exam office exams table
|
2020-01-15 12:09:00 +01:00 |
|
Gregor Kleen
|
553c117626
|
feat: external exam csv export
|
2020-01-15 12:09:00 +01:00 |
|
Gregor Kleen
|
1d14b6a69c
|
feat: external exam csv import & ldap lookup during csv import
|
2020-01-15 12:09:00 +01:00 |
|
Gregor Kleen
|
2b153c1863
|
feat(external-exams): auditing
|
2020-01-15 12:09:00 +01:00 |
|
Gregor Kleen
|
f25b21aa4b
|
feat(external-exams): requisite routes
|
2020-01-15 12:07:27 +01:00 |
|
Sarah Vaupel
|
b03c10f098
|
feat(hide-columns): opt-out on select columns
|
2020-01-13 10:39:08 +01:00 |
|
Gregor Kleen
|
83fa9c9c69
|
fix: improve exam occurrence ui
|
2020-01-11 23:44:47 +01:00 |
|
Gregor Kleen
|
14bb020fe9
|
feat: support exam registration including room (ExamRoomFifo)
|
2020-01-11 22:49:42 +01:00 |
|
Gregor Kleen
|
674b949388
|
fix: divide by zero
|
2020-01-07 16:22:52 +01:00 |
|
Sarah Vaupel
|
e27bebac59
|
feat(foundation): move stuff out of Foundation
|
2019-12-16 14:26:06 +01:00 |
|
Sarah Vaupel
|
37f0936d91
|
fix: fix hlint
|
2019-12-10 16:05:46 +01:00 |
|
Gregor Kleen
|
98c0d6919e
|
feat(submission): edit notifications
|
2019-12-05 13:44:47 +01:00 |
|
Gregor Kleen
|
e87f6075d3
|
feat(submission): warn about deleting co-submissions
|
2019-12-04 11:51:50 +01:00 |
|
Gregor Kleen
|
6e4f469023
|
fix(submissions): fix ambiguity with multiple past co-submissions
|
2019-12-03 14:24:00 +01:00 |
|
Gregor Kleen
|
b7d6f3c9e9
|
refactor(sub-study-fields): reformulate as superStudyField
Fixes #531
BREAKING CHANGE: superStudyField
|
2019-11-28 12:52:03 +01:00 |
|
Gregor Kleen
|
c4c82f5439
|
feat(study-features): complete StudyFeatures admin-interface
|
2019-11-27 12:14:19 +01:00 |
|
Gregor Kleen
|
5cd2d39f10
|
refactor(study-features): cleanup
|
2019-11-27 10:35:59 +01:00 |
|
Gregor Kleen
|
0e027b129e
|
refactor: bump esqueleto & redo StudySubTerms
BREAKING CHANGE: Bumped esqueleto
|
2019-11-26 17:43:19 +01:00 |
|
Gregor Kleen
|
38a4e6cdb7
|
chore: merge master
|
2019-11-25 10:25:52 +01:00 |
|
Gregor Kleen
|
2621d36b7d
|
feat(features-of-study): record parent & standalone candidates
|
2019-10-31 08:59:49 +01:00 |
|
Gregor Kleen
|
81415e1afb
|
feat(csv): encoding
|
2019-10-23 17:34:37 +02:00 |
|
Gregor Kleen
|
b67819d061
|
fix(submission-form): fix display of all courseParticipants
|
2019-10-23 11:57:27 +02:00 |
|
Gregor Kleen
|
640326ca5d
|
fix(assign-submissions): avoid division by zero
|
2019-10-20 11:02:32 +02:00 |
|
Gregor Kleen
|
6c49c509ac
|
fix(file-upload-form): don't check case of file extensions
|
2019-10-17 17:25:17 +02:00 |
|
Gregor Kleen
|
725468bfd3
|
fix: occurence exception end times not shown correctly
|
2019-10-15 12:20:00 +02:00 |
|
Gregor Kleen
|
bb6703de47
|
fix(allocations): fix result notifications
|
2019-10-15 10:38:40 +02:00 |
|
Gregor Kleen
|
c2a8381278
|
feat(users): sex
|
2019-10-14 15:34:43 +02:00 |
|
Gregor Kleen
|
5bc015ddcb
|
refactor(allocations): store log/fingerprint separately
|
2019-10-13 21:41:29 +02:00 |
|
Gregor Kleen
|
fa7f7712f7
|
feat(courses): course events
|
2019-10-09 16:51:56 +02:00 |
|
Gregor Kleen
|
3750da81dc
|
feat(courses): add NotificationCourseRegistered
|
2019-10-08 16:20:40 +02:00 |
|
Gregor Kleen
|
5583ccef74
|
Merge branch 'master' into 470-lecturerinfo-seite-uberarbeiten
|
2019-10-08 14:26:30 +02:00 |
|
Gregor Kleen
|
9a28dc851c
|
feat(course): csv export of course participants
|
2019-10-08 14:25:20 +02:00 |
|
Sarah Vaupel
|
723ceaf1ed
|
Merge branch 'master' into info-lecturer
|
2019-10-08 13:34:48 +02:00 |
|
Gregor Kleen
|
d4ab6f64e2
|
fix: ordinalPriorities
|
2019-10-04 17:30:40 +02:00 |
|
Gregor Kleen
|
60603cb6ec
|
feat(allocations): fingerprints & ordinal ratings
|
2019-10-04 16:37:11 +02:00 |
|
Gregor Kleen
|
c18299028c
|
refactor: hlint
|
2019-10-03 19:46:13 +02:00 |
|
Gregor Kleen
|
47bfd8d4ea
|
feat(allocations): auxilliaries for allocation-algo
|
2019-10-03 15:18:36 +02:00 |
|
Gregor Kleen
|
aa93b75e00
|
feat(course): introduce CourseNews
|
2019-10-01 19:46:40 +02:00 |
|
Sarah Vaupel
|
276dcb6ad9
|
feat(tooltips): add auto unzip and multiFileField tooltips
|
2019-10-01 13:27:48 +02:00 |
|
Gregor Kleen
|
89adf7f2dc
|
fix(mail): honor userCsvOptions and userDisplayEmail
|
2019-10-01 09:07:21 +02:00 |
|
Gregor Kleen
|
ac7f093647
|
chore: fix build
|
2019-09-30 16:19:35 +02:00 |
|
Gregor Kleen
|
95ceeddc83
|
feat(csv): allow customisation of csv-export-options
|
2019-09-30 15:53:29 +02:00 |
|
Gregor Kleen
|
620950df83
|
feat(course-applications): automatic acceptance of direct applicants
|
2019-09-27 11:46:25 +02:00 |
|
Gregor Kleen
|
54e94a6670
|
feat(exams): re-introduce ExamBonusManual
|
2019-09-26 11:01:32 +02:00 |
|
Gregor Kleen
|
7a2b972f9f
|
fix(communication): make communication form more intuitive
Fixes #387
|
2019-09-25 17:36:48 +02:00 |
|
Gregor Kleen
|
9569c4f026
|
Merge branch 'master' into 205-klausuren
|
2019-09-25 14:10:52 +02:00 |
|
Gregor Kleen
|
67e3b38834
|
chore: bump versions
BREAKING CHANGE: yesod >=1.6
|
2019-09-25 13:46:10 +02:00 |
|
Gregor Kleen
|
e97cd5616b
|
feat(exams): implement rounding of exambonus
|
2019-09-19 11:30:24 +02:00 |
|
Gregor Kleen
|
ea5a398bab
|
feat(exams): automatically compute examResults
BREAKING CHANGE: examPartName no longer required
|
2019-09-18 17:17:18 +02:00 |
|
Gregor Kleen
|
014a17a3be
|
feat(exams): refine exam form
|
2019-09-18 11:45:08 +02:00 |
|
Gregor Kleen
|
29f4e28536
|
feat(exams): csv-import of ExamPartResults
BREAKING CHANGE: Introduces ExamPartNumbers
|
2019-09-16 17:53:45 +02:00 |
|
Gregor Kleen
|
530a8c688e
|
fix(exams): make examClosed a button
Show examFinished and examClosed to ExamOffice
Mark not-yet-closed exams for ExamOffice
|
2019-09-16 11:24:14 +02:00 |
|
Gregor Kleen
|
5841a7b5d2
|
feat(exam-office): exam-office permissions by courseSchool
|
2019-09-16 10:12:17 +02:00 |
|
Gregor Kleen
|
7e19c45684
|
chore: fix hlint
|
2019-09-13 13:31:53 +02:00 |
|
Gregor Kleen
|
484fa1cc63
|
feat(exam-office): course/user opt-outs
|
2019-09-13 12:57:30 +02:00 |
|
Gregor Kleen
|
517da054b1
|
Merge branch 'master' into exam-office
|
2019-09-13 10:37:20 +02:00 |
|
Gregor Kleen
|
ae27ff0bb1
|
feat(exams): notifications wrt. registration
|
2019-09-13 10:06:38 +02:00 |
|
Gregor Kleen
|
a85f317bf2
|
feat(users): allow customisation of userDisplayName
Fixes #346
|
2019-09-12 15:46:09 +02:00 |
|
Gregor Kleen
|
c40b5f4671
|
Merge branch 'master' into exam-office
|
2019-09-11 17:07:04 +02:00 |
|
Gregor Kleen
|
91c926b1c5
|
fix(submission-users): properly delete old invitations
|
2019-09-11 17:06:12 +02:00 |
|
Gregor Kleen
|
651f0bc4d4
|
feat(exam-office): exams list
|
2019-09-11 12:13:36 +02:00 |
|
Gregor Kleen
|
cb9ff32063
|
fix(exam-office): better logic for isSynced
|
2019-09-11 09:11:24 +02:00 |
|
Gregor Kleen
|
72a7f6e8a8
|
feat(exam-office): grade export
|
2019-09-10 15:26:45 +02:00 |
|
Gregor Kleen
|
5cec146cb7
|
Merge branch 'master' into exam-office
|
2019-09-10 09:42:25 +02:00 |
|
Gregor Kleen
|
3868e8feae
|
fix(file-upload): fix inverted logic for when upload is required
|
2019-09-09 17:04:40 +02:00 |
|
Gregor Kleen
|
a671937868
|
fix: fix tests
|
2019-09-09 16:40:01 +02:00 |
|
Gregor Kleen
|
f75cc641e2
|
feat(exam-office): subscription management for users & fields
|
2019-09-06 18:33:50 +02:00 |
|
Gregor Kleen
|
1d8630663a
|
Merge branch 'master' into 302-transaction-log
|
2019-09-06 09:38:16 +02:00 |
|
Gregor Kleen
|
af9fe80bf5
|
refactor: cleanup
|
2019-09-06 09:38:00 +02:00 |
|
Gregor Kleen
|
5fb6910a58
|
refactor(invitations): cleanup
|
2019-09-06 09:30:14 +02:00 |
|
Gregor Kleen
|
412ce98fa0
|
feat(forms): allow customisation of user-facing datalist values
|
2019-09-05 20:08:15 +02:00 |
|
Gregor Kleen
|
b7496f9940
|
feat(forms): show studyFeaturesField in studyFeaturesFieldFor
Fixes #451
|
2019-09-05 19:14:10 +02:00 |
|
Sarah Vaupel
|
baa7a52cdb
|
Merge branch 'master' into 302-transaction-log
|
2019-09-05 17:31:34 +02:00 |
|
Sarah Vaupel
|
5f0afbd11d
|
chore(audit): audit submission file edits and deletes
|
2019-09-05 17:19:22 +02:00 |
|
Gregor Kleen
|
2b3aef7a49
|
feat(changelog): prettify date formatting
|
2019-09-05 10:49:19 +02:00 |
|
Sarah Vaupel
|
f462d44c49
|
chore(audit): audit submission file edits and deletes
|
2019-09-04 15:58:12 +02:00 |
|
Sarah Vaupel
|
99cd37c5e0
|
chore(audit): audit submissionhelper
|
2019-09-04 14:46:11 +02:00 |
|
Gregor Kleen
|
fc53497aa3
|
fix(course-edit): show old allocation
Fixes #450
|
2019-09-04 11:36:16 +02:00 |
|
Gregor Kleen
|
07895368dd
|
feat(users): ldap-synchronise arbitrary subsets of users
|
2019-09-02 13:49:57 +02:00 |
|