Commit Graph

857 Commits

Author SHA1 Message Date
Gregor Kleen
192b6279d3 refactor(file upload): move to genericFileField 2020-04-29 18:30:54 +02:00
Gregor Kleen
e6af788882 fix(i18n): submissionDownloadAnonymous 2020-04-28 17:12:20 +02:00
Gregor Kleen
9032f80f59 feat(corrections): non-anonymous download w/ registered groups 2020-04-28 17:08:21 +02:00
Gregor Kleen
52670bc905 fix: typo 2020-04-28 14:35:42 +02:00
Gregor Kleen
57f1ce9265 feat(sheets): submission groups & rework sheet form 2020-04-28 14:31:27 +02:00
Gregor Kleen
c06a472359 fix: typo 2020-04-24 18:45:39 +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
a1a0fa3a44 feat(faqs): i18n 2020-04-24 11:09:14 +02:00
Gregor Kleen
7b5337723d feat(faqs): initial 2020-04-23 16:52:34 +02:00
Gregor Kleen
b9b090992f feat(caching): aggressively cache nav items 2020-04-22 11:14:25 +02:00
Gregor Kleen
fd2c2881ea feat(submissions): non-anonymized correction
Fixes #524
Fixes #292
2020-04-17 15:19:26 +02:00
Gregor Kleen
da629a81d2 feat(course-user): i18n 2020-04-17 11:05:35 +02:00
Gregor Kleen
ced6ef2874 feat(course-user): major improvements
See #126
2020-04-16 17:19:16 +02:00
Gregor Kleen
a75f3eb2f1 fix: bump changelog & translate 2020-04-15 12:52:06 +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
d87e8b7142 fix: fix course duplicate message & name -> title for courses 2020-04-09 15:26:12 +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
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
773c6c5dc0 fix(i18n): add missing translations 2020-03-15 17:17:40 +01:00
Gregor Kleen
cf03277874 feat(allocations): improve acceptance display 2020-03-14 14:15:29 +01:00
Gregor Kleen
bb20062d9f feat(allocations): display new allocations in user table 2020-03-11 14:48:02 +01:00
Gregor Kleen
20ef95c142 feat(allocations): compute & accept allocations 2020-03-10 22:36:33 +01:00
Gregor Kleen
2dc6641e68 fix(csv-import): major usability improvements 2020-03-06 20:38:42 +01:00
Gregor Kleen
49d9ab9dba feat(csv): export example data & improve zoned-time parsing 2020-03-06 13:53:13 +01:00
Gregor Kleen
bb9b4f06ae fix: fix build & minor refactor 2020-03-04 10:21:46 +01:00
Sarah Vaupel
ecd7bec9aa feat(course-users): match filter titles with column titles 2020-03-04 09:14:22 +01:00
Sarah Vaupel
b8acc9b5da feat(course-users): allow for exam registration on CUsersR 2020-03-04 09:13:58 +01:00
Sarah Vaupel
c23becceb1 feat(course-users): exams in dbtable and csv 2020-03-04 09:13:58 +01:00
Gregor Kleen
3c7d9b6112 chore: fix tests 2020-03-03 17:42:27 +01:00
Sarah Vaupel
d4b784afba feat(eeusersr): more on actions, TODO audit 2020-03-03 15:44:09 +01:00
Sarah Vaupel
4d48730abd feat(eeusersr): stubs for new actions 2020-03-03 09:58:58 +01:00
Sarah Vaupel
2cf4895231 feat(external-exams): add actions to EEUsers 2020-03-02 17:21:07 +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
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
c5848b24e8 feat: pandoc-markdown based htmlField
BREAKING CHANGE: markdown based HTML input
2020-02-21 17:34:49 +01:00
Gregor Kleen
697c3e11fc feat: participants intersection 2020-02-20 15:27:30 +01:00
Gregor Kleen
5ffee38979 feat: targets on InfoLecturerR 2020-02-19 11:14:51 +01:00
Gregor Kleen
3dd6e21f8e fix: i18n 2020-02-18 21:51:17 +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
1bf19a76bd feat(exam-correct): explanation & length restriction 2020-02-08 01:42:50 +01:00
Sarah Vaupel
9aca3405f3 Merge branch 'master' into 476-interface-fur-klausurkorrekturen-dev 2020-02-07 22:47:51 +01:00
Gregor Kleen
23044b28db feat(exam-correct): general improvement 2020-02-07 20:57:26 +01:00
Sarah Vaupel
014036e4e3 feat(exam-correct): work on delete 2020-02-07 19:03:27 +01:00
Gregor Kleen
8e41820c9d feat(exam-correct): return user lookup result even for failure 2020-02-07 14:49:14 +01:00
Gregor Kleen
95c1755710 feat: refine presentation of exam-correct 2020-02-07 13:25:26 +01:00
Gregor Kleen
1942ad10d5 Merge branch '476-interface-fur-klausurkorrekturen' of gitlab2.rz.ifi.lmu.de:uni2work/uni2work into feat/exam-correct 2020-02-07 11:32:23 +01:00
Gregor Kleen
a9636af13a fix: merge 2020-02-07 11:21:14 +01:00
Sarah Vaupel
8cf5d63cf2 feat(storage-key): add breadcrumb and import 2020-02-07 10:13:28 +01:00
Sarah Vaupel
905d445479 feat(exam-correct): more on frontend name resolving 2020-02-07 10:12:17 +01:00
Sarah Vaupel
5f9a176bc6 feat(exam-correct): postECorrectR stub 2020-02-07 10:10:50 +01:00
Sarah Vaupel
87bda1607e feat(exam-correct): add sortable style and date column 2020-02-07 10:04:33 +01:00
Sarah Vaupel
623becf597 feat(exam-correct): add basic interface stub 2020-02-07 10:04:32 +01:00
Gregor Kleen
d8801a3435 feat(correction-interface): wire up ECorrectR 2020-02-07 10:04:32 +01:00
Gregor Kleen
1348c91c3c feat: navbar header containers
BREAKING CHANGE: major navigation refactor
2020-02-06 16:27:28 +01:00
Sarah Vaupel
4c58699d1f fix: typo 2020-02-05 16:34:18 +01:00
Sarah Vaupel
6b610e1e54 feat: renamed "Bewertung abgeschlossen ab" to "Ergebnisse sichtbar ab" 2020-02-05 16:33:09 +01:00
Sarah Vaupel
66bd10e414 feat: rename "Start" to "Beginn" in error messages 2020-02-05 16:08:16 +01:00
Sarah Vaupel
d19cca6a40 fix: fix merge 2020-02-04 10:40:34 +01:00
Sarah Vaupel
6f2b58c002 Merge branch 'master' into 476-interface-fur-klausurkorrekturen 2020-02-04 09:52:33 +01:00
Gregor Kleen
a91fd7fd63 feat: exam auto-occurrence nudging 2020-01-30 17:24:22 +01:00
Gregor Kleen
91e1bf9996 feat: warnings about multiple terms/schools 2020-01-30 13:15:59 +01:00
Gregor Kleen
2b56f26c45 feat(exams): improve occurrence display 2020-01-29 22:53:35 +01:00
Gregor Kleen
ad5494ef03 fix: typo 2020-01-29 21:02:39 +01:00
Gregor Kleen
ea2e236012 chore: test for missing translations 2020-01-29 21:00:35 +01:00
Gregor Kleen
214e8951e4 feat: additional exam functions on show page 2020-01-29 20:50:27 +01:00
Gregor Kleen
e994fafe28 feat(exams): automatic exam occurrence assignment 2020-01-29 20:31:37 +01:00
Sarah Vaupel
1580d3f59b feat(storage-key): add breadcrumb and import 2020-01-28 15:25:08 +01:00
Sarah Vaupel
daf9eee1d3 feat(exam-correct): more on frontend name resolving 2020-01-20 17:02:40 +01:00
Sarah Vaupel
36e90102c4 Merge branch 'master' into 476-interface-fur-klausurkorrekturen 2020-01-20 09:42:21 +01:00
Gregor Kleen
88dd5a90b9 feat: course-participant-lists 2020-01-17 17:55:14 +01:00
Gregor Kleen
b3ce3dd93a fix: ui improvements for (external-)exams 2020-01-15 17:17:21 +01:00
Gregor Kleen
d798dc48be fix: add missing translations 2020-01-15 14:56:51 +01:00
Sarah Vaupel
a525cab356 feat(exam-correct): postECorrectR stub 2020-01-15 13:54:04 +01:00
Gregor Kleen
a30484003a feat: notification about externalExamResults to exam-office 2020-01-15 12:09:01 +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
1252a5fc79 feat(external-exams): edit existing exams 2020-01-15 12:08:59 +01:00
Gregor Kleen
94bb3911cb feat(external-exams): create new exams 2020-01-15 12:08:51 +01:00
Gregor Kleen
fa3521d6db feat(external-exams): list 2020-01-15 12:08:42 +01:00
Gregor Kleen
b7506a03b1 feat(external-exams): plan for student grade access 2020-01-15 12:08:42 +01:00
Gregor Kleen
f25b21aa4b feat(external-exams): requisite routes 2020-01-15 12:07:27 +01:00
Sarah Vaupel
ce72679761 Merge branch 'master' into 476-interface-fur-klausurkorrekturen 2020-01-14 11:19:08 +01:00
Sarah Vaupel
555c4aebeb feat(hide-columns): add more hider labels 2020-01-13 10:41:19 +01:00
Sarah Vaupel
6c05a8f09f feat(hide-columns): add hider label th attr 2020-01-13 10:41:07 +01:00
Sarah Vaupel
eba58d83a0 feat(hide-columns): add more hider labels 2020-01-13 10:39:08 +01:00
Sarah Vaupel
71e90a1817 feat(hide-columns): add hider label th attr 2020-01-13 10:39:07 +01:00
Gregor Kleen
727b89bf4b fix: improve labeling of button to switch exam occurrence 2020-01-11 23:57:23 +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
068632b117 feat: well known files 2020-01-11 22:02:12 +01:00
Sarah Vaupel
9fa4245607 feat(exam-correct): add sortable style and date column 2020-01-09 09:59:07 +01:00
Sarah Vaupel
cb7c9ac6da feat(exam-correct): add basic interface stub 2020-01-08 16:38:16 +01:00
Gregor Kleen
674b949388 fix: divide by zero 2020-01-07 16:22:52 +01:00
Sarah Vaupel
f619b0a36c Merge branch 'master' into 476-interface-fur-klausurkorrekturen 2020-01-07 10:28:33 +01:00
Sarah Vaupel
565c6a4f3d feat(legal): move legal info to one single page 2019-12-18 17:18:26 +01:00
Sarah Vaupel
932cd5cfdb feat(tou): implement Terms of Use (tou) route 2019-12-16 14:07:17 +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
77ae311935 Merge branch 'fix/sub-study-terms' 2019-11-27 12:15:12 +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
Sarah Vaupel
e259260e9a Merge branch 'master' of gitlab2.rz.ifi.lmu.de:uni2work/uni2work 2019-11-22 13:13:41 +01:00
Sarah Vaupel
534c32d9f9 feat(messages): rename subs grade 2019-11-22 13:13:31 +01:00
Gregor Kleen
9204565cac feat: usergroups & metrics usergroup
Fixes #538
2019-11-21 18:41:21 +01:00
Gregor Kleen
b8f41ef0b3 feat(metrics): basic collection & export of metrics 2019-11-21 10:50:27 +01:00
Sarah Vaupel
018082ec4a feat(corrections): added missing titles; small message fixes 2019-11-13 17:07:46 +01:00
Gregor Kleen
acfd3129ec fix(sheets): integrate corrector interface into SheetEdit 2019-11-05 16:19:10 +01:00
Gregor Kleen
b9734953cf feat: better explain behaviour of submittorForm 2019-11-05 11:08:53 +01:00
Gregor Kleen
954bb78aae fix: improve explanation of multiUserField invitations 2019-11-04 13:29:29 +01:00
Gregor Kleen
2621d36b7d feat(features-of-study): record parent & standalone candidates 2019-10-31 08:59:49 +01:00
Sarah Vaupel
237c5868b7 feat(glossary): english glossary 2019-10-30 15:40:02 +01:00
Gregor Kleen
7daa42db98 feat(glossary): more de-de-formal 2019-10-30 10:37:23 +01:00
Gregor Kleen
ba7c60ec1c feat(glossary): most glossary entries in de-de-formal 2019-10-29 17:58:16 +01:00
Sarah Vaupel
aec4b21757 feat(i18n): missing message translations; small fixes 2019-10-29 15:56:38 +01:00
Gregor Kleen
83a458ddf5 feat(i18n): additional en-eu 2019-10-29 14:21:23 +01:00
Gregor Kleen
4ff50b0147 Merge branch 'master' into i18n 2019-10-28 12:08:37 +01:00
Gregor Kleen
67e40fd3e7 feat(i18n): more en-eu 2019-10-28 10:42:24 +01:00
Gregor Kleen
3058737021 feat(i18n): more en-eu 2019-10-26 13:10:55 +02:00
Sarah Vaupel
870f1df4d3 feat: more en-eu translations; minor fixes in de-de-formal 2019-10-25 09:04:33 +02:00
Gregor Kleen
81415e1afb feat(csv): encoding 2019-10-23 17:34:37 +02:00
Gregor Kleen
7c8dbc9dcc feat(i18n): more en-eu 2019-10-22 20:35:25 +02:00
Gregor Kleen
73b0546db6 feat(info): start glossary 2019-10-22 17:54:03 +02:00
Gregor Kleen
75677dc171 feat(i18n): get started on en-eu 2019-10-22 14:58:59 +02:00
Gregor Kleen
155ed1d557 fix(i18n): i18n in various places 2019-10-22 14:03:30 +02:00
Gregor Kleen
3fe278ec30 fix(i18n): i18n for all widgets 2019-10-22 11:04:34 +02:00
Gregor Kleen
6ca87f0d66 refactor(i18n): i18n for breadcrumbs 2019-10-22 00:13:22 +02:00
Gregor Kleen
281c98fe91 fix(i18n): prepare translation file for en-eu 2019-10-21 15:19:50 +02:00
Gregor Kleen
205d7688bf fix(i18n): custom language inference 2019-10-21 14:02:09 +02:00
Gregor Kleen
352bdba1a4 feat(i18n): basic language switching 2019-10-18 20:12:34 +02:00
Gregor Kleen
96e1a30eb6 feat(course-show): show "not registered" 2019-10-17 17:25:51 +02:00
Gregor Kleen
bc248d0fc2 fix(tutorials): improve creation interface
tutorial_room is no longer NOT NULL
2019-10-16 18:38:59 +02:00
Gregor Kleen
9d709ca400 fix(rights): split applicant off participant 2019-10-16 17:11:34 +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
261f3ed92f feat(tutorials): delegate control to tutors 2019-10-14 11:50:06 +02:00
Gregor Kleen
23f4eb3f2b fix: typo 2019-10-12 13:21:24 +02:00
Gregor Kleen
d507d9bbde feat(course-users): allow registering tutorial users manually
include tutorials in course-user csv-export
2019-10-10 11:58:38 +02:00
Gregor Kleen
1d5ddd102c feat(course-users): include tutorial in csv-export 2019-10-10 11:22:50 +02:00
Gregor Kleen
df66c9b58d feat(correction-interface): wire up ECorrectR 2019-10-10 10:34:16 +02:00
Gregor Kleen
e60f1b2bfc feat(course): allow csv-export of all features-of-study 2019-10-09 18:25:31 +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
b7c54df913 feat(allocations): show more information 2019-10-05 15:24:13 +02:00
Gregor Kleen
8f284acde8 feat(course): show direct registration dates 2019-10-04 19:49:41 +02:00
Gregor Kleen
fccc2ea212 feat(favourites): usability improvements 2019-10-04 13:28:58 +02:00
Gregor Kleen
93232201f2 feat(allocations): notification about finished allocation 2019-10-04 11:12:10 +02:00
Gregor Kleen
7a759b192f feat(allocations): properly save allocation-relevant course-deregs 2019-10-04 10:10:05 +02:00
Gregor Kleen
aa93b75e00 feat(course): introduce CourseNews 2019-10-01 19:46:40 +02:00
Sarah Vaupel
5a49febf9c feat(info-lecturer): add inline newU2W icons 2019-10-01 18:13:33 +02:00
Sarah Vaupel
a4068b4a82 feat(lecturer-info): add planned features icon; update info 2019-10-01 17:12:19 +02:00
Sarah Vaupel
276dcb6ad9 feat(tooltips): add auto unzip and multiFileField tooltips 2019-10-01 13:27:48 +02:00
Sarah Vaupel
2205180350 Merge branch 'master' into info-lecturer 2019-10-01 11:14:32 +02:00
Gregor Kleen
89adf7f2dc fix(mail): honor userCsvOptions and userDisplayEmail 2019-10-01 09:07:21 +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
Sarah Vaupel
2ca7085ec9 feat(lecturer-info): replaced icons with icon-tooltips; edited text 2019-09-25 16:49:34 +02:00
Gregor Kleen
fe07a226e9 feat(exam-users): document part-* family of columns 2019-09-25 14:24:19 +02:00
Gregor Kleen
e97cd5616b feat(exams): implement rounding of exambonus 2019-09-19 11:30:24 +02:00
Gregor Kleen
72342f1393 feat(exams): accept/reset computed results 2019-09-18 18:29:35 +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
fb1e42dc69 fix: typo 2019-09-18 11:46:01 +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
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
2f38278ab1 feat(users): allow customisation of displayed email address
Fixes #459
2019-09-12 17:18:17 +02:00
Gregor Kleen
a85f317bf2 feat(users): allow customisation of userDisplayName
Fixes #346
2019-09-12 15:46:09 +02:00
Gregor Kleen
a890e346c8 fix(allocations): better explain capped allocation bounds 2019-09-12 14:41:19 +02:00
Gregor Kleen
83e1c9418a feat(allocations): allow changing course capacity during allocation
Also refine display of allocation registration bounds
2019-09-12 14:38:54 +02:00
Gregor Kleen
91b249e58b feat(allocations): show bounds on assignments due to allocation 2019-09-12 11:41:18 +02:00
Gregor Kleen
99b25cfbc6 Merge branch 'master' into exam-office 2019-09-12 10:52:06 +02:00
Gregor Kleen
67f120120f feat(admin-users): allow adding users 2019-09-12 10:36:39 +02:00
Gregor Kleen
bb9c34fa4d feat(invitations): additional explanation for new users 2019-09-12 09:32:21 +02:00
Gregor Kleen
123970a783 feat(exam-office): user invitations 2019-09-11 17:49:03 +02:00
Gregor Kleen
52e1844d5e feat(exam-office): notifications 2019-09-11 15:46:01 +02:00
Gregor Kleen
651f0bc4d4 feat(exam-office): exams list 2019-09-11 12:13:36 +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
3391904cff fix: inherit authorization of CAddUserR in more places 2019-09-09 15:39:57 +02:00
Gregor Kleen
f75cc641e2 feat(exam-office): subscription management for users & fields 2019-09-06 18:33:50 +02:00
Gregor Kleen
9d537307c2 fix(course-edit): improve instructions 2019-09-06 11:09:57 +02:00
Gregor Kleen
80cb16a40f feat(course-edit): warn about long shorthands
Also make sure text input is stripped of whitespace
2019-09-06 11:01:37 +02:00
Gregor Kleen
fc5ffb7c52 fix: typo 2019-09-06 08:39:11 +02:00